qualityapi-1.21.1-1.5.0
Curse Maven Snippet
What's new
1.5.0
- Quality stacks: one slot holds one stack's worth of an item across every tier, so quality no longer splits a stack of carrots into a slot per tier. Right-click an item onto the same item of another quality to make one; right-click items onto it to add them; right-click it with an empty cursor to take a tier out; carry it and right-click a slot to take that slot's items in, or an empty slot to put a tier down. Left-click stays vanilla. It turns back into a normal stack when one tier is left.
- Hover a quality stack and scroll to choose which tier comes out next (the best by default); the tooltip shows each tier as an icon with its count and highlights the choice.
- Quality stacks look like the item they hold, with the total count and a bar along the top split by tier colour.
- Items you pick up go into a quality stack you carry first; anything that does not fit is picked up normally.
- A quality stack destroyed by fire, lava or a cactus spills its contents. Only stackable, undamageable items can be pooled, and only when everything but quality matches.
- New server config
qualityStacks(default on) turns off making quality stacks and auto-pickup; existing quality stacks can still be emptied.
1.4.0
- Name sets: the item data map
quality_api:name_setgives items their own words for each tier (food reads Poor, Common, Fine, Choice, Prime, Gourmet). NewQualities.displayName(id, nameSet),Qualities.displayName(stack, id)andQualities.nameSet(stack); tooltips and/quality setuse the item's set. Qualities.forLevel(int)returns a tier id for a level without needing a stack.- Food effects:
nutrition_multiplier,saturation_multiplier,eat_effect_duration_multiplierandeat_effectswork in tier files anditem_qualitiespatches. Tooltips list them, AppleSkin's preview matches, andQualityFoodEatenEventfires when a player eats a quality food. Shipped tiers stay neutral for food. - New
Qualities.applyFoodEffects(stack, food). - Entity quality: the synced, saved
quality_api:qualityattachment holds a tier id on any entity. NewQualities.getId,get,level,apply,remove,nameSetanddisplayNameoverloads for entities, and an entity type data mapquality_api:name_set(animalfor the#quality_api:animalstag,monsterfor the#quality_api:monsterstag,townsfolkfor the#quality_api:townsfolktag,playerfor players; add modded mobs to the tags). No inheritance; callers decide that. - Entity attributes: entity type data map
quality_api:entity_qualitiesgives entities attribute modifiers per tier. They are recomputed on apply, remove, load and reload, never saved, and max health changes keep the health percentage. Tier files do not apply to entities. - Entity quality survives player death and mob conversions; a converted mob uses its new type's attributes. Config
keepPlayerQualityOnDeath(default true) clears a player's quality on death when off. - Loot function
quality_api:copy_entity_quality(optionallevel_offset, fraction rolled) gives drops the dropping entity's quality, and loot conditionquality_api:entity_min_quality(min_level) gates drops on it. QualityLootEventfires whenevercopy_entity_qualitydecides a drop's tier, with the killing player, the entity, its level and the proposed tier;setQualitychanges the result, so a skill mod can decide drop quality. It fires for entities without quality too./quality entity <targets> set <tier>and/quality entity <targets> remove. Set messages show the tier id next to the display word, e.g. "Set Steve to Legendary (quality_api:masterwork)".Qualities.forLevel(double, random)rolls the fraction without a stack.
1.3.3
- Add silverlib requirement.
This mod has no additional files

