Der Variablen Tab (in der Seitenleiste deines Projekts) ist der Ort, an dem du benannte Werte definierst, die deine App speichern, anzeigen, und auf die sie reagieren kann, ein laufender Punktestand, ein Zähler, ein Flag, eine kleine Inventarliste. Jede hat einen Namen (zur eigenen Referenz), einen Typ (Number, Text, True/False, oder List), und einen Initial Value, mit dem sie jedes Mal startet, wenn die App geöffnet wird (Werte werden nie zwischen Starts gespeichert).
Eine Variable auf dem Bildschirm anzeigen
Jeder Text Block hat ein "Show variable" Feld, füge die ID einer Variable dort ein (unter ihrem Delete Button im Variablen Tab angezeigt), und ihr aktueller Wert erscheint direkt nach dem eigenen Text dieses Blocks, live aktualisiert, wann immer eine Aktion sie ändert.
Eine Variable ändern
Vier Aktionen funktionieren bei jedem Button, jeder Header Aktion, oder ähnlichem: Set Variable (Target: variableId,value) setzt sie auf einen genauen Wert; Change Variable (Target: variableId,delta) addiert eine Zahl dazu (delta kann die ID einer anderen Variable mit einem $ davor sein, z. B. $otherVariable); Reset Variable (Target: nur die ID) stellt ihren Initial Value wieder her; Calculate (Target: variableId,expression) wertet einen kleinen mathematischen Ausdruck wie score + 10 * combo aus (blanke Wörter werden als IDs anderer Variablen gelesen) und speichert das Ergebnis.
Der Condition Block: echte Verzweigung
Ein Condition Block vergleicht eine Variable mit einem Wert (equals, not equals, greater than, less than, oder contains) und führt nur dann, wenn das zutrifft, seine eigene Aktion aus. Löse ihn von überall mit der Aktion Check Condition aus (Target: die eigene ID der Condition). Bei einem falschen Ergebnis passiert nichts, für einen "else" Zweig füge eine zweite Condition mit dem entgegengesetzten Vergleich hinzu und prüfe auch diese. Die Language Practice Vorlage setzt das zu einem echten, funktionierenden Beispiel zusammen: ein Tap auf eine Antwort setzt eine Variable, ein Check Answer Button prüft eine Condition dagegen, und eine Punktestand Variable aktualisiert live auf dem Bildschirm.
Tipp: Anders als Dialog/Notification IDs (auf Mobile ebenfalls appweit), funktionieren Condition IDs auf dieselbe Weise, appweit, sodass eine Condition von jedem Bildschirm aus geprüft werden kann.