Startseite › Foren › Deutsches LiveCode-Forum › Probleme mit Hangman
- Dieses Thema hat 9 Antworten und 2 Teilnehmer, und wurde zuletzt aktualisiert vor 11 Monaten, 3 Wochen von
Klaus Major.
-
AutorBeiträge
-
-
April 6, 2022 um 11:11 Uhr #43125
Hallo an die Community,
ich arbeite seit 14 Tagen mit lc und habe das Hangman-Spiel aus Hauke Fehrs Buch programmiert. Jetzt möchte ich gerne die einzelnen Rateworte ersetzen durch 2 Begriffe, zwischen denen sich dann ein Leerzeichen befindet. Wie schaffe ich es, den Unterstrich in „dasWort“ an der Stelle verschwinden zu lassen, an der sich das Leerzeichen befindet?
Besten Dank schonmal. -
April 6, 2022 um 11:25 Uhr #43127
Hi Odoborn,
ohne Haukes Buch und das Skript zu kennen vielleicht so:
... replace "_" with " " in dasWort ## Schwupps, zwei Wörter :-) ...
?
Gruß
Klaus
-
April 6, 2022 um 12:13 Uhr #43129
Danke für den Tipp. Klappt leider nicht, ich probiers weiter.
-
April 6, 2022 um 12:22 Uhr #43130
Hm, kommt halt auf den weiteren Verlauf des Skripte an bzw. wie diese Variable verwendet werden soll. Poste doch mal das ursprüngliche Skript und alle anderen Skripte in denen diese Variable verwendet wird.
Das kriegen wir schon hin! 🙂
-
April 6, 2022 um 13:28 Uhr #43132
global ratewort,buchstabe,fehler on ermittleWort put "Autobahn Zahnbürste Fotografie Waldmeister Hundeleine Oberarzt Fensterbrett Lautsprecher" into wortliste put the number of words of wortliste into anzahl put random(anzahl) into zufall put word zufall of wortliste into ratewort put toUpper (ratewort) into ratewort put 0 into fehler set the icon of btn "hangman" to empty end ermittleWort on zeileAnzeigen put empty into fld "dasWort" repeat for each char c in ratewort put "_ " after fld "dasWort" end repeat end zeileAnzeigen on auswertung put the mousechar into buchstabe if buchstabe is in ratewort then buchstabeZeigen else galgenZeichnen end if endauswertung end auswertung on buchstabeZeigen put the number of chars of ratewort into anzahl repeat with x = 1 to anzahl if (char x of ratewort) = buchstabe then put buchstabe into char (x*2-1) of fld "dasWort" end if end repeat end buchstabeZeigen on galgenZeichnen add 1 to fehler set the icon of btn "hangman" to the id of img ("hangman"&fehler) end galgenZeichnen on endauswertung if fehler = 6 then answer "Leider gescheitert! Das richtige Wort war : "&ratewort end if if "_" is not in fld "dasWort" then answer "Glückwunsch! Das Wort ist komplett!" end if end endauswertung on openStack ermittleWort zeileAnzeigen end openStack
-
April 6, 2022 um 13:47 Uhr #43133
Bitte die CODE Tags nach dem Einfügen benutzen, dann bleibt die Formatierung des Skripts erhalten!
Siehe oben, ich habe das mal nachgeholt.Es gibt aber keine Variable namens -> dasWort!?
Meinst Du das Feld „dasWort“?
Wenn ja, dann sollen keine Unterstriche die fehlenden Buchstaben vertreten, sondern Leerzeichen?
Wenn ja, dann sieht man aber nicht, wie viel Buchstaben notwendig sind!
Aber vielleicht ist das gewünscht? -
April 6, 2022 um 13:49 Uhr #43134
AHA! Nach zweimaligem Lesen habe ich es nun begriffen. 😀
Ich gucke noch mal rein… -
April 6, 2022 um 13:53 Uhr #43135
OK, das sollte so klappen, nur diesen Handler ersetzen bzw. das IF THEN ergänzen:
on zeileAnzeigen put empty into fld "dasWort" repeat for each char c in ratewort ## Ein Leerzeichen durch ZWEI Leerzeichen ersetzen, if c = " " then put " " after fld "dasWort" else ## Sonst wie gehabt durch Unterstrich und Leerzeichen: ## Machtd die Sache aber etwas komplizierter zu verstehen bzw. zu erkennen put "_ " after fld "dasWort" end if end repeat end zeileAnzeigen
-
April 6, 2022 um 14:14 Uhr #43137
Grazie mille,
es funktioniert!
-
April 6, 2022 um 14:28 Uhr #43138
Prego, amico mio!
-
-
AutorBeiträge
- Du musst angemeldet sein, um auf dieses Thema antworten zu können.