Guest User

DMV

a guest
Aug 10th, 2012
4,581
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.42 KB | None | 0 0
  1. /*==============================================================================
  2. DMV filterscript by Wade Martin :D
  3. Dont remove the credits
  4. *===============================================================================
  5. *=============================================================================*/
  6. #define FILTERSCRIPT
  7.  
  8.  
  9. #include <a_samp>
  10. #include <zcmd>
  11.  
  12.  
  13. #if defined FILTERSCRIPT
  14. #define COLOR_LIGHTBLUE 0x07B1FAFF
  15. #define COLOR_GREY 0xAFAFAFAA
  16. #define function%0(%1) forward%0(%1); public%0(%1)
  17. #define GivePlayerCash(%0,%1) SetPVarInt(%0,"Money",GetPlayerCash(%0)+%1),GivePlayerMoney(%0,%1)
  18. #define ResetPlayerCash(%0) SetPVarInt(%0,"Money",0), ResetPlayerMoney(%0)
  19. #define GetPlayerCash(%0) GetPVarInt(%0,"Money")
  20.  
  21. #define SCM SendClientMessage
  22.  
  23. new dmv1;
  24. new dmv2;
  25. new dmv3;
  26. new dmv4;
  27. new dmv5;
  28. new CP[MAX_PLAYERS];
  29. new TakingLesson[MAX_PLAYERS];
  30.  
  31. // all you need to do is edit the filterscript with the saving system you use on your GM and it should save the DriversLic,
  32. //remember to edit the filterscript in order for it to save in your players accounts.
  33. // i use "enum pInfo
  34. // pDriversLic"
  35. //but you will need to add your own save system.
  36.  
  37.  
  38. public OnFilterScriptInit()
  39. {
  40. print("\n--------------------------------------");
  41. print(" DMV by Sexc(Wade Martin):p");
  42. print("--------------------------------------\n");
  43. new playerid;
  44. SetPlayerMapIcon(playerid, 1, 2059.206787,-1903.883056,13.243336, 36, 1);
  45.  
  46. dmv1 = AddStaticVehicle(405,2052.531494,-1903.692016,13.243583,1,1,15);
  47. dmv2 = AddStaticVehicle(405,2055.949951,-1903.704101,13.243331,1,1,15);
  48. dmv3 = AddStaticVehicle(405,2059.206787,-1903.883056,13.243336,1,1,15);
  49. dmv4 = AddStaticVehicle(405,2062.361328,-1903.624877,13.243142,1,1,15);
  50. dmv5 = AddStaticVehicle(405,2065.629150,-1903.980712,13.243326,1,1,15);
  51.  
  52. return 1;
  53. }
  54.  
  55. public OnPlayerStateChange(playerid, newstate, oldstate)
  56. {
  57. if(newstate == PLAYER_STATE_DRIVER)
  58. {
  59. new car = GetPlayerVehicleID(playerid);
  60. if(car == dmv1 || car == dmv2 || car == dmv3 || car == dmv4 || car == dmv5)
  61. {
  62. SCM(playerid, COLOR_LIGHTBLUE,"Type /driverslic to start the Drivers License test");
  63. }
  64. }
  65. return 1;
  66. }
  67.  
  68. public OnPlayerEnterCheckpoint(playerid)
  69. {
  70. if(CP[playerid]==200)
  71. {
  72.  
  73. if(IsPlayerInVehicle(playerid, dmv1) || IsPlayerInVehicle(playerid, dmv2) || IsPlayerInVehicle(playerid, dmv3) || IsPlayerInVehicle(playerid, dmv4) || IsPlayerInVehicle(playerid, dmv5))
  74. {
  75. DisablePlayerCheckpoint(playerid);
  76. CP[playerid] = 201;
  77. SetPlayerCheckpoint(playerid, 2073.780029,-1912.620361,13.244957, 5.0);
  78. }
  79. else
  80. {
  81. SendClientMessage(playerid, COLOR_LIGHTBLUE,"DMV: You are not in the car!");
  82. SendClientMessage(playerid, COLOR_LIGHTBLUE,"DMV: You didn't passed the test, please try again!");
  83. DisablePlayerCheckpoint(playerid);
  84. RemovePlayerFromVehicle(playerid);
  85. SetVehicleToRespawn(GetPlayerVehicleID(playerid));
  86. TakingLesson[playerid] = 0;
  87. }
  88. }
  89. else if(CP[playerid]==201)
  90. {
  91. DisablePlayerCheckpoint(playerid);
  92. CP[playerid] = 202;
  93. SetPlayerCheckpoint(playerid, 2079.123291,-1871.586303,13.048537, 5.0);
  94. }
  95. else if(CP[playerid]==202)
  96. {
  97. DisablePlayerCheckpoint(playerid);
  98. CP[playerid] = 203;
  99. SetPlayerCheckpoint(playerid, 2079.742431,-1802.388427,13.081876, 5.0);
  100. }
  101. else if(CP[playerid]==203)
  102. {
  103. DisablePlayerCheckpoint(playerid);
  104. CP[playerid] = 204;
  105. SetPlayerCheckpoint(playerid, 2087.171142,-1763.789306,13.093797, 5.0);
  106. }
  107. else if(CP[playerid]==204)
  108. {
  109. DisablePlayerCheckpoint(playerid);
  110. CP[playerid] = 205;
  111. SetPlayerCheckpoint(playerid,2107.624023,-1750.020996,13.089978, 5.0);
  112. }
  113. else if(CP[playerid]==205)
  114. {
  115. DisablePlayerCheckpoint(playerid);
  116. CP[playerid] = 206;
  117. SetPlayerCheckpoint(playerid, 2152.177490,-1750.022827,13.082652, 5.0);
  118. }
  119. else if(CP[playerid]==206)
  120. {
  121. DisablePlayerCheckpoint(playerid);
  122. CP[playerid] = 207;
  123. SetPlayerCheckpoint(playerid, 2182.246826,-1718.454956,13.037333, 5.0);
  124. }
  125. else if(CP[playerid]==207)
  126. {
  127. DisablePlayerCheckpoint(playerid);
  128. CP[playerid] = 208;
  129. SetPlayerCheckpoint(playerid, 2196.131347,-1639.325927,15.037650, 5.0);
  130. }
  131. else if(CP[playerid]==208)
  132. {
  133. DisablePlayerCheckpoint(playerid);
  134. CP[playerid] = 209;
  135. SetPlayerCheckpoint(playerid, 2210.470458,-1516.888671,23.5245725, 5.0);
  136. }
  137. else if(CP[playerid]==209)
  138. {
  139. DisablePlayerCheckpoint(playerid);
  140. CP[playerid] = 210;
  141. SetPlayerCheckpoint(playerid, 2210.367919,-1396.513427,23.513124, 5.0);
  142. }
  143. else if(CP[playerid]==210)
  144. {
  145. DisablePlayerCheckpoint(playerid);
  146. CP[playerid] = 211;
  147. SetPlayerCheckpoint(playerid, 2189.148681,-1387.298950,23.506103, 5.0);
  148. }
  149. else if(CP[playerid]==211)
  150. {
  151. DisablePlayerCheckpoint(playerid);
  152. CP[playerid] = 212;
  153. SetPlayerCheckpoint(playerid,2125.980468,-1386.713378,23.509986, 5.0);
  154. }
  155. else if(CP[playerid]==212)
  156. {
  157. DisablePlayerCheckpoint(playerid);
  158. CP[playerid] = 213;
  159. SetPlayerCheckpoint(playerid, 2115.220947,-1404.61699,23.521949, 5.0);
  160. }
  161. else if(CP[playerid]==213)
  162. {
  163. DisablePlayerCheckpoint(playerid);
  164. CP[playerid] = 214;
  165. SetPlayerCheckpoint(playerid, 2115.123779,-1505.220458,23.473100, 5.0);
  166. }
  167. else if(CP[playerid]==214)
  168. {
  169. DisablePlayerCheckpoint(playerid);
  170. CP[playerid] = 215;
  171. SetPlayerCheckpoint(playerid,2114.831298,-1676.845214,13.123315, 5.0);
  172. }
  173. else if(CP[playerid]==215)
  174. {
  175. DisablePlayerCheckpoint(playerid);
  176. CP[playerid] = 217;
  177. SetPlayerCheckpoint(playerid, 2098.753906,-1739.837768,13.085525, 5.0);
  178. }
  179. else if(CP[playerid]==217)
  180. {
  181. DisablePlayerCheckpoint(playerid);
  182. CP[playerid] = 218;
  183. SetPlayerCheckpoint(playerid,2084.242431,-1822.566650,13.074979 , 5.0);
  184. }
  185. else if(CP[playerid]==218)
  186. {
  187. DisablePlayerCheckpoint(playerid);
  188. CP[playerid] = 219;
  189. SetPlayerCheckpoint(playerid, 2084.016845,-1890.064941,13.066734, 5.0);
  190. }
  191. else if(CP[playerid]==219)
  192. {
  193. new pName[24];
  194. new str[128];
  195. GetPlayerName(playerid, pName, 24);
  196. pName[strfind(pName,"_")] = ' ';
  197. GivePlayerCash(playerid, -500);
  198. format(str, 128,"DMV: Congratulations %s! You passed the test.", pName);
  199. SendClientMessage(playerid, COLOR_LIGHTBLUE, str);
  200. RemovePlayerFromVehicle(playerid);
  201. SetVehicleToRespawn(GetPlayerVehicleID(playerid));
  202. TakingLesson[playerid] = 0;
  203. //PlayerInfo[playerid][pDriveLic] = 1;
  204. DisablePlayerCheckpoint(playerid);
  205. }
  206. else
  207. {
  208. DisablePlayerCheckpoint(playerid);
  209. }
  210. return 1;
  211. }
  212. public OnFilterScriptExit()
  213. {
  214. return 1;
  215. }
  216.  
  217. #else
  218.  
  219.  
  220. main()
  221. {
  222. print("\n----------------------------------");
  223. print(" ITS A FILTERSCRIPT");
  224. print("----------------------------------\n");
  225. }
  226.  
  227. #endif
  228.  
  229. CMD:driverslic(playerid, params[])
  230. {
  231. //if(PlayerInfo[playerid][pDriveLic] == 1) return SCM(playerid, COLOR_GREY,"You already have Driving License!");
  232. if(IsPlayerInVehicle(playerid, dmv1) || IsPlayerInVehicle(playerid, dmv2) || IsPlayerInVehicle(playerid,dmv3) || IsPlayerInVehicle(playerid,dmv4) || IsPlayerInVehicle(playerid,dmv5))
  233. {
  234. TogglePlayerControllable(playerid, 1);
  235. CP[playerid] = 200;
  236. SetPlayerCheckpoint(playerid, 2073.780029,-1912.620361,13.244957, 4.0);
  237. TakingLesson[playerid] = 1;
  238. SendClientMessage(playerid, COLOR_LIGHTBLUE, "Driver Instructor says: Please follow the checkpoints and drive safety");
  239. }
  240. else return SCM(playerid, COLOR_GREY,"You are not in a DMV car");
  241. return 1;
  242. }
Advertisement
Add Comment
Please, Sign In to add comment