Beiträge von DurtyFree

    Zu Frage 2, ich glaube zu 7-8 Buchstaben und der Text ist dann unterschiedlich Groß (Glaub ich jedenfalls)
    Zu 1, so wie du es da hast geht es sowieso nicht, der 2 Parameter (Kennzeichen) wird nirgends gespeichert, und du formatierst den string text, in dem nix ist als string und nutzt dann die variable text? lol

    Zunno
    Pack das unten oder oben (ausserhalb eines Callbacks/einer Funktion) noch hin

    #if !defined isnull
    #define isnull(%1) \
    ((!(%1[0])) || (((%1[0]) == '\1') && (!(%1[1]))))
    stock SplitIp (ipstring [])
    {
    new
    j,
    bytes [4],
    word;


    for (new i = 0, len = strlen (ipstring); i < len; ++i)
    {
    if (j > 3)
    return 0xFFFFFFFF;


    if (ipstring [i] == ' ')
    continue;


    if (ipstring [i] == '*')
    bytes [j] = 0xFF;
    else if (ipstring [i] == '.')
    {
    ++j;
    }
    else if ('0' <= ipstring [i] <= '9')
    {
    bytes [j] = 10 * bytes [j] + ipstring [i] - '0';
    if (bytes [j] > 0xFF || bytes [j] < 0)
    return 0xFFFFFFFF;
    }
    else
    return 0xFFFFFFFF;
    }
    DOB::BytesToWord (bytes [0], bytes [1], bytes [2], bytes [3], word);
    return word;
    }

    Mit einem Object Streamer, am besten du googlest mal oder nutzt die Such Funktion, ich empfehle dir das Streamer Plugin da es sogut wie alles streamen kann und sehr leicht zu bedienen ist (Noch dazu verfügt es über ne menge Funktionen)

    Du musst die Funktion unten ins Script einfügen, und kannst dann wie in meinem Beispiel die Funktion überall nutzen, zb. für den Normalen Chat unter OnPlayerText folgendes einfügen:
    if (AdvertisementCheck (text)){SendClientMessage(playerid,FARBE,"Dir ist es untersagt Werbung auf diesem Server zu machen!");return 1;}

    Wieso so kompliziert? Also du willst einen String in einer .amx Datei ändern? Ob die .amx Datei dannach noch funktioniert... Schreib mal genauer was du vor hast dann können wir vielleicht andere Wege das zu machen posten.

    Bei der Formatierung kann das ja nur schief gehen, probiers mal so:

    if(strcmp(cmdtext, "/lohn", true) == 0)
    {
    GetPlayerWeaponData(playerid,slot,367,ammo);
    if(ammo == 0)
    {
    GivePlayerMoney(playerid, 500);
    return 1;
    }
    else
    {
    SendClientMessage(playerid,RED,"Nope, zu wenig!");
    return 1;
    }
    }

    Also mehr kann ich wirklich nicht tuhen, da steht doch alles SOGAR AUF DEUTSCH, die Variable strtok wird nicht genutzt also benutz sie oder lösch sie einfach, auskommentieren geht übrigens auch (// an anfang der Zeile)

    Und erklär mal was es bringt den Beifahrer zu blitzen wenn der Fahrer doch fährt und das Tempo bestimmt? Und wo soll der Fehler sein/Was funktioniert nicht/oder nicht richtig?

    Hast du denn schon eine Anti IP Funktion im Script? Wird diese bei OnPlayerText aufgerufen?
    //Edit, ok du hast die Funktion ja in den Mainpost editiert, die Funktion scheint aber nicht gerade gut zu sein ^^


    Ich empfehle dir Double-0-$even seine,
    stock AdvertisementCheck (text []) //By Double O Seven
    {
    if (!isnull (text))
    {
    new
    idx,
    i,
    ipstring [128],
    string [128],
    len = strlen (text);


    for (i = 0; i < len; ++i)
    if (text [i] != ' ')
    string [idx++] = text [i];


    if (!(len = strlen (string)))
    return false;


    if (!strfind (string, "www.", false) || !strfind (string, "http://", false) || !strfind (string, ".com", false) || !strfind (string, ".net", false)
    || !strfind (string, ".de", false) || !strfind (string, ".org", false))
    return true;


    // Check for an IP.
    for (i = 0, idx = 0; i < len; ++i)
    {
    if (string [i] == ':')
    {
    ipstring [idx] = '\0';
    if (ipstring [0] && SplitIp (ipstring) != 0xFFFFFFFF)
    return true; // Something of the form "number1.number2.number3.number4" has been found where 0 <= number1-4 <= 255. Can it be something else than an IP?
    idx = 0;
    ipstring [0] = '\0';
    }
    else if ('0' <= string [i] <= '9' || string [i] == '.')
    ipstring [idx++] = string [i];
    }


    ipstring [idx] = '\0';
    if (ipstring [0] && SplitIp (ipstring) != 0xFFFFFFFF)
    return true; // Something of the form "number1.number2.number3.number4" has been found where 0 <= number1-4 <= 255. Can it be something else than an IP?
    }
    return false;
    }
    Dann einfach überall wo du sie nutzen willst:
    if (AdvertisementCheck (textvariable))
    {
    //Er hat eine IP/Domain geschrieben, was soll passieren? Kick/Ban?
    return 1;
    }

    Strtok ist soviel ich weiß eine Funktion und keine Include ^^

    strtok(const string[], &index)
    {
    new length = strlen(string);
    while ((index < length) && (string[index] <= ' '))
    {
    index++;
    }

    new offset = index;
    new result[20];
    while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
    {
    result[index - offset] = string[index];
    index++;
    }
    result[index - offset] = EOS;
    return result;
    }