Schwerwiegender Fehler bei 2 Spielern

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hi,


    ich habe ein ziemlich dringliches Problem mit meinem Selfmade Reallife Script.
    Sobald 2 Leute gleichzeitig auf dem Server sind, erscheint beim zuerst eingeloggten dauernd das Login Fenster und der, der gerade beitreten möchte, hört nur die Titelmusik von PlayerAudioStreamForPlayer(...), es erscheint jedoch kein Login oder Registrierungsfenster...


    Das macht es unmöglich, mit 2 Leuten online zu sein.
    Ein Scripter hat schon darüber geschaut und ebenfalls nichts gefunden.
    Ich möchte nun ungern mein gesamten Script posten, also sagt mir bitte, welche Ausschnitte ihr sehen möchtet!


    Ich hoffe auf eure Fachkompetenz :D


    Liebe Grüße

  • public OnPlayerConnect(playerid)
    {
    //Balken
    ShowTXD_schwarzebalken(playerid);
    PlayAudioStreamForPlayer(playerid,"http://goldenstate.ohost.de/sounds/Login.mp3");
    TextDrawShowForPlayer(playerid, LoadingLogo);
    TextDrawShowForPlayer(playerid, LoadingSlogan);
    TogglePlayerSpectating(playerid, 1);
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SetTimer("Willkommensnachricht", 2000, false);
    return 1;
    }

  • Das sollte das Problem beheben. Denn wenn die playerid nicht übermittelt wird, weiß deine Funktion auch nicht, welche Playerid anzusprechen ist.


    Mein CS:GO Server: 62.75.168.39:27016


    Ich bin so hungrig, dass ich vor lauter Durst nicht weiß, was ich rauchen soll - so müde bin ich!
    Freedom is just another word for 'Nothing left to lose'

  • Dankeschön, funktioniert jetzt alles.


    Könnte ich noch kurz eine Erklärung haben, warum das jetzt das Problem löst?
    War es jetzt nur wichtig, dass die playerid mit übermittelt wird, damit das Fenster dem richtigen Spieler angezeigt wird?

  • Könnte ich noch kurz eine Erklärung haben, warum das jetzt das Problem löst?
    War es jetzt nur wichtig, dass die playerid mit übermittelt wird, damit das Fenster dem richtigen Spieler angezeigt wird?


    Genau so ist es. SetTimer übermittelt keine Parameter, wohingegen SetTimerEx Parameter übergeben kann. Du hast in dem public für den Timer trotzdem einfach den Parameter "playerid" angegeben, obwohl diese nicht übermittelt wird. Diese Variable ist dann einfach immer 0, sprich es wird immer nur dem ersten Spieler angezeigt (ID 0).