Class CompanionBlockSpawnerRecipeCompendium

java.lang.Object
com.hypixel.hytale.builtin.companionblockspawner.CompanionBlockSpawnerRecipeCompendium

public final class CompanionBlockSpawnerRecipeCompendium extends Object
A runtime lookup table built from all loaded CompanionBlockSpawnerRecipe assets. Lets the companion block spawner systems quickly tell whether a placed/broken block type is a spawner or a required ingredient, find the recipes for a spawner, match candidate blocks against requirement entries, and bound spatial queries by the maximum recipe radius.

Requirement entries may name an exact BlockType or a Tag (e.g. "Bed"); tags are expanded here, at rebuild time, into the concrete set of matching block type keys, so all runtime checks are simple set lookups. The expanded participating keys also drive the auto-injection of the CompanionBlockSpawnerBlock component into matching block types (see CompanionBlockSpawnerPlugin).

Recipes referencing unknown block types, tags matching nothing, or unknown spawn markers are logged locally and skipped (never thrown), so malformed user content can't take down the world thread.

  • Constructor Details

    • CompanionBlockSpawnerRecipeCompendium

      public CompanionBlockSpawnerRecipeCompendium()
  • Method Details

    • getEntryKeySets

      @Nullable public List<Set<String>> getEntryKeySets(@Nonnull CompanionBlockSpawnerRecipe recipe)
      Returns:
      the expanded key sets of the recipe's requirement entries (parallel to getRequiredBlocks()), or null if the recipe wasn't usable.
    • isEmpty

      public boolean isEmpty()
    • getMaxRadius

      public double getMaxRadius()