Admin

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
  • Guten Abend,


    ich habe ein Selfmade wo gerade mal ein Login&Register system drin ist via Mysql.


    Bei mir will irgendwie ein Command nicht klappen naja es ist kein Command sondern die neue Funktion "OnPlayerClickMap" ich habe das so gemacht das nur ein FA das machen kann das heißt ein Admin Rang5 bei mein anderen script Via Dini geht es.
    Das Admin level ist nach den Regi oder gmx oder ausloggen steht immer bei "null "


    public OnPlayerClickMap(playerid, Float:fX, Float:fY, Float:fZ)
    {
    if(SpielerInfo[playerid][pAdmin] >=5)
    {
    SetPlayerPosFindZ(playerid, fX, fY, fZ);
    return 1;
    }
    else
    {
    SendClientMessage(playerid, cRed,"Du bist kein Fulladmin");
    }
    }

  • Bin grad mit iPhone On sonst könnte ich dir gut helfen :S hab bei sowas Erfahrung. Naja egal wenn du bis Morgen warten kannst helf ich dir :)

  • diesen bug hatte ich auch immer mach dir mal einen befehl womit du restartest wo erst alle user gespeichert werden und dann nach 5 sekunden restartet wird dadurch wurde er bei mir behoben...


    MFG

  • leider nicht da mein script auf einer platte liegt die aufgrund eines virus abgeklemmt ist...


    aber kann versuchen dir auf die schnelle einen zu machen


    //das zu OnPlayerCommandText
    if(strcmp(cmd, "/r", true) == 0)
    {
    for(new i = 0; i < MAX_PLAYERS; i++)
    if(IsPlayerConnected(i))
    {
    if(LoggedIn[i]==1)
    {
    SavePlayer(i)
    }
    }
    SetTimer(restart,5000,0);
    return 1;
    }
    // den public nach ganz unten..
    public restart()
    {
    SendRconCommand("gmx")
    return SendMessageToAll("Rot","Der Server wird Neu gestartet!!!");
    }


    hab jetzt mal ausm kopf müste aber so gehen

  • D:\Keybinder, Scripte, SAMP Sachen\Scripte\MyLife\gamemodes\MyLife.pwn(193) : error 017: undefined symbol "cmd"
    D:\Keybinder, Scripte, SAMP Sachen\Scripte\MyLife\gamemodes\MyLife.pwn(198) : error 017: undefined symbol "LoggedIn"
    D:\Keybinder, Scripte, SAMP Sachen\Scripte\MyLife\gamemodes\MyLife.pwn(198) : warning 215: expression has no effect
    D:\Keybinder, Scripte, SAMP Sachen\Scripte\MyLife\gamemodes\MyLife.pwn(198) : error 001: expected token: ";", but found "]"
    D:\Keybinder, Scripte, SAMP Sachen\Scripte\MyLife\gamemodes\MyLife.pwn(198) : error 029: invalid expression, assumed zero
    D:\Keybinder, Scripte, SAMP Sachen\Scripte\MyLife\gamemodes\MyLife.pwn(198) : fatal error 107: too many error messages on one line


    Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    5 Errors.

  • also du musst es auch deinen sachen anpassen denn ich weiß ja nit wie es bei dir gemacht wird ob der spieler eingeloggt ist bzw wie die variable heißt... und die funktion um die spielerdaten zu speichern pass es mal deinen an oder wir machen es per TV mehr ...


    // edit


    so hab das ganze jetzt nochmal fehlerfrei gemacht...


    das ganze nach oben : foward restart();


    dann die public ganz nach unten : public restart()
    {
    SendRconCommand("gmx");
    SendClientMessageToAll(0xFF0000FF,"Server wird Restartet.");
    return 1;
    }


    und dann nochmal den befehl musst dann mit deinen sache anpassen oder du sagst mir alles oder halt per teamviewer :if(strcmp(cmdtext, "/r", true) == 0)
    {
    for(new i = 0; i < MAX_PLAYERS; i++)
    if(IsPlayerConnected(i))
    {
    if(GetPVarInt(i,"Eingeloggt")==1)
    {
    SavePlayer(i);
    }
    }
    SetTimer("restart",5000,0);
    return 1;
    }

    Einmal editiert, zuletzt von janpplayer ()

  • D:\Keybinder, Scripte, SAMP Sachen\Scripte\MyLife\gamemodes\MyLife.pwn(79) : error 010: invalid function or declaration
    D:\Keybinder, Scripte, SAMP Sachen\Scripte\MyLife\gamemodes\MyLife.pwn(206) : warning 217: loose indentation
    D:\Keybinder, Scripte, SAMP Sachen\Scripte\MyLife\gamemodes\MyLife.pwn(634) : warning 235: public function lacks forward declaration (symbol "restart")
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    1 Error.

  • Jap, aber auch wenn ich das geld lvl und so hochmache ingame sehe ich davon nix bekomme das geld nicht was ich eintrage, aber nach den /r ist alles wieder auf 0 auser lvl das geht auf 1 und adminlevel das bleibt

  • hmm also ich kann dir anbieten dir das morgen also heute so ab ca 16 uhr das zu machen per teamviewer gehe nähmlich jetzt schlafen sonst komme ich um 7 nit raus xD


    // edit log dich mal aus und dann mach das alles dann log dich ein und mach mal nen restart usw denn wenn du das machst dann ists geändert und wenn du dann restartest und überschreibt das ganze mit deinen variblen die du vor der änderung auf dem server hast denn das wird ja nur geändert wenn du dir z.b nen befehl machst

  • nochmal verständlicher


    Du hast ja Variablen Geld,Level etc die auf dem Server sind du hast aber auch dein Mysql und diese 2 werden ja immer ausgetauscht wenn du aber am mysql etwas veränderst wird es nicht auf den server übergeben solltest du dann eingeloggt sein und dich ausloggen oder restart machen werden die daten auf dem mysql mit den nicht geänderten werten des servers überschrieben...


    also log dich aus änder das und teste das ganze


    MFG


    //edit sry bin müde schaffe das dann nit mehr so gut zu beschreiben :)

  • Kein ding ;)


    Also.....


    ich habe schon alles versucht, alls beispiel das Geld bevor ich mich einlogge setze ich es z.B. auf 12345 dann müsste ich InGame eig. oben 12345 Stehen haben aber es bleibt bei 00000000000000$ also tuht sich dort ich habe das gefühl das er nur den Namen und Pw aussließt und wenn ich /r oder dc oder server ausschalte dann geht alles wieder zurück geld auf 0 aber adminlevel verändert sich kein bißchen das bleibt so was ich reingeschrieben habe

  • Ich Würde die funktion anders machen. Vlt. Liegts Daran


    Und zwar so:

    public OnPlayerClickMap(playerid, Float:fX, Float:fY, Float:fZ)
    {
    if(SpielerInfo[playerid][pAdmin] >= 5)return SetPlayerPosFindZ(playerid, fX, fY, fZ);
    return SendClientMessage(playerid, cRed,"Du bist kein Fulladmin");
    }


    Vieleicht Hiltf es ja


    MFG