attributes: @Clip(field) resolved as @Node is, and @OneOf takes constants as well as a prefix - one argument ending in _ is a prefix, otherwise each is a constant that must exist; reseeded

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Orkun ÇAKILKAYA 2026-09-29 18:34:33 +03:00
parent ebfbabdfd8
commit 34c2ac2cb9
9 changed files with 73220 additions and 71912 deletions

View file

@ -30,6 +30,8 @@ program Attributes {
@Derived reach: float = 0.0 # worked out at boot from the model
@Text @Multiline blurb: string = "" # what the shop says about it
@Key bind: int = 0 # the key that takes it in hand
@Clip(model) swing: string = "swing" # the clip it plays in use
@OneOf(VD_STORE, VD_MARINA) sold_at: int = VD_MARINA
}
@AppendOnly
registry Tools of Tool as TL from "data/attr_tools.lres"

View file

@ -1,5 +1,6 @@
# attributes: @Node names a field of its record that names a glTF - `handle` names no field, `tag`
# is a plain string, and `kit` refers to a registry whose record has two models (all three are reported)
# attributes: @Node / @Clip name a field of its record that names a glTF - `handle` names no field,
# `tag` is a plain string, `kit` refers to a registry whose record has two models - and a listing
# @OneOf names constants that exist, which KITS_NONE is not (all five are reported)
program R {
property Kit {
key: string = ""
@ -13,6 +14,8 @@ program R {
@Node(handle) grip: string = ""
@Node(tag) tip: string = ""
@Node(kit) hook: string = ""
@Clip(tag) swing: string = ""
@OneOf(KITS_COUNT, KITS_NONE) which: int = 0
}
entry { print(KITS_COUNT) }
}