Aduty und 3D Label problem

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 brauche bissen hilfe der 3D Label über dem skin wird nicht angezeigt was ist hier falsch

    COMMAND:aduty(playerid,params[])
    {
    #pragma unused params
    if(ImTutorial[playerid] != 0)return SCM(playerid,GRAU,"Du kannst keine Befehle nutzen,da du im Tutorial bist.");
    if(GetPVarInt(playerid,"Eingeloggt") == 0)return SCM(playerid,GRAU,"Du bist nicht eingeloggt!");
    if(Spieler[playerid][pAWAYFROMKEYBOARD] == 1)return SCM(playerid,WRONGCMD,"Du bist im AFK-Modus und kannst somit keine Befehle nutzen."),SCM(playerid,WRONGCMD,"BENUTZE: /back");
    new string[128];
    if(!isPlayerAnAdmin(playerid,1))return SCM(playerid,GRAU,"Du bist kein "#SERVERTAG" Teammitglied./Du hast nicht den jeweiligen Adminrang.");
    if(Spieler[playerid][pAdminOnduty] == false)
    {
    format(string,24,"["#SERVERTAG"]%s",Spieler[playerid][pName]);
    SetPlayerName(playerid,string);
    SetPlayerScore(playerid,GetPlayerLevel(playerid));
    format(string,sizeof(string),"%s geht in den Admindienst.",SpielerName(playerid));
    SCMALL(GRUEN,string);
    SCM(playerid,GRUEN,"** Du bist nun im Admindienst **");
    TextDrawShowForPlayer(playerid,ADUTYdraw);
    Spieler[playerid][pAdminOnduty] = true;
    switch(Spieler[playerid][pAdmin])
    {
    case 1:{aDuty[playerid] = CreateDynamic3DTextLabel("Supporter",TEAM_Supporter,30.0,40.0,50.0,MAX_STREAM_NAME_DISTANCE,INVALID_PLAYER_ID,INVALID_VEHICLE_ID,0,-1,-1,-1,GetPlayerVirtualWorld(playerid),1);SetPlayerColor(playerid,TEAM_Supporter);format(string,sizeof(string),"Supporter %s [ID:%d] ist nun im Dienst [Er ist grün markiert]*",Spieler[playerid][pName],playerid);SCMALL(TEAM_Supporter, string);}
    case 2:{aDuty[playerid] = CreateDynamic3DTextLabel("Moderator",TEAM_Moderator,30.0,40.0,50.0,MAX_STREAM_NAME_DISTANCE,INVALID_PLAYER_ID,INVALID_VEHICLE_ID,0,-1,-1,-1,GetPlayerVirtualWorld(playerid),1);SetPlayerColor(playerid,TEAM_Moderator);format(string,sizeof(string),"Moderator %s [ID:%d] ist nun im Dienst [Er ist hellblau markiert]*",Spieler[playerid][pName],playerid);SCMALL(TEAM_Moderator, string);}
    case 3:{aDuty[playerid] = CreateDynamic3DTextLabel("Administrator",TEAM_Administrator,30.0,40.0,50.0,MAX_STREAM_NAME_DISTANCE,INVALID_PLAYER_ID,INVALID_VEHICLE_ID,0,-1,-1,-1,GetPlayerVirtualWorld(playerid),1);SetPlayerColor(playerid,TEAM_Administrator);format(string,sizeof(string),"Administrator %s [ID:%d] ist nun im Dienst [Er ist blau markiert]*",Spieler[playerid][pName],playerid);SCMALL(TEAM_Administrator, string);}
    case 4:{aDuty[playerid] = CreateDynamic3DTextLabel("Techniker",TEAM_Techniker,30.0,40.0,50.0,MAX_STREAM_NAME_DISTANCE,INVALID_PLAYER_ID,INVALID_VEHICLE_ID,0,-1,-1,-1,GetPlayerVirtualWorld(playerid),1);SetPlayerColor(playerid,TEAM_Techniker);format(string,sizeof(string),"Techniker %s [ID:%d] ist nun im Dienst [Er ist lila markiert]*",Spieler[playerid][pName],playerid);SCMALL(TEAM_Techniker, string);}
    case 5:{aDuty[playerid] = CreateDynamic3DTextLabel("Super Administrator",TEAM_SuperAdministrator,30.0,40.0,50.0,MAX_STREAM_NAME_DISTANCE,INVALID_PLAYER_ID,INVALID_VEHICLE_ID,0,-1,-1,-1,GetPlayerVirtualWorld(playerid),1);SetPlayerColor(playerid,TEAM_SuperAdministrator);format(string,sizeof(string),"Super Administrator %s [ID:%d] ist nun im Dienst [Er ist orange markiert]*",Spieler[playerid][pName],playerid);SCMALL(TEAM_SuperAdministrator, string);}
    case 6:{aDuty[playerid] = CreateDynamic3DTextLabel("Server Manager",TEAM_ServerManager,30.0,40.0,50.0,MAX_STREAM_NAME_DISTANCE,INVALID_PLAYER_ID,INVALID_VEHICLE_ID,0,-1,-1,-1,GetPlayerVirtualWorld(playerid),1);SetPlayerColor(playerid,TEAM_ServerManager);format(string,sizeof(string),"Server Manager %s [ID:%d] ist nun im Dienst [Er ist dunkelrot markiert]*",Spieler[playerid][pName],playerid);SCMALL(TEAM_ServerManager, string);}
    case 7:{aDuty[playerid] = CreateDynamic3DTextLabel("Serverleitung",TEAM_Serverleitung,30.0,40.0,50.0,MAX_STREAM_NAME_DISTANCE,INVALID_PLAYER_ID,INVALID_VEHICLE_ID,0,-1,-1,-1,GetPlayerVirtualWorld(playerid),1);SetPlayerColor(playerid,TEAM_Serverleitung);format(string,sizeof(string),"Serverleitung %s [ID:%d] ist nun im Dienst [Er ist rot markiert]*",Spieler[playerid][pName],playerid);SCMALL(TEAM_Serverleitung, string);}
    }
    Attach3DTextLabelToPlayer(aDuty[playerid],playerid,0.0,0.0,0.75);
    UpdateDynamic3DTextLabelText(aDuty[playerid],SERVERFARBEHEX,aDuty[playerid]);
    }
    else if(Spieler[playerid][pAdminOnduty] == true)
    {
    SCM(playerid,ROT,"** Du bist nun nicht mehr im Admindienst **");
    format(string,sizeof(string),"%s ist nun nicht mehr im Admindienst.",SpielerName(playerid));
    SCMALL(ORANGE,string);
    TextDrawHideForPlayer(playerid,ADUTYdraw);
    DestroyDynamic3DTextLabel(aDuty[playerid]);
    SetPlayerColor(playerid, TEAM_WEIß);
    Spieler[playerid][pAdminOnduty] = false;
    SetPlayerName(playerid,Spieler[playerid][pName]);
    SetPlayerScore(playerid,GetPlayerLevel(playerid));
    if(Spieler[playerid][pMaske] == 1)
    {
    SetPlayerScore(playerid,random(50) + 122);
    format(string,sizeof(string),"UNKNOWN%i",random(50) + 122);
    SetPlayerName(playerid,string);
    }
    if(Spieler[playerid][pDuty] == 4 && Spieler[playerid][pFraktion] != 6)
    {
    SetPlayerScore(playerid,random(50) + 122);
    format(string,24,"SWAT%i",random(50) + 122);
    SetPlayerName(playerid,string);
    }
    if(Spieler[playerid][pDuty] == 4 && Spieler[playerid][pFraktion] == 6 && Spieler[playerid][pMaske] == 1)
    {
    SetPlayerScore(playerid,random(50) + 122);
    format(string,24,"SEAL%i",random(50) + 122);
    SetPlayerName(playerid,string);
    }
    if(Spieler[playerid][pDuty] == 5 && Spieler[playerid][pFraktion] == 6 && Spieler[playerid][pMaske] == 1)
    {
    SetPlayerScore(playerid,random(50) + 122);
    format(string,24,"RANGER%i",random(50) + 122);
    SetPlayerName(playerid,string);
    }
    }
    return 1;
    }



    Bitte um hilfe MfG


    Es hat was hier mit zu tuhen hat einer eine id


    Attach3DTextLabelToPlayer

  • Die Funktion kann nur für normale Labels genutzt werden, nicht für gestreamte.


    Lösche stattdessen das Label und erstelle es mit CreateDynamic3DTextLabel neu. Über den Parameter attachedplayer kannst du es dann an den Spieler attachen.

  • Attach3DTextLabelToPlayer(aDuty[playerid],playerid,0.0,0.0,0.75);
    UpdateDynamic3DTextLabelText(aDuty[playerid],SERVERFARBEHEX,aDuty[playerid]);


    zu:
    UpdateDynamic3DTextLabelText(aDuty[playerid],SERVERFARBEHEX,aDuty[playerid]);


    Und
    aDuty[playerid] = CreateDynamic3DTextLabel("Supporter",TEAM_Supporter,30.0,40.0,50.0,MAX_STREAM_NAME_DISTANCE,INVALID_PLAYER_ID,INVALID_VEHICLE_ID,0,-1,-1,-1,GetPlayerVirtualWorld(playerid),1);
    zu:
    aDuty[playerid] = CreateDynamic3DTextLabel("Supporter",TEAM_Supporter,30.0,40.0,50.0,MAX_STREAM_NAME_DISTANCE,playerid,INVALID_VEHICLE_ID,0,-1,-1,-1,GetPlayerVirtualWorld(playerid),1);
    Das natürlich für alle case's.

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • mir fehlt da nix mehr einn



    COMMAND:aduty(playerid,params[])
    {
    #pragma unused params
    if(ImTutorial[playerid] != 0)return SCM(playerid,GRAU,"Du kannst keine Befehle nutzen,da du im Tutorial bist.");
    if(GetPVarInt(playerid,"Eingeloggt") == 0)return SCM(playerid,GRAU,"Du bist nicht eingeloggt!");
    if(Spieler[playerid][pAWAYFROMKEYBOARD] == 1)return SCM(playerid,WRONGCMD,"Du bist im AFK-Modus und kannst somit keine Befehle nutzen."),SCM(playerid,WRONGCMD,"BENUTZE: /back");
    new string[128];
    if(!isPlayerAnAdmin(playerid,1))return SCM(playerid,GRAU,"Du bist kein "#SERVERTAG" Teammitglied./Du hast nicht den jeweiligen Adminrang.");
    if(Spieler[playerid][pAdminOnduty] == false)
    {
    format(string,24,"["#SERVERTAG"]%s",Spieler[playerid][pName]);
    SetPlayerName(playerid,string);
    SetPlayerScore(playerid,GetPlayerLevel(playerid));
    format(string,sizeof(string),"%s geht in den Admindienst.",SpielerName(playerid));
    SCMALL(GRUEN,string);
    SCM(playerid,GRUEN,"** Du bist nun im Admindienst **");
    TextDrawShowForPlayer(playerid,ADUTYdraw);
    Spieler[playerid][pAdminOnduty] = true;
    switch(Spieler[playerid][pAdmin])
    {
    case 1:{aDuty[playerid] = CreateDynamic3DTextLabel("Supporter",TEAM_Supporter,30.0,40.0,50.0,MAX_STREAM_NAME_DISTANCE,playerid,INVALID_VEHICLE_ID,0,-1,-1,-1,GetPlayerVirtualWorld(playerid),1);SetPlayerColor(playerid,TEAM_Supporter);format(string,sizeof(string),"Supporter %s [ID:%d] ist nun im Dienst [Er ist grün markiert]*",Spieler[playerid][pName],playerid);SCMALL(TEAM_Supporter, string);}
    case 2:{aDuty[playerid] = CreateDynamic3DTextLabel("Moderator",TEAM_Moderator,30.0,40.0,50.0,MAX_STREAM_NAME_DISTANCE,playerid,INVALID_VEHICLE_ID,0,-1,-1,-1,GetPlayerVirtualWorld(playerid),1);SetPlayerColor(playerid,TEAM_Moderator);format(string,sizeof(string),"Moderator %s [ID:%d] ist nun im Dienst [Er ist hellblau markiert]*",Spieler[playerid][pName],playerid);SCMALL(TEAM_Moderator, string);}
    case 3:{aDuty[playerid] = CreateDynamic3DTextLabel("Administrator",TEAM_Administrator,30.0,40.0,50.0,MAX_STREAM_NAME_DISTANCE,playerid,INVALID_VEHICLE_ID,0,-1,-1,-1,GetPlayerVirtualWorld(playerid),1);SetPlayerColor(playerid,TEAM_Administrator);format(string,sizeof(string),"Administrator %s [ID:%d] ist nun im Dienst [Er ist blau markiert]*",Spieler[playerid][pName],playerid);SCMALL(TEAM_Administrator, string);}
    case 4:{aDuty[playerid] = CreateDynamic3DTextLabel("Techniker",TEAM_Techniker,30.0,40.0,50.0,MAX_STREAM_NAME_DISTANCE,playerid,INVALID_VEHICLE_ID,0,-1,-1,-1,GetPlayerVirtualWorld(playerid),1);SetPlayerColor(playerid,TEAM_Techniker);format(string,sizeof(string),"Techniker %s [ID:%d] ist nun im Dienst [Er ist lila markiert]*",Spieler[playerid][pName],playerid);SCMALL(TEAM_Techniker, string);}
    case 5:{aDuty[playerid] = CreateDynamic3DTextLabel("Super Administrator",TEAM_SuperAdministrator,30.0,40.0,50.0,MAX_STREAM_NAME_DISTANCE,playerid,INVALID_VEHICLE_ID,0,-1,-1,-1,GetPlayerVirtualWorld(playerid),1);SetPlayerColor(playerid,TEAM_SuperAdministrator);format(string,sizeof(string),"Super Administrator %s [ID:%d] ist nun im Dienst [Er ist orange markiert]*",Spieler[playerid][pName],playerid);SCMALL(TEAM_SuperAdministrator, string);}
    case 6:{aDuty[playerid] = CreateDynamic3DTextLabel("Server Manager",TEAM_ServerManager,30.0,40.0,50.0,MAX_STREAM_NAME_DISTANCE,playerid,INVALID_VEHICLE_ID,0,-1,-1,-1,GetPlayerVirtualWorld(playerid),1);SetPlayerColor(playerid,TEAM_ServerManager);format(string,sizeof(string),"Server Manager %s [ID:%d] ist nun im Dienst [Er ist dunkelrot markiert]*",Spieler[playerid][pName],playerid);SCMALL(TEAM_ServerManager, string);}
    case 7:{aDuty[playerid] = CreateDynamic3DTextLabel("Serverleitung",TEAM_Serverleitung,30.0,40.0,50.0,MAX_STREAM_NAME_DISTANCE,playerid,INVALID_VEHICLE_ID,0,-1,-1,-1,GetPlayerVirtualWorld(playerid),1);SetPlayerColor(playerid,TEAM_Serverleitung);format(string,sizeof(string),"Serverleitung %s [ID:%d] ist nun im Dienst [Er ist rot markiert]*",Spieler[playerid][pName],playerid);SCMALL(TEAM_Serverleitung, string);}
    }
    }
    else if(Spieler[playerid][pAdminOnduty] == true)
    {
    SCM(playerid,ROT,"** Du bist nun nicht mehr im Admindienst **");
    format(string,sizeof(string),"%s ist nun nicht mehr im Admindienst.",SpielerName(playerid));
    SCMALL(ORANGE,string);
    TextDrawHideForPlayer(playerid,ADUTYdraw);
    Delete3DTextLabel(aDuty[playerid]);
    SetPlayerColor(playerid, TEAM_WEIß);
    Spieler[playerid][pAdminOnduty] = false;
    SetPlayerName(playerid,Spieler[playerid][pName]);
    SetPlayerScore(playerid,GetPlayerLevel(playerid));
    if(Spieler[playerid][pMaske] == 1)
    {
    SetPlayerScore(playerid,random(50) + 122);
    format(string,sizeof(string),"UNKNOWN%i",random(50) + 122);
    SetPlayerName(playerid,string);
    }
    if(Spieler[playerid][pDuty] == 4 && Spieler[playerid][pFraktion] != 6)
    {
    SetPlayerScore(playerid,random(50) + 122);
    format(string,24,"SWAT%i",random(50) + 122);
    SetPlayerName(playerid,string);
    }
    if(Spieler[playerid][pDuty] == 4 && Spieler[playerid][pFraktion] == 6 && Spieler[playerid][pMaske] == 1)
    {
    SetPlayerScore(playerid,random(50) + 122);
    format(string,24,"SEAL%i",random(50) + 122);
    SetPlayerName(playerid,string);
    }
    if(Spieler[playerid][pDuty] == 5 && Spieler[playerid][pFraktion] == 6 && Spieler[playerid][pMaske] == 1)
    {
    SetPlayerScore(playerid,random(50) + 122);
    format(string,24,"RANGER%i",random(50) + 122);
    SetPlayerName(playerid,string);
    }
    }
    return 1;
    }


  • Ich weiß nicht ob du vielleicht eine ältere Version nutzt, bei der die Parameter anders sind.
    Versuche es mal so:


    aDuty[playerid] = CreateDynamic3DTextLabel("Supporter",TEAM_Supporter,0.0,0.0,1.0,MAX_STREAM_NAME_DISTANCE, .attachedplayer=playerid, .worlid=GetPlayerVirtualWorld(playerid), .priority=1);


    Gleich für die anderen case's.

  • habe den neusen streamer der grade aktuel ist


    geht nicht kommt das hier



    C:\Users\Jeremias-BenediktPC\Desktop\Ml Server\Server\gamemodes\GeTmyselfmade.pwn(31575) : error 017: undefined symbol "worlid"
    C:\Users\Jeremias-BenediktPC\Desktop\Ml Server\Server\gamemodes\GeTmyselfmade.pwn(31575) : error 029: invalid expression, assumed zero
    C:\Users\Jeremias-BenediktPC\Desktop\Ml Server\Server\gamemodes\GeTmyselfmade.pwn(31575) : error 017: undefined symbol "priority"
    C:\Users\Jeremias-BenediktPC\Desktop\Ml Server\Server\gamemodes\GeTmyselfmade.pwn(31575) : fatal error 107: too many error messages on one line

  • Ups, das muss natürlich worldid heißen.
    aDuty[playerid] = CreateDynamic3DTextLabel("Supporter",TEAM_Supporter,0.0,0.0,1.0,MAX_STREAM_NAME_DISTANCE, .attachedplayer=playerid, .worldid=GetPlayerVirtualWorld(playerid), .priority=1);


    Falls er weiterhin an priority einen Fehler sieht:
    aDuty[playerid] = CreateDynamic3DTextLabel("Supporter",TEAM_Supporter,0.0,0.0,1.0,MAX_STREAM_NAME_DISTANCE, .attachedplayer=playerid, .worldid=GetPlayerVirtualWorld(playerid));

  • und du hast das so eingefügt ?


    aDuty[playerid] = CreateDynamic3DTextLabel("Supporter",TEAM_Supporter,0.0,0.0,1.0,MAX_STREAM_NAME_DISTANCE, playerid,GetPlayerVirtualWorld(playerid));


    Wie hast du die Farbe definirt ?