Hilfe bei /me befehl

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 ihr lieben Brotfische,


    Ich habe mich eben mal an einem /me Befehl versucht,
    doch aus irgendeinem Grund will es nicht funktionieren.


    Mir werden auch keine Errors angezeigt


    Ich hoffe ihr könnt mir helfen


    LG lescha


    Codeschnipsel:


    ocmd:me(playerid,params[])
    {
    new name[MAX_PLAYER_NAME],text[128],string[128];
    GetPlayerName(playerid,name,MAX_PLAYER_NAME);
    format(string,128,"* %s %i.",name,text);
    SendClientMessage(playerid,LILA,string);
    }

  • ocmd:me(playerid,params[])
    {
    new name[MAX_PLAYER_NAME],text[128],string[128];
    GetPlayerName(playerid,name,MAX_PLAYER_NAME);
    if(sscanf(params,"s",text))return 1;
    format(string,128,"* %s %s.",name,text);
    SendClientMessage(playerid,LILA,string);
    return 1;
    }


    Du musst 2x %s nehmen, da du in beiden Fällen einen Text senden möchtest.
    Dazu musst du sscanf verwenden, um den "text" zu wandeln.

  • ocmd:me(playerid,params[]) { new name[MAX_PLAYER_NAME],text[128],string[128]; GetPlayerName(playerid,name,MAX_PLAYER_NAME); format(string,128,"* %s %i.",name,text); SendClientMessage(playerid,LILA,string); }



    ocmd:me(playerid,params[])
    {
    new name[MAX_PLAYER_NAME],string[128];
    GetPlayerName(playerid,name,MAX_PLAYER_NAME);
    format(string,128,"* %s %s.",name,params);
    SendClientMessage(playerid,LILA,string);
    return 1;
    }


    Du musst hier 3 Dinge beachten.


    1. %i steht für Integer und eine Zahl ist keine Zeichenkette, daher musst du wie bei name %s verwenden.
    2. Du benötigst normal ein Return das ocmd eine Funktionen erstellt mit dem Namen ocmd_me.
    3. Der String text enthält nix, den brauchst du nicht da params[] als Funktionsparameter alles nachfolgende was nach /me eingeben wird enthält.