IF Korrekt.....

azu
Hallo,

ich versuche gerade ein Text RPG aufzubauen und habe dazu 2 Fragen.

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
    ////////////////////////////////////////////
    //Abfrage ob die Angaben korrekt sind///////
    ////////////////////////////////////////////
    if (korrekt == 1)
    {
                cout << "Dann kann das Spiel ja beginnen ;-)";
                
    }
    else {
         if ( korrekt == 2)
         { 
              cout << "Bitte geben Sie Ihr Alter nochmal ein";
              }
              else {
                   cout << "\aIhre Eingabe war ungueltig";
                   }
          }
    ///////////////////////////////////////////////////
    // Ende der Abfrage ob die Daten korrekt sind/////
    /////////////////////////////////////////////////      


Wie kann man sowas vereinfachen und wie kann man das Game am besten splitten, wenn man z.B. sowas haben möchte:
Benutzer kann entscheiden ob er links oder rechts geht.
Die Geschichte geht komplett anders weiter wenn er links geht als wenn er rechts geht. Per IF Abfrage könnte das ganze leicht unübersichtlich werden wie ich finde, gibt es da Alternativen?

Danke schonmal
Prophet
Daran kannst du nicht mehr viel vereinfachen.

Zu deiner frage über die lösung des geschichts verlaufs. Das ist schwierig zu lösen das bestewäre wohl wenn du eine art script interpreter erstellt. der muss ja nicht sonderlich umfangreich sein aber er könnte ja eine datei einlesen über sie herausfinden welcher text dargestellt werden soll welche auswahl man hat und was als nächstes passiert. Dann müsstest du nur ein standard interface schreiben und hättest nur noch wenig arbeit.
daHooligan
wie wärs mit funktionen? dann wäre zumindest die Sache mit dem vielen Text weg.
Was genau willst du denn vereinfachen?
du könntest höchstens ne Funktion machen in der du angibst wie die Unterscheidung sein soll (machen/nicht machen, links/rechts) und wohin der Weg führen soll (wo die geschichte in fall a weitergeht und wo sie in fall b weitergeht. Die nächste Geschichte liest du dann von ner externen quelle ein.
zum bleistift so waS:
code:
1:
2:
3:
fallunterscheidund(linksrechts, datei1.txt, datei2.txt)

die funktion fallunterscheidung macht dir die anzeige "willst du recht oder links entlang gehen" oder "willst du das angebot anehmen oder nicht". datei 1.txt wird in fall 1 ausgegeben, datei2.txt in fall 2.
vielleicht kann man noch hinerlegen welche unterscheidung nach der jeweiligen Geschichte kommen soll
Saemon
Du könntest switch/case verwenden (ist z.B. da erklärt: http://www.scit.wlv.ac.uk/cbook/chap9.switch.html).

Allerdings ist es insgesamt natürlich nicht so toll, das ganze Adventure hardzucoden, auch wenn es am Anfang einfacher ist. Wenn es was umfangreicheres werden soll, wäre eine Datei, in der alle Texte etc. gespeichert sind und die dann vom Programm eingelesen wird, sicher die bessere Lösung.
Chris Hunter
joa bin da ganz seamons meinung. alles im hardcode zu schreiben ist übelst..
am besten codest du dir ne engine und n editor damit du das rpg dann einfacher erstellen kannst. überleg dir das mal *G*
azu
Danke!

Ich werd versuchen eine engine zu coden, dass wäre das Beste denke ich
Dr.B
Neija wie wärs den mit unterprogrammen.

if(eingabe 1){
rechts();
}
if(eingabe 2){
links();
}

und dann das ganze in denn Unterprogrammen weiter fühen
Prophet
Elender Grabschänder...
daHooligan
der will nur seine 5 posts damit er für seine website werben kann, vllt. sollte man das auf 50 posts hochsetzen
Dr.B
Sry hatte nicht gesehen das der Thread schon so alt ist