Advertisement
Guest User

Untitled

a guest
Aug 20th, 2017
348
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.00 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("Начать работу: {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),"Вы отобрали %i испорченных кусков. Ваш заработок: $%i",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,"Переодевалка","{ffffff}Вы действительно хотите начать работу на конвеере?","Далее","Назад");
  71. else ShowPlayerDialog(playerid,D_WORK,DIALOG_STYLE_MSGBOX,"Переодевалка","{ffffff}Вы действительно хотите закончить работу на конвеере?","Далее","Назад");
  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. public OnDynamicObjectMoved(objectid)
  116. {
  117. new playerid = Streamer_GetIntData(STREAMER_TYPE_OBJECT,objectid,E_STREAMER_EXTRA_ID);
  118. if(playerid != INVALID_PLAYER_ID)
  119. {
  120. new Float:x,Float:y,Float:z;
  121. GetDynamicObjectPos(objectid,x,y,z);
  122. if(GetPVarInt(playerid,"MeatCheck"))
  123. {
  124. if(x == 944.204345)
  125. {
  126. DestroyDynamicObject(objectid);
  127. GoObject(playerid);
  128. DeletePVar(playerid,"MeatCheck");
  129. GameTextForPlayer(playerid,"~g~GOOD JOB",500,5);
  130. SetPVarInt(playerid,"BadMeatDel",GetPVarInt(playerid,"BadMeatDel")+1);
  131. }
  132. }
  133. else
  134. {
  135. if(y == 2123.890380)
  136. {
  137. if(GetPVarInt(playerid,"BadMeat")) GameTextForPlayer(playerid,"~r~BAD JOB",500,5);
  138. else GameTextForPlayer(playerid,"~g~GOOD JOB",500,5);
  139. DestroyDynamicObject(objectid);
  140. GoObject(playerid);
  141.  
  142. }
  143. }
  144. }
  145. return 1;
  146. }
  147. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  148. {
  149. if(newkeys & KEY_CTRL_BACK && !GetPVarInt(playerid,"InWork") && GetPVarInt(playerid,"OnWork"))
  150. {
  151. if(IsPlayerInRangeOfPoint(playerid,2.0,940.8611,2122.4094,1011.0303))
  152. {
  153. ShowPlayerDialog(playerid,D_WORK_INFO,DIALOG_STYLE_MSGBOX,"Инфромация","{ffffff}Сейчас Вам предстоит отбирать мясо.\nЗеленое мясо - это испорченное.\nКак оно будет на красном квадрате нажимайте {f7ae11}Y{ffffff}\nДля завершения работы нажимате {f7ae11}N","Далее","");
  154. }
  155. }
  156. if(newkeys & KEY_NO && !GetPVarInt(playerid,"MeatCheck"))
  157. {
  158. if(IsValidDynamicObject(playerobject[playerid][0])) DestroyDynamicObject(playerobject[playerid][0]);
  159. else if(IsValidDynamicObject(playerobject[playerid][1])) DestroyDynamicObject(playerobject[playerid][1]);
  160. SetPlayerVirtualWorld(playerid,0);
  161. TogglePlayerControllable(playerid, 1);
  162. SetCameraBehindPlayer(playerid);
  163. DeletePVar(playerid,"InWork");
  164. }
  165. if(newkeys & KEY_YES && !GetPVarInt(playerid,"MeatCheck"))
  166. {
  167. if(GetPVarInt(playerid,"BadMeat"))
  168. {
  169. new Float:x,Float:y,Float:z;
  170. GetDynamicObjectPos(playerobject[playerid][0],x,y,z);
  171. if(floatround(y) == 2127)
  172. {
  173. StopDynamicObject(playerobject[playerid][0]);
  174. MoveDynamicObject(playerobject[playerid][0],944.204345, y, z,2);
  175. SetPVarInt(playerid,"MeatCheck",1);
  176.  
  177. }
  178. else
  179. {
  180. DestroyDynamicObject(playerobject[playerid][0]);
  181. GoObject(playerid);
  182. GameTextForPlayer(playerid,"~r~BAD JOB",500,5);
  183. }
  184.  
  185. }
  186. else GameTextForPlayer(playerid,"~r~BAD JOB",500,5);
  187. }
  188. return 1;
  189. }
  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,"Вы начали работу на конвейере. Направляйтесь к конвейеру!");
  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),"Вы отобрали %i испорченных кусков. Ваш заработок: $%i",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.3492, 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