Yes und No in Ja und Nein ändern

  • GM 8
  • Mach das nicht mit "show_question(str)" sondern mit "show_message_ext(str,but1,but2,but3)". Was diese Funktion kann, kannst du hier nachlesen Hilfe (such einfach nach question. Das 2te ist es dann.)
    Da du noch GML-Anfänger bist, zeig ich dir wie ich das meine.

    GML-Quellcode

    1. blabla = show_message_ext("Frage", "Ja", "Nein", "");
    2. switch(blabla)
    3. {
    4. case 0:
    5. //Das was passiert wenn ESC gedrückt wird.
    6. break;
    7. case 1:
    8. //Das was passiert wenn Ja gedrückt wird.
    9. break;
    10. case 2:
    11. //Das was passiert wenn Nein gedrückt wird.
    12. break;
    13. }
    Alles anzeigen

    Da ich aber glaube das du nicht weißt, was switch ist, kannst du es natürlich auch mit ifs machen. Ich kann leider switch nicht erklären.

    GML-Quellcode

    1. blabla = show_message_ext("Frage", "Ja", "Nein", "");
    2. if(blabla == 0)
    3. {
    4. //Das was passiert wenn ESC gedrückt wird.
    5. }
    6. if(blabla == 1)
    7. {
    8. //Das was passiert wenn Ja gedrückt wird.
    9. }
    10. if(blabla == 2)
    11. {
    12. //Das was passiert wenn Nein gedrückt wird.
    13. }
    Alles anzeigen


    MfG Rodrog
    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Ergo: Je mehr Käse, desto weniger Käse.
  • Sorry falls das als Spam geltet ,
    aber man könnte das auch ohne Variablen lösen:

    GML-Quellcode

    1. switch(show_message_ext("Frage", "Ja", "Nein", ""))
    2. {
    3. case 0:
    4. //Das was passiert wenn ESC gedrückt wird.
    5. break;
    6. case 1:
    7. //Das was passiert wenn Ja gedrückt wird.
    8. break;
    9. case 2:
    10. //Das was passiert wenn Nein gedrückt wird.
    11. break;
    12. }
    Alles anzeigen


    Die erste Methode empfehle ich lieber.


    Erklärung zu " Switch "

    In einigen Situationen muss das Spiel auf bestimmte Werte reagieren. Das ist mit vielen if-Statements möglich, aber es ist einfacher mit einem switch-Statement. Ein switch-Statement hat die Form:

    switch (<Ausdruck>)
    {
    case <Ausdruck1>: <Statement1>; ... ; break;
    case <Ausdruck2>: <Statement2>; ... ; break;
    ...
    default: <Statement>; ...
    }

    Das geht so: Zuerst wird der Wert des Ausdrucks errechnet, der dann mit den anderen Ausdrücken (die hinter den case-Statements stehen) verglichen wird. Die Ausführung des Scripts wird da fortgesetzt, wo der erste, zu dem Wert passende, Ausdruck steht und dort beendet, wo ein break-Statement steht. Wenn kein Ausdruck den richtigen Wert hat, wird die Ausführung beim default-Statement fortgesetzt (es ist kein default-Statement notwendig, es kann auch unter Umständen entfallen) Es sei angemerkt, dass mehrere case-Statements für ein und dasselbe Statement gesetzt werden können. Das break-Statement ist ebenfalls nicht notwendig. Wenn kein break-Statement vorhanden ist, wird die Ausführung bei dem nächsten case-Statement fortgesetzt.

    Beispiel
    Das folgende Programm reagiert auf bestimmte Tasten, die gedrückt sind/werden.

    switch (keyboard_key)
    {
    case vk_left:
    case vk_numpad4:
    x -= 4; break;
    case vk_right:
    case vk_numpad6:
    x += 4; break;
    }
    :saint:
  • @coyboy:
    Ich glaub es wird ja sowieso automatisch aufgeteilt. Ich werde es mal testen.


    @Tice:
    Natürlich kann man es auch ohne variable lösen, wenn er jedoch nicht switch sondern ifs machen will, braucht man eine extra Variable.

    MfG Rodrog

    Edit: Ich nehm es zurück ^^
    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Ergo: Je mehr Käse, desto weniger Käse.
  • Benutzer online 1

    1 Besucher