rp_bk.pwn 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198
  1. // This is a comment
  2. // uncomment the line below if you want to write a filterscript
  3. //#define FILTERSCRIPT
  4. #include <a_samp>
  5. #define COLOR_RED 0xFF0000FF
  6. new entrance;
  7. new ext;
  8. new water1;
  9. new water2;
  10. new water3;
  11. new water4;
  12. new gate1;
  13. new gate2;
  14. new gate3;
  15. new IsInWash[ MAX_PLAYERS ];
  16. public OnFilterScriptInit()
  17. {
  18. // gates
  19. ext = CreateObject(2885,2446.50000000,-1460.59997559,29.70000076,0.00000000,0.00000000,270.00000000); //gatelaatste
  20. entrance = CreateObject(2885,2499.50000000,-1460.00000000,29.70000076,0.00000000,0.00000000,89.99450684); //gateeerste
  21. gate3 = CreateObject(968,2539.89990234,-1475.59997559,24.39999962,0.00000000,270.00000000,269.99975586); //oranje3open
  22. gate2 = CreateObject(968,2540.10009766,-1459.30004883,24.39999962,0.00000000,90.00000000,269.99636841); //oranje2open
  23. gate1 = CreateObject(968,2523.39990234,-1493.50000000,23.89999962,0.00000000,270.00000000,0.00000000); //oranje1open
  24. // objects
  25. CreateObject(16003,2502.39990234,-1465.59997559,23.89999962,0.00000000,0.00000000,0.00000000); //object(drvin_ticket) (1)
  26. CreateObject(8843,2483.10009766,-1460.90002441,23.10000038,0.00000000,0.00000000,88.00000000); //object(arrows01_lvs) (1)
  27. CreateObject(8041,2540.39990234,-1467.50000000,28.79999924,0.00000000,0.00000000,0.00000000); //object(apbarriergate06_lvs) (1)
  28. CreateObject(7073,2516.50000000,-1474.00000000,41.29999924,0.00000000,0.00000000,0.00000000); //object(vegascowboy1) (1)
  29. CreateObject(18285,2517.80004883,-1461.69995117,23.10000038,0.00000000,0.00000000,10.00000000); //object(cw_trucklines) (1)
  30. CreateObject(966,2523.50000000,-1493.50000000,23.00000000,0.00000000,0.00000000,0.00000000); //object(bar_gatebar01) (1)
  31. CreateObject(8843,2520.10009766,-1484.50000000,23.00000000,0.00000000,0.00000000,0.00000000); //object(arrows01_lvs) (2)
  32. CreateObject(4100,2472.60009766,-1465.19995117,29.29999924,0.00000000,0.00000000,320.00000000); //object(meshfence1_lan) (1)
  33. CreateObject(4100,2474.39990234,-1454.59997559,29.29999924,0.00000000,0.00000000,319.99877930); //object(meshfence1_lan) (2)
  34. CreateObject(7311,2461.50000000,-1460.90002441,25.20000076,0.00000000,0.00000000,0.00000000); //object(vgsn_carwash) (1)
  35. CreateObject(972,2473.60009766,-1465.59997559,26.29999924,4.99996948,270.00000000,272.00000000); //object(tunnelentrance) (1)
  36. CreateObject(972,2473.10009766,-1461.69995117,26.29999924,4.99877930,270.00000000,271.99951172); //object(tunnelentrance) (2)
  37. CreateObject(1337,2504.89990234,-1464.59997559,23.70000076,0.00000000,0.00000000,182.00000000); //object(binnt07_la) (1)
  38. CreateObject(1337,2542.39990234,-1467.80004883,23.70000076,0.00000000,0.00000000,85.99951172); //object(binnt07_la) (2)
  39. CreateObject(1337,2542.39990234,-1467.00000000,23.70000076,0.00000000,0.00000000,85.99548340); //object(binnt07_la) (3)
  40. CreateObject(1676,2525.39990234,-1459.19995117,24.50000000,0.00000000,0.00000000,270.00000000); //object(washgaspump) (1)
  41. CreateObject(1676,2520.19995117,-1459.40002441,24.50000000,0.00000000,0.00000000,269.99951172); //object(washgaspump) (2)
  42. CreateObject(1676,2530.19995117,-1459.40002441,24.50000000,0.00000000,0.00000000,269.99951172); //object(washgaspump) (3)
  43. CreateObject(970,2537.19995117,-1467.40002441,23.60000038,0.00000000,0.00000000,0.00000000); //object(fencesmallb) (1)
  44. CreateObject(970,2526.89990234,-1467.40002441,23.50000000,0.00000000,0.00000000,0.00000000); //object(fencesmallb) (2)
  45. CreateObject(970,2533.09960938,-1467.39941406,23.50000000,0.00000000,0.00000000,0.00000000); //object(fencesmallb) (3)
  46. CreateObject(970,2529.50000000,-1467.39941406,23.50000000,0.00000000,0.00000000,0.00000000); //object(fencesmallb) (4)
  47. CreateObject(970,2518.19995117,-1465.80004883,23.50000000,0.00000000,0.00000000,308.00000000); //object(fencesmallb) (5)
  48. CreateObject(970,2521.50000000,-1467.39941406,23.50000000,0.00000000,0.00000000,0.00000000); //object(fencesmallb) (6)
  49. CreateObject(970,2516.69995117,-1463.90002441,23.50000000,0.00000000,0.00000000,307.99621582); //object(fencesmallb) (7)
  50. CreateObject(970,2515.30004883,-1460.19995117,23.50000000,0.00000000,0.00000000,271.99621582); //object(fencesmallb) (8)
  51. CreateObject(970,2515.19995117,-1456.50000000,23.50000000,0.00000000,0.00000000,271.99401855); //object(fencesmallb) (9)
  52. CreateObject(970,2525.00000000,-1459.30004883,23.50000000,0.00000000,0.00000000,270.00000000); //object(fencesmallb) (10)
  53. CreateObject(970,2519.69995117,-1459.50000000,23.50000000,0.00000000,0.00000000,269.99450684); //object(fencesmallb) (11)
  54. CreateObject(970,2520.79980469,-1459.50000000,23.50000000,0.00000000,0.00000000,269.99450684); //object(fencesmallb) (12)
  55. CreateObject(970,2529.80004883,-1459.19995117,23.50000000,0.00000000,0.00000000,269.99450684); //object(fencesmallb) (13)
  56. CreateObject(970,2525.89941406,-1459.39941406,23.50000000,0.00000000,0.00000000,269.99450684); //object(fencesmallb) (14)
  57. CreateObject(970,2530.80004883,-1459.19995117,23.50000000,0.00000000,0.00000000,269.99450684); //object(fencesmallb) (15)
  58. CreateObject(970,2538.39990234,-1475.50000000,23.60000038,0.00000000,0.00000000,338.00000000); //object(fencesmallb) (16)
  59. CreateObject(970,2530.80004883,-1472.90002441,23.50000000,0.00000000,0.00000000,349.99987793); //object(fencesmallb) (17)
  60. CreateObject(970,2534.69921875,-1474.00000000,23.60000038,0.00000000,0.00000000,337.99987793); //object(fencesmallb) (18)
  61. CreateObject(970,2526.80004883,-1472.50000000,23.50000000,0.00000000,0.00000000,359.99694824); //object(fencesmallb) (19)
  62. CreateObject(970,2524.69995117,-1472.50000000,23.50000000,0.00000000,0.00000000,359.99450684); //object(fencesmallb) (20)
  63. CreateObject(970,2522.60009766,-1474.50000000,23.50000000,0.00000000,0.00000000,89.99450684); //object(fencesmallb) (21)
  64. CreateObject(970,2517.30004883,-1474.19995117,23.60000038,0.00000000,0.00000000,89.99450684); //object(fencesmallb) (22)
  65. CreateObject(970,2515.69995117,-1470.90002441,23.60000038,0.00000000,0.00000000,141.99450684); //object(fencesmallb) (23)
  66. CreateObject(970,2512.80004883,-1468.59997559,23.60000038,0.00000000,0.00000000,141.99276733); //object(fencesmallb) (24)
  67. CreateObject(970,2509.30004883,-1466.50000000,23.60000038,0.00000000,0.00000000,155.99279785); //object(fencesmallb) (25)
  68. CreateObject(970,2505.30004883,-1465.69995117,23.60000038,0.00000000,0.00000000,181.98937988); //object(fencesmallb) (26)
  69. Create3DTextLabel("Type /washcar to wash your car!", 0x008080FF,2502.39990234,-1465.59997559,23.89999962,40.0,0);
  70. return true;
  71. }
  72. public OnFilterScriptExit()
  73. {
  74. return 1;
  75. }
  76. public OnPlayerConnect(playerid)
  77. {
  78. // SendClientMessage(playerid, COLOR_RED, "This server uses the Lux CarWash system by [drifters]niels aka niels44");
  79. SetPlayerMapIcon(playerid, 18,2455.2258,-1461.0040,24.0000, 55, 0, MAPICON_LOCAL);
  80. return 1;
  81. }
  82. public OnPlayerCommandText(playerid, cmdtext[])
  83. {
  84. if( !strcmp( "/washcar", cmdtext, true, 8 ) )
  85. {
  86. if( !IsPlayerInAnyVehicle( playerid ) )
  87. return SendClientMessage( playerid, COLOR_RED, "ERROR: you are not in a Vehicle!" );
  88. if(IsPlayerInRangeOfPoint(playerid, 10.0, 2499.50000000,-1460.00000000,29.70000076))
  89. {
  90. GivePlayerMoney( playerid, -40 );
  91. SendClientMessage( playerid, COLOR_RED, "you have paid $40 to wash your car" );
  92. SendClientMessage( playerid, COLOR_RED, "now drive in the red marker to wash your car" );
  93. MoveObject( entrance, 2496.30004883,-1460.40002441,29.70000076, 1.0, 291.99462891,0.00000000,89.99450684 );
  94. SetTimer( "CloseEntrance", 5000, 0 );
  95. SetPlayerCheckpoint( playerid, 2455.2258, -1461.0040, 24.0000, 3.0 );
  96. return 1;
  97. }
  98. else if(!IsPlayerInRangeOfPoint(playerid, 10.0, 2499.50000000,-1460.00000000,29.70000076)) return SendClientMessage(playerid, COLOR_RED, "ERROR: you are not at a CarWash!");
  99. }
  100. return 0;
  101. }
  102. forward CloseEntrance();
  103. public CloseEntrance()
  104. {
  105. MoveObject( entrance, 2499.50000000, -1460.00000000, 29.70000076, 1.0, 0.00000000, 0.00000000, 89.99450684 );
  106. return 1;
  107. }
  108. public OnPlayerEnterCheckpoint(playerid)
  109. {
  110. water1 = CreateObject(2780,2459.69995117,-1457.30004883,23.10000038,0.00000000,0.00000000,0.00000000); //watersmoke
  111. water2 = CreateObject(2780,2461.00000000,-1464.80004883,23.00000000,0.00000000,0.00000000,186.00000000); //watersmoke
  112. water3 = CreateObject(2780,2452.50000000,-1464.00000000,23.00000000,0.00000000,0.00000000,185.99853516); //watersmoke
  113. water4 = CreateObject(2780,2454.10009766,-1458.30004883,23.00000000,0.00000000,0.00000000,185.99853516); //watersmoke
  114. SendClientMessage(playerid, COLOR_RED, "Please Wait while we wash your car...");
  115. TogglePlayerControllable(playerid, 0);
  116. SetPlayerCameraLookAt(playerid, 2445.7043,-1460.9468,24.0000);
  117. SetPlayerCameraPos(playerid, 2471.6687,-1460.2609,24.0000);
  118. IsInWash[ playerid ] = 1;
  119. SetTimer("OpenExt", 7000, 0);
  120. return 1;
  121. }
  122. forward OpenExt(playerid);
  123. public OpenExt(playerid)
  124. {
  125. if(IsInWash[ playerid ] == 1)
  126. {
  127. MoveObject(ext, 2451.00000000,-1460.59997559,29.70000076, 1.0, 280.00000000,0.00000000,270.00000000);
  128. SetTimer("CloseExt", 13000, 0);
  129. SetPlayerPos(playerid, 2439.4900,-1460.9352,24.0000);
  130. SetPlayerFacingAngle(playerid, 267.6727);
  131. TogglePlayerControllable(playerid, 1);
  132. DisablePlayerCheckpoint(playerid);
  133. SetCameraBehindPlayer(playerid);
  134. DestroyObject(water1);
  135. DestroyObject(water2);
  136. DestroyObject(water3);
  137. DestroyObject(water4);
  138. IsInWash[ playerid ] = 0;
  139. new VehicleID = GetPlayerVehicleID(playerid);
  140. RepairVehicle(VehicleID);
  141. return 1;
  142. }
  143. return 1;
  144. }
  145. forward CloseExt(playerid);
  146. public CloseExt(playerid)
  147. {
  148. MoveObject(ext, 2446.50000000,-1460.59997559,29.70000076, 1.0, 0.00000000,0.00000000,270.00000000);
  149. return 1;
  150. }
  151. public OnPlayerUpdate(playerid)
  152. {
  153. if(IsPlayerInRangeOfPoint(playerid, 10.0, 2523.39990234,-1493.50000000,23.89999962))
  154. {
  155. MoveObject(gate1, 2523.60009766,-1493.50000000,23.89999962, 1.0, 0.00000000,348.00000000,0.00000000);
  156. SetTimer("CloseGate1", 5000, 1);
  157. return 1;
  158. }
  159. if(IsPlayerInRangeOfPoint(playerid, 10.0, 2540.10009766,-1459.30004883,24.39999962))
  160. {
  161. MoveObject(gate2, 2540.10009766,-1459.09997559,24.39999962, 1.0, 0.00000000,8.00000000,269.99645996);
  162. SetTimer("CloseGate2", 5000, 1);
  163. return 1;
  164. }
  165. if(IsPlayerInRangeOfPoint(playerid, 10.0, 2539.89990234,-1475.59997559,24.39999962))
  166. {
  167. MoveObject(gate3, 2539.89990234,-1475.80004883,24.39999962, 1.0, 0.00000000,345.99987793,269.99981689);
  168. SetTimer("CloseGate3", 5000, 1);
  169. return 1;
  170. }
  171. return 1;
  172. }
  173. forward CloseGate3();
  174. public CloseGate3()
  175. {
  176. MoveObject(gate3, 2539.89990234,-1475.59997559,24.39999962, 1.0, 0.00000000,270.00000000,269.99975586);
  177. return 1;
  178. }
  179. forward CloseGate2();
  180. public CloseGate2()
  181. {
  182. MoveObject(gate2, 2540.10009766,-1459.30004883,24.39999962, 1.0 ,0.00000000,90.00000000,269.99636841);
  183. return 1;
  184. }
  185. forward CloseGate1();
  186. public CloseGate1()
  187. {
  188. MoveObject(gate1, 2523.39990234,-1493.50000000,23.89999962, 1.0, 0.00000000,270.00000000,0.00000000);
  189. return 1;
  190. }