No life therefore time for elden ring

Aufgabe

Im Folgenden wollen wir das Nachrichtensystem von den Souls-Spielen (stark vereinfacht) nachahmen, mit welchem man Nachrichten anhand von sogenannten Templates, Wörtern und Verbindungen erstellen kann. Templates haben die Form “text **** text2”, wobei text und text2 beliebigen (im besten Fall schlüssigem) Text darstellen. Das **** im Template wird durch ein ausgewähltes Wort aus den Wörtern ersetzt. Dadurch entsteht ein Satz. Die Wörter sind in Kategorien eingeordnet. Um kompliziertere Aussagen zu bilden, lassen sich zwei Sätze mit Verbindungen verbinden. Hier ein Beispiel aus dem Spiel “Elden Ring”:

Eine mögliche Nachricht wäre demnach “Sorcerer required ahead therefore Seek Sorcerer”.

1.

Speichern Sie Ihre eigene Sammlung von Templates, Wörtern (denken Sie daran, dass Wörter gruppiert werden) und Verbindungen. Welche Datenstrukturen eignen sich dafür jeweils?

2.

Schreiben Sie nun eine Methode, welche ein Wort und ein Template bekommt und die **** im Template mit dem Wort ersetzt. Auf welche nützliche Methode für Strings können Sie dazu zugreifen?

3.

Schreiben Sie nun ein Konsolenprogramm, mit dem man sich interaktiv Nachrichten zusammenbauen kann.

Tipp Aufgabe 1

Achtung Spoiler!

Tipp Aufgabe 2

Achtung Spoiler!