Advertisement
Guest User

Untitled

a guest
Aug 20th, 2017
1,167
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.56 KB | None | 0 0
  1.  
  2.  
  3. #include <a_samp>
  4. #include <streamer>
  5.  
  6. new playerobject[MAX_PLAYERS][2];
  7. new meatsp;
  8. new vhod[2];
  9. enum
  10. {
  11. D_WORK,
  12. D_WORK_INFO
  13. };
  14.  
  15. public OnFilterScriptInit()
  16. {
  17. new tmpobjid = CreateDynamicObject(1439, 944.436828, 2127.660644, 1010.021179, 0.000000, 0.000000, -90.000000, -1, -1, -1, 300.00, 300.00);
  18. SetDynamicObjectMaterial(tmpobjid, 0, 2803, "cj_meaty", "CJ_FLESH_2", 0x00000000);
  19. CreatePickup(1275, 23, 960.7062,2099.4375,1011.0248,0);
  20. meatsp = CreateDynamicSphere(960.7062,2099.4375,1011.0248, 2.0);
  21. vhod[0] = CreatePickup(1318, 23, 1374.1469,405.0240,19.9555,0);
  22. vhod[1] = CreatePickup(1318, 23, 965.3796,2107.9758,1011.0303,0);
  23. CreateDynamic3DTextLabel("Start Work: {f7ae11}H",0xFFFFFFFF,940.8611,2122.4094,1011.0303,5.0,INVALID_PLAYER_ID,INVALID_VEHICLE_ID,0, 0);
  24. print("JOB BY BATKA1337 LOADED");
  25. return 1;
  26. }
  27. public OnPlayerPickUpPickup(playerid, pickupid)
  28. {
  29. if(pickupid == vhod[0])
  30. {
  31. SetPlayerPos(playerid,962.1105,2107.3452,1011.0303);
  32. SetPlayerFacingAngle(playerid,91.9221);
  33. SetPlayerInterior(playerid,1);
  34. }
  35. if(pickupid == vhod[1])
  36. {
  37. SetPlayerPos(playerid,1371.3191,406.1893,19.7578);
  38. SetPlayerFacingAngle(playerid,69.9652);
  39. SetPlayerInterior(playerid,0);
  40. if(GetPVarInt(playerid,"OnWork"))
  41. {
  42. if(IsValidDynamicObject(playerobject[playerid][0])) DestroyDynamicObject(playerobject[playerid][0]);
  43. else if(IsValidDynamicObject(playerobject[playerid][1])) DestroyDynamicObject(playerobject[playerid][1]);
  44. SetPlayerSkin(playerid,GetPVarInt(playerid,"OldSkin"));
  45. new str[144];
  46. format(str,sizeof(str),"You threw out %d spoiled pieces. Salary: $%d",GetPVarInt(playerid,"BadMeatDel"),GetPVarInt(playerid,"BadMeatDel")*30);
  47. SendClientMessage(playerid,-1,str);
  48. GivePlayerMoney(playerid,GetPVarInt(playerid,"BadMeatDel")*30);
  49. DeletePVar(playerid,"MeatCheck");
  50. DeletePVar(playerid,"InWork");
  51. DeletePVar(playerid,"MeatCheck");
  52. DeletePVar(playerid,"BadMeatDel");
  53. DeletePVar(playerid,"BadMeat");
  54. DeletePVar(playerid,"OldSkin");
  55. DeletePVar(playerid,"OnWork");
  56. }
  57. }
  58. return 1;
  59. }
  60.  
  61. public OnPlayerEnterCheckpoint(playerid)
  62. {
  63. if(GetPVarInt(playerid,"OnWork")) DisablePlayerCheckpoint(playerid);
  64. return 1;
  65. }
  66. public OnPlayerEnterDynamicArea(playerid, areaid)
  67. {
  68. if(areaid == meatsp)
  69. {
  70. if(!GetPVarInt(playerid,"OnWork")) ShowPlayerDialog(playerid,D_WORK,DIALOG_STYLE_MSGBOX,"Work","{ffffff}Do you want to start working on the Assembly line?","Далее","Назад");
  71. else ShowPlayerDialog(playerid,D_WORK,DIALOG_STYLE_MSGBOX,"Work","{ffffff}Do you want to finish working on the Assembly line?","Далее","Назад");
  72. }
  73. return 1;
  74. }
  75.  
  76.  
  77. public OnPlayerDisconnect(playerid, reason)
  78. {
  79. if(GetPVarInt(playerid,"InWork"))
  80. {
  81. if(IsValidDynamicObject(playerobject[playerid][0])) DestroyDynamicObject(playerobject[playerid][0]);
  82. else if(IsValidDynamicObject(playerobject[playerid][1])) DestroyDynamicObject(playerobject[playerid][1]);
  83. }
  84. return 1;
  85. }
  86.  
  87. public OnPlayerSpawn(playerid)
  88. {
  89. if(GetPVarInt(playerid,"InWork"))
  90. {
  91. if(IsValidDynamicObject(playerobject[playerid][0])) DestroyDynamicObject(playerobject[playerid][0]);
  92. else if(IsValidDynamicObject(playerobject[playerid][1])) DestroyDynamicObject(playerobject[playerid][1]);
  93. DeletePVar(playerid,"InWork");
  94. }
  95. return 1;
  96. }
  97.  
  98.  
  99. stock GoObject(playerid)
  100. {
  101. playerobject[playerid][0] = CreateDynamicObject(2806, 942.3492, 2131.815185, 1011.226501, 0.000000, 0.000000, 0.000000, playerid+1, -1, -1, 300.00, 300.00);
  102. if(random(2))
  103. {
  104. SetPVarInt(playerid,"BadMeat",1);
  105. SetDynamicObjectMaterial(playerobject[playerid][0], 0, 5421, "laesmokecnthus", "greenwall4", 0x00000000);
  106. }
  107. else DeletePVar(playerid,"BadMeat");
  108. MoveDynamicObject(playerobject[playerid][0],942.3492, 2123.890380, 1011.226501,2);
  109. Streamer_SetIntData(STREAMER_TYPE_OBJECT,playerobject[playerid][0],E_STREAMER_EXTRA_ID,playerid);
  110. Streamer_Update(playerid);
  111.  
  112. return 1;
  113. }
  114.  
  115.  
  116. public OnDynamicObjectMoved(objectid)
  117. {
  118. new playerid = Streamer_GetIntData(STREAMER_TYPE_OBJECT,objectid,E_STREAMER_EXTRA_ID);
  119. if(playerid != INVALID_PLAYER_ID)
  120. {
  121. new Float:x,Float:y,Float:z;
  122. GetDynamicObjectPos(objectid,x,y,z);
  123. if(GetPVarInt(playerid,"MeatCheck"))
  124. {
  125. if(x == 944.204345)
  126. {
  127. DestroyDynamicObject(objectid);
  128. GoObject(playerid);
  129. DeletePVar(playerid,"MeatCheck");
  130. GameTextForPlayer(playerid,"~g~GOOD JOB",500,5);
  131. SetPVarInt(playerid,"BadMeatDel",GetPVarInt(playerid,"BadMeatDel")+1);
  132. }
  133. }
  134. else
  135. {
  136. if(y == 2123.890380)
  137. {
  138. if(GetPVarInt(playerid,"BadMeat")) GameTextForPlayer(playerid,"~r~BAD JOB",500,5);
  139. else GameTextForPlayer(playerid,"~g~GOOD JOB",500,5);
  140. DestroyDynamicObject(objectid);
  141. GoObject(playerid);
  142.  
  143. }
  144. }
  145. }
  146. return 1;
  147. }
  148. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  149. {
  150. if(newkeys & KEY_CTRL_BACK && !GetPVarInt(playerid,"InWork") && GetPVarInt(playerid,"OnWork"))
  151. {
  152. if(IsPlayerInRangeOfPoint(playerid,2.0,940.8611,2122.4094,1011.0303))
  153. {
  154. ShowPlayerDialog(playerid,D_WORK_INFO,DIALOG_STYLE_MSGBOX,"Information","{ffffff}Now You have to select the meat.\nGreen meat is spoiled.\nAs it will be a red square press the {f7ae11}Y{ffffff}\n To end the operation, press {f7ae11}N","Далее","");
  155. }
  156. }
  157. if(newkeys & KEY_NO && !GetPVarInt(playerid,"MeatCheck"))
  158. {
  159. if(IsValidDynamicObject(playerobject[playerid][0])) DestroyDynamicObject(playerobject[playerid][0]);
  160. else if(IsValidDynamicObject(playerobject[playerid][1])) DestroyDynamicObject(playerobject[playerid][1]);
  161. SetPlayerVirtualWorld(playerid,0);
  162. TogglePlayerControllable(playerid, 1);
  163. SetCameraBehindPlayer(playerid);
  164. DeletePVar(playerid,"InWork");
  165. }
  166. if(newkeys & KEY_YES && !GetPVarInt(playerid,"MeatCheck"))
  167. {
  168. if(GetPVarInt(playerid,"BadMeat"))
  169. {
  170. new Float:x,Float:y,Float:z;
  171. GetDynamicObjectPos(playerobject[playerid][0],x,y,z);
  172. if(floatround(y) == 2127)
  173. {
  174. StopDynamicObject(playerobject[playerid][0]);
  175. MoveDynamicObject(playerobject[playerid][0],944.204345, y, z,2);
  176. SetPVarInt(playerid,"MeatCheck",1);
  177.  
  178. }
  179. else
  180. {
  181. DestroyDynamicObject(playerobject[playerid][0]);
  182. GoObject(playerid);
  183. GameTextForPlayer(playerid,"~r~BAD JOB",500,5);
  184. }
  185.  
  186. }
  187. else GameTextForPlayer(playerid,"~r~BAD JOB",500,5);
  188. }
  189. return 1;
  190. }
  191.  
  192.  
  193. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  194. {
  195. switch(dialogid)
  196. {
  197. case D_WORK:
  198. {
  199. if(!GetPVarInt(playerid,"OnWork"))
  200. {
  201. SendClientMessage(playerid,-1,"You started working on the Assembly line Go to the Assembly line!");
  202. SetPVarInt(playerid,"OnWork",1);
  203. SetPVarInt(playerid,"OldSkin",GetPlayerSkin(playerid));
  204. SetPlayerCheckpoint(playerid, 940.8611,2122.4094,1011.0303, 1.0);
  205. SetPlayerSkin(playerid,168);
  206.  
  207. }
  208. else
  209. {
  210. if(IsValidDynamicObject(playerobject[playerid][0])) DestroyDynamicObject(playerobject[playerid][0]);
  211. else if(IsValidDynamicObject(playerobject[playerid][1])) DestroyDynamicObject(playerobject[playerid][1]);
  212. SetPlayerSkin(playerid,GetPVarInt(playerid,"OldSkin"));
  213. new str[144];
  214. format(str,sizeof(str),"You threw out %d spoiled pieces. Salary: $%d",GetPVarInt(playerid,"BadMeatDel"),GetPVarInt(playerid,"BadMeatDel")*30);
  215. SendClientMessage(playerid,-1,str);
  216. GivePlayerMoney(playerid,GetPVarInt(playerid,"BadMeatDel")*30);
  217. DeletePVar(playerid,"MeatCheck");
  218. DeletePVar(playerid,"InWork");
  219. DeletePVar(playerid,"MeatCheck");
  220. DeletePVar(playerid,"BadMeatDel");
  221. DeletePVar(playerid,"BadMeat");
  222. DeletePVar(playerid,"OldSkin");
  223. DeletePVar(playerid,"OnWork");
  224. }
  225. }
  226. case D_WORK_INFO:
  227. {
  228. SetPVarInt(playerid,"InWork",1);
  229. SetPlayerInterior(playerid,1);
  230. SetPlayerVirtualWorld(playerid,playerid+1);
  231. SetPlayerPos(playerid,940.8642,2122.3950,1011.0303);
  232. SetPlayerCameraPos(playerid,942.328796,2125.278076,1015.023559);
  233. SetPlayerCameraLookAt(playerid,942.355163,2125.811279,1014.177917);
  234. GoObject(playerid);
  235. playerobject[playerid][1] = CreateDynamicObject(1271, 942.249206, 2127.549072, 1010.819091, 0.000000, 0.000000, 0.000000, playerid+1, -1, -1, 300.00, 300.00);
  236. SetDynamicObjectMaterial(playerobject[playerid][1], 0, 2702, "pick_up", "CJ_red_FELT", 0x00000000);
  237. TogglePlayerControllable(playerid, 0);
  238. }
  239. }
  240. return 1;
  241. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement