Desktop Check Version 0.2

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
  • Moin Leute,


    ich habe ein Update hochgeladen womit ihr keine Errors mehr erhalten solltet.
    //edit mit Junkbuster hat es nix zu tuhen ich frage mich wer auf diese Idee gekommen ist.
    das war einfach nur ein Denkfehler von mir


    MFG RFT

    RFT

  • Hallo RFT.
    Ich wollte gerne die Zeit über einem Spieler anzeigen und habe das mit deinem Code versucht.
    Ich habe jetzt leider 3 Errors (rest habe ich selber behoben) könntest du mir bitte helfen?


    public OnPlayerUpdate(playerid)
    {
    new string[32];
    if(IsPlayerOnDesktop(playerid))
    {
    format(string, 32, "%s Sekunden AFK", GetPlayerDesktopTime(playerid));
    if(GetPVarInt(playerid, "TextSend") == 0)
    {
    SetPVarInt(playerid, "TextSend", 1);
    PlayerText[playerid] = Create3DTextLabel(string, COLOR_LIGHTRED, 0.0, 0.0, 0.0, 20.0, -1, -1);}
    Attach3DTextLabelToPlayer(PlayerText[playerid], playerid, 0.0, 0.0, 0.0);
    }
    Update3DTextLabelText(PlayerText[playerid], COLOR_LIGHTRED, string);
    }
    else // 13605
    {
    if(GetPVarInt(playerid, "TextSend") == 1) //13607
    {
    Delete3DTextLabel(PlayerText[playerid]);
    SetPVarInt(playerid, "TextSend", 0);
    }
    }
    return 1; //13613
    }


    Und die Errors:
    C:\Users\Administrator\Desktop\SAMP\gamemodes\RRL.pwn(13605) : error 010: invalid function or declaration
    C:\Users\Administrator\Desktop\SAMP\gamemodes\RRL.pwn(13607) : error 010: invalid function or declaration
    C:\Users\Administrator\Desktop\SAMP\gamemodes\RRL.pwn(13613) : error 010: invalid function or declaration


    Mit freundlichen Grüßen, Unkn0wnX.


    edit: Rechtschreibfehler verbessert.


  • public OnPlayerUpdate(playerid)
    {
    new string[32];
    if(IsPlayerOnDesktop(playerid))
    {
    format(string, 32, "%s Sekunden AFK", GetPlayerDesktopTime(playerid));
    if(GetPVarInt(playerid, "TextSend") == 0)
    {
    SetPVarInt(playerid, "TextSend", 1);
    PlayerText[playerid] = Create3DTextLabel(string, COLOR_LIGHTRED, 0.0, 0.0, 0.0, 20.0, -1, -1);}
    Attach3DTextLabelToPlayer(PlayerText[playerid], playerid, 0.0, 0.0, 0.0);
    return true;
    }
    Update3DTextLabelText(PlayerText[playerid], COLOR_LIGHTRED, string);
    if(GetPVarInt(playerid, "TextSend") == 1)
    {
    Delete3DTextLabel(PlayerText[playerid]);
    SetPVarInt(playerid, "TextSend", 0);
    return true;
    }
    }


    MFG RFT

    RFT

  • Das funktioniert leider nicht so, wie ich es mir vorgestellt habe.
    Dieser Text steht IMMER über diesem Spieler & wenn er auf Desktop geht, geht die Zeit nicht hoch.
    RFT könntest du mir bitte helfen und sagen wie ich es mache, dass nur wenn er auf dem Desktop dieser Text über diesen Spieler steht & die Zeit hochgeht?
    Mit freundlichen Grüßen, Unkn0wnX.

  • Das funktioniert leider nicht so, wie ich es mir vorgestellt habe.
    Dieser Text steht IMMER über diesem Spieler & wenn er auf Desktop geht, geht die Zeit nicht hoch.
    RFT könntest du mir bitte helfen und sagen wie ich es mache, dass nur wenn er auf dem Desktop dieser Text über diesen Spieler steht & die Zeit hochgeht?
    Mit freundlichen Grüßen, Unkn0wnX.



    format(string, 32, "%d Sekunden AFK", GetPlayerDesktopTime(playerid)); // müsste auch geändert werden aber daran liegt dein problem nicht.



    Das Checkl System wurde von anderen Leuten getestet und sie sagen es funktionierte ich selber habe es nie getestet.
    Muss es nachermal teste kann ja sein das ich in der Include nen Fehler habe. Ich editiere diesen Beitrag nacher.


    MFG RFT


    //edit teste es mal so.



    public OnPlayerUpdate(playerid)
    {
    new string[32];
    if(IsPlayerOnDesktop(playerid))
    {
    format(string, 32, "%s Sekunden AFK", GetPlayerDesktopTime(playerid));
    if(GetPVarInt(playerid, "TextSend") == 0)
    {
    SetPVarInt(playerid, "TextSend", 1);
    PlayerText[playerid] = Create3DTextLabel(string, COLOR_LIGHTRED, 0.0, 0.0, 0.0, 20.0, -1, -1);}
    Attach3DTextLabelToPlayer(PlayerText[playerid], playerid, 0.0, 0.0, 0.0);
    return true;
    }
    Update3DTextLabelText(PlayerText[playerid], COLOR_LIGHTRED, string);
    }
    else
    {
    if(GetPVarInt(playerid, "TextSend") == 1)
    {
    Delete3DTextLabel(PlayerText[playerid]);
    SetPVarInt(playerid, "TextSend", 0);
    return true;
    }
    }


    War nen kleiner Denkfehler von mir.

    RFT

  • Ganz oben habe ich halt:
    new Text3D: PlayerText[MAX_PLAYERS];
    #include <Desktop>


    Include heißt Desktop.inc und ist im pawno/includes Ordner.


    & dieser Code halt beim OnPlayerUpdate:


    public OnPlayerUpdate(playerid)
    {
    new string[64];
    if(IsPlayerOnDesktop(playerid))
    {
    format(string, sizeof(string), "Spieler ist seit %d Sekunden im Menü\n oder auf dem Desktop", GetPlayerDesktopTime(playerid));
    if(GetPVarInt(playerid, "TextSend") == 0)
    {
    SetPVarInt(playerid, "TextSend", 1);
    PlayerText[playerid] = Create3DTextLabel(string, COLOR_LIGHTRED,0.0,0.0,0.0,45.0,0);}
    Attach3DTextLabelToPlayer(PlayerText[playerid],playerid,0.0,0.0,0.50);
    return true;
    }
    Update3DTextLabelText(PlayerText[playerid], COLOR_LIGHTRED, string);
    if(GetPVarInt(playerid, "TextSend") == 1)
    {
    Delete3DTextLabel(PlayerText[playerid]);
    SetPVarInt(playerid, "TextSend", 0);
    return true;
    }
    return 1;
    }

  • und en tauscht du mal mit dem aus.



    public OnPlayerUpdate(playerid)
    {
    new string[32];
    if(IsPlayerOnDesktop(playerid))
    {
    format(string, 32, "%s Sekunden AFK", GetPlayerDesktopTime(playerid));
    if(GetPVarInt(playerid, "TextSend") == 0)
    {
    SetPVarInt(playerid, "TextSend", 1);
    PlayerText[playerid] = Create3DTextLabel(string, COLOR_LIGHTRED, 0.0, 0.0, 0.0, 20.0, -1, -1);}
    Attach3DTextLabelToPlayer(PlayerText[playerid], playerid, 0.0, 0.0, 0.0);
    return true;
    }
    Update3DTextLabelText(PlayerText[playerid], COLOR_LIGHTRED, string);
    }
    else
    {
    if(GetPVarInt(playerid, "TextSend") == 1)
    {
    Delete3DTextLabel(PlayerText[playerid]);
    SetPVarInt(playerid, "TextSend", 0);
    return true;
    }
    }
    return true;
    }

    RFT

  • Code:


    public OnPlayerUpdate(playerid)
    {
    new string[32];
    if(IsPlayerOnDesktop(playerid))
    {
    format(string, 32, "%s Sekunden AFK", GetPlayerDesktopTime(playerid));
    if(GetPVarInt(playerid, "TextSend") == 0)
    {
    SetPVarInt(playerid, "TextSend", 1);
    PlayerText[playerid] = Create3DTextLabel(string, COLOR_LIGHTRED, 0.0, 0.0, 0.0, 20.0, -1, -1);}
    Attach3DTextLabelToPlayer(PlayerText[playerid], playerid, 0.0, 0.0, 0.0);
    return true;
    }
    Update3DTextLabelText(PlayerText[playerid], COLOR_LIGHTRED, string);
    }//13628
    else//13629
    {
    if(GetPVarInt(playerid, "TextSend") == 1)//13631
    {
    Delete3DTextLabel(PlayerText[playerid]);
    SetPVarInt(playerid, "TextSend", 0);
    return true;//13635
    }
    }
    return true;//13638
    }


    Errors:



    mfG, Unkn0wnX


    edit: Pawn verbesserung!

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Fehler behoben .




    public OnPlayerUpdate(playerid)
    {
    new string[32];
    if(IsPlayerOnDesktop(playerid))
    {
    format(string, 32, "%s Sekunden AFK", GetPlayerDesktopTime(playerid));
    if(GetPVarInt(playerid, "TextSend") == 0)
    {
    SetPVarInt(playerid, "TextSend", 1);
    PlayerText[playerid] = Create3DTextLabel(string, COLOR_LIGHTRED, 0.0, 0.0, 0.0, 20.0, -1, -1);
    Attach3DTextLabelToPlayer(PlayerText[playerid], playerid, 0.0, 0.0, 0.0);
    return true;
    }
    Update3DTextLabelText(PlayerText[playerid], COLOR_LIGHTRED, string);
    }
    else
    {
    if(GetPVarInt(playerid, "TextSend") == 1)
    {
    Delete3DTextLabel(PlayerText[playerid]);
    SetPVarInt(playerid, "TextSend", 0);
    return true;
    }
    }
    return true;
    }





    Hier der Fehler:



    public OnPlayerUpdate(playerid)
    {
    new string[32];
    if(IsPlayerOnDesktop(playerid))
    {
    format(string, 32, "%s Sekunden AFK", GetPlayerDesktopTime(playerid));
    if(GetPVarInt(playerid, "TextSend") == 0)
    {
    SetPVarInt(playerid, "TextSend", 1);
    PlayerText[playerid] = Create3DTextLabel(string, COLOR_LIGHTRED, 0.0, 0.0, 0.0, 20.0, -1, -1); // die Klammer}
    Attach3DTextLabelToPlayer(PlayerText[playerid], playerid, 0.0, 0.0, 0.0);
    return true;
    }
    Update3DTextLabelText(PlayerText[playerid], COLOR_LIGHTRED, string);
    }//13628
    else//13629
    {
    if(GetPVarInt(playerid, "TextSend") == 1)//13631
    {
    Delete3DTextLabel(PlayerText[playerid]);
    SetPVarInt(playerid, "TextSend", 0);
    return true;//13635
    }
    }
    return true;//13638
    }


    MFG RFT

    RFT

  • Die Sekunden gehen einfach nicht hoch, wenn der Spieler auf dem Desktop ist & dieser Text über diesem Spieler steht IMMER über diesem Spieler und nicht nur, wenn er auf dem Desktop ist, RFT könntest du mir bitte helfen?
    Hier ist mein Code:


    public OnPlayerUpdate(playerid)
    {
    new string[64];
    if(IsPlayerOnDesktop(playerid))
    {
    format(string, sizeof(string), "Spieler ist seit %d Sekunden im Menü\n oder auf dem Desktop", GetPlayerDesktopTime(playerid));
    if(GetPVarInt(playerid, "TextSend") == 0)
    {
    SetPVarInt(playerid, "TextSend", 1);
    PlayerText[playerid] = Create3DTextLabel(string, COLOR_LIGHTRED,0.0,0.0,0.0,45.0,0);
    Attach3DTextLabelToPlayer(PlayerText[playerid], playerid,0.0,0.0,0.50);
    return true;
    }
    Update3DTextLabelText(PlayerText[playerid], COLOR_LIGHTRED, string);
    }
    else
    {
    if(GetPVarInt(playerid, "TextSend") == 1)
    {
    Delete3DTextLabel(PlayerText[playerid]);
    SetPVarInt(playerid, "TextSend", 0);
    return true;
    }
    }
    return true;
    }


    mfG, Unkn0wnX.


    edit: RFT wird uns alle gleich helfen, er muss gerade beim Umzug helfen (PN).

    Einmal editiert, zuletzt von Unkn0wnX ()

  • RFT möchte noch helfen, hat er am 27.02 gesagt & heute ist der 01.03 lol.
    Mit freundlichen Grüßen, Unkn0wnX.

  • Klar ich habe das System erstellt da werden mir die Ideen zu nie ausgehen.
    Hatte nur wenig Zeit daher ist es in vergessenheit gerraten.
    Gebt mir 10 Minuten ich setze mich eben ran.



    //edit nur ergibt der Code von unkwon von hinten und von vorne keinen Sinn.
    Er kann sich nacher bei mir melden und kriegt wegen seiner langen warte Zeit ne Special Version von mir.


    LG RFT

    RFT

  • Ich bin Unkn0wn, ich habe einen neuen Namen gemacht & möchte diesen Namen hochbringen.
    mfG, Ashampoo.


    PS: Das System soll halt so laufen:
    Wenn der Spieler auf seinem Desktop geht kommt über diesen Spieler ein Text (Spieler ist seit %d Sekunden im Menü\n oder auf dem Desktop) und die Sekunden sollen so lange hochgehen, bis der Spieler wieder da ist und der Text über seinem Kopf gelöscht wird.

  • Mein anderer Name wurde gesperrt, deswegen habe ich mir einen neuen erstellt.
    mfG, Ashampoo.

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen