Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <a_samp>
- #include <Dini>
- #define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
- #define Color 0x03D687FF
- #define COLOR_RED 0xAA3333AA
- new trava;
- new trava1;
- new trava2;
- new trava3;
- new gramy[MAX_PLAYERS];
- new cena[MAX_PLAYERS];
- new Prodava[MAX_PLAYERS];
- new Trava[MAX_PLAYERS];
- public OnFilterScriptInit()
- {
- trava = CreatePickup(1279, 1, -1062.2738, -1637.0222, 76.3672, -1);
- trava1 = CreatePickup(1279, 1, -1062.1720,-1632.3475,76.3672, -1);
- trava2 = CreatePickup(1279, 1, -1061.8340,-1626.4373,76.3672, -1);
- trava3 = CreatePickup(1279, 1, -1062.2264,-1621.5592,76.3672, -1);
- SetTimer("CallConnect",1,0);
- return 1;
- }
- forward CallConnect(playerid);
- public CallConnect(playerid)
- {
- OnPlayerConnect(playerid);
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- Prodava[playerid] = 0;
- new file[100],pName[MAX_PLAYER_NAME];
- GetPlayerName(playerid,pName,24);
- format(file,sizeof(file),"Trava\%s.ini",pName);
- if(!dini_Exists(file))
- {
- dini_Create(file);
- dini_IntSet(file,"Trava",Trava[playerid]);
- }
- else
- {
- Trava[playerid] = dini_Int(file,"Trava");
- }
- return 1;
- }
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- dcmd(itrava, 6, cmdtext);
- dcmd(prodat, 6, cmdtext);
- dcmd(koupit, 6, cmdtext);
- return 1;
- }
- public OnPlayerPickUpPickup(playerid, pickupid)
- {
- if(pickupid == trava)
- ShowPlayerDialog(playerid,548,DIALOG_STYLE_LIST,"Pestovanie Marihuany","Marihuana\t","vypestovat","nic");
- if(pickupid == trava1)
- ShowPlayerDialog(playerid,548,DIALOG_STYLE_LIST,"Pestovanie Marihuany","Marihuana\t","vypestovat","nic");
- if(pickupid == trava2)
- ShowPlayerDialog(playerid,548,DIALOG_STYLE_LIST,"Pestovanie Marihuany","Marihuana\t","vypestovat","nic");
- if(pickupid == trava3)
- ShowPlayerDialog(playerid,548,DIALOG_STYLE_LIST,"Pestovanie Marihuany","Marihuana\t","vypestovat","nic");
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- if(dialogid == 548 && response)
- {
- switch(listitem)
- {
- case 0://marihuana
- {
- Trava[playerid] += 5;
- GameTextForPlayer(playerid,"~g~5g+",2000,1);
- }
- }
- }
- if(dialogid == 1598 && response)
- {
- if(!response) return 0;
- if(response)
- {
- if(Trava[playerid] >= 1)
- {
- if(Prodava[playerid] == 1) return SendClientMessage(playerid, -1, "[ ! ] Nemůžeš se sfajčit, když prodáváš trávu... Mohl by si ji všechnu vykouřit !");
- SendClientMessage(playerid,Color,"Sfajčil si sa jak rus,effect prejde za minutu.");
- new Float:Health,Float:Armour; GetPlayerHealth(playerid,Health); GetPlayerArmour(playerid,Armour);
- ApplyAnimation(playerid,"ped","Smoke_in_car",4.1,1,1,1,1,1);
- SetTimerEx("Walkanim",6000,0,"i",playerid);
- SetTimerEx("EffectGone",60000,0,"i",playerid);
- Trava[playerid] -= 1;
- SetPlayerDrunkLevel (playerid, 50000);
- }
- }
- }
- return 1;
- }
- dcmd_itrava(playerid, params[])
- {
- #pragma unused params
- new string[128];
- format(string,sizeof(string),"Tvoja trava : %d Gramoch",Trava[playerid]);
- ShowPlayerDialog(playerid,1598,DIALOG_STYLE_MSGBOX,"Trava",string,"Sfajcit","Cancel");
- return 1;
- }
- dcmd_prodat(playerid, params[])
- {
- new string[128], string2[128] ,pName[26];
- new bool: Zrusit = false;
- gramy[playerid] = strval(params);
- cena[playerid] = chrfind(' ',params) + 1;
- GetPlayerName(playerid,pName,26);
- if(Zrusit == false)
- {
- if(!strlen(params) || !strlen(params[cena[playerid]])) return SendClientMessage(playerid, -1, "[ ! ] Použití: /prodat [gramy_trávy] [cena]");
- else if(strval(params) > Trava[playerid]) return SendClientMessage(playerid, -1, "[ ! ] Nedostatečné množství trávy, použij /itrava pro zjištění množství gramů trávy !");
- else if(strlen(params)|| strlen(params[cena[playerid]]) <= 0) return SendClientMessage(playerid, -1, "[ ! ] Nemůžeš zadat 0 nebo zápornou hodnotu!");
- {
- format(string,sizeof(string),"Hráč %s prodává %d gramů trávy za $%d ! ( /koupit [id] )",pName, gramy[playerid], cena[playerid]);
- SendClientMessageToAll(Color, string);
- SendClientMessage(playerid, -1,"[ ! ] Pro zrušení nabídky zopakuj příkaz /prodat !");
- Prodava[playerid] = 1;
- Zrusit = true;
- }
- }
- else
- {
- format(string2,sizeof(string2),"Hráč %s zrušil svojí nabídku prodeje trávy ! ",pName);
- SendClientMessageToAll(Color, string2);
- SendClientMessage(playerid, -1, "[ ! ] Zrušili jste svojí nabídku !");
- Prodava[playerid] = 0;
- Zrusit = false;
- }
- return 1;
- }
- dcmd_koupit(playerid, params[])
- {
- #pragma unused params
- new id = strval(params);
- new string[128], pName2[26];
- if(!strlen(params)) return SendClientMessage(playerid, -1, "[ ! ] Použití: /koupit [id_prodavajiciho]");
- else if(!IsPlayerConnected(id)) return SendClientMessage(playerid, -1, "[ ! ] Tento hráč není připojen !");
- else if(Prodava[id] == 0) return SendClientMessage(playerid, -1, "[ ! ] Tento hráč neprodává žádné drogy!");
- else if(GetPlayerMoney(playerid) < cena[id]) return SendClientMessage(playerid, -1, "[ ! ] Nemáš dostatek peněz na nákup drog !");
- else if(playerid == strval(params)) return SendClientMessage(playerid, -1, "[ ! ] Nemůžeš koupit drogy sám od sebe !");
- {
- GetPlayerName(id, pName2, 26);
- format(string,sizeof(string),"Koupil si od hráče %s %d gramů trávy za $%d !",pName2, gramy[id], cena[id]);
- SendClientMessage(playerid, Color, string);
- Trava[id] -= gramy[id];
- Trava[playerid] += gramy[id];
- GivePlayerMoney(playerid, GetPlayerMoney(playerid)-cena[id]);
- GivePlayerMoney(id, GetPlayerMoney(id)+cena[id]);
- Prodava[id] = 0;
- }
- return 1;
- }
- forward Walkanim(playerid);
- public Walkanim(playerid)
- {
- ApplyAnimation(playerid,"ped","WALK_drunk",4.1,1,1,1,1,1);
- return 1;
- }
- forward EffectGone(playerid);
- public EffectGone(playerid)
- {
- SetPlayerDrunkLevel(playerid,0);
- return 1;
- }
- chrfind(n,h[],s=0)
- {
- new l=strlen(h);
- while(s<l)
- {
- if(h[s]==n)
- return s;s++;
- }
- return -1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement