Appearance
helix / AdvancementDef
Class: AdvancementDef
Defined in: core/values/advancement.ts:69
A registerable advancement, built from typed Triggers plus an optional reward function. Renders to the JSON written into data/<ns>/<advancement folder>/<name>.json (via Datapack.advancement).
The common shape is a hidden trigger advancement - no display, no parent, one criterion, a rewards.function. The reward function typically runs some behaviour and then advancement revoke @s only <this> to re-arm, giving an event handler that fires once per occurrence.
dp.advancement("zzz/item/wand/on_attack", Advancement().criterion("trigger", Trigger.playerHurtEntity(wand)) .reward("mypack:zzz/item/wand/on_attack"));
Constructors
Constructor
new AdvancementDef():
AdvancementDef
Returns
AdvancementDef
Methods
criterion()
criterion(
name,trigger):this
Defined in: core/values/advancement.ts:74
Add a named criterion (its trigger). Default requirements (all criteria) apply.
Parameters
name
string
trigger
Returns
this
reward()
reward(
functionId):this
Defined in: core/values/advancement.ts:80
Set rewards.function to the function resource id (<ns>:name).
Parameters
functionId
string
Returns
this
toJson()
toJson(
version):Record<string,unknown>
Defined in: core/values/advancement.ts:86
The advancement JSON, with embedded values rendered for version.
Parameters
version
Returns
Record<string, unknown>