[Codeüberprüfung] Stimmt der Code so?
Verfasst: 29.07.2007 20:46
Hi!
Ich habe gestern angefangen, mit PureBasic zu programmieren. Ich habe zu Testzwecken ein kleines, noch unfertigesTextadventure erstellt. Und ich wollte halt mir die Meinungen von Profis holen.
Achtung! Ich arbeite mit Sprungmarken und GoTo, aber nicht mit (Fake -)Return und GoSub!
Hier ist der Code:
Wäre nett,wenn ihr auch Tipps und/oder Verbesserungsvorschläge geben könntet. Ich bin für jede Kritik und jedes Lob dankbar.
Ich habe gestern angefangen, mit PureBasic zu programmieren. Ich habe zu Testzwecken ein kleines, noch unfertigesTextadventure erstellt. Und ich wollte halt mir die Meinungen von Profis holen.
Achtung! Ich arbeite mit Sprungmarken und GoTo, aber nicht mit (Fake -)Return und GoSub!
Hier ist der Code:
Code: Alles auswählen
OpenConsole()
ConsoleTitle("Novarion ALPHA Edition")
;Menue
PrintN("")
PrintN("--------- Novarion Alpha Edition - Menue ------------")
PrintN("")
PrintN("Herzlich Willkommen zu Novarion! Was möchtest du tun?")
PrintN("")
PrintN("Neues Spiel oder Beenden?")
Menue.s = Input()
Select Menue
Case "Neues Spiel"
Goto Anfang
Case "Beenden"
PrintN("Schade. Trotzdem Viel Spaß noch! Bis zum nächsten Mal!")
End
EndSelect
;Anfang des Spieles
Anfang:
PrintN("--------- Neues Spiel ------------")
PrintN("")
Goto Zelle
;Zelle
Zelle:
PrintN("------------------- Zelle --------------------------")
PrintN("Du wachst in einer Zelle auf. Scheint ein Kerker oder ein Gefängnis zu sein, aber ganz genau weißt du das aber nicht. Der Wächter, der dich bewachen soll, schläft. Der Schlüssel hängt an einem Schlüsselbund, den er auf den Boden gelegt hat. Er ist aber zu weit weg, um ihn mit der Hand zu sich zu holen. In deiner Zelle liegt ein Stock und ein Schwert. Was wirst du machen?")
PrintN("Wirst du mit dem Stock den Schlüssel holen und den Wächter schlafen lassen, oder mit dem Schwert den Wächter töten und dann den Schlüssel mithilfe des Stocks holen?")
Entscheidung1.s = Input()
Select Entscheidung1
Case "Stock"
PrintN("Der Wächter ist durch das Gekläpper wach geworden, hat dich erwischt und dich kurzerhand einen Kopf kürzer gemacht!")
Goto Gestorben
Case "Schwert"
PrintN("Du hast deinen Gegner lautlos getötet, und dank des Stockes dir den Schlüssel geholt und dich befreit. Weiter so! ")
Goto Raum1
Default
PrintN("Du hast nicht Stock bzw. Schwert eingegeben.")
EndSelect
;Vorraum der Haupthalle
Vorraum:
PrintN("----------------- Vorraum der Haupthalle --------------")
PrintN("Du bist im Vorraum der Haupthalle. Zurück willst du nicht mehr, und die Tür vor dir ist verschlossen. Rechts vor dir siehst du eine Gittertür, in der ein Podest steht. Auf ihm ist ein Schlüssel plaziert. Rechts von dir siehst du zwei Hebel. Welchen Hebel möchtest du betätigen?")
PrintN("")
PrintN("Linker Hebel oder Rechter Hebel?")
Entscheidung2.s = Input()
Select Entscheidung2
Case "Linker Hebel"
PrintN("")
PrintN("Es öffnet sich eine Falltür und du fällst hinunter in die unendliche Dunkelheit......")
Goto Gestorben
Case "Rechter Hebel"
PrintN("")
PrintN("Das Gitter fährt hoch, und du nimmst dir den Schlüssel! Außerdem scheint der Hebelmechanismus blockiert zu sein....")
Schlüssel.l = 1
Default
PrintN("Du hast nicht Linker Hebel bzw. Rechter Hebel eingegeben.")
EndSelect
PrintN("Du hast nun einen Schlüssel! Möchtest du durch die Schlüsseltür gehen?")
PrintN("")
Entscheidung3.s = Input()
Select Entscheidung3
Case "Ja"
PrintN("")
PrintN("Die Tür geht auf, und du gehst nun in die Haupthalle!")
Schlüssel.l = 0
Goto Haupthalle
Case "Nein"
PrintN("")
PrintN("Du möchtest also hier vergammeln? Ist zwar komisch, aber auch egal. Auf jeden Fall hat man gemerkt, dass du geflohen bist, dich gefunden und dich getötet. ")
Goto Gestorben
EndSelect
;Haupthalle
Haupthalle:
PrintN("---------- Haupthalle -----------")
PrintN("Du stehst mitten in der Haupthalle. Etwas weiter weg siehst du das Tor zur Freiheit, allerdings benötigst du.........")
PrintN("")
Goto Ende
;Gestorben
Gestorben:
PrintN("")
PrintN("Du bist gestorben!")
PrintN("Möchstest du es noch einmal probieren?")
Restart.s = Input()
Select Restart
Case "Ja"
PrintN("")
PrintN("Ok, los gehts!")
Goto Zelle
Case "Nein"
PrintN("")
PrintN("Das ist Schade. Ich hoffe, es hat dir trotzdem Spaß gemacht! Auf Wiedersehen!")
End
EndSelect
;Ende
Ende:
PrintN("------- Schlusswort --------")
PrintN("Das Spiel war kurz, ich weiß. Dieses Spiel ist im Moment im Alpha Stadium, und daher unfertig. Falls du Bugs, DeadEnds, Glitches, Exploits oder sonstige Fehler findest, mail dann bitte an bassdriver6000@aol.com.")
PrintN("")
PrintN("Mit freundlichen Grüßen, euer Bassdriver6000")
End