Commands mit Texten -.-

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 Leute,
    Das ist jetzt schon mein 3. Thread über Commands mit individuellen Texten (wie /o oder /s)
    Jemand hat mir schonmal ein Beispiel geliefert, jedoch konnte man damit nix anfangen wegen Errors:
    dcmd_schreien(playerid, params[])
    {
    new text[100],string[128];
    if(sscanf(params,"s",text))
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid, name, sizeof(name));
    format(string,sizeof(string),"%s schreit: %s",name,text);
    new Float:x, Float:y, Float:z;
    GetPlayerPos(playerid, x, y, z);
    for(new d=0; d<MAX_PLAYERS; d++)
    {
    if(IsPlayerInRangeOfPoint(d, 10.0, x, y, z)) SendClientMessage(d, farbe, string);
    }
    return 1;
    }

    Errors:

    Code
    C:\Dokumente und Einstellungen\Tim\Desktop\Games Launches\Server\San Andreas Life RolePlay\gamemodes\ANTICHEAT-.-.pwn(620) : error 017: undefined symbol "dcmd_schreien"C:\Dokumente und Einstellungen\Tim\Desktop\Games Launches\Server\San Andreas Life RolePlay\gamemodes\ANTICHEAT-.-.pwn(623) : error 017: undefined symbol "sscanf"C:\Dokumente und Einstellungen\Tim Macik\Desktop\Games Launches\Server\San Andreas Life RolePlay\gamemodes\ANTICHEAT-.-.pwn(624) : error 003: declaration of a local variable must appear in a compound blockC:\Dokumente und Einstellungen\Tim\Desktop\Games Launches\Server\San Andreas Life RolePlay\gamemodes\ANTICHEAT-.-.pwn(624) : error 017: undefined symbol "name"C:\Dokumente und Einstellungen\Tim\Desktop\Games Launches\Server\San Andreas Life RolePlay\gamemodes\ANTICHEAT-.-.pwn(624) : warning 215: expression has no effectC:\Dokumente und Einstellungen\Tim\Desktop\Games Launches\Server\San Andreas Life RolePlay\gamemodes\ANTICHEAT-.-.pwn(624) : error 001: expected token: ";", but found "]"C:\Dokumente und Einstellungen\Tim\Desktop\Games Launches\Server\San Andreas Life RolePlay\gamemodes\ANTICHEAT-.-.pwn(624) : fatal error 107: too many error messages on one line


    Bitte helft mir, diese Commands sind wichtig!

  • Füge diesen Stock von dieser folgenden Seite in dein Script oben ein...
    http://wiki.sa-mp.com/wiki/Sscanf


    In OnPlayerCommandText folgende Zeile einfügen:
    dcmd(schreien, strlen("schreien"), cmdtext);


    und ersetzt deinen Befehl hiermit...
    dcmd_schreien(playerid, params[])
    {
    new text[100],string[128];
    if(sscanf(params,"s",text)) return SendClientMessage(playerid, 0xFFFFFF00, "Verwendung: /schreien [Text]");
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid, name, sizeof(name));
    format(string,sizeof(string),"%s schreit: %s",name,text);
    new Float:x, Float:y, Float:z;
    GetPlayerPos(playerid, x, y, z);
    for(new d=0; d<MAX_PLAYERS; d++)
    {
    if(IsPlayerInRangeOfPoint(d, 10.0, x, y, z)) SendClientMessage(d, farbe, string);
    }
    return 1;
    }

    Mfg Templer


    >>Dein Breadfish-Thema im Unterforum ScriptingBase / Scriptingwünsche wurde nicht richtig beantworter?<<
    >>Es handelt sich um ein Programmier Problem und du nicht einfach weiter kommst wo der Fehler sein könnte?<<
    Dann melde dich bei mir über die PN-Funktion indem du den Link zu deinem Breadfish-Themen Problem schickst.
    Voraussetzung:
    Thema älter als 1 Tag und im Breadfish Forum gespostet!

  • Welches include wird genutzt? Also wenn ich das so mache wie du beschreiben hast kommt folgendes:

    Zitat

    C:\Dokumente und Einstellungen\Tim\Desktop\Games Launches\Server\San Andreas Life RolePlay\gamemodes\ANTICHEAT-.-.pwn(620) : error 017: undefined symbol "dcmd"
    C:\Dokumente und Einstellungen\Tim\Desktop\Games Launches\Server\San Andreas Life RolePlay\gamemodes\ANTICHEAT-.-.pwn(5165) : warning 203: symbol is never used: "dcmd_schreien"


    Und Zeile 5165 (Error) existiert garnicht o,O

  • folgendes ganz oben in dein Script auch einfügen:


    #if !defined dcmd
    #define dcmd(%1,%2,%3) if (!strcmp((%3)[1], #%1, true, (%2)) && ((((%3)[(%2) + 1] == '\0') && (dcmd_%1(playerid, ""))) || (((%3)[(%2) + 1] == ' ') && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
    #endif


    und schick mir dein OnPlayerCommandText Callback, wenn noch Fehler vorhanden sind

    Mfg Templer


    >>Dein Breadfish-Thema im Unterforum ScriptingBase / Scriptingwünsche wurde nicht richtig beantworter?<<
    >>Es handelt sich um ein Programmier Problem und du nicht einfach weiter kommst wo der Fehler sein könnte?<<
    Dann melde dich bei mir über die PN-Funktion indem du den Link zu deinem Breadfish-Themen Problem schickst.
    Voraussetzung:
    Thema älter als 1 Tag und im Breadfish Forum gespostet!

  • Jetzt nur noch eines:
    C:\Dokumente und Einstellungen\Tim\Desktop\Games Launches\Server\San Andreas Life RolePlay\gamemodes\ANTICHEAT-.-.pwn(5157) : error 017: undefined symbol "sscanf"

  • Zitat vom obigen Post...

    Zitat

    Füge diesen Stock von dieser folgenden Seite in dein Script oben ein...
    http://wiki.sa-mp.com/wiki/Sscanf

    Mfg Templer


    >>Dein Breadfish-Thema im Unterforum ScriptingBase / Scriptingwünsche wurde nicht richtig beantworter?<<
    >>Es handelt sich um ein Programmier Problem und du nicht einfach weiter kommst wo der Fehler sein könnte?<<
    Dann melde dich bei mir über die PN-Funktion indem du den Link zu deinem Breadfish-Themen Problem schickst.
    Voraussetzung:
    Thema älter als 1 Tag und im Breadfish Forum gespostet!