Advertisement
Guest User

Full Vehicle Control

a guest
Nov 29th, 2010
1,190
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 41.76 KB | None | 0 0
  1. #include <a_samp>
  2. #include <zcmd>
  3.  
  4. #define PARKED 0
  5. #define DRIVE 1
  6.  
  7. #define SLOT 1 //By default uses slot 1, change it if you need slot 1 for other thing.
  8.  
  9. #define MSGCASH_COLOR 0x44cc22ff
  10. #define MSGSUCC_COLOR 0x55ffaaff
  11. #define MSGFAIL_COLOR 0xff55aaff
  12. #define MSGCOMM_COLOR 0x55aaffff
  13. #define MSGINFO_COLOR 0xccff99ff
  14. #define MSGDBUG_COLOR 0xaa5555ff
  15. #define MSGCMDS_COLOR 0xafafafff
  16. #define MSGTITL_COLOR 0xcfcfcfff
  17.  
  18. enum VehicleInf
  19. {
  20. pDriver,
  21. pPassenger,
  22. BeltOn,
  23. MPH,
  24. KMH,
  25. pSeat,
  26. pVehID,
  27. pStick,
  28. VehFroze,
  29. Engine,
  30. Alarm,
  31. Doors,
  32. };
  33. new VehicleInfo[MAX_PLAYERS][VehicleInf];
  34. new PlayerText3D:SeatBelt;
  35. new LightPwr[MAX_VEHICLES];
  36. new Flasher[MAX_VEHICLES];
  37. new FlasherState[MAX_VEHICLES];
  38. new FlashTimer;
  39.  
  40. new Float:HelmetPos[][6] =
  41. {
  42. {0.070000, 0.000000, 0.000000, 88.000000, 75.000000, 0.000000}, //skin 0
  43. {0.070000, 0.000000, 0.000000, 88.000000, 77.000000, 0.000000}, //skin 1
  44. {0.070000, 0.000000, 0.000000, 88.000000, 77.000000, 0.000000}, //skin 2
  45. {0.070000, 0.000000, 0.000000, 88.000000, 77.000000, 0.000000}, //skin 3
  46. {0.070000, 0.000000, 0.000000, 88.000000, 77.000000, 0.000000}, //skin 4
  47. {0.070000, 0.000000, 0.000000, 88.000000, 77.000000, 0.000000}, //skin 5
  48. {0.070000, 0.000000, 0.000000, 88.000000, 77.000000, 0.000000}, //skin 6
  49. {0.090000, 0.019999, 0.000000, 88.000000, 90.000000, 0.000000}, //skin 7
  50. {0.070000, 0.000000, 0.000000, 88.000000, 77.000000, 0.000000}, //skin 8
  51. {0.059999, 0.019999, 0.000000, 88.000000, 90.000000, 0.000000}, //skin 9
  52. {0.090000, 0.019999, 0.000000, 88.000000, 90.000000, 0.000000}, //skin 10
  53. {0.070000, 0.019999, 0.000000, 88.000000, 90.000000, 0.000000}, //skin 11
  54. {0.070000, 0.019999, 0.000000, 88.000000, 90.000000, 0.000000}, //skin 12
  55. {0.070000, 0.019999, 0.000000, 88.000000, 90.000000, 0.000000}, //skin 13
  56. {0.070000, 0.000000, 0.000000, 88.000000, 77.000000, 0.000000}, //skin 14
  57. {0.059999, 0.000000, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 15
  58. {0.070000, 0.000000, 0.000000, 88.000000, 77.000000, 0.000000}, //skin 16
  59. {0.059999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 17
  60. {0.059999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 18
  61. {0.059999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 19
  62. {0.059999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 20
  63. {0.059999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 21
  64. {0.070000, 0.000000, 0.000000, 88.000000, 77.000000, 0.000000}, //skin 22
  65. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 23
  66. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 24
  67. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 25
  68. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 26
  69. {0.070000, 0.000000, 0.000000, 88.000000, 77.000000, 0.000000}, //skin 27
  70. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 28
  71. {0.070000, 0.000000, 0.000000, 88.000000, 77.000000, 0.000000}, //skin 29
  72. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 30
  73. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 31
  74. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 32
  75. {0.070000, 0.000000, 0.000000, 88.000000, 77.000000, 0.000000}, //skin 33
  76. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 34
  77. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 35
  78. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 36
  79. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 37
  80. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 38
  81. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 39
  82. {0.050000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 40
  83. {0.070000, 0.000000, 0.000000, 88.000000, 77.000000, 0.000000}, //skin 41
  84. {0.070000, 0.000000, 0.000000, 88.000000, 77.000000, 0.000000}, //skin 42
  85. {0.070000, 0.000000, 0.000000, 88.000000, 77.000000, 0.000000}, //skin 43
  86. {0.070000, 0.000000, 0.000000, 88.000000, 77.000000, 0.000000}, //skin 44
  87. {0.070000, 0.000000, 0.000000, 88.000000, 77.000000, 0.000000}, //skin 45
  88. {0.070000, 0.000000, 0.000000, 88.000000, 77.000000, 0.000000}, //skin 46
  89. {0.070000, 0.000000, 0.000000, 88.000000, 77.000000, 0.000000}, //skin 47
  90. {0.070000, 0.000000, 0.000000, 88.000000, 77.000000, 0.000000}, //skin 48
  91. {0.070000, 0.000000, 0.000000, 88.000000, 77.000000, 0.000000}, //skin 49
  92. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 50
  93. {0.100000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 51
  94. {0.100000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 52
  95. {0.100000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 53
  96. {0.100000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 54
  97. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 55
  98. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 56
  99. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 57
  100. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 58
  101. {0.079999, 0.029999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 59
  102. {0.079999, 0.029999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 60
  103. {0.079999, 0.029999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 61
  104. {0.079999, 0.029999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 62
  105. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 63
  106. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 64
  107. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 66
  108. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 67
  109. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 68
  110. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 69
  111. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 70
  112. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 71
  113. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 72
  114. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 73
  115. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 75
  116. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 76
  117. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 78
  118. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 79
  119. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 80
  120. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 81
  121. {0.070000, 0.000000, 0.000000, 88.000000, 77.000000, 0.000000}, //skin 82
  122. {0.070000, 0.000000, 0.000000, 88.000000, 77.000000, 0.000000}, //skin 83
  123. {0.070000, 0.000000, 0.000000, 88.000000, 77.000000, 0.000000}, //skin 84
  124. {0.070000, 0.039999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 85
  125. {0.070000, 0.000000, 0.000000, 88.000000, 77.000000, 0.000000}, //skin 86
  126. {0.070000, 0.000000, 0.000000, 88.000000, 77.000000, 0.000000}, //skin 87
  127. {0.070000, 0.039999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 88
  128. {0.070000, 0.039999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 89
  129. {0.050000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 90
  130. {0.050000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 91
  131. {0.050000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 92
  132. {0.050000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 93
  133. {0.050000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 94
  134. {0.050000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 95
  135. {0.050000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 96
  136. {0.050000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 97
  137. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 98
  138. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 99
  139. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 100
  140. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 101
  141. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 102
  142. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 103
  143. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 104
  144. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 105
  145. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 106
  146. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 107
  147. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 108
  148. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 109
  149. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 110
  150. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 111
  151. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 112
  152. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 113
  153. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 114
  154. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 115
  155. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 116
  156. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 117
  157. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 118
  158. {0.070000, 0.000000, 0.000000, 88.000000, 77.000000, 0.000000}, //skin 119
  159. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 120
  160. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 121
  161. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 122
  162. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 123
  163. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 124
  164. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 125
  165. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 126
  166. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 127
  167. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 128
  168. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 129
  169. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 130
  170. {0.079999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 131
  171. {0.000000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 132
  172. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 133
  173. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 134
  174. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 135
  175. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 136
  176. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 137
  177. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 138
  178. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 139
  179. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 140
  180. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 141
  181. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 142
  182. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 143
  183. {0.090000, 0.000000, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 144
  184. {0.090000, 0.000000, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 145
  185. {0.090000, 0.000000, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 146
  186. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 147
  187. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 148
  188. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 150
  189. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 151
  190. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 152
  191. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 153
  192. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 154
  193. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 155
  194. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 156
  195. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 157
  196. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 158
  197. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 159
  198. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 160
  199. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 161
  200. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 162
  201. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 163
  202. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 164
  203. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 165
  204. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 166
  205. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 167
  206. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 168
  207. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 169
  208. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 170
  209. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 171
  210. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 172
  211. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 173
  212. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 174
  213. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 175
  214. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 176
  215. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 177
  216. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 178
  217. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 179
  218. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 180
  219. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 181
  220. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 182
  221. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 183
  222. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 184
  223. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 185
  224. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 186
  225. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 187
  226. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 188
  227. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 189
  228. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 190
  229. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 191
  230. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 192
  231. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 193
  232. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 194
  233. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 195
  234. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 196
  235. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 197
  236. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 198
  237. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 199
  238. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 200
  239. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 201
  240. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 202
  241. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 203
  242. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 204
  243. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 205
  244. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 206
  245. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 207
  246. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 209
  247. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 210
  248. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 211
  249. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 212
  250. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 213
  251. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 214
  252. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 215
  253. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 216
  254. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 217
  255. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 218
  256. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 219
  257. {0.029999, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 220
  258. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 221
  259. {0.070000, 0.009999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 222
  260. {0.070000, 0.050000, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 223
  261. {0.070000, 0.029999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 224
  262. {0.070000, 0.029999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 225
  263. {0.070000, 0.029999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 226
  264. {0.070000, 0.029999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 227
  265. {0.070000, 0.029999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 228
  266. {0.070000, 0.029999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 229
  267. {0.070000, 0.029999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 230
  268. {0.070000, 0.029999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 231
  269. {0.070000, 0.029999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 232
  270. {0.070000, 0.029999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 233
  271. {0.070000, 0.029999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 234
  272. {0.070000, 0.029999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 235
  273. {0.070000, 0.029999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 236
  274. {0.070000, 0.029999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 237
  275. {0.070000, 0.029999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 238
  276. {0.070000, 0.029999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 239
  277. {0.070000, 0.029999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 240
  278. {0.070000, 0.029999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 241
  279. {0.070000, 0.029999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 242
  280. {0.070000, 0.029999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 243
  281. {0.070000, 0.029999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 244
  282. {0.070000, 0.029999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 245
  283. {0.070000, 0.050000, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 246
  284. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 247
  285. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 248
  286. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 249
  287. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 250
  288. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 251
  289. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 252
  290. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 253
  291. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 254
  292. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 255
  293. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 256
  294. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 257
  295. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 258
  296. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 259
  297. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 260
  298. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 261
  299. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 262
  300. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 263
  301. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 264
  302. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 265
  303. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 266
  304. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 267
  305. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 268
  306. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 269
  307. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 270
  308. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 271
  309. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 272
  310. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 274
  311. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 275
  312. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 276
  313. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 277
  314. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 278
  315. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 279
  316. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 280
  317. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 281
  318. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 282
  319. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 283
  320. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 284
  321. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 285
  322. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 286
  323. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 287
  324. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 288
  325. {0.070000, 0.000000, 0.000000, 88.000000, 77.000000, 0.000000}, //skin 289
  326. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 290
  327. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 291
  328. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 292
  329. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 293
  330. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 294
  331. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 295
  332. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 296
  333. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 297
  334. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000}, //skin 298
  335. {0.070000, 0.019999, 0.000000, 88.000000, 82.000000, 0.000000} //skin 299
  336. };
  337.  
  338. public OnFilterScriptInit()
  339. {
  340. print("\n--------------------------------------");
  341. print(" Seatbelt system by willsuckformoney");
  342. print("--------------------------------------\n");
  343. SetTimer("Update",500,true);
  344. for (new x=0; x<MAX_VEHICLES; x++)
  345. {
  346. LightPwr[x]=1;
  347. Flasher[x]=0;
  348. FlasherState[x]=0;
  349. }
  350. FlashTimer = SetTimer("FlasherFunc",100,1);
  351. return 1;
  352. }
  353.  
  354. public OnFilterScriptExit()
  355. {
  356. KillTimer(FlashTimer);
  357. return 1;
  358. }
  359.  
  360. public OnPlayerConnect(playerid)
  361. {
  362. SetPVarInt(playerid,"Alive",0);
  363. VehicleInfo[playerid][pDriver] = 0;
  364. VehicleInfo[playerid][pPassenger] = 0;
  365. VehicleInfo[playerid][BeltOn] = 0;
  366. VehicleInfo[playerid][MPH] = 0;
  367. VehicleInfo[playerid][KMH] = 0;
  368. VehicleInfo[playerid][pSeat] = false;
  369. VehicleInfo[playerid][pVehID] = false;
  370. VehicleInfo[playerid][pStick] = 0;
  371. VehicleInfo[playerid][VehFroze] = 1;
  372. return 1;
  373. }
  374.  
  375. public OnPlayerSpawn(playerid)
  376. {
  377. SetPVarInt(playerid,"Alive",1);
  378. SendClientMessage(playerid,MSGCOMM_COLOR,"/seatbelt to drive safely in a car!");
  379. VehicleInfo[playerid][pDriver] = 0;
  380. VehicleInfo[playerid][pPassenger] = 0;
  381. VehicleInfo[playerid][BeltOn] = 0;
  382. VehicleInfo[playerid][MPH] = 0;
  383. VehicleInfo[playerid][KMH] = 0;
  384. VehicleInfo[playerid][pSeat] = false;
  385. VehicleInfo[playerid][pVehID] = false;
  386. VehicleInfo[playerid][pStick] = 0;
  387. return 1;
  388. }
  389.  
  390. public OnPlayerDeath(playerid, killerid, reason)
  391. {
  392. SetPVarInt(playerid,"Alive",0);
  393. VehicleInfo[playerid][pDriver] = 0;
  394. VehicleInfo[playerid][pPassenger] = 0;
  395. VehicleInfo[playerid][BeltOn] = 0;
  396. VehicleInfo[playerid][MPH] = 0;
  397. VehicleInfo[playerid][KMH] = 0;
  398. VehicleInfo[playerid][pSeat] = false;
  399. VehicleInfo[playerid][pVehID] = false;
  400. VehicleInfo[playerid][pStick] = 0;
  401. return 1;
  402. }
  403.  
  404. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  405. {
  406. if(newkeys == KEY_SECONDARY_ATTACK)
  407. {
  408. if(IsPlayerInAnyVehicle(playerid))
  409. {
  410. if(VehicleInfo[playerid][VehFroze] == 1)
  411. {
  412. RemovePlayerFromVehicle(playerid);
  413. }
  414. }
  415. }
  416. return 1;
  417. }
  418.  
  419. public OnPlayerStateChange(playerid, newstate, oldstate)
  420. {
  421. if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
  422. {
  423. if(VehicleInfo[playerid][VehFroze] == 1)
  424. {
  425. TogglePlayerControllable(playerid,false);
  426. SendClientMessage(playerid,MSGCOMM_COLOR,"/stick 1 to put the car in Drive.");
  427. }
  428. }
  429. if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
  430. {
  431. if(IsPlayerInAnyVehicle(playerid))
  432. {
  433. VehicleInfo[playerid][pDriver] = 1; VehicleInfo[playerid][pPassenger] = 0;
  434. SendClientMessage(playerid,MSGCOMM_COLOR,"Buckle up! Its the law. (( /seatbelt ))");
  435. }
  436. }
  437. if(GetPlayerState(playerid) == PLAYER_STATE_PASSENGER)
  438. {
  439. if(IsPlayerInAnyVehicle(playerid))
  440. {
  441. VehicleInfo[playerid][pDriver] = 0; VehicleInfo[playerid][pPassenger] = 1;
  442. SendClientMessage(playerid,MSGCOMM_COLOR,"Buckle up! Its the law. (( /seatbelt ))");
  443. }
  444. }
  445. if(GetPlayerState(playerid) == PLAYER_STATE_ONFOOT)
  446. {
  447. VehicleInfo[playerid][pDriver] = 0; VehicleInfo[playerid][pPassenger] = 0;
  448. TogglePlayerControllable(playerid,true);
  449. }
  450.  
  451. if(newstate == PLAYER_STATE_DRIVER)
  452. {
  453. new vehid = GetPlayerVehicleID(playerid);
  454. if(IsABike(vehid))
  455. {
  456. new skin = GetPlayerSkin(playerid);
  457. SetPlayerAttachedObject(playerid, SLOT, 18645, 2, HelmetPos[skin][0], HelmetPos[skin][1], HelmetPos[skin][2], HelmetPos[skin][3], HelmetPos[skin][4], HelmetPos[skin][5]);
  458. }
  459. }
  460. else
  461. {
  462. RemovePlayerAttachedObject(playerid, SLOT);
  463. }
  464. return 1;
  465. }
  466.  
  467. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  468. {
  469. if (LightPwr[vehicleid] == 0)
  470. {
  471. new panels,doors,lights,tires;
  472. GetVehicleDamageStatus(vehicleid,panels,doors,lights,tires);
  473. UpdateVehicleDamageStatus(vehicleid, panels, doors, 5, tires);
  474. }
  475. else
  476. {
  477. new panels,doors,lights,tires;
  478. GetVehicleDamageStatus(vehicleid,panels,doors,lights,tires);
  479. UpdateVehicleDamageStatus(vehicleid, panels, doors, 0, tires);
  480. }
  481. return 1;
  482. }
  483.  
  484. public OnPlayerExitVehicle(playerid, vehicleid)
  485. {
  486. Flasher[vehicleid] = 0;
  487. if (LightPwr[vehicleid] == 0)
  488. {
  489. new panels,doors,lights,tires;
  490. GetVehicleDamageStatus(vehicleid,panels,doors,lights,tires);
  491. UpdateVehicleDamageStatus(vehicleid, panels, doors, 5, tires);
  492. }
  493. else
  494. {
  495. new panels,doors,lights,tires;
  496. GetVehicleDamageStatus(vehicleid,panels,doors,lights,tires);
  497. UpdateVehicleDamageStatus(vehicleid, panels, doors, 0, tires);
  498. }
  499. return 1;
  500. }
  501.  
  502.  
  503. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  504. {
  505. if (LightPwr[vehicleid] == 0)
  506. {
  507. new panels,doors,lights,tires;
  508. GetVehicleDamageStatus(vehicleid,panels,doors,lights,tires);
  509. UpdateVehicleDamageStatus(vehicleid, panels, doors, 5, tires);
  510. }
  511. return 1;
  512. }
  513.  
  514. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  515. {
  516. if (LightPwr[vehicleid] == 0)
  517. {
  518. new panels,doors,lights,tires;
  519. GetVehicleDamageStatus(vehicleid,panels,doors,lights,tires);
  520. UpdateVehicleDamageStatus(vehicleid, panels, doors, 5, tires);
  521. }
  522. return 1;
  523. }
  524.  
  525. public OnVehicleStreamIn(vehicleid, forplayerid)
  526. {
  527. if (LightPwr[vehicleid] == 0)
  528. {
  529. new panels,doors,lights,tires;
  530. GetVehicleDamageStatus(vehicleid,panels,doors,lights,tires);
  531. UpdateVehicleDamageStatus(vehicleid, panels, doors, 5, tires);
  532. }
  533. return 1;
  534. }
  535.  
  536. public OnVehicleDamageStatusUpdate(vehicleid,playerid)
  537. {
  538. new Float:health;
  539. if(IsPlayerInAnyVehicle(playerid))
  540. {
  541. if(VehicleInfo[playerid][BeltOn] == 0)
  542. {
  543. if(GetPlayerSpeed(playerid) >= 10)
  544. {
  545. GetPlayerHealth(playerid,health);
  546. SetPlayerHealth(playerid,health-17*3/6);
  547. }
  548. }
  549. }
  550. return 1;
  551. }
  552.  
  553. CMD:seatbelt(playerid,params[])
  554. {
  555. if(VehicleInfo[playerid][pDriver] == 1 || VehicleInfo[playerid][pPassenger] == 1)
  556. {
  557. if(VehicleInfo[playerid][BeltOn] == 0)
  558. {
  559. new Float:X,Float:Y,Float:Z; GetPlayerPos(playerid,X,Y,Z);
  560. VehicleInfo[playerid][BeltOn] = 1;
  561. SendClientMessage(playerid,MSGCOMM_COLOR,"Your seatbelt is now on. Drive safely!");
  562. SeatBelt = CreatePlayer3DTextLabel(playerid, "Seat-Belt ON", MSGCOMM_COLOR, X, Y, Z, 40.0, playerid, INVALID_VEHICLE_ID, 0);
  563. }
  564. else if(VehicleInfo[playerid][BeltOn] == 1)
  565. {
  566. VehicleInfo[playerid][BeltOn] = 0;
  567. SendClientMessage(playerid,MSGCOMM_COLOR,"Your seatbelt is now off. You can leave you car now.");
  568. DeletePlayer3DTextLabel(playerid,SeatBelt);
  569. }
  570. }
  571. return 1;
  572. }
  573.  
  574. CMD:myspeed(playerid,params[])
  575. {
  576. new string[128];
  577. if(IsPlayerInAnyVehicle(playerid) || GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
  578. {
  579. format(string,sizeof(string),"Your speed is %iMPH",GetPlayerSpeed(playerid));
  580. SendClientMessage(playerid,MSGDBUG_COLOR,string);
  581. format(string,sizeof(string),"Your speed is %iKMH",GetPlayerSpeedEx(playerid));
  582. SendClientMessage(playerid,MSGDBUG_COLOR,string);
  583. } else return SendClientMessage(playerid,MSGFAIL_COLOR,"Sorry, you are either not in a vehicle or not a driver of a vehicle.");
  584. return 1;
  585. }
  586.  
  587. CMD:stick(playerid,params[])
  588. {
  589. new stickID, tmp[256], Index;
  590. tmp = strtok(params,Index), stickID = strval(tmp);
  591. if(!strlen(tmp) || !IsNumeric(tmp)) return SendClientMessage(playerid,MSGFAIL_COLOR,"USAGE: /stick <stickID> 0 - Parked | 1 = Drive.");
  592. if(stickID > 2) return SendClientMessage(playerid,MSGFAIL_COLOR,"Cannot be higher than 1. 0 = Parked | 1 = Drive.");
  593. switch(stickID)
  594. {
  595. case 0:
  596. {
  597. VehicleInfo[playerid][pStick] = PARKED;
  598. SendClientMessage(playerid,MSGCOMM_COLOR,"You have put the car in Park. You may not drive the car right now.");
  599. VehicleInfo[playerid][VehFroze] = 1;
  600. }
  601. case 1:
  602. {
  603. VehicleInfo[playerid][pStick] = DRIVE;
  604. SendClientMessage(playerid,MSGCOMM_COLOR,"You have put the car in Drive. You may now drive the car. Drive safely! Remember to put on your seatbelt!");
  605. VehicleInfo[playerid][VehFroze] = false;
  606. }
  607. }
  608. return 1;
  609. }
  610.  
  611. CMD:systemhelp(playerid,params[])
  612. {
  613. SendClientMessage(playerid,MSGINFO_COLOR,"/seatbelt - Put your seatbelt on/off.");
  614. SendClientMessage(playerid,MSGINFO_COLOR,"/myspeed - Sends your Speed in MPH and KMH.");
  615. SendClientMessage(playerid,MSGINFO_COLOR,"/stick - Put your car in drive/park (If not in drive, can't drive your car).");
  616. SendClientMessage(playerid,MSGINFO_COLOR,"/lightsflashoff - Flash your head lights like a cop cars.");
  617. SendClientMessage(playerid,MSGINFO_COLOR,"/lightsflash - Stop flashing your head lights - regular head lights.");
  618. SendClientMessage(playerid,MSGINFO_COLOR,"/lightson - Turn on your lights to see like at night.");
  619. SendClientMessage(playerid,MSGINFO_COLOR,"/lightswat - One light on.");
  620. SendClientMessage(playerid,MSGINFO_COLOR,"/lightsoff - Turn your lights off.");
  621. SendClientMessage(playerid,MSGINFO_COLOR,"/fcar - spawn you a bike and an infernus.");
  622. SendClientMessage(playerid,MSGINFO_COLOR,"/veh - Edit your Engine, Doors, Car Alarm.");
  623. SendClientMessage(playerid,MSGINFO_COLOR,"/myplate - Set your vehicle plate custom.");
  624. return 1;
  625. }
  626.  
  627. CMD:lightsoff(playerid,params[])
  628. {
  629. new vehicleid,panels,doors,lights,tires;
  630. vehicleid = GetPlayerVehicleID(playerid);
  631. GetVehicleDamageStatus(vehicleid,panels,doors,lights,tires);
  632. UpdateVehicleDamageStatus(vehicleid, panels, doors, 5, tires);
  633. LightPwr[vehicleid] = 0;
  634. Flasher[vehicleid] = 0;
  635. return 1;
  636. }
  637.  
  638. CMD:lightswat(playerid,params[])
  639. {
  640. new vehicleid,panels,doors,lights,tires;
  641. vehicleid = GetPlayerVehicleID(playerid);
  642. GetVehicleDamageStatus(vehicleid,panels,doors,lights,tires);
  643. UpdateVehicleDamageStatus(vehicleid, panels, doors, 3, tires);
  644. LightPwr[vehicleid] = 1;
  645. Flasher[vehicleid] = 0;
  646. return 1;
  647. }
  648.  
  649. CMD:lightson(playerid,params[])
  650. {
  651. new vehicleid,panels,doors,lights,tires;
  652. vehicleid = GetPlayerVehicleID(playerid);
  653. GetVehicleDamageStatus(vehicleid,panels,doors,lights,tires);
  654. UpdateVehicleDamageStatus(vehicleid, panels, doors, 0, tires);
  655. LightPwr[vehicleid] = 1;
  656. Flasher[vehicleid] = 0;
  657. return 1;
  658. }
  659.  
  660. CMD:lightsflash(playerid,params[])
  661. {
  662. new vehicleid,panels,doors,lights,tires;
  663. vehicleid = GetPlayerVehicleID(playerid);
  664. GetVehicleDamageStatus(vehicleid,panels,doors,lights,tires);
  665. Flasher[vehicleid] = 1;
  666. return 1;
  667. }
  668.  
  669. CMD:lightsflashoff(playerid,params[])
  670. {
  671. new vehicleid,panels,doors,lights,tires;
  672. vehicleid = GetPlayerVehicleID(playerid);
  673. GetVehicleDamageStatus(vehicleid,panels,doors,lights,tires);
  674. if (LightPwr[vehicleid] == 1)
  675. UpdateVehicleDamageStatus(vehicleid, panels, doors, 0, tires);
  676. else
  677. UpdateVehicleDamageStatus(vehicleid, panels, doors, 5, tires);
  678. Flasher[vehicleid] = 0;
  679. return 1;
  680. }
  681.  
  682. CMD:fcar(playerid,params[])
  683. {
  684. new Float:X,Float:Y,Float:Z; GetPlayerPos(playerid,X,Y,Z);
  685. CreateVehicle(481,X,Y,Z,0,17,17,1000);
  686. CreateVehicle(411,X,Y,Z,0,17,17,1000);
  687. return 1;
  688. }
  689.  
  690. CMD:veh(playerid, params[])
  691. {
  692. new engine,lights,alarm,doors,bonnet,boot,objective,veh; veh = GetPlayerVehicleID(playerid);
  693. if(strcmp(params, "Engine", true) == 0)
  694. {
  695. if(IsPlayerInAnyVehicle(playerid))
  696. {
  697. if(veh != INVALID_VEHICLE_ID)
  698. {
  699. if(VehicleInfo[playerid][Engine] == 0)
  700. {
  701. GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
  702. SetVehicleParamsEx(veh,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
  703. VehicleInfo[playerid][Engine] = 1;
  704. SendClientMessage(playerid, MSGCOMM_COLOR, "You've turned the vehicle's engine on!");
  705. }
  706. else if(VehicleInfo[playerid][Engine] == 1)
  707. {
  708. GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
  709. SetVehicleParamsEx(veh,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
  710. VehicleInfo[playerid][Engine] = 0;
  711. SendClientMessage(playerid, MSGCOMM_COLOR, "You've turned the vehicle's engine off!");
  712. }
  713. }
  714. }
  715. else {
  716. SendClientMessage(playerid, MSGFAIL_COLOR, "You are not in a vehicle!");
  717. }
  718. }
  719. else if(strcmp(params, "Alarm", true) == 0)
  720. {
  721. if(IsPlayerInAnyVehicle(playerid))
  722. {
  723. if(veh != INVALID_VEHICLE_ID)
  724. {
  725. if(VehicleInfo[playerid][Alarm] == 0)
  726. {
  727. GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
  728. SetVehicleParamsEx(veh,engine,lights,VEHICLE_PARAMS_ON,doors,bonnet,boot,objective);
  729. VehicleInfo[playerid][Alarm] = 1;
  730. SendClientMessage(playerid, MSGCOMM_COLOR, "You've turned the vehicle's alarm on!");
  731. }
  732. else if(VehicleInfo[playerid][Alarm] == 1)
  733. {
  734. GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
  735. SetVehicleParamsEx(veh,engine,lights,VEHICLE_PARAMS_OFF,doors,bonnet,boot,objective);
  736. VehicleInfo[playerid][Alarm] = 0;
  737. SendClientMessage(playerid, MSGCOMM_COLOR, "You've turned the vehicle's alarm off!");
  738. }
  739. }
  740. }
  741. else {
  742. SendClientMessage(playerid, MSGFAIL_COLOR, "You are not in a vehicle!");
  743. }
  744. }
  745. else if(strcmp(params, "Doors", true) == 0)
  746. {
  747. if(IsPlayerInAnyVehicle(playerid))
  748. {
  749. if(veh != INVALID_VEHICLE_ID)
  750. {
  751. if(VehicleInfo[playerid][Doors] == 0)
  752. {
  753. GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
  754. SetVehicleParamsEx(veh,engine,lights,alarm,VEHICLE_PARAMS_ON,bonnet,boot,objective);
  755. VehicleInfo[playerid][Doors] = 1;
  756. SendClientMessage(playerid, MSGCOMM_COLOR, "The vehicle's doors are now open!");
  757. }
  758. else if(VehicleInfo[playerid][Doors] == 1)
  759. {
  760. GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
  761. SetVehicleParamsEx(veh,engine,lights,alarm,VEHICLE_PARAMS_OFF,bonnet,boot,objective);
  762. VehicleInfo[playerid][Doors] = 0;
  763. SendClientMessage(playerid, MSGCOMM_COLOR, "The vehicle's doors are now closed!");
  764. }
  765. }
  766. }
  767. else {
  768. SendClientMessage(playerid, MSGFAIL_COLOR, "You are not in a vehicle!");
  769. }
  770. }
  771. else SendClientMessage(playerid, MSGFAIL_COLOR, "USAGE: /vehfunc [function] |(Engine, Alarm, Doors)|");
  772. return 1;
  773. }
  774.  
  775. CMD:myplate(playerid,params[])
  776. {
  777. new Float:x,Float:y,Float:z,Float:ang;
  778. GetVehiclePos(GetPlayerVehicleID(playerid),x,y,z);
  779. GetVehicleZAngle(GetPlayerVehicleID(playerid),ang);
  780. if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid,MSGFAIL_COLOR,"You're not in a vehicle!");
  781. ShowPlayerDialog(playerid,171,DIALOG_STYLE_INPUT,"{EE7777}Vehicle Numberplate","{00CC66}Input your new vehicle numberplate below.","Yes","Cancel");
  782. return 1;
  783. }
  784.  
  785. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  786. {
  787. if(dialogid == 171)
  788. {
  789. if(response)
  790. {
  791. new Float:x,Float:y,Float:z,Float:ang;
  792. SetVehicleNumberPlate(GetPlayerVehicleID(playerid), inputtext);
  793. GetVehiclePos(GetPlayerVehicleID(playerid),x,y,z);
  794. GetVehicleZAngle(GetPlayerVehicleID(playerid),ang);
  795. SetVehicleToRespawn(GetPlayerVehicleID(playerid));
  796. SetVehiclePos(GetPlayerVehicleID(playerid),x,y,z);
  797. PutPlayerInVehicle(playerid,GetPlayerVehicleID(playerid),0);
  798. SetVehicleZAngle(GetPlayerVehicleID(playerid),ang);
  799. }
  800. }
  801. return 1;
  802. }
  803. //
  804. forward Update(playerid);
  805. public Update(playerid)
  806. {
  807. if(IsPlayerInAnyVehicle(playerid))
  808. {
  809. VehicleInfo[playerid][pSeat] = GetPlayerVehicleSeat(playerid);
  810. VehicleInfo[playerid][pVehID] = GetPlayerVehicleID(playerid);
  811. }
  812. if(!IsPlayerInAnyVehicle(playerid))
  813. {
  814. if(VehicleInfo[playerid][BeltOn] == 1)
  815. {
  816. SendClientMessage(playerid,MSGFAIL_COLOR,"You cannot leave your car with your seatbelt on. (( /seatbelt ))");
  817. PutPlayerInVehicle(playerid,VehicleInfo[playerid][pVehID],VehicleInfo[playerid][pSeat]);
  818. }
  819. }
  820. if(IsPlayerAlive(playerid))
  821. {
  822. new Float:Health;
  823. GetPlayerHealth(playerid,Health);
  824. SetPlayerHealth(playerid,Health+0.25);
  825. }
  826. if(IsPlayerInAnyVehicle(playerid))
  827. {
  828. if(VehicleInfo[playerid][VehFroze] == 1)
  829. {
  830. TogglePlayerControllable(playerid,false);
  831. } else return TogglePlayerControllable(playerid,true);
  832. }
  833. SetWorldTime(24);
  834. SetPlayerTime(playerid,24,0);
  835. return 1;
  836. }
  837.  
  838. stock IsPlayerAlive(playerid)
  839. {
  840. if(GetPVarInt(playerid, "Alive") == 1) return 1;
  841. return 0;
  842. }
  843.  
  844. stock IsABike(vehicleid) //Made by me :D
  845. {
  846. new result;
  847. new model = GetVehicleModel(vehicleid);
  848. switch(model)
  849. {
  850. case 509, 481, 510, 462, 448, 581, 522, 461, 521, 523, 463, 586, 468, 471: result = model;
  851. default: result = 0;
  852. }
  853. return result;
  854. }
  855.  
  856. stock GetPlayerSpeed(playerid) //MPH
  857. {
  858. new vehicleid,Float:speed_x,Float:speed_y,Float:speed_z,Float:final_speed,final_speed_int;
  859. vehicleid = GetPlayerVehicleID(playerid);
  860. GetVehicleVelocity(vehicleid,speed_x,speed_y,speed_z);
  861. final_speed = floatsqroot(((speed_x*speed_x)+(speed_y*speed_y))+(speed_z*speed_z))*85.4166672;
  862. final_speed_int = floatround(final_speed,floatround_round);
  863. return VehicleInfo[playerid][MPH] = final_speed_int;
  864. }
  865.  
  866. stock GetPlayerSpeedEx(playerid) //KMH
  867. {
  868. new vehicleid,Float:speed_x,Float:speed_y,Float:speed_z,Float:final_speed,final_speed_int;
  869. vehicleid = GetPlayerVehicleID(playerid);
  870. GetVehicleVelocity(vehicleid,speed_x,speed_y,speed_z);
  871. final_speed = floatsqroot(((speed_x*speed_x)+(speed_y*speed_y))+(speed_z*speed_z))*136.666667;
  872. final_speed_int = floatround(final_speed,floatround_round);
  873. return VehicleInfo[playerid][KMH] = final_speed_int;
  874. }
  875.  
  876. forward FlasherFunc();
  877. public FlasherFunc() {
  878. for (new p=0; p<MAX_PLAYERS; p++)
  879. {
  880. if (IsPlayerInAnyVehicle(p) && IsPlayerConnected(p) && !IsPlayerNPC(p))
  881. {
  882. new id;
  883. new panelsx,doorsx,lightsx,tiresx;
  884. id = GetPlayerVehicleID(p);
  885. if (Flasher[id] == 1)
  886. {
  887. if (FlasherState[id] == 1)
  888. {
  889. GetVehicleDamageStatus(id,panelsx,doorsx,lightsx,tiresx);
  890. UpdateVehicleDamageStatus(id, panelsx, doorsx, 4, tiresx);
  891. FlasherState[id] = 0;
  892. }
  893. else {
  894. GetVehicleDamageStatus(id,panelsx,doorsx,lightsx,tiresx);
  895. UpdateVehicleDamageStatus(id, panelsx, doorsx, 1, tiresx);
  896. FlasherState[id] = 1;
  897. }
  898. }
  899. }
  900. }
  901. return 1;
  902. }
  903.  
  904. strtok(const string[], &index)
  905. {
  906. new length = strlen(string);
  907. while ((index < length) && (string[index] <= ' '))
  908. {
  909. index++;
  910. }
  911.  
  912. new offset = index;
  913. new result[20];
  914. while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
  915. {
  916. result[index - offset] = string[index];
  917. index++;
  918. }
  919. result[index - offset] = EOS;
  920. return result;
  921. }
  922.  
  923. stock DelPrint(string1[])
  924. {
  925. strmid(string1, string1, 0, strlen(string1)-1, 255);
  926. //printf("%s", string1);
  927. return 1;
  928. }
  929.  
  930. /*
  931. * First version released by mike, this one created by DracoBlue
  932. * Has also a fix to use "-" and "+" in the beginning of the number.
  933. */
  934. stock IsNumeric(const string[]) {
  935. new length=strlen(string);
  936. if (length==0) return false;
  937. for (new i = 0; i < length; i++) {
  938. if (
  939. (string[i] > '9' || string[i] < '0' && string[i]!='-' && string[i]!='+') // Not a number,'+' or '-'
  940. || (string[i]=='-' && i!=0) // A '-' but not at first.
  941. || (string[i]=='+' && i!=0) // A '+' but not at first.
  942. ) return false;
  943. }
  944. if (length==1 && (string[0]=='-' || string[0]=='+')) return false;
  945. return true;
  946. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement