Dini Accounts überschreiben sich

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
  • Hallo Community,


    ich habe folgendes Problem.
    Die Accounts von den Usern überschreiben sich, sprich jemand der sich zum Beispiel neu registriert oder sich gerade einloggen will erhält kein Einlogfenster sondern kann direkt Spielen und erhält meist die Stats eines Administrators.


    Ich hoffe jemand kann mir weiterhelfen


    Mit freundlichen Grüßen
    [VR]CaRaDoN

  • Am besten den Teil, wo der Spieler sich registriert / einloggt.
    Vielleicht auch noch den Teil, wo der Spieler gespeichert wird.

  • Man muss die Variabeln zurücksetzen, denn man nehme an, Spieler A hat die ID 0, disconnected ( Stats werden nicht zurückgesetzt = Stats bleiben auf ID 0). Spieler B connected, bekommt die ID 0 (also die ID von Spieler A) bekommt somit auch die Stats(Variabeln) von Spieler A. Das ist dann unpraktisch wenn dieser Spieler (Spieler A) vor kurzem gebannt o.ä erhalten hat, denn dann würde jeder Spieler (Spieler B, C , D etc.) der die ID 0 bekäme ,gebannt werden.


    Das ist der Grund weshalb es nötig ist die Variabeln (i.d.F die Stats) zurück zu setzen.


    Zum Beispiel mit Hilfe eines stocks:


    stock SpielerReset(playerid)
    {
    sSpieler[playerid][Adminlevel] = 0;
    sSpieler[playerid][Level] = 0;
    //oder
    SetPVarInt(playerid,"Adminrang",0);
    SetPvarInt(playerid,"Level",0);
    return 1;
    }


    Und dann bei OnPlayerDisconnect/Connec einsetzen


    public OnPlayerDisconnect(playerid, reason)
    {
    SpielerReset(playerid);
    return 1;
    }


    Hoffe ich konnte Dir das verständlich erklären


    Mit freundlichen Grüßen
    Domain_26

    Einmal editiert, zuletzt von Domain_26 ()