Ban Length CMD
#4

pawn Код:
CMD:ban(playerid, params[]) {
    new banId, banLen[12], banX, banT, banTimestamp;

    if (sscanf(params, "us[12]", banId, banLen))
        return SendClientMessage(playerid, -1, "Usage: /ban [id/name] Xy/Xm/Xd/Xh/Xm - X = number");

    if (!IsPlayerConnected(banId))
        return SendClientMessage(playerid, -1, "Invalid player.");

    if (!(banX = strval(banLen)))
        return SendClientMessage(playerid, -1, "Usage: /ban [id/name] Xy/Xm/Xd/Xh/Xm - X = number");

    for (new i = -1; banLen[++ i] != '\0' ;) {
        switch (banLen[i]) {
            case 'y', 'm', 'd', 'h': {
                banT = ((banLen[i] == 'y') ? 31536000 : ((banLen[i] == 'm') ? 2592000 : ((banLen[i] == 'd') ? 86400 : ((banLen[i] == 'h') ? 3600 : 60))));
                printf("debug: LOOP\r\n");
                break;
            }
        }
    }

    if (!banT)
        return SendClientMessage(playerid, -1, "Usage: /ban [id/name] Xy/Xm/Xd/Xh/Xm - X = number");

    banTimestamp = gettime() + (banT * banX);

    printf("debug: TS: %d | banT: %d | banX: %d\r\n", banTimestamp, banT, banX);

    // ban them
    // ban length should be banTimestamp
    // OnPlayerConnect fetch banTimestamp and compare like
    // if (banTimestamp <= gettime())
    // if so then unban them
    // else kick because they're still banned
     return 1;
}
Reply


Messages In This Thread
Ban Length CMD - by XXCrazyMan707XX - 14.03.2015, 07:10
Re: Ban Length CMD - by arlindi - 14.03.2015, 08:43
Re: Ban Length CMD - by XXCrazyMan707XX - 14.03.2015, 09:15
Re: Ban Length CMD - by Djole1337 - 14.03.2015, 11:17

Forum Jump:


Users browsing this thread: 2 Guest(s)