Brauche Hilfe bei meinem Pong Game

  • GM 8

    Brauche Hilfe bei meinem Pong Game

    Hallo GM-D Community,
    ich erstelle gerade ein Pong Spiel, klappt auch alles so, habe mir ein paar Tutorials angeschaut, und ausprobiert:
    Ich möchte das wenn "ball_game" "lol_links" und "lol_rechts" kollidiert, das entweder "playerone" oder playertwo" einen punkt bekommt, habe das nur hinbekommen, das sich die variablen erstellen und sieh gezeichnet werden, und wenn der "ball_game" z.B. "lol_rechts" kollidieren dann kommt der Fehler : das es die Variable "playerone" nicht gibt. Hier mal der Quellcode:

    Variablen werden erstellt:

    Quellcode

    1. playerone = 0;


    Quellcode

    1. playertwo = 0;


    Objekt "ball_game" kollidiert mit "lol_rechts":

    Quellcode

    1. playerone += 1;


    Objekt "ball_game" kollidiert mit "lol_links":

    Quellcode

    1. playertwo += 1;


    Objekt "wand_game" zeichnet die Variablen:

    Quellcode

    1. draw_set_color (c_white)
    2. draw_text(192,64,playerone)
    3. draw_set_color (c_white)
    4. draw_text(416,64,playertwo)



    Und hier nochmal die GM Datei im Anhang:
    Dateien
    Die Variablen sind lokal, mach sie doch mal global.
    Setze einfach immer ein global. Davor.
    Kopiere dies in deine Signatur, um es in deiner Signatur zu haben.
    Achtung: Dieser Beitrag läuft ende des Monats ab, bitte lese ihn noch vor dem Monatswechsel...
    Nach langer zeit wieder im Forum aktiv :D
    Nee.
    Mit einem . (Punkt) zwischen global und playerone

    Edit: cool, par ms schneller :D
    Kopiere dies in deine Signatur, um es in deiner Signatur zu haben.
    Achtung: Dieser Beitrag läuft ende des Monats ab, bitte lese ihn noch vor dem Monatswechsel...
    Nach langer zeit wieder im Forum aktiv :D
    Aso ^^ Ich probiers mal aus ^^ Danke für die Antworten

    EDIT: Nun sagt er wenn die Variablen gezeichnet werden, das "playerone" bzw. "playertwo" nicht existieren, habe ich noch etwas vergessen ?

    EDIT: Habe es jetzt hinbekommen ^^^Danke für die antworten, habe überall das "global." vergessen ^^ Hat sich also erledigt ^^

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Wetschi“ ()

    Taidi schrieb:

    Global bedeuted es kann in allen Objekten geändert werden nicht nur in den wo die Variable erstellt wurde.


    Ich will deine Weltansicht jetzt nicht kaputt machen, aber du kannst jede Variable von überall heraus ändern. :thumbup:

    Globale Variablen sind eigentlich nichts anderes als die Variablen des permanent vorhanden Objektes global, ja ich denke so kann man das sehen. ;)


    GML-Quellcode

    1. /// Code im Event des obj_spieler
    2. inst = instance_create(0, 0, obj_pfeil); // Wir erstellen eine Instanz des Objektes obj_pfeil und speichern die ID in der Variable inst
    3. inst.papa = id; // Wir erstellen in der gerade erstellten Instanz die Variable papa welche die ID des Objekts enthällt welches diesen Code gerade ausführt


    GML-Quellcode

    1. /// Code im Colisionsevent des obj_gegner
    2. other.papa.punkte++; // Zähle dem Spieler einen Punkt hinzu
    3. other.instance_destroy(); // Zerstöre den Pfeil der getroffen hat
    4. instance_destroy(); // Zerstöre dich selbst



    Den Code das der Pfeil fliegt und so weiter dürft ihr euch selber ausdenken, und ich weis es ist um 3 Ecken gedacht aber man sieht hier wie toll man von jedem Objekt aus auf jedes andere zugreifen kann.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Balls of Steel“ ()