Abwerbe System bverarbeitet punkt zum Leerzeichen

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 Tag,
    Ich habe gemerkt das durch dieses abwerbe system ein Bug gibt wen man ans ende ein Punkt setzt wird er in ein Leerzeichen verwandelt.
    new lastidx = (strlen(cmdtext) - 1);
    if(cmdtext[lastidx] == '.')
    cmdtext[lastidx] = ' ';


    new countit = 0;
    for(new x=0; x<strlen(cmdtext); x++)
    {
    if(cmdtext[x] == '.' && cmdtext[x+1] <= '9' && cmdtext[x+1] >= '0') // Es wurde ein Punkt und eine Zahl dahinter geschrieben!
    {
    countit++;
    }
    else if(cmdtext[x] == '.' && cmdtext[x+2] <= '9' && cmdtext[x+2] >= '0') // Es wurde ein Punkt, Leerzeichen und eine Zahl dahinter geschrieben!
    {
    countit++;
    }
    }
    if(countit >= 3 && PlayerInfo[playerid][pAdmin] < 1) // Dreimal und eine IP wird erkannt
    if(strfind(cmdtext,"84.200.67.154",true) != 0) // NICHT die TS-IP
    if(strfind(cmdtext,"84.200.67.154",true) != 0)
    {
    new textstring[128], name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(textstring,sizeof(textstring)," [ANTI-IP] %s wird verdächtigt eine IP zu verschicken!",name);
    SendClientMessageToAdmins(M_BOT_COLOR,textstring);
    format(textstring,sizeof(textstring)," [ANTI-IP] %s: %s",name,cmdtext);
    SendClientMessageToAdmins(M_BOT_COLOR,textstring);
    SendClientMessage(playerid,M_BOT_COLOR," [ANTI-IP] Wir dulden kein Abwerben bzw. Serverwerbungen!");
    SendClientMessage(playerid,M_BOT_COLOR," [ANTI-IP] Achtung: Gebe es nicht noch einmal ein!");
    M_Bot[playerid][PIPWarns]++;
    if(M_Bot[playerid][PIPWarns] >= 3)
    {
    format(textstring,sizeof(textstring)," [ANTI-IP] %s wurde von %s gebannt! (GRUND: Verdacht auf Abwerben)",name,M_Bot_BOT_NAME);
    SendClientMessageToAll(M_BOT_COLOR,textstring);
    BanEx(playerid,"Abwerben");
    }
    return 0;
    }
    Wie könnte ich es ändern so das der Punkt angezeigt wird und das Abwerbe system noch existiert?

    Einmal editiert, zuletzt von Trixury ()

  • Nein. Unter der Klammer die nach dem return 0; steht.


    Und wenn es bei der Warnung auch angezeigt werden soll, dann die selbe Zeile nochmal (siehe Post oben) unter der Zeile einfügen:
    new textstring[128], name[MAX_PLAYER_NAME];