Class MaterialVariant
java.lang.Object
net.joseplay.allianceutils.api.materialVariants.MaterialVariant
Static registry that groups
Material into logical variants.
A variant represents a set of related materials, such as different forms of the same resource (e.g., ore, deepslate ore, raw block).
Example usage:Variant variant = MaterialVariant.getVariant(Material.IRON_ORE); // returns "IRON"Limitations:
- Lookup is O(n) (linear search)
- No reverse lookup cache (Material → Variant)
- Returns null if no variant is found
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final recordRepresents a logical group of materials. -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final List<MaterialVariant.Variant> Immutable list of all registered variants. -
Method Summary
Modifier and TypeMethodDescriptionstatic MaterialVariant.VariantgetVariant(org.bukkit.Material material) Returns the variant associated with the given material.
-
Field Details
-
VARIANTS
Immutable list of all registered variants. Important:- Search order matters (first match wins)
- Materials should not be duplicated across variants
-
-
Method Details
-
getVariant
Returns the variant associated with the given material. Behavior:- Returns the first matching variant
- Returns null if no match is found
- Parameters:
material- target material- Returns:
- matching variant or null
-