Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define FILTERSCRIPT
- #include <a_samp>
- #include <zcmd>
- #include <sscanf>
- #if defined FILTERSCRIPT
- #define SENHA_CRIAR_EVENTO "123456" // Mude a senha para criar eventos
- #define DIALOG_EVENTO1 (243)
- #define DIALOG_EVENTO2 (244)
- #define DIALOG_EVENTO3 (245)
- #define DIALOG_EVENTO4 (246)
- #define DIALOG_EVENTO5 (247)
- #define DIALOG_EVENTO6 (248)
- enum Evento_inf
- {
- Evento_Jogadores,
- Evento_Armas[2],
- Evento_Nome[50],
- Evento_Criador[50],
- Evento_Existe,
- Evento_Aberto,
- Evento_Iniciado,
- Evento_Recompenca,
- Float:Evento_X,
- Float:Evento_Y,
- Float:Evento_Z,
- Evento_Interior,
- Evento_Timer,
- Evento_Contagem,
- Evento_TimerGanhador
- };
- enum JogadorEvento_inf
- {
- JogadorEstaNoEvento,
- LogadoNaSenha,
- MatouNoEvento,
- };
- new
- EventoInfo[Evento_inf],
- JogadorEventoInfo[101][JogadorEvento_inf];
- public OnFilterScriptInit()
- {
- EventoInfo[Evento_Existe] =0;
- printf(" Sistema de Evento Carregado");
- for(new i=0; i<101; i++)
- {
- if(IsPlayerConnected(i))
- {
- JogadorEventoInfo[i][JogadorEstaNoEvento] = 0;
- }
- }
- EventoInfo[Evento_Jogadores] = 0;
- EventoInfo[Evento_Existe] = 0;
- EventoInfo[Evento_Aberto] = 0;
- EventoInfo[Evento_Iniciado] = 0;
- KillTimer(EventoInfo[Evento_TimerGanhador]);
- return 1;
- }
- public OnFilterScriptExit()
- {
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- JogadorEventoInfo[playerid][JogadorEstaNoEvento] = 0;
- JogadorEventoInfo[playerid][LogadoNaSenha] = 0;
- JogadorEventoInfo[playerid][MatouNoEvento] = 0;
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- if(JogadorEventoInfo[playerid][JogadorEstaNoEvento] ==1)
- {
- new MsgNome[50],MsgSaiuEvento[150];
- GetPlayerName(playerid,MsgNome,sizeof(MsgNome));
- EventoInfo[Evento_Jogadores]--;
- JogadorEventoInfo[playerid][JogadorEstaNoEvento] = 0;
- format(MsgSaiuEvento,sizeof(MsgSaiuEvento),"*** %s(%d) Saiu do evento (Motivo: Deixou o servidor)",MsgNome,playerid);
- SendClientMessageToAll(0xFF1493FF,MsgSaiuEvento);
- }
- return 1;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- if(JogadorEventoInfo[playerid][JogadorEstaNoEvento] ==1)
- {
- EventoInfo[Evento_Jogadores]--;
- JogadorEventoInfo[playerid][JogadorEstaNoEvento] = 0;
- ResetPlayerWeapons(playerid);
- if(killerid != INVALID_PLAYER_ID)
- {
- if(JogadorEventoInfo[killerid][JogadorEstaNoEvento] ==1)
- {
- JogadorEventoInfo[killerid][MatouNoEvento]++;
- }
- }
- }
- return 1;
- }
- //------------------------------------------------------------------------------
- CMD:eventologar(playerid)
- {
- if(JogadorEventoInfo[playerid][LogadoNaSenha] == 0)
- {
- ShowPlayerDialog(playerid,DIALOG_EVENTO1,DIALOG_STYLE_INPUT,"{00BFFF}Evento Senha","{00BFFF}\tSistema de Eventos\nPor favor digite a senha para poder criar eventos","Logar","Sair");
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: Você já está autorizado a criar eventos");
- }
- return 1;
- }
- //------------------------------------------------------------------------------
- CMD:criarevento(playerid)
- {
- if(JogadorEventoInfo[playerid][LogadoNaSenha] == 1)
- {
- if(EventoInfo[Evento_Existe] == 0)
- {
- ShowPlayerDialog(playerid,DIALOG_EVENTO2,DIALOG_STYLE_INPUT,"{00BFFF}Evento Nome","{00BFFF}Digite o nome do evento.","Proximo","Cancelar");
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: Já existe um evento em andamento ou sendo criado");
- }
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: Você já não está autorizado a criar eventos");
- }
- return 1;
- }
- //------------------------------------------------------------------------------
- CMD:fecharevento(playerid)
- {
- new JogadorNome[50];
- GetPlayerName(playerid,JogadorNome,sizeof(JogadorNome));
- if(!strcmp(EventoInfo[Evento_Criador],JogadorNome,true))
- {
- if(EventoInfo[Evento_Existe] == 1)
- {
- if(EventoInfo[Evento_Aberto] == 1)
- {
- new MsgFechouEvento[150];
- EventoInfo[Evento_Aberto] = 0;
- format(MsgFechouEvento,sizeof(MsgFechouEvento),"|- %s(%d) Fechou o evento \"%s\"",JogadorNome,playerid,EventoInfo[Evento_Nome]);
- SendClientMessageToAll(0x00BFFFFF,MsgFechouEvento);
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: O Evento já está fechado");
- }
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: Não existe nenhum evento agora");
- }
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: Você não é o criador do evento");
- }
- return 1;
- }
- //------------------------------------------------------------------------------
- CMD:abrirevento(playerid)
- {
- new JogadorNome[50];
- GetPlayerName(playerid,JogadorNome,sizeof(JogadorNome));
- if(!strcmp(EventoInfo[Evento_Criador],JogadorNome,true))
- {
- if(EventoInfo[Evento_Existe] == 1)
- {
- if(EventoInfo[Evento_Aberto] == 0)
- {
- new MsgFechouEvento[150];
- EventoInfo[Evento_Aberto] = 1;
- format(MsgFechouEvento,sizeof(MsgFechouEvento),"|- %s(%d) Abriu novamente o evento \"%s\"",JogadorNome,playerid,EventoInfo[Evento_Nome]);
- SendClientMessageToAll(0x00BFFFFF,MsgFechouEvento);
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: O Evento já está aberto");
- }
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: Não existe nenhum evento agora");
- }
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: Você não é o criador do evento");
- }
- return 1;
- }
- //------------------------------------------------------------------------------
- CMD:comecarevento(playerid)
- {
- new JogadorNome[50];
- GetPlayerName(playerid,JogadorNome,sizeof(JogadorNome));
- if(!strcmp(EventoInfo[Evento_Criador],JogadorNome,true))
- {
- if(EventoInfo[Evento_Existe] == 1)
- {
- if(EventoInfo[Evento_Iniciado] == 0)
- {
- if(EventoInfo[Evento_Jogadores] >=1)
- {
- new MsgIniciarEvento[150];
- format(MsgIniciarEvento,sizeof(MsgIniciarEvento),"Evento \"%s\" Inicado",EventoInfo[Evento_Nome]);
- SendClientMessageToAll(0x00FF00FF,MsgIniciarEvento);
- EventoInfo[Evento_Iniciado] = 1;
- EventoInfo[Evento_Aberto] = 0;
- EventoInfo[Evento_Contagem] = 5;
- EventoInfo[Evento_Timer] = SetTimer("ContagemIniciarEvento",1200,true);
- for(new i=0; i<101; i++)
- {
- if(IsPlayerConnected(i))
- {
- if(JogadorEventoInfo[i][JogadorEstaNoEvento] == 1)
- {
- TogglePlayerControllable(i,0);
- }
- }
- }
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: O Evento precisa ter mais de 1 jogador para ser inicado");
- }
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: O Evento já foi iniciado");
- }
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: Não existe nenhum evento agora");
- }
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: Você não é o criador do evento");
- }
- return 1;
- }
- //------------------------------------------------------------------------------
- CMD:terminarevento(playerid)
- {
- new JogadorNome[50];
- GetPlayerName(playerid,JogadorNome,sizeof(JogadorNome));
- if(!strcmp(EventoInfo[Evento_Criador],JogadorNome,true))
- {
- if(EventoInfo[Evento_Existe] == 1)
- {
- new MsgAcabouEvento[128];
- format(MsgAcabouEvento,sizeof(MsgAcabouEvento),"|- O Jogador %s(%d) Terminou o evento.",JogadorNome,playerid);
- for(new i=0; i<101; i++)
- {
- if(IsPlayerConnected(i))
- {
- if(JogadorEventoInfo[i][JogadorEstaNoEvento] == 1)
- {
- ResetPlayerWeapons(i);
- JogadorEventoInfo[i][JogadorEstaNoEvento] = 0;
- SetPlayerVirtualWorld(i,0);
- SetPlayerInterior(i,0);
- SpawnPlayer(i);
- SendClientMessage(i,0x00FF00FF,MsgAcabouEvento);
- }
- }
- }
- EventoInfo[Evento_Jogadores] = 0;
- EventoInfo[Evento_Existe] = 0;
- EventoInfo[Evento_Aberto] = 0;
- EventoInfo[Evento_Iniciado] = 0;
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: Não existe nenhum evento agora");
- }
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: Você não é o criador do evento");
- }
- return 1;
- }
- //------------------------------------------------------------------------------
- CMD:irevento(playerid)
- {
- if(JogadorEventoInfo[playerid][JogadorEstaNoEvento] == 0)
- {
- if(EventoInfo[Evento_Existe] == 1)
- {
- if(EventoInfo[Evento_Aberto] == 1)
- {
- if(EventoInfo[Evento_Iniciado] == 0)
- {
- new MsgEntrarEvento[150],JogadorNome[50];
- EventoInfo[Evento_Jogadores]++;
- JogadorEventoInfo[playerid][JogadorEstaNoEvento] = 1;
- JogadorEventoInfo[playerid][MatouNoEvento] = 0;
- SetPlayerPos(playerid,EventoInfo[Evento_X],EventoInfo[Evento_Y],EventoInfo[Evento_Z]);
- SetPlayerInterior(playerid,EventoInfo[Evento_Interior]);
- SetPlayerVirtualWorld(playerid,3);
- ResetPlayerWeapons(playerid);
- GetPlayerName(playerid,JogadorNome,sizeof(JogadorNome));
- format(MsgEntrarEvento,sizeof(MsgEntrarEvento),"[INFO]{00FF00}%s(%d) Entrou no evento usando {FFFF00}/IrEvento",JogadorNome,playerid);
- SendClientMessageToAll(0xFFFF00FF,MsgEntrarEvento);
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: O Evento já foi iniciado");
- }
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: O Evento já foi fechado");
- }
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: Não existe nenhum evento agora");
- }
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: Você já está no evento");
- }
- return 1;
- }
- //------------------------------------------------------------------------------
- CMD:sairevento(playerid)
- {
- if(JogadorEventoInfo[playerid][JogadorEstaNoEvento] == 1)
- {
- if(EventoInfo[Evento_Existe] == 1)
- {
- new MsgNome[50],MsgSaiuEvento[150];
- GetPlayerName(playerid,MsgNome,sizeof(MsgNome));
- EventoInfo[Evento_Jogadores]--;
- JogadorEventoInfo[playerid][JogadorEstaNoEvento] = 0;
- format(MsgSaiuEvento,sizeof(MsgSaiuEvento),"*** %s(%d) Saiu do evento (Motivo: Escolheu sair)",MsgNome,playerid);
- SendClientMessageToAll(0xFF1493FF,MsgSaiuEvento);
- ResetPlayerWeapons(playerid);
- SetPlayerVirtualWorld(playerid,0);
- SetPlayerInterior(playerid,0);
- SpawnPlayer(playerid);
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: Não existe nenhum evento agora");
- }
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: Você não está em um evento");
- }
- return 1;
- }
- //------------------------------------------------------------------------------
- CMD:eventovida(playerid,params[])
- {
- new JogadorNome[50],EventoVida,MsgDeuVida[160];
- GetPlayerName(playerid,JogadorNome,sizeof(JogadorNome));
- if(!strcmp(EventoInfo[Evento_Criador],JogadorNome,true))
- {
- if(sscanf(params,"d",EventoVida))return SendClientMessage(playerid,0xFF0000FF,"USE: /EventoVida [Quantidade]");
- if(EventoInfo[Evento_Existe] == 1)
- {
- for(new i=0; i<101; i++)
- {
- if(IsPlayerConnected(i))
- {
- if(JogadorEventoInfo[i][JogadorEstaNoEvento] == 1)
- {
- SetPlayerHealth(i,EventoVida);
- format(MsgDeuVida,sizeof(MsgDeuVida),"|- %s(%d) Deu %d de vida a todos no evento -|",JogadorNome,playerid);
- SendClientMessage(i,0x00FF00FF,MsgDeuVida);
- }
- }
- }
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: Não existe nenhum evento agora");
- }
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: Você não é o criador do evento");
- }
- return 1;
- }
- //------------------------------------------------------------------------------
- CMD:eventocolete(playerid,params[])
- {
- new JogadorNome[50],EventoColete,MsgDeuColete[160];
- GetPlayerName(playerid,JogadorNome,sizeof(JogadorNome));
- if(!strcmp(EventoInfo[Evento_Criador],JogadorNome,true))
- {
- if(sscanf(params,"d",EventoColete))return SendClientMessage(playerid,0xFF0000FF,"USE: /EventoColete [Quantidade]");
- if(EventoInfo[Evento_Existe] == 1)
- {
- for(new i=0; i<101; i++)
- {
- if(IsPlayerConnected(i))
- {
- if(JogadorEventoInfo[i][JogadorEstaNoEvento] == 1)
- {
- SetPlayerArmour(i,EventoColete);
- format(MsgDeuColete,sizeof(MsgDeuColete),"|- %s(%d) Deu %d de colete a todos no evento -|",JogadorNome,playerid);
- SendClientMessage(i,0x00FF00FF,MsgDeuColete);
- }
- }
- }
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: Não existe nenhum evento agora");
- }
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: Você não é o criador do evento");
- }
- return 1;
- }
- //------------------------------------------------------------------------------
- CMD:tirardoevento(playerid,params[])
- {
- new JogadorNome[50],JogadorID;
- GetPlayerName(playerid,JogadorNome,sizeof(JogadorNome));
- if(!strcmp(EventoInfo[Evento_Criador],JogadorNome,true))
- {
- if(sscanf(params,"u",JogadorID))return SendClientMessage(playerid,0xFF0000FF,"USE: /TirarDoEvento [Jogador-ID]");
- if(EventoInfo[Evento_Existe] == 1)
- {
- if(IsPlayerConnected(JogadorID))
- {
- if(JogadorEventoInfo[JogadorID][JogadorEstaNoEvento] == 1)
- {
- new MsgNome[50],MsgSaiuEvento[150];
- GetPlayerName(JogadorID,MsgNome,sizeof(MsgNome));
- EventoInfo[Evento_Jogadores]--;
- JogadorEventoInfo[JogadorID][JogadorEstaNoEvento] = 0;
- format(MsgSaiuEvento,sizeof(MsgSaiuEvento),"*** %s(%d) Saiu do evento (Motivo: Kickado pelo criador)",MsgNome,JogadorID);
- SendClientMessageToAll(0xFF1493FF,MsgSaiuEvento);
- ResetPlayerWeapons(JogadorID);
- SetPlayerVirtualWorld(JogadorID,0);
- SetPlayerInterior(JogadorID,0);
- SpawnPlayer(JogadorID);
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: Esse jogador não está no evento.");
- }
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: Esse jogador não está conectado.");
- }
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: Não existe nenhum evento agora!");
- }
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: Você não é o criador do evento");
- }
- return 1;
- }
- //------------------------------------------------------------------------------
- CMD:eventotrazer(playerid,params[])
- {
- new JogadorNome[50],JogadorID;
- GetPlayerName(playerid,JogadorNome,sizeof(JogadorNome));
- if(!strcmp(EventoInfo[Evento_Criador],JogadorNome,true))
- {
- if(sscanf(params,"u",JogadorID))return SendClientMessage(playerid,0xFF0000FF,"USE: /EventoTrazer [Jogador-ID]");
- if(EventoInfo[Evento_Existe] == 1)
- {
- if(IsPlayerConnected(JogadorID))
- {
- if(JogadorEventoInfo[JogadorID][JogadorEstaNoEvento] == 1)
- {
- new MsgLevarEvento[160],JogadorNome2[50];
- GetPlayerName(JogadorID,JogadorNome2,sizeof(JogadorNome2));
- SetPlayerPos(JogadorID,EventoInfo[Evento_X],EventoInfo[Evento_Y],EventoInfo[Evento_Z]);
- SetPlayerInterior(JogadorID,EventoInfo[Evento_Interior]);
- SetPlayerVirtualWorld(JogadorID,3);
- format(MsgLevarEvento,128,"|- Você levou \"%s\" até a posição inicial do evento -|",JogadorNome2);
- SendClientMessage(playerid,0x00BFFFFF,MsgLevarEvento);
- format(MsgLevarEvento,128,"|- O Jogador \"%s\" levou você até a posição inicial do evento -|",JogadorNome);
- SendClientMessage(JogadorID,0x00BFFFFF,MsgLevarEvento);
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: Esse jogador não está no evento.");
- }
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: Esse jogador não está conectado.");
- }
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: Não existe nenhum evento agora!");
- }
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: Você não é o criador do evento");
- }
- return 1;
- }
- //------------------------------------------------------------------------------
- CMD:noevento(playerid)
- {
- new MsgEventoAjuda[300],JogadoresNome[50],MsgNoEvento[100];
- if(EventoInfo[Evento_Existe] == 1)
- {
- if(EventoInfo[Evento_Jogadores] >= 1)
- {
- for(new i=0; i<101; i++)
- {
- if(IsPlayerConnected(i))
- {
- if(JogadorEventoInfo[i][JogadorEstaNoEvento] == 1)
- {
- GetPlayerName(i,JogadoresNome,sizeof(JogadoresNome));
- format(MsgNoEvento,sizeof(MsgNoEvento),"{00FF00}%s",JogadoresNome);
- strcat(MsgEventoAjuda,MsgNoEvento);
- }
- }
- }
- ShowPlayerDialog(playerid,DIALOG_EVENTO6,DIALOG_STYLE_MSGBOX,"{00FF00}Membros",MsgEventoAjuda,"Fechar","");
- }
- else
- {
- ShowPlayerDialog(playerid,DIALOG_EVENTO6,DIALOG_STYLE_MSGBOX,"{00FF00}Membros","{FF0000}Não a jogadores no evento","Fechar","");
- }
- }
- else
- {
- ShowPlayerDialog(playerid,DIALOG_EVENTO6,DIALOG_STYLE_MSGBOX,"{00FF00}Membros","{FF0000}Não existe evento agora","Fechar","");
- }
- return 1;
- }
- //------------------------------------------------------------------------------
- CMD:eventoajuda(playerid)
- {
- new MsgEventoAjuda[900];
- strcat(MsgEventoAjuda,"{00FF00}\t | Sistema de Evento |\n\n");
- strcat(MsgEventoAjuda,"{00FF00}Use /IrEvento Para entrar em um evento\n");
- strcat(MsgEventoAjuda,"{00FF00}Use /SairEvento Para sair de um evento\n");
- strcat(MsgEventoAjuda,"{00FF00}Use /NoEvento Para ver quem está no evento\n");
- strcat(MsgEventoAjuda,"{00FF00}\n\t | Criador de Eventos |\n\n");
- strcat(MsgEventoAjuda,"{00FF00}Use /EventoLogar Para identificar-se como criador de eventos\n");
- strcat(MsgEventoAjuda,"{00FF00}Use /CriarEvento Para criar eventos.\n");
- strcat(MsgEventoAjuda,"{00FF00}Use /FecharEvento Para fechar um evento\n");
- strcat(MsgEventoAjuda,"{00FF00}Use /AbrirEvento Para abrir um evento\n");
- strcat(MsgEventoAjuda,"{00FF00}Use /ComecarEvento Para iniciar um evento\n");
- strcat(MsgEventoAjuda,"{00FF00}Use /TerminarEvento Para terminar um evento\n");
- strcat(MsgEventoAjuda,"{00FF00}Use /EventoVida Para dar vida a todos no evento\n");
- strcat(MsgEventoAjuda,"{00FF00}Use /EventoColete Para dar colete a todos no evento\n");
- strcat(MsgEventoAjuda,"{00FF00}Use /TirarDoEvento Para tirarum jogador do evento\n");
- strcat(MsgEventoAjuda,"{00FF00}Use /EventoTrazer Para trazer todos até a posição inicial do evento\n\n");
- strcat(MsgEventoAjuda,"\t{FF0000}Sistema de evento feito by Gustavo A.K.A Metatron");
- ShowPlayerDialog(playerid,DIALOG_EVENTO6,DIALOG_STYLE_MSGBOX,"{00FF00}Ajuda Evento",MsgEventoAjuda,"Fechar","");
- return 1;
- }
- //------------------------------------------------------------------------------
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- if(dialogid == DIALOG_EVENTO1)
- {
- if(response)
- {
- if(isnull(inputtext))
- {
- ShowPlayerDialog(playerid,DIALOG_EVENTO1,DIALOG_STYLE_INPUT,"{00BFFF}Evento Senha","{00BFFF}\tSistema de Eventos\nPor favor digite a senha para poder criar eventos","Logar","Sair");
- SendClientMessage(playerid,0xFF0000FF,"Você precisa digitar a senha para poder criar eventos");
- }
- else
- if(!isnull(inputtext))
- {
- if(!strcmp(inputtext,SENHA_CRIAR_EVENTO,true))
- {
- JogadorEventoInfo[playerid][LogadoNaSenha] = 1;
- SendClientMessage(playerid,0x00FF00FF,"Você está autorizado a criar eventos!");
- PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
- }
- else
- {
- ShowPlayerDialog(playerid,DIALOG_EVENTO1,DIALOG_STYLE_INPUT,"{00BFFF}Evento Senha","{00BFFF}\tSistema de Eventos\nPor favor digite a senha para poder criar eventos","Logar","Sair");
- SendClientMessage(playerid,0xFF0000FF,"ERRO: A Senha que você digitou está incorreta.");
- }
- }
- }
- }
- if(dialogid == DIALOG_EVENTO2)
- {
- if(!response)
- {
- EventoInfo[Evento_Existe] = 0;
- EventoInfo[Evento_Armas][0] = 0;
- EventoInfo[Evento_Armas][1] = 0;
- }
- if(response)
- {
- if(isnull(inputtext))
- {
- ShowPlayerDialog(playerid,DIALOG_EVENTO2,DIALOG_STYLE_INPUT,"{00BFFF}Evento Nome","{00BFFF}Digite o nome do evento.","Proximo","Cancelar");
- SendClientMessage(playerid,0xFF0000FF,"ERRO: Você precisa digitar um nome para criar o evento");
- }
- else
- if(!isnull(inputtext))
- {
- format(EventoInfo[Evento_Nome],50,"%s",inputtext);
- GetPlayerName(playerid,EventoInfo[Evento_Criador],50);
- ShowPlayerDialog(playerid,DIALOG_EVENTO3,DIALOG_STYLE_INPUT,"{00BFFF}Evento Recompença","{00BFFF}Digite o valor do prêmio do ganhador","Proximo","Voltar");
- }
- }
- }
- if(dialogid == DIALOG_EVENTO3)
- {
- if(!response)
- {
- ShowPlayerDialog(playerid,DIALOG_EVENTO2,DIALOG_STYLE_INPUT,"{00BFFF}Evento Nome","{00BFFF}Digite o nome do evento.","Proximo","Cancelar");
- }
- if(response)
- {
- if(strval(inputtext) >= 1 || strval(inputtext) <= 500000)
- {
- EventoInfo[Evento_Recompenca] = strval(inputtext);
- ShowPlayerDialog(playerid,DIALOG_EVENTO4,DIALOG_STYLE_INPUT,"{00BFFF}Evento Arma 1","{00BFFF}Digite o nome ou o ID da arma","Proximo","Cancelar");
- }
- else
- {
- SendClientMessage(playerid,0xFF0000FF,"ERRO: O Valor do prêmio deve ser maior que 0 e menor que 500000");
- }
- }
- }
- if(dialogid == DIALOG_EVENTO4)
- {
- if(!response)
- {
- ShowPlayerDialog(playerid,DIALOG_EVENTO3,DIALOG_STYLE_INPUT,"{00BFFF}Evento Recompença","{00BFFF}Digite o valor do prêmio do ganhador","Proximo","Voltar");
- }
- if(response)
- {
- if(IsNumeric(inputtext))
- {
- if(strval(inputtext) >=1 || strval(inputtext) <= 47)
- {
- EventoInfo[Evento_Armas][0] = strval(inputtext);
- ShowPlayerDialog(playerid,DIALOG_EVENTO5,DIALOG_STYLE_INPUT,"{00BFFF}Evento Arma 2","{00BFFF}Digite o nome ou o ID da arma","Proximo","Cancelar");
- }
- else
- {
- ShowPlayerDialog(playerid,DIALOG_EVENTO4,DIALOG_STYLE_INPUT,"{00BFFF}Evento Arma 1","{00BFFF}Digite o nome ou o ID da arma","Proximo","Cancelar");
- SendClientMessage(playerid,0xFF0000FF,"ERRO: ID da arma invalido");
- }
- }
- else
- {
- if(PegarModeloDaArmaPorNome(inputtext) != -1)
- {
- EventoInfo[Evento_Armas][0] = PegarModeloDaArmaPorNome(inputtext);
- ShowPlayerDialog(playerid,DIALOG_EVENTO5,DIALOG_STYLE_INPUT,"{00BFFF}Evento Arma 2","{00BFFF}Digite o nome ou o ID da arma","Proximo","Cancelar");
- }
- else
- {
- ShowPlayerDialog(playerid,DIALOG_EVENTO4,DIALOG_STYLE_INPUT,"{00BFFF}Evento Arma 1","{00BFFF}Digite o nome ou o ID da arma","Proximo","Cancelar");
- SendClientMessage(playerid,0xFF0000FF,"ERRO: Não existe nenhuma arma com esse nome");
- }
- }
- }
- }
- if(dialogid == DIALOG_EVENTO5)
- {
- if(!response)
- {
- ShowPlayerDialog(playerid,DIALOG_EVENTO4,DIALOG_STYLE_INPUT,"{00BFFF}Evento Arma 1","{00BFFF}Digite o nome ou o ID da arma","Proximo","Cancelar");
- }
- if(response)
- {
- if(IsNumeric(inputtext))
- {
- if(strval(inputtext) >=1 || strval(inputtext) <= 47)
- {
- EventoInfo[Evento_Armas][1] = strval(inputtext);
- JogadorCriarEvento(playerid);
- }
- else
- {
- ShowPlayerDialog(playerid,DIALOG_EVENTO5,DIALOG_STYLE_INPUT,"{00BFFF}Evento Arma 2","{00BFFF}Digite o nome ou o ID da arma","Proximo","Cancelar");
- SendClientMessage(playerid,0xFF0000FF,"ERRO: ID da arma invalido");
- }
- }
- else
- {
- if(PegarModeloDaArmaPorNome(inputtext) != -1)
- {
- EventoInfo[Evento_Armas][1] = PegarModeloDaArmaPorNome(inputtext);
- JogadorCriarEvento(playerid);
- }
- else
- {
- ShowPlayerDialog(playerid,DIALOG_EVENTO5,DIALOG_STYLE_INPUT,"{00BFFF}Evento Arma 2","{00BFFF}Digite o nome ou o ID da arma","Proximo","Cancelar");
- SendClientMessage(playerid,0xFF0000FF,"ERRO: Não existe nenhuma arma com esse nome");
- }
- }
- }
- }
- return 1;
- }
- forward JogadorCriarEvento(playerid);
- public JogadorCriarEvento(playerid)
- {
- EventoInfo[Evento_Jogadores] = 0;
- EventoInfo[Evento_Existe] = 1;
- EventoInfo[Evento_Aberto] = 1;
- EventoInfo[Evento_Iniciado] = 0;
- GetPlayerPos(playerid,EventoInfo[Evento_X],EventoInfo[Evento_Y],EventoInfo[Evento_Z]);
- EventoInfo[Evento_Interior] = GetPlayerInterior(playerid);
- new MsgEventoCriado[200];
- format(MsgEventoCriado,sizeof(MsgEventoCriado),"[INFO]{00FF00} %s(%d) Criou o evento \"%s\" Prêmio: %d. Use {FFFF00}/IrEvento{00FF00} para ir ao evento",EventoInfo[Evento_Criador],playerid,EventoInfo[Evento_Nome],\
- EventoInfo[Evento_Recompenca]);
- SendClientMessageToAll(0xFFFF00FF,MsgEventoCriado);
- format(MsgEventoCriado,sizeof(MsgEventoCriado),"Use /irevento para ir ao evento %s",EventoInfo[Evento_Nome]);
- GameTextForAll(MsgEventoCriado,10000,3);
- return 1;
- }
- forward GanhadorEvento();
- public GanhadorEvento()
- {
- if(EventoInfo[Evento_Existe] == 1)
- {
- if(EventoInfo[Evento_Iniciado] == 1)
- {
- if(EventoInfo[Evento_Jogadores] == 1)
- {
- for(new i=0; i<101; i++)
- {
- if(IsPlayerConnected(i))
- {
- if(JogadorEventoInfo[i][JogadorEstaNoEvento] == 1)
- {
- new GanhadorNome[100],MsgGanhadorEvento[150];
- GetPlayerName(i,GanhadorNome,sizeof(GanhadorNome));
- ResetPlayerWeapons(i);
- GivePlayerMoney(i,EventoInfo[Evento_Recompenca]);
- SetPlayerInterior(i,0);
- SetPlayerVirtualWorld(i,0);
- SpawnPlayer(i);
- format(MsgGanhadorEvento,sizeof(MsgGanhadorEvento),"[INFO] |- O Jogador %s(%d) Ganhou o evento \"%s\" e recebeu %d | Matou: %d -|",GanhadorNome,i,EventoInfo[Evento_Nome],EventoInfo[Evento_Recompenca],JogadorEventoInfo[i][MatouNoEvento]);
- SendClientMessageToAll(0x00FF00FF,MsgGanhadorEvento);
- JogadorEventoInfo[i][JogadorEstaNoEvento] = 0;
- EventoInfo[Evento_Jogadores] = 0;
- EventoInfo[Evento_Existe] = 0;
- EventoInfo[Evento_Aberto] = 0;
- EventoInfo[Evento_Iniciado] = 0;
- KillTimer(EventoInfo[Evento_TimerGanhador]);
- }
- }
- }
- }
- else
- if(EventoInfo[Evento_Jogadores] <= 0)
- {
- EventoInfo[Evento_Jogadores] = 0;
- EventoInfo[Evento_Existe] = 0;
- EventoInfo[Evento_Aberto] = 0;
- EventoInfo[Evento_Iniciado] = 0;
- KillTimer(EventoInfo[Evento_TimerGanhador]);
- }
- }
- }
- return 1;
- }
- forward ContagemIniciarEvento();
- public ContagemIniciarEvento()
- {
- if(EventoInfo[Evento_Contagem] <=0)
- {
- EventoInfo[Evento_Aberto] = 0;
- EventoInfo[Evento_Iniciado] = 1;
- EventoInfo[Evento_Contagem] = 0;
- KillTimer(EventoInfo[Evento_Timer]);
- for(new i=0; i<101; i++)
- {
- if(IsPlayerConnected(i))
- {
- if(JogadorEventoInfo[i][JogadorEstaNoEvento] == 1)
- {
- TogglePlayerControllable(i,1);
- GameTextForPlayer(i,"~r~GO GO GO!",1600,3);
- GivePlayerWeapon(i,EventoInfo[Evento_Armas][0],9999);
- GivePlayerWeapon(i,EventoInfo[Evento_Armas][1],9999);
- }
- }
- }
- EventoInfo[Evento_TimerGanhador] = SetTimer("GanhadorEvento",2000,true);
- }
- else
- if(EventoInfo[Evento_Contagem] >=1)
- {
- new MsgContarEvento[50];
- format(MsgContarEvento,sizeof(MsgContarEvento),"%i",EventoInfo[Evento_Contagem]);
- for(new i=0; i<101; i++)
- {
- if(IsPlayerConnected(i))
- {
- if(JogadorEventoInfo[i][JogadorEstaNoEvento] == 1)
- {
- GameTextForPlayer(i,MsgContarEvento,1000,4);
- }
- }
- }
- EventoInfo[Evento_Contagem]--;
- }
- return 1;
- }
- stock IsNumeric(string[])
- {
- for(new i = 0, j = strlen(string); i < j; i++){
- if(string[i] > '9' || string[i] < '0') return 0;}
- return 1;
- }
- PegarModeloDaArmaPorNome(Nome[])
- {
- for(new i = 0; i <= 46; i++)
- {
- switch(i)
- {
- case 0,19,20,21,44,45: continue;
- default:
- {
- new ArmaNome1[35];
- GetWeaponName(i,ArmaNome1,35);
- if(strfind(ArmaNome1,Nome,true) != -1) return i;
- }
- }
- }
- return -1;
- }
- #endif
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement