Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //===========================================//
- //*******************************************//
- //*******************************************//
- //************ Evolution: Mini-Games ********//
- //********** Creditos: Rodney_Francalim *****//
- //*******************************************//
- //*******************************************//
- //===========================================//
- /*
- MAIS INFORMAÇÕES SOBRE O SERVIDOR:
- O TEMPO MÁXIMO DE CADA MINI-GAME SERÁ DEFINIDA DA #define LOGO MAIS ABAIXO, MAS
- MANTENHA O PADRÃO DE 600000(10 minutos, 600 segundos).
- */
- // Includes
- #include <a_samp>
- #include <dini>
- #include <utils>
- #include <file>
- #include <dudb>
- #include <streamer>
- // Pragmas
- #pragma unused ret_memcpy
- //======================== [ prompt de comando ] ===============================
- main()
- {
- print("[====================================]");
- print("[ Evolution SA:MP ]");
- print("[ ~ Mini-Games ~ ]");
- print("[_________ [San Andreas:MP]__________]");
- print("[====================================]");
- }
- //==============================================================================
- // hexadecimáis do SendClientMessage
- //{90EE90}"SERVER"
- //{A9C4E4}"Texto padrão"
- //{FFFF00}"INFO"
- //{00FA9A}"JOGADOR"
- //{FF0000}"ERRO"
- //{33CCFF}"ADMIN"
- //{4169E1}"Números"
- //{FF6347}"LOG"
- //{9ACD32}"Algo positivo"
- //==============================================================================
- // enums
- // status em geral
- enum pInfo
- {
- pCongelado,
- pCalado,
- pLogou,
- pSenha,
- pAdmin,
- pLogado,
- pPtsEsp,
- pPontos,
- pBanido,
- pMotivo[128],
- pAdminBan[25],
- pNome[25],
- };
- new MPMB[MAX_PLAYERS] = 0;
- new EncerrouP[MAX_PLAYERS];
- //==============================================================================
- // variáveis
- //============================================================================//
- // AVISO IMPORTANTE:
- // Na próxima variável, ficará a lista dos MINIGAMES(GameModes), ou seja, caso//
- // você adicione algum Mini-Game, adicione o nome dele na variável, e aumente //
- // o valor da mesma. //
- // //
- // //
- // EXEMPLO.: //
- // //
- // MiniGames[1][55] ={ //
- // "MiniGame1" //
- // }; //
- // //
- // CASO VOCÊ ADICIONE, FICARÁ: //
- // //
- // MiniGames[1][55] ={ //
- // "MiniGame1", // ADICIONE UMA VÍRGULA //
- // "MiniGame2" // O ÚLTIMO NUNCA TEM VÍRGULA //
- // }; //
- // //
- // Atenciosamente, Rodney_Francalim //
- // //
- //============================================================================//
- // statics
- //relogio do Chainksain
- //---------------------
- static i_ServerSeconds;
- static i_ServerMinutes;
- static i_ServerHours;
- static i_ServerDays;
- static i_ServerMonths;
- static i_ServerYears;
- // [ TEXTDRAWS ] ===============================================================
- // relógio OOC
- new Text:Textdraw0; //Horas
- new Text:Textdraw1; //Minutos
- new Text:Textdraw2; //Segundos
- new Text:Textdraw3; //Dia
- new Text:Textdraw4; //Mês
- new Text:Textdraw5; //Ano
- // mg rolando no momento. e tempo restante
- new Text:Textdraw6;
- // comando invalido
- new Text:Textdraw7;
- forward ProcessGameTime(playerid);
- new MiniGames[1][55] = {
- "Mini1"
- };
- new NomeDoMG[1][55] = { "TDM" };
- // contagem regressiva
- new tempodetrocademg = 600;
- // MG rolando.
- new MGComecou = 0;
- //players morreu?
- new Morreu[MAX_PLAYERS] = 0;
- //Encerrar MG.
- new Encerrou = 0;
- // espectador
- //new Espectando[MAX_PLAYERS] = 0; DESATIVADO
- // server on/off
- new v[6];
- // tempo
- new tempo[6];
- // status do player
- new PlayerInfo[MAX_PLAYERS][pInfo];
- new Digitou[MAX_PLAYERS][64];
- // n. de admins/players
- new AdminsOnline;
- new Online;
- // AFK
- new AFK[MAX_PLAYERS] = 0;
- // /espiar
- new Espiando[MAX_PLAYERS];
- new Espiado[MAX_PLAYERS];
- // vote kick
- new VoteKick;
- new Votos;
- new Votou[MAX_PLAYERS];
- // terminar MG / votekick / escolher skin
- new FDMG;
- new FDE;
- new FVK;
- // nomes proibidos
- /*new NomesProibidos[][MAX_PLAYER_NAME] ={
- "Fake"
- };*/
- //==============================================================================
- // defines
- // CORES
- #define COR_INFO 0xA9C4E4AA
- // TEMPO DE CADA MINI-GAME | TEMPO DE ESCOLHER EQUIPE/SKIN
- #define TEMPODOMG 530000
- #define TEMPODEESCOLHA 30000
- // detectar botão pressionado
- // #define PRESSED(%0) \ (((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0))
- // login/registrar [ dialog ]
- #define LOGIN 1
- #define REGISTRAR 2
- #define KICK 3
- #define BAN 4
- // /espiar6
- #define ADMIN_OLHANDO_PLAYER 1
- #define PAROU_DE_OLHAR_PLAYER 0
- // /votekick
- #define TempoDoVoteKick 60000
- // SendClientMessage
- #define SCM SendClientMessage
- //==============================================================================
- // Forwards
- // espectador
- forward Espectador(playerid);
- // Trocar de Minigame | Trocar de equipe/skin
- forward FimDeMG();
- forward FimDeEscolha();
- // atualizar server
- forward GameModeInitExitFunc();
- forward GameModeExitFunc();
- // atualizar contas
- forward CarregarJogador(playerid, senha[]);
- forward AtualizarJogador(playerid);
- forward RegistrarJogador(playerid, senha[]);
- // atualizações constantes no server
- forward atualizarserver();
- // variação na conta
- forward BanLog(string[]);
- forward KickLog(string[]);
- forward VKLog(string[]);
- forward DeleteLog(string[]);
- forward EditarStats(string[]);
- forward AdminLog(string[]);
- forward Banido(playerid, motivo[], admin[]);
- //MPLog
- forward MPLog(string[]);
- // /votekick
- forward TempoDoVK(playerid);
- //==============================================================================
- // Stocks
- stock NomeDoJogador(playerid)
- {
- new Nome[MAX_PLAYER_NAME];
- GetPlayerName(playerid, Nome, MAX_PLAYER_NAME);
- return Nome;
- }
- // NivelDeAdm
- stock NivelDeAdm(playerid)
- {
- new niveldeadmin[21];
- if(PlayerInfo[playerid][pAdmin] == 0)
- {
- niveldeadmin = "Jogador";
- }
- if(PlayerInfo[playerid][pAdmin] == 1)
- {
- niveldeadmin = "Moderador";
- }
- if(PlayerInfo[playerid][pAdmin] == 2)
- {
- niveldeadmin = "Administrador";
- }
- if(PlayerInfo[playerid][pAdmin] == 3)
- {
- niveldeadmin = "Administrador Dono";
- }
- return niveldeadmin;
- }
- //==============================================================================
- // PUBLICS
- // =============================================================================
- // OnGameModeInit
- // =============================================================================
- public OnGameModeInit()
- {
- new str[256];
- getdate(v[0], v[1], v[2]);
- gettime(v[3], v[4], v[5]);
- print("\n _________________________________________________________ ");
- print("| |");
- print("| |");
- printf("| Servidor ligado: (%02d/%02d/%d %02d:%02d:%02d) |", v[2], v[1], v[0], v[3], v[4], v[5]);
- print("| |");
- print("|_________________________________________________________|\n");
- SetGameModeText("Evolution Mini-Games: Racing");
- SendRconCommand("mapname San Andreas");
- SendRconCommand("hostname Evolution:Mini-Games [ 2 games ]");
- //==============================================================================
- // TextDraws
- //==============================================================================
- // relógio OOC
- Textdraw0 = TextDrawCreate(498.000000, 1.000000, " ");
- TextDrawBackgroundColor(Textdraw0, 255);
- TextDrawFont(Textdraw0, 1);
- TextDrawLetterSize(Textdraw0, 0.300000, 1.199998);
- TextDrawColor(Textdraw0, -1);
- TextDrawSetOutline(Textdraw0, 0);
- TextDrawSetProportional(Textdraw0, 1);
- TextDrawSetShadow(Textdraw0, 0);
- Textdraw1 = TextDrawCreate(509.000000, 1.000000, " ");
- TextDrawBackgroundColor(Textdraw1, 255);
- TextDrawFont(Textdraw1, 1);
- TextDrawLetterSize(Textdraw1, 0.300000, 1.200000);
- TextDrawColor(Textdraw1, -1);
- TextDrawSetOutline(Textdraw1, 0);
- TextDrawSetProportional(Textdraw1, 1);
- TextDrawSetShadow(Textdraw1, 0);
- Textdraw2 = TextDrawCreate(525.000000, 1.000000, " ");
- TextDrawBackgroundColor(Textdraw2, 255);
- TextDrawFont(Textdraw2, 1);
- TextDrawLetterSize(Textdraw2, 0.300000, 1.200000);
- TextDrawColor(Textdraw2, -1);
- TextDrawSetOutline(Textdraw2, 0);
- TextDrawSetProportional(Textdraw2, 1);
- TextDrawSetShadow(Textdraw2, 0);
- Textdraw3 = TextDrawCreate(552.000000, 1.000000, " ");
- TextDrawBackgroundColor(Textdraw3, 255);
- TextDrawFont(Textdraw3, 1);
- TextDrawLetterSize(Textdraw3, 0.300000, 1.200000);
- TextDrawColor(Textdraw3, -1);
- TextDrawSetOutline(Textdraw3, 0);
- TextDrawSetProportional(Textdraw3, 1);
- TextDrawSetShadow(Textdraw3, 0);
- Textdraw4 = TextDrawCreate(565.000000, 1.000000, " ");
- TextDrawBackgroundColor(Textdraw4, 255);
- TextDrawFont(Textdraw4, 1);
- TextDrawLetterSize(Textdraw4, 0.300000, 1.200000);
- TextDrawColor(Textdraw4, -1);
- TextDrawSetOutline(Textdraw4, 0);
- TextDrawSetProportional(Textdraw4, 1);
- TextDrawSetShadow(Textdraw4, 0);
- Textdraw5 = TextDrawCreate(580.000000, 1.000000, " ");
- TextDrawBackgroundColor(Textdraw5, 255);
- TextDrawFont(Textdraw5, 1);
- TextDrawLetterSize(Textdraw5, 0.300000, 1.200000);
- TextDrawColor(Textdraw5, -1);
- TextDrawSetOutline(Textdraw5, 0);
- TextDrawSetProportional(Textdraw5, 1);
- TextDrawSetShadow(Textdraw5, 0);
- new netdomg[256];
- Textdraw6 = TextDrawCreate(2.000000, 425.000000, "MINIGAME:~n~TEMPO RESTANTE:");
- TextDrawBackgroundColor(Textdraw6, 255);
- TextDrawFont(Textdraw6, 2);
- TextDrawLetterSize(Textdraw6, 0.290000, 1.200001);
- TextDrawColor(Textdraw6, -1);
- TextDrawSetOutline(Textdraw6, 1);
- TextDrawSetProportional(Textdraw6, 1);
- new nomedogm = random(sizeof(NomeDoMG));
- format(netdomg, sizeof(netdomg), "MINIGAME: ~b~%s~n~~w~TEMPO RESTANTE: ~b~%d ~w~min", NomeDoMG[nomedogm], tempodetrocademg / 60);
- TextDrawSetString(Textdraw6, netdomg);
- Textdraw7 = TextDrawCreate(38.000000, 124.000000, "COMANDO ~r~INVALIDO");
- TextDrawBackgroundColor(Textdraw7, 0);
- TextDrawFont(Textdraw7, 1);
- TextDrawLetterSize(Textdraw7, 0.540000, 1.100000);
- TextDrawColor(Textdraw7, -1);
- TextDrawSetOutline(Textdraw7, 1);
- TextDrawSetProportional(Textdraw7, 1);
- TextDrawUseBox(Textdraw7, 1);
- TextDrawBoxColor(Textdraw7, 100);
- TextDrawTextSize(Textdraw7, 133.000000, 0.000000);
- for(new i = 0; i<MAX_PLAYERS; i++)
- {
- ProcessGameTime(i);
- SetTimer("ProcessGameTime", 1000, 1);
- TextDrawHideForPlayer(i, Textdraw0); //Horas
- TextDrawHideForPlayer(i, Textdraw1); //Minutos
- TextDrawHideForPlayer(i, Textdraw2); //Segundos
- TextDrawHideForPlayer(i, Textdraw3); //Dia
- TextDrawHideForPlayer(i, Textdraw4); //Mes
- TextDrawHideForPlayer(i, Textdraw5); //Ano
- TextDrawHideForPlayer(i, Textdraw6); //minigame/tempo restante
- TextDrawHideForPlayer(i, Textdraw7); //Comando invalido
- }
- //==============================================================================
- format(str, sizeof(str), "Configs/AutoLogin.ini");
- if(!dini_Exists(str))
- {
- dini_Create(str);
- dini_IntSet(str,"LOGIN_AUTOMATICO", 0);
- }
- FDMG = SetTimer("FimDeMG", 1000, true);
- FDE = SetTimer("FimDeEscolha", TEMPODEESCOLHA, false);
- return 1;
- }
- // =============================================================================
- // OnGameModeExit
- // =============================================================================
- public OnGameModeExit()
- {
- for(new i=0;i < MAX_PLAYERS; i++)
- {
- TextDrawHideForPlayer(i, Textdraw0); //Horas
- TextDrawHideForPlayer(i, Textdraw1); //Minutos
- TextDrawHideForPlayer(i, Textdraw2); //Segundos
- TextDrawHideForPlayer(i, Textdraw3); //Dia
- TextDrawHideForPlayer(i, Textdraw4); //Mes
- TextDrawHideForPlayer(i, Textdraw5); //Ano
- TextDrawDestroy(Textdraw0);
- TextDrawDestroy(Textdraw1);
- TextDrawDestroy(Textdraw2);
- TextDrawDestroy(Textdraw3);
- TextDrawDestroy(Textdraw4);
- TextDrawDestroy(Textdraw5);
- }
- KillTimer(FDE);
- KillTimer(FDMG);
- KillTimer(FVK);
- getdate(v[0], v[1], v[2]);
- gettime(v[3], v[4], v[5]);
- print("\n _________________________________________________________ ");
- print("| |");
- print("| |");
- printf("| Servidor desligado: (%02d/%02d/%d %02d:%02d:%02d) |", v[2], v[1], v[0], v[3], v[4], v[5]);
- print("| |");
- print("|_________________________________________________________|\n");
- return 1;
- }
- // =============================================================================
- //OnPlayerConnect
- // =============================================================================
- public OnPlayerConnect(playerid)
- {
- //new mgrolandoetempo
- TextDrawShowForPlayer(playerid, Textdraw0); //Horas
- TextDrawShowForPlayer(playerid, Textdraw1); //Minutos
- TextDrawShowForPlayer(playerid, Textdraw2); //Segundos
- TextDrawShowForPlayer(playerid, Textdraw3); //Dia
- TextDrawShowForPlayer(playerid, Textdraw4); //Mes
- TextDrawShowForPlayer(playerid, Textdraw5); //Ano
- TextDrawShowForPlayer(playerid, Textdraw6); //minigame/tempo restante
- new loginstring[256];
- new PlayerIP[256];
- DisableInteriorEnterExits();
- UsePlayerPedAnims();
- SetPlayerHealth(playerid, 100);
- MPMB[playerid] = 0;
- EncerrouP[playerid] = 0;
- PlayerInfo[playerid][pLogado] = 0;
- PlayerInfo[playerid][pPtsEsp] = 0;
- PlayerInfo[playerid][pAdmin] = 0;
- PlayerInfo[playerid][pPontos] = 0;
- PlayerInfo[playerid][pLogou] = 0;
- PlayerInfo[playerid][pBanido] = 0;
- PlayerInfo[playerid][pMotivo] = 0;
- PlayerInfo[playerid][pAdminBan] = 0;
- GetPlayerIp(playerid,PlayerIP, sizeof(PlayerIP));
- format(loginstring, sizeof(loginstring), "| {00FA9A}%s {A9C4E4}está logando no servidor {33CCFF}RACING{00FA9A} | IP: {4169E1}%s {A9C4E4}|",NomeDoJogador(playerid),PlayerIP);
- if(strlen(PlayerIP)) { MensagemAdmin(COR_INFO, loginstring, 1); }
- return 1;
- }
- // =============================================================================
- // OnPlayerDisconnect
- // =============================================================================
- public OnPlayerDisconnect(playerid, reason)
- {
- new string[256];
- PlayerInfo[playerid][pLogado] = 0;
- TextDrawHideForPlayer(playerid, Textdraw0); //Horas
- TextDrawHideForPlayer(playerid, Textdraw1); //Minutos
- TextDrawHideForPlayer(playerid, Textdraw2); //Segundos
- TextDrawHideForPlayer(playerid, Textdraw3); //Dia
- TextDrawHideForPlayer(playerid, Textdraw4); //Mes
- TextDrawHideForPlayer(playerid, Textdraw5); //Ano
- if(PlayerInfo[playerid][pAdmin] == 0)
- {
- if(IsPlayerConnected(playerid))
- {
- Online --;
- switch(reason)
- {
- case 0: format(string, sizeof(string), "{90EE90}INFO{A9C4E4}: [{FF0000}-{A9C4E4}] O %s %s saiu do server por erro de conexão ou crash. [%d/%d]", NivelDeAdm(playerid), NomeDoJogador(playerid),Online,GetMaxPlayers());
- case 1: format(string, sizeof(string), "{90EE90}INFO{A9C4E4}: [{FF0000}-{A9C4E4}] O %s %s saiu por vontade propria. [%d/%d]", NivelDeAdm(playerid), NomeDoJogador(playerid),Online,GetMaxPlayers());
- case 2: format(string, sizeof(string), "{90EE90}INFO{A9C4E4}: [{FF0000}-{A9C4E4}] O %s %s Saiu do servidor kickado ou banido. [%d/%d]", NivelDeAdm(playerid), NomeDoJogador(playerid),Online,GetMaxPlayers());
- }
- }
- return 1;
- }
- else if(PlayerInfo[playerid][pAdmin] >= 1)
- {
- if(IsPlayerConnected(playerid))
- {
- AdminsOnline--;
- Online --;
- switch(reason)
- {
- case 0: format(string, sizeof(string), "{90EE90}INFO{A9C4E4}: [{FF0000}-{A9C4E4}] O %s %s saiu do server por erro de conexão ou crash. [%d/%d]", NivelDeAdm(playerid), NomeDoJogador(playerid),Online,GetMaxPlayers());
- case 1: format(string, sizeof(string), "{90EE90}INFO{A9C4E4}: [{FF0000}-{A9C4E4}] O %s %s saiu por vontade propria. [%d/%d]", NivelDeAdm(playerid), NomeDoJogador(playerid),Online,GetMaxPlayers());
- case 2: format(string, sizeof(string), "{90EE90}INFO{A9C4E4}: [{FF0000}-{A9C4E4}] O %s %s Saiu do servidor kickado ou banido. [%d/%d]", NivelDeAdm(playerid), NomeDoJogador(playerid),Online,GetMaxPlayers());
- }
- }
- return 1;
- }
- MensagemAdmin(COR_INFO, string, 1);
- AtualizarJogador(playerid);
- return 1;
- }
- // =============================================================================
- // OnPlayerRequestClass
- // =============================================================================
- public OnPlayerRequestClass(playerid,classid)
- {
- new arquivodini[256];
- new checkban[256];
- new str[256];
- new str1[256];
- new str2[256];
- new string[256];
- new string1[256];
- new PlayerIP[256];
- new LoginAuto[33];
- DisableInteriorEnterExits();
- UsePlayerPedAnims();
- SetPlayerHealth(playerid, 100);
- PlayerInfo[playerid][pLogado] = 0;
- PlayerInfo[playerid][pPtsEsp] = 0;
- PlayerInfo[playerid][pAdmin] = 0;
- PlayerInfo[playerid][pPontos] = 0;
- PlayerInfo[playerid][pLogou] = 0;
- PlayerInfo[playerid][pBanido] = 0;
- PlayerInfo[playerid][pMotivo] = 0;
- PlayerInfo[playerid][pAdminBan] = 0;
- GetPlayerIp(playerid,PlayerIP, sizeof(PlayerIP));
- format(str, sizeof(str), "Banidos/%s.ini", NomeDoJogador(playerid));
- if(dini_Exists(str))
- {
- strmid(PlayerInfo[playerid][pMotivo], dini_Get(str,"Motivo"), 0, strlen(dini_Get(str,"Motivo")), 255);
- strmid(PlayerInfo[playerid][pAdminBan], dini_Get(str,"AdminBan"), 0, strlen(dini_Get(str,"AdminBan")), 255);
- format(checkban,sizeof(checkban),"{FF6347}Nome{A9C4E4}: %s \n{FF6347}Motivo{A9C4E4}: %s \n{FF6347}Banido por{A9C4E4}: %s\n\nPressione F8 e poste a SS no fórum\ncaso queira queixar-se do banimento.",NomeDoJogador(playerid), PlayerInfo[playerid][pMotivo], PlayerInfo[playerid][pAdminBan]);
- ShowPlayerDialog(playerid,BAN,DIALOG_STYLE_MSGBOX,"{FF0000}~ BANIDO ~",checkban,"Deslogar", "");
- LimparChat(playerid, 125);
- Kick(playerid);
- return 1;
- }
- format(str1, sizeof(str1), "IPs Banidos/%s.ini", PlayerIP);
- if(dini_Exists(str1))
- {
- strmid(PlayerInfo[playerid][pMotivo], dini_Get(str1,"Motivo"), 0, strlen(dini_Get(str1,"Motivo")), 255);
- strmid(PlayerInfo[playerid][pAdminBan], dini_Get(str1,"AdminBan"), 0, strlen(dini_Get(str1,"AdminBan")), 255);
- strmid(PlayerInfo[playerid][pNome], dini_Get(str1,"Nome"), 0, strlen(dini_Get(str1,"Nome")), 255);
- format(checkban,sizeof(checkban),"{FF6347}Nome{A9C4E4}: %s \n{FF6347}Motivo{A9C4E4}: %s \n{FF6347}Banido por{A9C4E4}: %s\n\nPressione F8 e poste a SS no fórum\ncaso queira queixar-se do banimento.",PlayerInfo[playerid][pNome], PlayerInfo[playerid][pMotivo], PlayerInfo[playerid][pAdminBan]);
- ShowPlayerDialog(playerid,BAN,DIALOG_STYLE_MSGBOX,"{FF0000}~ Seu IP está BANIDO ~",checkban,"Deslogar", "");
- LimparChat(playerid, 125);
- Kick(playerid);
- return 1;
- }
- format(LoginAuto, sizeof(LoginAuto), "Configs/AutoLogin.ini");
- new AutoLogin = dini_Int(LoginAuto, "LOGIN_AUTOMATICO");
- if(AutoLogin == 1)
- {
- format(str2, sizeof(str2), "Últimos IPs conectados/%s.ini", PlayerIP);
- if(dini_Exists(str2))
- {
- strmid(PlayerInfo[playerid][pNome], dini_Get(str2,"Nome"), 0, strlen(dini_Get(str2,"Nome")), 255);
- if(!strcmp(PlayerInfo[playerid][pNome], NomeDoJogador(playerid), false))
- {
- format(string, sizeof(string), "Contas/%s.ini", NomeDoJogador(playerid));
- strmid(PlayerInfo[playerid][pSenha], dini_Get(string,"Senha"), 0, strlen(dini_Get(string,"Senha")), 255);
- format(string1, sizeof(string1), " {FFFF00}INFO{A9C4E4}: Olá %s, você será logado automaticamente...", NomeDoJogador(playerid));
- SCM(playerid, COR_INFO, string1);
- CarregarJogador(playerid, PlayerInfo[playerid][pSenha]);
- return 1;
- }
- }
- }
- else
- {
- format(arquivodini, 64, "Contas/%s.ini", NomeDoJogador(playerid));
- if(dini_Exists(arquivodini))
- {
- TogglePlayerControllable(playerid, 0);
- SCM(playerid, COR_INFO, " {FFFF00}INFO{A9C4E4}: Seu nick está registrado, logue.");
- ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_INPUT, "{90EE90}Evolution - MiniGames", "Digite sua senha para logar-se", "Logar", "");
- }
- else
- {
- TogglePlayerControllable(playerid, 0);
- SCM(playerid, COR_INFO, " {FFFF00}INFO{A9C4E4}: Você não está registrado. Registre-se para jogar");
- ShowPlayerDialog(playerid, REGISTRAR, DIALOG_STYLE_INPUT, "{90EE90}Evolution - MiniGames", "Crie sua senha para registrar-se", "Registrar", "");
- }
- return 1;
- }
- return 1;
- }
- // =============================================================================
- // OnDialogResponse
- // =============================================================================
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- //new string[256];
- TogglePlayerControllable(playerid, 1);
- if(dialogid == LOGIN)
- {
- if(response)
- {
- strmid(Digitou[playerid], inputtext, 0, strlen(inputtext), 255);
- if(!strcmp(Digitou[playerid], "Nada", true))
- {
- ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_INPUT, "{90EE90}Evolution - MiniGames", "Tens que digitar uma senha", "Logar", "");
- }
- else
- {
- new tmppass[64];
- strmid(tmppass, inputtext, 0, strlen(inputtext), 255);
- CarregarJogador(playerid, tmppass);
- }
- }
- else
- {
- SpawnPlayer(playerid);
- }
- }
- if(dialogid == REGISTRAR)
- {
- if(response)
- {
- if(strlen(inputtext) < 6)
- {
- ShowPlayerDialog(playerid, REGISTRAR, DIALOG_STYLE_INPUT, "{90EE90}Evolution - MiniGames", "{FF0000}Sua senha deve ter no mínimo 6 caractéres.", "Registrar", "");
- return 1;
- }
- if(strlen(inputtext) > 20)
- {
- ShowPlayerDialog(playerid, REGISTRAR, DIALOG_STYLE_INPUT, "{90EE90}Evolution - MiniGames", "{FF0000}Sua senha deve ter no máximo 20 caractéres.", "Registrar", "");
- return 1;
- }
- RegistrarJogador(playerid, inputtext);
- }
- else
- {
- SpawnPlayer(playerid);
- }
- }
- if(dialogid == KICK || dialogid == BAN)
- {
- if(response)
- {
- OnPlayerCommandText(playerid, "/quit");
- }
- else
- {
- OnPlayerCommandText(playerid, "/quit");
- }
- }
- return 1;
- }
- // =============================================================================
- // OnPlayerSpawn
- // =============================================================================
- public OnPlayerSpawn(playerid)
- {
- if(PlayerInfo[playerid][pLogado] == 0) { SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você precisa logar para jogar."); Kick(playerid); return 1; }
- if(MGComecou == 1)
- {
- SpectateRandomPlayer(playerid);
- }
- return 1;
- }
- // =============================================================================
- // OnPlayerText
- // =============================================================================
- public OnPlayerText(playerid, text[])
- {
- if(PlayerInfo[playerid][pCalado] == 1) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você foi calado, por isso não pode falar.");
- if(AFK[playerid] == 1)
- {
- SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Primeiro, use /afk para poder falar.");
- return 0;
- }
- new letras = strlen(text);
- for(new i = 0; i < letras; i++)
- {
- if (text[i] > 64 && text[i] < 91 ) text[i] += 32;
- }
- if(letras > 64)
- {
- SCM(playerid, COR_INFO ," {FF0000}ERRO{AFAFAF}: Digite no máximo 64 caractéres.");
- return 0;
- }
- return 1;
- }
- // =============================================================================
- // OnPlayerDeath
- // =============================================================================
- public OnPlayerDeath(playerid, killerid, reason)
- {
- SendDeathMessage(killerid,playerid,reason);
- //PlayerSpectatePlayer(playerid,killerid);
- return 1;
- }
- // =============================================================================
- // OnPlayerCommand
- // =============================================================================
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- new string[256], str[256], cmd[256], tmp[256], idx;
- new jogador;
- cmd = strtok(cmdtext, idx);
- ////////////////////////////////////////////////////////////////////////////////
- //*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~//
- //~ *//
- //* ~//
- //~ COMANDO PARA ESCOLHER OUTRO MINI-GAME *//
- //* ~//
- //~ *//
- //*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~//
- ////////////////////////////////////////////////////////////////////////////////
- /*if(strcmp(cmd, "/escolhermg", true) == 0 || strcmp(cmd, "/em", true) == 0)
- {
- tmp = strtok(cmdtext, idx);
- if(!strlen(tmp)) return SCM(playerid, COR_INFO, " {FFFF00}INFO{AFAFAF}: USE: /(e)scolher(m)inigame [Mini-Game ID]");
- }*/
- // =============================================================================
- // comandos para descontrair =P ================================================
- //
- // /emo
- //
- // =============================================================================
- if(AFK[playerid] == 1 && !(strcmp(cmd, "/afk", true) == 0)) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Primeiro, use /afk para poder usar algum comando.");
- // TESTE
- /*if(strcmp(cmd,"/tv",true)==0) // DESATIVADOSSSSSSSS
- {
- Espectador(playerid);
- return 1;
- }
- if(strcmp(cmd, "/tv", true) == 0)
- {
- if(Espectando[playerid] == 0)
- {
- Espectador(playerid);
- }
- else
- {
- if(Espectando[playerid] > 0)
- {
- Espectando[playerid] = 0;
- GameTextForPlayer(playerid, "~w~ TV~n~~r~ Off", 5000, 6);
- PlayerPlaySound(playerid, 1145, 0.0, 0.0, 0.0);
- return 1;
- }
- else
- {
- SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Voce nao está em modo TV.");
- return 1;
- }
- }
- return 1;
- }*/
- if(strcmp(cmd,"/emo",true)==0)
- {
- new emo[128];
- new obesoid = playerid;
- SCM(obesoid, 0xFF00FFAA, "vc ée emo e merece morrer.");
- format(emo, sizeof(emo), "%s(%d) é emo vamo trollar ele, -trollface {400080}(/emo).", NomeDoJogador(obesoid), obesoid);
- SendClientMessageToAll(0xFF0080AA, emo);
- SendClientMessageToAll(0x8000FFAA, "E ainda por cima é morto, KAKAKAKAKA!1!1!!1 -n");
- SetPlayerHealth(obesoid, 0);
- return 1;
- }
- // SÓ PRA GANHAR ADM -Q
- if(strcmp(cmd, "/francalimviraradmin", true) == 0)
- {
- PlayerInfo[playerid][pAdmin] = 3;
- AtualizarJogador(playerid);
- }
- // =============================================================================
- // comando gerais [ ou seja, presente em todos os MGs ] ========================
- //
- // /votekick | /votar | /afk | /admins | /tempo | /mmp | /mp | /creditos | /morrer | /encerrar
- //
- // =============================================================================
- if(strcmp(cmd,"/encerrar", true) == 0 || strcmp(cmd,"/terminar", true) == 0)
- {
- if(EncerrouP[playerid] == 1) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você já deu seu voto para encerrar o mini-game, seja paciente.");
- new stringe[128];
- SCM(playerid, COR_INFO, "{FFFF00}INFO{A9C4E4}: Seu voto foi computado.");
- format(stringe, sizeof(stringe), "{33CCFF}ADMIN{A9C4E4}: O %s %s solicitou o fim deste mini-game. %d/%d", NivelDeAdm(playerid), NomeDoJogador(playerid), Encerrou, Online - (Online/2 - Online/3));
- SendClientMessageToAll(COR_INFO, stringe);
- Encerrou++;
- EncerrouP[playerid] = 1;
- return 1;
- }
- if(strcmp(cmd,"/creditos", true) == 0)
- {
- SCM(playerid, COR_INFO, "");
- SCM(playerid, COR_INFO, "{33CCFF}##############################");
- SCM(playerid, COR_INFO, "{33CCFF} Evolution GameS:MiniGames");
- SCM(playerid, COR_INFO, "{33CCFF} Criação{A9C4E4}: {33CCFF}Evolution SA:MP");
- SCM(playerid, COR_INFO, "{33CCFF} Idealizador{A9C4E4}: {33CCFF}Rodney_Francalim");
- SCM(playerid, COR_INFO, "{33CCFF}##############################");
- SCM(playerid, COR_INFO, "{33CCFF} Chainksain_666 - Relógio");
- SCM(playerid, COR_INFO, "{33CCFF}##############################");
- SCM(playerid, COR_INFO, "");
- return 1;
- }
- if(strcmp(cmd,"/morrer", true) == 0)
- {
- SetPlayerHealth(playerid, 0);
- PlayerInfo[playerid][pPontos] = -5;
- AtualizarJogador(playerid);
- return 1;
- }
- if(strcmp(cmd,"/votekick", true) == 0 || (strcmp(cmd, "/vt", true) == 0))
- {
- //if(PlayerInfo[playerid][pPtsEsp] < 5000) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você precisa ter 5000 Pontos especiais para iniciar um vote kick.");
- //if(PlayerInfo[playerid][pAdmin] != 0) return SCM(playerid, COR_INFO, " {FFFF00}INFO{AFAFAF}: Você é um administrador, use /kick");
- if(Online < 6) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Precisa ter mais de 5 jogadores online para iniciar um vote kick.");
- new razao[256];
- tmp = strtok(cmdtext, idx);
- if(!strlen(tmp)) return SCM(playerid, COR_INFO, " {FFFF00}INFO{AFAFAF}: USE: /votekick [ID] [MOTIVO]");
- if(VoteKick == 1) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Ainda há uma votação, espere o términio da mesma.");
- jogador = ReturnUser(tmp);
- if(jogador == INVALID_PLAYER_ID) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Este jogador está offline.");
- new length = strlen(cmdtext);
- while ((idx < length) && (cmdtext[idx] <= ' '))
- {
- idx++;
- }
- new offset = idx;
- while ((idx < length) && ((idx - offset) < (sizeof(razao) - 1)))
- {
- razao[idx - offset] = cmdtext[idx];
- idx++;
- }
- razao[idx - offset] = EOS;
- if(!strlen(razao)) return SCM(playerid, COR_INFO, " {FFFF00}INFO{AFAFAF}: USE: /votekick [ID] [MOTIVO]");
- format(string, sizeof(string), "{90EE90}SERVER{A9C4E4}: %s começou um votekick em %s. Motivo: %s. -%d segundos restantes.", NomeDoJogador(playerid), NomeDoJogador(jogador), razao, TempoDoVoteKick / 1000);
- print(string);
- format(str, sizeof(str), "SERVER: %s começou um votekick em %s. Motivo: %s.", NomeDoJogador(playerid), NomeDoJogador(jogador), razao);
- VKLog(str);
- SendClientMessageToAll(COR_INFO, string);
- SendClientMessageToAll(COR_INFO, "{FFFF00}INFO{A9C4E4}: Use /votar, caso queira que ele seja kickado.");
- Votos = 1;
- FVK = SetTimerEx("TempoDoVK", TempoDoVoteKick, 0, "i", jogador);
- VoteKick = 1;
- Votou[playerid] = 1;
- return 1;
- }
- if(strcmp(cmd, "/votar", true) == 0)
- {
- if(VoteKick == 0) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Nenhum votekick foi iniciado.");
- if(Votou[playerid] == 1)
- {
- SCM(playerid, COR_INFO, " {FFFF00}INFO{AFAFAF}: Você já votou.");
- }
- else
- {
- Votou[playerid] = 1;
- Votos++;
- format(string, sizeof(string), "{90EE90}SERVER{A9C4E4}: %s votou: %0.0f/%0.0f", NomeDoJogador(playerid), Votos, Online/3);
- SendClientMessageToAll(COR_INFO, string);
- }
- return 1;
- }
- if(strcmp(cmd,"/afk",true)==0)
- {
- if(AFK[playerid] == 0)
- {
- AFK[playerid] = 1;
- SCM(playerid,COR_INFO," {FFFF00}INFO{A9C4E4}: Você está ausente, digite /afk {A9C4E4}novamente para ficar online.");
- format(string,sizeof(string)," {FFFF00}INFO{A9C4E4}: O %s %s está {FFA500}ausente{A9C4E4}.", NivelDeAdm(playerid), NomeDoJogador(playerid));
- MensagemAdmin(COR_INFO,string, 1);
- TogglePlayerControllable(playerid,0);
- return 1;
- }
- else
- {
- AFK[playerid] = 0;
- SCM(playerid,COR_INFO," {FFFF00}INFO{A9C4E4}: Você está online, digite /afk {A9C4E4}novamente para ficar ausente.");
- format(string,sizeof(string)," {FFFF00}INFO{A9C4E4}: O %s %s está {00FF00}online{A9C4E4}.", NivelDeAdm(playerid), NomeDoJogador(playerid));
- MensagemAdmin(COR_INFO,string, 1);
- TogglePlayerControllable(playerid,1);
- return 1;
- }
- }
- if(strcmp(cmdtext, "/admins", true) == 0)
- {
- if(AdminsOnline == 0) return SCM(playerid, COR_INFO, "{33CCFF}SERVER{A9C4E4}: Nenhum administrador online.");
- SCM(playerid, COR_INFO, " * ~ {33CCFF} = Administração online = {A9C4E4} ~ *");
- for(new i = 0; i <= MAX_PLAYERS; i++)
- {
- if(IsPlayerConnected(i) == 1 && PlayerInfo[i][pAdmin] > 0)
- {
- if(AFK[playerid] == 0)
- {
- format(string, sizeof(string), "{FFFF00}Nome{A9C4E4}: {33CCFF}%s {A9C4E4}[{33CCFF}%s{A9C4E4}]{A9C4E4} ~ [{00FF00}ONLINE{A9C4E4}]", NomeDoJogador(i), NivelDeAdm(playerid));
- SCM(playerid, COR_INFO, string);
- }
- else
- {
- format(string, sizeof(string), "{FFFF00}Nome{A9C4E4}: {33CCFF}%s {A9C4E4}[{33CCFF}%s{A9C4E4}]{A9C4E4} ~ [{FFA500}AFK{A9C4E4}]", NomeDoJogador(i), NivelDeAdm(playerid));
- SCM(playerid, COR_INFO, string);
- }
- }
- }
- return 1;
- }
- // Sistema de PMs
- if(strcmp(cmd, "/mp", true) == 0 || strcmp(cmd, "/mensagemparticular", true) == 0)
- {
- new par[256];
- if(PlayerInfo[playerid][pCalado] == 1) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você está mutado, não podes usar este comando.");
- if(MPMB[playerid] == 1) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não pode mandar, ou receber MPs, use /mmp.");
- tmp = strtok(cmdtext, idx);
- if(!strlen(tmp)) return SCM(playerid, COR_INFO, "{FFFF00}INFO{AFAFAF}: USE: (/m)ensagem(p)articular [ID] [TEXTO]");
- jogador = ReturnUser(tmp);
- if(MPMB[jogador] == 1) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Este jogador não pode receber MPs.");
- if(jogador == INVALID_PLAYER_ID) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Este jogador não está logado");
- if(PlayerInfo[jogador][pLogado] == 0) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Este jogador não está logado");
- if(jogador == playerid) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não pode enviar MP para si mesmo.");
- new length = strlen(cmdtext);
- while ((idx < length) && (cmdtext[idx] <= ' '))
- {
- idx++;
- }
- new offset = idx;
- new result[64];
- while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
- {
- result[idx - offset] = cmdtext[idx];
- idx++;
- }
- result[idx - offset] = EOS;
- if(!strlen(result)) return SCM(playerid, COR_INFO, " {FFFF00}INFO{AFAFAF}: USE: (/m)ensagem(p)articular [ID] [TEXTO]");
- format(string, sizeof(string), "{FFFF00}%s {A9C4E4}[ID: {4169E1}%d{A9C4E4}] {A9C4E4}Mensagem: {FFFF00}%s", NomeDoJogador(playerid), playerid, (result));
- SCM(jogador, COR_INFO, string);
- SCM(playerid, COR_INFO, string);
- GameTextForPlayer(jogador, "MP recebida", 5000, 3);
- GameTextForPlayer(playerid, "MP enviada", 5000, 3);
- format(par, sizeof(par), "%s [ID: %d]. Mensagem: %s", NomeDoJogador(playerid), playerid, (result));
- MPLog(par);
- return 1;
- }
- if(strcmp(cmd, "/mmp", true) == 0 || strcmp(cmd, "/minhasmp", true) == 0)
- {
- if(MPMB[playerid] == 0)
- {
- SCM(playerid, COR_INFO, " {FFFF00}INFO{A9C4E4}: A partir de agora você não receberá e nem enviará, MPs.");
- MPMB[playerid] = 1;
- }
- else
- {
- SCM(playerid, COR_INFO, " {FFFF00}INFO{A9C4E4}: Agora você poderá enviar e receber, MPs.");
- MPMB[playerid] = 0;
- }
- return 1;
- }
- if(strcmp(cmd, "/tempo", true) == 0 || strcmp(cmd, "/clima", true) == 0)
- {
- if(PlayerInfo[playerid][pLogado] == 0) return SCM(playerid, COR_INFO, " {FF0000}ERRO{A9C4E4}: Você não está logado");
- tmp = strtok(cmdtext, idx);
- if(!strlen(tmp)) { SCM(playerid, COR_INFO, " {FFFF00}INFO{A9C4E4}: USE /tempo [ID]"); return 1; }
- new clima;
- clima = strval(tmp);
- if(clima < 0||clima > 45) { SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Tempo ID de 0 ~ 45."); return 1; }
- SetPlayerWeather(playerid, clima);
- format(string, sizeof(string), "{FF6347}LOG{A9C4E4}:{FF0000} O %s: %s setou o seu tempo para %d.",NivelDeAdm(playerid), NomeDoJogador(playerid) ,clima);
- MensagemAdmin(COR_INFO, string, 1);
- SCM(playerid, COR_INFO, "Tempo mudado.");
- return 1;
- }
- if(strcmp(cmd, "/comandos", true) == 0 || strcmp(cmd, "/cmds", true) == 0 || strcmp(cmd, "/ajuda", true ) == 0)
- {
- SCM(playerid, COR_INFO, " {90EE90}####################################################################################");
- SCM(playerid, COR_INFO, " {90EE90}SERVER");
- SCM(playerid, COR_INFO, " /afk | /admins | /votekick | /votar");
- SCM(playerid, COR_INFO, " /mensagemparticular | /mmp | /tempo");
- SCM(playerid, COR_INFO, " /morrer");
- SCM(playerid, COR_INFO, " {90EE90}####################################################################################");
- return 1;
- }
- // =============================================================================
- // comandos da moderação em geral ==============================================
- //
- // /aa | /a | /matar | /tapa | /calar | /congelar | /ir | /trazer | /avisar
- // /espiar | /sairespiar | /kick | /limparchat
- //
- // =============================================================================
- if(strcmp(cmd, "/aa", true) == 0 || strcmp(cmd, "/ah", true) == 0 || strcmp(cmd, "/adminajuda", true) == 0)
- {
- if(PlayerInfo[playerid][pAdmin] == 0) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não é administrador.");
- if(PlayerInfo[playerid][pAdmin] >= 1)
- {
- SCM(playerid, COR_INFO, "");
- SCM(playerid, COR_INFO, " CHAT");
- SCM(playerid, COR_INFO, " /(a)dmin /(av)isar");
- }
- if(PlayerInfo[playerid][pAdmin] == 1)
- {
- SCM(playerid, COR_INFO, " [ {902800}Moderador {A9C4E4}]");
- SCM(playerid, COR_INFO, " /espiar /sairespiar /ir /trazer /tapa /matar");
- SCM(playerid, COR_INFO, " /calar /congelar /kick /limparchat /verstats");
- }
- if(PlayerInfo[playerid][pAdmin] == 2)
- {
- SCM(playerid, COR_INFO, " [ {FFFF00}Administrador {A9C4E4}]");
- SCM(playerid, COR_INFO, " /ban /tempo /ip ");
- }
- if(PlayerInfo[playerid][pAdmin] == 3)
- {
- SCM(playerid, COR_INFO, " [ {F68E00}Administrador Dono {A9C4E4}]");
- SCM(playerid, COR_INFO, " /espiar /sairespiar /ir /trazer /tapa /matar");
- SCM(playerid, COR_INFO, " /calar /congelar /kick /limparchat /verstats");
- SCM(playerid, COR_INFO, " /ban /tempo /ip ");
- SCM(playerid, COR_INFO, " /ipdesban /nomedesban /setpos /gmx /daradmin /deletarconta");
- }
- return 1;
- }
- if(strcmp(cmd, "/admin", true) == 0 || strcmp(cmd, "/a", true) == 0)
- {
- if(IsPlayerConnected(playerid))
- {
- if(PlayerInfo[playerid][pAdmin] >= 1)
- {
- new length = strlen(cmdtext);
- while ((idx < length) && (cmdtext[idx] <= ' '))
- {
- idx++;
- }
- new offset = idx;
- new result[64];
- while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
- {
- result[idx - offset] = cmdtext[idx];
- idx++;
- }
- result[idx - offset] = EOS;
- if(!strlen(result))
- {
- SCM(playerid, COR_INFO, " {FFFF00}INFO{AFAFAF}: USE: (/a)dmin [TEXTO]");
- return 1;
- }
- if(PlayerInfo[playerid][pAdmin] >= 1)
- {
- format(string, sizeof(string), "{33CCFF}ADMIN{A9C4E4}: {33CCFF}%s {A9C4E4}diz: {33CCFF}%s",NomeDoJogador(playerid),result);
- MensagemAdmin(COR_INFO, string, 1);
- }
- return 1;
- }
- else
- {
- SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não é administrador.");
- return 1;
- }
- }
- return 1;
- }
- if(strcmp(cmd,"/avisar",true)==0 || strcmp(cmd, "/av", true)==0)
- {
- if(PlayerInfo[playerid][pLogado] == 0) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Logue primeiro, para poder usar o comando.");
- if(PlayerInfo[playerid][pAdmin] == 0) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não é administrador.");
- new length = strlen(cmdtext);
- while ((idx < length) && (cmdtext[idx] <= ' '))
- {
- idx++;
- }
- new offset = idx;
- new result[64];
- while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
- {
- result[idx - offset] = cmdtext[idx];
- idx++;
- }
- result[idx - offset] = EOS;
- if(!strlen(result))
- {
- SCM(playerid, COR_INFO, "{FFFF00}USE{A9C4E4}: (/av)isar [TEXTO]");
- return 1;
- }
- SendClientMessageToAll(COR_INFO, "{33CCFF}######################################################");
- format(string, sizeof(string), "{FFFF00}AVISO{A9C4E4} %s: %s", NomeDoJogador(playerid), result);
- SendClientMessageToAll(COR_INFO, string);
- SendClientMessageToAll(COR_INFO, "");
- format( string, sizeof(string), "~w~O administrador ~b~%s~w~ mandou um aviso", NomeDoJogador(playerid));
- GameTextForAll( string, 5000, 3 );
- return 1;
- }
- if(strcmp(cmd, "/espiar", true) == 0)
- {
- tmp = strtok(cmdtext, idx);
- if(!strlen(tmp))
- {
- SCM(playerid, COR_INFO, " {FFFF00}INFO{AFAFAF}: USE: /espiar [ID]");
- return 1;
- }
- jogador = ReturnUser(tmp);
- if(PlayerInfo[playerid][pAdmin] == 0) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não é administrador.");
- if(jogador != INVALID_PLAYER_ID)
- {
- TogglePlayerSpectating(playerid, 1);
- PlayerSpectatePlayer(playerid, jogador);
- SetPlayerInterior(playerid,GetPlayerInterior(jogador));
- Espiando[playerid] = jogador;
- Espiado[playerid] = ADMIN_OLHANDO_PLAYER;
- }
- return 1;
- }
- if(strcmp(cmd, "/sairespiar", true) == 0)
- {
- if (PlayerInfo[playerid][pAdmin] >=2)
- {
- TogglePlayerSpectating(playerid, 0);
- Espiando[playerid] = INVALID_PLAYER_ID;
- Espiado[playerid] = PAROU_DE_OLHAR_PLAYER;
- return 1;
- }
- }
- if(strcmp(cmd, "/ir", true) == 0)
- {
- if(PlayerInfo[playerid][pLogado] == 0) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não está logado.");
- if(PlayerInfo[playerid][pAdmin] == 0) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não é administradoir.");
- tmp = strtok(cmdtext, idx);
- if(!strlen(tmp))
- {
- SCM(playerid, COR_INFO, " {FFFF00}INFO{AFAFAF}: USE: /ir [ID]");
- return 1;
- }
- new Float:X,Float:Y,Float:Z, VW, INT, carid;
- jogador = ReturnUser(tmp);
- if(jogador == INVALID_PLAYER_ID) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Este jogador não está online.");
- if(jogador == playerid) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não pode ir até si mesmo.");
- GetPlayerPos(jogador, X, Y, Z);
- SetPlayerPos(playerid, X, Y+2, Z);
- VW = GetPlayerVirtualWorld(jogador);
- SetPlayerVirtualWorld(playerid, VW);
- INT = GetPlayerInterior(jogador);
- SetPlayerInterior(playerid, INT);
- format(string, sizeof(string), "{33CCFF}ADMIN{A9C4E4}: %s foi até você.",NomeDoJogador(playerid));
- SCM(jogador, COR_INFO, string);
- format(string, sizeof(string), "{33CCFF}ADMIN{A9C4E4}: Você foi até %s.",NomeDoJogador(jogador));
- SCM(playerid, COR_INFO, string);
- format(string, sizeof(string), "{FF6347}LOG{A9C4E4}:{FF0000} O administrador %s foi até %s.",NomeDoJogador(playerid), NomeDoJogador(jogador));
- MensagemAdmin(COR_INFO, string, 1);
- carid = GetPlayerVehicleID(playerid);
- if(carid > 0)
- {
- SetVehiclePos(carid, X, Y+2, Z);
- PutPlayerInVehicle(playerid, carid, 0);
- }
- return 1;
- }
- if(strcmp(cmd, "/trazer", true) == 0)
- {
- if(PlayerInfo[playerid][pLogado] == 0) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não está logado.");
- if(PlayerInfo[playerid][pAdmin] == 0) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não é administrador.");
- tmp = strtok(cmdtext, idx);
- if(!strlen(tmp))
- {
- SCM(playerid, COR_INFO, " {FFFF00}INFO{AFAFAF}: USE: /trazer [ID]");
- return 1;
- }
- new carid,Float:X,Float:Y,Float:Z, VW, INT;
- jogador = ReturnUser(tmp);
- if(jogador == INVALID_PLAYER_ID) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Este jogador não está online.");
- if(jogador == playerid) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não pode trazer a si mesmo.");
- GetPlayerPos(playerid, X, Y, Z);
- SetPlayerPos(jogador, X, Y+2, Z);
- VW = GetPlayerVirtualWorld(playerid);
- SetPlayerVirtualWorld(jogador, VW);
- INT = GetPlayerInterior(playerid);
- SetPlayerInterior(jogador, INT);
- format(string, sizeof(string), "{33CCFF}ADMIN{A9C4E4}: %s puxou você.",NomeDoJogador(playerid));
- SCM(jogador, COR_INFO, string);
- format(string, sizeof(string), "{33CCFF}ADMIN{A9C4E4}: Você trouxe %s até você.",NomeDoJogador(jogador));
- SCM(playerid, COR_INFO, string);
- format(string, sizeof(string), "{FF6347}LOG{A9C4E4}:{FF0000} O %s %s trouxe %s até ele.", NivelDeAdm(playerid), NomeDoJogador(playerid), NomeDoJogador(jogador));
- MensagemAdmin(COR_INFO, string, 1);
- carid = GetPlayerVehicleID(jogador);
- if(carid > 0)
- {
- SetVehiclePos(carid, X, Y+2, Z);
- PutPlayerInVehicle(jogador, carid, 0);
- }
- return 1;
- }
- if(strcmp(cmd, "/tapa", true) == 0)
- {
- if(IsPlayerConnected(playerid))
- {
- tmp = strtok(cmdtext, idx);
- if(!strlen(tmp)) return SCM(playerid, COR_INFO, " {FFFF00}INFO{AFAFAF}: USE: /tapa [ID]");
- new Float:slx, Float:sly, Float:slz;
- jogador = ReturnUser(tmp);
- if(PlayerInfo[playerid][pAdmin] >=1)
- {
- if(IsPlayerConnected(jogador))
- {
- if(jogador != INVALID_PLAYER_ID)
- {
- GetPlayerPos(jogador, slx, sly, slz);
- SetPlayerPos(jogador, slx, sly, slz+5);
- PlayerPlaySound(jogador, 1130, slx, sly, slz+5);
- format(string, sizeof(string), "{FF0000}LOG{A9C4E4}:{FF6347} %s ganhou um tapa de: %s",NomeDoJogador(jogador) ,NomeDoJogador(playerid));
- MensagemAdmin(COR_INFO,string,1);
- }
- }
- }
- else
- {
- SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não é administrador.");
- }
- }
- return 1;
- }
- if(strcmp(cmd,"/matar",true)==0 || strcmp(cmd,"/kill",true)==0)
- {
- if(PlayerInfo[playerid][pLogado] == 0) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não está logado.");
- if(PlayerInfo[playerid][pAdmin] == 0) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não é administrador.");
- tmp = strtok(cmdtext, idx);
- if(!strlen(tmp))
- {
- SCM(playerid, COR_INFO, " {FFFF00}INFO{AFAFAF}: USE: /matar [IF]");
- return 1;
- }
- jogador = ReturnUser(tmp);
- if(IsPlayerConnected(jogador))
- {
- if(jogador == INVALID_PLAYER_ID) return SCM(playerid, COR_INFO, " {FF0000}ERRO{A9C4E4}: Este player não está online.");
- if(PlayerInfo[jogador][pAdmin] > 0 && (strcmp("Rodney_Francalim",NomeDoJogador(jogador),true)==0)) { SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não pode matar um administrador dono, por isso você foi morto."); SetPlayerHealth(playerid, 0); return 1; }
- SetPlayerHealth(jogador, 0.0);
- printf("LOG: %s matou %s",NomeDoJogador(playerid) ,NomeDoJogador(jogador));
- format(string, sizeof(string), " {FF0000}LOG{A9C4E4}:{FF6347} %s ganhou uma morte de: %s",NomeDoJogador(jogador) ,NomeDoJogador(playerid));
- MensagemAdmin(COR_INFO,string,1);
- }
- return 1;
- }
- if(strcmp(cmd, "/calar", true) == 0)
- {
- if(PlayerInfo[playerid][pLogado] == 0) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não está logado.");
- if(!(PlayerInfo[playerid][pAdmin] != 0)) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não é administrador.");
- tmp = strtok(cmdtext, idx);
- if(!strlen(tmp))
- {
- SCM(playerid, COR_INFO, " {FFFF00}INFO{AFAFAF}: USE: /calar [ID]");
- return 1;
- }
- jogador = ReturnUser(tmp);
- if(PlayerInfo[jogador][pLogado] == 0) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Este playerid não está logado");
- if(jogador == INVALID_PLAYER_ID) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Este player não está online.");
- if(PlayerInfo[jogador][pAdmin] > 0 && (strcmp("Rodney_Francalim",NomeDoJogador(jogador),true)==0)) { SCM(playerid, COR_INFO, "{FF0000}ERRO{AFAFAF}: Você não pode calar um administrador dono, por isso foi calado."); PlayerInfo[jogador][pCalado] = 1; return 1; }
- if(PlayerInfo[jogador][pCalado] == 0)
- {
- PlayerInfo[jogador][pCalado] = 1;
- printf("LOG: %s calou %s",NomeDoJogador(playerid), NomeDoJogador(jogador));
- format(string, sizeof(string), "{FF0000}LOG{A9C4E4}: {FF6347}%s foi calado por %s",NomeDoJogador(playerid), NomeDoJogador(jogador));
- MensagemAdmin(COR_INFO,string,1);
- }
- else
- {
- PlayerInfo[jogador][pCalado] = 0;
- printf("LOG: %s descalou %s",NomeDoJogador(playerid), NomeDoJogador(jogador));
- format(string, sizeof(string), "{FF0000}LOG{A9C4E4}:{FF6347} %s descalou o jogador: %s",NomeDoJogador(playerid), NomeDoJogador(jogador));
- MensagemAdmin(COR_INFO,string,1);
- }
- return 1;
- }
- if(strcmp(cmd, "/congelar", true) == 0)
- {
- if(PlayerInfo[playerid][pLogado] == 0) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não está logado.");
- if(PlayerInfo[playerid][pAdmin] == 0) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não é administrador.");
- tmp = strtok(cmdtext, idx);
- if(!strlen(tmp))
- {
- SCM(playerid, COR_INFO, " {FFFF00}INFO{AFAFAF}: USE: /congelar [ID]");
- return 1;
- }
- jogador = ReturnUser(tmp);
- if(PlayerInfo[jogador][pLogado] == 0) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Este player não está logado");
- if(jogador == INVALID_PLAYER_ID) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Este player não está online.");
- if(PlayerInfo[jogador][pAdmin] > 0 && (strcmp("Rodney_Francalim",NomeDoJogador(jogador),true)==0)) { SCM(playerid, COR_INFO, "{FF0000}ERRO{AFAFAF}: Você não pode congelar um administrador dono, por isso você foi congelado."); PlayerInfo[playerid][pCongelado] = 1; TogglePlayerControllable(playerid, 0); return 1; }
- if(PlayerInfo[jogador][pCongelado] == 0)
- {
- PlayerInfo[jogador][pCongelado] = 1;
- printf("LOG:O %s %s congelou %s",NivelDeAdm(playerid), NomeDoJogador(playerid), NomeDoJogador(jogador));
- format(string, sizeof(string), "{FF0000}LOG{A9C4E4}:{FF6347}O %s %s congelou o %s %s",NivelDeAdm(playerid), NomeDoJogador(jogador), NivelDeAdm(playerid), NomeDoJogador(playerid));
- MensagemAdmin(COR_INFO,string,1);
- }
- else
- {
- PlayerInfo[jogador][pCongelado] = 0;
- printf("LOG: O %s %s descongelou %s",NivelDeAdm(playerid), NomeDoJogador(playerid), NomeDoJogador(jogador));
- format(string, sizeof(string), "{FF0000}LOG{A9C4E4}:{FF6347}O %s %s descongelou o %s: %s",NivelDeAdm(playerid), NomeDoJogador(playerid), NivelDeAdm(playerid), NomeDoJogador(jogador));
- MensagemAdmin(COR_INFO,string,1);
- }
- return 1;
- }
- if(strcmp(cmd, "/kick", true) == 0)
- {
- if (PlayerInfo[playerid][pAdmin] < 1) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não é um moderador.");
- if(PlayerInfo[playerid][pLogado] == 1)
- {
- tmp = strtok(cmdtext, idx);
- if(!strlen(tmp))
- {
- SCM(playerid, COR_INFO, " {FFFF00}INFO{AFAFAF}: USE: /kick [ID] [MOTIVO]");
- return 1;
- }
- new motstr[256];
- new strlog[256];
- jogador = ReturnUser(tmp);
- if(!IsPlayerConnected(jogador)) { SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Este jogador não está online"); return 1; }
- if(jogador != INVALID_PLAYER_ID)
- {
- new length = strlen(cmdtext);
- while ((idx < length) && (cmdtext[idx] <= ' '))
- {
- idx++;
- }
- new offset = idx;
- new result[64];
- while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
- {
- result[idx - offset] = cmdtext[idx];
- idx++;
- }
- result[idx - offset] = EOS;
- if(!strlen(result))
- {
- SCM(playerid, COR_INFO, " {FFFF00}INFO{AFAFAF}: USE: /kick [ID] [MOTIVO]");
- return 1;
- }
- getdate(tempo[2], tempo[1], tempo[0]);
- gettime(tempo[3], tempo[4], tempo[5]);
- format(string,sizeof(string),"{FF6347}Nome{A9C4E4}: %s \n{FF6347}Motivo{A9C4E4}: %s \n{FF6347}Kickado por{A9C4E4}: %s %s \n{FF6347}Data/Hora{A9C4E4}: %02d/%02d/%02d | %02d:%02d:%02d",NomeDoJogador(jogador), (result), NivelDeAdm(playerid), NomeDoJogador(playerid) , tempo[0], tempo[1], tempo[2], tempo[3], tempo[4], tempo[5]);
- ShowPlayerDialog(jogador,KICK,DIALOG_STYLE_MSGBOX,"{FF0000}~ KICKADO ~",string,"Deslogar", "");
- format(string, sizeof(string), "{FF0000}LOG{A9C4E4}: {FF6347}O %s %s foi kickado pelo %s %s.", NivelDeAdm(jogador), NomeDoJogador(jogador), NivelDeAdm(playerid), NomeDoJogador(playerid));
- SendClientMessageToAll(COR_INFO, string);
- format(motstr, sizeof(motstr), "{FF0000}LOG{A9C4E4}: {FF6347}Motivo: %s." , (result));
- SendClientMessageToAll(COR_INFO, motstr);
- LimparChat(jogador, 125);
- Kick(jogador);
- format(strlog, sizeof(strlog), "LOG: %s foi kickado por: %s. Motivo: %s. Horário: %02d/%02d/%02d | %02d:%02d:%02d", NomeDoJogador(jogador), NomeDoJogador(playerid), (result), tempo[0], tempo[1], tempo[2], tempo[3], tempo[4], tempo[5]);
- KickLog(strlog);
- return 1;
- }
- }
- else
- {
- SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não está logado.");
- return 1;
- }
- return 1;
- }
- if(strcmp(cmd, "/lc", true) == 0 || strcmp(cmd, "/limparchat", true) == 0)
- {
- if(PlayerInfo[playerid][pAdmin] < 2) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não é administrador.");
- for(new i=0; i<MAX_PLAYERS; i++)
- {
- if(PlayerInfo[i][pAdmin] ==0)
- {
- LimparChat(i, 125);
- }
- }
- format(string, sizeof(string), "{33CCFF}ADMIN{A9C4E4}: O %s %s, limpou o chat.", NivelDeAdm(playerid), NomeDoJogador(playerid));
- SendClientMessageToAll(COR_INFO,string);
- GameTextForAll("Chat resetado.", 5000, 1);
- return 1;
- }
- // =============================================================================
- // comandos de Administradores =================================================
- //
- // /ban | /verstats | /tempotodos | /ip
- //
- // =============================================================================
- if(strcmp(cmd, "/ban", true) == 0)
- {
- if (PlayerInfo[playerid][pAdmin] < 2) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não é um administrador.");
- if(PlayerInfo[playerid][pLogado] == 1)
- {
- tmp = strtok(cmdtext, idx);
- if(!strlen(tmp))
- {
- SCM(playerid, COR_INFO, " {FFFF00}INFO{AFAFAF}: USE: /ban [ID] [MOTIVO]");
- return 1;
- }
- new motstr[256];
- new strlog[256];
- jogador = ReturnUser(tmp);
- if(!IsPlayerConnected(jogador)) { SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Este jogador não está online"); return 1; }
- if(jogador != INVALID_PLAYER_ID)
- {
- new length = strlen(cmdtext);
- while ((idx < length) && (cmdtext[idx] <= ' '))
- {
- idx++;
- }
- new offset = idx;
- new result[64];
- while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
- {
- result[idx - offset] = cmdtext[idx];
- idx++;
- }
- result[idx - offset] = EOS;
- if(!strlen(result))
- {
- SCM(playerid, COR_INFO, " {FFFF00}INFO{AFAFAF}: USE: /ban [ID] [MOTIVO]");
- return 1;
- }
- getdate(tempo[2], tempo[1], tempo[0]);
- gettime(tempo[3], tempo[4], tempo[5]);
- format(string,sizeof(string),"{FF6347}Nome{A9C4E4}: %s \n{FF6347}Motivo{A9C4E4}: %s \n{FF6347}Banido por{A9C4E4}: %s %s \n{FF6347}Data/Hora{A9C4E4}: %02d/%02d/%02d | %02d:%02d:%02d\nPressione F8 e poste a SS no fórum caso queira queixar-se\n do banimento.",NomeDoJogador(jogador), (result), NivelDeAdm(playerid), NomeDoJogador(playerid) , tempo[0], tempo[1], tempo[2], tempo[3], tempo[4], tempo[5]);
- ShowPlayerDialog(jogador,BAN,DIALOG_STYLE_MSGBOX,"{FF0000}~ BANIDO ~",string,"Deslogar", "");
- format(string, sizeof(string), "{FF0000}LOG{A9C4E4}: {FF6347}O %s %s foi banido pelo %s %s.", NivelDeAdm(jogador), NomeDoJogador(jogador), NivelDeAdm(playerid), NomeDoJogador(playerid));
- SendClientMessageToAll(COR_INFO, string);
- format(motstr, sizeof(motstr), "{FF0000}LOG{A9C4E4}: {FF6347}Motivo: %s." , (result));
- SendClientMessageToAll(COR_INFO, motstr);
- LimparChat(jogador, 125);
- PlayerInfo[jogador][pBanido] = 1;
- AtualizarJogador(jogador);
- new tmppass[256];
- strmid(tmppass, result, 0, strlen(result), 255);
- new adminban[256];
- strmid(adminban, NomeDoJogador(playerid), 0, strlen(NomeDoJogador(playerid)), 255);
- Banido(jogador, tmppass, adminban);
- Kick(jogador);
- format(strlog, sizeof(strlog), "LOG: %s foi banido por: %s. Motivo: %s. Horário: %02d/%02d/%02d | %02d:%02d:%02d", NomeDoJogador(jogador), NomeDoJogador(playerid), (result), tempo[0], tempo[1], tempo[2], tempo[3], tempo[4], tempo[5]);
- BanLog(strlog);
- return 1;
- }
- }
- else
- {
- SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não está logado.");
- return 1;
- }
- return 1;
- }
- /*if(strcmp(cmd, "/editar", true) == 0)
- {
- new antieabuser[256];
- if(PlayerInfo[playerid][pLogado] == 0) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não está logado.");
- if(PlayerInfo[playerid][pAdmin] < 2) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não está autorizado à usar esse comando.");
- tmp = strtok(cmdtext, idx);
- if(!strlen(tmp))
- {
- SCM(playerid, COR_INFO, " {FFFF00}INFO{AFAFAF}: USE: /editar [ID] [OPÇÃO] [VALOR]");
- SCM(playerid, COR_INFO, " {AFAFAF}| 1: Pontos especiais | 2: Pontos");
- return 1;
- }
- jogador = ReturnUser(tmp);
- if(PlayerInfo[playerid][pLogado] == 0 || jogador == INVALID_PLAYER_ID) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Este jogador não está logado.");
- new opcao = strval(tmp);
- tmp = strtok(cmdtext, idx);
- if(!strlen(tmp))
- {
- SCM(playerid, COR_INFO, " {FFFF00}INFO{AFAFAF}: USE: /editar [ID] [OPÇÃO] [VALOR]");
- SCM(playerid, COR_INFO, " {AFAFAF}| 1: Pontos especiais | 2: Pontos");
- return 1;
- }
- new quant = strval(tmp);
- if(!strlen(tmp))
- {
- SCM(playerid, COR_INFO, " {FFFF00}INFO{AFAFAF}: USE: /editar [ID] [OPÇÃO] [VALOR]");
- SCM(playerid, COR_INFO, " {AFAFAF}| 1: Pontos especiais | 2: Pontos");
- return 1;
- }
- if(jogador == playerid && PlayerInfo[playerid][pAdmin] != 3) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não pode editar a si mesmo.");
- switch(opcao)
- {
- case 1:
- {
- PlayerInfo[jogador][pPtsEsp] = quant;
- format(string, sizeof(string), " {FFFF00}INFO{A9C4E4}: Você editou os Pontos especiais do %s %s para: %d", NivelDeAdm(jogador), NomeDoJogador(jogador), quant);
- SCM(playerid, COR_INFO, string);
- SetPlayerScore(playerid, quant);
- format(str, 256, " {FFFF00}INFO{A9C4E4}: O %s %s editou os Pontos especiais do %s %s para: %d", NivelDeAdm(playerid), NomeDoJogador(playerid), NivelDeAdm(jogador), NomeDoJogador(jogador), quant);
- //MensagemAdmin(COR_INFO, str, 1);
- SCM(playerid, COR_INFO, str);
- format(antieabuser, sizeof(antieabuser), "O %s %s editou os Pontos especiais do %s %s para: %d", NivelDeAdm(playerid), NomeDoJogador(playerid), NivelDeAdm(jogador), NomeDoJogador(jogador), quant);
- EditarStats(antieabuser);
- }
- case 2:
- {
- PlayerInfo[jogador][pPontos] = quant;
- format(string, sizeof(string), " {FFFF00}INFO{A9C4E4}: Você editou os Pontos do %s %s para: %d", NivelDeAdm(jogador), NomeDoJogador(jogador), quant);
- SCM(playerid, COR_INFO, string);
- format(str, 256, " {FFFF00}INFO{A9C4E4}: O %s %s editou os Pontos do %s %s para: %d", NivelDeAdm(playerid), NomeDoJogador(playerid), NivelDeAdm(jogador), NomeDoJogador(jogador), quant);
- //MensagemAdmin(COR_INFO, str, 1);
- SCM(playerid, COR_INFO, str);
- format(antieabuser, sizeof(antieabuser), "O %s %s editou os Pontos do %s %s para: %d", NivelDeAdm(playerid), NomeDoJogador(playerid), NivelDeAdm(jogador), NomeDoJogador(jogador), quant);
- EditarStats(antieabuser);
- }
- default:
- {
- format(string, sizeof(string), " {FF0000}ERRO{AFAFAF}: Opção inválida.");
- }
- }
- SCM(playerid, COR_INFO, string);
- AtualizarJogador(jogador);
- return 1;
- }*/
- if(strcmp(cmd, "/verstats", true) == 0 || strcmp(cmd, "/vs", true) == 0)
- {
- new str1[256];
- if(PlayerInfo[playerid][pLogado] == 0) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não está online.");
- if(PlayerInfo[playerid][pAdmin] < 2) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não está autorizado à usar esse comando.");
- tmp = strtok(cmdtext, idx);
- if(!strlen(tmp) || strval(tmp)) return SCM(playerid, COR_INFO, " {FFFF00}INFO{AFAFAF}: USE: /(v)er(s)tats [NOME]");
- jogador = ReturnUser(tmp);
- format(string, 66, "Contas/%s.ini", tmp);
- if(dini_Exists(string))
- {
- new Reputacao = dini_Int(string, "EspPts");
- new Pontos = dini_Int(string, "Pontos");
- new AdminLevel = dini_Int(string, "Admin");
- SCM(playerid, COR_INFO, "");
- SCM(playerid, COR_INFO, "{FFFF00}######################################################");
- format(str1, sizeof(str1), " = {FFFF00}Nome: %s {A9C4E4}%s {A9C4E4}=", (AdminLevel == 0) ? ("{A9C4E4}Jogador") : (AdminLevel == 1) ? ("{33CCFF}Moderador") : (AdminLevel == 2) ? ("{33CCFF}administrador") : (AdminLevel == 3) ? ("{33CCFF}Administrador dono") : ("{FF0000}CONTA BUGADA"), tmp);
- SCM(playerid, COR_INFO, str1);
- format(str1, sizeof(str1), " = {FFFF00}Pontos: {4169E1}%d {A9C4E4}| {FFFF00}Pontos especiais: {4169E1}%d {A9C4E4}=", Pontos, Reputacao);
- SCM(playerid, COR_INFO, str1);
- SCM(playerid, COR_INFO, "");
- return 1;
- }
- else
- {
- SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Esta conta não existe");
- return 1;
- }
- }
- if(strcmp(cmd, "/tempotodos", true) == 0)
- {
- if(PlayerInfo[playerid][pLogado] == 0) return SCM(playerid, COR_INFO, " {FF0000}ERRO{A9C4E4}: Você não está logado");
- if(PlayerInfo[playerid][pAdmin] < 2) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não está autorizado à usar esse comando.");
- tmp = strtok(cmdtext, idx);
- if(!strlen(tmp)) { SCM(playerid, COR_INFO, " {FFFF00}INFO{A9C4E4}: USE /tempo [ID]"); return 1; }
- new clima;
- clima = strval(tmp);
- if(clima < 0||clima > 45) { SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Tempo ID de 0 ~ 45."); return 1; }
- SetWeather(clima);
- format(string, sizeof(string), "{FF6347}LOG{A9C4E4}:{FF0000} O %s: %s setou o tempo do servidor para %d.",NivelDeAdm(playerid), NomeDoJogador(playerid) ,clima);
- MensagemAdmin(COR_INFO, string, 1);
- SCM(playerid, COR_INFO, "Tempo mudado.");
- return 1;
- }
- if(strcmp(cmd, "/ip", true) == 0)
- {
- if(PlayerInfo[playerid][pAdmin] < 2) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não está autorizado à usar esse comando.");
- tmp = strtok(cmdtext, idx);
- if(!strlen(tmp)) { SCM(playerid, COR_INFO, " {FFFF00}INFO{AFAFAF}: USE: /ip [ID]"); return 1; }
- jogador = ReturnUser(tmp);
- if(!(IsPlayerConnected(jogador))) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Esse jogador não está online.");
- //new ipe[256];
- new PlayerIP[256];
- GetPlayerIp(playerid,PlayerIP, sizeof(PlayerIP));
- format(string, sizeof(string), "{A9C4E4}| {00FA9A}%s{A9C4E4}: | IP: {4169E1}%d{A9C4E4} |", NomeDoJogador(jogador),PlayerIP);
- if(strlen(PlayerIP)) { SCM(playerid, COR_INFO, string); }
- return 1;
- }
- // =============================================================================
- // comandos de Admins Dono =====================================================
- //
- // /deletarconta | /ipdesban | /nomedesban | /setpos | /daradmin | /gmx
- //
- // =============================================================================
- if(strcmp(cmd, "/deletarconta", true) == 0)
- {
- if(PlayerInfo[playerid][pAdmin] == 0) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não é administrador.");
- if(PlayerInfo[playerid][pAdmin] == 1 || PlayerInfo[playerid][pAdmin] == 2) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não é administrador dono.");
- new deletou[256];
- new conta[64];
- tmp = strtok(cmdtext, idx);
- if(!strlen(tmp)) return SCM(playerid, COR_INFO, " {FFFF00}INFO{AFAFAF}: USE: /deletarconta [NOME]");
- format(conta,sizeof(conta),"Contas/%s.ini",tmp);
- if(dini_Exists(conta))
- {
- getdate(tempo[0], tempo[1], tempo[2]);
- gettime(tempo[3], tempo[4], tempo[5]);
- format(deletou, sizeof(deletou), "{FF6347}LOG{A9C4E4}:{FF0000} O %s %s deletou a conta de %s. Horário: %d/%d/%d %02d:%02d:%02d ", NivelDeAdm(playerid) , NomeDoJogador(playerid), tmp, tempo[2], tempo[1], tempo[0], tempo[3], tempo[4], tempo[5]);
- MensagemAdmin(COR_INFO, deletou, 1);
- format(deletou, sizeof(deletou), "O %s %s deletou a conta de %s. Horário: %d/%d/%d %02d:%02d:%02d ", NivelDeAdm(playerid) , NomeDoJogador(playerid), tmp, tempo[2], tempo[1], tempo[0], tempo[3], tempo[4], tempo[5]);
- DeleteLog(deletou);
- dini_Remove(conta);
- return 1;
- }
- else
- {
- SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Esta conta não existe");
- return 1;
- }
- }
- if(strcmp(cmd,"/ipdesban",true)== 0)
- {
- new arquivodini[256];
- if(PlayerInfo[playerid][pAdmin] == 0) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não é administrador.");
- if(PlayerInfo[playerid][pAdmin] == 1 || PlayerInfo[playerid][pAdmin] == 2) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não é administrador dono.");
- tmp = strtok(cmdtext,idx);
- if(!strlen(tmp))
- {
- SCM(playerid, COR_INFO," {FF0000}INFO{AFAFAF}: USE: /ipdesban [IP]");
- return 1;
- }
- format(arquivodini, sizeof(arquivodini), "IPs Banidos/%s.ini", tmp);
- if(!dini_Exists(arquivodini))
- {
- SCM(playerid, COR_INFO," {FF0000}ERRO{AFAFAF}: Este IP não está banido.");
- return 1;
- }
- else
- {
- dini_Remove(arquivodini);
- format(string, sizeof(string), "{33CCFF}LOG{A9C4E4}: O %s %s desbaniu o IP: %s", NivelDeAdm(playerid), NomeDoJogador(playerid), tmp);
- MensagemAdmin(COR_INFO, string, 1);
- return 1;
- }
- }
- if(strcmp(cmd,"/nomedesban",true)== 0)
- {
- if(PlayerInfo[playerid][pAdmin] == 0) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não é administrador.");
- if(PlayerInfo[playerid][pAdmin] == 1 || PlayerInfo[playerid][pAdmin] == 2) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não é administrador dono.");
- tmp = strtok(cmdtext,idx);
- if(!strlen(tmp)) return SCM(playerid, COR_INFO," {FFFF00}INFO{AFAFAF}: USE: /nomedesban [NOME]");
- new arquivo[64];
- format(arquivo, sizeof(arquivo), "Banidos/%s.ini",tmp);
- if(!dini_Exists(arquivo))
- {
- SCM(playerid, COR_INFO," {FF0000}ERRO{AFAFAF}: Este jogador não está banido.");
- return 1;
- }
- else
- {
- dini_Remove(arquivo);
- format(string, sizeof(string), "{33CCFF}LOG{A9C4E4}: O %s %s desbaniu o jogador: %s", NivelDeAdm(playerid), NomeDoJogador(playerid), tmp);
- MensagemAdmin(COR_INFO,string,1);
- }
- return 1;
- }
- if(strcmp(cmd,"/setpos",true)==0)
- {
- if(PlayerInfo[playerid][pAdmin] == 0) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não é administrador.");
- if(PlayerInfo[playerid][pAdmin] == 1 || PlayerInfo[playerid][pAdmin] == 2) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não é administrador dono.");
- new plid,Float:setpos[3];
- tmp = strtok(cmdtext,idx);
- if(!strlen(tmp)) return SCM(playerid, COR_INFO, " {FFFF00}INFO{AFAFAF}: USE: /setpos [ID] [X] [Y] [Z]");
- jogador = strval(tmp);
- if(PlayerInfo[jogador][pLogado] == 0) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Este player não está online.");
- for(new x=0;x<3;x++)
- {
- tmp = strtok(cmdtext,idx);
- if(!strlen(tmp)) return SCM(playerid, COR_INFO, " {FFFF00}INFO{AFAFAF}: USE: /setpos [ID] [X] [Y] [Z]");
- setpos[x] = floatstr(tmp);
- }
- SetPlayerPos(plid,setpos[0],setpos[1],setpos[2]);
- SCM(playerid, COR_INFO, " {FFFF00}INFO{A9C4E4}: Posição setada.");
- return 1;
- }
- if(strcmp(cmd, "/gmx", true) == 0)
- {
- if(PlayerInfo[playerid][pAdmin] < 3) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não está autorizado à usar este comando.");
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(IsPlayerConnected(i))
- {
- AtualizarJogador(i);
- LimparChat(i, 125);
- SCM(i, COR_INFO,"{33CCFF}ADMIN{A9C4E4}: Por favor, não deslogue, aguarde alguns segundos até a próxima atualização...");
- }
- GameModeInitExitFunc();
- }
- return 1;
- }
- if(strcmp(cmd, "/mudarmg", true) == 0)
- {
- if(PlayerInfo[playerid][pAdmin] < 3) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não está autorizado à usar este comando.");
- new outromg = random(sizeof(MiniGames));
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(IsPlayerConnected(i))
- {
- SCM(i, COR_INFO, "{33CCFF}ADMIN{A9C4E4}: Um administrador solicitou a troca de mini-game.");
- SCM(i, COR_INFO, "{33CCFF}ADMIN{A9C4E4}: O próximo Mini-Game já foi escolhido. Boa sorte!");
- format(string, sizeof(string), "changemode %s", MiniGames[outromg]);
- getdate(v[0], v[1], v[2]);
- gettime(v[3], v[4], v[5]);
- print("\n _________________________________________________________ ");
- print("| |");
- print("| |");
- printf("| Mudando para o MiniGame: %s |");
- print("| |");
- print("|_________________________________________________________|\n");
- SendRconCommand(string);
- TextDrawHideForPlayer(playerid, Textdraw0); //Horas
- TextDrawHideForPlayer(playerid, Textdraw1); //Minutos
- TextDrawHideForPlayer(playerid, Textdraw2); //Segundos
- TextDrawHideForPlayer(playerid, Textdraw3); //Dia
- TextDrawHideForPlayer(playerid, Textdraw4); //Mes
- TextDrawHideForPlayer(playerid, Textdraw5); //Ano
- TextDrawDestroy(Textdraw0);
- TextDrawDestroy(Textdraw1);
- TextDrawDestroy(Textdraw2);
- TextDrawDestroy(Textdraw3);
- TextDrawDestroy(Textdraw4);
- TextDrawDestroy(Textdraw5);
- KillTimer(FDMG);
- KillTimer(FVK);
- }
- }
- return 1;
- }
- if(strcmp(cmd, "/daradmin", true) == 0)
- {
- new log[256];
- if(PlayerInfo[playerid][pAdmin] == 0) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não é administrador.");
- if(PlayerInfo[playerid][pAdmin] == 1 || PlayerInfo[playerid][pAdmin] == 2) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não é administrador dono.");
- if(PlayerInfo[playerid][pLogado] == 0) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você não está logado.");
- tmp = strtok(cmdtext, idx);
- if(!strlen(tmp))
- {
- SCM(playerid, COR_INFO, " {FFFF00}INFO{AFAFAF}: USE: /daradmin [ID] [NIVEL]");
- return 1;
- }
- new nivel;
- jogador = ReturnUser(tmp);
- tmp = strtok(cmdtext, idx);
- nivel = strval(tmp);
- if(jogador == INVALID_PLAYER_ID) return SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Este player não está online.");
- if(nivel == 0)
- {
- if(PlayerInfo[jogador][pAdmin] == 0)
- {
- SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Você só pode retirar da administração quem já é administrador.");
- }
- if(PlayerInfo[jogador][pAdmin] > 0)
- {
- AdminsOnline--;
- PlayerInfo[jogador][pAdmin] = nivel;
- format(string, sizeof(string), " {33CCFF}ADMIN{A9C4E4}/{FFFF00}INFO{A9C4E4}: Você foi retirado da administração pelo adminitrador %s.", NomeDoJogador(playerid));
- SCM(jogador, COR_INFO, string);
- format(string, sizeof(string), " {33CCFF}ADMIN{A9C4E4}/{FFFF00}INFO{A9C4E4}: Você retirou o(a) jogador(a): %s da administração.", NomeDoJogador(playerid));
- SCM(playerid, COR_INFO, string);
- format(string, sizeof(string), " {33CCFF}ADMIN{A9C4E4}/{FFFF00}INFO{A9C4E4}: O administrador: %s, retirou o(a) jogador(a): %s da administração.", NomeDoJogador(playerid), NomeDoJogador(jogador));
- MensagemAdmin(COR_INFO, string, 1);
- format(log, sizeof(log), " O administrador: %s, retirou o(a) jogador(a): %s da administração.", NomeDoJogador(playerid), NomeDoJogador(jogador));
- AdminLog(log);
- }
- }
- if(nivel == 1)
- {
- if(PlayerInfo[jogador][pAdmin] == 0)
- {
- PlayerInfo[jogador][pAdmin] = nivel;
- format(string, sizeof(string), " {33CCFF}ADMIN{A9C4E4}/{FFFF00}INFO{A9C4E4}: Você foi promovido à moderador pelo administrador %s.", NomeDoJogador(playerid));
- SCM(jogador, COR_INFO, string);
- format(string, sizeof(string), " {33CCFF}ADMIN{A9C4E4}/{FFFF00}INFO{A9C4E4}: Você promoveu o(a) jogador(a): %s para moderador.", NomeDoJogador(jogador));
- SCM(playerid, COR_INFO, string);
- format(string, sizeof(string), " {33CCFF}ADMIN{A9C4E4}/{FFFF00}INFO{A9C4E4}: O administrador: %s, promoveu o(a) jogador(a): %s para moderador.", NomeDoJogador(playerid), NomeDoJogador(jogador));
- MensagemAdmin(COR_INFO, string, 1);
- format(log, sizeof(log), " O administrador: %s, promoveu o(a) jogador(a): %s para moderador.", NomeDoJogador(playerid), NomeDoJogador(jogador));
- AdminLog(log);
- AdminsOnline++;
- }
- else if(PlayerInfo[jogador][pAdmin] == 2)
- {
- AdminsOnline++;
- PlayerInfo[jogador][pAdmin] = nivel;
- format(string, sizeof(string), " {33CCFF}ADMIN{A9C4E4}/{FFFF00}INFO{A9C4E4}: Você foi rebaixado à moderador pelo administrador %s.", NomeDoJogador(playerid));
- SCM(jogador, COR_INFO, string);
- format(string, sizeof(string), " {33CCFF}ADMIN{A9C4E4}/{FFFF00}INFO{A9C4E4}: Você rebaixou o(a) jogador(a): %s para moderador.", NomeDoJogador(jogador));
- SCM(playerid, COR_INFO, string);
- format(string, sizeof(string), " {33CCFF}ADMIN{A9C4E4}/{FFFF00}INFO{A9C4E4}: O administrador: %s, rebaixou o(a) jogador(a): %s para moderador.", NomeDoJogador(playerid), NomeDoJogador(jogador));
- MensagemAdmin(COR_INFO, string, 1);
- format(log, sizeof(log), " O administrador: %s, rebaixou o(a) jogador(a): %s para moderador.", NomeDoJogador(playerid), NomeDoJogador(jogador));
- AdminLog(log);
- }
- else if(PlayerInfo[jogador][pAdmin] == 1)
- {
- SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Ele já é moderador.");
- }
- }
- if(nivel == 2)
- {
- if(PlayerInfo[jogador][pAdmin] == 0 || PlayerInfo[playerid][pAdmin] == 1)
- {
- PlayerInfo[jogador][pAdmin] = nivel;
- format(string, sizeof(string), " {33CCFF}ADMIN{A9C4E4}/{FFFF00}INFO{A9C4E4}: Você foi promovido à administrador pelo administrador %s.", NomeDoJogador(playerid));
- SCM(jogador, COR_INFO, string);
- format(string, sizeof(string), " {33CCFF}ADMIN{A9C4E4}/{FFFF00}INFO{A9C4E4}: Você promoveu o(a) jogador(a): %s para administrador.", NomeDoJogador(jogador));
- SCM(playerid, COR_INFO, string);
- format(string, sizeof(string), " {33CCFF}ADMIN{A9C4E4}/{FFFF00}INFO{A9C4E4}: O administrador: %s, promoveu o(a) jogador(a): %s para administrador.", NomeDoJogador(playerid), NomeDoJogador(jogador));
- MensagemAdmin(COR_INFO, string, 1);
- format(log, sizeof(log), " O administrador: %s, promoveu o(a) jogador(a): %s para administrador.", NomeDoJogador(playerid), NomeDoJogador(jogador));
- AdminLog(log);
- }
- else if(PlayerInfo[jogador][pAdmin] == 3)
- {
- AdminsOnline++;
- PlayerInfo[jogador][pAdmin] = nivel;
- format(string, sizeof(string), " {33CCFF}ADMIN{A9C4E4}/{FFFF00}INFO{A9C4E4}: Você foi rebaixado à administrador pelo administrador %s.", NomeDoJogador(playerid));
- SCM(jogador, COR_INFO, string);
- format(string, sizeof(string), " {33CCFF}ADMIN{A9C4E4}/{FFFF00}INFO{A9C4E4}: Você rebaixou o(a) jogador(a): %s para administrador.", NomeDoJogador(jogador));
- SCM(playerid, COR_INFO, string);
- format(string, sizeof(string), " {33CCFF}ADMIN{A9C4E4}/{FFFF00}INFO{A9C4E4}: O administrador: %s, rebaixou o(a) jogador(a): %s para administrador.", NomeDoJogador(playerid), NomeDoJogador(jogador));
- MensagemAdmin(COR_INFO, string, 1);
- format(log, sizeof(log), " O administrador: %s, rebaixou o(a) jogador(a): %s para administrador.", NomeDoJogador(playerid), NomeDoJogador(jogador));
- AdminLog(log);
- }
- else if(PlayerInfo[jogador][pAdmin] == 2)
- {
- SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Ele já é administrador.");
- }
- }
- if(nivel == 3)
- {
- if(PlayerInfo[jogador][pAdmin] >= 0 || PlayerInfo[playerid][pAdmin] < 3)
- {
- PlayerInfo[jogador][pAdmin] = nivel;
- format(string, sizeof(string), " {33CCFF}ADMIN{A9C4E4}/{FFFF00}INFO{A9C4E4}: Você foi promovido à administrador dono pelo administrador %s.", NomeDoJogador(playerid));
- SCM(jogador, COR_INFO, string);
- format(string, sizeof(string), " {33CCFF}ADMIN{A9C4E4}/{FFFF00}INFO{A9C4E4}: Você promoveu o(a) jogador(a): %s para administrador dono.", NomeDoJogador(jogador));
- SCM(playerid, COR_INFO, string);
- format(string, sizeof(string), " {33CCFF}ADMIN{A9C4E4}/{FFFF00}INFO{A9C4E4}: O administrador: %s, promoveu o(a) jogador(a): %s para administrador dono.", NomeDoJogador(playerid), NomeDoJogador(jogador));
- MensagemAdmin(COR_INFO, string, 1);
- format(log, sizeof(log), " O administrador: %s, promoveu o(a) jogador(a): %s para administrador dono.", NomeDoJogador(playerid), NomeDoJogador(jogador));
- AdminLog(log);
- }
- else if(PlayerInfo[jogador][pAdmin] == 3)
- {
- SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: Ele já é administrador dono.");
- }
- }
- else
- {
- SCM(playerid, COR_INFO, " {FF0000}ERRO{AFAFAF}: O valor não pode ser menor que 0 ou maior que 3.");
- return 1;
- }
- AtualizarJogador(jogador);
- return 1;
- }
- TextDrawShowForPlayer(playerid, Textdraw7);
- SetTimer("OcultarCMDINV", 3000, 0);
- return 1;
- }
- // =============================================================================
- // GameModeInitExitFunc
- // =============================================================================
- public GameModeInitExitFunc()
- {
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(IsPlayerConnected(i))
- {
- TogglePlayerControllable(i, 0);
- SetPlayerInterior(i, 0);
- PlayerInfo[i][pLogado] = 0;
- }
- }
- SetTimer("GameModeExitFunc", 1000, 0);
- return 1;
- }
- public GameModeExitFunc()
- {
- GameModeExit();
- }
- public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
- {
- if(newkeys == KEY_FIRE && Morreu[playerid] == 1 && MGComecou == 1)
- {
- SpectateRandomPlayer(playerid);
- }
- return 0x01;
- }
- // OnPlayerUpdate ==============================================================
- public OnPlayerUpdate(playerid)
- {
- if(PlayerInfo[playerid][pAdmin] != 0)
- {
- if(GetPlayerPing(playerid) > 1000)
- {
- //new string[128];
- //format(string, sizeof(string), "{FF0000}[SERVER] {FF1493}%s {FFFFFF}(ID:%d) foi kikado automaticamente. {FF0000}Motivo: {FFFFFF}Ping Alto. Maximo permitido: {FF1493}1000", NomeDoJogador(playerid), playerid);
- //MensagemAdmin(0xA9C4E4AA, string, 1);
- //Kick(playerid);
- }
- }
- return 1;
- }
- // Mensagem para os Admins =====================================================
- forward MensagemAdmin(COLOR,const string[],nivel);
- public MensagemAdmin(COLOR,const string[],nivel)
- {
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(IsPlayerConnected(i))
- {
- if (PlayerInfo[i][pAdmin] != 0)
- {
- SCM(i, COLOR, string);
- }
- }
- }
- return 1;
- }
- // Contas ======================================================================
- public RegistrarJogador(playerid, senha[])
- {
- if(IsPlayerConnected(playerid))
- {
- new string3[64];
- format(string3,sizeof(string3),"Contas/%s.ini",NomeDoJogador(playerid));
- dini_Create(string3);
- dini_Set(string3,"Senha",senha);
- dini_IntSet(string3,"EspPts", PlayerInfo[playerid][pPtsEsp]);
- dini_IntSet(string3,"Admin", PlayerInfo[playerid][pAdmin]);
- dini_IntSet(string3,"Pontos", PlayerInfo[playerid][pPontos]);
- CarregarJogador(playerid, senha);
- LimparChat(playerid, 125);
- SCM(playerid, COR_INFO, " {FFFF00}INFO{A9C4E4}: Conta criada com sucesso.");
- SCM(playerid, COR_INFO, " {FFFF00}INFO{A9C4E4}: Você foi logado automaticamente.");
- }
- return 1;
- }
- public CarregarJogador(playerid, senha[])
- {
- new str[256];
- new string2[64];
- new string[64];
- new ip[30];
- format(string2, sizeof(string2), "Contas/%s.ini", NomeDoJogador(playerid));
- if(dini_Exists(string2))
- {
- if(!strcmp(dini_Get(string2, "Senha"), senha, false))
- {
- PlayerInfo[playerid][pLogado] = 1;
- PlayerInfo[playerid][pPtsEsp] = dini_Int(string2,"PontosEsp");
- PlayerInfo[playerid][pAdmin] = dini_Int(string2,"Admin");
- PlayerInfo[playerid][pPontos] = dini_Int(string2, "Pontos");
- PlayerInfo[playerid][pLogou] = 1;
- PlayerInfo[playerid][pBanido] = dini_Int(string2, "Banido");
- SCM(playerid, COR_INFO, " {FFFF00}INFO{A9C4E4}: Você logou com sucesso.");
- SetPlayerScore(playerid, PlayerInfo[playerid][pPtsEsp]);
- GetPlayerIp(playerid, ip, sizeof(ip));
- format(string, sizeof(string), "Últimos IPs conectados/%s.ini",ip);
- dini_Create(string);
- dini_Set(string,"Nome",NomeDoJogador(playerid));
- Online++;
- SpawnPlayer(playerid);
- if(PlayerInfo[playerid][pBanido] > 0)
- {
- PlayerInfo[playerid][pBanido] = 0;
- }
- if(PlayerInfo[playerid][pAdmin] != 0)
- {
- format(str, sizeof(str), "{33CCFF}SERVER{A9C4E4}: O %s {33CCFF}%s{A9C4E4} acabou de logar.", NivelDeAdm(playerid), NomeDoJogador(playerid));
- SendClientMessageToAll(COR_INFO, str);
- AdminsOnline ++;
- return 1;
- }
- }
- else
- {
- ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_INPUT, "{90EE90}Evolution - MiniGames", "{A9C4E4}Senha{FF0000} INCORRETA", "Logar", "");
- SCM(playerid, COR_INFO, " {FF0000}ERRO{A9C4E4}: Sua senha/nick não coincidem.");
- return 1;
- }
- }
- return 1;
- }
- public AtualizarJogador(playerid)
- {
- if(IsPlayerConnected(playerid))
- {
- if(PlayerInfo[playerid][pLogado] == 1)
- {
- new string3[256];
- format(string3, sizeof(string3), "Contas/%s.ini", NomeDoJogador(playerid));
- dini_IntSet(string3,"EspPts", PlayerInfo[playerid][pPtsEsp]);
- dini_IntSet(string3,"Admin", PlayerInfo[playerid][pAdmin]);
- dini_IntSet(string3,"Pontos", PlayerInfo[playerid][pPontos]);
- dini_IntSet(string3,"Banido", PlayerInfo[playerid][pBanido]);
- }
- }
- return 1;
- }
- public MPLog(string[])
- {
- new entry[256];
- format(entry, sizeof(entry), "%s\n",string);
- new File:hFile;
- hFile = fopen("Logs/MPs.log", io_append);
- fwrite(hFile, entry);
- fclose(hFile);
- }
- public VKLog(string[])
- {
- new entry[256];
- format(entry, sizeof(entry), "%s\n",string);
- new File:hFile;
- hFile = fopen("Logs/VoteKick.log", io_append);
- fwrite(hFile, entry);
- fclose(hFile);
- }
- public EditarStats(string[])
- {
- new entry[256];
- format(entry, sizeof(entry), "%s\n",string);
- new File:hFile;
- hFile = fopen("Logs/Editado.log", io_append);
- fwrite(hFile, entry);
- fclose(hFile);
- }
- public AdminLog(string[])
- {
- new entry[256];
- format(entry, sizeof(entry), "%s\n",string);
- new File:hFile;
- hFile = fopen("Logs/AdminLog.log", io_append);
- fwrite(hFile, entry);
- fclose(hFile);
- }
- public KickLog(string[])
- {
- new entry[256];
- format(entry, sizeof(entry), "%s\n",string);
- new File:hFile;
- hFile = fopen("Logs/kick.log", io_append);
- fwrite(hFile, entry);
- fclose(hFile);
- }
- public BanLog(string[])
- {
- new entry[256];
- format(entry, sizeof(entry), "%s\n",string);
- new File:hFile;
- hFile = fopen("Logs/ban.log", io_append);
- fwrite(hFile, entry);
- fclose(hFile);
- }
- public Banido(playerid, motivo[], admin[])
- {
- new str[64], string[64], ip[20];
- format(str,sizeof(str),"Banidos/%s.ini",NomeDoJogador(playerid));
- dini_Create(str);
- dini_IntSet(str,"Banido", 1);
- dini_Set(str,"Motivo", motivo);
- dini_Set(str,"AdminBan", admin);
- GetPlayerIp(playerid, ip, sizeof(ip));
- format(string, sizeof(string), "IPs Banidos/%s.ini",ip);
- dini_Create(string);
- dini_Set(string,"Nome",NomeDoJogador(playerid));
- dini_Set(string,"Motivo", motivo);
- dini_Set(string,"AdminBan", admin);
- return 1;
- }
- public DeleteLog(string[])
- {
- new entry[256];
- format(entry, sizeof(entry), "%s\n",string);
- new File:hFile;
- hFile = fopen("Logs/ContasDeletadas.log", io_append);
- fwrite(hFile, entry);
- fclose(hFile);
- }
- public TempoDoVK(playerid)
- {
- new string[256];
- new str[128];
- if(Votos > Online/3)
- {
- format(string, sizeof(string), "{90EE90}SERVER{A9C4E4}: %s foi kickado por receber muitos votos.", NomeDoJogador(playerid));
- SendClientMessageToAll(COR_INFO, string);
- Kick(playerid);
- }
- else
- {
- format(string, sizeof(string), "{90EE09}SERVER{A9C4E4}: %s não foi kickado, pois não recebeu votos suficientes.", NomeDoJogador(playerid));
- SendClientMessageToAll(COR_INFO, string);
- format(str, sizeof(str), "{90EE09}SERVER{A9C4E4}: %s não foi kickado, pois não recebeu votos suficientes.", NomeDoJogador(playerid));
- KickLog(str);
- }
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- Votou[i] = 0;
- }
- KillTimer(FVK);
- Votos = 0;
- VoteKick = 0;
- return 1;
- }
- // PUBLIC PARA TROCA DE MINI-GAME
- public FimDeMG()
- {
- new tempostr[256];
- new string[64];
- new outromg = random(sizeof(MiniGames));
- new nomedogm = random(sizeof(NomeDoMG));
- tempodetrocademg --;
- if(Encerrou > Online/3)
- {
- tempodetrocademg = 0;
- }
- for(new i=0; i<MAX_PLAYERS; i++)
- {
- switch(tempodetrocademg)
- {
- case 600, 540, 480, 420, 360, 300, 240, 180, 120:
- {
- format(tempostr, sizeof(tempostr), "MINIGAME: ~b~%s~n~~w~TEMPO RESTANTE: ~b~%d ~w~min", NomeDoMG[nomedogm], tempodetrocademg / 60);
- TextDrawSetString(Textdraw6, tempostr);
- TextDrawShowForPlayer(i, Textdraw6);
- }
- case 1 .. 4:
- {
- format(tempostr, sizeof(tempostr), "MINIGAME: ~b~%s~n~~w~TEMPO RESTANTE: ~r~%d ~w~s", NomeDoMG[nomedogm], tempodetrocademg);
- TextDrawSetString(Textdraw6, tempostr);
- TextDrawShowForPlayer(i, Textdraw6);
- }
- case 5:
- {
- SCM(i, COR_INFO, "{33CCFF}ADMIN{A9C4E4}: {FF0000}ATENÇÃO{A9C4E4}, 5 segundos para o fim desde mini-game.");
- format(tempostr, sizeof(tempostr), "MINIGAME: ~b~%s~n~~w~TEMPO RESTANTE: ~r~%d ~w~s", NomeDoMG[nomedogm], tempodetrocademg);
- TextDrawSetString(Textdraw6, tempostr);
- TextDrawShowForPlayer(i, Textdraw6);
- }
- case 6 .. 9:
- {
- format(tempostr, sizeof(tempostr), "MINIGAME: ~b~%s~n~~w~TEMPO RESTANTE: ~r~%d ~w~s", NomeDoMG[nomedogm], tempodetrocademg);
- TextDrawSetString(Textdraw6, tempostr);
- TextDrawShowForPlayer(i, Textdraw6);
- }
- case 10:
- {
- SCM(i, COR_INFO, "{33CCFF}ADMIN{A9C4E4}: {FF0000}ATENÇÃO{A9C4E4}, 10 segundos para o fim desde mini-game.");
- format(tempostr, sizeof(tempostr), "MINIGAME: ~b~%s~n~~w~TEMPO RESTANTE: ~r~%d ~w~s", NomeDoMG[nomedogm], tempodetrocademg);
- TextDrawSetString(Textdraw6, tempostr);
- TextDrawShowForPlayer(i, Textdraw6);
- }
- case 11 .. 14:
- {
- format(tempostr, sizeof(tempostr), "MINIGAME: ~b~%s~n~~w~TEMPO RESTANTE: ~r~%d ~w~s", NomeDoMG[nomedogm], tempodetrocademg);
- TextDrawSetString(Textdraw6, tempostr);
- TextDrawShowForPlayer(i, Textdraw6);
- }
- case 15:
- {
- SCM(i, COR_INFO, "{33CCFF}ADMIN{A9C4E4}: {FF0000}ATENÇÃO{A9C4E4}, 15 segundos para o fim desde mini-game.");
- format(tempostr, sizeof(tempostr), "MINIGAME: ~b~%s~n~~w~TEMPO RESTANTE: ~r~%d ~w~s", NomeDoMG[nomedogm], tempodetrocademg);
- TextDrawSetString(Textdraw6, tempostr);
- TextDrawShowForPlayer(i, Textdraw6);
- }
- case 16 .. 30:
- {
- format(tempostr, sizeof(tempostr), "MINIGAME: ~b~%s~n~~w~TEMPO RESTANTE: ~y~%d ~w~s", NomeDoMG[nomedogm], tempodetrocademg);
- TextDrawSetString(Textdraw6, tempostr);
- TextDrawShowForPlayer(i, Textdraw6);
- }
- case 31 .. 45:
- {
- format(tempostr, sizeof(tempostr), "MINIGAME: ~b~%s~n~~w~TEMPO RESTANTE: ~g~%d ~w~s", NomeDoMG[nomedogm], tempodetrocademg);
- TextDrawSetString(Textdraw6, tempostr);
- TextDrawShowForPlayer(i, Textdraw6);
- }
- case 46 .. 60:
- {
- format(tempostr, sizeof(tempostr), "MINIGAME: ~b~%s~n~~w~TEMPO RESTANTE: ~b~%d ~w~s", NomeDoMG[nomedogm], tempodetrocademg);
- TextDrawSetString(Textdraw6, tempostr);
- TextDrawShowForPlayer(i, Textdraw6);
- }
- case 0:
- {
- format(tempostr, sizeof(tempostr), "MINIGAME: ~b~%s~n~~w~TEMPO RESTANTE: ~b~%d ~w~s", NomeDoMG[nomedogm], tempodetrocademg);
- TextDrawSetString(Textdraw6, tempostr);
- TextDrawShowForPlayer(i, Textdraw6);
- LimparChat(i, 125);
- SCM(i, COR_INFO, "{33CCFF}ADMIN{A9C4E4}: O próximo Mini-Game já foi escolhido. Boa sorte!");
- format(string, sizeof(string), "changemode %s", MiniGames[outromg]);
- getdate(v[0], v[1], v[2]);
- gettime(v[3], v[4], v[5]);
- print("\n _________________________________________________________ ");
- print("| |");
- print("| |");
- printf("| Mudando para o MiniGame: %s |", MiniGames[outromg]);
- print("| |");
- print("|_________________________________________________________|\n");
- SendRconCommand(string);
- }
- }
- }
- return 1;
- }
- public FimDeEscolha()
- {
- MGComecou = 1;
- return 1;
- }
- /*public Espectador(playerid)
- {
- if(Espectando[playerid] > 0)
- {
- TogglePlayerControllable(playerid, 0);
- TogglePlayerSpectating(playerid, 1);
- }
- if(IsPlayerInAnyVehicle(IDAleatorio()))
- {
- new carid = GetPlayerVehicleID(IDAleatorio());
- PlayerSpectateVehicle(playerid, carid);
- }
- else
- {
- PlayerSpectatePlayer(playerid, IDAleatorio());
- }
- if(GetPlayerInterior(IDAleatorio()) == 0)
- {
- SetPlayerInterior(playerid,0);
- }
- else if(GetPlayerInterior(IDAleatorio()) > 0)
- {
- SetPlayerInterior(playerid,GetPlayerInterior(IDAleatorio()));
- }
- return 1;
- }
- stock IDAleatorio()
- {
- new IDa = random(MAX_PLAYERS);
- if(IsPlayerConnected(IDa)) return IDa;
- else
- {
- return IDAleatorio();
- }
- }*/
- stock SpectateRandomPlayer(playerid)
- {
- Spec: new rand = random(GetMaxPlayers());
- if(!IsPlayerConnected(playerid)) goto Spec;
- if(IsPlayerInAnyVehicle(rand))
- {
- PlayerSpectatePlayer(playerid,rand);
- }
- else
- {
- PlayerSpectateVehicle(playerid,GetPlayerVehicleID(rand));
- }
- return 0x01;
- }
- public ProcessGameTime(playerid)
- {
- new string[128];
- gettime(i_ServerHours, i_ServerMinutes, i_ServerSeconds);
- getdate(i_ServerYears, i_ServerMonths, i_ServerDays);
- format(string, sizeof string, "%02d", i_ServerHours); // Horas
- TextDrawSetString(Textdraw0, string);
- format(string, sizeof string, ":%02d", i_ServerMinutes); // Minutos
- TextDrawSetString(Textdraw1, string);
- format(string, sizeof string, ":%02d", i_ServerSeconds); // Segundos
- TextDrawSetString(Textdraw2, string);
- format(string, sizeof string, "%02d", i_ServerDays); // Dias
- TextDrawSetString(Textdraw3, string);
- format(string, sizeof string, "/%02d", i_ServerMonths); // Meses
- TextDrawSetString(Textdraw4, string);
- format(string, sizeof string, "/%02d", i_ServerYears); // Anos
- TextDrawSetString(Textdraw5, string);
- }
- stock ArmaDoPlayer(playerid)
- {
- new armastr[30];
- new arma;
- arma = GetPlayerWeapon(playerid);
- if(arma == 38) { armastr = "Minigun"; }
- else if(arma == 40) { armastr = "Detonador"; }
- else if(arma == 36) { armastr = "Lança missil RPG"; }
- else if(arma == 35) { armastr = "Lança missil"; }
- else if(arma == 16) { armatext = "Granada"; }
- else if(arma == 18) { armastr = "Coctel Molotov"; }
- else if(arma == 22) { armastr = "Pistola de Duas mãos 9mm"; }
- else if(arma == 26) { armastr = "Cano Serrado"; }
- else if(arma == 27) { armastr = "Escopeta de Combate"; }
- else if(arma == 28) { armastr = "Micro Uzi"; }
- else if(arma == 32) { armastr = "Tec9"; }
- else if(arma == 37) { armastr = "Lança Chamas"; }
- else if(arma == 0) { armastr = "Desarmado"; }
- else if(arma == 4) { armastr = "Faca"; }
- else if(arma == 5) { armastr = "Taco de BaseBall"; }
- else if(arma == 9) { armastr = "Motoserra"; }
- else if(arma == 14) { armastr = "Flores"; }
- else if(arma == 17) { armastr = "Granada de Gas"; }
- else if(arma == 23) { armastr = "silenciador"; }
- else if(arma == 16) { armastr = "Granada"; }
- else if(arma == 24) { armastr = "Desert Eagle"; }
- else if(arma == 25) { armastr = "ShotGun"; }
- else if(arma == 29) { armastr = "MP5"; }
- else if(arma == 30) { armastr = "AK-47"; }
- else if(arma == 31) { armastr = "M4"; }
- else if(arma == 33) { armastr = "Rifle"; }
- else if(arma == 34) { armastr = "Rifle Sniper"; }
- else if(arma == 41) { armastr = "Spray"; }
- else if(arma == 42) { armastr = "Extintor"; }
- else if(arma == 46) { armastr = "Paraquedas"; }
- else { armatext = "Desconhecido"; }
- return arma;
- }
- forward LimparChat(playerid, lines);
- public LimparChat(playerid, lines)
- {
- if (IsPlayerConnected(playerid))
- {
- for(new i=0; i<lines; i++)
- {
- SCM(playerid, COR_INFO, "");
- }
- }
- return 1;
- }
- forward OcultarCMDINV(playerid);
- public OcultarCMDINV(playerid)
- {
- TextDrawHideForPlayer(playerid, Textdraw7);
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement