Files
wds/assets/signals.toml
T
2026-06-15 10:39:30 +02:00

58 lines
1.4 KiB
TOML

# Signal → Action Mapping. Trigger feuern Signals (Strings); hier wird
# definiert, was bei jedem Signal passiert. Signal-Name = Trigger-Quelle:
# für Objekt-Interaktion ist es der Instance-Name ohne Blender-Suffix.
#
# Actions sind Strings im Format "verb args". Verben:
# start_ink <script> Story laden (Frontend treibt sie)
# debug_log <text> eprintln!
# set <name> <value> KV setzen (true/false/i32/f32/string)
# inc <name> [<delta>] KV-Integer +Delta (Default +1)
# clear <name> KV-Eintrag entfernen
# hide_object <name> deferred (Frontend): Instance ausblenden
# play_sound <file> deferred (Frontend): SFX abspielen
#
# Reserviertes Signal `[init]` feuert einmal vor der Game-Loop —
# idealer Ort für KV-Defaults.
[init]
actions = [
"set cube_clicks 0",
"set mushrooms_collected 0",
"set quest_mushroom_active false",
"set quest_mushroom_done false",
]
[Mushroom]
actions = [
"inc mushrooms_collected",
"play_sound pickup.wav",
"hide_object $self",
]
[Person]
actions = [
"play_sound greet.wav",
"start_ink person.ink.json",
]
[Suzanne]
actions = [
"start_ink suzanne.ink.json",
]
[Cube]
actions = [
"inc cube_clicks",
"start_ink cube.ink.json",
]
[person_farewell]
actions = [
"debug_log Person hat sich verabschiedet",
]
[tiffany]
actions = [
"start_ink cinema.ink.json",
]