173 lines
6.8 KiB
GDScript
173 lines
6.8 KiB
GDScript
class_name TechDB
|
|
## Techniken sind echte, in der Praxis erprobte Lösungsansätze.
|
|
## Jede trägt drei Hinweise: was sie tut, wann man sie anwendet, warum sie hilft.
|
|
|
|
static var LIST: Array = [
|
|
{
|
|
"id": "pomodoro",
|
|
"name": "Pomodoro-Technik",
|
|
"was": "25 Minuten am Stück an einer Sache arbeiten, dann 5 Minuten Pause. Nach vier Runden eine lange Pause.",
|
|
"wann": "Wenn eine Aufgabe zu groß wirkt und der Anfang immer wieder verschoben wird.",
|
|
"warum": "Ein klar begrenzter Zeitraum senkt die Einstiegshürde. Der Kopf muss nur 25 Minuten durchhalten, nicht den ganzen Tag.",
|
|
"tags": ["prokrastination", "fokus"],
|
|
"momente": ["arbeitet", "zoegert"],
|
|
"farbe": Color(0.95, 0.45, 0.30),
|
|
},
|
|
{
|
|
"id": "zwei_minuten",
|
|
"name": "Zwei-Minuten-Regel",
|
|
"was": "Was unter zwei Minuten dauert, sofort erledigen. Große Vorhaben auf einen Zwei-Minuten-Anfang schrumpfen.",
|
|
"wann": "Bei einem Berg von Kleinkram oder wenn schon der erste Schritt blockiert.",
|
|
"warum": "Der Start kostet die meiste Energie. Zwei Minuten sind zu klein zum Ablehnen und ziehen meist die ganze Aufgabe nach sich.",
|
|
"tags": ["prokrastination", "ueberforderung"],
|
|
"momente": ["zoegert", "aufraeumen", "arbeitet"],
|
|
"farbe": Color(0.98, 0.72, 0.25),
|
|
},
|
|
{
|
|
"id": "wenn_dann",
|
|
"name": "Wenn-Dann-Plan",
|
|
"was": "Den Vorsatz an einen konkreten Auslöser binden: \"Wenn ich X tue, dann mache ich Y.\"",
|
|
"wann": "Wenn ein Vorhaben im Alltag jedes Mal untergeht.",
|
|
"warum": "Der Plan hängt an einer Situation statt an Willenskraft. Der Auslöser erinnert von allein.",
|
|
"tags": ["gewohnheit", "prokrastination"],
|
|
"momente": ["morgenroutine", "pause"],
|
|
"farbe": Color(0.45, 0.80, 0.55),
|
|
},
|
|
{
|
|
"id": "habit_stack",
|
|
"name": "Gewohnheiten stapeln",
|
|
"was": "Eine neue, kleine Gewohnheit direkt an eine bestehende anhängen.",
|
|
"wann": "Wenn eine neue Routine nie einen Platz im Tag findet.",
|
|
"warum": "Die alte Gewohnheit ist der Anker. Es muss kein neuer Zeitpunkt erfunden werden.",
|
|
"tags": ["gewohnheit"],
|
|
"momente": ["morgenroutine", "essen", "abendroutine"],
|
|
"farbe": Color(0.40, 0.70, 0.85),
|
|
},
|
|
{
|
|
"id": "zerlegen",
|
|
"name": "Aufgabe zerlegen",
|
|
"was": "Ein großes Ziel in benennbare Einzelschritte teilen, bis der nächste Schritt trivial ist.",
|
|
"wann": "Wenn jemand vor einem Vorhaben erstarrt und nicht weiß, wo er anfangen soll.",
|
|
"warum": "Unklarheit lähmt stärker als Aufwand. Ein sichtbarer nächster Schritt macht Handeln wieder möglich.",
|
|
"tags": ["ueberforderung", "prokrastination", "ziel"],
|
|
"momente": ["gruebelt", "arbeitet"],
|
|
"farbe": Color(0.75, 0.55, 0.95),
|
|
},
|
|
{
|
|
"id": "umgebung",
|
|
"name": "Umgebung gestalten",
|
|
"was": "Das gewünschte Verhalten leichter machen, das störende schwerer. Handy in einen anderen Raum, Instrument sichtbar aufstellen.",
|
|
"wann": "Wenn gute Vorsätze regelmäßig an Ablenkung scheitern.",
|
|
"warum": "Verhalten folgt dem geringsten Widerstand. Die Umgebung wirkt zuverlässiger als Disziplin.",
|
|
"tags": ["ablenkung", "gewohnheit"],
|
|
"momente": ["aufraeumen", "arbeitet", "ruht"],
|
|
"farbe": Color(0.55, 0.85, 0.40),
|
|
},
|
|
{
|
|
"id": "reframing",
|
|
"name": "Gedanken umdeuten",
|
|
"was": "Einen belastenden Gedanken prüfen und durch eine ebenso wahre, aber tragfähigere Sicht ersetzen.",
|
|
"wann": "Wenn jemand in einem Gedanken feststeckt, der ihn klein hält.",
|
|
"warum": "Nicht das Ereignis belastet, sondern seine Deutung. Eine andere Deutung verändert Gefühl und Handlung.",
|
|
"tags": ["selbstzweifel", "angst"],
|
|
"momente": ["gruebelt", "ruht", "angespannt"],
|
|
"farbe": Color(0.95, 0.55, 0.75),
|
|
},
|
|
{
|
|
"id": "box_atmung",
|
|
"name": "Box-Atmung",
|
|
"was": "Vier Sekunden einatmen, vier halten, vier ausatmen, vier halten. Mehrere Runden lang.",
|
|
"wann": "Bei akuter Anspannung, kurz vor einem gefürchteten Gespräch oder Auftritt.",
|
|
"warum": "Langes Ausatmen bremst den Alarmzustand des Körpers. Der Puls sinkt, der Kopf wird wieder klar.",
|
|
"tags": ["angst", "stress"],
|
|
"momente": ["angespannt", "wartet", "pause"],
|
|
"farbe": Color(0.40, 0.85, 0.95),
|
|
},
|
|
{
|
|
"id": "selbstmitgefuehl",
|
|
"name": "Selbstmitgefühl",
|
|
"was": "Mit sich selbst so sprechen wie mit einem guten Freund in derselben Lage.",
|
|
"wann": "Nach einem Fehler oder Rückschlag, wenn die innere Kritik lauter wird als der Vorsatz.",
|
|
"warum": "Harte Selbstkritik erhöht die Vermeidung. Freundlichkeit hält handlungsfähig und senkt die Abbruchquote.",
|
|
"tags": ["selbstzweifel", "rueckschlag"],
|
|
"momente": ["gruebelt", "ruht", "angespannt"],
|
|
"farbe": Color(1.0, 0.80, 0.60),
|
|
},
|
|
{
|
|
"id": "schlaffenster",
|
|
"name": "Schlaffenster festlegen",
|
|
"was": "Feste Aufsteh- und Schlafenszeit, die letzte Stunde ohne Bildschirm, Zimmer dunkel und kühl.",
|
|
"wann": "Bei Dauermüdigkeit, Reizbarkeit und wegbrechender Konzentration.",
|
|
"warum": "Der innere Rhythmus braucht feste Anker. Erholter Schlaf ist die Grundlage für jede andere Veränderung.",
|
|
"tags": ["erschoepfung", "gesundheit"],
|
|
"momente": ["abendroutine", "muede", "ruht"],
|
|
"farbe": Color(0.45, 0.50, 0.90),
|
|
},
|
|
{
|
|
"id": "hilfe_bitten",
|
|
"name": "Konkret um Hilfe bitten",
|
|
"was": "Eine klare, kleine Bitte an eine konkrete Person richten, statt allgemein zu hoffen.",
|
|
"wann": "Wenn jemand allein an etwas hängen bleibt, das andere leicht lösen könnten.",
|
|
"warum": "Vage Bitten werden überhört. Menschen helfen gern, wenn sie genau wissen, was zu tun ist.",
|
|
"tags": ["einsamkeit", "ueberforderung"],
|
|
"momente": ["wartet", "pause", "unterwegs"],
|
|
"farbe": Color(0.90, 0.90, 0.45),
|
|
},
|
|
{
|
|
"id": "nein_sagen",
|
|
"name": "Nein sagen mit Alternative",
|
|
"was": "Absagen und zugleich benennen, was ginge: \"Heute nicht, am Donnerstag gern.\"",
|
|
"wann": "Wenn der eigene Kalender von fremden Anliegen aufgebraucht wird.",
|
|
"warum": "Ein nacktes Nein fühlt sich riskant an. Mit Alternative bleibt die Beziehung heil und die Zeit geschützt.",
|
|
"tags": ["stress", "grenzen"],
|
|
"momente": ["arbeitet", "angespannt", "unterwegs"],
|
|
"farbe": Color(0.85, 0.35, 0.45),
|
|
},
|
|
]
|
|
|
|
|
|
static var TAG_TEXT: Dictionary = {
|
|
"prokrastination": "Aufschieben",
|
|
"fokus": "Konzentration",
|
|
"ueberforderung": "Überforderung",
|
|
"gewohnheit": "Gewohnheiten",
|
|
"ziel": "Ziele",
|
|
"ablenkung": "Ablenkung",
|
|
"selbstzweifel": "Selbstzweifel",
|
|
"angst": "Angst",
|
|
"stress": "Stress",
|
|
"rueckschlag": "Rückschläge",
|
|
"erschoepfung": "Erschöpfung",
|
|
"gesundheit": "Gesundheit",
|
|
"einsamkeit": "Einsamkeit",
|
|
"grenzen": "Grenzen setzen",
|
|
}
|
|
|
|
|
|
static func tags_text(tags: Array) -> String:
|
|
var out: Array = []
|
|
for t in tags:
|
|
out.append(TAG_TEXT.get(t, t))
|
|
return ", ".join(out)
|
|
|
|
|
|
static func momente_text(momente: Array) -> String:
|
|
var out: Array = []
|
|
for m in momente:
|
|
out.append(HumanDB.activity_text(m))
|
|
return ", ".join(out)
|
|
|
|
|
|
static func by_id(id: String) -> Dictionary:
|
|
for t in LIST:
|
|
if t["id"] == id:
|
|
return t
|
|
return {}
|
|
|
|
|
|
static func ids() -> Array:
|
|
var out: Array = []
|
|
for t in LIST:
|
|
out.append(t["id"])
|
|
return out
|