feat(260329-uos): add word lists for levels 7-16 and fallback letter intros

- Add German word lists for levels 7-16 (10 words each, max 5 chars)
- All words validated against allowed keys per level
- Level 16 uses short words with period for punctuation practice
- Add 19 new fallback letter introductions (r,u,t,z,w,o,q,p,n,b,v,m,c,x,ä,ü,y,, ,.)
- Update entry count comment to 32 entries (levels 1-16)
This commit is contained in:
2026-03-29 22:14:02 +02:00
parent 374298be23
commit 1d4c709fb6
2 changed files with 126 additions and 1 deletions
+106 -1
View File
@@ -80,7 +80,7 @@ export const fallbackForestComments: string[] = [
"Der Zauberwald hat ein Geschenk für dich bereit. Schau mal!",
];
// --- Fallback Letter Introductions (13 entries, levels 1-6) ---
// --- Fallback Letter Introductions (32 entries, levels 1-16) ---
export const fallbackLetterIntros: LetterIntro[] = [
// Level 1: F, J, Space
@@ -154,6 +154,111 @@ export const fallbackLetterIntros: LetterIntro[] = [
finger: "rechter Mittelfinger",
text: "Das I sitzt über dem K. Dein rechter Mittelfinger springt hoch wie ein Igel hüpft.",
},
// Level 7: R, U
{
letter: "r",
finger: "linker Zeigefinger",
text: "Das R wohnt über dem F. Dein Zeigefinger klettert hoch wie ein Reh den Berg hinauf.",
},
{
letter: "u",
finger: "rechter Zeigefinger",
text: "Das U sitzt über dem J. Dein rechter Zeigefinger springt hoch wie ein Uhu!",
},
// Level 8: T, Z
{
letter: "t",
finger: "linker Zeigefinger",
text: "Das T liegt neben dem R zur Mitte hin. Ein kleiner Schritt für deinen Zeigefinger.",
},
{
letter: "z",
finger: "rechter Zeigefinger",
text: "Das Z ist neben dem U zur Mitte hin. Wie ein Zauberer erscheint es dort!",
},
// Level 9: W, O
{
letter: "w",
finger: "linker Ringfinger",
text: "Das W wohnt über dem S. Dein Ringfinger klettert hoch wie der Wind in die Wolken.",
},
{
letter: "o",
finger: "rechter Ringfinger",
text: "Das O ist rund wie der Mond. Dein rechter Ringfinger findet es über dem L.",
},
// Level 10: Q, P
{
letter: "q",
finger: "linker kleiner Finger",
text: "Das Q wohnt ganz oben links. Dein kleiner Finger streckt sich hoch wie eine Quelle sprudelt.",
},
{
letter: "p",
finger: "rechter kleiner Finger",
text: "Das P sitzt ganz oben rechts. Dein kleiner Finger tippt es leicht wie Popcorn platzt.",
},
// Level 11: N, B
{
letter: "n",
finger: "rechter Zeigefinger",
text: "Das N liegt unter dem J. Dein Zeigefinger taucht hinab wie ein Nilpferd ins Wasser.",
},
{
letter: "b",
finger: "linker Zeigefinger",
text: "Das B versteckt sich unter dem G. Dein Zeigefinger springt hinunter wie ein Ball.",
},
// Level 12: V, M
{
letter: "v",
finger: "linker Zeigefinger",
text: "Das V liegt unter dem F. Dein Zeigefinger rutscht hinab wie ein Vogel, der landet.",
},
{
letter: "m",
finger: "rechter Zeigefinger",
text: "Das M ist unter dem J, ganz unten. Dein Zeigefinger taucht tief wie eine Maus in ihren Bau.",
},
// Level 13: C, X
{
letter: "c",
finger: "linker Mittelfinger",
text: "Das C liegt unter dem D. Dein Mittelfinger gleitet hinunter wie ein Chamäleon.",
},
{
letter: "x",
finger: "linker Ringfinger",
text: "Das X versteckt sich unter dem S. Dein Ringfinger findet es wie einen geheimen Schatz.",
},
// Level 14: Ä, Ü
{
letter: "ä",
finger: "rechter kleiner Finger",
text: "Das Ä hat zwei Pünktchen wie das Ö. Dein kleiner Finger rechts kennt den Weg schon.",
},
{
letter: "ü",
finger: "rechter kleiner Finger",
text: "Das Ü ist das dritte mit Pünktchen. Dein kleiner Finger tippt es neben dem P.",
},
// Level 15: Y, Komma
{
letter: "y",
finger: "linker kleiner Finger",
text: "Das Y versteckt sich ganz unten links. Dein kleiner Finger findet es wie einen Yeti im Schnee.",
},
{
letter: ",",
finger: "rechter Mittelfinger",
text: "Das Komma ist ein kleiner Strich unten. Dein Mittelfinger rechts tippt es neben dem M.",
},
// Level 16: Punkt
{
letter: ".",
finger: "rechter Ringfinger",
text: "Der Punkt ist wie ein kleiner Stein. Dein Ringfinger rechts tippt ihn neben dem Komma.",
},
];
// --- Helper functions ---
+20
View File
@@ -19,6 +19,26 @@ export const wordsByLevel: Record<number, string[]> = {
5: ["glas", "lag", "gah", "hag", "gal", "sah", "hals", "has", "gash", "flags"],
// Level 6: f, j, d, k, s, l, a, ö, g, h, e, i -- "eis", "die", "sie", "lied", "fies"
6: ["eis", "die", "sie", "lied", "fies", "dies", "sei", "geld", "held", "lieh"],
// Level 7: +r, u -- bekannt: f,j,d,k,s,l,a,ö,g,h,e,i,r,u
7: ["ruhe", "reis", "reif", "rief", "drei", "fuhr", "ufer", "krug", "raus", "seid"],
// Level 8: +t, z -- bekannt: ...+t,z
8: ["zeit", "ziel", "tier", "tief", "fest", "rest", "sitz", "reist", "hitze", "kreuz"],
// Level 9: +w, o -- bekannt: ...+w,o
9: ["wort", "rose", "dorf", "wohl", "dort", "rost", "ohr", "trotz", "woher", "forst"],
// Level 10: +q, p -- bekannt: ...+q,p
10: ["topf", "kopf", "post", "opfer", "sport", "preis", "quer", "pfad", "prost", "stopp"],
// Level 11: +n, b -- bekannt: ...+n,b
11: ["bein", "nein", "blind", "braun", "brot", "nebst", "brand", "oben", "born", "binde"],
// Level 12: +v, m -- bekannt: ...+v,m
12: ["vorn", "helm", "form", "viel", "mein", "warm", "stimm", "vater", "mund", "monat"],
// Level 13: +c, x -- bekannt: ...+c,x
13: ["dach", "nach", "buch", "fach", "noch", "text", "wachs", "mach", "nixe", "hexe"],
// Level 14: +ä, ü -- bekannt: ...+ä,ü
14: ["über", "übel", "grün", "kühl", "spät", "wählt", "würde", "trägt", "fährt", "hüpft"],
// Level 15: +y, "," -- bekannt: ...+y (Komma in Wörtern selten, echte Wörter mit y)
15: ["baby", "typ", "yoga", "party", "handy", "hobby", "yacht", "lyrik", "idyll", "hymne"],
// Level 16: +"." -- Punkt als Satzzeichen üben, kurze Wörter mit Punkt
16: ["da.", "so.", "gut.", "ja.", "hier.", "dort.", "fein.", "wohl.", "mein.", "doch."],
};
/**