Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // T-Admin v1, criado por Antonio Rodrigues.
- #include <a_samp>
- #include <dof2>
- #include <zcmd>
- #include <sscanf2>
- #define COR_CINZA 0xC0C0C0AA
- #define COR_AVISO 0xCD5C5CAA
- #define COR_AZULBB 0xCCCCFFFF
- #define DIALOG_NICK ( 0 )
- enum
- {
- MODERADOR,
- ADMINISTRADOR,
- ADMINISTRADOR_GERAL
- }
- new pAdmin[MAX_PLAYERS];
- new bool: Trabalhando[MAX_PLAYERS];
- new bool: MudarNick[MAX_PLAYERS];
- new bool: Muted[MAX_PLAYERS];
- new String[200];
- public OnFilterScriptInit()
- {
- print("\n • T-Admin v1 carregado com sucesso. \n");
- return true;
- }
- public OnFilterScriptExit()
- {
- return true;
- }
- public OnPlayerConnect(playerid)
- {
- new file[70];
- Trabalhando[playerid] = false;
- MudarNick[playerid] = false;
- Muted[playerid] = false;
- format(file, sizeof file, "T-Admin/%s.ini", Nome(playerid));
- pAdmin[playerid] = DOF2_GetInt(file, "Level");
- return true;
- }
- public OnPlayerDisconnect(playerid)
- {
- new file[70];
- format(file, sizeof file, "T-Admin/%s.ini", Nome(playerid));
- DOF2_SetInt(file, "Level", pAdmin[playerid]);
- DOF2_SaveFile();
- return true;
- }
- public OnPlayerText(playerid, text[])
- {
- if(Muted[playerid])
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Você não pode falar, um administrador(a) lhe mutou.");
- return false;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- switch( dialogid )
- {
- case DIALOG_NICK:
- {
- if(response)
- {
- new file0[70];
- new file1[70];
- format(file0, sizeof file0, "T-Admin/%s.ini", Nome(playerid));
- format(file1, sizeof file1, "T-Admin/%s.ini", inputtext);
- if(DOF2_FileExists(file1))
- {
- SendClientMessage(playerid, COR_CINZA, "ERRO: Este nome já está sendo utilizado.");
- cmd_mudarnick(playerid);
- }
- DOF2_RenameFile(file0, file1);
- SetPlayerName(playerid, inputtext);
- MudarNick[playerid] = false;
- }
- }
- }
- return true;
- }
- // ============================= [ COMANDOS ] =============================== //
- // Player:
- CMD:admins(playerid)
- {
- new adminLVL[70];
- SendClientMessage(playerid, 0xFFFF00AA, "Admins Online:");
- for(new i; i < MAX_PLAYERS; i++)
- {
- switch(pAdmin[playerid])
- {
- case 1: adminLVL = "Moderador";
- case 2: adminLVL = "Administrador";
- case 3: adminLVL = "Administrador Geral";
- }
- if(pAdmin[playerid] > 0)
- {
- format(String, sizeof String, "[%s] %s: %s[ID:%d]", Trabalhando ? ("TRABALHANDO") : ("JOGANDO"), adminLVL, Nome(i), i);
- SendClientMessage(playerid, 0xFFFFAA, String);
- }
- }
- return true;
- }
- CMD:relatorio(playerid, params[])
- {
- new adm = 0;
- new relato[300];
- for(new i; i < MAX_PLAYERS; i++)
- {
- if(pAdmin[playerid] > 0)
- {
- adm++;
- }
- }
- if(!adm)
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Não há administradores(as) online.");
- if(sscanf(params, "s", relato))
- return SendClientMessage(playerid, COR_CINZA, "Use: /relatorio [mensagem]");
- format(String, sizeof String, "[>>] Relatorio de %s[ID:%d] [<<]: %s.", Nome(playerid), playerid, relato);
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(pAdmin[i] > 0)
- {
- SendClientMessage(i, 0x00FFFFAA, String);
- }
- }
- SendClientMessage(playerid, COR_CINZA, "[>>] Relatorio enviado com sucesso, aguarde um administrador(a) responder..");
- return true;
- }
- CMD:mudarnick(playerid)
- {
- if(!MudarNick[playerid])
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Você não está autorizado a mudar de nome.");
- ShowPlayerDialog(playerid, DIALOG_NICK, DIALOG_STYLE_INPUT, "Digite abaixo o seu novo nome:", "\n", "Confirmar", "Cancelar");
- return true;
- }
- // Moderador:
- CMD:ajudaadmin(playerid) return cmd_aa(playerid);
- CMD:aa(playerid)
- {
- SendClientMessage(playerid, 0xFFFF00, "Comandos da Administração:");
- SendClientMessage(playerid, 0xFFFFAA, "- MODERADOR: (/a)dminchat, /trabalhar, /kick, /ir, /trazer, /mute, /unmute.");
- SendClientMessage(playerid, 0xFFFFAA, "- ADMINISTRADOR: /dararma, /removerarmas, /dardinheiro, /setskin, /autorizarnick");
- SendClientMessage(playerid, 0xFFFFAA, "- ADMINISTRADOR GERAL: /daradmin, /criarcarro");
- SendClientMessage(playerid, COR_CINZA, "T-Admin v1. Desenvolvido por Antonio Rodrigues.");
- return true;
- }
- CMD:mute(playerid, params[])
- {
- new id;
- new reason[74];
- if(pAdmin[playerid] < MODERADOR)
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Você não faz parte da staff.");
- if(!Trabalhando[playerid])
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Você não está no modo serivço, use /trabalhar.");
- if(sscanf(params, "us", id, reason))
- return SendClientMessage(playerid, COR_CINZA, "Use: /mute [playerid] [reason]");
- if(!IsPlayerConnected(id))
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Este jogador está offline.");
- Muted[id] = true;
- format(String, sizeof String, "O Administrador(a) %s lhe mutou, motivo: %s.", Nome(playerid), reason);
- SendClientMessage(id, COR_CINZA, String);
- format(String, sizeof String, "Você mutou o jogador %s, motivo: %s.", Nome(id), reason);
- SendClientMessage(playerid, COR_CINZA, String);
- return true;
- }
- CMD:unmute(playerid, params[])
- {
- new id;
- if(pAdmin[playerid] < MODERADOR)
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Você não faz parte da staff.");
- if(!Trabalhando[playerid])
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Você não está no modo serivço, use /trabalhar.");
- if(sscanf(params, "u", id))
- return SendClientMessage(playerid, COR_CINZA, "Use: /mute [playerid]");
- if(!IsPlayerConnected(id))
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Este jogador está offline.");
- Muted[id] = false;
- format(String, sizeof String, "O Administrador(a) %s lhe desmutou.", Nome(playerid));
- SendClientMessage(id, COR_CINZA, String);
- format(String, sizeof String, "Você desmutou o jogador %s.", Nome(id));
- SendClientMessage(playerid, COR_CINZA, String);
- return true;
- }
- CMD:adminchat(playerid, params[]) return cmd_a(playerid, params);
- CMD:a(playerid, params[])
- {
- new text[300];
- if(pAdmin[playerid] < 1)
- return SendClientMessage(playerid, COR_CINZA, "Desculpe, você não tem permição para usar este comando.");
- if(sscanf(params, "s", text))
- return SendClientMessage(playerid, COR_CINZA, "Use: (/a)dminchat [text]");
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(pAdmin[i] > 0)
- {
- format(String, sizeof String, "• Admin Chat • %s(%d) diz: . *", Nome(playerid), playerid, text);
- SendClientMessage(i, COR_AZULBB, String);
- }
- }
- return true;
- }
- CMD:trabalhar(playerid)
- {
- if(pAdmin[playerid] < 1)
- return SendClientMessage(playerid, COR_CINZA, "Desculpe, você não tem permição para usar este comando.");
- Trabalhando[playerid] = Trabalhando[playerid] ? (false) : (true);
- format(String, sizeof String, "{FFFFFF}[ {00FFFF}>{FFFFFF} ] O Administrador(a) {00FFFF}%s{FFFFFF} acabou de %s.", Nome(playerid), Trabalhando[playerid] ? ("entrar no modo trabalho") : ("entrar no modo jogo"));
- SendClientMessageToAll(COR_CINZA, String);
- return true;
- }
- CMD:ir(playerid, params[])
- {
- new id;
- new Float: pos[3];
- if(pAdmin[playerid] < MODERADOR)
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Você não faz parte da staff.");
- if(!Trabalhando[playerid])
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Você não está no modo serivço, use /trabalhar.");
- if(sscanf(params, "i", id))
- return SendClientMessage(playerid, COR_CINZA, "Use: /ir [playerid]");
- if(!IsPlayerConnected(id))
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Este jogador não está conectado ao servidor.");
- GetPlayerPos(id, pos[0], pos[1], pos[2]);
- SetPlayerPos(playerid, pos[0]+1, pos[1]+1, pos[2]+1);
- format(String, sizeof String, "• Você foi até o jogador %s.", Nome(id));
- SendClientMessage(playerid, COR_CINZA, String);
- return true;
- }
- CMD:trazer(playerid, params[])
- {
- new id;
- new Float: pos[3];
- if(pAdmin[playerid] < MODERADOR)
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Você não faz parte da staff.");
- if(!Trabalhando[playerid])
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Você não está no modo serivço, use /trabalhar.");
- if(sscanf(params, "i", id))
- return SendClientMessage(playerid, COR_CINZA, "Use: /trazer [playerid]");
- if(!IsPlayerConnected(id))
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Este jogador não está conectado ao servidor.");
- GetPlayerPos(playerid, pos[0], pos[1], pos[2]);
- SetPlayerPos(id, pos[0]+1, pos[1]+1, pos[2]+1);
- format(String, sizeof String, "• Você trouxe o jogador %s.", Nome(id));
- SendClientMessage(playerid, COR_CINZA, String);
- return true;
- }
- CMD:kick(playerid, params[])
- {
- new id;
- new reason[128];
- if(pAdmin[playerid] < MODERADOR)
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Você não faz parte da staff.");
- if(!Trabalhando[playerid])
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Você não está no modo serivço, use /trabalhar.");
- if(sscanf(params, "is", id, reason))
- return SendClientMessage(playerid, COR_CINZA, "Use: /kick [playerid] [reason]");
- if(!IsPlayerConnected(id))
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Este jogador não está conectado ao servidor.");
- format(String, sizeof String, "Punição: O Administrador(a) %s acabou de desconectar o jogador(a) %s, motivo: %s.", Nome(playerid), Nome(id));
- SendClientMessageToAll(COR_AVISO, String);
- return true;
- }
- CMD:respawnplayer(playerid, params[])
- {
- new id;
- if(pAdmin[playerid] < MODERADOR)
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Você não faz parte da staff.");
- if(!Trabalhando[playerid])
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Você não está no modo serivço, use /trabalhar.");
- if(sscanf(params, "i", id))
- return SendClientMessage(playerid, COR_CINZA, "Use: /respawnplayer [playerid]");
- if(!IsPlayerConnected(id))
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Este jogador não está conectado ao servidor.");
- SpawnPlayer(id);
- format(String, sizeof String, "• Você colocou o jogador(a) %s devolta ao local de nascimento.", Nome(id));
- SendClientMessage(playerid, COR_CINZA, String);
- return true;
- }
- // ADMINISTRADOR:
- CMD:autorizarnick(playerid, params[])
- {
- new id;
- if(pAdmin[playerid] < ADMINISTRADOR)
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Você não faz parte da staff.");
- if(!Trabalhando[playerid])
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Você não está no modo serivço, use /trabalhar.");
- if(sscanf(params, "u", id))
- return SendClientMessage(playerid, COR_CINZA, "Use: /autorizarnick [playerid]");
- MudarNick[id] = true;
- format(String, sizeof String, "Você autorizou o jogador %s a mudar de nome.", Nome(id));
- SendClientMessage(playerid, COR_CINZA, String);
- format(String, sizeof String, "O Administrador(a) %s autorizou você a trocar de nome, utilizer /mudarnick.", Nome(playerid));
- SendClientMessage(id, COR_CINZA, String);
- return true;
- }
- CMD:dararma(playerid, params[])
- {
- new id;
- new weapon_config[2];
- if(pAdmin[playerid] < ADMINISTRADOR)
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Você não faz parte da staff.");
- if(!Trabalhando[playerid])
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Você não está no modo serivço, use /trabalhar.");
- if(sscanf(params, "iii", id, weapon_config[0], weapon_config[1]))
- return SendClientMessage(playerid, COR_CINZA, "Use: /dararma [playerid] [weaponid] [value]");
- if(!IsPlayerConnected(id))
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Este jogador não está conectado ao servidor.");
- GivePlayerWeapon(id, weapon_config[0], weapon_config[1]);
- format(String, sizeof String, "• Você deu a arma de id %d com %d de munição para o jogador(a) %s.", weapon_config[0], weapon_config[1], Nome(id));
- SendClientMessage(playerid, COR_CINZA, String);
- return true;
- }
- CMD:removerarmas(playerid, params[])
- {
- new id;
- if(pAdmin[playerid] < ADMINISTRADOR)
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Você não faz parte da staff.");
- if(!Trabalhando[playerid])
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Você não está no modo serivço, use /trabalhar.");
- if(sscanf(params, "i", id))
- return SendClientMessage(playerid, COR_CINZA, "Use: /removerarmas [playerid]");
- if(!IsPlayerConnected(id))
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Este jogador não está conectado ao servidor.");
- ResetPlayerWeapons(id);
- format(String, sizeof String, "• Você removeu todas as armas do jogador(a) %s.", Nome(id));
- SendClientMessage(playerid, COR_CINZA, String);
- return true;
- }
- CMD:dardinheiro(playerid, params[])
- {
- new id;
- new value;
- if(pAdmin[playerid] < ADMINISTRADOR)
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Você não faz parte da staff.");
- if(!Trabalhando[playerid])
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Você não está no modo serivço, use /trabalhar.");
- if(sscanf(params, "ii", id, value))
- return SendClientMessage(playerid, COR_CINZA, "Use: /dardinheiro [playerid] [value]");
- if(!IsPlayerConnected(id))
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Este jogador não está conectado ao servidor.");
- GivePlayerMoney(id, value);
- format(String, sizeof String, "• Você deu a quantia de $%d,00 para o jogador(a) %s.", value, Nome(id));
- SendClientMessage(playerid, COR_CINZA, String);
- return true;
- }
- CMD:setskin(playerid, params[])
- {
- new id;
- new value;
- if(pAdmin[playerid] < ADMINISTRADOR)
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Você não faz parte da staff.");
- if(!Trabalhando[playerid])
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Você não está no modo serivço, use /trabalhar.");
- if(sscanf(params, "ii", id, value))
- return SendClientMessage(playerid, COR_CINZA, "Use: /setskin [playerid] [skin]");
- if(!IsPlayerConnected(id))
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Este jogador não está conectado ao servidor.");
- SetPlayerSkin(id, value);
- format(String, sizeof String, "• Você colocou a skin %d no jogador(a) %s.", value, Nome(id));
- SendClientMessage(playerid, COR_CINZA, String);
- return true;
- }
- // ADMINISTRADOR GERAL:
- CMD:daradmin(playerid, params[])
- {
- new id;
- new value;
- if(pAdmin[playerid] < ADMINISTRADOR)
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Você não faz parte da staff.");
- if(!Trabalhando[playerid])
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Você não está no modo serivço, use /trabalhar.");
- if(sscanf(params, "ii", id, value))
- return SendClientMessage(playerid, COR_CINZA, "Use: /daradmin [playerid] [level]");
- if(!IsPlayerConnected(id))
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Este jogador não está conectado ao servidor.");
- pAdmin[id] = value;
- SendClientMessage(id, COR_CINZA, "- Seja bem vindo a administração! Para ver seus comandos digite /ajudaadmin.");
- format(String, sizeof String, "• Você deu nivel de administrador %s para o jogador(a) %s.", value, Nome(id));
- SendClientMessage(playerid, COR_CINZA, String);
- return true;
- }
- CMD:criarcarro(playerid, params[])
- {
- new veh[3];
- if(pAdmin[playerid] < ADMINISTRADOR)
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Você não faz parte da staff.");
- if(!Trabalhando[playerid])
- return SendClientMessage(playerid, COR_CINZA, "ERRO: Você não está no modo serivço, use /trabalhar.");
- if(sscanf(params, "iii", veh[0], veh[1], veh[2]))
- return SendClientMessage(playerid, COR_CINZA, "Use: /criarcarro [model] [color 1] [color 2]");
- new Float: pos[4];
- GetPlayerPos(playerid, pos[0], pos[1], pos[2]), GetPlayerFacingAngle(playerid, pos[3]);
- CreateVehicle(veh[0], pos[0], pos[1], pos[2], pos[3], veh[1], veh[2], -1);
- return true;
- }
- // ========================================================================== //
- stock Nome(playerid)
- {
- new sendername[MAX_PLAYER_NAME];
- GetPlayerName(playerid, sendername, sizeof sendername);
- return sendername;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement