[Hilfe!] Whisper Command nur für Admins

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
  • Sehr geehrte Breadfish Community,


    hab mal wieder eine Frage und zwar wollte ich in mein GF Edit ein Commando einbauen, was uns das Antworten einem Report erleichtert. Und zwar sollte man mit einem Commando den Report beantworten können z.B mit: /aw ID
    Der User sollte dann die Report Antwort hinzugeflüstert werden, aber der Admin sollte einen Hinweis bekommen das der Report beantwortet wurde. Sodass kein Missverständniss auftaucht.


    Wie kann ich das ganze machen?


    Liebe Grüße
    Eazyline


    //EDIT: Rechtschreibfehler verbessert.


    Registrieren, Bestellen, Produkt kostenlos bekommen!

    Einmal editiert, zuletzt von [MR]Chicko aka. Eazyline ()

  • Hab mal schnell was gebastelt;)
    Ist aber mit OCMD kannste ja umschreiben!;)



    ocmd:aw(playerid,params[])
    {
    new text[128], string[128] ,splayerid;
    if(sscanf(params,"us",splayerid,text))
    {
    return SendClientMessage(playerid, COLOR_GREY,"[Benutzung]: /aw [id][text]");
    }
    if(pInfo[playerid][admin] < 1)
    {
    return SendClientMessage(playerid, COLOR_GREY,"Du darfst diesen Befehl nicht benutzen!");
    }
    else
    {
    new player[MAX_PLAYER_NAME];
    GetPlayerName(playerid,player,sizeof(player));
    format(string,sizeof(string),"(( %s: %s ))",player,text);
    SendClientMessage(splayerid,COLOR_YELLOW, string);
    format(string,sizeof(string),"(( %s ))",text);
    SendClientMessage(playerid,COLOR_YELLOW, string);
    }
    return 1;
    }

  • Ja ehm. danke für deine Hilfe, nur.. ich bin noch ein Anfänger im Scripten, wie kann ich das umschreiben in ein normales CMD?


    Registrieren, Bestellen, Produkt kostenlos bekommen!

  • Also das nur Admins wisper machen können geht so:


    if(strcmp(cmd, "/wisper", true) == 0 || strcmp(cmd, "/w", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if (PlayerInfo[playerid][pAdmin] >= 1)
    {
    if(gPlayerLogged[playerid] == 0)
    {
    SendClientMessage(playerid, COLOR_GREY, " You havent logged in yet !");
    return 1;
    }
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "USAGE: (/w)isper [playerid/PartOfName] [whisper text]");
    return 1;
    }
    giveplayerid = ReturnUser(tmp);
    if (IsPlayerConnected(giveplayerid))
    {
    if(giveplayerid != INVALID_PLAYER_ID)
    {
    if(HidePM[giveplayerid] > 0)
    {
    SendClientMessage(playerid, COLOR_GREY, " That player is blocking Whispers !");
    return 1;
    }
    GetPlayerName(playerid, sendername, sizeof(sendername));
    GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
    if(giveplayerid == playerid)
    {
    format(string, sizeof(string), "* %s mutters somthing.", sendername);
    ProxDetector(5.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
    }
    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, "USAGE: (/w)isper [playerid/PartOfName] [whisper text]");
    return 1;
    }
    format(string, sizeof(string), "%s(ID: %d) whispers: %s", sendername, playerid, (result));
    SendClientMessage(giveplayerid, COLOR_YELLOW, string);
    format(string, sizeof(string), "Wisper sent to %s(ID: %d): %s", giveplayer, giveplayerid, (result));
    SendClientMessage(playerid, COLOR_YELLOW, string);
    SBizzInfo[2][sbTill] += txtcost / 2;
    ExtortionSBiz(2, txtcost / 2);
    return 1;
    }
    }
    else
    {
    format(string, sizeof(string), " %d is not an active player.", giveplayerid);
    SendClientMessage(playerid, COLOR_GRAD1, string);
    }
    }
    }
    return 1;
    }