Addition
AdvConfigureEventJS.removeAll()
AdvConfigureEventJS.enableRecipeAdvancementsRemoval()
Remove
{ mod: "*" }
of AdvancementFilter
Fixed a stupid bug about AdvancementFilter
Fix
- Removed compat with Revelationary(EventHorizon), so that ProbeJS could successfully generate js doc
- common.properties will create AdvJS configures correctly
Fix
AdvancementFilter
will filter icon correctlyDamagePredicateBuilder.setType(predicate)
->DamagePredicateBuilder.setTypeByPredicate(predicate)
Addition
- Client example in
/advjs
Compat
Better Advancements
: the new server event:AdvJSEvents.betterAdv
Addition
- AdvLockEventJS.itemUse(toLock: Item, lockBy: ResourceLocation): void
- AdvLockEventJS.blockInteract(toLock: Block, lockBy: ResourceLocation): void
- AdvLockEventJS.entityInteract(toLock: EntityType<any>, lockBy: ResourceLocation): void
Binding
- AdvHelper: for checking server player's advancement isn't done
Upgrades
- AdvancementFilter: compound type is available
Addition
AdvBuilder.repeatable()
andAdvGetter.repeatable()
- If invoked this method, the advancement will revoke after grant automatically.
AdvGetter.changeParent(parentId: ResourceLocation)
- PlayerPredicateBuilder.checkAdvancementCriterions(advancement: ResourceLocation, criterions: Map<String, Boolean>)
Fix
- If an advancement has no display, the displayModifier will not throw error, but create a new display
/advjs
will generate correct code
Rename
AdvRemoveFilter
->AdvancementFilter
GameType
->GameMode
BaseTrigger
->CustomTrigger
Updates to latest version
Diff
- No
/advjs
command - No example script
Breaking Changes
Compat
Revelationary
(Fabric only), the new client event:AdvJSEvents.revelation
EventHorizon
(Forge only), the new client event:AdvJSEvents.revelation
Reconstruct
ServerEvents.advancement
->AdvJSEvents.advancement
AdvConfigureEventJS.lock
->AdvJSEvents.lock
Addition
- The new startup event
AdvJSEvents.trigger
, for registering custom trigger- Use
CustomTriggers.of(id: ResourceLocation): BaseTrigger
to get your custom trigger for triggers - Use
Trigger.custom(id: ResourceLocation): BaseTriggerInstance
to create a trigger instance for criteria
- Use
Addition
- BlockDestroyedTrigger.Builder.ofTag(tag: ResourceLocation): void
- AdvConfigureEventJS.lock(toLock: Ingredient, lockBy: ResourceLocation): void
- AdvConfigureEventJS.lock(toLock: ItemPredicate, lockBy: ResourceLocation): void
- Trigger.fromJson(json: JsonObject): CriterionTriggerInstance
Removal
- AdvConfigureEventJS.lock(toLock: ItemStack, lockBy: ResourceLocation): void
- AdvConfigureEventJS.lock(toLock: ItemStack, lockBy: AdvBuilder): void
Fix
- Allow
requireParentDone
andrequireOthersDone
use in same advancement
New method
- requireOthersDone(requires[]: ResourceLocation...)
- It will check if advancements that you put in had done.
New feature
- Outputting more debugging information.
- More advancement warning message show in advancement.
- Banding Bounds to KubeJS
- New trigger: increasedKillScore
- Triggers when the player killed an entity, it will match the score that player increased.
Rename
- AdvBuilder.getSavePath() -> AdvBuilder.getId()
1.18.2 will stop updatting, and just fix bug.