Guest User

Drug system

a guest
Jan 4th, 2013
372
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.38 KB | None | 0 0
  1. // Diler droge
  2. // Skriptanje startovano 04.01.2013. u 12:20
  3. // By DexterTM and Chirs
  4.  
  5. #include <a_samp>
  6. #include <zcmd>
  7. #include <sscanf>
  8. #include <streamer>
  9. #include <utils>
  10.  
  11. #define SCM SendClientMessage
  12.  
  13. new TravaZasadjena[MAX_PLAYERS], TravaTimerr[MAX_PLAYERS];
  14. new TravaGotova[MAX_PLAYERS];
  15. new TravaObjekt[MAX_PLAYERS];
  16. new Float:TravaX[MAX_PLAYERS], Float:TravaY[MAX_PLAYERS], Float:TravaZ[MAX_PLAYERS];
  17. new Napusen[MAX_PLAYERS];
  18. new NapusenTimer[MAX_PLAYERS];
  19.  
  20.  
  21. forward TravaTimer(playerid);
  22. forward KoristioTimer(playerid);
  23.  
  24. public OnFilterScriptInit()
  25. {
  26. print("\n--------------------------------------");
  27. print(" Posao Dilera droge ");
  28. print("BY Pasa(Chris) AND Alex.Cone(DexterTM)");
  29. print("--------------------------------------\n");
  30. return 1;
  31. }
  32.  
  33. enum fInfo
  34. {
  35. SjemeTrave,
  36. Trava,
  37. Droga
  38. }
  39.  
  40. new Filterscript[MAX_PLAYERS][fInfo];
  41.  
  42. CMD:kupisjeme(playerid,params[])
  43. {
  44. if(!IsPlayerInRangeOfPoint(playerid, 3.0, -2093.2883,-2417.5879,29.6194)) return SCM(playerid, -1,"Niste na mjestu za uzimanje sjemenki");
  45. if(GetPlayerMoney(playerid) < 125) return SCM(playerid, -1,"Nemas dovoljno novca (125$)!");
  46.  
  47. new string[256];
  48. Filterscript[playerid][SjemeTrave] += 15;
  49. GivePlayerMoney(playerid, -125);
  50. format(string, sizeof(string), "Kupili ste sebi 15 sjemenki trave. Ukupno imate: %d", Filterscript[playerid][SjemeTrave]);
  51. SCM(playerid, -1, string);
  52. return 1;
  53. }
  54.  
  55. CMD:posadisjeme(playerid,params[])
  56. {
  57. if(Filterscript[playerid][SjemeTrave] < 1) return SCM(playerid, -1,"Nemas vise sjemenki da zasadis.");
  58. if(TravaZasadjena[playerid] != 0) return SCM(playerid, -1,"Vec ste zasadili travu.");
  59. GetPlayerPos(playerid, TravaX[playerid], TravaY[playerid], TravaZ[playerid]);
  60. TravaZ[playerid] -= 2.0;
  61. SCM(playerid, -1,"Zasadili ste travu. Pzaite na nju dok ne bude gotova.");
  62. Filterscript[playerid][SjemeTrave] -= 1;
  63. TravaGotova[playerid] = 0;
  64. TravaZasadjena[playerid] = 5;
  65. TravaTimerr[playerid] = SetTimerEx("TravaTimer", 10000, true, "i", playerid);
  66. TravaObjekt[playerid] = CreateDynamicObject(3409, TravaX[playerid], TravaY[playerid], TravaZ[playerid], 0.0, 0.0, 0.0, 0, 0, -1, 15.0);
  67. return 1;
  68. }
  69.  
  70. CMD:uberitravu(playerid,params[])
  71. {
  72. if(TravaZasadjena[playerid] > 0) return SCM(playerid, -1,"Trava jos nije narasla!");
  73. if(TravaZasadjena[playerid] <= 0 && TravaGotova[playerid] != 1) return SCM(playerid, -1,"Niste posadili travu!");
  74. if(!IsPlayerInRangeOfPoint(playerid, 3.0, TravaX[playerid], TravaY[playerid], TravaZ[playerid])) return SCM(playerid, -1,"Niste blizu mjesta gdje ste posadili travu.");
  75.  
  76. new string[256];
  77. Filterscript[playerid][Trava] += 5;
  78. format(string, sizeof(string), "Ubrali ste 5 grama trave. Sada imate %d grama.", Filterscript[playerid][Trava]);
  79. SCM(playerid, -1, string);
  80. TravaGotova[playerid] = 0;
  81. TravaZasadjena[playerid] = 0;
  82. DestroyDynamicObject(TravaObjekt[playerid]);
  83. return 1;
  84. }
  85.  
  86.  
  87. CMD:koristitravu(playerid,params[])
  88. {
  89. new Float:armour;
  90. if(Napusen[playerid] != 0) return SCM(playerid, -1,"Vec si napusen.");
  91. if(Filterscript[playerid][Trava] < 1) return SCM(playerid, -1,"Nemas dovoljno trave.");
  92.  
  93. Filterscript[playerid][Trava] -= 1;
  94. GetPlayerArmour(playerid, armour);
  95. SetPlayerArmour(playerid, armour+10);
  96. SetPlayerDrunkLevel(playerid, 15);
  97. SetPlayerWeather(playerid, -66);
  98. Napusen[playerid] = 1;
  99. NapusenTimer[playerid] = SetTimerEx("KoristioTimer", 30000, true, "i", playerid);
  100. return 1;
  101. }
  102.  
  103. CMD:prodajtravu(playerid,params[])
  104. {
  105. new id[25], kol, cijena;
  106. if(sscanf(params,"s[24]dd",id,kol,cijena)) return SCM(playerid,-1,"Koristite: /prodajdrogu [playerid/dio imena] [kolicinu koju prodajete] [cijena]");
  107. new igrac = ReturnUser(id);
  108. if(IsPlayerConnected(igrac)) return SCM(playerid,-1,"Taj igrac nije online!");
  109. if(igrac == playerid) return SCM(playerid,-1,"nemozete sami sebi prodavati drogu!");
  110. if(kol < 1) return SCM(playerid,-1,"Kolicina droge nemoze biti ispod 1!");
  111. if(kol > Filterscript[playerid][Trava]) return SCM(playerid,-1,"Nemate dovoljno trave kod sebe!");
  112. if(cijena < (15 * kol) || cijena > (1000 * kol)) return SCM(playerid,-1,"Minimalna cijena mora biti 50$ po gramu droge a maksimalna cijena moze biti 1000 $ po gramu!");
  113. if(GetPlayerMoney(igrac) < cijena) return SCM(playerid,-1,"Igrac kome zelite prodati drogu nema dovoljno novca kod sebe!");
  114.  
  115. Filterscript[playerid][Trava] -= kol;
  116. Filterscript[igrac][Trava] += kol;
  117. GivePlayerMoney(playerid,cijena);
  118. GivePlayerMoney(playerid,-cijena);
  119. new str[256];
  120.  
  121. format(str,sizeof(str),"Uspjesno ste prodali %d grama droge igracu %s!", kol, ImeIgraca(igrac));
  122. SCM(playerid,-1,str);
  123. format(str,sizeof(str),"Uspjesno ste kupili %d grama droge od dilera droge %s!", kol, ImeIgraca(playerid));
  124. SCM(igrac,-1,str);
  125. return 1;
  126. }
  127.  
  128. public TravaTimer(playerid)
  129. {
  130. TravaZ[playerid] += 0.18;
  131. MoveDynamicObject(TravaObjekt[playerid],TravaX[playerid], TravaY[playerid], TravaZ[playerid],0.5);
  132. TravaZasadjena[playerid] --;
  133. if(TravaZasadjena[playerid] < 1) TravaGotova[playerid] = 1, KillTimer(TravaTimerr[playerid]), SCM(playerid, -1,"Vasa trava je narasla, brzo je uberite!");
  134. return 1;
  135. }
  136.  
  137. public KoristioTimer(playerid)
  138. {
  139. Napusen[playerid] = 0;
  140. SetPlayerWeather(playerid, 2);
  141. SetPlayerDrunkLevel(playerid, 0);
  142. return 1;
  143. }
  144.  
  145. stock ImeIgraca(playerid)
  146. {
  147. new imeee[MAX_PLAYER_NAME];
  148. GetPlayerName(playerid,imeee,sizeof(imeee));
  149. return imeee;
  150. }
Advertisement
Add Comment
Please, Sign In to add comment