#include <a_samp>
#include <sscanf>
#include <DOF2>
#include <ZCMD>
#define PASTA ("PASTA/Jogadores/%s.ini") //escolha sua pasta
#define MOCHILA 1
enum enum_player{
Cocaina,
Maconha,
Crack
}
new Player[MAX_PLAYERS][enum_player];
public OnFilterScriptInit()
{
return 1;
}
public OnFilterScriptExit()
{
DOF2_Exit();
return 1;
}
stock NomeJogador(playerid){
new nome[MAX_PLAYER_NAME];
GetPlayerName(playerid, nome, sizeof(nome));
return nome;
}
CarregarJogador(playerid){
new string[128];
format(string, sizeof(string), PASTA, NomeJogador(playerid));
if(fexist(string)){
Player[playerid][Maconha] = DOF2_GetInt(string, "Maconha");
Player[playerid][Cocaina] = DOF2_GetInt(string, "Cocaina");
Player[playerid][Crack] = DOF2_GetInt(string, "Crack");
}
return 1;
}
SalvarJogador(playerid){
new string[128];
format(string, sizeof(string), PASTA, NomeJogador(playerid));
DOF2_SetInt(string,"Maconha", Player[playerid][Maconha]);
DOF2_SetInt(string,"Cocaina", Player[playerid][Cocaina]);
DOF2_SetInt(string,"Crack", Player[playerid][Crack]);
return 1;
}
CMD:comprardrogas(playerid,params[])
{
new cmd, quantidade;
if(sscanf(params, "dd",cmd, quantidade)) return SendClientMessage(playerid, -1, ">> USO : /comprardrogas [[1]maconha,[2]cocaina,[3]crack] [quantidade] ");
if(cmd == 0) return SendClientMessage(playerid, -1, "[ 1 maconha 2 cocaina 3 crack");
if(cmd > 3) return SendClientMessage(playerid, -1, "[ 1 maconha 2 cocaina 3 crack");
if(cmd == 1)
{
new preco;
preco = quantidade * 10;
if(GetPlayerMoney(playerid) < 10) return SendClientMessage(playerid, -1, "[ MACONHA CUSTA 10$BRL UNIDADE ]");
Player[playerid][Maconha] += quantidade;
GivePlayerMoney(playerid, preco);
new str[128];
format(str, sizeof(str), "[ DROGAS ] Vocк comprou %d de maconha por %d ", quantidade, preco);
SendClientMessage(playerid, -1, str);
return 1;
}
if(cmd == 2)
{
new preco;
preco = quantidade * 20;
if(GetPlayerMoney(playerid) < 20) return SendClientMessage(playerid, -1, "[ COCAINA CUSTA 20$BRL UNIDADE ]");
Player[playerid][Cocaina] += quantidade;
GivePlayerMoney(playerid, preco);
new str[128];
format(str, sizeof(str), "[ DROGAS ] Vocк comprou %d de cocaina por %d ", quantidade, preco);
SendClientMessage(playerid, -1, str);
return 1;
}
if(cmd == 3)
{
new preco;
preco = quantidade * 40;
if(GetPlayerMoney(playerid) < 40) return SendClientMessage(playerid, -1, "[ CRACK CUSTA 40$BRL UNIDADE ]");
Player[playerid][Crack] += quantidade;
GivePlayerMoney(playerid, preco);
new str[128];
format(str, sizeof(str), "[ DROGAS ] Vocк comprou %d de crack por %d ", quantidade, preco);
SendClientMessage(playerid, -1, str);
return 1;
}
return 1;
}
CMD:minhamochila(playerid,params[])
{
ShowPlayerDialog(playerid, MOCHILA, DIALOG_STYLE_LIST, "Maconheiro nem й gente", "Maconha\nCocaina\nCrack", "Escolher", "");
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
switch(dialogid)
{
case MOCHILA:
{
if(response)
{
if(listitem == 0)
{
if(Player[playerid][Maconha] == 0) return SendClientMessage(playerid, -1, "Vocк nгo possui maconha /comprardrogas");
new Float:armour;GetPlayerArmour(playerid, armour);
if(armour >= 100) return SendClientMessage(playerid, -1, "Seu colete estб 100");
if(Player[playerid][Maconha] < 1) return SendClientMessage(playerid, -1, "Sua maconha acabou /comprardrogas");
Player[playerid][Maconha] -= 1;
new Float:colete = 0;
GetPlayerArmour(playerid, colete);
SetPlayerArmour(playerid, 2.0 + colete);
SetPlayerWeather(playerid, -10);
SetPlayerSpecialAction(playerid,SPECIAL_ACTION_SMOKE_CIGGY);
SetTimerEx("Efeito", 10000, 0, "i", playerid);
new str[128];
format(str, sizeof(str), "[ DROGAS ] Vocк ainda tem %d de maconha", Player[playerid][Maconha]);
SendClientMessage(playerid, -1, str);
}
if(listitem == 1)
{
if(Player[playerid][Cocaina] == 0) return SendClientMessage(playerid, -1, "Vocк nгo possui Cocaina /comprardrogas");
new Float:armour;GetPlayerArmour(playerid, armour);
if(armour >= 100) return SendClientMessage(playerid, -1, "Seu colete estб 100");
Player[playerid][Cocaina] -= 2;
new Float:colete = 0;
GetPlayerArmour(playerid, colete);
SetPlayerArmour(playerid, 7.0 + colete);
SetPlayerWeather(playerid, -10);
SetPlayerSpecialAction(playerid,SPECIAL_ACTION_SMOKE_CIGGY);
SetTimerEx("Efeito", 10000, 0, "i", playerid);
new str[128];
format(str, sizeof(str), "[ DROGAS ] Vocк ainda tem %d de Cocaina", Player[playerid][Cocaina]);
SendClientMessage(playerid, -1, str);
}
if(listitem == 2)
{
if(Player[playerid][Crack] == 0) return SendClientMessage(playerid, -1, "Vocк nгo possui Crack /comprardrogas");
new Float:armour;GetPlayerArmour(playerid, armour);
if(armour >= 100) return SendClientMessage(playerid, -1, "Seu colete estб 100");
Player[playerid][Crack] -= 3;
new Float:colete = 0;
GetPlayerArmour(playerid, colete);
SetPlayerArmour(playerid, 10.0 + colete);
SetPlayerWeather(playerid, -40);
SetPlayerSpecialAction(playerid,SPECIAL_ACTION_SMOKE_CIGGY);
SetTimerEx("Efeito", 10000, 0, "i", playerid);
new str[128];
format(str, sizeof(str), "[ DROGAS ] Vocк ainda tem %d de crack", Player[playerid][Crack]);
SendClientMessage(playerid, -1, str);
}
}
}
}
return 1;
}
forward Efeito(playerid);
public Efeito(playerid)
{
SetPlayerWeather(playerid, 0);
SendClientMessage(playerid, -1, "Vocк voltou a conciкncia");
}
e para adicionar mais drogas?
tenho que criar outra na enum_player? |
"Maconheiro nem й gente"
Sistema legal, parabйns, gostei... caso adapte ao seu gamemode recomendo que use Banco de dados para que nгo fique muito cheio de arquivos.
Код:
"Maconheiro nem й gente" |