[Tutorial] Sistema de compra e uso de drogas!
#1

Fiz um basico, e dependendo de sua logica, tu irб criar um avanзado!
Usei:
ZMCD
SSCANF
DOF2

Crie a pasta desejada ou se for usar em gamemode coloque no ini do jogador!

PHP код:
#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]; 
Caso for coloca em GameMode use o GameModeInit() e Exit()
PHP код:
public OnFilterScriptInit()
{
    return 
1;
}
public 
OnFilterScriptExit()
{
    
DOF2_Exit();
    return 
1;

PHP код:
stock NomeJogador(playerid){
    new 
nome[MAX_PLAYER_NAME];
    
GetPlayerName(playeridnomesizeof(nome));
    return 
nome;
}
CarregarJogador(playerid){
    new 
string[128];
    
format(stringsizeof(string), PASTANomeJogador(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(stringsizeof(string), PASTANomeJogador(playerid));
    
DOF2_SetInt(string,"Maconha"Player[playerid][Maconha]);
    
DOF2_SetInt(string,"Cocaina"Player[playerid][Cocaina]);
    
DOF2_SetInt(string,"Crack"Player[playerid][Crack]);
    return 
1

PHP код:
CMD:comprardrogas(playerid,params[])
{
    new 
cmdquantidade;
    if(
sscanf(params"dd",cmdquantidade)) 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(playeridpreco);
        new 
str[128];
        
format(strsizeof(str), "[ DROGAS ] Vocк comprou %d de maconha por %d "quantidadepreco);
        
SendClientMessage(playerid, -1str);
        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(playeridpreco);
        new 
str[128];
        
format(strsizeof(str), "[ DROGAS ] Vocк comprou %d de cocaina por %d "quantidadepreco);
        
SendClientMessage(playerid, -1str);
        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(playeridpreco);
        new 
str[128];
        
format(strsizeof(str), "[ DROGAS ] Vocк comprou %d de crack por %d "quantidadepreco);
        
SendClientMessage(playerid, -1str);
        return 
1;
    }
    return 
1;
}
CMD:minhamochila(playerid,params[])
{
    
ShowPlayerDialog(playeridMOCHILADIALOG_STYLE_LIST"Maconheiro nem й gente""Maconha\nCocaina\nCrack""Escolher""");
    return 
1;

PHP код:
public OnDialogResponse(playeriddialogidresponselistiteminputtext[])
{
    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(playeridarmour);
                   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(playeridcolete);
                   
SetPlayerArmour(playerid2.0 colete);
                   
SetPlayerWeather(playerid, -10);
                   
SetPlayerSpecialAction(playerid,SPECIAL_ACTION_SMOKE_CIGGY);
                                   
SetTimerEx("Efeito"100000"i"playerid);
                   new 
str[128];
                   
format(strsizeof(str), "[ DROGAS ] Vocк ainda tem %d de maconha"Player[playerid][Maconha]);
                   
SendClientMessage(playerid, -1str);
               }
               if(
listitem == 1)
               {
                      if(
Player[playerid][Cocaina] == 0) return SendClientMessage(playerid, -1"Vocк nгo possui Cocaina /comprardrogas");
                      
                      new 
Float:armour;GetPlayerArmour(playeridarmour);
                   if(
armour >= 100) return SendClientMessage(playerid, -1"Seu colete estб 100");
                   
Player[playerid][Cocaina] -= 2;
                   new 
Float:colete 0;
                   
GetPlayerArmour(playeridcolete);
                   
SetPlayerArmour(playerid7.0 colete);
                   
SetPlayerWeather(playerid, -10);
                   
SetPlayerSpecialAction(playerid,SPECIAL_ACTION_SMOKE_CIGGY);
                                   
SetTimerEx("Efeito"100000"i"playerid);
                   new 
str[128];
                   
format(strsizeof(str), "[ DROGAS ] Vocк ainda tem %d de Cocaina"Player[playerid][Cocaina]);
                   
SendClientMessage(playerid, -1str);
               }
               if(
listitem == 2)
               {
                      if(
Player[playerid][Crack] == 0) return SendClientMessage(playerid, -1"Vocк nгo possui Crack /comprardrogas");
                      
                      new 
Float:armour;GetPlayerArmour(playeridarmour);
                   if(
armour >= 100) return SendClientMessage(playerid, -1"Seu colete estб 100");
                   
Player[playerid][Crack] -= 3;
                   new 
Float:colete 0;
                   
GetPlayerArmour(playeridcolete);
                   
SetPlayerArmour(playerid10.0 colete);
                   
SetPlayerWeather(playerid, -40);
                   
SetPlayerSpecialAction(playerid,SPECIAL_ACTION_SMOKE_CIGGY);
                                   
SetTimerEx("Efeito"100000"i"playerid);
                   new 
str[128];
                   
format(strsizeof(str), "[ DROGAS ] Vocк ainda tem %d de crack"Player[playerid][Crack]);
                   
SendClientMessage(playerid, -1str);
               }
            }
        }
    }
    return 
1;
}
forward Efeito(playerid);
public 
Efeito(playerid)
{
    
SetPlayerWeather(playerid0);
    
SendClientMessage(playerid, -1"Vocк voltou a conciкncia");

Fs https://pastebin.com/ngmitaRT
Reply


Messages In This Thread
Sistema de compra e uso de drogas! - by Jonorusc - 19.08.2017, 02:20
Re: Sistema de compra e uso de drogas! - by SerjaumBerranteiro - 19.08.2017, 02:24
Re: Sistema de compra e uso de drogas! - by C4rtm4n - 19.08.2017, 02:25
Re: Sistema de compra e uso de drogas! - by IlanZ - 19.08.2017, 02:26
Re: Sistema de compra e uso de drogas! - by Jonorusc - 19.08.2017, 02:30
Re: Sistema de compra e uso de drogas! - by Jonorusc - 19.08.2017, 02:32
Re: Sistema de compra e uso de drogas! - by SerjaumBerranteiro - 19.08.2017, 02:35
Re: Sistema de compra e uso de drogas! - by ClaudioF - 19.08.2017, 18:42
Re: Sistema de compra e uso de drogas! - by C4rtm4n - 19.08.2017, 19:27
Re: Sistema de compra e uso de drogas! - by Jonorusc - 19.08.2017, 20:11

Forum Jump:


Users browsing this thread: 2 Guest(s)