feat(bisaya-course): add new exercises for various everyday scenarios
All checks were successful
Deploy to production / deploy (push) Successful in 2m44s
All checks were successful
Deploy to production / deploy (push) Successful in 2m44s
- Introduced multiple-choice, gap-fill, and situational response exercises across several categories including 'Besuch & Gastfreundschaft', 'Gesundheit im Alltag', 'Unterwegs & Transport', 'Kinder im Alltag', and 'Arzt & Termin'. - Each category includes detailed instructions, question data, answer data, and explanations to enhance learning experiences. - Expanded the vocabulary and situational context for learners to practice real-life interactions in Bisaya.
This commit is contained in:
@@ -1787,6 +1787,355 @@ const BISAYA_EXERCISES = {
|
||||
},
|
||||
explanation: 'Eine kurze höfliche Antwort reicht hier völlig aus.'
|
||||
})
|
||||
],
|
||||
|
||||
'Besuch & Gastfreundschaft': [
|
||||
{
|
||||
exerciseTypeId: 2,
|
||||
title: 'Gast hereinbitten',
|
||||
instruction: 'Wähle die natürlichste Formulierung, um einen Gast hereinzubitten.',
|
||||
questionData: {
|
||||
type: 'multiple_choice',
|
||||
question: 'Ein Familiengast steht vor der Tür. Was sagst du zuerst?',
|
||||
options: ['Sulod lang.', 'Magpahuway sa.', 'Pila ang plite?', 'Asa ang sakayan?']
|
||||
},
|
||||
answerData: { type: 'multiple_choice', correctAnswer: 0 },
|
||||
explanation: '"Sulod lang." bedeutet sinngemäß "Komm einfach rein."'
|
||||
},
|
||||
{
|
||||
exerciseTypeId: 1,
|
||||
title: 'Gast setzen lassen',
|
||||
instruction: 'Fülle die Lücke mit der passenden Einladung aus.',
|
||||
questionData: {
|
||||
type: 'gap_fill',
|
||||
text: 'Sulod lang. {gap} sa.',
|
||||
gaps: 1
|
||||
},
|
||||
answerData: {
|
||||
type: 'gap_fill',
|
||||
answers: ['Lingkod']
|
||||
},
|
||||
explanation: '"Lingkod sa." bedeutet "Setz dich erst einmal."'
|
||||
},
|
||||
withTypeName('situational_response', {
|
||||
title: 'Gast begrüßen und platzieren',
|
||||
instruction: 'Reagiere kurz und passend.',
|
||||
questionData: {
|
||||
type: 'situational_response',
|
||||
question: 'Begrüße einen Gast, bitte ihn herein und biete einen Sitzplatz an.',
|
||||
keywords: ['sulod', 'lingkod']
|
||||
},
|
||||
answerData: {
|
||||
modelAnswer: 'Maayong adlaw. Sulod lang. Lingkod sa.',
|
||||
keywords: ['sulod', 'lingkod']
|
||||
},
|
||||
explanation: 'Das ist ein kompaktes, sehr natürliches Besuchsmuster.'
|
||||
})
|
||||
],
|
||||
|
||||
'Gesundheit im Alltag': [
|
||||
{
|
||||
exerciseTypeId: 2,
|
||||
title: 'Nach Beschwerden fragen',
|
||||
instruction: 'Wähle die passendste Frage bei Kopfweh.',
|
||||
questionData: {
|
||||
type: 'multiple_choice',
|
||||
question: 'Jemand wirkt krank. Wie fragst du nach Kopfweh?',
|
||||
options: ['Sakit imong ulo?', 'Asa ang merkado?', 'Naa kay assignment?', 'Mubayad ko.']
|
||||
},
|
||||
answerData: { type: 'multiple_choice', correctAnswer: 0 },
|
||||
explanation: '"Sakit imong ulo?" fragt direkt nach Kopfschmerzen.'
|
||||
},
|
||||
{
|
||||
exerciseTypeId: 1,
|
||||
title: 'Fürsorge bei Krankheit',
|
||||
instruction: 'Fülle die Lücke mit der passenden Fürsorgeformel.',
|
||||
questionData: {
|
||||
type: 'gap_fill',
|
||||
text: 'Sakit imong ulo? {gap} sa.',
|
||||
gaps: 1
|
||||
},
|
||||
answerData: {
|
||||
type: 'gap_fill',
|
||||
answers: ['Magpahuway']
|
||||
},
|
||||
explanation: '"Magpahuway sa." heißt "Ruh dich erst einmal aus."'
|
||||
},
|
||||
withTypeName('situational_response', {
|
||||
title: 'Kranke Person versorgen',
|
||||
instruction: 'Antworte kurz und fürsorglich.',
|
||||
questionData: {
|
||||
type: 'situational_response',
|
||||
question: 'Frage nach Schmerzen und biete Ruhe an.',
|
||||
keywords: ['sakit', 'magpahuway']
|
||||
},
|
||||
answerData: {
|
||||
modelAnswer: 'Sakit imong ulo? Magpahuway sa.',
|
||||
keywords: ['sakit', 'magpahuway']
|
||||
},
|
||||
explanation: 'Das Muster verbindet Frage und Fürsorge in einer natürlichen Miniszene.'
|
||||
})
|
||||
],
|
||||
|
||||
'Unterwegs & Transport': [
|
||||
{
|
||||
exerciseTypeId: 2,
|
||||
title: 'Nach der Haltestelle fragen',
|
||||
instruction: 'Wähle die passende Transportfrage.',
|
||||
questionData: {
|
||||
type: 'multiple_choice',
|
||||
question: 'Du willst wissen, wo du ein Fahrzeug bekommst. Was fragst du?',
|
||||
options: ['Asa ang sakayan?', 'Sulod lang.', 'Nikaon na ka?', 'Unsay gibati nimo?']
|
||||
},
|
||||
answerData: { type: 'multiple_choice', correctAnswer: 0 },
|
||||
explanation: '"sakayan" meint den Ort oder das Fahrzeug zum Einsteigen.'
|
||||
},
|
||||
{
|
||||
exerciseTypeId: 1,
|
||||
title: 'Fahrtpreis ergänzen',
|
||||
instruction: 'Fülle die Lücke mit dem passenden Wort.',
|
||||
questionData: {
|
||||
type: 'gap_fill',
|
||||
text: 'Pila ang {gap}?',
|
||||
gaps: 1
|
||||
},
|
||||
answerData: {
|
||||
type: 'gap_fill',
|
||||
answers: ['plite']
|
||||
},
|
||||
explanation: '"plite" ist der Fahrpreis.'
|
||||
},
|
||||
withTypeName('situational_response', {
|
||||
title: 'Transport klären',
|
||||
instruction: 'Reagiere mit zwei kurzen Fragen.',
|
||||
questionData: {
|
||||
type: 'situational_response',
|
||||
question: 'Frage nach Haltestelle und Fahrpreis.',
|
||||
keywords: ['sakayan', 'plite']
|
||||
},
|
||||
answerData: {
|
||||
modelAnswer: 'Asa ang sakayan? Pila ang plite?',
|
||||
keywords: ['sakayan', 'plite']
|
||||
},
|
||||
explanation: 'Das ist ein typischer Minidialog für Alltag und Transport.'
|
||||
})
|
||||
],
|
||||
|
||||
'Kinder im Alltag': [
|
||||
{
|
||||
exerciseTypeId: 2,
|
||||
title: 'Kind nach Essen fragen',
|
||||
instruction: 'Wähle die natürlichste Frage an ein Kind.',
|
||||
questionData: {
|
||||
type: 'multiple_choice',
|
||||
question: 'Wie fragst du ein Kind, ob es schon gegessen hat?',
|
||||
options: ['Nikaon na ang bata?', 'Pila ni tanan?', 'Asa ang porma?', 'Mubayad ko.']
|
||||
},
|
||||
answerData: { type: 'multiple_choice', correctAnswer: 0 },
|
||||
explanation: 'Hier wird gezielt das Muster für das Kind im Alltag geübt.'
|
||||
},
|
||||
{
|
||||
exerciseTypeId: 1,
|
||||
title: 'Schulfrage ergänzen',
|
||||
instruction: 'Fülle die Lücke mit dem passenden Schulwort.',
|
||||
questionData: {
|
||||
type: 'gap_fill',
|
||||
text: 'Andam na ka sa {gap}?',
|
||||
gaps: 1
|
||||
},
|
||||
answerData: {
|
||||
type: 'gap_fill',
|
||||
answers: ['eskwela']
|
||||
},
|
||||
explanation: '"eskwela" bedeutet Schule.'
|
||||
},
|
||||
withTypeName('situational_response', {
|
||||
title: 'Kind für Schule vorbereiten',
|
||||
instruction: 'Reagiere fürsorglich und kurz.',
|
||||
questionData: {
|
||||
type: 'situational_response',
|
||||
question: 'Frage nach Essen und ob das Kind bereit für die Schule ist.',
|
||||
keywords: ['nikaon', 'eskwela']
|
||||
},
|
||||
answerData: {
|
||||
modelAnswer: 'Nikaon na ka? Andam na ka sa eskwela?',
|
||||
keywords: ['nikaon', 'eskwela']
|
||||
},
|
||||
explanation: 'Das verbindet Fürsorge und Schulroutine in einem kompakten Muster.'
|
||||
})
|
||||
],
|
||||
|
||||
'Arzt & Termin': [
|
||||
{
|
||||
exerciseTypeId: 2,
|
||||
title: 'Zum Arzt gehen',
|
||||
instruction: 'Wähle die passende Arztformulierung.',
|
||||
questionData: {
|
||||
type: 'multiple_choice',
|
||||
question: 'Wie sagst du: "Wir gehen zum Arzt"?',
|
||||
options: ['Adto ta sa doktor.', 'Giinvite tika.', 'Bisita mo unya.', 'Magdula ta.']
|
||||
},
|
||||
answerData: { type: 'multiple_choice', correctAnswer: 0 },
|
||||
explanation: '"Adto ta sa doktor." ist die direkte, alltagstaugliche Form.'
|
||||
},
|
||||
{
|
||||
exerciseTypeId: 1,
|
||||
title: 'Terminfrage ergänzen',
|
||||
instruction: 'Fülle die Lücke mit dem passenden Fremdwort.',
|
||||
questionData: {
|
||||
type: 'gap_fill',
|
||||
text: 'Naa moy {gap}?',
|
||||
gaps: 1
|
||||
},
|
||||
answerData: {
|
||||
type: 'gap_fill',
|
||||
answers: ['appointment']
|
||||
},
|
||||
explanation: '"appointment" wird im Alltag oft direkt verwendet.'
|
||||
},
|
||||
withTypeName('situational_response', {
|
||||
title: 'Arzttermin vorbereiten',
|
||||
instruction: 'Antworte in zwei kurzen Sätzen.',
|
||||
questionData: {
|
||||
type: 'situational_response',
|
||||
question: 'Sage, dass ihr zum Arzt geht, und frage nach dem Termin.',
|
||||
keywords: ['doktor', 'appointment']
|
||||
},
|
||||
answerData: {
|
||||
modelAnswer: 'Adto ta sa doktor. Naa moy appointment?',
|
||||
keywords: ['doktor', 'appointment']
|
||||
},
|
||||
explanation: 'Das Muster verbindet Weg zum Arzt und Terminorganisation.'
|
||||
})
|
||||
],
|
||||
|
||||
'Dialogtag - Familie & Planung': [
|
||||
{
|
||||
exerciseTypeId: 2,
|
||||
title: 'Tagesplan eröffnen',
|
||||
instruction: 'Wähle die Formulierung, mit der du die Tagesplanung eröffnest.',
|
||||
questionData: {
|
||||
type: 'multiple_choice',
|
||||
question: 'Wie fragst du in der Familie nach dem Plan für heute?',
|
||||
options: ['Unsa atong plano karon?', 'Asa ang ATM?', 'Pila ang plite?', 'Salamat sa pag-anhi.']
|
||||
},
|
||||
answerData: { type: 'multiple_choice', correctAnswer: 0 },
|
||||
explanation: 'Damit eröffnest du einen Familien- oder Organisationsdialog sehr natürlich.'
|
||||
},
|
||||
{
|
||||
exerciseTypeId: 1,
|
||||
title: 'Kind abholen ergänzen',
|
||||
instruction: 'Fülle die Lücke mit dem passenden Verb aus.',
|
||||
questionData: {
|
||||
type: 'gap_fill',
|
||||
text: '{gap} nato ang bata unya.',
|
||||
gaps: 1
|
||||
},
|
||||
answerData: {
|
||||
type: 'gap_fill',
|
||||
answers: ['Kuhaon']
|
||||
},
|
||||
explanation: '"Kuhaon nato" meint hier "wir holen ... später ab".'
|
||||
},
|
||||
withTypeName('situational_response', {
|
||||
title: 'Familie planen',
|
||||
instruction: 'Reagiere in zwei bis drei kurzen Sätzen.',
|
||||
questionData: {
|
||||
type: 'situational_response',
|
||||
question: 'Frage nach dem Plan für heute, sage, dass ihr das Kind später abholt, und kündige an, danach heimzugehen.',
|
||||
keywords: ['plano', 'bata', 'mouli']
|
||||
},
|
||||
answerData: {
|
||||
modelAnswer: 'Unsa atong plano karon? Kuhaon nato ang bata unya. Pagkahuman, mouli ta.',
|
||||
keywords: ['plano', 'bata', 'mouli']
|
||||
},
|
||||
explanation: 'Das ist ein typisches zusammenhängendes Planungsmuster aus der Stabilisierungsphase.'
|
||||
})
|
||||
],
|
||||
|
||||
'Fehlertraining - häufige Verwechslungen I': [
|
||||
{
|
||||
exerciseTypeId: 2,
|
||||
title: 'Vergangenheit oder Zukunft',
|
||||
instruction: 'Wähle die Formulierung für "Ich bin hingegangen".',
|
||||
questionData: {
|
||||
type: 'multiple_choice',
|
||||
question: 'Welche Form passt zur Vergangenheit?',
|
||||
options: ['Niadto ko.', 'Moadto ko.', 'Palihug.', 'Pasayloa ko.']
|
||||
},
|
||||
answerData: { type: 'multiple_choice', correctAnswer: 0 },
|
||||
explanation: '"Niadto ko." bezieht sich auf Vergangenes, "Moadto ko." auf Zukünftiges.'
|
||||
},
|
||||
{
|
||||
exerciseTypeId: 2,
|
||||
title: 'Bitte oder Entschuldigung',
|
||||
instruction: 'Wähle die Formulierung für eine Bitte.',
|
||||
questionData: {
|
||||
type: 'multiple_choice',
|
||||
question: 'Welche Form bedeutet "Bitte"?',
|
||||
options: ['Palihug.', 'Pasayloa ko.', 'Niadto ko.', 'Moadto ko.']
|
||||
},
|
||||
answerData: { type: 'multiple_choice', correctAnswer: 0 },
|
||||
explanation: '"Palihug." ist die Bitte, "Pasayloa ko." die Entschuldigung.'
|
||||
},
|
||||
withTypeName('situational_response', {
|
||||
title: 'Bitte und Entschuldigung trennen',
|
||||
instruction: 'Antworte mit Bitte und Entschuldigung in der richtigen Reihenfolge.',
|
||||
questionData: {
|
||||
type: 'situational_response',
|
||||
question: 'Bitte zuerst höflich um Wiederholung und entschuldige dich danach.',
|
||||
keywords: ['palihug', 'pasayloa']
|
||||
},
|
||||
answerData: {
|
||||
modelAnswer: 'Palihug ka mubalik. Pasayloa ko.',
|
||||
keywords: ['palihug', 'pasayloa']
|
||||
},
|
||||
explanation: 'Das Fehlertraining soll genau solche nahen Alltagsformen sauber trennen.'
|
||||
})
|
||||
],
|
||||
|
||||
'Abschlussprüfung - Gesamtpfad': [
|
||||
{
|
||||
exerciseTypeId: 2,
|
||||
title: 'Gesamtpfad: Alltagssituation erkennen',
|
||||
instruction: 'Wähle die passendste Reaktion.',
|
||||
questionData: {
|
||||
type: 'multiple_choice',
|
||||
question: 'Ihr müsst in die Stadt, habt einen Termin und jemand braucht Hilfe. Welche Formulierung passt am besten?',
|
||||
options: ['Aduna mi appointment. Tabangan tika.', 'Sulod lang. Lingkod sa.', 'Magdula ta. Lingaw ka?', 'Palangga taka. Gimingaw ko nimo.']
|
||||
},
|
||||
answerData: { type: 'multiple_choice', correctAnswer: 0 },
|
||||
explanation: 'Die Abschlussprüfung mischt bewusst mehrere Alltagsfelder.'
|
||||
},
|
||||
{
|
||||
exerciseTypeId: 1,
|
||||
title: 'Gesamtpfad: Kernmuster vervollständigen',
|
||||
instruction: 'Fülle beide Lücken mit den passenden Wörtern.',
|
||||
questionData: {
|
||||
type: 'gap_fill',
|
||||
text: 'Moadto mi sa {gap}. Aduna mi {gap}.',
|
||||
gaps: 2
|
||||
},
|
||||
answerData: {
|
||||
type: 'gap_fill',
|
||||
answers: ['lungsod', 'appointment']
|
||||
},
|
||||
explanation: 'Das verbindet Weg, Ort und Terminorganisation.'
|
||||
},
|
||||
withTypeName('situational_response', {
|
||||
title: 'Gesamtpfad: Kompakte Abschlussreaktion',
|
||||
instruction: 'Reagiere in drei kurzen Sätzen.',
|
||||
questionData: {
|
||||
type: 'situational_response',
|
||||
question: 'Sage, dass ihr in die Stadt fahrt, einen Termin habt und du helfen wirst.',
|
||||
keywords: ['lungsod', 'appointment', 'tabangan']
|
||||
},
|
||||
answerData: {
|
||||
modelAnswer: 'Moadto mi sa lungsod. Aduna mi appointment. Tabangan tika.',
|
||||
keywords: ['lungsod', 'appointment', 'tabangan']
|
||||
},
|
||||
explanation: 'Die Abschlussprüfung bündelt Weg, Organisation und Hilfe in einer letzten Miniszene.'
|
||||
})
|
||||
]
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user