GameTextForPlayer

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 bzw. Morgen


    ich suche einen Befehl der wie der ooc chat basiert


    Also wenn ich /cnn eingebe sollte möglichst mitten im Bildschirm der Text stehen



    Ich hoffe, das mir jemand den Befehl auf OCMD scriptet da ich es nicht hinbekomme



    MFG
    schnarre

  • Hab das mal so gemacht aber es klappte nicht danach habe ich es aufgegeben


    if(strcmp(cmd, "/cnn", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if (IsPlayerAnAdmin(playerid,2))
    {
    GetPlayerName(playerid, sendername, sizeof(sendername));
    new length = strlen(cmdtext);
    while ((idx < length) && (cmdtext[idx] <= ' '))
    {
    idx++;
    }
    new offset = idx;
    new result[64];
    while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
    {
    result[idx - offset] = cmdtext[idx];
    idx++;
    }
    result[idx - offset] = EOS;
    if(!strlen(result))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "NUTZUNG: /cnn [textformat ~n~=Newline ~r~=Red ~g~=Green ~b~=Blue ~w~=White ~y~=Yellow]");
    return 1;
    }
    format(string, sizeof(string), "~b~%s: ~w~%s",sendername,result);
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    GameTextForPlayer(i, string, 5000, 6);
    }
    }
    return 1;
    }
    else
    {
    SendClientMessage(playerid, ROT, " Sie sind kein Admin!");
    return 1;
    }
    }
    return 1;
    }


    Hab ich da fehler drin?

  • In Prinzip kann ich ja das austauschen zu OCMD


    if(strcmp(cmd, "/cnn", true) == 0)


    zu


    ocmd:cnn(playerid,params[])



    habe es zwar schonmal gemacht/versucht klappt aber auch nicht

  • Ja den ganzen Rest kannste im grunde ebenfalls wegschmeißen, mit sscanf ist der Befehl schnell gemacht...



    ocmd:cnn(playerid,params[])
    {
    new string[128],text[128];
    if (IsPlayerAnAdmin(playerid,2))
    {
    if(sscanf(params,"s",text))
    {
    SendClientMessage(playerid,GRAU,"[INFO]: /cnn [Text]");
    return 1;
    }
    format( string, sizeof(string), "~w~%s",text);
    GameTextForAll( string, 5000, 3 );
    }
    else
    {
    SendClientMessage(playerid,GRAU,"Du bist kein Admin!");
    }
    return 1;
    }