Problem mit /ID

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 hab ein Befehl drin, wo man per /id alles, über die eingegeben ID erfährt.
    Habs auch gemacht, das man die FPS sieht. Bei /id legendary (meine ID) wird bei FPS 0 angezeigt, manchmal auch (meine richtige fps): 80-90
    Woran liegt es?

    Liberty Reallife ♥


    SA-MP Server IP:

    Liberty-Reallife.de:7777 oder 176.57.142.127:777 | Version: 0.3z

    ____________________________________________________


    Forum:

    ____________________________________________________


    TeamSpeak³ Server IP:
    Liberty Reallife.de:9987 oder 176.57.142.172:9987

    ____________________________________________________


    TeamSpeak³ Server Passwort:

    ts-lr

  • ocmd:id(playerid,params[])
    {
    new pID,string[256];
    if(sscanf(params,"ui",pID))return SendClientMessage(playerid,WEIß,"{FFFFFF}» {FF000F}Syntax: {FFFFFF}/ID {969696}[Name/ID]");
    if(!IsPlayerConnected(pID))return SendClientMessage(playerid,GRAU,"Dieser Spieler ist nicht online.");
    format(string,sizeof(string),"Name: %s | ID: %i | Level: %i | Ping: %i | FPS: %i",SpielerName(pID),pID,GetPlayerScore(pID),GetPlayerPing(pID),GetPlayerFPS(pID));
    SendClientMessage(playerid,GRAU,string);
    return 1;
    }


    stock mit fps:


    stock GetPlayerFPS(playerid)
    {
    SetPVarInt(playerid, "DrunkL", GetPlayerDrunkLevel(playerid));
    if(GetPVarInt(playerid, "DrunkL") < 100)
    {
    SetPlayerDrunkLevel(playerid, 2000);
    }
    else
    {
    if(GetPVarInt(playerid, "LDrunkL") != GetPVarInt(playerid, "DrunkL"))
    {
    SetPVarInt(playerid, "FPS", (GetPVarInt(playerid, "LDrunkL") - GetPVarInt(playerid, "DrunkL")));
    SetPVarInt(playerid, "LDrunkL", GetPVarInt(playerid, "DrunkL"));
    if((GetPVarInt(playerid, "FPS") > 0) && (GetPVarInt(playerid, "FPS") < 256))
    {
    return GetPVarInt(playerid, "FPS") - 1;
    }
    }
    }
    return 0;
    }

    Liberty Reallife ♥


    SA-MP Server IP:

    Liberty-Reallife.de:7777 oder 176.57.142.127:777 | Version: 0.3z

    ____________________________________________________


    Forum:

    ____________________________________________________


    TeamSpeak³ Server IP:
    Liberty Reallife.de:9987 oder 176.57.142.172:9987

    ____________________________________________________


    TeamSpeak³ Server Passwort:

    ts-lr

  • Versuche es mal mit einen Enum :)


    Das hier bei OnPlayerUpdate
    public OnPlayerUpdate(playerid)
    {
    new drunklevel = GetPlayerDrunkLevel(playerid);
    if(drunklevel < 100)
    {
    SetPlayerDrunkLevel(playerid, 2000);
    }
    else
    {
    if (pDrunkLevel[playerid] != drunklevel)
    {
    new FPS = pDrunkLevel[playerid] - drunklevel;
    if ((FPS > 0) && (FPS < 200))
    {
    PlayerInfo[playerid][pFPS] = FPS;
    }
    pDrunkLevel[playerid] = drunklevel;
    }
    }
    return 1;
    }


    enum SInfo
    {
    pFPS
    }


    new PLayerInfo[MAX_PLAYERS][SInfo];


    Hier noch oben im Script drunklevel definieren und fertig.


    new pDrunkLevel[MAX_PLAYERS];


    fps wird dann so abgefragt


    als Beispiel

    format(string,sizeof(string),"%i",PlayerInfo[playerid][pFPS]);

  • OnPlayerUpdate will ich gern meiden..^^

    Liberty Reallife ♥


    SA-MP Server IP:

    Liberty-Reallife.de:7777 oder 176.57.142.127:777 | Version: 0.3z

    ____________________________________________________


    Forum:

    ____________________________________________________


    TeamSpeak³ Server IP:
    Liberty Reallife.de:9987 oder 176.57.142.172:9987

    ____________________________________________________


    TeamSpeak³ Server Passwort:

    ts-lr

  • Viel besser ;)
    stock GetPlayerFPS(playerid)
    {
    SetPVarInt(playerid, "DrunkL", GetPlayerDrunkLevel(playerid));
    if(GetPVarInt(playerid, "DrunkL") < 100)
    {
    SetPlayerDrunkLevel(playerid, 2000);
    }
    else
    {
    if(GetPVarInt(playerid, "LDrunkL") != GetPVarInt(playerid, "DrunkL"))
    {
    SetPVarInt(playerid, "FPS", (GetPVarInt(playerid, "LDrunkL") - GetPVarInt(playerid, "DrunkL")));
    SetPVarInt(playerid, "LDrunkL", GetPVarInt(playerid, "DrunkL"));
    if((GetPVarInt(playerid, "FPS") > 0) && (GetPVarInt(playerid, "FPS") < 256))
    {
    return GetPVarInt(playerid, "FPS") - 1;
    }
    }
    }
    return 0;
    }


    Einfach mit GetPlayerFPS(playerid); abfragen ^^

  • Es wird zwar ganz oft in einer Sekunde ausgeführt, aber wenn man die FPS abfrage dadrinne hat, dann reicht es ja.
    Für die Abfrage mit den FPS reciht OnPlayerUpdate, falls du diese hilfe nicht annehmen willst, packe das ganze in einen Timer, der jede Sekunde Updatet.