Zitat Zitat
Darüber hatte ich auch schon nachgedacht... Allerdings verträgt sich das dann nicht mit einer anderen Sache, und zwar dass der Spieler selbst schreiben können soll...
Dafür bietet aber Ruby eine Lösung, die String-Methode gsub, mit denen du alle Vorkommen eines Musters in einem String durch etwas anderes ersetzen kannst.
PHP-Code:
# Angenommen text ist eine Variable, die den String enthält, den der Benutzer eingeben hat.
# Zum korrekten Zeichnen müsste das Zeichen 'ß' durch '<' ersetzt werden dann würde man dies mit folgendem Aufruf erreichen:
text2 text.gsub('ß''<')
# Beispiel:
text "Dieß ißt nur ein Teßttext ohne Anßpruch auf richtige Rechtßchreibung"
text2 text.gsub('ß''ss')
# text2 => "Diess isst nur ein Tessttext ohne Ansspruch auf richtige Rechtsschreibung"

# Allgemein funktioniert gsub folgendermaßen:
str.gsub(patternreplacement)
# Die Funktion durchsucht den gesamten String "str" auf Vorkommnisse von 'pattern', 
# wobei Pattern entweder eine Regular Expression ist (RegExp) oder einfach selbst nur ein String und ersetzt alle gefunden Vorkommnisse durch 'replacement' und liefert den neuen String zurück. 
# str selbst bleibt dabei unverändert.
# Es gibt dann noch die Funktion gsub! die genau dasselbe macht, aber die Änderungen dabei am Objekt selber durchführt. (Und nil zurück gibt, falls pattern nicht gefunden wurde) 
Du kannst also die Eingabe des Nutzers nehmen, durch gsub jagen um die nötigen Ersetzungen für die Anzeige per Bitmap-Font zu machen und dabei den Text noch in der unveränderten Version behalten, falls du ihn mittels normaler Fonts anzeigen willst.