return falsch gesezt ?

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 ich wollt mir ein kleines anti spam in meinem gm einbauen nur habe ich jetzt das problem das sich da nichts tut also es erscheint schon ne nachricht das der spieler für ein paar minuten gemutet ist aber naja er ist es halt nicht also man kann einfach weiter spammen ich denke mal das irgentwo ein return falsch ist schaut iht mal pls drüber


    public OnPlayerText(playerid,text[])
    {


    new textstring[128];
    format(textstring, sizeof(textstring), "[%i] %s", playerid, text);
    SendPlayerMessageToAll(playerid, textstring);
    spam[playerid][chatspam]++;
    if(spam[playerid][chatspam] == 5)
    {
    spam[playerid][chatmuted] = 1;


    SetTimerEx("ResetSpam", 3000,0,"dd",playerid,1);


    return 0;
    }
    if(spam[playerid][chatmuted]==1)
    {
    SendClientMessage(playerid,COLOR_RED,"ANTISPAM");
    return 1;
    }
    return 0;
    }



    forward ResetSpam(playerid,modus);
    public ResetSpam(playerid,modus)
    {
    if(modus == 0) {
    for (new i = 0; i<MAX_PLAYERS; i++)
    {
    spam[i][chatspam] = 0;
    }
    }
    if(modus == 1) { spam[playerid][pCmdmuted] = 0; spam[playerid][chatmuted] = 0; }
    return 1;
    }

  • public OnPlayerText(playerid,text[])
    {

    new textstring[128];
    format(textstring, sizeof(textstring), "[%i] %s", playerid, text);
    SendPlayerMessageToAll(playerid, textstring);
    spam[playerid][chatspam]++;
    if(spam[playerid][chatspam] == 5)

    {
    spam[playerid][chatmuted] = 1;

    SetTimerEx("ResetSpam", 3000,0,"dd",playerid,1);

    return 0;

    }
    if(spam[playerid][chatmuted]==1)

    {
    SendClientMessage(playerid,COLOR_RED,"ANTISPAM");
    return 1; // <- Da muss return 0 hin

    }
    return 0; // <- Hier muss return 1 hin

    }


    http://boylett.com/scripts/autoindent.php - Solltest du dir auch mal angucken.

  • beides schon probiert gehabt


    also bei goldkillers ist es so das mein name dan doppelt angezeigt wird also einmal den namen mit der id from namen und dann noch einmal normal aber der spamschutz tuts nicht


    beim anderen wird mein name einmal angezeigt die nachricht auch aber der schuzt wird auch nicht aktiviert

  • Streng dich mal ein wenig an und lern irgendwann mal dir selber zu helfen.


    public OnPlayerText(playerid,text[])
    {

    new textstring[128]; // <------------------
    format(textstring, sizeof(textstring), "[%i] %s", playerid, text); // <------------------
    SendPlayerMessageToAll(playerid, textstring); // <------------------
    spam[playerid][chatspam]++;
    if(spam[playerid][chatspam] == 5)

    {
    spam[playerid][chatmuted] = 1;

    SetTimerEx("ResetSpam", 3000,0,"dd",playerid,1);

    return 0;

    }
    if(spam[playerid][chatmuted]==1)

    {
    SendClientMessage(playerid,COLOR_RED,"ANTISPAM");
    return 1; // <- Da muss return 0 hin

    }
    return 0; // <- Hier muss return 1 hin

    }
    Wie wäre es wenn du die drei Zeilen mal verschiebst wo es am logischsten erscheint?