3D Textlabel zerstören

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


    ich habe mir heute Abend / Nacht jetz endlich geschaft eien Vernünftige 3D Text Label Anzeige zu Scripten jetz weis ich leider nicht wie ich diese Zerstören kann.
    Kann mir da einer Helfen ?


    Mein Code:



    new Float:X, Float:Y, Float:Z;
    GetPlayerPos (playerid, X, Y, Z);
    new Text3D:ADuty[MAX_PLAYER_NAME];
    ADuty[playerid] = Create3DTextLabel("FullAdmin ist Online",Leuchtrot,X,Y,Z,50.0,0,0);
    Attach3DTextLabelToPlayer(ADuty[playerid], playerid, 0.0, 0.0, 0.35); //die Letze Zahl bestimt die Höche des 3D TextLabels

  • Also ich habe das jetz bei jedem Admin so gemacht mit dem 3D Text Label:

    if (strcmp(cmd, "/adminduty", true) == 0 || strcmp(cmd, "/aduty", true) == 0)
    {
    if(AdminDuty[playerid] == 0)
    {
    if(PlayerInfo[playerid][pAdmin] == 2)
    {
    SetPlayerColor(playerid,COLOR_GOLD);
    AdminDuty[playerid] = 1;
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string,sizeof(string)," %d* Auszubildender Admin %s [ID:%d] ist nun im Dienst. Fragen mit /sup an ihn.",PlayerInfo[playerid][pAdmin],sendername,playerid);
    SendClientMessageToAll(Suppmeldung, string);
    SendClientMessage(playerid,Weis,"==================================");
    SendClientMessage(playerid,Gelb,"Du bist nun als Auszubildender Admin angemeldet.");
    SendClientMessage(playerid,Gelb,"Alle deine Tätigkeiten als Admin werden geloggt.");
    SendClientMessage(playerid,Gelb,"Nutze deine Rechte nicht aus!");
    SendClientMessage(playerid,Weis,"==================================");
    new Float:X, Float:Y, Float:Z;
    GetPlayerPos (playerid, X, Y, Z);
    new Text3D:AzubiDuty[MAX_PLAYER_NAME];
    AzubiDuty[playerid] = Create3DTextLabel("Auszubildender Admin ist Online und im Dienst",Leuchtrot,X,Y,Z,50.0,0,0);
    Attach3DTextLabelToPlayer(AzubiDuty[playerid], playerid, 0.0, 0.0, 0.35); //die Letze Zahl bestimt die Höche des 3D TextLabels
    return 1;
    }
    if(PlayerInfo[playerid][pAdmin] == 3)
    {
    SetPlayerColor(playerid,COLOR_GOLD);
    AdminDuty[playerid] = 1;
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string,sizeof(string)," %d* Admin %s [ID:%d] ist nun im Dienst. Fragen mit /sup an ihn.",PlayerInfo[playerid][pAdmin],sendername,playerid);
    SendClientMessageToAll(Suppmeldung, string);
    SendClientMessage(playerid,Weis,"==================================");
    SendClientMessage(playerid,Gelb,"Du bist nun als Admin angemeldet.");
    SendClientMessage(playerid,Gelb,"Alle deine Tätigkeiten als Admin werden geloggt.");
    SendClientMessage(playerid,Gelb,"Nutze deine Rechte nicht aus!");
    SendClientMessage(playerid,Weis,"==================================");
    new Float:X, Float:Y, Float:Z;
    GetPlayerPos (playerid, X, Y, Z);
    new Text3D:ADuty[MAX_PLAYER_NAME];
    ADuty[playerid] = Create3DTextLabel("Admin ist Online und im Dienst",Leuchtrot,X,Y,Z,50.0,0,0);
    Attach3DTextLabelToPlayer(ADuty[playerid], playerid, 0.0, 0.0, 0.35); //die Letze Zahl bestimt die Höche des 3D TextLabels
    return 1;
    }
    if(PlayerInfo[playerid][pAdmin] == 1338)
    {
    SetPlayerColor(playerid,COLOR_GOLD);
    AdminDuty[playerid] = 1;
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string,sizeof(string)," %d* Vollwertiger Admin %s [ID:%d] ist nun im Dienst. Fragen mit /sup an ihn.",PlayerInfo[playerid][pAdmin],sendername,playerid);
    SendClientMessageToAll(Suppmeldung, string);
    SendClientMessage(playerid,Weis,"==================================");
    SendClientMessage(playerid,Gelb,"Du bist nun als Vollwertiger Admin angemeldet.");
    SendClientMessage(playerid,Gelb,"Alle deine Tätigkeiten als Admin werden geloggt.");
    SendClientMessage(playerid,Gelb,"Nutze deine Rechte nicht aus!");
    SendClientMessage(playerid,Weis,"==================================");
    new Float:X, Float:Y, Float:Z;
    GetPlayerPos (playerid, X, Y, Z);
    new Text3D:VollADuty[MAX_PLAYER_NAME];
    VollADuty[playerid] = Create3DTextLabel("Vollwertiger Admin ist Online und im Dienst",Leuchtrot,X,Y,Z,50.0,0,0);
    Attach3DTextLabelToPlayer(VollADuty[playerid], playerid, 0.0, 0.0, 0.35); //die Letze Zahl bestimt die Höche des 3D TextLabels
    return 1;
    }
    if(PlayerInfo[playerid][pAdmin] == 1339)
    {
    SetPlayerColor(playerid,COLOR_GOLD);
    AdminDuty[playerid] = 1;
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string,sizeof(string)," %d* FullAdmin %s [ID:%d] ist nun im Dienst. Fragen mit /sup an ihn.",PlayerInfo[playerid][pAdmin],sendername,playerid);
    SendClientMessageToAll(Suppmeldung, string);
    SendClientMessage(playerid,Weis,"==================================");
    SendClientMessage(playerid,Gelb,"Du bist nun als FullAdmin angemeldet.");
    SendClientMessage(playerid,Gelb,"Alle deine Tätigkeiten als Admin werden geloggt.");
    SendClientMessage(playerid,Gelb,"Nutze deine Rechte nicht aus!");
    SendClientMessage(playerid,Weis,"==================================");
    new Float:X, Float:Y, Float:Z;
    GetPlayerPos (playerid, X, Y, Z);
    new Text3D:FullADuty[MAX_PLAYER_NAME];
    FullADuty[playerid] = Create3DTextLabel("FullAdmin ist Online und im Dienst",Leuchtrot,X,Y,Z,50.0,0,0);
    Attach3DTextLabelToPlayer(FullADuty[playerid], playerid, 0.0, 0.0, 0.35); //die Letze Zahl bestimt die Höche des 3D TextLabels
    return 1;
    }
    if(PlayerInfo[playerid][pSupporter] == 1)
    {
    SetPlayerColor(playerid,COLOR_GOLD);
    AdminDuty[playerid] = 1;
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string,sizeof(string)," %d* Supporter %s [ID:%d] ist nun als Supporter angemeldet. Fragen mit /sup an ihn.",PlayerInfo[playerid][pSupporter],sendername,playerid);
    SendClientMessageToAll(COLOR_GOLD, string);
    SendClientMessage(playerid,Weis,"==================================");
    SendClientMessage(playerid,Gelb,"Du bist nun als Supporter angemeldet.");
    SendClientMessage(playerid,Gelb,"Alle deine Tätigkeiten werden geloggt.");
    SendClientMessage(playerid,Gelb,"Nutze deine Rechte nicht aus!");
    SendClientMessage(playerid,Weis,"==================================");
    new Float:X, Float:Y, Float:Z;
    GetPlayerPos (playerid, X, Y, Z);
    new Text3D:SuppDuty[MAX_PLAYER_NAME];
    SuppDuty[playerid] = Create3DTextLabel("Supporter ist Online und im Dienst",Leuchtrot,X,Y,Z,50.0,0,0);
    Attach3DTextLabelToPlayer(SuppDuty[playerid], playerid, 0.0, 0.0, 0.35); //die Letze Zahl bestimt die Höche des 3D TextLabels
    return 1;
    }
    }
    if(AdminDuty[playerid] == 1)
    {
    SendClientMessage(playerid,Weis,"==================================");
    SendClientMessage(playerid,Gelb,"Du hast deine tätigkeit als Admin / Supporter beendet.");
    SendClientMessage(playerid,Gelb,"Wir wünschen dir viel Spaß auserhalb deines Dienstes.");
    SendClientMessage(playerid,Weis,"==================================");
    SetPlayerColor(playerid,Weis);
    AdminDuty[playerid] = 0;
    return 1;
    }
    return 1;
    }


    wie muss ich den hier dan das machen das es abgfragt wird welchen Admin Rang der Spieler hat um das Label bei dem jewaligem Admin zu zerstören ?

    if(AdminDuty[playerid] == 1)
    {
    SendClientMessage(playerid,Weis,"==================================");
    SendClientMessage(playerid,Gelb,"Du hast deine tätigkeit als Admin / Supporter beendet.");
    SendClientMessage(playerid,Gelb,"Wir wünschen dir viel Spaß auserhalb deines Dienstes.");
    SendClientMessage(playerid,Weis,"==================================");
    SetPlayerColor(playerid,Weis);
    AdminDuty[playerid] = 0;
    return 1;
    }
    return 1;


  • if(Adminduty == 1)
    {
    if(PlayerInfo[playerid][pAdmin] == 2)
    {
    Destroy3DTextLable(AzubiDuty[playerid])
    }
    if(PlayerInfo[playerid][pSupporter] ==1)
    {
    Destroy3DTextLable(SuppDutyDuty[playerid])
    }
    }


    und natürlich mit den anderen Admin Levels auch

  • okeay danke werde das mal so reinschreiben :)

    if(Adminduty == 1)
    {
    if(PlayerInfo[playerid][pAdmin] == 2)
    {
    Destroy3DTextLable(AzubiDuty[playerid])
    }
    else <- muss das nicht dahin ?
    {
    if(PlayerInfo[playerid][pSupporter] ==1)
    {
    Destroy3DTextLable(SuppDutyDuty[playerid])
    }
    }



    --------------------------------


    ich habe den Code jetz so:

    if(AdminDuty[playerid] == 1)
    {
    SendClientMessage(playerid,Weis,"==================================");
    SendClientMessage(playerid,Gelb,"Du hast deine tätigkeit als Admin / Supporter beendet.");
    SendClientMessage(playerid,Gelb,"Wir wünschen dir viel Spaß auserhalb deines Dienstes.");
    SendClientMessage(playerid,Weis,"==================================");
    SetPlayerColor(playerid,Weis);
    AdminDuty[playerid] = 0;
    if(PlayerInfo[playerid][pAdmin] == 2)
    {
    Destroy3DTextLabel(AzubiDuty[playerid])
    }
    if(PlayerInfo[playerid][pAdmin] == 3)
    {
    Destroy3DTextLabel(ADuty[playerid])
    }
    if(PlayerInfo[playerid][pAdmin] == 1338)
    {
    Destroy3DTextLabel(VollADuty[playerid])
    }
    if(PlayerInfo[playerid][pAdmin] == 1339)
    {
    Destroy3DTextLabel(FullADuty[playerid])
    }
    if(PlayerInfo[playerid][pSupporter] == 1)
    {
    Destroy3DTextLabel(SuppDuty[playerid])
    }
    return 1;
    }
    return 1;


    und es kommen diese Warnings:

    C:\Users\Oliver - Kai\Desktop\LoH 0.3D\gamemodes\LoH.pwn(26423) : error 017: undefined symbol "Destroy3DTextLabel"
    C:\Users\Oliver - Kai\Desktop\LoH 0.3D\gamemodes\LoH.pwn(26423) : warning 215: expression has no effect
    C:\Users\Oliver - Kai\Desktop\LoH 0.3D\gamemodes\LoH.pwn(26423) : error 001: expected token: ";", but found "]"
    C:\Users\Oliver - Kai\Desktop\LoH 0.3D\gamemodes\LoH.pwn(26423) : error 029: invalid expression, assumed zero
    C:\Users\Oliver - Kai\Desktop\LoH 0.3D\gamemodes\LoH.pwn(26423) : fatal error 107: too many error messages on one line


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



    4 Errors.