Pickups beim Sterben & logout

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
  • Hey Leute...


    Ich habe ein Problem...
    Wenn einer stirbt oder sich ausloggt kommt ein Pickup welches dann nach 60Sekunden wieder zerstört wird...
    Doch wenn sich noch einer ausloggt, bleibt immer eins über...


    Wie kann ich das beheben?


    //Deathpickup
    new DeathPickup;
    new stringz[128];
    new Text3D:DeathText;
    forward DeathTimer();


    //Disconnect Pickup
    new DisPickup;
    new stringy[128];
    new Text3D:DisText;
    forward DisTimer();


    //Offlinepickup
    new Float:x, Float:y, Float:z;
    new disname[MAX_PLAYER_NAME];
    GetPlayerPos(playerid, Float:x, Float:y, Float:z);
    GetPlayerName(playerid, disname, sizeof(disname));
    DisPickup = CreatePickup(1275,1, Float:x, Float:y, Float:z,0);
    format(stringy, sizeof(stringy), "%s hat sich ausgeloggt!", disname);
    DisText = Create3DTextLabel(stringy,0xFF1400FF, Float:x, Float:y, Float:z, 32.0, 0);
    SetTimer("DisTimer", 60000, 0);


    //Deathpickup
    new Float:x, Float:y, Float:z;
    new deathname[MAX_PLAYER_NAME];
    GetPlayerPos(playerid, Float:x, Float:y, Float:z);
    GetPlayerName(playerid, deathname, sizeof(name));
    DeathPickup = CreatePickup(1254,1, Float:x, Float:y, Float:z,0);
    format(stringz, sizeof(stringz), "%s ist gestorben!", deathname);
    DeathText = Create3DTextLabel(stringz,0xFF1400FF, Float:x, Float:y, Float:z, 32.0, 0);
    SetTimer("DeathTimer", 60000, 0);


    public DisTimer()
    {
    DestroyPickup(DisPickup);
    Delete3DTextLabel(DisText);
    }


    public DeathTimer()
    {
    DestroyPickup(DeathPickup);
    Delete3DTextLabel(DeathText);
    }


    Danke schonmal im Vorraus :love:

  • ganz einfach du machst das was du auch in den 2 publics schon hast
    einfac das gleiche bei onplayerdisconnect reich packen
    public DisTimer()
    {
    DestroyPickup(DisPickup);
    Delete3DTextLabel(DisText);
    }


    public DeathTimer()
    {
    DestroyPickup(DeathPickup);
    Delete3DTextLabel(DeathText);
    }


    das dann auch bei onplayerdisconnect

  • Das Problem ist, wenn jemand stirbt, erscheint das Pickup, kurz danach stirbt noch einer und es wird bloß das Pickup vom 2. gelöscht


    /edit:
    Keiner? :S

    Einmal editiert, zuletzt von Vegas ()