Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //INCLUDES
- #include <a_samp>
- #include <ZCMD>
- #include <DOF2>
- #include <sscanf2>
- //DEFINES
- #define DIALOG_EVENTO 950
- #define DIALOG_ABRIREVENTO 951
- #define DIALOG_NOMEEVENTO 952
- #define DIALOG_PREMIO1 953
- #define DIALOG_PREMIO2 954
- #define DIALOG_PREMIO3 955
- #define DIALOG_CARRO 956
- #define DIALOG_COR1 957
- #define DIALOG_COR2 958
- #define DIALOG_ARMA 959
- #define DIALOG_MUNICAO 960
- #define DIALOG_VIDAVEICULOS 961
- #define DIALOG_KICK 962
- #define DIALOG_FIM1 963
- #define DIALOG_FIM2 964
- #define DIALOG_FIM3 965
- #define DIALOG_VIDA 966
- #define DIALOG_COLETE 967
- #define DIALOG_SKIN 968
- #define DIALOG_BAN1 969
- #define DIALOG_BAN2 970
- #define DIALOG_BAN3 971
- #define DIALOG_DESBAN 972
- #define DIALOG_DESBAN2 973
- #define DIALOG_PUXAR 974
- #define DIALOG_INFOBAN 975
- #define CREDITOS 976
- #define COR_EVENTO 0xFF8000AA
- #define COR_ERRO 0xB4B5B7FF
- #define COR_INFO 0xFFFF00AA
- new NomePlayer[MAX_PLAYER_NAME],
- Name[64],
- Format[150],
- Float:PosX,
- Float:PosY,
- Float:PosZ,
- Float:PosA;
- enum eventInfo
- {
- Float:X,
- Float:Y,
- Float:Z,
- Float:A,
- VirtualWorld,
- Interior,
- Nome[64],
- Criado,
- Aberto,
- Premio1,
- Premio2,
- Premio3,
- Carro,
- Cor1,
- Cor2,
- Arma,
- Vida,
- };
- enum pInfo
- {
- NoEvento,
- Carro,
- Banido,
- };
- enum bInfo
- {
- ID,
- Tempo,
- Motivo[64],
- DesbanID,
- };
- //NEW
- new EventInfo[eventInfo];
- new PlayerInfo[MAX_PLAYERS][pInfo];
- new BanInfo[bInfo];
- #if defined FILTERSCRIPT
- public OnFilterScriptInit()
- {
- print("\n----------------------------------");
- print("------------M-Event System----------");
- print("--By: Spark_DaSantos/Marcelo_Elite--");
- print("---Todos os Direitos Reservados®---");
- print("----------------------------------\n");
- EventInfo[X] = 0;
- EventInfo[Y] = 0;
- EventInfo[Z] = 0;
- EventInfo[A] = 0;
- EventInfo[VirtualWorld] = 0;
- EventInfo[Interior] = 0;
- EventInfo[Criado] = 0;
- EventInfo[Aberto] = 0;
- EventInfo[Premio1] = 0;
- EventInfo[Premio2] = 0;
- EventInfo[Premio3] = 0;
- EventInfo[Carro] = 0;
- EventInfo[Cor1] = 0;
- EventInfo[Cor2] = 0;
- EventInfo[Arma] = 0;
- EventInfo[Vida] = 0;
- BanInfo[ID] = 0;
- BanInfo[Tempo] = 0;
- BanInfo[DesbanID] = 0;
- return 1;
- }
- public OnFilterScriptExit()
- {
- return 1;
- }
- #endif
- public OnPlayerConnect(playerid)
- {
- PlayerInfo[playerid][NoEvento] = 0;
- PlayerInfo[playerid][Carro] = 0;
- ChecarBan(playerid);
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- if(dialogid == DIALOG_EVENTO)
- {
- if(response)
- {
- switch (listitem)
- {
- case 0:
- {
- if(EventInfo[Criado] == 1) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Já existe um evento aberto, destrua-o antes de criar um novo");
- if(EventInfo[X] == 0 && EventInfo[Y] == 0 && EventInfo[Z] == 0) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Você precisa definir o local do evento antes de cria-lo!");
- if(EventInfo[Premio1] == 0 || EventInfo[Premio2] == 0 || EventInfo[Premio3] == 0) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Você precisa definir o valor dos premios!");
- ShowPlayerDialog(playerid, DIALOG_NOMEEVENTO, DIALOG_STYLE_INPUT, "{FFFF00}Criação de Eventos", "Digite o Nome do seu Evento:", "Continuar", "");
- return 1;
- }
- case 1:
- {
- GetPlayerPos(playerid, PosX, PosY, PosZ);
- GetPlayerFacingAngle(playerid, PosA);
- EventInfo[X] = PosX;
- EventInfo[Y] = PosY;
- EventInfo[Z] = PosZ;
- EventInfo[A] = PosA;
- EventInfo[Interior] = GetPlayerInterior(playerid);
- EventInfo[VirtualWorld] = (GetPlayerVirtualWorld(playerid) + 1);
- SendClientMessage(playerid, -1, "[INFO] Posição do Evento definida!");
- return 1;
- }
- case 2:
- {
- if(EventInfo[Criado] == 0) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Não existe nenhum evento criado!");
- if(EventInfo[Aberto] == 0)
- {
- EventInfo[Aberto] = 1;
- GetPlayerName(playerid, NomePlayer, MAX_PLAYER_NAME);
- format(Format, sizeof(Format), "[EVENTO] O Administrador %s Abriu o Evento!", NomePlayer);
- SendClientMessageToAll(COR_EVENTO, Format);
- format(Format, sizeof(Format), "{FFFF00}Nome: {FF0000}%s {FFFF00}| Premio para o 1º Lugar: {FF0000}%d {FFFF00}| Premio para o 2º Lugar: {FF0000}%d {FFFF00}| Premio para o 3º Lugar: {FF0000}%d", EventInfo[Nome], EventInfo[Premio1], EventInfo[Premio2], EventInfo[Premio3]);
- SendClientMessageToAll(COR_INFO, Format);
- SendClientMessageToAll(COR_INFO, "Digite /irevento caso queira participar!");
- return 1;
- }
- else
- {
- EventInfo[Aberto] = 0;
- GetPlayerName(playerid, NomePlayer, MAX_PLAYER_NAME);
- format(Format, sizeof(Format), "[EVENTO] O Administrador %s Fechou o Evento!", NomePlayer);
- SendClientMessageToAll(COR_EVENTO, Format);
- return 1;
- }
- }
- case 3:
- {
- if(EventInfo[Criado] == 1) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Você não pode fazer modificações em um evento em andamento!");
- ShowPlayerDialog(playerid, DIALOG_PREMIO1, DIALOG_STYLE_INPUT, "{FFFF00}Definições do Evento", "Digite qual será o Premio para o 1º Colocado no Evento:", "Salvar", "Cancelar");
- return 1;
- }
- case 4:
- {
- if(EventInfo[Criado] == 1) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Você não pode fazer modificações em um evento em andamento!");
- ShowPlayerDialog(playerid, DIALOG_PREMIO2, DIALOG_STYLE_INPUT, "{FFFF00}Definições do Evento", "Digite qual será o Premio para o 2º Colocado no Evento:", "Salvar", "Cancelar");
- return 1;
- }
- case 5:
- {
- if(EventInfo[Criado] == 1) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Você não pode fazer modificações em um evento em andamento!");
- ShowPlayerDialog(playerid, DIALOG_PREMIO3, DIALOG_STYLE_INPUT, "{FFFF00}Definições do Evento", "Digite qual será o Premio para o 3º Colocado no Evento:", "Salvar", "Cancelar");
- return 1;
- }
- case 6:
- {
- if(EventInfo[Criado] == 0) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Não existe nenhum evento criado!");
- ShowPlayerDialog(playerid, DIALOG_ARMA, DIALOG_STYLE_INPUT, "{FFFF00}Definições do Evento", "Digite qual o ID da arma que você quer dar para\ntodos os Jogadores do Evento:", "Continuar", "Cancelar");
- return 1;
- }
- case 7:
- {
- if(EventInfo[Criado] == 0) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Não existe nenhum evento criado!");
- ShowPlayerDialog(playerid, DIALOG_CARRO, DIALOG_STYLE_INPUT, "{FFFF00}Definições do Evento", "Digite qual o ID do veiculo que você deseja dar para\ntodos os Jogadores do Evento:\n\n(0 = Nenhum)", "Continuar", "Cancelar");
- return 1;
- }
- case 8:
- {
- if(EventInfo[Criado] == 0) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Não existe nenhum evento criado!");
- ShowPlayerDialog(playerid, DIALOG_FIM1, DIALOG_STYLE_INPUT, "{FFFF00}Definições do Evento", "Digite o ID do Primeiro Colocado no Evento:", "Continuar", "Cancelar");
- return 1;
- }
- case 9:
- {
- if(EventInfo[Criado] == 0) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Não existe nenhum evento criado!");
- ShowPlayerDialog(playerid, DIALOG_VIDAVEICULOS, DIALOG_STYLE_INPUT, "{FFFF00}Definições do Evento", "Digite a Vida que você deseja Definir para os\nVeiculos do Evento:", "Definir", "Cancelar");
- return 1;
- }
- case 10:
- {
- if(EventInfo[Criado] == 0) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Não existe nenhum evento criado!");
- ShowPlayerDialog(playerid, DIALOG_KICK, DIALOG_STYLE_INPUT, "{FFFF00}Definições do Evento", "Digite o ID do jogador que você deseja Kickar do Evento:", "Kickar", "Cancelar");
- return 1;
- }
- case 11:
- {
- if(EventInfo[Criado] == 0) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Não existe nenhum evento criado!");
- ShowPlayerDialog(playerid, DIALOG_VIDA, DIALOG_STYLE_INPUT, "{FFFF00}Definições do Evento", "Digite a Vida que você deseja Definir para os\nJogadores do Evento", "Definir", "Cancelar");
- return 1;
- }
- case 12:
- {
- if(EventInfo[Criado] == 0) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Não existe nenhum evento criado!");
- ShowPlayerDialog(playerid, DIALOG_SKIN, DIALOG_STYLE_INPUT, "{FFFF00}Definições do Evento", "Digite o ID da skin que você\ndeseja aplicar nos Jogadores do Evento:", "Definir", "Cancelar");
- return 1;
- }
- case 13:
- {
- if(BanInfo[Tempo] >= 1) return SendClientMessage(playerid, COR_ERRO, "Algum administrador já esta banindo um jogador, aguarde!");
- ShowPlayerDialog(playerid, DIALOG_BAN1, DIALOG_STYLE_INPUT, "{FFFF00}Definições do Evento", "Digite o ID do jogador que você deseja Banir dos Eventos:", "Continuar", "Cancelar");
- return 1;
- }
- case 14:
- {
- ShowPlayerDialog(playerid, DIALOG_DESBAN, DIALOG_STYLE_INPUT, "{FFFF00}Definições do Evento", "Digite o ID do jogador que você deseja Desbanir dos Eventos:", "Desbanir", "Cancelar");
- return 1;
- }
- case 15:
- {
- if(EventInfo[Criado] == 0) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Não existe nenhum evento criado!");
- ShowPlayerDialog(playerid, DIALOG_PUXAR, DIALOG_STYLE_INPUT, "{FFFF00}Definições do Evento", "Digite o ID do jogador que você deseja Puxar:", "Puxar", "Cancelar");
- return 1;
- }
- case 16:
- {
- ShowPlayerDialog(playerid, DIALOG_INFOBAN, DIALOG_STYLE_INPUT, "{FFFF00}Definições do Evento", "Digite o ID do jogador que você deseja\nvisualizar informções do banimento:", "Continuar", "Cancelar");
- return 1;
- }
- case 17:
- {
- if(EventInfo[Criado] == 0) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Não existe nenhum evento criado!");
- for(new p = 0; p < MAX_PLAYERS; p++)
- {
- if(PlayerInfo[p][NoEvento] == 1)
- {
- TogglePlayerControllable(p, 0);
- }
- }
- GetPlayerName(playerid, NomePlayer, MAX_PLAYER_NAME);
- format(Format, sizeof(Format), "[EVENTO] O Administrador %s congelou todos os jogadores do evento!", NomePlayer);
- SendEventMessage(COR_INFO, Format);
- return 1;
- }
- case 18:
- {
- if(EventInfo[Criado] == 0) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Não existe nenhum evento criado!");
- for(new p = 0; p < MAX_PLAYERS; p++)
- {
- if(PlayerInfo[p][NoEvento] == 1)
- {
- TogglePlayerControllable(p, 1);
- }
- }
- GetPlayerName(playerid, NomePlayer, MAX_PLAYER_NAME);
- format(Format, sizeof(Format), "[EVENTO] O Administrador %s descongelou todos os jogadores do evento!", NomePlayer);
- SendEventMessage(COR_INFO, Format);
- return 1;
- }
- case 19:
- {
- if(EventInfo[Criado] == 0) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Não existe nenhum evento criado!");
- for(new p = 0; p < MAX_PLAYERS; p++)
- {
- if(PlayerInfo[p][NoEvento] == 1)
- {
- ResetPlayerWeapons(p);
- }
- }
- EventInfo[Arma] = 0;
- GetPlayerName(playerid, NomePlayer, MAX_PLAYER_NAME);
- format(Format, sizeof(Format), "[EVENTO] O Administrador %s resetou as armas dos jogadores do evento!", NomePlayer);
- SendEventMessage(COR_INFO, Format);
- return 1;
- }
- case 20:
- {
- ShowPlayerDialog(playerid, CREDITOS, DIALOG_STYLE_MSGBOX, "{FFFF00}Creditos do Sistema de Evento", "---------------------------M-Event---------------------------\n\n\n\nAutor de todo o Sistema: Spark_DaSantos ou Marcelo_Play\n\n\n\n--------------------------------------------------------------", "OK", "");
- return 1;
- }
- }
- }
- return 1;
- }
- if(dialogid == DIALOG_NOMEEVENTO)
- {
- if(response)
- {
- format(Name, sizeof(Name), "%s", inputtext);
- EventInfo[Nome] = Name;
- ShowPlayerDialog(playerid, DIALOG_ABRIREVENTO, DIALOG_STYLE_MSGBOX, "Criação de Eventos", "Você deseja que o seu Evento seja Criado\nAberto ou Fechado?", "Aberto", "Fechado");
- return 1;
- }
- return 1;
- }
- if(dialogid == DIALOG_PREMIO1)
- {
- if(response)
- {
- if(strval(inputtext) < 1 || strval(inputtext) > 100000) return SendClientMessage(playerid, COR_ERRO, "[ERRO] O premio deve ser de no minimo 1 real e maximo 100000 reais!");
- EventInfo[Premio1] = strval(inputtext);
- SendClientMessage(playerid, -1, "[INFO] Premio para o 1º Colocado no Evento Salvo!");
- return 1;
- }
- return 1;
- }
- if(dialogid == DIALOG_PREMIO2)
- {
- if(response)
- {
- if(strval(inputtext) < 1 || strval(inputtext) > 100000) return SendClientMessage(playerid, COR_ERRO, "[ERRO] O premio deve ser de no minimo 1 real e maximo 100000 reais!");
- EventInfo[Premio2] = strval(inputtext);
- SendClientMessage(playerid, -1, "[INFO] Premio para o 2º Colocado no Evento Salvo!");
- return 1;
- }
- return 1;
- }
- if(dialogid == DIALOG_PREMIO3)
- {
- if(response)
- {
- if(strval(inputtext) < 1 || strval(inputtext) > 100000) return SendClientMessage(playerid, COR_ERRO, "[ERRO] O premio deve ser de no minimo 1 real e maximo 100000 reais!");
- EventInfo[Premio3] = strval(inputtext);
- SendClientMessage(playerid, -1, "[INFO] Premio para o 3º Colocado no Evento Salvo!");
- }
- return 1;
- }
- if(dialogid == DIALOG_ARMA)
- {
- if(response)
- {
- if(strval(inputtext) < 1 || strval(inputtext) > 46) return SendClientMessage(playerid, COR_ERRO, "[ERRO] ID informado invalido!");
- EventInfo[Arma] = strval(inputtext);
- ShowPlayerDialog(playerid, DIALOG_MUNICAO, DIALOG_STYLE_INPUT, "{FFFF00}Definições do Evento", "Digite a Munição que você deseja dar para os Jogadores do Evento:", "Continuar", "");
- }
- return 1;
- }
- if(dialogid == DIALOG_MUNICAO)
- {
- if(response)
- {
- if(strval(inputtext) < 1 || strval(inputtext) > 999) return SendClientMessage(playerid, COR_ERRO, "[ERRO] O Número maximo de Balas é de 999");
- for(new p = 0; p < MAX_PLAYERS; p++)
- {
- if(PlayerInfo[p][NoEvento] == 1)
- {
- GivePlayerWeapon(p, EventInfo[Arma], strval(inputtext));
- }
- }
- GetPlayerName(playerid, NomePlayer, MAX_PLAYER_NAME);
- format(Format, sizeof(Format), "[EVENTO] O Administrador %s deu a arma ID %d para todos os jogadores do evento!", NomePlayer, EventInfo[Arma]);
- SendEventMessage(COR_INFO, Format);
- }
- return 1;
- }
- if(dialogid == DIALOG_CARRO)
- {
- if(response)
- {
- if(strval(inputtext) < 400 && strval(inputtext) != 0 || strval(inputtext) > 611 && strval(inputtext) != 0) return SendClientMessage(playerid, COR_ERRO, "[ERRO] ID informado invalido!");
- EventInfo[Carro] = strval(inputtext);
- if(strval(inputtext) == 0)
- {
- for(new p = 0; p < MAX_PLAYERS; p++)
- {
- if(PlayerInfo[p][NoEvento] == 1)
- {
- DestroyVehicle(PlayerInfo[p][Carro]);
- PlayerInfo[p][Carro] = 0;
- }
- }
- GetPlayerName(playerid, NomePlayer, MAX_PLAYER_NAME);
- format(Format, sizeof(Format), "[EVENTO] O Administrador %s retirou o veiculo de todos os jogadores do evento!", NomePlayer);
- SendEventMessage(COR_INFO, Format);
- return 1;
- }
- ShowPlayerDialog(playerid, DIALOG_COR1, DIALOG_STYLE_INPUT, "{FFFF00}Definições do Evento", "Digite a Primeira Cor que você deseja para os Veiculos:", "Continuar", "");
- }
- return 1;
- }
- if(dialogid == DIALOG_COR1)
- {
- if(response)
- {
- if(strval(inputtext) < 0 || strval(inputtext) > 255) return SendClientMessage(playerid, COR_ERRO, "[ERRO] ID informado invalido!");
- EventInfo[Cor1] = strval(inputtext);
- ShowPlayerDialog(playerid, DIALOG_COR2, DIALOG_STYLE_INPUT, "{FFFF00}Definições do Evento", "Digite a Segunda Cor que você deseja para os Veiculos:", "Continuar", "");
- }
- return 1;
- }
- if(dialogid == DIALOG_COR2)
- {
- if(response)
- {
- if(strval(inputtext) < 0 || strval(inputtext) > 255) return SendClientMessage(playerid, COR_ERRO, "[ERRO] ID informado invalido!");
- EventInfo[Cor2] = strval(inputtext);
- new CarID;
- for(new p = 0; p < MAX_PLAYERS; p++)
- {
- if(PlayerInfo[p][NoEvento] == 1)
- {
- if(PlayerInfo[p][Carro] >= 1)
- {
- DestroyVehicle(PlayerInfo[p][Carro]);
- PlayerInfo[p][Carro] = 0;
- }
- GetPlayerPos(p, PosX, PosY, PosZ);
- GetPlayerFacingAngle(p, PosA);
- CarID = CreateVehicle(EventInfo[Carro], PosX, PosY, PosZ, PosA, EventInfo[Cor1], EventInfo[Cor2], -1);
- LinkVehicleToInterior(CarID, EventInfo[Interior]);
- SetVehicleVirtualWorld(CarID, EventInfo[VirtualWorld]);
- PutPlayerInVehicle(p, CarID, 0);
- PlayerInfo[p][Carro] = CarID;
- }
- }
- GetPlayerName(playerid, NomePlayer, MAX_PLAYER_NAME);
- format(Format, sizeof(Format), "[EVENTO] O Administrador %s deu o veiculo ID %d para todos os jogadores do evento!", NomePlayer, EventInfo[Carro]);
- SendEventMessage(COR_INFO, Format);
- }
- return 1;
- }
- if(dialogid == DIALOG_VIDAVEICULOS)
- {
- if(response)
- {
- if(strval(inputtext) < 0 || strval(inputtext) > 5000) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Use de 0 á 5000!");
- for(new p = 0; p < MAX_PLAYERS; p++)
- {
- if(PlayerInfo[p][NoEvento] == 1)
- {
- if(PlayerInfo[p][Carro] >= 1)
- {
- SetVehicleHealth(PlayerInfo[p][Carro], strval(inputtext));
- }
- }
- }
- GetPlayerName(playerid, NomePlayer, MAX_PLAYER_NAME);
- format(Format, sizeof(Format), "[EVENTO] O Administrador %s setou a vida dos veiculos do evento para %d", NomePlayer, strval(inputtext));
- SendEventMessage(COR_INFO, Format);
- }
- return 1;
- }
- if(dialogid == DIALOG_KICK)
- {
- if(response)
- {
- if(!IsPlayerConnected(strval(inputtext))) return SendClientMessage(playerid, COR_ERRO, "[ERRO] O Jogador informado não esta conectado!");
- if(PlayerInfo[strval(inputtext)][NoEvento] == 0) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Não é possivel kickar um jogador que não está no evento!");
- new NomePlayer2[MAX_PLAYER_NAME];
- SetPlayerVirtualWorld(strval(inputtext), 0);
- SetPlayerInterior(strval(inputtext), 0);
- SpawnPlayer(strval(inputtext));
- PlayerInfo[strval(inputtext)][NoEvento] = 0;
- if(PlayerInfo[strval(inputtext)][Carro] >= 1)
- {
- DestroyVehicle(PlayerInfo[strval(inputtext)][Carro]);
- PlayerInfo[strval(inputtext)][Carro] = 0;
- }
- GetPlayerName(playerid, NomePlayer, MAX_PLAYER_NAME);
- GetPlayerName(strval(inputtext), NomePlayer2, MAX_PLAYER_NAME);
- format(Format, sizeof(Format), "[EVENTO] O Administrador %s kickou o jogador %s do evento!", NomePlayer, NomePlayer2);
- SendEventMessage(COR_INFO, Format);
- }
- return 1;
- }
- if(dialogid == DIALOG_FIM1)
- {
- if(response)
- {
- if(!IsPlayerConnected(strval(inputtext))) return SendClientMessage(playerid, COR_ERRO, "[ERRO] O Jogador informado não esta conectado!");
- GivePlayerMoney(strval(inputtext), EventInfo[Premio1]);
- GetPlayerName(strval(inputtext), NomePlayer, MAX_PLAYER_NAME);
- format(Format, sizeof(Format), "[EVENTO] 1º Colocado: %s | Premio Pago [%d]", NomePlayer, EventInfo[Premio1]);
- SendClientMessageToAll(COR_INFO, Format);
- ShowPlayerDialog(playerid, DIALOG_FIM2, DIALOG_STYLE_INPUT, "{FFFF00}Definições do Evento", "Digite o ID do Segundo Colocado no Evento:", "Continuar", "");
- }
- return 1;
- }
- if(dialogid == DIALOG_FIM2)
- {
- if(response)
- {
- if(!IsPlayerConnected(strval(inputtext))) return SendClientMessage(playerid, COR_ERRO, "[ERRO] O Jogador informado não esta conectado!");
- GivePlayerMoney(strval(inputtext), EventInfo[Premio2]);
- GetPlayerName(strval(inputtext), NomePlayer, MAX_PLAYER_NAME);
- format(Format, sizeof(Format), "[EVENTO] 2º Colocado: %s | Premio Pago [%d]", NomePlayer, EventInfo[Premio2]);
- SendClientMessageToAll(COR_INFO, Format);
- ShowPlayerDialog(playerid, DIALOG_FIM3, DIALOG_STYLE_INPUT, "{FFFF00}Definições do Evento", "Digite o ID do Terceiro Colocado no Evento:", "Continuar", "");
- }
- return 1;
- }
- if(dialogid == DIALOG_FIM3)
- {
- if(response)
- {
- if(!IsPlayerConnected(strval(inputtext))) return SendClientMessage(playerid, COR_ERRO, "[ERRO] O Jogador informado não esta conectado!");
- GivePlayerMoney(strval(inputtext), EventInfo[Premio3]);
- GetPlayerName(strval(inputtext), NomePlayer, MAX_PLAYER_NAME);
- format(Format, sizeof(Format), "[EVENTO] 3º Colocado: %s | Premio Pago [%d]", NomePlayer, EventInfo[Premio3]);
- SendClientMessageToAll(COR_INFO, Format);
- DestruirEvento(playerid);
- }
- return 1;
- }
- if(dialogid == DIALOG_VIDA)
- {
- if(response)
- {
- if(strval(inputtext) < 0 || strval(inputtext) > 299) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Use de 0 á 100!");
- EventInfo[Vida] = strval(inputtext);
- ShowPlayerDialog(playerid, DIALOG_COLETE, DIALOG_STYLE_INPUT, "{FFFF00}Definições do Evento", "Digite o Colete que você deseja Definir para os\nJogadores do Evento", "Definir", "");
- }
- return 1;
- }
- if(dialogid == DIALOG_COLETE)
- {
- if(response)
- {
- if(strval(inputtext) < 0 || strval(inputtext) > 100) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Use de 0 á 100!");
- for(new p = 0; p < MAX_PLAYERS; p++)
- {
- if(PlayerInfo[p][NoEvento] == 1)
- {
- SetPlayerHealth(p, EventInfo[Vida]);
- SetPlayerArmour(p, strval(inputtext));
- }
- }
- GetPlayerName(playerid, NomePlayer, MAX_PLAYER_NAME);
- format(Format, sizeof(Format), "[EVENTO] O Administrador %s setou a vida dos jogadores do evento para %d e o colete para %d", NomePlayer, EventInfo[Vida], strval(inputtext));
- SendEventMessage(COR_INFO, Format);
- }
- return 1;
- }
- if(dialogid == DIALOG_SKIN)
- {
- if(response)
- {
- if(strval(inputtext) < 0 || strval(inputtext) > 100) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Use de 0 á 100!");
- for(new p = 0; p < MAX_PLAYERS; p++)
- {
- if(PlayerInfo[p][NoEvento] == 1)
- {
- SetPlayerSkin(p, strval(inputtext));
- }
- }
- GetPlayerName(playerid, NomePlayer, MAX_PLAYER_NAME);
- format(Format, sizeof(Format), "[EVENTO] O Administrador %s setou a skin dos jogadores do evento para %d", NomePlayer, strval(inputtext));
- SendEventMessage(COR_INFO, Format);
- }
- return 1;
- }
- if(dialogid == DIALOG_BAN1)
- {
- if(response)
- {
- if(!IsPlayerConnected(strval(inputtext))) return SendClientMessage(playerid, COR_ERRO, "[ERRO] O Jogador informado não esta conectado!");
- BanInfo[ID] = strval(inputtext);
- ShowPlayerDialog(playerid, DIALOG_BAN2, DIALOG_STYLE_INPUT, "{FF0000}Definições do Banimento", "{FFFFFF}Digite a quantidade de Dias que\nvocê deseja que o Jogador seja banido:", "Continuar", "Cancelar");
- }
- else
- {
- BanInfo[ID] = 0;
- BanInfo[Tempo] = 0;
- }
- return 1;
- }
- if(dialogid == DIALOG_BAN2)
- {
- if(response)
- {
- if(strval(inputtext) < 1 || strval(inputtext) > 30) return SendClientMessage(playerid, COR_ERRO, "[ERRO] É permitido um período minimo de 1 dia e maximo de 30 dias!");
- BanInfo[Tempo] = strval(inputtext);
- ShowPlayerDialog(playerid, DIALOG_BAN3, DIALOG_STYLE_INPUT, "{FF0000}Definições do Banimento", "{FFFFFF}Digite o Motivo do Banimento:", "Continuar", "Cancelar");
- }
- else
- {
- BanInfo[ID] = 0;
- BanInfo[Tempo] = 0;
- }
- return 1;
- }
- if(dialogid == DIALOG_BAN3)
- {
- if(response)
- {
- new Caminho[64], Dia, Mes, Ano, Hora, Minuto, Segundo;
- GetPlayerName(BanInfo[ID], Name, MAX_PLAYER_NAME);
- GetPlayerName(playerid, NomePlayer, MAX_PLAYER_NAME);
- format(Caminho, sizeof(Caminho), "/BanEvento/%s.ini", Name);
- if(DOF2_FileExists(Caminho)) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Esse jogador já está banido dos eventos!");
- DOF2_CreateFile(Caminho);
- getdate(Ano, Mes, Dia);
- gettime(Hora, Minuto, Segundo);
- DOF2_SetString(Caminho, "Administrador", NomePlayer);
- DOF2_SetString(Caminho, "Motivo", inputtext);
- DOF2_SetInt(Caminho, "Dia", Dia);
- DOF2_SetInt(Caminho, "Mes", Mes);
- DOF2_SetInt(Caminho, "Ano", Ano);
- DOF2_SetInt(Caminho, "Hora", Hora);
- DOF2_SetInt(Caminho, "Minuto", Minuto);
- DOF2_SetInt(Caminho, "Segundo", Segundo);
- DOF2_SetInt(Caminho, "Tempo (DIAS)", BanInfo[Tempo]);
- DOF2_SaveFile();
- PlayerInfo[BanInfo[ID]][Banido] = 1;
- if(PlayerInfo[BanInfo[ID]][NoEvento] == 1)
- {
- SetPlayerVirtualWorld(BanInfo[ID], 0);
- SetPlayerInterior(BanInfo[ID], 0);
- SpawnPlayer(BanInfo[ID]);
- PlayerInfo[BanInfo[ID]][NoEvento] = 0;
- if(PlayerInfo[BanInfo[ID]][Carro] >= 1)
- {
- DestroyVehicle(PlayerInfo[BanInfo[ID]][Carro]);
- PlayerInfo[BanInfo[ID]][Carro] = 0;
- }
- }
- format(Format, sizeof(Format), "[EVENTO] O Administrador %s baniu o jogador %s dos eventos por %d dias | Motivo: %s", NomePlayer, Name, BanInfo[Tempo], inputtext);
- SendClientMessageToAll(COR_INFO, Format);
- BanInfo[ID] = 0;
- BanInfo[Tempo] = 0;
- }
- return 1;
- }
- if(dialogid == DIALOG_DESBAN)
- {
- if(response)
- {
- if(!IsPlayerConnected(strval(inputtext))) return SendClientMessage(playerid, COR_ERRO, "[ERRO] O Jogador informado não esta conectado!");
- BanInfo[DesbanID] = strval(inputtext);
- ShowPlayerDialog(playerid, DIALOG_DESBAN2, DIALOG_STYLE_INPUT, "{FF0000}Definições do Desbanimento", "{FFFFFF}Digite o Motivo do Desbanimento:", "Continuar", "Cancelar");
- }
- return 1;
- }
- if(dialogid == DIALOG_DESBAN2)
- {
- if(response)
- {
- GetPlayerName(BanInfo[DesbanID], Name, MAX_PLAYER_NAME);
- GetPlayerName(playerid, NomePlayer, MAX_PLAYER_NAME);
- format(Format, sizeof(Format), "/BanEvento/%s.ini", Name);
- if(!DOF2_FileExists(Format)) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Esse jogador não está banido dos eventos!");
- DOF2_RemoveFile(Format);
- ChecarBan(BanInfo[DesbanID]);
- format(Format, sizeof(Format), "[EVENTO] O Administrador %s desbaniu o Jogador %s dos eventos | Motivo: %s", NomePlayer, Name, inputtext);
- SendClientMessageToAll(COR_INFO, Format);
- }
- return 1;
- }
- if(dialogid == DIALOG_PUXAR)
- {
- if(response)
- {
- if(!IsPlayerConnected(strval(inputtext))) return SendClientMessage(playerid, COR_ERRO, "[ERRO] O Jogador informado não esta conectado!");
- ChecarBan(strval(inputtext));
- if(EventInfo[Criado] == 0) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Não existe nenhum evento criado!");
- if(PlayerInfo[strval(inputtext)][Banido] == 1) return SendClientMessage(playerid, COR_ERRO, "[ERRO] O Jogador informado está banido!");
- if(PlayerInfo[strval(inputtext)][NoEvento] == 1) return SendClientMessage(playerid, COR_ERRO, "[ERRO] O Jogador já está no Evento!");
- SetPlayerVirtualWorld(strval(inputtext), EventInfo[VirtualWorld]);
- SetPlayerInterior(strval(inputtext), EventInfo[Interior]);
- SetPlayerHealth(strval(inputtext), 100);
- SetPlayerArmour(strval(inputtext), 100);
- ResetPlayerWeapons(strval(inputtext));
- SetPlayerPos(strval(inputtext), EventInfo[X], EventInfo[Y], EventInfo[Z]);
- SetPlayerFacingAngle(strval(inputtext), EventInfo[A]);
- PlayerInfo[strval(inputtext)][NoEvento] = 1;
- }
- return 1;
- }
- if(dialogid == DIALOG_INFOBAN)
- {
- if(response)
- {
- if(!IsPlayerConnected(strval(inputtext))) return SendClientMessage(playerid, COR_ERRO, "O Jogador informado não esta conectado!");
- new Caminho[64];
- GetPlayerName(strval(inputtext), NomePlayer, MAX_PLAYER_NAME);
- format(Caminho, sizeof(Caminho), "/BanEvento/%s.ini", NomePlayer);
- if(!DOF2_FileExists(Caminho)) return SendClientMessage(playerid, COR_ERRO, "[ERRO] O Jogador informado não está banido dos eventos!");
- format(Format, sizeof(Format), "Banido pelo Administrador: %s\nDia: %d\nMes: %d\nAno: %d\nHora: %d\nMinuto: %d\nSegundos: %d\nTempo Banido(DIAS): %d\nMotivo: %s", DOF2_GetString(Caminho, "Administrador"), DOF2_GetInt(Caminho, "Dia"), DOF2_GetInt(Caminho, "Mes"), DOF2_GetInt(Caminho, "Ano"), DOF2_GetInt(Caminho, "Hora"), DOF2_GetInt(Caminho, "Minuto"), DOF2_GetInt(Caminho, "Segundo"), DOF2_GetInt(Caminho, "Tempo (DIAS)"), DOF2_GetString(Caminho, "Motivo"));
- ShowPlayerDialog(playerid, 1313, DIALOG_STYLE_MSGBOX, "{FFFF00}Informações do Ban", Format, "Fechar", "");
- }
- return 1;
- }
- if(dialogid == DIALOG_ABRIREVENTO)
- {
- if(response)
- {
- EventInfo[Criado] = 1;
- EventInfo[Aberto] = 1;
- SetPlayerVirtualWorld(playerid, EventInfo[VirtualWorld]);
- SetPlayerInterior(playerid, EventInfo[Interior]);
- SetPlayerHealth(playerid, 100);
- SetPlayerArmour(playerid, 100);
- PlayerInfo[playerid][NoEvento] = 1;
- GetPlayerName(playerid, NomePlayer, MAX_PLAYER_NAME);
- format(Format, sizeof(Format), "[EVENTO] O Administrador %s criou um Evento Aberto!", NomePlayer);
- SendClientMessageToAll(COR_EVENTO, Format);
- format(Format, sizeof(Format), "{FFFF00}Nome: {FF0000}%s {FFFF00}| Premio para o 1º Lugar: {FF0000}%d {FFFF00}| Premio para o 2º Lugar: {FF0000}%d", EventInfo[Nome], EventInfo[Premio1], EventInfo[Premio2]);
- SendClientMessageToAll(COR_INFO, Format);
- format(Format, sizeof(Format), "{FFFF00}Premio para o 3º Lugar: {FF0000}%d",EventInfo[Premio3]);
- SendClientMessageToAll(COR_INFO, Format);
- SendClientMessageToAll(COR_INFO, "Digite /irevento caso queira participar!");
- return 1;
- }
- else
- {
- EventInfo[Criado] = 1;
- EventInfo[Aberto] = 0;
- SetPlayerVirtualWorld(playerid, EventInfo[VirtualWorld]);
- SetPlayerInterior(playerid, EventInfo[Interior]);
- SetPlayerHealth(playerid, 100);
- SetPlayerArmour(playerid, 100);
- PlayerInfo[playerid][NoEvento] = 1;
- GetPlayerName(playerid, NomePlayer, MAX_PLAYER_NAME);
- format(Format, sizeof(Format), "[EVENTO] O Administrador %s criou um Evento Fechado, aguarde até que ele o abra!", NomePlayer);
- SendClientMessageToAll(COR_EVENTO, Format);
- format(Format, sizeof(Format), "{FFFF00}Nome: {FF0000}%s {FFFF00}| Premio para o 1º Lugar: {FF0000}%d {FFFF00}| Premio para o 2º Lugar: {FF0000}%d {FFFF00}| Premio para o 3º Lugar: {FF0000}%d", EventInfo[Nome], EventInfo[Premio1], EventInfo[Premio2], EventInfo[Premio3]);
- SendClientMessageToAll(COR_INFO, Format);
- }
- return 1;
- }
- return 1;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- if(PlayerInfo[playerid][NoEvento] >= 1)
- {
- SetPlayerVirtualWorld(playerid, 0);
- SetPlayerInterior(playerid, 0);
- PlayerInfo[playerid][NoEvento] = 0;
- if(PlayerInfo[playerid][Carro] >= 1)
- {
- DestroyVehicle(PlayerInfo[playerid][Carro]);
- PlayerInfo[playerid][Carro] = 0;
- }
- }
- return 1;
- }
- CMD:evento(playerid, params[])
- {
- if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Você não está autorizado a usar este comando!");
- new Mensagem[603];
- strcat(Mensagem, "Criar Evento\nSalvar Minha Posição como Local do Evento\nAbrir / Fechar Evento\nDefinir Premio do 1º Colocado\n");
- strcat(Mensagem, "Definir Premio do 2º Colocado\nDefinir Premio do 3º Colocado\nDar Armas para os Jogadores do Evento\nDar um Carro para os Jogador do Evento\nDestruir Evento\nSetar Vida dos Veiculos\nKickar Jogador do Evento\n");
- strcat(Mensagem, "Setar Vida dos Jogadores do Evento\nTrocar Skin dos Jogadores do Evento\nBanir Jogador dos Eventos\nDesbanir Jogador\nPuxar jogador para o evento\nVisualizar informações de um Jogador Banido\nCongelar Jogadores do Evento\nDescongelar Jogadores do Evento\nResetar Armas dos Jogadores do Evento\nCreditos");
- ShowPlayerDialog(playerid, DIALOG_EVENTO, DIALOG_STYLE_LIST, "{FF0000}Painel de Controle do Sistema de Eventos", Mensagem, "Selecionar", "Cancelar");
- return 1;
- }
- CMD:irevento(playerid, params[])
- {
- ChecarBan(playerid);
- if(PlayerInfo[playerid][Banido] == 1) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Você não pode entrar em um evento pois foi banido!");
- if(EventInfo[Criado] == 0) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Não existe nenhum evento criado!");
- if(EventInfo[Aberto] == 0) return SendClientMessage(playerid, COR_ERRO, "[ERRO] O Evento está fechado no momento!");
- if(PlayerInfo[playerid][NoEvento] == 1) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Você já está no Evento!");
- SetPlayerVirtualWorld(playerid, EventInfo[VirtualWorld]);
- SetPlayerInterior(playerid, EventInfo[Interior]);
- SetPlayerHealth(playerid, 100);
- SetPlayerArmour(playerid, 100);
- ResetPlayerWeapons(playerid);
- SetPlayerPos(playerid, EventInfo[X], EventInfo[Y], EventInfo[Z]);
- SetPlayerFacingAngle(playerid, EventInfo[A]);
- PlayerInfo[playerid][NoEvento] = 1;
- return 1;
- }
- CMD:ce(playerid, params[])
- {
- if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Você não está autorizado a usar este comando!");
- if(EventInfo[Criado] == 0) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Não existe nenhum evento criado!");
- if(PlayerInfo[playerid][NoEvento] == 0) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Você não está no Evento!");
- new Mensagem[128];
- if(sscanf(params, "s[128]", Mensagem)) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Use /ce (Chat Evento) [Mensagem]");
- GetPlayerName(playerid, NomePlayer, MAX_PLAYER_NAME);
- format(Format, sizeof(Format), "{FF0000}[EVENTO] %s: {FFFFFF}%s", NomePlayer, Mensagem);
- SendEventMessage(COR_INFO, Format);
- return 1;
- }
- CMD:sairevento(playerid, params[])
- {
- if(PlayerInfo[playerid][NoEvento] == 0) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Não é possivel sair de um Evento que você não está!");
- SetPlayerVirtualWorld(playerid, 0);
- SetPlayerInterior(playerid, 0);
- SpawnPlayer(playerid);
- PlayerInfo[playerid][NoEvento] = 0;
- if(PlayerInfo[playerid][Carro] >= 1)
- {
- DestroyVehicle(PlayerInfo[playerid][Carro]);
- PlayerInfo[playerid][Carro] = 0;
- }
- SendClientMessage(playerid, COR_INFO, "[INFO] Você saiu do Evento!");
- return 1;
- }
- CMD:infoban(playerid, params[])
- {
- new Caminho[64];
- GetPlayerName(playerid, NomePlayer, MAX_PLAYER_NAME);
- format(Caminho, sizeof(Caminho), "/BanEvento/%s.ini", NomePlayer);
- if(!DOF2_FileExists(Caminho)) return SendClientMessage(playerid, COR_ERRO, "[ERRO] Você não está banido dos eventos!");
- format(Format, sizeof(Format), "Banido pelo Administrador: %s\nDia: %d\nMes: %d\nAno: %d\nHora: %d\nMinuto: %d\nSegundos: %d\nTempo Banido(DIAS): %d\nMotivo: %s", DOF2_GetString(Caminho, "Administrador"), DOF2_GetInt(Caminho, "Dia"), DOF2_GetInt(Caminho, "Mes"), DOF2_GetInt(Caminho, "Ano"), DOF2_GetInt(Caminho, "Hora"), DOF2_GetInt(Caminho, "Minuto"), DOF2_GetInt(Caminho, "Segundo"), DOF2_GetInt(Caminho, "Tempo (DIAS)"), DOF2_GetString(Caminho, "Motivo"));
- ShowPlayerDialog(playerid, 1313, DIALOG_STYLE_MSGBOX, "{FFFF00}Informações do Ban", Format, "Fechar", "");
- return 1;
- }
- stock DestruirEvento(playerid)
- {
- EventInfo[X] = 0;
- EventInfo[Y] = 0;
- EventInfo[Z] = 0;
- EventInfo[A] = 0;
- EventInfo[VirtualWorld] = 0;
- EventInfo[Interior] = 0;
- EventInfo[Criado] = 0;
- EventInfo[Aberto] = 0;
- EventInfo[Premio1] = 0;
- EventInfo[Premio2] = 0;
- EventInfo[Premio3] = 0;
- EventInfo[Carro] = 0;
- EventInfo[Cor1] = 0;
- EventInfo[Cor2] = 0;
- EventInfo[Arma] = 0;
- EventInfo[Vida] = 0;
- for(new p = 0; p < MAX_PLAYERS; p++)
- {
- if(PlayerInfo[p][NoEvento] == 1)
- {
- SetPlayerVirtualWorld(p, 0);
- SetPlayerInterior(p, 0);
- SpawnPlayer(p);
- PlayerInfo[p][NoEvento] = 0;
- if(PlayerInfo[p][Carro] >= 1)
- {
- DestroyVehicle(PlayerInfo[p][Carro]);
- PlayerInfo[p][Carro] = 0;
- }
- }
- }
- GetPlayerName(playerid, NomePlayer, MAX_PLAYER_NAME);
- format(Format, sizeof(Format), "[EVENTO] O Administrador %s destruiu o evento!", NomePlayer);
- SendClientMessageToAll(COR_EVENTO, Format);
- return 1;
- }
- stock SendEventMessage(color, string[])
- {
- for(new p = 0; p < MAX_PLAYERS; p++)
- {
- if(IsPlayerConnected(p))
- {
- if(PlayerInfo[p][NoEvento] == 1)
- {
- SendClientMessage(p, color, string);
- }
- }
- }
- return 1;
- }
- stock ChecarBan(playerid)
- {
- new Caminho[64], Dia, Mes, Ano, Hora, Minuto, Segundo;
- GetPlayerName(playerid, NomePlayer, MAX_PLAYER_NAME);
- format(Caminho, sizeof(Caminho), "/BanEvento/%s.ini", NomePlayer);
- if(!DOF2_FileExists(Caminho)) return PlayerInfo[playerid][Banido] = 0;
- if(DOF2_FileExists(Caminho))
- {
- getdate(Ano, Mes, Dia);
- gettime(Hora, Minuto, Segundo);
- if(Dia >= (DOF2_GetInt(Caminho, "Dia") + DOF2_GetInt(Caminho, "Tempo (DIAS)")))
- {
- DOF2_RemoveFile(Caminho);
- PlayerInfo[playerid][Banido] = 0;
- }
- else
- {
- PlayerInfo[playerid][Banido] = 1;
- }
- }
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement