/ban funkt nicht..

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...


    Bei mir funkt /ban nicht, es kommt immer


    Player Not Connected!



    Da der Code:


    CMD:ban(playerid, params[])
    {
    levelerror(4);
    if (sscanf(params, "us[200]", plid, estring)) return SendErrorMessage(playerid, "Usage: /ban <id> <reason>");
    if (!IsPlayerConnected(plid)) return SendErrorMessage(playerid, "Player Not Connected!");
    format(string, sizeof(string), "You have banned {FFFFFF}%s(%d)", PlayerName(plid), plid);
    SendClientMessage(playerid, 0x66FF33, string);
    format(largestring, sizeof(largestring), "Admin %s banned you from the server\r\nReason:%s", PlayerName(playerid), estring);
    ShowPlayerDialog(plid, DIALOG_KICK, DIALOG_STYLE_MSGBOX, "You have been banned", largestring, "Ok", "Cancel");
    GetPlayerIp(plid, PIP, 50);
    new Hour, Minute, Second, Year, Month, Day;
    gettime(Hour, Minute, Second);
    getdate(Year, Month, Day);
    format(string, sizeof(string), "d:d:d on d/d/%d", Hour, Minute, Second, Day, Month, Year);
    format(Query, sizeof(Query), "INSERT INTO `banlog` (`time`, `name`, `ip`, `reason`, `admin`, `banned`) VALUES ('%s', '%s', '%s', '%s', '%s', 1)", string, escpname(plid), PIP, escstring(estring), escpname(playerid));
    mysql_query(Query);
    mysql_free_result();
    Kick(plid);
    return 1;
    }



    Bei /kick die gleiche sache:


    CMD:kick(playerid, params[])
    {
    levelerror(3);
    if(sscanf(params, "us[200]", plid, estring)) return SendErrorMessage(playerid, "Usage: /kick <id> <reason>");
    if (!IsPlayerConnected(plid)) return SendErrorMessage(playerid, "Player Not Connected!");
    format(string, sizeof(string), "You have kicked {FFFFFF}%s(%d)", PlayerName(plid), plid);
    SendClientMessage(playerid, 0x66FF33, string);
    format(largestring, sizeof(largestring), "You have been kicked from the server by admin %s(%d) \r\nReason:%s", escpname(playerid), playerid, estring);
    ShowPlayerDialog(plid, DIALOG_KICK, DIALOG_STYLE_MSGBOX, "You have been kicked", largestring, "Ok", "Cancel");
    Kick(plid);
    return 1;
    }

    3 Mal editiert, zuletzt von Home ()

  • mal eine frage kommt da ein error wenn du das compilst da ich so gesehen kein fehler erkennen kann
    und es für ein problem nur an
    plid



    liegt und darum hast du plid auch definiert du kannst ja gern mal was testen


    CMD:kick(playerid, params[])
    {
    new pID;
    levelerror(3);
    if(sscanf(params, "us[200]", pID, estring)) return SendErrorMessage(playerid, "Usage: /kick <id> <reason>");
    if (!IsPlayerConnected(pID)) return SendErrorMessage(playerid, "Player Not Connected!");
    format(string, sizeof(string), "You have kicked {FFFFFF}%s(%d)", PlayerName(plid), plid);
    SendClientMessage(playerid, 0x66FF33, string);
    format(largestring, sizeof(largestring), "You have been kicked from the server by admin %s(%d) \r\nReason:%s", escpname(playerid), playerid, estring);
    ShowPlayerDialog(pID, DIALOG_KICK, DIALOG_STYLE_MSGBOX, "You have been kicked", largestring, "Ok", "Cancel");
    Kick(pID);
    return 1;
    }

  • Geht immer noch nicht...


    So, sieht es aus:



    CMD:ban(playerid, params[])
    {
    new plid;
    levelerror(4);
    GetPlayerIp(plid, PIP, 50);
    if (sscanf(params, "us[200]", plid, estring)) return SendErrorMessage(playerid, "Usage: /ban <id> <reason>");
    if (!IsPlayerConnected(plid)) return SendErrorMessage(playerid, "Player Not Connected!");
    format(string, sizeof(string), "You have banned {FFFFFF}%s(%d)", PlayerName(plid), plid);
    SendClientMessage(playerid, 0x66FF33, string);
    format(largestring, sizeof(largestring), "Admin %s banned you from the server\r\nReason:%s", PlayerName(playerid), estring);
    ShowPlayerDialog(plid, DIALOG_KICK, DIALOG_STYLE_MSGBOX, "You have been banned", largestring, "Ok", "Cancel");
    new Hour, Minute, Second, Year, Month, Day;
    gettime(Hour, Minute, Second);
    getdate(Year, Month, Day);
    format(string, sizeof(string), "%02d:%02d:%02d on %02d/%02d/%d", Hour, Minute, Second, Day, Month, Year);
    format(Query, sizeof(Query), "INSERT INTO `banlog` (`time`, `name`, `ip`, `reason`, `admin`, `banned`) VALUES ('%s', '%s', '%s', '%s', '%s', 1)", string, escpname(plid), PIP, escstring(estring), escpname(playerid));
    mysql_query(Query);
    mysql_free_result();
    Kick(plid);
    return 1;
    }


    Das ist auch noch da:


    warning 219: local variable "plid" shadows a variable at a preceding level
    warning 219: local variable "plid" shadows a variable at a preceding level

    5 Mal editiert, zuletzt von Home ()

  • Ich habe auch ein Problem mit Ban,funzt zwar alles,aber ich weiß nicht wie ich es in MYSQL Datenbank speichern soll,dass der jenige gebannt ist.


    D4rk kannste mir vllt. helfen per TV oder so?

  • Das sieht jetzt so aus und geht immer noch nicht:



    CMD:ban(playerid, params[])
    {
    levelerror(4);
    plid = strval(params);
    if (sscanf(params, "us", plid, estring)) return SendErrorMessage(playerid, "Usage: /ban <id> <reason>");
    if (!IsPlayerConnected(plid)) return SendErrorMessage(playerid, "Player Not Connected!");
    format(string, sizeof(string), "You have banned {FFFFFF}%s(%d)", PlayerName(plid), plid);
    SendClientMessage(playerid, 0x66FF33, string);
    format(largestring, sizeof(largestring), "Admin %s banned you from the server\r\nReason:%s", PlayerName(playerid), estring);
    ShowPlayerDialog(plid, DIALOG_KICK, DIALOG_STYLE_MSGBOX, "You have been banned", largestring, "Ok", "Cancel");
    GetPlayerIp(plid, PIP, 50);
    new Hour, Minute, Second, Year, Month, Day;
    gettime(Hour, Minute, Second);
    getdate(Year, Month, Day);
    format(string, sizeof(string), "%02d:%02d:%02d on %02d/%02d/%d", Hour, Minute, Second, Day, Month, Year);
    format(Query, sizeof(Query), "INSERT INTO `banlog` (`time`, `name`, `ip`, `reason`, `admin`, `banned`) VALUES ('%s', '%s', '%s', '%s', '%s', 1)", string, escpname(plid), PIP, escstring(estring), escpname(playerid));
    mysql_query(Query);
    mysql_free_result();
    Kick(plid);
    return 1;
    }

    2 Mal editiert, zuletzt von Home ()

  • Versuchs mal mit:


    new plid = strval(params);


    Bin mir mit dem u specifier nicht sicher ob der geht versuchs auch mal mit i anstatt u.
    Bedenke das i nur Ganzzahlen animmt und keine Zeichen oder Gleitkommazahlen.