Te dei uma base, agora faзa o resto ....
pawn Код:
#include <a_samp>
#include <zcmd>
#include <sscanf>
#include <DOF2>
new arq[200];
enum SoClose
{
    Admin
};
new PlayerInfo[MAX_PLAYERS][SoClose];
CMD:seradminstrador(playerid)
{
    if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, " Vocк nгo tem permissгo para usar este comando. ");
    if(!PlayerInfo[playerid][Admin]) return PlayerInfo[playerid][Admin] = 1;
    return 1;
}
CMD:ban(playerid, params[])
{
    new id, mot;
    if(!PlayerInfo[playerid][Admin]) return SendClientMessage(playerid, -1, " Vocк nгo tem permissгo para usar este comando. ");
    if(sscanf(params, "us", id, mot)) return SendClientMessage(playerid, -1, "(Use) /ban [id] [motivo]");
    Ban(id);
    return 1;
}
cmd(trazer, playerid, params[])
{
    new ID , string[120];
    if(!PlayerInfo[playerid][Admin]) return SendClientMessage(playerid, -1, " Vocк nгo tem permissгo para usar este comando!");
    if(sscanf(params, "u", ID)) return SendClientMessage(playerid, -1, "Use: /trazer (ID)");
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, -1, "( Erro ) Id Invalido!");
    format(string, 120, " Vocк trouxe '%s' (%d) atй a sua posiзгo.", GetName(ID), ID);
    SendClientMessage(playerid, -1, string);
    new Float:x, Float:y, Float:z;
    GetPlayerPos(playerid, x, y, z);
    SetPlayerPos(ID, x, y, z);
    SetPlayerInterior(ID, GetPlayerInterior(playerid));
    if(IsPlayerInAnyVehicle(playerid))
    {
        new VehicleID;
        VehicleID = GetPlayerVehicleID(playerid);
        SetVehiclePos(VehicleID, x + 1, y + 1, z);
        PutPlayerInVehicle(playerid, VehicleID, 0);
    }
    return 1;
}
cmd(ir, playerid, params[])
{
    new ID , string[120];
    if(!PlayerInfo[playerid][Admin]) return SendClientMessage(playerid, -1, " Vocк nгo tem permissгo para usar este comando!");
    if(sscanf(params, "u", ID)) return SendClientMessage(playerid, -1, "Use: /ir (ID)");
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, -1, "( Erro ) Id Invalido!");
    format(string, 120, " Vocк se teleportou atй: '%s' (%d)", GetName(ID), ID);
    SendClientMessage(playerid, -1, string);
    new Float:x, Float:y, Float:z;
    GetPlayerPos(ID, x, y, z);
    SetPlayerPos(playerid, x, y, z);
    SetPlayerInterior(playerid, GetPlayerInterior(ID));
    if(IsPlayerInAnyVehicle(playerid))
    {
        new VehicleID;
        VehicleID = GetPlayerVehicleID(playerid);
        SetVehiclePos(VehicleID, x + 1, y + 1, z);
        PutPlayerInVehicle(playerid, VehicleID, 0);
    }
    return 1;
}
stock GetName(playerid)
{
    new Name[24];
    GetPlayerName(playerid,Name,24);
    return Name;
}
public OnFilterScriptInit()
{
    return 1;
}
public OnFilterScriptExit()
{
    DOF2_Exit();
    return 1;
}
public OnPlayerConnect(playerid)
{
    return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
    format(arq, sizeof(arq), "Adminstradores/%s.ini", GetName(playerid));
    if(PlayerInfo[playerid][Admin] == 1) return DOF2_SetInt(arq, "Admin", PlayerInfo[playerid][Admin]);DOF2_SaveFile();
    return 1;
}
public OnPlayerSpawn(playerid)
{
    format(arq, sizeof(arq), "Adminstradores/%s.ini", GetName(playerid));
    PlayerInfo[playerid][Admin] = DOF2_GetInt(arq, "Admin");
    return 1;
}