Wie arbeite ich mit strcmp?

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
  • Hallo,


    ich will so ein System bauen, wo der User wenn er Hilfe braucht schonmal gucken kann, ob das irgendwo schonmal erklärt wurde.. sprich ein Help System.


    Allerdings komme ich mit strcmp nicht so wirklich klar.


    Ich will, das wenn ich jetzt /hilfe Haus mache das dann ein Dialog kommt.
    Ich glaube aber, das diese Befehl irgendwie nicht so stimmt wie ich in gescriptet habe.


    Wie müsste der Befehl aussehen?
    if(!strcmp(cmdtext, "/hilfe", true, 6)) // 3 is the length of /me
    {
    if(!cmdtext[6])return SendClientMessage(playerid, 0xFF0000FF, "USAGE: /hilfe [SUCHTEXT]");
    if(!strcmp(cmdtext,"Haus",true))
    {
    //Dialog
    }
    else if(!strcmp(cmdtext,"Boot",true))
    {
    //Dialog
    }
    return 1;
    }

  • Denke nicht das es funktioniert, da du "Haus" mit der Variable "cmdtext" vergleichst. Da müsste der Dialog dann erst kommen, wenn man nur "haus" in den Chat eingibt.


    Probier's aber einfach mal aus.
    Ich hätte das allerdings mit ocmd/dcmd/zcmd gemacht, vielleicht hilft es dir ja:


    ocmd:hilfe(playerid,params[])
    {
    new input[16];
    if(sscanf(params,"s",input)) return SendClientMessage(playerid,weiß,"Benutzung: /hilfe <suchbegriff>");
    {
    if(!strcmp(input,"haus",false)) return ShowPlayerDialog....
    else if (!strcmp(input,"auto",false)) return ShowPlayerDialog....


    }


    return 1;
    }