[Frage] Was ist besser für Commands/Befehle

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 Morgen,
    wollte von euch mal gerne wissen was besser ist für mein Selfmade ?


    (zcmd)
    COMMAND:finfo(playerid, params[])
    {
    print("COMMAND finfo");
    if(!IsPlayerConnected(playerid)) return 1;
    if(PlayerInfo[playerid][pAdmin] < 1337) return SendClientMessage(playerid, COLOR_RED, "Du bist dazu nicht befugt!");
    new fid, string[128];
    if(sscanf(params, "d", fid)) return SendClientMessage(playerid, COLOR_RED, "Verwendung: /finfo [FraktionsID (siehe /afedit)]");
    format(string, sizeof(string), "FID: %d, FName: %s, FTeam: %d, FColor: %d, FKasse: %d$", FInfo[fid][fFraktionsID], FInfo[fid][fFraktionsName], FInfo[fid][fFraktionsTeam], FInfo[fid][fFraktionsFarbe], FInfo[fid][fFraktionsKasse]);
    SendClientMessage(playerid, COLOR_YELLOW, string);
    format(string, sizeof(string), "FRang1: %s, Frang2: %s, Frang3: %s, Frang4: %s, Frang5: %s, Frang6: %s", FInfoRang[fid][0], FInfoRang[fid][1], FInfoRang[fid][2], FInfoRang[fid][3], FInfoRang[fid][4], FInfoRang[fid][5]);
    SendClientMessage(playerid, COLOR_YELLOW, string);
    format(string, sizeof(string), "FWaffe1: %d/%d, FWaffe2: %d/%d, FWaffe3: %d/%d", FInfo[fid][fFraktionsWaffe1], FInfo[fid][fFraktionsMagazin1], FInfo[fid][fFraktionsWaffe2], FInfo[fid][fFraktionsMagazin2], FInfo[fid][fFraktionsWaffe3], FInfo[fid][fFraktionsMagazin3]);
    SendClientMessage(playerid, COLOR_YELLOW, string);
    format(string, sizeof(string), "Gehälter (6,..,1): %d$, %d$, %d$, %d$, %d$, %d$", FInfo[fid][fFraktionsGehalt1], FInfo[fid][fFraktionsGehalt2], FInfo[fid][fFraktionsGehalt3], FInfo[fid][fFraktionsGehalt4], FInfo[fid][fFraktionsGehalt5], FInfo[fid][fFraktionsGehalt6]);
    SendClientMessage(playerid, COLOR_YELLOW, string);
    new skintxt[32];
    foreach2(FraktionSkin, fid, skinid)
    {
    if(FSkinGeschlecht[skinid] == 1) skintxt = "Männlich";
    else if(FSkinGeschlecht[skinid] == 2) skintxt = "Weiblich";
    format(string, sizeof(string), "FraktionsSkinID: %d Rang: %d Gechlecht: %s", skinid, FSkinRangNumber[skinid][fid], skintxt);
    SendClientMessage(playerid, COLOR_YELLOW, string);
    }
    return 1;
    }


    Oder


    if(strcmp(cmd, "/finfo", true) == 0)
    {
    if(!IsPlayerConnected(playerid)) return 1;
    if(PlayerInfo[playerid][pAdmin] < 1337) return SendClientMessage(playerid, COLOR_RED, "Du bist dazu nicht befugt!");
    new fid, string[128];
    if(sscanf(params, "d", fid)) return SendClientMessage(playerid, COLOR_RED, "Verwendung: /finfo [FraktionsID (siehe /afedit)]");
    format(string, sizeof(string), "FID: %d, FName: %s, FTeam: %d, FColor: %d, FKasse: %d$", FInfo[fid][fFraktionsID], FInfo[fid][fFraktionsName], FInfo[fid][fFraktionsTeam], FInfo[fid][fFraktionsFarbe], FInfo[fid][fFraktionsKasse]);
    SendClientMessage(playerid, COLOR_YELLOW, string);
    format(string, sizeof(string), "FRang1: %s, Frang2: %s, Frang3: %s, Frang4: %s, Frang5: %s, Frang6: %s", FInfoRang[fid][0], FInfoRang[fid][1], FInfoRang[fid][2], FInfoRang[fid][3], FInfoRang[fid][4], FInfoRang[fid][5]);
    SendClientMessage(playerid, COLOR_YELLOW, string);
    format(string, sizeof(string), "FWaffe1: %d/%d, FWaffe2: %d/%d, FWaffe3: %d/%d", FInfo[fid][fFraktionsWaffe1], FInfo[fid][fFraktionsMagazin1], FInfo[fid][fFraktionsWaffe2], FInfo[fid][fFraktionsMagazin2], FInfo[fid][fFraktionsWaffe3], FInfo[fid][fFraktionsMagazin3]);
    SendClientMessage(playerid, COLOR_YELLOW, string);
    format(string, sizeof(string), "Gehälter (6,..,1): %d$, %d$, %d$, %d$, %d$, %d$", FInfo[fid][fFraktionsGehalt1], FInfo[fid][fFraktionsGehalt2], FInfo[fid][fFraktionsGehalt3], FInfo[fid][fFraktionsGehalt4], FInfo[fid][fFraktionsGehalt5], FInfo[fid][fFraktionsGehalt6]);
    SendClientMessage(playerid, COLOR_YELLOW, string);
    new skintxt[32];
    foreach2(FraktionSkin, fid, skinid)
    {
    if(FSkinGeschlecht[skinid] == 1) skintxt = "Männlich";
    else if(FSkinGeschlecht[skinid] == 2) skintxt = "Weiblich";
    format(string, sizeof(string), "FraktionsSkinID: %d Rang: %d Gechlecht: %s", skinid, FSkinRangNumber[skinid][fid], skintxt);
    SendClientMessage(playerid, COLOR_YELLOW, string);
    }
    return 1;
    }


    Wer super wenn ihr mir sagt was ihr darüber denkt ?





    Edit // Code eingefügt

  • Das obere mit zcmd. Soll ja schneller sein, aber ist natürlich Geschmackssache, manche nehmen zcmd, manche dcmd. Ich mag die Methode mit den Befehlen im OnPlayerCommandText irgendwie nicht, ich hab sie lieber als eigene "Funktion" sozusagen (dcmd, zcmd... ).

  • Wie meinst du das genau mit eigener Funtkion zeig mal her ?

  • Wieso nutzt man überhaupt diesen Käse... Scheiß auf OMCD, DMCD und den Rotz...
    Das Zeug gibt es nur um den Leuten den Umgang mit Pawn zu erleichtern aber im Endeffekt ist alles das gleiche!

  • ZCMD lohnt sich nur wenn man wirklich viele Befehle hat und ist dann auch wirklich schneller als z.b die normale methode per strcmp. Spüren wirst du den unterschied aber nie, weil das nur ein paar MS sind.


    Ich benutze ZCMD hauptsächlich wegen der übersicht und den beiden mitgelieferten Callbacks.

    Wieso nutzt man überhaupt diesen Käse... Scheiß auf OMCD, DMCD und den Rotz...
    Das Zeug gibt es nur um den Leuten den Umgang mit Pawn zu erleichtern aber im Endeffekt ist alles das gleiche!


    Vergleich mal DCMD und ZCMD oder YCMD, und dann sag mir nochma das es das gleiche ist...

    The fact is, I am right. And if you think I'm wrong, you are wrong.

  • Hi


    Frag mich auch wofür man den ocmd, zcmd schmarn usw braucht xD
    Auch wenn es wirklich schneller sein soll, wer um gottes willen is auf nem server, gibt nen CMD ein und denkt sich, oha das war ja 2 millisekunden schneller, die benutzen bestimmt zcmd oO
    Aber nen normaler Mensch merkt da wohl keine Unterschiede. (wenn es überhaupt welche gibt, da wie gesagt auf strcmp basiert)


    Bleibt letztendlich dem Scripter überlassen, was er verwendet.
    Such dir das aus, mit dem du am besten zurecht kommst ;)


    MFG, Robdeflop®