/ad Sperre

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
  • Sry hatte ich ganz vergessen xD


    Ich gebe dann nun mal ebend /ad


    if(strcmp(cmd, "/advertise", true) == 0 || strcmp(cmd, "/ad", true) == 0)
    {
    if(PlayerInfo[playerid][pLevel] > 1)
    {
    if(IsPlayerConnected(playerid))
    {
    if(gPlayerLogged[playerid] == 0)
    {
    SendClientMessage(playerid, COLOR_GREY, " Du bist noch nicht eingeloggt !");
    return 1;
    }
    GetPlayerName(playerid, sendername, sizeof(sendername));
    new length = strlen(cmdtext);
    while ((idx < length) && (cmdtext[idx] <= ' '))
    {
    idx++;
    }
    new offset = idx;
    new result[64];
    while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
    {
    result[idx - offset] = cmdtext[idx];
    idx++;
    }
    result[idx - offset] = EOS;
    if(!strlen(result))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "NUTZUNG: (/ad)vertise [text]");
    return 1;
    }
    if ((!adds) && (PlayerInfo[playerid][pAdmin] < 1))
    {
    format(string, sizeof(string), "Bitte Versuch es Später wieder %d sekunden zwischen einer Advertisement !", (addtimer/1000));
    SendClientMessage(playerid, COLOR_GRAD2, string);
    return 1;


    }
    new payout = idx * 5;
    if(GetPlayerMoney(playerid) < payout)
    {
    format(string, sizeof(string), "* Du hast %d characters benutzt das kostet $%d, du hast nicht genug.", offset, payout);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    return 1;
    }
    GivePlayerMoney(playerid, - payout);
    SBizzInfo[7][sbTill] += payout;
    ExtortionSBiz(7, payout);
    format(string, sizeof(string), "Werbung: %s, Von: %s PH: %d", result, sendername,PlayerInfo[playerid][pPnumber]);
    OOCNews(TEAM_GROVE_COLOR,string);
    format(string, sizeof(string), "~r~Abzug $%d~n~~w~Nachricht hat: %d Characters erreicht", payout, idx);
    GameTextForPlayer(playerid, string, 5000, 5);
    if (PlayerInfo[playerid][pAdmin] < 1){SetTimer("AddsOn", addtimer, 0);adds = 0;}
    }
    }
    else SendClientMessage(playerid,COLOR_RED,"Du brauchst Level 2 um eine /ad zu schreiben.");
    return 1;
    }


    Diesen Befehl sollten auch nur Admins nutzen können



    Kann mir den jemand helfen, ich sitze jetzt schon ziemlich lange dranne, komme aber nicht auf die Ideee


    /edit Hilfe

  • Also in dermaßen so ?


    if(strcmp(cmd,"/lockad",true)==0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(PlayerInfo[playerid][pAdmin] < 2) { return 1; }
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_WHITE, "/lockad [Playerid]");
    return 1;
    }
    giveplayerid = ReturnUser(tmp);
    if(IsPlayerConnected(giveplayerid) && (giveplayerid != INVALID_PLAYER_ID))
    {
    if adsperre = 0;
    {
    adsperre [giveplayerid]=1;
    SendClientMessage(playerid,COLOR_GREY,"/ad wurde für diesen Spieler gespeert!");
    format(string, 256, "AdmCmd: %s hat den /ad für %s gespeert!",sendername, giveplayer);
    ABroadCast(COLOR_RED,string,1);
    SendClientMessage(giveplayerid,COLOR_YELLOW,"Der Befehl /ad wurde für dich gespeert!");
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, "Dieser Spieler ist nicht Aktiv!");
    return 1;
    }
    }
    return 1;
    }


    if(strcmp(cmd,"/unlockad",true)==0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(PlayerInfo[playerid][pAdmin] < 2) { return 1; }
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_WHITE, "/lockad [Playerid]");
    return 1;
    }
    giveplayerid = ReturnUser(tmp);
    if(IsPlayerConnected(giveplayerid) && (giveplayerid != INVALID_PLAYER_ID))
    {
    if adsperre = 1;
    {
    adsperre [giveplayerid]=0;
    SendClientMessage(playerid,COLOR_GREY,"/ad wurde für diesen Spieler freigeschaltet!");
    format(string, 256, "AdmCmd: %s hat den /ad für %s wieder freigegeben!",sendername, giveplayer);
    ABroadCast(COLOR_RED,string,1);
    SendClientMessage(giveplayerid,COLOR_YELLOW,"Der Befehl /ad wurde für dich wieder freigegeben!");
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, "Dieser Spieler ist nicht Aktiv!");
    return 1;
    }
    }
    return 1;
    }



    Jetzt mein Problem, wo gebe ich das hier ein also ein Speertext ?


    if(strcmp(cmd, "/advertise", true) == 0 || strcmp(cmd, "/ad", true) == 0)
    {
    if(PlayerInfo[playerid][pLevel] > 1)
    {
    if(IsPlayerConnected(playerid))
    {
    if(gPlayerLogged[playerid] == 0)
    {
    SendClientMessage(playerid, COLOR_GREY, " Du bist noch nicht eingeloggt !");
    return 1;
    }
    GetPlayerName(playerid, sendername, sizeof(sendername));
    new length = strlen(cmdtext);
    while ((idx < length) && (cmdtext[idx] <= ' '))
    {
    idx++;
    }
    new offset = idx;
    new result[64];
    while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
    {
    result[idx - offset] = cmdtext[idx];
    idx++;
    }
    result[idx - offset] = EOS;
    if(!strlen(result))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "NUTZUNG: (/ad)vertise [text]");
    return 1;
    }
    if ((!adds) && (PlayerInfo[playerid][pAdmin] < 1))
    {
    format(string, sizeof(string), "Bitte Versuch es Später wieder %d sekunden zwischen einer Advertisement !", (addtimer/1000));
    SendClientMessage(playerid, COLOR_GRAD2, string);
    return 1;


    }
    new payout = idx * 5;
    if(GetPlayerMoney(playerid) < payout)
    {
    format(string, sizeof(string), "* Du hast %d characters benutzt das kostet $%d, du hast nicht genug.", offset, payout);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    return 1;
    }
    GivePlayerMoney(playerid, - payout);
    SBizzInfo[7][sbTill] += payout;
    ExtortionSBiz(7, payout);
    format(string, sizeof(string), "Werbung: %s, Von: %s PH: %d", result, sendername,PlayerInfo[playerid][pPnumber]);
    OOCNews(TEAM_GROVE_COLOR,string);
    format(string, sizeof(string), "~r~Abzug $%d~n~~w~Nachricht hat: %d Characters erreicht", payout, idx);
    GameTextForPlayer(playerid, string, 5000, 5);
    if (PlayerInfo[playerid][pAdmin] < 1){SetTimer("AddsOn", addtimer, 0);adds = 0;}
    }
    }
    else SendClientMessage(playerid,COLOR_RED,"Du brauchst Level 2 um eine /ad zu schreiben.");
    return 1;
    }

  • if(strcmp(cmd, "/advertise", true) == 0 || strcmp(cmd, "/ad", true) == 0)
    {
    if(adsperre(playerid) == 1)
    {
    SendClientMessage(playerid,COLOR_WHITE," Du darfst keine Werbung schreiben da diese Funktion für dich gesperrt wurde.")
    return 1;
    }
    if(PlayerInfo[playerid][pLevel] > 1)
    {
    if(IsPlayerConnected(playerid))
    {
    if(gPlayerLogged[playerid] == 0)
    {
    SendClientMessage(playerid, COLOR_GREY, " Du bist noch nicht eingeloggt !");
    return 1;
    }
    GetPlayerName(playerid, sendername, sizeof(sendername));
    new length = strlen(cmdtext);
    while ((idx < length) && (cmdtext[idx] <= ' '))
    {
    idx++;
    }
    new offset = idx;
    new result[64];
    while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
    {
    result[idx - offset] = cmdtext[idx];
    idx++;
    }
    result[idx - offset] = EOS;
    if(!strlen(result))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "NUTZUNG: (/ad)vertise [text]");
    return 1;
    }
    if ((!adds) && (PlayerInfo[playerid][pAdmin] < 1))
    {
    format(string, sizeof(string), "Bitte Versuch es Später wieder %d sekunden zwischen einer Advertisement !", (addtimer/1000));
    SendClientMessage(playerid, COLOR_GRAD2, string);
    return 1;


    }
    new payout = idx * 5;
    if(GetPlayerMoney(playerid) < payout)
    {
    format(string, sizeof(string), "* Du hast %d characters benutzt das kostet $%d, du hast nicht genug.", offset, payout);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    return 1;
    }
    GivePlayerMoney(playerid, - payout);
    SBizzInfo[7][sbTill] += payout;
    ExtortionSBiz(7, payout);
    format(string, sizeof(string), "Werbung: %s, Von: %s PH: %d", result, sendername,PlayerInfo[playerid][pPnumber]);
    OOCNews(TEAM_GROVE_COLOR,string);
    format(string, sizeof(string), "~r~Abzug $%d~n~~w~Nachricht hat: %d Characters erreicht", payout, idx);
    GameTextForPlayer(playerid, string, 5000, 5);
    if (PlayerInfo[playerid][pAdmin] < 1){SetTimer("AddsOn", addtimer, 0);adds = 0;}
    }
    }
    else SendClientMessage(playerid,COLOR_RED,"Du brauchst Level 2 um eine /ad zu schreiben.");
    return 1;
    }

  • Jetzt bekomme ich errors


    Zeile (27447) : error 012: invalid function call, not a valid address
    Zeile (27447) : Befehl hat keinen Sinn
    Zeile (27447) : Erwartete Zeichen ";", aber gefunden ")"
    Zeile (27447) : Ungültiger Befehl
    Zeile (27447) : Zuviele Fehler in einer Zeile


    Bei der Zeile


    if(adsperre(playerid) == 1)
    {
    SendClientMessage(playerid,COLOR_WHITE," Du darfst keine Werbung schreiben da diese Funktion für dich gesperrt wurde.")
    return 1;
    }

  • if(adsperre(playerid) == 1)
    {
    SendClientMessage(playerid,COLOR_WHITE," Du darfst keine Werbung schreiben da diese Funktion für dich gesperrt wurde.");
    return 1;
    }


    so muss es
    Edit: noch richtig eingerückt

    Mit freundlichen Grüßen
    Developer
    Go/Python Developer | ehm. Webdeveloper | Fachinformatiker Anwendungsentwicklung
    Arbeitet in einem cloudigen Umfeld bei einem der größten deutschen Rechenzentrumsbetreibern

  • FEHLER:
    SendClientMessage(playerid,COLOR_WHITE," Du darfst keine Werbung schreiben da diese Funktion für dich gesperrt wurde.")


    RICHTIG:
    SendClientMessage(playerid,COLOR_WHITE," Du darfst keine Werbung schreiben da diese Funktion für dich gesperrt wurde."); // das ; fehlete :D

  • Klammer bringt leider nix



    Zeile (27447) : error 012: invalid function call, not a valid address
    Zeile (27447) : Befehl hat keinen Sinn
    Zeile (27447) : Erwartete Zeichen ";", aber gefunden ")"
    Zeile (27447) : Ungültiger Befehl
    Zeile (27447) : Zuviele Fehler in einer Zeile


    if(adsperre(playerid) == 1))
    {
    SendClientMessage(playerid,COLOR_WHITE," Du darfst keine Werbung schreiben da diese Funktion für dich gesperrt wurde.")
    return 1;
    }


    und auch das Zeichen ; bringt nix


  • so ist es richtig...

    Mit freundlichen Grüßen
    Developer
    Go/Python Developer | ehm. Webdeveloper | Fachinformatiker Anwendungsentwicklung
    Arbeitet in einem cloudigen Umfeld bei einem der größten deutschen Rechenzentrumsbetreibern

  • Hmmm.... immer noch das gleiche ^^


    Zeile (27447) : error 012: invalid function call, not a valid address
    Zeile (27447) : Befehl hat keinen Sinn
    Zeile (27447) : Erwartete Zeichen ";", aber gefunden ")"
    Zeile (27447) : Ungültiger Befehl
    Zeile (27447) : Zuviele Fehler in einer Zeile


    if(adsperre(playerid) == 1)
    {
    SendClientMessage(playerid,COLOR_WHITE," Du darfst keine Werbung schreiben da diese Funktion für dich gesperrt wurde.");
    return 1;
    }

  • welche Zeile ist denn
    27447 ?

    Mit freundlichen Grüßen
    Developer
    Go/Python Developer | ehm. Webdeveloper | Fachinformatiker Anwendungsentwicklung
    Arbeitet in einem cloudigen Umfeld bei einem der größten deutschen Rechenzentrumsbetreibern

  • mach mal das (playerid) weg

    Mit freundlichen Grüßen
    Developer
    Go/Python Developer | ehm. Webdeveloper | Fachinformatiker Anwendungsentwicklung
    Arbeitet in einem cloudigen Umfeld bei einem der größten deutschen Rechenzentrumsbetreibern

  • Zeile (27447) : Array-Index fehlt (bspw. Array[1], Name: "adsperre")
    Zeile (27521) : Wahrscheinlich unabsichtliche Zuordnung [Beispiel: if(variable
    Zeile (27521) : Array-Index fehlt (bspw. Array[1], Name: "adsperre")
    Zeile (27521) : Leerer Befehl (bspw. ;;)
    Zeile (27552) : Wahrscheinlich unabsichtliche Zuordnung [Beispiel: if(variable
    Zeile (27552) : Array-Index fehlt (bspw. Array[1], Name: "adsperre")
    Zeile (27552) : Leerer Befehl (bspw. ;;)


    27447
    if(adsperre == 1)


    27521
    if adsperre = 0;


    27552
    if adsperre = 1;


    Habe ich definiert


    new adsperre [MAX_PLAYERS];


    //Edit Zeilen noch angehängt
    //edit Definierung eingefügt