Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //===================Includes================//
- #include <a_samp>
- #include <zcmd>
- #include <dof2>
- #include <sscanf2>
- //================Definições===================//
- #define SCM SendClientMessage
- #define ConvertDays(%0) (gettime() + (86400 * (%0)))
- #define SendFormattedMessageToAll(%0,%1,%2) do{new _string[148]; format(_string,sizeof(_string),%1,%2); SendClientMessageToAll(%0,_string);} while(False)
- #define SendFormattedMessage(%0,%1,%2,%3) do{new _string[148]; format(_string,sizeof(_string),%2,%3); SCM(%0,%1,_string);} while(False)
- //=================Tunar VEICULO===============//
- #define DIALOG_VEHVIP 1
- //================Cores============================//
- #define COR_ERRO 0xFF0000AA
- #define COR_USOCORRETO 0x3552F2FF
- #define COR_CMD 0xFF0000AA
- #define COR_PRINCIPAL 0x33AAFFFF
- #define COR_ROXO 0xC798FAAA
- #define COR_BRANCO 0xE3E3E3FF
- //==============Fim das cores/inicio das variaveis================================//
- enum pDados
- {
- Vip,
- EquiparVIP,
- Admin,
- Logou,
- Morreu,
- Matou
- }
- new Player[MAX_PLAYERS][pDados];
- new False=false;
- new VeiculoVeh[MAX_PLAYERS];
- new bool:Logado[MAX_PLAYERS char];
- new bool:variavel[MAX_PLAYERS];
- new bool:variavel2[MAX_PLAYERS];
- new HighestID;
- //================fim das variaveis/inico dos forwards=============================//
- forward MensagemVip(const string[]);
- forward SendMensagens();
- //===============Fim dos forwards/inico de algumas mensagens=======================//
- new Mensagens[1][1700] =
- {
- "{FF0000}[!]: {61615E}Este servido usa um filsterscripter feito por didimk157."
- };
- //==============================Fim das mensagens========================================//
- #if defined FILTERSCRIPT
- public OnFilterScriptInit()
- {
- SetTimer("SendMensagens",5000,1);
- print("\n--------------------------------------");
- print(" Sistema de vip em dof2 by:didimk157");
- print("--------------------------------------\n");
- return 1;
- }
- public OnFilterScriptExit()
- {
- return 1;
- }
- #else
- main()
- {
- print("\n----------------------------------");
- print(" Vip system by:didimk");
- print("----------------------------------\n");
- }
- #endif
- public OnPlayerConnect(playerid)
- {
- SCM(playerid, COR_CMD, "» Este Servido usa um filterscripter de didimk157");
- SCM(playerid, COR_CMD, "» Está com Duvidas Sobre o Servidor? '/Ajuda'");
- return 1;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- variavel[playerid] = false;
- variavel2[playerid] = false;
- return 1;
- }
- public OnPlayerCommandPerformed(playerid, cmdtext[], success)
- {
- if(!success)
- {
- SCM(playerid, COR_CMD, "[FALHOU!]: Este comando Que Você Digito não existe use '/comandos' para ver os comandos do servidor!.");
- }
- return 1;
- }
- CMD:setvip(playerid, params[])
- {
- new id, days;
- if(!IsPlayerAdmin(playerid))return SCM(playerid, COR_ERRO, "[ERRO]: Você não está logado na RCON");
- if(sscanf(params, "ud", id, days))return SCM(playerid, COR_USOCORRETO, "Uso correto: /setvip [id] [dias]");
- if(days < 0) return SCM(playerid, COR_ERRO, "[ERRO]: Digite um numero de dias validos!");
- if(!(IsPlayerConnected(id))) return SCM(playerid, COR_ERRO, "[ERRO]: Este jogador não está Logado.");
- Player[id][Vip] = ConvertDays(days);
- new string[85];
- format(string, sizeof(string), "[INFO]: Você deu %d dias de Vip para %s.", days, Nome(id));
- SCM(playerid, COR_PRINCIPAL, string);
- format(string, sizeof(string), "[INFO]: Você recebeu %d dias de Vip do administrador %s.", days, Nome(playerid));
- SCM(id, COR_PRINCIPAL, string);
- SendFormattedMessageToAll(COR_PRINCIPAL, "{F4A460}-Log-Admin-: O Administrador %s setou %s de vip. | Dias: %d", Nome(playerid), Nome(id), days);
- format(string, sizeof(string), "-Log-Admin-: O Administrador %s setou %s de Vip. | Dias: %d", Nome(playerid),Nome(id),days);
- DarVip(string);
- format(string, sizeof(string), PegarVip(id), Nome(id));
- DOF2_CreateFile(PegarVip(id));
- DOF2_SetInt(PegarVip(id), "Dias", Player[id][Vip]);
- DOF2_SaveFile();
- return true;
- }
- CMD:tirarvip(playerid, params[])
- {
- new String[85] , ID;
- if(!IsPlayerAdmin(playerid))return SCM(playerid, COR_ERRO, "[ERRO]: Você não está logado na RCON");
- if(sscanf(params, "u", ID)) return SendClientMessage(playerid, COR_ERRO, "Use /TirarVip [ID]");
- if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, COR_ERRO, "[ERRO] ID invalido");
- if(Player[playerid][Vip] == 0) return SendClientMessage(playerid, COR_ERRO, "Este player não é um mebro VIP.");
- format(String, sizeof(String), "O Admin %s tirou o vip de %s",Nome(playerid), Nome(playerid));
- SendClientMessageToAll(COR_CMD, String);
- Player[playerid][Vip] = 0;
- return 1;
- }
- CMD:equipar(playerid)
- {
- if(Player[playerid][Vip] >= 1) return SCM(playerid,COR_ERRO,"[ERRO]: Você não tem permissão para usar este comando");
- {
- if(Player[playerid][EquiparVIP] == 1)
- {
- SCM(playerid,COR_ERRO,"[ERRO]: Ainda não deu o tempo para equipar novamente!");
- return 1;
- }
- ResetPlayerWeapons(playerid);
- SCM(playerid,COR_PRINCIPAL,"[INFO]: Você se equipou com sucesso");
- GivePlayerWeapon(playerid,31,9999999);
- GivePlayerWeapon(playerid,29,9999999);
- GivePlayerWeapon(playerid,25,9999999);
- GivePlayerWeapon(playerid,34,9999999);
- GivePlayerWeapon(playerid,16,4);
- GivePlayerWeapon(playerid,4,1);
- GivePlayerWeapon(playerid,24,9999999);
- Player[playerid][EquiparVIP] = 1;
- SetTimerEx("Equipar",5*60*1000,false,"d",playerid);
- }
- return 1;
- }
- CMD:jetpack(playerid)
- {
- if(Player[playerid][Admin] >= 1 || Player[playerid][Vip] >= 1)
- {
- SetPlayerSpecialAction(playerid, 2);
- new string[44];
- format(string, sizeof(string), " %s criou um jetpack.", Nome(playerid));
- MensagemLocal(playerid, COR_ROXO, string, 50);
- }
- else
- {
- SCM(playerid,COR_ERRO, "[ERRO]: Você não tem permissão para usar este comando.");
- }
- return 1;
- }
- CMD:blindar(playerid)
- {
- if(Player[playerid][Vip] >= 1)
- {
- if(GetPlayerMoney(playerid) >= 900)
- {
- SetVehicleHealth(GetPlayerVehicleID(playerid), 99999999);
- GivePlayerMoney(playerid, -900);
- SCM(playerid, COR_PRINCIPAL, "[INFO]: Você fez seu veiculo de um blindado!");
- }
- else SCM(playerid, COR_ERRO, "[ERRO]: Você não tem dinheiro suficiente para usar este comando!");
- }
- else SCM(playerid, COR_ERRO, "[ERRO]: Você não é um membro vip para usar este este comando!");
- return 1;
- }
- CMD:tunar(playerid)
- {
- if(Player[playerid][Vip] >=1)
- {
- new vehicle;
- vehicle = GetPlayerVehicleID(playerid);
- ChangeVehiclePaintjob(vehicle,1);
- AddVehicleComponent(vehicle,1035);
- AddVehicleComponent(vehicle,1078);
- AddVehicleComponent(vehicle,1010);
- AddVehicleComponent(vehicle,1087);
- AddVehicleComponent(vehicle,1046);
- AddVehicleComponent(vehicle,1171);
- AddVehicleComponent(vehicle,1149);
- AddVehicleComponent(vehicle,1147);
- AddVehicleComponent(vehicle,1036);
- AddVehicleComponent(vehicle,1040);
- SCM(playerid, COR_PRINCIPAL,"[ERRO]: Veiculo auto tunado com sucesso agora vá tirar uma marra.");
- }
- else SCM(playerid, COR_ERRO,"[ERRO]: Você não é um membro vip para usar este comando.");
- return 1;
- }
- CMD:veh(playerid, params[])
- {
- if(VeiculoVeh[playerid] >= 1)
- {
- if(Player[playerid][Vip] >= 1)
- {
- if(VeiculoVeh[playerid]>=1) return SCM(playerid,COR_ERRO,"[ERRO]: Você já tem veiculo criado digite /dcm para deletar seu veiculo.");
- new string[40];
- ShowPlayerDialog(playerid, DIALOG_VEHVIP, DIALOG_STYLE_LIST, "Veiculos", "Sultan\nInfernus\nOnibus\nBmx\nMountain Bike\nFaggio\nSanchez\nQuad\nNRG-500\nIate\nBugre\nBanshee\nSquallo\nJester\nBuffalo", "Selecionar", "Cancelar");
- format(string, sizeof(string), " %s digitou /veh.", Nome(playerid));
- MensagemLocal(playerid, COR_ROXO, string, 60);
- }
- else SCM(playerid,COR_ERRO,"[ERRO]: Você não tem permissão para usar este comando.");
- }
- else SCM(playerid, COR_ERRO,"[ERRO]: Você já tem um veículo criado, digite '/dcm' para pode criar outro veículo.");
- return 1;
- }
- CMD:comandosvip(playerid)
- {
- if(Player[playerid][Vip] >= 1)
- {
- new dialogrande[460];
- format(dialogrande, sizeof(dialogrande),"%s%s",dialogrande,"{33AAFF}• Comandos VIP\n\n");
- format(dialogrande, sizeof(dialogrande),"%s%s",dialogrande,"{ffffff}/v - {33AAFF}Chat VIP;\n");
- format(dialogrande, sizeof(dialogrande),"%s%s",dialogrande,"{ffffff}/tunar - {33AAFF}Tunar seu veículo [Rodas/Blinda/Pinta/Suspenção/Nitro];\n");
- format(dialogrande, sizeof(dialogrande),"%s%s",dialogrande,"{ffffff}/jetpack - {33AAFF}Criar um Jetpack;\n");
- format(dialogrande, sizeof(dialogrande),"%s%s",dialogrande,"{ffffff}/veh - {33AAFF}Criar um veículo;\n");
- format(dialogrande, sizeof(dialogrande),"%s%s",dialogrande,"{ffffff}/dcm - {33AAFF}Deletar um veículo;\n");
- format(dialogrande, sizeof(dialogrande),"%s%s",dialogrande,"{ffffff}/asay - {33AAFF}Enviar uma mensagem para todo servidor.\n");
- format(dialogrande, sizeof(dialogrande),"%s%s",dialogrande,"{ffffff}/equipar - {33AAFF}Com granadas e todas as armas do servidor.\n");
- format(dialogrande, sizeof(dialogrande),"%s%s",dialogrande,"{ffffff}/vidav - {33AAFF}Para encher sua vida vip.\n");
- format(dialogrande, sizeof(dialogrande),"%s%s",dialogrande,"{ffffff}/coletev - {33AAFF}Para encher seu colete vip.\n");
- ShowPlayerDialog(playerid, 6627, DIALOG_STYLE_MSGBOX, "{FF0000}>> {FFFFFF} Comandos Vip {FF0000}<<", dialogrande, "Sair", #);
- }
- else SCM(playerid,COR_ERRO,"[ERRO]: Você não tem permissão para usar este comando.");
- return 1;
- }
- CMD:vips(playerid)
- {
- SCM(playerid, 0xADFF2FFF, "Todos os Vips online");
- new count=0;
- for(new i=0; i<MAX_PLAYERS; i++)
- {
- if(IsPlayerConnected(i))
- {
- if(Logado{playerid} == true)
- {
- if(Player[i][Vip] >= 1)
- {
- SendFormattedMessage(playerid, COR_BRANCO, "Vip: %s [Tempo restante %d dias]", Nome(i), ConvertToDays(Player[playerid][Vip]));
- count++;
- }
- }
- }
- }
- if(count == 0) return SCM(playerid, COR_BRANCO, "Não tem nem um player vip online no momento.");
- return 1;
- }
- CMD:vidav(playerid)
- {
- if(Player[playerid][Vip] >= 1)
- if(variavel2[playerid] == true) return SendClientMessage(playerid, 0xFF0000FF, "Você só pode usar este comando após a Morte.");
- if(GetPlayerVirtualWorld(playerid) == GetPlayerVirtualWorld(playerid))
- {
- SetPlayerHealth(playerid, 100);
- SendFormattedMessage(playerid, COR_ROXO, "%s Encheu sua Vida Vip!!", Nome(playerid));
- variavel2[playerid] = true;
- }
- return 1;
- }
- CMD:coletev(playerid)
- {
- if(Player[playerid][Vip] >= 1)
- if(variavel[playerid] == true) return SendClientMessage(playerid, 0xFF0000FF, "Você só pode usar este comando após a Morte.");
- if(GetPlayerVirtualWorld(playerid) == GetPlayerVirtualWorld(playerid))
- {
- SetPlayerArmour(playerid, 100);
- SendFormattedMessage(playerid, COR_ROXO, "%s Encheu seu Colete Vip!!", Nome(playerid));
- variavel[playerid] = true;
- }
- return 1;
- }
- CMD:v(playerid,params[])
- {
- if(Player[playerid][Vip] >= 1)
- {
- new string[140];
- if(sscanf(params, "s", params)) return SCM(playerid, COR_USOCORRETO, "Uso correto: /v [texto]");
- format(string, sizeof(string),"{00FFFF}[CHAT VIP]: %s: %s ", Nome(playerid), params);
- MensagemVip(string);
- }
- else SCM(playerid,COR_ERRO,"[ERRO]: Você não é um membro vip para acessar este comando.");
- return 1;
- }
- //============Stocks=======================//
- stock PegarVip(playerid)
- {
- static Arquivo[33]; format(Arquivo, sizeof(Arquivo), "Vips/%s.ini", Nome(playerid)); return Arquivo;
- }
- stock Nome(playerid)
- {
- static Name[MAX_PLAYER_NAME]; GetPlayerName(playerid, Name, sizeof(Name)); return Name;
- }
- stock PegarConta(playerid)
- {
- static Arquivo[2000]; format(Arquivo, sizeof(Arquivo), "Players/%s.ini", Nome(playerid)); return Arquivo;
- }
- stock DarVip(DeuAdmin[])
- {
- new string[256];
- format(string, sizeof(string), "%s \r\n", DeuAdmin);
- new File:hFile;
- hFile = fopen("logs/-LOG- Setvip.txt", io_append);
- fwrite(hFile, string);
- fclose(hFile);
- }
- stock MensagemLocal(playerid, cor, text[], distancia)
- {
- for(new i=0; i <= MAX_PLAYERS; i++)
- if(GetandoDistancia(playerid, i) <= distancia)
- {
- if(GetPlayerVirtualWorld(playerid) == GetPlayerVirtualWorld(i))
- {
- new string[128];
- format(string, 128, text);
- SCM(i,cor,string);
- }
- }
- return 1;
- }
- stock GetandoDistancia(playerid,playerid2)
- {
- new Float:x1,Float:y1,Float:z1,Float:x2,Float:y2,Float:z2;
- new Float:tmpdis;
- GetPlayerPos(playerid,x1,y1,z1);
- GetPlayerPos(playerid2,x2,y2,z2);
- tmpdis = floatsqroot(floatpower(floatabs(floatsub(x2,x1)),2)+floatpower(floatabs(floatsub(y2,y1)),2)+floatpower(floatabs(floatsub(z2,z1)),2));
- return floatround(tmpdis);
- }
- stock ConvertToDays(n)
- {
- #pragma tabsize 0
- new t[5], String[75];
- t[4] = n-gettime();
- t[0] = t[4] / 3600;
- t[1] = ((t[4] / 60) - (t[0] * 60));
- t[2] = (t[4] - ((t[0] * 3600) + (t[1] * 60)));
- t[3] = (t[0]/24);
- if(t[3] > 0)
- t[0] = t[0] % 24,
- format(String, sizeof(String), "%ddias, %02dh %02dm e %02ds", t[3], t[0], t[1], t[2]);
- else if(t[0] > 0)
- format(String, sizeof(String), "%02dh %02dm e %02ds", t[0], t[1], t[2]);
- else
- format(String, sizeof(String), "%02dm e %02ds", t[1], t[2]);
- return String;
- }
- /*stock SalvarDados(playerid)
- {
- DOF2_SetInt(PegarConta(playerid), "Level", GetPlayerScore(playerid));
- DOF2_SetInt(PegarConta(playerid), "Dinheiro", GetPlayerMoney(playerid));
- DOF2_SetInt(PegarConta(playerid), "SkinAtual", GetPlayerSkin(playerid));
- DOF2_SetInt(PegarConta(playerid), "AdminLevel", Player[playerid][Admin]);
- DOF2_SetInt(PegarConta(playerid), "Vip", Player[playerid][Vip]);
- DOF2_SetInt(PegarConta(playerid), "Logou", Player[playerid][Logou]);
- DOF2_SetInt(PegarConta(playerid), "Matou", Player[playerid][Matou]);
- DOF2_SetInt(PegarConta(playerid), "Morreu", Player[playerid][Morreu]);
- DOF2_SaveFile();
- }
- stock CarregarDados(playerid)
- {
- if(DOF2_FileExists(PegarConta(playerid)))
- {
- SetPlayerScore(playerid, DOF2_GetInt(PegarConta(playerid), "Level"));
- GivePlayerMoney(playerid, DOF2_GetInt(PegarConta(playerid), "Dinheiro"));
- SetPlayerSkin(playerid, DOF2_GetInt(PegarConta(playerid), "SkinAtual"));
- Player[playerid][Admin] = DOF2_GetInt(PegarConta(playerid), "AdminLevel");
- Player[playerid][Vip] = DOF2_GetInt(PegarConta(playerid), "Vip");
- Player[playerid][Logou] = DOF2_GetInt(PegarConta(playerid), "Logou");
- Player[playerid][Matou] = DOF2_GetInt(PegarConta(playerid), "Matou");
- Player[playerid][Morreu] = DOF2_GetInt(PegarConta(playerid), "Morreu");
- }
- }*/
- //========================Fim das stocks/inicio das public==========================//
- public MensagemVip(const string[])
- {
- for(new i = 0; i <= HighestID; i++)
- {
- if(IsPlayerConnected(i) == 1)
- {
- if(Player[i][Vip] >= 1)
- {
- SCM(i, 0xFFBD9DFF, string);
- }
- }
- }
- return 1;
- }
- public SendMensagens()
- {
- new string[128];
- new random1 = random(sizeof(Mensagens));
- format(string, sizeof(string), "%s", Mensagens[random1]);
- SendClientMessageToAll(-1,string);
- return 1;
- }
- //=========================Fim das public/fim do FS===============================//
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement