class_name Probleme ## Die zweite Ebene: was einen Menschen nicht im Tagesablauf aufhält, sondern ## in einzelnen Momenten. Eine Gewohnheit hat einen Platz im Tag -- ein ## psychisches Problem hat keinen. Es zeigt sich in Situationen, und die ## kommen, wann sie wollen. ## ## Darum die andere Mechanik: Gewohnheiten pflanzt man ein und sie laufen ohne ## dich weiter. Bei einer Situation musst du dabei sein und im Moment die ## Technik wählen, die zu diesem Problem passt. static var LISTE: Dictionary = { "angst": { "name": "Angst", "kurz": "der Körper macht dicht, bevor der Kopf mitredet", }, "selbstzweifel": { "name": "Selbstzweifel", "kurz": "die innere Stimme redet es klein", }, "stress": { "name": "Stress", "kurz": "alles gleichzeitig, nichts zu Ende", }, "ueberforderung": { "name": "Überforderung", "kurz": "der Berg ist zu groß zum Ansehen", }, "erschoepfung": { "name": "Erschöpfung", "kurz": "der Akku ist leer, bevor der Tag anfängt", }, "einsamkeit": { "name": "Einsamkeit", "kurz": "hängt allein an dem, was zu zweit ginge", }, "perfektionismus": { "name": "Perfektionismus", "kurz": "nichts ist je gut genug zum Abgeben", }, "unruhe": { "name": "Unruhe", "kurz": "kann nicht bleiben, wo er ist", }, } ## Situationen: was im Moment sichtbar wird. Jede gehört zu einem Problem. static var SITUATIONEN: Dictionary = { "blackout": { "name": "wird starr", "was": "Ihr wird schwarz vor Augen.", "problem": "angst", }, "aufschieben_angst": { "name": "meldet sich ab", "was": "Sie sagt den Termin wieder ab.", "problem": "angst", }, "kleinreden": { "name": "redet es klein", "was": "»Das kann doch jeder besser.«", "problem": "selbstzweifel", }, "vergleich": { "name": "vergleicht sich", "was": "Sie sieht, was andere schaffen.", "problem": "selbstzweifel", }, "alles_gleichzeitig": { "name": "fängt drei Dinge an", "was": "Alles gleichzeitig, nichts zu Ende.", "problem": "stress", }, "noch_ein_ja": { "name": "sagt schon wieder ja", "was": "Noch eine Bitte, noch ein Ja.", "problem": "stress", }, "erstarrt": { "name": "erstarrt vor dem Berg", "was": "Sie sieht die Aufgabe und macht nichts.", "problem": "ueberforderung", }, "ausgebrannt": { "name": "sackt zusammen", "was": "Sie sitzt da und starrt.", "problem": "erschoepfung", }, "allein": { "name": "hängt allein fest", "was": "Sie kommt nicht weiter und fragt niemanden.", "problem": "einsamkeit", }, "absagen_treffen": { "name": "sagt das Treffen ab", "was": "Lieber allein als unter Leuten.", "problem": "einsamkeit", }, "verwerfen": { "name": "verwirft den Entwurf", "was": "Sie löscht, was schon fertig war.", "problem": "perfektionismus", }, "nachbessern": { "name": "bessert endlos nach", "was": "Die dritte Fassung, und es wird nicht besser.", "problem": "perfektionismus", }, "aufspringen": { "name": "springt auf", "was": "Sie hält es am Platz nicht aus.", "problem": "unruhe", }, "ortswechsel": { "name": "wechselt den Ort", "was": "Woanders geht es bestimmt besser.", "problem": "unruhe", }, "zusammenbruch_klein": { "name": "gibt für heute auf", "was": "Der Rest des Tages ist gestrichen.", "problem": "erschoepfung", }, "abbruch": { "name": "lässt es liegen", "was": "Mitten drin hört sie auf.", "problem": "ueberforderung", }, } static func problem_da(schluessel: String) -> bool: return LISTE.has(schluessel) static func name_von(schluessel: String) -> String: return str(LISTE[schluessel]["name"]) if LISTE.has(schluessel) else schluessel ## Alle Situationen, in denen sich dieses Problem zeigt. static func situationen_von(problem: String) -> Array: var out: Array = [] for key in SITUATIONEN: if SITUATIONEN[key]["problem"] == problem: out.append(key) return out ## Techniken, die gegen dieses Problem etwas ausrichten -- erkennbar am Feld ## `tags` der Technik. static func techniken_gegen(problem: String) -> Array: var out: Array = [] for t in TechDB.LIST: if (t["tags"] as Array).has(problem): out.append(str(t["id"])) return out static func hilft(tech_id: String, problem: String) -> bool: var t := TechDB.by_id(tech_id) return not t.is_empty() and (t["tags"] as Array).has(problem)