Multiplayerspiel Daten werden nicht empfangen

  • GM 8

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

  • Multiplayerspiel Daten werden nicht empfangen

    Hallo!
    Bei meinem Spiel habe ich ein Objekt das für die Spieler ist die dem Spiel beitreten, jeder Spieler hat eine variable masterid die den Player für das Objekt bestimmt.
    Es gibt eine variable global.master, diese Variable ist bei jedem Spieler anders, sie entscheidet welchem Spieler welches Objekt gehört.
    Jetzt will ich die x und y Koordinaten von dem einen Spieler zu allen anderen senden. das habe ich so gemacht:

    step event von den Spielerobjekten:

    GML-Quellcode

    1. if (global.master = masterid)
    2. {
    3. mplay_message_send(global.master+1,1,x);
    4. mplay_message_send(global.master+1,2,y);
    5. }


    step event von dem Controller Objekt

    GML-Quellcode

    1. for (i=0; i<mplay_player_find(); i+=1)
    2. {
    3. while (mplay_message_receive(i+1))
    4. {
    5. messid = mplay_message_id();
    6. val = mplay_message_value();
    7. if (messid == 1) typ[i].x = val//Das Control Objekt hat nochmal eigene Variablen für die Playerobjekte
    8. if (messid == 2) typ[i].y = val
    9. }
    10. }
    Alles anzeigen



    Jetzt werden die Daten aber einfach nicht empfangen, was habe ich falsch gemacht?
    Twitter: @BytingGames

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

  • Ich muss leider ehrlich zugeben, dass ich mich mit den mplay_* Funktionenn nicht auskenne, der erste Schritt bei so einem Debugging ist zu überprüfen, wie weit der Interpreter in einem Code kommt, bevor die scheinbar Fehlerhafte Funktion ausgeführt wird. Am einfachsten geht das mit show_message(). Setze einfach mal an einige Stellen in deinem Code ein show_message um zu sehen, ob es nicht schon an der Schleife oder dem if hängt.
    Mit den gewonnenen erkentnissen kommst du dann wieder her ^^
  • @Patrick
    habe ich gemacht es funktioniert alles bis zu den Daten senden, dann empfängt er sie einfach nicht!

    florpp schrieb:

    was erstmal auffällt:

    warum machst du

    mplay_message_receive(i+1) ?

    für was das +1?

    Ja in der GM Hilfe stand dass wenn man bei message_receive 0 eingibt nimmt er dort alle daten von allen Objekten auf, oder hab ich da was falsch verstanden?

    @domis4
    Wieso soll ich die 1 denn in einen string umwandeln?

    EDIT: Hat sich erledigt, bin auf die 39dll umgestiegen, ihr könnt mir aber natürlich trotzdem antworten, ich werds dann auch ausprobieren.
    Twitter: @BytingGames

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

  • Benutzer online 1

    1 Besucher