Guest User

Kosac Trave by LEO

a guest
Oct 15th, 2016
328
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 12.44 KB | None | 0 0
  1. // ======================== < INFORMACIJE > ================================= //
  2. // //
  3. // -= INFO =- //
  4. // Ne mici creditse nisi valjda takav retard //
  5. // Credit/s: Leo //
  6. // Slike posla: http://imgur.com/a/QOkKo //
  7. // ========================================================================== //
  8.  
  9. #include <a_samp>
  10. #include <zcmd>
  11.  
  12.  
  13. #define DIALOG_POSAO_ZAPOSLEN 505
  14. #pragma tabsize 0
  15. #define COLOR_RED 0xfa5555AA
  16.  
  17. new Text:DRP0;
  18.  
  19. #define COLOR_LIGHTRED 0xFF6347AA
  20. #define COLOR_WHITE 0xFFFFFFAA
  21.  
  22. enum pInfo
  23. {
  24. pKosac,
  25. pPosao,
  26. pOprema
  27. };
  28.  
  29. new PlayerInfo[MAX_PLAYERS][pInfo];
  30. //----------------------------------------------------------
  31.  
  32. new Oprema[MAX_PLAYERS];
  33. new Trava[17][MAX_PLAYERS];
  34. new KosacPosao[MAX_PLAYERS];
  35. new TravaTimer[MAX_PLAYERS];
  36. new Kosilica[4];
  37. //----------------------------------------------------------
  38.  
  39. main()
  40. {
  41. print("\n---------------------------------------");
  42. print("Kosac Trave by Leo\n");
  43. print("---------------------------------------\n");
  44. }
  45.  
  46. //----------------------------------------------------------
  47.  
  48. public OnPlayerDisconnect(playerid, reason)
  49. {
  50. TextDrawHideForPlayer(playerid, DRP0);
  51. Oprema[playerid] = 0;
  52. return 1;
  53. }
  54.  
  55.  
  56. public OnPlayerConnect(playerid)
  57. {
  58. TextDrawShowForPlayer(playerid, DRP0);
  59. SendClientMessage(playerid,-1,"");
  60. SendClientMessage(playerid,-1,"");
  61. SendClientMessage(playerid,-1,"");
  62. SendClientMessage(playerid,-1,"");
  63. SendClientMessage(playerid,-1,"");
  64. SendClientMessage(playerid,-1,"");
  65. SendClientMessage(playerid,-1,"");
  66. SendClientMessage(playerid,-1,"");
  67. SendClientMessage(playerid,-1,"");
  68. SendClientMessage(playerid,-1,"");
  69. SendClientMessage(playerid,-1,"");
  70. SendClientMessage(playerid,-1,"");
  71. SendClientMessage(playerid,-1,"");
  72. SendClientMessage(playerid,-1,"");
  73. SendClientMessage(playerid,-1,"");
  74. SendClientMessage(playerid,-1,"");
  75. SendClientMessage(playerid,-1,"");
  76. SendClientMessage(playerid,-1,"");
  77. SendClientMessage(playerid,-1,"");
  78. SendClientMessage(playerid,-1,"");
  79. GameTextForPlayer(playerid, "~w~DOBRODOSLI~n~KOSAC~n~TRAVE~n~POASO", 5000, 6);
  80. RemoveBuildingForPlayer(playerid, 620, 1880.1250, -1152.1328, 20.8047, 0.25);
  81. KosacPosao[playerid] = 0;
  82.  
  83. return 1;
  84. }
  85.  
  86. //----------------------------------------------------------
  87.  
  88. public OnPlayerSpawn(playerid)
  89. {
  90. SetPlayerSkin(playerid, 292);
  91. SetPlayerPos(playerid, 1883.2881, -1151.2875, 23.0440);
  92. return 1;
  93. }
  94. //----------------------------------------------------------
  95.  
  96.  
  97. stock VoziloKosaca(carid)
  98. {
  99. for(new i = 0; i < sizeof(Kosilica); i++)
  100. {
  101. if(carid == Kosilica[i]) return 1;
  102. }
  103. return 0;
  104. }
  105.  
  106. //----------------------------------------------------------
  107.  
  108. public OnGameModeInit()
  109. {
  110. SetGameModeText("Leo v0.1");
  111. ShowPlayerMarkers(PLAYER_MARKERS_MODE_GLOBAL);
  112. ShowNameTags(1);
  113. SetNameTagDrawDistance(40.0);
  114. EnableStuntBonusForAll(0);
  115. DisableInteriorEnterExits();
  116. SetWeather(2);
  117. SetWorldTime(11);
  118.  
  119. AddStaticPickup(1210, 23,1888.0514, -1147.8807, 24.5296); //
  120. Create3DTextLabel("{84BCCF}KOSAC TRAVE\n\n {84BCCF} USE: /takejob",COLOR_RED,1888.0514, -1147.8807, 24.5296, 5.0 , 0 , 0);
  121.  
  122. AddStaticPickup(1275, 23,1886.4071, -1146.8485, 24.7326); //
  123. Create3DTextLabel("{84BCCF}OPREMA\n\n {84BCCF} USE: /uniform & /suniform",COLOR_RED,1886.4071, -1146.8485, 24.7326, 5.0 , 0 , 0);
  124.  
  125.  
  126. CreateObject(970, 1882.99609, -1145.63892, 23.44935, 0.00000, 0.00000, 0.36771);
  127. CreateObject(970, 1878.89697, -1145.59412, 23.44834, 0.00000, 0.00000, 359.35962);
  128. CreateObject(970, 1876.86829, -1147.56030, 23.44834, 0.00000, 0.00000, 90.27680);
  129. CreateObject(970, 1884.76208, -1145.65491, 23.55035, 0.00000, 0.00000, 0.36771);
  130. CreateObject(4638, 1888.61377, -1146.40674, 24.83438, 0.00000, 0.00000, 0.00000);
  131. CreateObject(970, 1876.88062, -1151.71460, 23.44834, 0.00000, 0.00000, 90.27680);
  132.  
  133.  
  134. DRP0 = TextDrawCreate(9.370410, 427.583496, "~g~KOSAC~w~TRAVE");
  135. TextDrawLetterSize(DRP0, 0.242444, 1.506666);
  136. TextDrawAlignment(DRP0, 1);
  137. TextDrawColor(DRP0, -1);
  138. TextDrawSetShadow(DRP0, 0);
  139. TextDrawSetOutline(DRP0, 1);
  140. TextDrawBackgroundColor(DRP0, 51);
  141. TextDrawFont(DRP0, 2);
  142. TextDrawSetProportional(DRP0, 1);
  143.  
  144.  
  145. Kosilica[0] = AddStaticVehicleEx(572,1878.2330, -1147.2213, 23.3851,179.1567, 127, 127, 1000);
  146. Kosilica[1] = AddStaticVehicleEx(572,1880.3384, -1147.2148, 23.3851,180.1096, 127, 127, 1000);
  147. Kosilica[2] = AddStaticVehicleEx(572,1882.4224, -1147.2557, 23.3851,180.8310, 127, 127, 1000);
  148. Kosilica[3] = AddStaticVehicleEx(572,1884.4325, -1147.3085, 23.3851,180.8310, 127, 127, 1000);
  149. return 1;
  150. }
  151.  
  152. //----------------------------------------------------------
  153.  
  154.  
  155. public OnPlayerStateChange(playerid, newstate, oldstate)
  156. {
  157.  
  158. if(VoziloKosaca(GetPlayerVehicleID(playerid)) && PlayerInfo[playerid][pPosao] != 1)
  159. {
  160. SendClientMessage(playerid, -1, "{84BCCF}INFO: {FFFFFF}Niste zaposleni kao kosac trave,Mrs van!");
  161. RemovePlayerFromVehicle(playerid);
  162. }
  163. }
  164.  
  165. CMD:jobhelp(playerid, params[])
  166. {
  167. SendClientMessage(playerid, COLOR_RED, "{84BCCF}[JOB HELP]: {FFFFFF} /uniform | /sumiform | /startjob");
  168.  
  169. return 1;
  170. }
  171.  
  172. CMD:uniform(playerid, params[])
  173. {
  174. if(!(PlayerInfo[playerid][pPosao] >= 1)) return SendClientMessage(playerid, COLOR_RED,"{84BCCF}INFO: {FFFFFF}Vi nemozete koristiti ovu komandu,niste kosac trave!");
  175. if(!IsPlayerInRangeOfPoint(playerid, 2, 1886.4071, -1146.8485, 24.7326)) return SendClientMessage(playerid, COLOR_RED, "{84BCCF}INFO: {FFFFFF}Niste na mjestu za uzimanje opreme za posao kosaca trave .");
  176. if(Oprema[playerid] == 1) return SendClientMessage(playerid, COLOR_RED, "{84BCCF}INFO: {FFFFFF}Vec imate opremu na sebi! (( Da skinete opremu kucajte /suniform ))!");
  177. GetPlayerSkin(playerid);
  178. SetPlayerSkin(playerid, 42);
  179. SendClientMessage(playerid, COLOR_RED, "{84BCCF}INFO: {FFFFFF}Obukli ste uniformu,sada mozete kreniti sa poslom KOSACA!");
  180. Oprema[playerid] = 1;
  181. return 1;
  182. }
  183.  
  184. CMD:suniform(playerid, params[])
  185. {
  186. if(!IsPlayerInRangeOfPoint(playerid, 2, 1886.4071, -1146.8485, 24.7326)) return SendClientMessage(playerid, COLOR_RED, "{84BCCF}INFO: {FFFFFF}Niste na mjestu za uzimanje/skidanje opreme za posao kosaca trave .!");
  187. if(Oprema[playerid] == 0) return SendClientMessage(playerid, COLOR_RED, "{84BCCF}INFO: {FFFFFF} Vi nemate opremu!");
  188. SetPlayerSkin(playerid, 293);
  189. SendClientMessage(playerid, COLOR_RED, "{84BCCF}INFO: {FFFFFF} Skinuli ste opremu za posao.");
  190. Oprema[playerid] = 0;
  191. return 1;
  192. }
  193.  
  194.  
  195. CMD:takejob(playerid, params[])
  196. {
  197.  
  198. if(PlayerInfo[playerid][pPosao] != 0) return SendClientMessage(playerid, -1, "{84BCCF}INFO: {FFFFFF}Vec ste zaposleni kao Kosac trave!");
  199. if(!IsPlayerInRangeOfPoint(playerid, 2, 1888.0514, -1147.8807, 24.5296)) return SendClientMessage(playerid, COLOR_RED, "{FF8000}INFO: {FFFFFF}Nisi na mjestu za posao kosaca trave!");
  200. SendClientMessage(playerid, -1, "{84BCCF}INFO: {FFFFFF}Uspjesno si se zaposlio kao {84BCCF}kosac trave.");
  201. SendClientMessage(playerid, -1, "{84BCCF}INFO: {FFFFFF}Da vidite sve komande posla Kosac trave kucajte /jobhelp");
  202. PlayerInfo[playerid][pPosao] = 1;
  203.  
  204. new string[96];
  205. format(string, sizeof(string), "\n{84BCCF}INFO: {FFFFFF}Uspesno ste se zaposlili kao {84BCCF}Kosac Trave!\n\n\n");
  206. ShowPlayerDialog(playerid, DIALOG_POSAO_ZAPOSLEN, DIALOG_STYLE_MSGBOX, "{84BCCF}Posao Kosac Trave", string, "Ok");
  207.  
  208. return 1;
  209. }
  210.  
  211. CMD:quitjob(playerid, params[])
  212. {
  213. PlayerInfo[playerid][pPosao] = 0;
  214. return 1;
  215. }
  216.  
  217. CMD:startjob(playerid, params[])
  218. {
  219. if(PlayerInfo[playerid][pPosao] != 1) return SendClientMessage(playerid, -1, "GRESKA: Niste zaposleni kao kosac trave!");
  220. if(Oprema[playerid] == 0) return SendClientMessage(playerid, COLOR_RED, "{FF8000}[KOSAC]: {FFFFFF} Vi nemate opremu!");
  221. if(!VoziloKosaca(GetPlayerVehicleID(playerid))) return SendClientMessage(playerid, -1, "{FF8000}[KOSAC]: {FFFFFF} Morate biti u kosilici!");
  222. if(KosacPosao[playerid] == 1) return SendClientMessage(playerid, -1, "{FF8000}[KOSAC]: {FFFFFF} Vec ste zapoceli kosenje trave!");
  223. KosacPosao[playerid] = 1;
  224. TravaTimer[playerid] = SetTimerEx("TimerTrava", 500, true, "i", playerid);
  225. //////////////////// Kreiraj mu objekte ////////////////////////////////
  226. Trava[0][playerid] = CreatePlayerObject(playerid,821, 1908.66748, -1183.56079, 20.87046, 0.00000, 0.00000, 0.00000);//kreiramo objekt za igrača
  227. Trava[1][playerid] = CreatePlayerObject(playerid,821, 1923.24792, -1182.05432, 19.85537, 0.00000, 0.00000, 0.00000);//kreiramo objekt za igrača
  228. Trava[2][playerid] = CreatePlayerObject(playerid,821, 1884.72900, -1171.30200, 22.47716, 0.00000, 0.00000, 0.00000);//kreiramo objekt za igrača
  229. Trava[3][playerid] = CreatePlayerObject(playerid,821, 1873.03149, -1198.99585, 19.89127, 0.00000, 0.00000, 0.00000);//kreiramo objekt za igrača
  230. Trava[4][playerid] = CreatePlayerObject(playerid,821, 1900.64783, -1222.04260, 15.61076, 0.00000, 0.00000, 0.00000);//kreiramo objekt za igrača
  231. Trava[5][playerid] = CreatePlayerObject(playerid,821, 1920.42053, -1218.84888, 17.98026, 0.00000, 0.00000, 1.15910);
  232. Trava[6][playerid] = CreatePlayerObject(playerid,821, 1890.01416, -1243.77710, 12.58360, 0.00000, 0.00000, 0.00000);
  233. Trava[7][playerid] = CreatePlayerObject(playerid,821, 1945.88672, -1228.82397, 18.26256, 0.00000, 0.00000, 0.00000);
  234. Trava[8][playerid] = CreatePlayerObject(playerid,821, 1959.61267, -1244.40356, 18.67745, 0.00000, 0.00000, 0.00000);
  235. Trava[9][playerid] = CreatePlayerObject(playerid,821, 2003.01489, -1223.30603, 19.24441, 0.00000, 0.00000, 0.00000);
  236. Trava[10][playerid] = CreatePlayerObject(playerid,821, 1994.17078, -1242.32458, 19.24441, 0.00000, 0.00000, 0.00000);
  237. Trava[11][playerid] = CreatePlayerObject(playerid,821, 2048.46558, -1244.06897, 22.09180, 0.00000, 0.00000, 0.00000);
  238. Trava[12][playerid] = CreatePlayerObject(playerid,821, 2050.03931, -1226.33813, 22.09180, 0.00000, 0.00000, 0.00000);
  239. Trava[13][playerid] = CreatePlayerObject(playerid,821, 2036.11426, -1202.06763, 20.66650, 0.00000, 0.00000, 0.00000);
  240. Trava[14][playerid] = CreatePlayerObject(playerid,821, 2049.18628, -1176.05688, 21.79180, 0.00000, 0.00000, 0.00000);
  241. Trava[15][playerid] = CreatePlayerObject(playerid,821, 2018.26306, -1190.21240, 19.74308, 0.00000, 0.00000, 0.00000);
  242. Trava[16][playerid] = CreatePlayerObject(playerid,821, 2000.27991, -1169.34619, 19.03198, 0.00000, 0.00000, 0.00000);
  243. return 1;
  244. }
  245.  
  246. ////////////////// TIMERI ////////////////////////////////
  247.  
  248. forward TimerTrava(playerid);
  249. public TimerTrava(playerid)
  250. {
  251. new Float:Pos[3];
  252. new pokoseno = 0;
  253. for(new i = 0; i < sizeof(Trava); i++)
  254. {
  255. GetPlayerObjectPos(playerid, Trava[i][playerid], Pos[0], Pos[1], Pos[2]);
  256. if(IsPlayerInRangeOfPoint(playerid, 3.0, Pos[0], Pos[1], Pos[2]) && VoziloKosaca(GetPlayerVehicleID(playerid)))
  257. {
  258. DestroyPlayerObject(playerid, Trava[i][playerid]);
  259. Trava[i][playerid] = 999;
  260. }
  261. if(Trava[i][playerid] == 999)
  262. {
  263. pokoseno++;
  264. }
  265. }
  266. if(pokoseno == 17)
  267. {
  268. SendClientMessage(playerid, -1, "{FF8000}[KOSAC]: {FFFFFF}Zavrsili ste kosenje trave i zaradili 25$!");//šalje igraču poruku
  269. KosacPosao[playerid] = 0;
  270. KillTimer(TravaTimer[playerid]);
  271. GivePlayerMoney(playerid, 25);
  272. }
  273. }
  274.  
  275. // kraj
Add Comment
Please, Sign In to add comment