Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Sistema de Drogas by Pedro Miranda
- #include <a_samp>
- #include <zcmd>
- #include <sscanf2>
- #include <DOF2>
- new corda[90];
- forward CriarDrogas(playerid);
- forward CarregarDrogas(playerid);
- forward SalvarDrogas(playerid); // to colocando as funcoes em pt pq da ultima q fiz ingles inventaram que era copia e cola
- forward MensagemDelimitada(Float:distancia, playerid, cor, texto[]);
- public OnFilterScriptInit()
- {
- print("\nSistema de Drogas by Pedro Miranda Iniciado.");
- return 1;
- }
- public OnFilterScriptExit()
- {
- print("\nSistema de Drogas by Pedro Miranda Finalizado.");
- for(new i; i < MAX_PLAYERS; i++) { if(IsPlayerConnected(i)) { SalvarDrogas(i); } }
- DOF2_Exit();
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- format(corda, 36, "Drogas/%s.ini", pNome(playerid));
- if(DOF2_FileExists(corda))
- {
- CarregarDrogas(playerid);
- }
- else
- {
- CriarDrogas(playerid);
- CarregarDrogas(playerid);
- }
- return 1;
- }
- public OnPlayerDisconnect(playerid)
- {
- SalvarDrogas(playerid);
- return 1;
- }
- CMD:comprarmaconha(playerid, params[])
- {
- if(PlayerEstaEmPontoDeDrogas(playerid))
- {
- if(GetPVarInt(playerid, "Maconha") < 5000)
- {
- new quantia;
- if(sscanf(params, "i", quantia)) return SendClientMessage(playerid, 0xFFFFFFAA, "Use /ComprarMaconha [Quantia]");
- if(GetPlayerMoney(playerid) < quantia * 5) return SendClientMessage(playerid, 0xFFFFFFAA, "Você não tem grana suficiente para comprar drogas.");
- GivePlayerMoney(playerid, -quantia * 5);//1 grama = 2 reais
- SetPVarInt(playerid, "Maconha", GetPVarInt(playerid, "Maconha") + quantia);
- format(corda, 49, "Você comprou %i gramas de maconha por R$ %i", quantia, quantia*5);
- SendClientMessage(playerid, 0xF6F600AA, corda);
- }
- else return SendClientMessage(playerid, 0xFFFFFFAA, "Você atingiu o limite de maconha guarde no esconderijo para poder pegar mais!");
- }
- else return SendClientMessage(playerid, 0xFFFFFFAA, "Voce nao esta em um ponto de venda de drogas.");
- return 1;
- }
- CMD:comprarcocaina(playerid, params[])
- {
- if(PlayerEstaEmPontoDeDrogas(playerid))
- {
- if(GetPVarInt(playerid, "Cocaina") < 5000)
- {
- new quantia;
- if(sscanf(params, "i", quantia)) return SendClientMessage(playerid, 0xFFFFFFAA, "Use /ComprarCocaina [Quantia]");
- if(GetPlayerMoney(playerid) < quantia * 5) return SendClientMessage(playerid, 0xFFFFFFAA, "Você não tem grana suficiente para comprar drogas.");
- GivePlayerMoney(playerid, -quantia * 5);//1 grama = 2 reais
- SetPVarInt(playerid, "Cocaina", GetPVarInt(playerid, "Cocaina") + quantia);
- format(corda, 49, "Você comprou %i gramas de maconha por R$ %i", quantia, quantia*5);
- SendClientMessage(playerid, 0xF6F600AA, corda);
- }
- else return SendClientMessage(playerid, 0xFFFFFFAA, "Você atingiu o limite de cocaina, guarde no esconderijo para poder pegar mais!");
- }
- else return SendClientMessage(playerid, 0xFFFFFFAA, "Voce nao esta em um ponto de venda de drogas.");
- return 1;
- }
- CMD:comprarcrack(playerid, params[])
- {
- if(PlayerEstaEmPontoDeDrogas(playerid))
- {
- if(GetPVarInt(playerid, "Crack") < 5000)
- {
- new quantia;
- if(sscanf(params, "i", quantia)) return SendClientMessage(playerid, 0xFFFFFFAA, "Use /ComparCrack [Quantia]");
- if(GetPlayerMoney(playerid) < quantia * 5) return SendClientMessage(playerid, 0xFFFFFFAA, "Você não tem grana suficiente para comprar drogas.");
- GivePlayerMoney(playerid, -quantia * 5);//1 grama = 2 reais
- SetPVarInt(playerid, "Crack", GetPVarInt(playerid, "Crack") + quantia);
- format(corda, 49, "Você comprou %i gramas de crack por R$ %i", quantia, quantia*5);
- SendClientMessage(playerid, 0xF6F600AA, corda);
- }
- else return SendClientMessage(playerid, 0xFFFFFFAA, "Você atingiu o limite de crack, guarde no esconderijo para poder pegar mais!");
- }
- else return SendClientMessage(playerid, 0xFFFFFFAA, "Você não esta em um ponto de venda de drogas.");
- return 1;
- }
- CMD:escondermaconha(playerid, params[])
- {
- if(PlayerEstaEmEsconderijoDeDrogas(playerid))
- {
- if(GetPVarInt(playerid, "SMaconha") > 5000) return SendClientMessage(playerid, 0xFFFFFFAA, "Esconderijo lotado viciado! Agora a solucao e consumir tudo kk.");
- new quantia;
- if(sscanf(params, "i", quantia)) return SendClientMessage(playerid, 0xFFFFFFAA, "Use /EsconderMaconha [Quantia]");
- if(quantia > GetPVarInt(playerid, "Maconha")) return SendClientMessage(playerid, 0xFFFFFFAA, "Voce nao tem essa maconha toda.");
- SetPVarInt(playerid, "Maconha", GetPVarInt(playerid, "Maconha") - quantia);
- SetPVarInt(playerid, "SMaconha", GetPVarInt(playerid, "SMaconha") + quantia);
- format(corda, 52, "Voce guardou %i gramas de maconha no esconderijo.", quantia);
- SendClientMessage(playerid, 0xF6F600AA, corda);
- }
- else return SendClientMessage(playerid, 0xFFFFFFAA, "Voce nao esta em um esconderijo de drogas.");
- return 1;
- }
- CMD:escondercocaina(playerid, params[])
- {
- if(PlayerEstaEmEsconderijoDeDrogas(playerid))
- {
- if(GetPVarInt(playerid, "SCocaina") > 5000) return SendClientMessage(playerid, 0xFFFFFFAA, "Esconderijo lotado viciado! Agora a solucao e consumir tudo kk.");
- new quantia;
- if(sscanf(params, "i", quantia)) return SendClientMessage(playerid, 0xFFFFFFAA, "Use /EsconderCocaina [Quantia]");
- if(quantia > GetPVarInt(playerid, "Cocaina")) return SendClientMessage(playerid, 0xFFFFFFAA, "Voce nao tem essa cocaina toda.");
- SetPVarInt(playerid, "Cocaina", GetPVarInt(playerid, "Cocaina") - quantia);
- SetPVarInt(playerid, "SCocaina", GetPVarInt(playerid, "SCocaina") + quantia);
- format(corda, 52, "Voce guardou %i gramas de cocaina no esconderijo.", quantia);
- SendClientMessage(playerid, 0xF6F600AA, corda);
- }
- else return SendClientMessage(playerid, 0xFFFFFFAA, "Voce nao esta em um esconderijo de drogas.");
- return 1;
- }
- CMD:escondercrack(playerid, params[])
- {
- if(PlayerEstaEmEsconderijoDeDrogas(playerid))
- {
- if(GetPVarInt(playerid, "SCrack") > 5000) return SendClientMessage(playerid, 0xFFFFFFAA, "Esconderijo lotado viciado! Agora a solucao e consumir tudo kk.");
- new quantia;
- if(sscanf(params, "i", quantia)) return SendClientMessage(playerid, 0xFFFFFFAA, "Use /EsconderCrack [Quantia]");
- if(quantia > GetPVarInt(playerid, "Crack")) return SendClientMessage(playerid, 0xFFFFFFAA, "Voce nao tem esse crack todo.");
- SetPVarInt(playerid, "Crack", GetPVarInt(playerid, "Crack") - quantia);
- SetPVarInt(playerid, "SCrack", GetPVarInt(playerid, "SCrack") + quantia);
- format(corda, 52, "Voce guardou %i gramas de crack no esconderijo.", quantia);
- SendClientMessage(playerid, 0xF6F600AA, corda);
- }
- else return SendClientMessage(playerid, 0xFFFFFFAA, "Voce nao esta em um esconderijo de drogas.");
- return 1;
- }
- CMD:pegarsmaconha(playerid, params[])
- {
- if(PlayerEstaEmEsconderijoDeDrogas(playerid))
- {
- new quantia;
- if(sscanf(params, "i", quantia)) return SendClientMessage(playerid, 0xFFFFFFAA, "Use /PegarSMaconha [Quantia]");
- if(quantia > GetPVarInt(playerid, "SMaconha")) return SendClientMessage(playerid, 0xFFFFFFAA, "Voce nao tem isso tudo.");
- if(GetPVarInt(playerid, "Maconha") > 5000) return SendClientMessage(playerid, 0xFFFFFFAA, "Voce ja esta abarrotado de maconha! Consuma antes de pegar mais.");
- SetPVarInt(playerid, "SMaconha", GetPVarInt(playerid, "SMaconha") - quantia);
- SetPVarInt(playerid, "Maconha", GetPVarInt(playerid, "Maconha") + quantia);
- format(corda, 51, "Voce pegou %i gramas de maconha no esconderijo.", quantia);
- SendClientMessage(playerid, 0xF6F600AA, corda);
- }
- else return SendClientMessage(playerid, 0xFFFFFFAA, "Voce nao esta em um esconderijo de drogas.");
- return 1;
- }
- CMD:pegarscocaina(playerid, params[])
- {
- if(PlayerEstaEmEsconderijoDeDrogas(playerid))
- {
- new quantia;
- if(sscanf(params, "i", quantia)) return SendClientMessage(playerid, 0xFFFFFFAA, "Use /PegarSMaconha [Quantia]");
- if(quantia > GetPVarInt(playerid, "SCocaina")) return SendClientMessage(playerid, 0xFFFFFFAA, "Voce nao tem isso tudo.");
- if(GetPVarInt(playerid, "Cocaina") > 5000) return SendClientMessage(playerid, 0xFFFFFFAA, "Voce ja esta abarrotado de maconha! Consuma antes de pegar mais.");
- SetPVarInt(playerid, "SCocaina", GetPVarInt(playerid, "SCocaina") - quantia);
- SetPVarInt(playerid, "Cocaina", GetPVarInt(playerid, "Cocaina") + quantia);
- format(corda, 51, "Voce pegou %i gramas de cocaina no esconderijo.", quantia);
- SendClientMessage(playerid, 0xF6F600AA, corda);
- }
- else return SendClientMessage(playerid, 0xFFFFFFAA, "Voce nao esta em um esconderijo de drogas.");
- return 1;
- }
- CMD:pegarscrack(playerid, params[])
- {
- if(PlayerEstaEmEsconderijoDeDrogas(playerid))
- {
- new quantia;
- if(sscanf(params, "i", quantia)) return SendClientMessage(playerid, 0xFFFFFFAA, "Use /PegarSMaconha [Quantia]");
- if(quantia > GetPVarInt(playerid, "SCrack")) return SendClientMessage(playerid, 0xFFFFFFAA, "Voce nao tem isso tudo.");
- if(GetPVarInt(playerid, "Crack") > 5000) return SendClientMessage(playerid, 0xFFFFFFAA, "Voce ja esta abarrotado de maconha! Consuma antes de pegar mais.");
- SetPVarInt(playerid, "SCrack", GetPVarInt(playerid, "SCrack") - quantia);
- SetPVarInt(playerid, "Crack", GetPVarInt(playerid, "Crack") + quantia);
- format(corda, 51, "Voce pegou %i gramas de crack no esconderijo.");
- SendClientMessage(playerid, 0xF6F600AA, corda);
- }
- else return SendClientMessage(playerid, 0xFFFFFFAA, "Voce nao esta em um esconderijo de drogas.");
- return 1;
- }
- CMD:usar(playerid, params[])
- {
- new droga[8];
- if(sscanf(params, "s[8]", droga)) return SendClientMessage(playerid, 0xFFFFFFAA, "Use /Usar [Maconha,Cocaina,Crack]");
- if(strcmp(droga, "maconha", true) == 0)
- {
- if(GetPVarInt(playerid, "Maconha") > 0)
- {
- new Float:colete;
- SetPlayerArmour(playerid, GetPlayerArmour(playerid, colete) + 5);
- SetPVarInt(playerid, "Maconha", GetPVarInt(playerid, "Maconha") - 1);
- format(corda, 40, "%s fumou maconha.", pNome(playerid));
- MensagemDelimitada(10.0, playerid, 0xF6F600AA, corda);
- }
- else return SendClientMessage(playerid, 0xFFFFFFAA, "Voce nao tem maconha.");
- return 1;
- }
- if(strcmp(droga, "cocaina", true) == 0)
- {
- if(GetPVarInt(playerid, "Cocaina") > 0)
- {
- new Float:colete;
- SetPlayerArmour(playerid, GetPlayerArmour(playerid, colete) + 5);
- SetPVarInt(playerid, "Cocaina", GetPVarInt(playerid, "Cocaina") - 1);
- format(corda, 42, "%s cheirou cocaina.", pNome(playerid));
- MensagemDelimitada(10.0, playerid, 0xF6F600AA, corda);
- }
- else return SendClientMessage(playerid, 0xFFFFFFAA, "Voce nao tem cocaina.");
- return 1;
- }
- if(strcmp(droga, "crack", true) == 0)
- {
- if(GetPVarInt(playerid, "Crack") > 0)
- {
- new Float:colete;
- SetPlayerArmour(playerid, GetPlayerArmour(playerid, colete) + 5);
- SetPVarInt(playerid, "Crack", GetPVarInt(playerid, "Crack") - 1);
- format(corda, 38, "%s fumou crack.", pNome(playerid));
- MensagemDelimitada(10.0, playerid, 0xF6F600AA, corda);
- }
- else return SendClientMessage(playerid, 0xFFFFFFAA, "Voce nao tem crack.");
- return 1;
- }
- return 1;
- }
- CMD:dar(playerid, params[])
- {
- new droga[8];
- if(sscanf(params, "s[8]", droga)) return SendClientMessage(playerid, 0xFFFFFFAA, "Use /Dar [Droga]");
- if(strcmp(droga, "maconha", true) == 0)
- {
- new id, quantia;
- if(sscanf(params, "ui", id)) return SendClientMessage(playerid, 0xFFFFFFAA, "Use /Dar Maconha [ID][Quantia]");
- new Float:Pos[3];
- GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
- if(!IsPlayerInRangeOfPoint(id, 1.5, Pos[0], Pos[1], Pos[2])) return SendClientMessage(playerid, 0xFFFFFFAA, "Este drogado nao esta perto de voce!");
- if(quantia > GetPVarInt(playerid, "Maconha")) return SendClientMessage(playerid, 0xFFFFFFAA, "Voce nao tem toda essa maconha.");
- SetPVarInt(playerid, "Maconha", GetPVarInt(playerid, "Maconha") - quantia);
- format(corda, 83, "%s deu %i gramas de maconha para %s", pNome(playerid), pNome(id));
- MensagemDelimitada(10.0, playerid, 0xFFFFFFAA, corda);
- SetPVarInt(id, "Maconha", GetPVarInt(id, "Maconha") + quantia);
- return 1;
- }
- if(strcmp(droga, "cocaina", true) == 0)
- {
- new id, quantia;
- if(sscanf(params, "ui", id)) return SendClientMessage(playerid, 0xFFFFFFAA, "Use /Dar Cocaina [ID][Quantia]");
- new Float:Pos[3];
- GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
- if(!IsPlayerInRangeOfPoint(id, 1.5, Pos[0], Pos[1], Pos[2])) return SendClientMessage(playerid, 0xFFFFFFAA, "Este drogado nao esta perto de voce!");
- if(quantia > GetPVarInt(playerid, "Cocaina")) return SendClientMessage(playerid, 0xFFFFFFAA, "Voce nao tem toda essa cocaina.");
- SetPVarInt(playerid, "Cocaina", GetPVarInt(playerid, "Cocaina") - quantia);
- format(corda, 83, "%s deu %i gramas de cocaina para %s", pNome(playerid), pNome(id));
- MensagemDelimitada(10.0, playerid, 0xFFFFFFAA, corda);
- SetPVarInt(id, "Cocaina", GetPVarInt(id, "Cocaina") + quantia);
- return 1;
- }
- if(strcmp(droga, "crack", true) == 0)
- {
- new id, quantia;
- if(sscanf(params, "ui", id)) return SendClientMessage(playerid, 0xFFFFFFAA, "Use /Dar Crack [ID][Quantia]");
- new Float:Pos[3];
- GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
- if(!IsPlayerInRangeOfPoint(id, 1.5, Pos[0], Pos[1], Pos[2])) return SendClientMessage(playerid, 0xFFFFFFAA, "Este drogado nao esta perto de voce!");
- if(quantia > GetPVarInt(playerid, "Crack")) return SendClientMessage(playerid, 0xFFFFFFAA, "Voce nao tem todo esse crack.");
- SetPVarInt(playerid, "Crack", GetPVarInt(playerid, "Crack") - quantia);
- format(corda, 81, "%s deu %i gramas de crack para %s", pNome(playerid), pNome(id));
- MensagemDelimitada(10.0, playerid, 0xFFFFFFAA, corda);
- SetPVarInt(id, "Crack", GetPVarInt(id, "Crack") + quantia);
- return 1;
- }
- return 1;
- }
- public CriarDrogas(playerid)
- {
- format(corda, 36, "Drogas/%s.ini", pNome(playerid));
- DOF2_CreateFile(corda);
- DOF2_SetInt(corda, "Maconha", 0);
- DOF2_SetInt(corda, "Cocaina", 0);
- DOF2_SetInt(corda, "Crack", 0);
- DOF2_SetInt(corda, "SafeMaconha", 0);
- DOF2_SetInt(corda, "SafeCocaina", 0);
- DOF2_SetInt(corda, "SafeCrack", 0);
- DOF2_SaveFile();
- printf("Informações Drogásticas de %s Criadas ! :D", pNome(playerid));
- return 1;
- }
- public CarregarDrogas(playerid)
- {
- format(corda, 36, "Drogas/%s.ini", pNome(playerid));
- SetPVarInt(playerid, "Maconha", DOF2_GetInt(corda, "Maconha"));
- SetPVarInt(playerid, "Cocaina", DOF2_GetInt(corda, "Cocaina"));
- SetPVarInt(playerid, "Crack", DOF2_GetInt(corda, "Crack"));
- SetPVarInt(playerid, "SMaconha", DOF2_GetInt(corda, "SafeMaconha"));
- SetPVarInt(playerid, "SCocaina", DOF2_GetInt(corda, "SafeCocaina"));
- SetPVarInt(playerid, "SCrack", DOF2_GetInt(corda, "SafeCrack"));
- printf("Informações Drogásticas de %s Carregadas ! :D", pNome(playerid));
- return 1;
- }
- public SalvarDrogas(playerid)
- {
- format(corda, 36, "Contas/%s.ini", pNome(playerid));
- DOF2_SetInt(corda, "Maconha", GetPVarInt(playerid, "Maconha"));
- DOF2_SetInt(corda, "Cocaina", GetPVarInt(playerid, "Maconha"));
- DOF2_SetInt(corda, "Crack", GetPVarInt(playerid, "Maconha"));
- DOF2_SetInt(corda, "SafeMaconha", GetPVarInt(playerid, "SMaconha"));
- DOF2_SetInt(corda, "SafeCocaina", GetPVarInt(playerid, "SCocaina"));
- DOF2_SetInt(corda, "SafeCrack", GetPVarInt(playerid, "SCrack"));
- printf("Informações Drogásticas de %s Salvas ! :D", pNome(playerid));
- return 1;
- }
- public MensagemDelimitada(Float:distancia, playerid, cor, texto[])
- {
- new Float:X,Float:Y,Float:Z;
- GetPlayerPos(playerid, X, Y, Z);
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(IsPlayerConnected(i))
- {
- if(IsPlayerInRangeOfPoint(i, distancia, X, Y, Z))
- {
- SendClientMessage(i, cor, texto);
- }
- }
- }
- return 1;
- }
- stock PlayerEstaEmPontoDeDrogas(playerid)
- {
- if(IsPlayerInRangeOfPoint(playerid, 2.0, 123.456, 123.456, 123.456)) return 1;//troque os 123.456 pelas coordenadas x,y,z do(s) local(is) de venda que quiser
- //Pode colocar mais locais seguindo o modelo acime
- else return 0;
- }
- stock PlayerEstaEmEsconderijoDeDrogas(playerid)
- {
- if(IsPlayerInRangeOfPoint(playerid, 2.0, 128.456, 123.456, 123.456)) return 1;//assim como no de cima troque 123.456 pelas coords X,Y e Z podendo adicionar mais locais
- //pode colocar mais :D
- else return 0;
- }
- stock pNome(playerid)
- {
- new Name[MAX_PLAYER_NAME];
- GetPlayerName(playerid, Name, sizeof(Name));
- return Name;
- }
- //Qualquer BUG Comente no Topico
Advertisement
Add Comment
Please, Sign In to add comment