Ein Quiz

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    • Ihr wollte alle mal ein eigenes Quiz machen? Ja? Wisst aber nicht wir es geht? Dann seit ihr hier geholfen!
      Ich stelle hier nur das Grundgerüst, komplett in GML ( Tutorial: GML - Die Einsteigerreferenz ), den Rest solltet ihr selbst machen.

      Dann fangen wir gleich mal an:

      Das kommt in ein Create Event

      GML-Quellcode

      1. //Fragen einlesen mit einem Textdokument
      2. filename="quiz_fragen.txt"; //das könnt ihr aendern
      3. if (file_exists(filename)!=true) //wenn es die Datei nicht gibt
      4. {
      5. show_message("Fragen konnten nicht geladen werden"); //ein Fehler anzeigenen
      6. game_end(); //und das Spiel beenden
      7. exit;
      8. }
      9. file=file_text_open_read(filename); //Datei zum Lesen oeffnen
      10. for (i=0;!file_text_eof(file);i+=1;) //eine for-schleife
      11. {
      12. fragen[i,0]=file_text_read_string(file); //die Frage einlesen in einen 2D Array
      13. file_text_readln(file); //nächste Zeile
      14. fragen[i,1]=file_text_read_string(file); //Antwort A einlesen
      15. file_text_readln(file); //nächste Zeile
      16. fragen[i,2]=file_text_read_string(file); //Antwort B einlesen
      17. file_text_readln(file); //nächste Zeile
      18. fragen[i,3]=file_text_read_string(file); //Antwort C einlesen
      19. file_text_readln(file); //nächste Zeile
      20. fragen[i,4]=real(file_text_read_string(file)); //richtige Antwort einlesen ( Fuer A 1,B 2, C 3 )
      21. global.anzahl_fragen=i //Die Anzahl der Fragen
      22. }
      23. file_text_close(file) //Datei schließen
      24. //Nun kommen Variablen
      25. global.current_question=0 //Derzeitige Frage
      26. global.question_false=0 //Wie viele Fragen falsch sind
      27. global.question_true=0 //Wie viele Fragen richtig sind
      Alles anzeigen

      Und das ins Step Event :

      GML-Quellcode

      1. var antwort;
      2. antwort=show_message_ext(fragen[global.current_question,0],fragen[global.current_question,1],fragen[global.current_question,2],fragen[global.current_question,3]);
      3. if (antwort==fragen[global.current_question,4]) //Ist die Frage richtig
      4. {
      5. global.question_true+=1;
      6. show_message("Die Antwort ist richtig!");
      7. }
      8. else //oder falsch
      9. {
      10. global.question_false+=1;
      11. show_message("Die Antwort ist falsch!");
      12. }
      13. global.current_question+=1;
      14. if (global.current_question>global.anzahl_fragen)
      15. {
      16. show_message(string(global.question_true)+" richtig von "+string(global.anzahl_fragen+1));
      17. game_end();
      18. }
      Alles anzeigen


      Das war es dann schon. :) Sollten Funktionen unklar, sein benutz' bitte die Hilfe ( gm-d.de/help ).

      MfG Henrik1235
      Ps. Ein Example mit einer Beispiel quiz_fragen.txt hängt an und das war mein erstes Tutorial, deswegen ärgert euch bitte nicht über meinen Aufbau. :S
      Dateien
      • example.zip

        (25,52 kB, 279 mal heruntergeladen, zuletzt: )
      wupto.net/ Nicht meine Seite!
      We love Koalas.

      GM-D-Spam-o-Meter: 32%

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von henrik1235 ()

    • Naja ist ganz witzig. Aber so wie es momentan ist, kann man ja alle Fragen im Vorraus angucken und weiß, welche Fragen richtig sind.
      Da wäre mein Tipp dann seine Textdatei auf einen Webspace oder so zu laden und mit der HTTP.dll zu lesen ;)
      Trotzem ein recht schönes und einfaches Prinzip.

      -Speedy
    • SpeedFreaK schrieb:

      Naja ist ganz witzig. Aber so wie es momentan ist, kann man ja alle Fragen im Vorraus angucken und weiß, welche Fragen richtig sind.
      Da wäre mein Tipp dann seine Textdatei auf einen Webspace oder so zu laden und mit der HTTP.dll zu lesen ;)
      Trotzem ein recht schönes und einfaches Prinzip.

      -Speedy


      Oder du packst sie mit der Dll von Blackspark, keine Ahnung, mehr wie genau sie heißt. Dann lädst du die Fragen eben extern.