Probleme im Script + Fragen

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
  • Guten Abend liebe Breadfisher. :)


    Ich habe folgendes Problem bzw folgende Frage:


    //Edit:
    Frage/Probleme 1 & 2 Erledigt & gelöscht.


    3. (Frage & Problem):


    Das letzte ist eine Frage und ein Problem in einem. ^^
    Ich wollte probieren,
    dass man bei dem Befehl /a (Chat) und /aduty hinten sieht,
    welchem Rang man ist und natürlich den Rängen auch Namen geben,
    da weiß ich aber leider nicht wie das Funktioniert. =/


    Quellcode der Zeilen vom Pawn (/a Chat + /aduty):



    //AChat
    ocmd:a(playerid,params[])
    {
    new string[256];
    new text;
    new pname[MAX_PLAYERS];
    GetPlayerName(playerid,pname,sizeof pname);
    if(sscanf(params,"s",text))return SendClientMessage(playerid,ROT,"Benutze /a [Text]");
    format(string,sizeof(string),"%s: %s",pname,text);
    for(new i = 0; i<MAX_PLAYERS; i++)
    {
    if(SpielerInfo[playerid][alvl] > 0)
    {
    SendClientMessage(i,ORANGE,string);
    }
    }
    return 1;
    }


    //AdutyBefehl


    ocmd:aduty(playerid,params[])
    {
    new sendername[MAX_PLAYERS];
    new Text3D:ADuty[MAX_PLAYER_NAME],adminduty[128];
    new Float:X, Float:Y, Float:Z,grund[128];
    if(SpielerInfo[playerid][alvl] > 1)//eure Admin Abfrage
    {
    if(AdminDuty[playerid] == 0)
    {
    if(sscanf(params,"s[128]",grund))return SendClientMessage(playerid,ROT,"/aduty [Grund]");
    GetPlayerPos (playerid, X, Y, Z);
    ADuty[playerid] = Create3DTextLabel("Admin im Dienst",ORANGE,X,Y,Z,50.0,0,0);
    format(adminduty,sizeof(adminduty),"[Meldung]%s ist im Supportmodus. Grund: %s",sendername,grund);
    SendClientMessageToAll(ORANGE,adminduty);
    Attach3DTextLabelToPlayer(ADuty[playerid], playerid, 0.0, 0.0, 0.75);
    AdminDuty[playerid] = 1;
    }
    else
    {
    AdminDuty[playerid] = 0;
    Delete3DTextLabel(ADuty[playerid]);
    format(adminduty,sizeof(adminduty),"[Meldung]%s ist nicht mehr im Supportmodus.",sendername);
    SendClientMessageToAll(ORANGE,adminduty);
    }
    }
    else
    {
    SendClientMessage(playerid,ROT,"Du bist kein Administrator.");
    return 1;
    }
    return 1;
    }


    - Hoffe ihr könnt mir Behilflich sein,


    Grüße
    Ray_Johnson

    Einmal editiert, zuletzt von RayJohnson ()

  • 1. Problem


    Dein Array für string ist zu klein. Mach das viel größer. Das passt niemals alles rein.


    2.


    Weiters um Text farbig zu machen musst du es so machen {FF0A00} - Das ist z.B. Die rote Farbe. {FFFFFF} - Weiße Farbe

    Die Macht etwas zu bewirken, ist in Dir. Du musst sie nur rauslassen


    cristiano-ronaldo-525-portugal-euro-2012-banner-wallpaper.jpg


  • Zu 1.
    Wie kann ich den Array denn größer machen? :(


    Zu 2.
    Danke, habe mich echt schon gefragt, wie es endlich geht. ^^

  • Meiner Meinung nach müsste er doch Hexa-Farbcodes nutzen, sprich sowas hier {99FF00}. Dann schreibt er in Farbe, oder irre ich mich?


    MfG
    Eliot Ness