Problem mit /d

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 bins mal wieder(nach langer zeit) ich hab ein Problem undzwar :



    Ich hab ein /d gemacht mit dem der rang text und der name angezeigt wird aber wenn ich das mache kommt nur "(leerzeichen)xBenix : (text),over"



    Hier ist der command :




    ocmd:d(playerid,params[])
    {
    if(isPlayerInFrakt(playerid,1))
    {
    new text[128];
    if(sscanf(params,"s",text))return SendClientMessage(playerid,ROT,"/d [Text]");
    new rang[128];
    switch(GetPVarInt(playerid,"Rank"))
    {
    case 0:{rang="Police Officer I";}
    case 1:{rang="Police Officer II";}
    case 2:{rang="Police Officer III";}
    case 3:{rang="Detectiv";}
    case 4:{rang="Sergeant";}
    case 5:{rang="Assistent Chief";}
    case 6:{rang="Chief of Police";}

    }
    format(text,sizeof(text),"%s %s: %s,over",GetPVarInt(playerid,"Rank"),SpielerName(playerid),text);
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(isPlayerInFrakt(i,1))
    {
    SendClientMessage(i,ORANGE,text);
    }
    }
    return 1;
    }
    return 1;
    }

  • Das kann nicht gehen. Du gibst an, dass ein String kommt und fügst einen Integer ein.


    Änder die Zeile mal in dashier:


    format(text,sizeof(text),"%s %s: %s,over",rang,SpielerName(playerid),text);


    ##edit


    Und seit dem neusten SSCANF Update musst du beim String auch immer angeben wie lang er ist also musst oben dashier hin:


    if(sscanf(params,"s[128]",text))return SendClientMessage(playerid,ROT,"/d [Text]");