SetTimerEx - Namen mitgeben

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
  • Aber warum machst du dafür:


    1. nen Timer, wenn du es doch besser direkt überprüfen kannst um dem Cheater keine Sekunde auf deinen Server zu lassen
    2. warum übergibts du dann nicht einfach die ID und machst dann GetPlayerName und vergleichst es dann? oO

  • Mein Timeban System ausm Kopf nachgeschrieben (benötigt dini + dcmd & sscanf):
    new
    playerName[MAX_PLAYERS][MAX_PLAYER_NAME],
    ini[24];


    forward unBan(playername[]);


    public OnPlayerConnect(playerid)
    {
    GetPlayerName(playerid, playerName[playerid], MAX_PLAYER_NAME);
    format(ini, sizeof(ini), "%s.ini", playerName[playerid]);
    if(dini_Exists(ini) && dini_Int(ini,"Banned") == 1) {
    SendClientMessage(playerid, 0xFF0000FF, "Du bist noch gebannt!");
    Kick(playerid);
    }
    return 1;
    }



    public unBan(playername[])
    {
    format(ini, sizeof(ini), "%s.ini", playername);
    if(!dini_Exists(ini)) return 0;
    dini_IntSet(ini,"Banned",0);
    return 1;
    }



    stock TimeBan(playerid, min = 10)
    {
    format(ini, sizeof(ini), "%s.ini", playerName[playerid]);
    if(!dini_Exists(ini)) {
    dini_Create(ini);
    }
    dini_IntSet(ini,"Banned",1);
    SetTimerEx("unBan",min*60000,false,"s",playerName[playerid]);
    Kick(playerid);
    return 1;
    }



    public OnPlayerCommandText(playerid, cmdtext[])
    {
    dcmd(timeban,7,cmdtext);
    return 0;
    }



    dcmd_timeban(playerid, params[])
    {
    new
    target,
    mins;
    if(sscanf(params,"dd",target,mins)) return SendClientMessage(playerid, 0xFF0000FF, "USAGE: /timeban <PlayerID> <Minutes>");
    if(!IsPlayerConnected(target)) return SendClientMessage(playerid, 0xFF0000FF, "Der angegebene User ist nicht online!");
    TimeBan(target,mins);
    return 1;
    }