SHOW:
|
|
- or go back to the newest paste.
1 | /* | |
2 | ||
3 | JFS Speedometer v1.0 English | |
4 | ================================================================================ | |
5 | Created by: Jonathan Feitosa ( JFS ) | |
6 | Credits: URSS_Morelli, Drakins, Bruno Tadeu | |
7 | ================================================================================ | |
8 | Contato: MSN - jonathan_feitosa@hotmail.com.br | |
9 | rafaelmorelliromano@live.com | |
10 | Skype: jonathanfeitosajfs | |
11 | urss_morelli | |
12 | Facebook: fb.com/JonathanFeitosaJFS | |
13 | ================================================================================ | |
14 | Like on Facebook: Facebook.com/GoHumorGTA << | |
15 | ================================================================================ | |
16 | ||
17 | ||
18 | DO NOT REMOVE THE CREDITS! | |
19 | ||
20 | ||
21 | ================================================================================ | |
22 | ||
23 | */ | |
24 | ||
25 | ||
26 | #include <a_samp> | |
27 | #include <zcmd> | |
28 | ||
29 | #define MAXZN 28 | |
30 | #define POSICAO 1 | |
31 | ||
32 | #define MAXPLAYERSJFS 50 // Slots do seu Servidor | |
33 | ||
34 | #define BlindagemTodosVeiculos 0// Bote 1 se quiser por blindagem em todos os veiculos logo no comeco e 0 para não ! | |
35 | #define DesgasteMAX 100 // Maximo de Desgaste do Pneu ( 100% ) | |
36 | #define BlindagemMAX 100 // Maximo de Blindagem ( 100% ) | |
37 | #define GasMAX 100 // Maximo de GAS ( 100% ) | |
38 | ||
39 | #define Time 15000 // Time para Diminuir o GAS | |
40 | #define TimeDes 30000 // Time para Diminuir o Desgaste do Pneu | |
41 | ||
42 | ||
43 | main() | |
44 | { | |
45 | print("\n\n----------------------------------------"); | |
46 | print(" JFS Speedometer - Created by Jonathan Feitosa :)"); | |
47 | print(" DO NOT REMOVE THE CREDITS OF THE FILTERSCRIPT"); | |
48 | print("----------------------------------------\n\n"); | |
49 | } | |
50 | ||
51 | enum | |
52 | SavePlayerPosEnum | |
53 | { | |
54 | Float:LastX, | |
55 | Float:LastY, | |
56 | Float:LastZ | |
57 | }; | |
58 | ||
59 | new | |
60 | OutOfGas[MAXPLAYERSJFS], | |
61 | KMP[MAX_VEHICLES], | |
62 | Valor, | |
63 | UpdateSeconds = 1, | |
64 | Float:distance, | |
65 | CheckGasT, | |
66 | CheckDesT, | |
67 | StoppedVehicleT, | |
68 | Gas[MAX_VEHICLES], | |
69 | Blindagem[MAX_VEHICLES], | |
70 | Desgaste[MAX_VEHICLES], | |
71 | Abastecendo[MAXPLAYERSJFS], | |
72 | ArrumandoPneu[MAXPLAYERSJFS], | |
73 | gGasBiz[MAXPLAYERSJFS], | |
74 | Float:GasX, | |
75 | Float:GasY, | |
76 | Float:GasZ, | |
77 | JFSAACC, | |
78 | JFSACPreco, | |
79 | Float:olddistance, | |
80 | Float:newdistance, | |
81 | Float:x, | |
82 | Float:y, | |
83 | Float:z, | |
84 | Float:x1, | |
85 | Float:y1, | |
86 | Float:z1, | |
87 | Float:x2, | |
88 | Float:y2, | |
89 | Float:z2, | |
90 | closest = -1, | |
91 | ZoneSA[MAXZN], | |
92 | Text:TextDrawJFS[MAXPLAYERSJFS], | |
93 | Text:TextDrawJFSV[MAXPLAYERSJFS], | |
94 | bool:Speedometer, | |
95 | SavePlayerPos[MAXPLAYERSJFS][SavePlayerPosEnum], | |
96 | Celula[128] | |
97 | ; | |
98 | new | |
99 | Float:LocaisGAS[13][3] = | |
100 | { | |
101 | {1004.0070,-939.3102,42.1797}, // LS | |
102 | {1944.3260,-1772.9254,13.3906}, // LS | |
103 | {-90.5515,-1169.4578,2.4079}, // LS | |
104 | {-1609.7958,-2718.2048,48.5391}, // LS | |
105 | {2202.2349,2474.3494,10.5258}, // LV | |
106 | {614.9333,1689.7418,6.6968}, // LV | |
107 | {-1328.8250,2677.2173,49.7665}, // LV | |
108 | {70.3882,1218.6783,18.5165}, // LV | |
109 | {2113.7390,920.1079,10.5255}, // LV | |
110 | {-2029.4968,156.4366,28.9498}, // SF | |
111 | {-2408.7590,976.0934,45.4175}, // SF | |
112 | {-2243.9629,-2560.6477,31.8841}, // LS/SF | |
113 | {-1676.6323,414.0262,6.9484} // LS/SF | |
114 | }; | |
115 | ||
116 | forward | |
117 | JFSAC(); | |
118 | forward | |
119 | NoPosto(playerid); | |
120 | forward | |
121 | Float:DistanciaPosto(p1,Float:px,Float:py,Float:pz); | |
122 | forward | |
123 | StoppedVehicle(); | |
124 | forward | |
125 | CheckGas(); | |
126 | forward | |
127 | CheckDes(); | |
128 | ||
129 | //Nome dos Carros - Retirado do ThugLife City v4.0 Desenvolvido por mim :) | |
130 | new | |
131 | NomesVeiculos[][] = { | |
132 | "Landstalker","Bravura","Buffalo","Linerunner","Pereniel","Sentinel","Dumper","Firetruck","Trashmaster", | |
133 | "Stretch","Manana","Infernus","Voodoo","Pony","Mule","Cheetah","Ambulancia","Leviathan","Moonbeam","Esperanto", | |
134 | "Taxi","Washington","Bobcat","Mr Whoopee","BF Injection","Hunter","Premier","Enforcer","Securicar","Banshee", | |
135 | "Predator","Bus","Rhino","Barracks","Hotknife","Trailer","Previon","Coach","Cabbie","Stallion","Rumpo", | |
136 | "RC Bandit","Romero","Packer","Monster","Admiral","Squalo","Seasparrow","Pizzaboy","Tram","Trailer", | |
137 | "Turismo","Speeder","Reefer","Tropic","Flatbed","Yankee","Caddy","Solair","Berkley's RC Van","Skimmer", | |
138 | "PCJ-600","Faggio","Freeway","RC Baron","RC Raider","Glendale","Oceanic","Sanchez","Sparrow","Patriot", | |
139 | "Quad","Coastguard","Dinghy","Hermes","Sabre","Rustler","ZR-350","Walton","Regina","Comet","BMX", | |
140 | "Burrito","Camper","Marquis","Baggage","Dozer","Maverick","News Chopper","Rancher","FBI Rancher","Virgo", | |
141 | "Greenwood","Jetmax","Hotring","Sandking","Blista Compact","Maverick Policial","Boxville","Benson","Mesa", | |
142 | "RC Goblin","Hotring Racer A","Hotring Racer B","Bloodring Banger","Rancher","Super GT","Elegant", | |
143 | "Journey","Bike","Mountain Bike","Beagle","Cropdust","Stunt","Tanker","RoadTrain","Nebula","Majestic", | |
144 | "Buccaneer","Shamal","Hydra","FCR-900","NRG-500","HPV1000","Cement Truck","Tow Truck","Fortune","Cadrona", | |
145 | "FBI Truck","Willard","Forklift","Tractor","Combine","Feltzer","Remington","Slamvan","Blade","Freight", | |
146 | "Streak","Vortex","Vincent","Bullet","Clover","Sadler","Firetruck","Hustler","Intruder","Primo","Cargobob", | |
147 | "Tampa","Sunrise","Merit","Utility","Nevada","Yosemite","Windsor","Monster A","Monster B","Uranus", | |
148 | "Jester","Sultan","Stratum","Elegy","Raindance","RC Tiger","Flash","Tahoma","Savanna","Bandito","Freight", | |
149 | "Trailer","Kart","Mower","Duneride","Sweeper","Broadway","Tornado","AT-400","DFT-30","Huntley","Stafford", | |
150 | "BF-400","Newsvan","Tug","Trailer A","Emperor","Wayfarer","Euros","Hotdog","Club","Trailer B","Trailer C", | |
151 | "Andromada","Dodo","RC Cam","Launch","Viatura (LSPD)","Viatura (SFPD)","Viatura (LVPD)","Police Ranger", | |
152 | "Picador","S.W.A.T. Van","Alpha","Phoenix","Glendale","Sadler","Luggage Trailer A","Luggage Trailer B", | |
153 | "Stair Trailer","Boxville","Farm Plow","Utility Trailer" | |
154 | }; | |
155 | ||
156 | enum | |
157 | SAZones | |
158 | { | |
159 | Zone_Nomes[28], | |
160 | Float:Zone_Coords[6] | |
161 | }; | |
162 | ||
163 | static const ZoneLS[][SAZones] = | |
164 | { | |
165 | {"The Big Ear", {-410.00,1403.30,-3.00,-137.90,1681.20,200.00}}, | |
166 | {"Aldea Malvada", {-1372.10,2498.50,0.00,-1277.50,2615.30,200.00}}, | |
167 | {"Angel Pine", {-2324.90,-2584.20,-6.10,-1964.20,-2212.10,200.00}}, | |
168 | {"Arco del Oeste", {-901.10,2221.80,0.00,-592.00,2571.90,200.00}}, | |
169 | {"Avispa Country Club", {-2646.40,-355.40,0.00,-2270.00,-222.50,200.00}}, | |
170 | {"Avispa Country Club", {-2831.80,-430.20,-6.10,-2646.40,-222.50,200.00}}, | |
171 | {"Avispa Country Club", {-2361.50,-417.10,0.00,-2270.00,-355.40,200.00}}, | |
172 | {"Avispa Country Club", {-2667.80,-302.10,-28.80,-2646.40,-262.30,71.10}}, | |
173 | {"Avispa Country Club", {-2470.00,-355.40,0.00,-2270.00,-318.40,46.10}}, | |
174 | {"Avispa Country Club", {-2550.00,-355.40,0.00,-2470.00,-318.40,39.70}}, | |
175 | {"Back o Beyond", {-1166.90,-2641.10,0.00,-321.70,-1856.00,200.00}}, | |
176 | {"Battery Point", {-2741.00,1268.40,-4.50,-2533.00,1490.40,200.00}}, | |
177 | {"Bayside", {-2741.00,2175.10,0.00,-2353.10,2722.70,200.00}}, | |
178 | {"Bayside Marina", {-2353.10,2275.70,0.00,-2153.10,2475.70,200.00}}, | |
179 | {"Beacon Hill", {-399.60,-1075.50,-1.40,-319.00,-977.50,198.50}}, | |
180 | {"Blackfield", {964.30,1203.20,-89.00,1197.30,1403.20,110.90}}, | |
181 | {"Blackfield", {964.30,1403.20,-89.00,1197.30,1726.20,110.90}}, | |
182 | {"Blackfield Chapel", {1375.60,596.30,-89.00,1558.00,823.20,110.90}}, | |
183 | {"Blackfield Chapel", {1325.60,596.30,-89.00,1375.60,795.00,110.90}}, | |
184 | {"Blackfield Intersection", {1197.30,1044.60,-89.00,1277.00,1163.30,110.90}}, | |
185 | {"Blackfield Intersection", {1166.50,795.00,-89.00,1375.60,1044.60,110.90}}, | |
186 | {"Blackfield Intersection", {1277.00,1044.60,-89.00,1315.30,1087.60,110.90}}, | |
187 | {"Blackfield Intersection", {1375.60,823.20,-89.00,1457.30,919.40,110.90}}, | |
188 | {"Blueberry", {104.50,-220.10,2.30,349.60,152.20,200.00}}, | |
189 | {"Blueberry", {19.60,-404.10,3.80,349.60,-220.10,200.00}}, | |
190 | {"Blueberry Acres", {-319.60,-220.10,0.00,104.50,293.30,200.00}}, | |
191 | {"Caligula's Palace", {2087.30,1543.20,-89.00,2437.30,1703.20,110.90}}, | |
192 | {"Caligula's Palace", {2137.40,1703.20,-89.00,2437.30,1783.20,110.90}}, | |
193 | {"Calton Heights", {-2274.10,744.10,-6.10,-1982.30,1358.90,200.00}}, | |
194 | {"Chinatown", {-2274.10,578.30,-7.60,-2078.60,744.10,200.00}}, | |
195 | {"City Hall", {-2867.80,277.40,-9.10,-2593.40,458.40,200.00}}, | |
196 | {"Come-A-Lot", {2087.30,943.20,-89.00,2623.10,1203.20,110.90}}, | |
197 | {"Commerce", {1323.90,-1842.20,-89.00,1701.90,-1722.20,110.90}}, | |
198 | {"Commerce", {1323.90,-1722.20,-89.00,1440.90,-1577.50,110.90}}, | |
199 | {"Commerce", {1370.80,-1577.50,-89.00,1463.90,-1384.90,110.90}}, | |
200 | {"Commerce", {1463.90,-1577.50,-89.00,1667.90,-1430.80,110.90}}, | |
201 | {"Commerce", {1583.50,-1722.20,-89.00,1758.90,-1577.50,110.90}}, | |
202 | {"Commerce", {1667.90,-1577.50,-89.00,1812.60,-1430.80,110.90}}, | |
203 | {"Conference Center", {1046.10,-1804.20,-89.00,1323.90,-1722.20,110.90}}, | |
204 | {"Conference Center", {1073.20,-1842.20,-89.00,1323.90,-1804.20,110.90}}, | |
205 | {"Cranberry Station", {-2007.80,56.30,0.00,-1922.00,224.70,100.00}}, | |
206 | {"Creek", {2749.90,1937.20,-89.00,2921.60,2669.70,110.90}}, | |
207 | {"Dillimore", {580.70,-674.80,-9.50,861.00,-404.70,200.00}}, | |
208 | {"Doherty", {-2270.00,-324.10,-0.00,-1794.90,-222.50,200.00}}, | |
209 | {"Doherty", {-2173.00,-222.50,-0.00,-1794.90,265.20,200.00}}, | |
210 | {"Downtown", {-1982.30,744.10,-6.10,-1871.70,1274.20,200.00}}, | |
211 | {"Downtown", {-1871.70,1176.40,-4.50,-1620.30,1274.20,200.00}}, | |
212 | {"Downtown", {-1700.00,744.20,-6.10,-1580.00,1176.50,200.00}}, | |
213 | {"Downtown", {-1580.00,744.20,-6.10,-1499.80,1025.90,200.00}}, | |
214 | {"Downtown", {-2078.60,578.30,-7.60,-1499.80,744.20,200.00}}, | |
215 | {"Downtown", {-1993.20,265.20,-9.10,-1794.90,578.30,200.00}}, | |
216 | {"Downtown Los Santos", {1463.90,-1430.80,-89.00,1724.70,-1290.80,110.90}}, | |
217 | {"Downtown Los Santos", {1724.70,-1430.80,-89.00,1812.60,-1250.90,110.90}}, | |
218 | {"Downtown Los Santos", {1463.90,-1290.80,-89.00,1724.70,-1150.80,110.90}}, | |
219 | {"Downtown Los Santos", {1370.80,-1384.90,-89.00,1463.90,-1170.80,110.90}}, | |
220 | {"Downtown Los Santos", {1724.70,-1250.90,-89.00,1812.60,-1150.80,110.90}}, | |
221 | {"Downtown Los Santos", {1370.80,-1170.80,-89.00,1463.90,-1130.80,110.90}}, | |
222 | {"Downtown Los Santos", {1378.30,-1130.80,-89.00,1463.90,-1026.30,110.90}}, | |
223 | {"Downtown Los Santos", {1391.00,-1026.30,-89.00,1463.90,-926.90,110.90}}, | |
224 | {"Downtown Los Santos", {1507.50,-1385.20,110.90,1582.50,-1325.30,335.90}}, | |
225 | {"East Beach", {2632.80,-1852.80,-89.00,2959.30,-1668.10,110.90}}, | |
226 | {"East Beach", {2632.80,-1668.10,-89.00,2747.70,-1393.40,110.90}}, | |
227 | {"East Beach", {2747.70,-1668.10,-89.00,2959.30,-1498.60,110.90}}, | |
228 | {"East Beach", {2747.70,-1498.60,-89.00,2959.30,-1120.00,110.90}}, | |
229 | {"East Los Santos", {2421.00,-1628.50,-89.00,2632.80,-1454.30,110.90}}, | |
230 | {"East Los Santos", {2222.50,-1628.50,-89.00,2421.00,-1494.00,110.90}}, | |
231 | {"East Los Santos", {2266.20,-1494.00,-89.00,2381.60,-1372.00,110.90}}, | |
232 | {"East Los Santos", {2381.60,-1494.00,-89.00,2421.00,-1454.30,110.90}}, | |
233 | {"East Los Santos", {2281.40,-1372.00,-89.00,2381.60,-1135.00,110.90}}, | |
234 | {"East Los Santos", {2381.60,-1454.30,-89.00,2462.10,-1135.00,110.90}}, | |
235 | {"East Los Santos", {2462.10,-1454.30,-89.00,2581.70,-1135.00,110.90}}, | |
236 | {"Easter Basin", {-1794.90,249.90,-9.10,-1242.90,578.30,200.00}}, | |
237 | {"Easter Basin", {-1794.90,-50.00,-0.00,-1499.80,249.90,200.00}}, | |
238 | {"Easter Bay Airport", {-1499.80,-50.00,-0.00,-1242.90,249.90,200.00}}, | |
239 | {"Easter Bay Airport", {-1794.90,-730.10,-3.00,-1213.90,-50.00,200.00}}, | |
240 | {"Easter Bay Airport", {-1213.90,-730.10,0.00,-1132.80,-50.00,200.00}}, | |
241 | {"Easter Bay Airport", {-1242.90,-50.00,0.00,-1213.90,578.30,200.00}}, | |
242 | {"Easter Bay Airport", {-1213.90,-50.00,-4.50,-947.90,578.30,200.00}}, | |
243 | {"Easter Bay Airport", {-1315.40,-405.30,15.40,-1264.40,-209.50,25.40}}, | |
244 | {"Easter Bay Airport", {-1354.30,-287.30,15.40,-1315.40,-209.50,25.40}}, | |
245 | {"Easter Bay Airport", {-1490.30,-209.50,15.40,-1264.40,-148.30,25.40}}, | |
246 | {"Easter Bay Chemicals", {-1132.80,-768.00,0.00,-956.40,-578.10,200.00}}, | |
247 | {"Easter Bay Chemicals", {-1132.80,-787.30,0.00,-956.40,-768.00,200.00}}, | |
248 | {"El Castillo del Diablo", {-464.50,2217.60,0.00,-208.50,2580.30,200.00}}, | |
249 | {"El Castillo del Diablo", {-208.50,2123.00,-7.60,114.00,2337.10,200.00}}, | |
250 | {"El Castillo del Diablo", {-208.50,2337.10,0.00,8.40,2487.10,200.00}}, | |
251 | {"El Corona", {1812.60,-2179.20,-89.00,1970.60,-1852.80,110.90}}, | |
252 | {"El Corona", {1692.60,-2179.20,-89.00,1812.60,-1842.20,110.90}}, | |
253 | {"El Quebrados", {-1645.20,2498.50,0.00,-1372.10,2777.80,200.00}}, | |
254 | {"Esplanade East", {-1620.30,1176.50,-4.50,-1580.00,1274.20,200.00}}, | |
255 | {"Esplanade East", {-1580.00,1025.90,-6.10,-1499.80,1274.20,200.00}}, | |
256 | {"Esplanade East", {-1499.80,578.30,-79.60,-1339.80,1274.20,20.30}}, | |
257 | {"Esplanade North", {-2533.00,1358.90,-4.50,-1996.60,1501.20,200.00}}, | |
258 | {"Esplanade North", {-1996.60,1358.90,-4.50,-1524.20,1592.50,200.00}}, | |
259 | {"Esplanade North", {-1982.30,1274.20,-4.50,-1524.20,1358.90,200.00}}, | |
260 | {"Fallen Tree", {-792.20,-698.50,-5.30,-452.40,-380.00,200.00}}, | |
261 | {"Fallow Bridge", {434.30,366.50,0.00,603.00,555.60,200.00}}, | |
262 | {"Fern Ridge", {508.10,-139.20,0.00,1306.60,119.50,200.00}}, | |
263 | {"Financial", {-1871.70,744.10,-6.10,-1701.30,1176.40,300.00}}, | |
264 | {"Fisher's Lagoon", {1916.90,-233.30,-100.00,2131.70,13.80,200.00}}, | |
265 | {"Flint Intersection", {-187.70,-1596.70,-89.00,17.00,-1276.60,110.90}}, | |
266 | {"Flint Range", {-594.10,-1648.50,0.00,-187.70,-1276.60,200.00}}, | |
267 | {"Fort Carson", {-376.20,826.30,-3.00,123.70,1220.40,200.00}}, | |
268 | {"Foster Valley", {-2270.00,-430.20,-0.00,-2178.60,-324.10,200.00}}, | |
269 | {"Foster Valley", {-2178.60,-599.80,-0.00,-1794.90,-324.10,200.00}}, | |
270 | {"Foster Valley", {-2178.60,-1115.50,0.00,-1794.90,-599.80,200.00}}, | |
271 | {"Foster Valley", {-2178.60,-1250.90,0.00,-1794.90,-1115.50,200.00}}, | |
272 | {"Frederick Bridge", {2759.20,296.50,0.00,2774.20,594.70,200.00}}, | |
273 | {"Gant Bridge", {-2741.40,1659.60,-6.10,-2616.40,2175.10,200.00}}, | |
274 | {"Gant Bridge", {-2741.00,1490.40,-6.10,-2616.40,1659.60,200.00}}, | |
275 | {"Ganton", {2222.50,-1852.80,-89.00,2632.80,-1722.30,110.90}}, | |
276 | {"Ganton", {2222.50,-1722.30,-89.00,2632.80,-1628.50,110.90}}, | |
277 | {"Garcia", {-2411.20,-222.50,-0.00,-2173.00,265.20,200.00}}, | |
278 | {"Garcia", {-2395.10,-222.50,-5.30,-2354.00,-204.70,200.00}}, | |
279 | {"Garver Bridge", {-1339.80,828.10,-89.00,-1213.90,1057.00,110.90}}, | |
280 | {"Garver Bridge", {-1213.90,950.00,-89.00,-1087.90,1178.90,110.90}}, | |
281 | {"Garver Bridge", {-1499.80,696.40,-179.60,-1339.80,925.30,20.30}}, | |
282 | {"Glen Park", {1812.60,-1449.60,-89.00,1996.90,-1350.70,110.90}}, | |
283 | {"Glen Park", {1812.60,-1100.80,-89.00,1994.30,-973.30,110.90}}, | |
284 | {"Glen Park", {1812.60,-1350.70,-89.00,2056.80,-1100.80,110.90}}, | |
285 | {"Green Palms", {176.50,1305.40,-3.00,338.60,1520.70,200.00}}, | |
286 | {"Greenglass College", {964.30,1044.60,-89.00,1197.30,1203.20,110.90}}, | |
287 | {"Greenglass College", {964.30,930.80,-89.00,1166.50,1044.60,110.90}}, | |
288 | {"Hampton Barns", {603.00,264.30,0.00,761.90,366.50,200.00}}, | |
289 | {"Hankypanky Point", {2576.90,62.10,0.00,2759.20,385.50,200.00}}, | |
290 | {"Harry Gold Parkway", {1777.30,863.20,-89.00,1817.30,2342.80,110.90}}, | |
291 | {"Hashbury", {-2593.40,-222.50,-0.00,-2411.20,54.70,200.00}}, | |
292 | {"Hilltop Farm", {967.30,-450.30,-3.00,1176.70,-217.90,200.00}}, | |
293 | {"Hunter Quarry", {337.20,710.80,-115.20,860.50,1031.70,203.70}}, | |
294 | {"Idlewood", {1812.60,-1852.80,-89.00,1971.60,-1742.30,110.90}}, | |
295 | {"Idlewood", {1812.60,-1742.30,-89.00,1951.60,-1602.30,110.90}}, | |
296 | {"Idlewood", {1951.60,-1742.30,-89.00,2124.60,-1602.30,110.90}}, | |
297 | {"Idlewood", {1812.60,-1602.30,-89.00,2124.60,-1449.60,110.90}}, | |
298 | {"Idlewood", {2124.60,-1742.30,-89.00,2222.50,-1494.00,110.90}}, | |
299 | {"Idlewood", {1971.60,-1852.80,-89.00,2222.50,-1742.30,110.90}}, | |
300 | {"Jefferson", {1996.90,-1449.60,-89.00,2056.80,-1350.70,110.90}}, | |
301 | {"Jefferson", {2124.60,-1494.00,-89.00,2266.20,-1449.60,110.90}}, | |
302 | {"Jefferson", {2056.80,-1372.00,-89.00,2281.40,-1210.70,110.90}}, | |
303 | {"Jefferson", {2056.80,-1210.70,-89.00,2185.30,-1126.30,110.90}}, | |
304 | {"Jefferson", {2185.30,-1210.70,-89.00,2281.40,-1154.50,110.90}}, | |
305 | {"Jefferson", {2056.80,-1449.60,-89.00,2266.20,-1372.00,110.90}}, | |
306 | {"Julius Thruway East", {2623.10,943.20,-89.00,2749.90,1055.90,110.90}}, | |
307 | {"Julius Thruway East", {2685.10,1055.90,-89.00,2749.90,2626.50,110.90}}, | |
308 | {"Julius Thruway East", {2536.40,2442.50,-89.00,2685.10,2542.50,110.90}}, | |
309 | {"Julius Thruway East", {2625.10,2202.70,-89.00,2685.10,2442.50,110.90}}, | |
310 | {"Julius Thruway North", {2498.20,2542.50,-89.00,2685.10,2626.50,110.90}}, | |
311 | {"Julius Thruway North", {2237.40,2542.50,-89.00,2498.20,2663.10,110.90}}, | |
312 | {"Julius Thruway North", {2121.40,2508.20,-89.00,2237.40,2663.10,110.90}}, | |
313 | {"Julius Thruway North", {1938.80,2508.20,-89.00,2121.40,2624.20,110.90}}, | |
314 | {"Julius Thruway North", {1534.50,2433.20,-89.00,1848.40,2583.20,110.90}}, | |
315 | {"Julius Thruway North", {1848.40,2478.40,-89.00,1938.80,2553.40,110.90}}, | |
316 | {"Julius Thruway North", {1704.50,2342.80,-89.00,1848.40,2433.20,110.90}}, | |
317 | {"Julius Thruway North", {1377.30,2433.20,-89.00,1534.50,2507.20,110.90}}, | |
318 | {"Julius Thruway South", {1457.30,823.20,-89.00,2377.30,863.20,110.90}}, | |
319 | {"Julius Thruway South", {2377.30,788.80,-89.00,2537.30,897.90,110.90}}, | |
320 | {"Julius Thruway West", {1197.30,1163.30,-89.00,1236.60,2243.20,110.90}}, | |
321 | {"Julius Thruway West", {1236.60,2142.80,-89.00,1297.40,2243.20,110.90}}, | |
322 | {"Juniper Hill", {-2533.00,578.30,-7.60,-2274.10,968.30,200.00}}, | |
323 | {"Juniper Hollow", {-2533.00,968.30,-6.10,-2274.10,1358.90,200.00}}, | |
324 | {"K.A.C.C. Military Fuels", {2498.20,2626.50,-89.00,2749.90,2861.50,110.90}}, | |
325 | {"Kincaid Bridge", {-1339.80,599.20,-89.00,-1213.90,828.10,110.90}}, | |
326 | {"Kincaid Bridge", {-1213.90,721.10,-89.00,-1087.90,950.00,110.90}}, | |
327 | {"Kincaid Bridge", {-1087.90,855.30,-89.00,-961.90,986.20,110.90}}, | |
328 | {"King's", {-2329.30,458.40,-7.60,-1993.20,578.30,200.00}}, | |
329 | {"King's", {-2411.20,265.20,-9.10,-1993.20,373.50,200.00}}, | |
330 | {"King's", {-2253.50,373.50,-9.10,-1993.20,458.40,200.00}}, | |
331 | {"LVA Freight Depot", {1457.30,863.20,-89.00,1777.40,1143.20,110.90}}, | |
332 | {"LVA Freight Depot", {1375.60,919.40,-89.00,1457.30,1203.20,110.90}}, | |
333 | {"LVA Freight Depot", {1277.00,1087.60,-89.00,1375.60,1203.20,110.90}}, | |
334 | {"LVA Freight Depot", {1315.30,1044.60,-89.00,1375.60,1087.60,110.90}}, | |
335 | {"LVA Freight Depot", {1236.60,1163.40,-89.00,1277.00,1203.20,110.90}}, | |
336 | {"Las Barrancas", {-926.10,1398.70,-3.00,-719.20,1634.60,200.00}}, | |
337 | {"Las Brujas", {-365.10,2123.00,-3.00,-208.50,2217.60,200.00}}, | |
338 | {"Las Colinas", {1994.30,-1100.80,-89.00,2056.80,-920.80,110.90}}, | |
339 | {"Las Colinas", {2056.80,-1126.30,-89.00,2126.80,-920.80,110.90}}, | |
340 | {"Las Colinas", {2185.30,-1154.50,-89.00,2281.40,-934.40,110.90}}, | |
341 | {"Las Colinas", {2126.80,-1126.30,-89.00,2185.30,-934.40,110.90}}, | |
342 | {"Las Colinas", {2747.70,-1120.00,-89.00,2959.30,-945.00,110.90}}, | |
343 | {"Las Colinas", {2632.70,-1135.00,-89.00,2747.70,-945.00,110.90}}, | |
344 | {"Las Colinas", {2281.40,-1135.00,-89.00,2632.70,-945.00,110.90}}, | |
345 | {"Las Payasadas", {-354.30,2580.30,2.00,-133.60,2816.80,200.00}}, | |
346 | {"Las Venturas Airport", {1236.60,1203.20,-89.00,1457.30,1883.10,110.90}}, | |
347 | {"Las Venturas Airport", {1457.30,1203.20,-89.00,1777.30,1883.10,110.90}}, | |
348 | {"Las Venturas Airport", {1457.30,1143.20,-89.00,1777.40,1203.20,110.90}}, | |
349 | {"Las Venturas Airport", {1515.80,1586.40,-12.50,1729.90,1714.50,87.50}}, | |
350 | {"Last Dime Motel", {1823.00,596.30,-89.00,1997.20,823.20,110.90}}, | |
351 | {"Leafy Hollow", {-1166.90,-1856.00,0.00,-815.60,-1602.00,200.00}}, | |
352 | {"Liberty City", {-1000.00,400.00,1300.00,-700.00,600.00,1400.00}}, | |
353 | {"Lil' Probe Inn", {-90.20,1286.80,-3.00,153.80,1554.10,200.00}}, | |
354 | {"Linden Side", {2749.90,943.20,-89.00,2923.30,1198.90,110.90}}, | |
355 | {"Linden Station", {2749.90,1198.90,-89.00,2923.30,1548.90,110.90}}, | |
356 | {"Linden Station", {2811.20,1229.50,-39.50,2861.20,1407.50,60.40}}, | |
357 | {"Little Mexico", {1701.90,-1842.20,-89.00,1812.60,-1722.20,110.90}}, | |
358 | {"Little Mexico", {1758.90,-1722.20,-89.00,1812.60,-1577.50,110.90}}, | |
359 | {"Los Flores", {2581.70,-1454.30,-89.00,2632.80,-1393.40,110.90}}, | |
360 | {"Los Flores", {2581.70,-1393.40,-89.00,2747.70,-1135.00,110.90}}, | |
361 | {"Los Santos International", {1249.60,-2394.30,-89.00,1852.00,-2179.20,110.90}}, | |
362 | {"Los Santos International", {1852.00,-2394.30,-89.00,2089.00,-2179.20,110.90}}, | |
363 | {"Los Santos International", {1382.70,-2730.80,-89.00,2201.80,-2394.30,110.90}}, | |
364 | {"Los Santos International", {1974.60,-2394.30,-39.00,2089.00,-2256.50,60.90}}, | |
365 | {"Los Santos International", {1400.90,-2669.20,-39.00,2189.80,-2597.20,60.90}}, | |
366 | {"Los Santos International", {2051.60,-2597.20,-39.00,2152.40,-2394.30,60.90}}, | |
367 | {"Marina", {647.70,-1804.20,-89.00,851.40,-1577.50,110.90}}, | |
368 | {"Marina", {647.70,-1577.50,-89.00,807.90,-1416.20,110.90}}, | |
369 | {"Marina", {807.90,-1577.50,-89.00,926.90,-1416.20,110.90}}, | |
370 | {"Market", {787.40,-1416.20,-89.00,1072.60,-1310.20,110.90}}, | |
371 | {"Market", {952.60,-1310.20,-89.00,1072.60,-1130.80,110.90}}, | |
372 | {"Market", {1072.60,-1416.20,-89.00,1370.80,-1130.80,110.90}}, | |
373 | {"Market", {926.90,-1577.50,-89.00,1370.80,-1416.20,110.90}}, | |
374 | {"Market Station", {787.40,-1410.90,-34.10,866.00,-1310.20,65.80}}, | |
375 | {"Martin Bridge", {-222.10,293.30,0.00,-122.10,476.40,200.00}}, | |
376 | {"Missionary Hill", {-2994.40,-811.20,0.00,-2178.60,-430.20,200.00}}, | |
377 | {"Montgomery", {1119.50,119.50,-3.00,1451.40,493.30,200.00}}, | |
378 | {"Montgomery", {1451.40,347.40,-6.10,1582.40,420.80,200.00}}, | |
379 | {"Montgomery Intersection", {1546.60,208.10,0.00,1745.80,347.40,200.00}}, | |
380 | {"Montgomery Intersection", {1582.40,347.40,0.00,1664.60,401.70,200.00}}, | |
381 | {"Mulholland", {1414.00,-768.00,-89.00,1667.60,-452.40,110.90}}, | |
382 | {"Mulholland", {1281.10,-452.40,-89.00,1641.10,-290.90,110.90}}, | |
383 | {"Mulholland", {1269.10,-768.00,-89.00,1414.00,-452.40,110.90}}, | |
384 | {"Mulholland", {1357.00,-926.90,-89.00,1463.90,-768.00,110.90}}, | |
385 | {"Mulholland", {1318.10,-910.10,-89.00,1357.00,-768.00,110.90}}, | |
386 | {"Mulholland", {1169.10,-910.10,-89.00,1318.10,-768.00,110.90}}, | |
387 | {"Mulholland", {768.60,-954.60,-89.00,952.60,-860.60,110.90}}, | |
388 | {"Mulholland", {687.80,-860.60,-89.00,911.80,-768.00,110.90}}, | |
389 | {"Mulholland", {737.50,-768.00,-89.00,1142.20,-674.80,110.90}}, | |
390 | {"Mulholland", {1096.40,-910.10,-89.00,1169.10,-768.00,110.90}}, | |
391 | {"Mulholland", {952.60,-937.10,-89.00,1096.40,-860.60,110.90}}, | |
392 | {"Mulholland", {911.80,-860.60,-89.00,1096.40,-768.00,110.90}}, | |
393 | {"Mulholland", {861.00,-674.80,-89.00,1156.50,-600.80,110.90}}, | |
394 | {"Mulholland Intersection", {1463.90,-1150.80,-89.00,1812.60,-768.00,110.90}}, | |
395 | {"North Rock", {2285.30,-768.00,0.00,2770.50,-269.70,200.00}}, | |
396 | {"Ocean Docks", {2373.70,-2697.00,-89.00,2809.20,-2330.40,110.90}}, | |
397 | {"Ocean Docks", {2201.80,-2418.30,-89.00,2324.00,-2095.00,110.90}}, | |
398 | {"Ocean Docks", {2324.00,-2302.30,-89.00,2703.50,-2145.10,110.90}}, | |
399 | {"Ocean Docks", {2089.00,-2394.30,-89.00,2201.80,-2235.80,110.90}}, | |
400 | {"Ocean Docks", {2201.80,-2730.80,-89.00,2324.00,-2418.30,110.90}}, | |
401 | {"Ocean Docks", {2703.50,-2302.30,-89.00,2959.30,-2126.90,110.90}}, | |
402 | {"Ocean Docks", {2324.00,-2145.10,-89.00,2703.50,-2059.20,110.90}}, | |
403 | {"Ocean Flats", {-2994.40,277.40,-9.10,-2867.80,458.40,200.00}}, | |
404 | {"Ocean Flats", {-2994.40,-222.50,-0.00,-2593.40,277.40,200.00}}, | |
405 | {"Ocean Flats", {-2994.40,-430.20,-0.00,-2831.80,-222.50,200.00}}, | |
406 | {"Octane Springs", {338.60,1228.50,0.00,664.30,1655.00,200.00}}, | |
407 | {"Old Venturas Strip", {2162.30,2012.10,-89.00,2685.10,2202.70,110.90}}, | |
408 | {"Palisades", {-2994.40,458.40,-6.10,-2741.00,1339.60,200.00}}, | |
409 | {"Palomino Creek", {2160.20,-149.00,0.00,2576.90,228.30,200.00}}, | |
410 | {"Paradiso", {-2741.00,793.40,-6.10,-2533.00,1268.40,200.00}}, | |
411 | {"Pershing Square", {1440.90,-1722.20,-89.00,1583.50,-1577.50,110.90}}, | |
412 | {"Pilgrim", {2437.30,1383.20,-89.00,2624.40,1783.20,110.90}}, | |
413 | {"Pilgrim", {2624.40,1383.20,-89.00,2685.10,1783.20,110.90}}, | |
414 | {"Pilson Intersection", {1098.30,2243.20,-89.00,1377.30,2507.20,110.90}}, | |
415 | {"Pirates in Men's Pants", {1817.30,1469.20,-89.00,2027.40,1703.20,110.90}}, | |
416 | {"Playa del Seville", {2703.50,-2126.90,-89.00,2959.30,-1852.80,110.90}}, | |
417 | {"Prickle Pine", {1534.50,2583.20,-89.00,1848.40,2863.20,110.90}}, | |
418 | {"Prickle Pine", {1117.40,2507.20,-89.00,1534.50,2723.20,110.90}}, | |
419 | {"Prickle Pine", {1848.40,2553.40,-89.00,1938.80,2863.20,110.90}}, | |
420 | {"Prickle Pine", {1938.80,2624.20,-89.00,2121.40,2861.50,110.90}}, | |
421 | {"Queens", {-2533.00,458.40,0.00,-2329.30,578.30,200.00}}, | |
422 | {"Queens", {-2593.40,54.70,0.00,-2411.20,458.40,200.00}}, | |
423 | {"Queens", {-2411.20,373.50,0.00,-2253.50,458.40,200.00}}, | |
424 | {"Randolph Industrial Estate", {1558.00,596.30,-89.00,1823.00,823.20,110.90}}, | |
425 | {"Redsands East", {1817.30,2011.80,-89.00,2106.70,2202.70,110.90}}, | |
426 | {"Redsands East", {1817.30,2202.70,-89.00,2011.90,2342.80,110.90}}, | |
427 | {"Redsands East", {1848.40,2342.80,-89.00,2011.90,2478.40,110.90}}, | |
428 | {"Redsands West", {1236.60,1883.10,-89.00,1777.30,2142.80,110.90}}, | |
429 | {"Redsands West", {1297.40,2142.80,-89.00,1777.30,2243.20,110.90}}, | |
430 | {"Redsands West", {1377.30,2243.20,-89.00,1704.50,2433.20,110.90}}, | |
431 | {"Redsands West", {1704.50,2243.20,-89.00,1777.30,2342.80,110.90}}, | |
432 | {"Regular Tom", {-405.70,1712.80,-3.00,-276.70,1892.70,200.00}}, | |
433 | {"Richman", {647.50,-1118.20,-89.00,787.40,-954.60,110.90}}, | |
434 | {"Richman", {647.50,-954.60,-89.00,768.60,-860.60,110.90}}, | |
435 | {"Richman", {225.10,-1369.60,-89.00,334.50,-1292.00,110.90}}, | |
436 | {"Richman", {225.10,-1292.00,-89.00,466.20,-1235.00,110.90}}, | |
437 | {"Richman", {72.60,-1404.90,-89.00,225.10,-1235.00,110.90}}, | |
438 | {"Richman", {72.60,-1235.00,-89.00,321.30,-1008.10,110.90}}, | |
439 | {"Richman", {321.30,-1235.00,-89.00,647.50,-1044.00,110.90}}, | |
440 | {"Richman", {321.30,-1044.00,-89.00,647.50,-860.60,110.90}}, | |
441 | {"Richman", {321.30,-860.60,-89.00,687.80,-768.00,110.90}}, | |
442 | {"Richman", {321.30,-768.00,-89.00,700.70,-674.80,110.90}}, | |
443 | {"Robada Intersection", {-1119.00,1178.90,-89.00,-862.00,1351.40,110.90}}, | |
444 | {"Roca Escalante", {2237.40,2202.70,-89.00,2536.40,2542.50,110.90}}, | |
445 | {"Roca Escalante", {2536.40,2202.70,-89.00,2625.10,2442.50,110.90}}, | |
446 | {"Rockshore East", {2537.30,676.50,-89.00,2902.30,943.20,110.90}}, | |
447 | {"Rockshore West", {1997.20,596.30,-89.00,2377.30,823.20,110.90}}, | |
448 | {"Rockshore West", {2377.30,596.30,-89.00,2537.30,788.80,110.90}}, | |
449 | {"Rodeo", {72.60,-1684.60,-89.00,225.10,-1544.10,110.90}}, | |
450 | {"Rodeo", {72.60,-1544.10,-89.00,225.10,-1404.90,110.90}}, | |
451 | {"Rodeo", {225.10,-1684.60,-89.00,312.80,-1501.90,110.90}}, | |
452 | {"Rodeo", {225.10,-1501.90,-89.00,334.50,-1369.60,110.90}}, | |
453 | {"Rodeo", {334.50,-1501.90,-89.00,422.60,-1406.00,110.90}}, | |
454 | {"Rodeo", {312.80,-1684.60,-89.00,422.60,-1501.90,110.90}}, | |
455 | {"Rodeo", {422.60,-1684.60,-89.00,558.00,-1570.20,110.90}}, | |
456 | {"Rodeo", {558.00,-1684.60,-89.00,647.50,-1384.90,110.90}}, | |
457 | {"Rodeo", {466.20,-1570.20,-89.00,558.00,-1385.00,110.90}}, | |
458 | {"Rodeo", {422.60,-1570.20,-89.00,466.20,-1406.00,110.90}}, | |
459 | {"Rodeo", {466.20,-1385.00,-89.00,647.50,-1235.00,110.90}}, | |
460 | {"Rodeo", {334.50,-1406.00,-89.00,466.20,-1292.00,110.90}}, | |
461 | {"Royal Casino", {2087.30,1383.20,-89.00,2437.30,1543.20,110.90}}, | |
462 | {"San Andreas Sound", {2450.30,385.50,-100.00,2759.20,562.30,200.00}}, | |
463 | {"Santa Flora", {-2741.00,458.40,-7.60,-2533.00,793.40,200.00}}, | |
464 | {"Santa Maria Beach", {342.60,-2173.20,-89.00,647.70,-1684.60,110.90}}, | |
465 | {"Santa Maria Beach", {72.60,-2173.20,-89.00,342.60,-1684.60,110.90}}, | |
466 | {"Shady Cabin", {-1632.80,-2263.40,-3.00,-1601.30,-2231.70,200.00}}, | |
467 | {"Shady Creeks", {-1820.60,-2643.60,-8.00,-1226.70,-1771.60,200.00}}, | |
468 | {"Shady Creeks", {-2030.10,-2174.80,-6.10,-1820.60,-1771.60,200.00}}, | |
469 | {"Sobell Rail Yards", {2749.90,1548.90,-89.00,2923.30,1937.20,110.90}}, | |
470 | {"Spinybed", {2121.40,2663.10,-89.00,2498.20,2861.50,110.90}}, | |
471 | {"Starfish Casino", {2437.30,1783.20,-89.00,2685.10,2012.10,110.90}}, | |
472 | {"Starfish Casino", {2437.30,1858.10,-39.00,2495.00,1970.80,60.90}}, | |
473 | {"Starfish Casino", {2162.30,1883.20,-89.00,2437.30,2012.10,110.90}}, | |
474 | {"Temple", {1252.30,-1130.80,-89.00,1378.30,-1026.30,110.90}}, | |
475 | {"Temple", {1252.30,-1026.30,-89.00,1391.00,-926.90,110.90}}, | |
476 | {"Temple", {1252.30,-926.90,-89.00,1357.00,-910.10,110.90}}, | |
477 | {"Temple", {952.60,-1130.80,-89.00,1096.40,-937.10,110.90}}, | |
478 | {"Temple", {1096.40,-1130.80,-89.00,1252.30,-1026.30,110.90}}, | |
479 | {"Temple", {1096.40,-1026.30,-89.00,1252.30,-910.10,110.90}}, | |
480 | {"The Camel's Toe", {2087.30,1203.20,-89.00,2640.40,1383.20,110.90}}, | |
481 | {"The Clown's Pocket", {2162.30,1783.20,-89.00,2437.30,1883.20,110.90}}, | |
482 | {"The Emerald Isle", {2011.90,2202.70,-89.00,2237.40,2508.20,110.90}}, | |
483 | {"The Farm", {-1209.60,-1317.10,114.90,-908.10,-787.30,251.90}}, | |
484 | {"The Four Dragons Casino", {1817.30,863.20,-89.00,2027.30,1083.20,110.90}}, | |
485 | {"The High Roller", {1817.30,1283.20,-89.00,2027.30,1469.20,110.90}}, | |
486 | {"The Mako Span", {1664.60,401.70,0.00,1785.10,567.20,200.00}}, | |
487 | {"The Panopticon", {-947.90,-304.30,-1.10,-319.60,327.00,200.00}}, | |
488 | {"The Pink Swan", {1817.30,1083.20,-89.00,2027.30,1283.20,110.90}}, | |
489 | {"The Sherman Dam", {-968.70,1929.40,-3.00,-481.10,2155.20,200.00}}, | |
490 | {"The Strip", {2027.40,863.20,-89.00,2087.30,1703.20,110.90}}, | |
491 | {"The Strip", {2106.70,1863.20,-89.00,2162.30,2202.70,110.90}}, | |
492 | {"The Strip", {2027.40,1783.20,-89.00,2162.30,1863.20,110.90}}, | |
493 | {"The Strip", {2027.40,1703.20,-89.00,2137.40,1783.20,110.90}}, | |
494 | {"The Visage", {1817.30,1863.20,-89.00,2106.70,2011.80,110.90}}, | |
495 | {"The Visage", {1817.30,1703.20,-89.00,2027.40,1863.20,110.90}}, | |
496 | {"Unity Station", {1692.60,-1971.80,-20.40,1812.60,-1932.80,79.50}}, | |
497 | {"Valle Ocultado", {-936.60,2611.40,2.00,-715.90,2847.90,200.00}}, | |
498 | {"Verdant Bluffs", {930.20,-2488.40,-89.00,1249.60,-2006.70,110.90}}, | |
499 | {"Verdant Bluffs", {1073.20,-2006.70,-89.00,1249.60,-1842.20,110.90}}, | |
500 | {"Verdant Bluffs", {1249.60,-2179.20,-89.00,1692.60,-1842.20,110.90}}, | |
501 | {"Verdant Meadows", {37.00,2337.10,-3.00,435.90,2677.90,200.00}}, | |
502 | {"Verona Beach", {647.70,-2173.20,-89.00,930.20,-1804.20,110.90}}, | |
503 | {"Verona Beach", {930.20,-2006.70,-89.00,1073.20,-1804.20,110.90}}, | |
504 | {"Verona Beach", {851.40,-1804.20,-89.00,1046.10,-1577.50,110.90}}, | |
505 | {"Verona Beach", {1161.50,-1722.20,-89.00,1323.90,-1577.50,110.90}}, | |
506 | {"Verona Beach", {1046.10,-1722.20,-89.00,1161.50,-1577.50,110.90}}, | |
507 | {"Vinewood", {787.40,-1310.20,-89.00,952.60,-1130.80,110.90}}, | |
508 | {"Vinewood", {787.40,-1130.80,-89.00,952.60,-954.60,110.90}}, | |
509 | {"Vinewood", {647.50,-1227.20,-89.00,787.40,-1118.20,110.90}}, | |
510 | {"Vinewood", {647.70,-1416.20,-89.00,787.40,-1227.20,110.90}}, | |
511 | {"Whitewood Estates", {883.30,1726.20,-89.00,1098.30,2507.20,110.90}}, | |
512 | {"Whitewood Estates", {1098.30,1726.20,-89.00,1197.30,2243.20,110.90}}, | |
513 | {"Willowfield", {1970.60,-2179.20,-89.00,2089.00,-1852.80,110.90}}, | |
514 | {"Willowfield", {2089.00,-2235.80,-89.00,2201.80,-1989.90,110.90}}, | |
515 | {"Willowfield", {2089.00,-1989.90,-89.00,2324.00,-1852.80,110.90}}, | |
516 | {"Willowfield", {2201.80,-2095.00,-89.00,2324.00,-1989.90,110.90}}, | |
517 | {"Willowfield", {2541.70,-1941.40,-89.00,2703.50,-1852.80,110.90}}, | |
518 | {"Willowfield", {2324.00,-2059.20,-89.00,2541.70,-1852.80,110.90}}, | |
519 | {"Willowfield", {2541.70,-2059.20,-89.00,2703.50,-1941.40,110.90}}, | |
520 | {"Yellow Bell Station", {1377.40,2600.40,-21.90,1492.40,2687.30,78.00}}, | |
521 | {"Los Santos", {44.60,-2892.90,-242.90,2997.00,-768.00,900.00}}, | |
522 | {"Las Venturas", {869.40,596.30,-242.90,2997.00,2993.80,900.00}}, | |
523 | {"Bone County", {-480.50,596.30,-242.90,869.40,2993.80,900.00}}, | |
524 | {"Tierra Robada", {-2997.40,1659.60,-242.90,-480.50,2993.80,900.00}}, | |
525 | {"Tierra Robada", {-1213.90,596.30,-242.90,-480.50,1659.60,900.00}}, | |
526 | {"San Fierro", {-2997.40,-1115.50,-242.90,-1213.90,1659.60,900.00}}, | |
527 | {"Red County", {-1213.90,-768.00,-242.90,2997.00,596.30,900.00}}, | |
528 | {"Flint County", {-1213.90,-2892.90,-242.90,44.60,-768.00,900.00}}, | |
529 | {"Whetstone", {-2997.40,-2892.90,-242.90,-1213.90,-1115.50,900.00}} | |
530 | }; | |
531 | ||
532 | public OnFilterScriptInit() | |
533 | { | |
534 | for(new c = 0;c < MAX_VEHICLES;c++) | |
535 | { | |
536 | Gas[c] = GasMAX; | |
537 | Desgaste[c] = DesgasteMAX; | |
538 | #if(BlindagemTodosVeiculos == 1) | |
539 | Blindagem[c] = 100; | |
540 | #endif | |
541 | } | |
542 | SetTimer("UpdateSpeedometer", 200, true); | |
543 | StoppedVehicleT = SetTimer("StoppedVehicle", Time, 1); | |
544 | CheckGasT = SetTimer("CheckGas", Time, 1); | |
545 | CheckDesT = SetTimer("CheckDes", TimeDes, 1); | |
546 | SetTimer("KMTraversed", 1000, true); | |
547 | ||
548 | Create3DTextLabel("Refueling, Tire Repair, Shield\n{FF7777}/jfsSpeedometer", -1, 1004.0070,-939.3102,42.1797, 20.0, 0, 1); | |
549 | Create3DTextLabel("Refueling, Tire Repair, Shield\n{FF7777}/jfsSpeedometer", -1, 1944.3260,-1772.9254,13.3906, 20.0, 0, 1); | |
550 | Create3DTextLabel("Refueling, Tire Repair, Shield\n{FF7777}/jfsSpeedometer", -1, -90.5515,-1169.4578,2.4079, 20.0, 0, 1); | |
551 | Create3DTextLabel("Refueling, Tire Repair, Shield\n{FF7777}/jfsSpeedometer", -1, -1609.7958,-2718.2048,48.5391, 20.0, 0, 1); | |
552 | Create3DTextLabel("Refueling, Tire Repair, Shield\n{FF7777}/jfsSpeedometer", -1, -2029.4968,156.4366,28.949, 20.0, 0, 1); | |
553 | Create3DTextLabel("Refueling, Tire Repair, Shield\n{FF7777}/jfsSpeedometer", -1, -2408.7590,976.0934,45.4175, 20.0, 0, 1); | |
554 | Create3DTextLabel("Refueling, Tire Repair, Shield\n{FF7777}/jfsSpeedometer", -1, -2243.9629,-2560.6477,31.8841, 20.0, 0, 1); | |
555 | Create3DTextLabel("Refueling, Tire Repair, Shield\n{FF7777}/jfsSpeedometer", -1, -1676.6323,414.0262,6.9484, 20.0, 0, 1); | |
556 | Create3DTextLabel("Refueling, Tire Repair, Shield\n{FF7777}/jfsSpeedometer", -1, 2202.2349,2474.3494,10.5258, 20.0, 0, 1); | |
557 | Create3DTextLabel("Refueling, Tire Repair, Shield\n{FF7777}/jfsSpeedometer", -1, 614.9333,1689.7418,6.6968, 20.0, 0, 1); | |
558 | Create3DTextLabel("Refueling, Tire Repair, Shield\n{FF7777}/jfsSpeedometer", -1, -1328.8250,2677.2173,49.7665, 20.0, 0, 1); | |
559 | Create3DTextLabel("Refueling, Tire Repair, Shield\n{FF7777}/jfsSpeedometer", -1, 70.3882,1218.6783,18.5165, 20.0, 0, 1); | |
560 | Create3DTextLabel("Refueling, Tire Repair, Shield\n{FF7777}/jfsSpeedometer", -1, 2113.7390,920.1079,10.5255, 20.0, 0, 1); | |
561 | Create3DTextLabel("Refueling, Tire Repair, Shield\n{FF7777}/jfsSpeedometer", -1, -1327.7218,2678.8723,50.0625, 20.0, 0, 1); | |
562 | Create3DTextLabel("Refueling, Tire Repair, Shield\n{FF7777}/jfsSpeedometer", -1, 2146.5759,2750.8442,10.6447, 20.0, 0, 1); | |
563 | Create3DTextLabel("Refueling, Tire Repair, Shield\n{FF7777}/jfsSpeedometer", -1, 2146.8779,2739.6157,10.6435, 20.0, 0, 1); | |
564 | Create3DTextLabel("Refueling, Tire Repair, Shield\n{FF7777}/jfsSpeedometer", -1, 1595.3046,2191.1331,10.6454, 20.0, 0, 1); | |
565 | Create3DTextLabel("Refueling, Tire Repair, Shield\n{FF7777}/jfsSpeedometer", -1, 1596.3274,2206.7070,10.6449, 20.0, 0, 1); | |
566 | Create3DTextLabel("Refueling, Tire Repair, Shield\n{FF7777}/jfsSpeedometer", -1, -736.9305,2742.6138,47.015, 20.0, 0, 1); | |
567 | ||
568 | return true; | |
569 | } | |
570 | ||
571 | public OnFilterScriptExit() | |
572 | { | |
573 | KillTimer(StoppedVehicleT); | |
574 | KillTimer(CheckGasT); | |
575 | KillTimer(CheckDesT); | |
576 | for(new i=0; i<MAXPLAYERSJFS; i++) | |
577 | { | |
578 | TextDrawDestroy(Text:TextDrawJFS[i]); | |
579 | TextDrawDestroy(Text:TextDrawJFSV[i]); | |
580 | } | |
581 | return true; | |
582 | } | |
583 | ||
584 | public OnPlayerConnect(playerid) | |
585 | { | |
586 | #if(POSICAO == 1) | |
587 | TextDrawJFS[playerid] = TextDrawCreate(479.000000, 340.000000, " "); // 288 | |
588 | TextDrawBackgroundColor(TextDrawJFS[playerid], 255); | |
589 | TextDrawLetterSize(TextDrawJFS[playerid], 0.255555, 0.999999); | |
590 | TextDrawFont(TextDrawJFS[playerid], 1); | |
591 | TextDrawTextSize(TextDrawJFS[playerid], 630.000000,-18.000000); | |
592 | TextDrawColor(TextDrawJFS[playerid], 16777215); | |
593 | TextDrawSetOutline(TextDrawJFS[playerid], 0); | |
594 | TextDrawSetProportional(TextDrawJFS[playerid], 1); | |
595 | TextDrawSetShadow(TextDrawJFS[playerid], 1); | |
596 | TextDrawUseBox(TextDrawJFS[playerid], 1); | |
597 | TextDrawBoxColor(TextDrawJFS[playerid], 80); | |
598 | ||
599 | TextDrawJFSV[playerid] = TextDrawCreate(556.000000, 325.000000, "JFS Speedometer"); | |
600 | TextDrawAlignment(TextDrawJFSV[playerid], 2); | |
601 | TextDrawBackgroundColor(TextDrawJFSV[playerid], 255); | |
602 | TextDrawFont(TextDrawJFSV[playerid], 3); | |
603 | TextDrawLetterSize(TextDrawJFSV[playerid], 0.379999, 1.299999); | |
604 | TextDrawColor(TextDrawJFSV[playerid], -1); | |
605 | TextDrawSetOutline(TextDrawJFSV[playerid], 1); | |
606 | TextDrawSetProportional(TextDrawJFSV[playerid], 1); | |
607 | ||
608 | #endif | |
609 | #if(POSICAO == 2) | |
610 | TextDrawJFS[playerid] = TextDrawCreate(150.000000, 349.000000, " "); | |
611 | TextDrawBackgroundColor(TextDrawJFS[playerid], 255); | |
612 | TextDrawLetterSize(TextDrawJFS[playerid], 0.255555, 0.999999); | |
613 | TextDrawFont(TextDrawJFS[playerid], 1); | |
614 | TextDrawTextSize(TextDrawJFS[playerid], 300.000000, 380.000000); | |
615 | TextDrawColor(TextDrawJFS[playerid], 16777215); | |
616 | TextDrawSetOutline(TextDrawJFS[playerid], 0); | |
617 | TextDrawSetProportional(TextDrawJFS[playerid], 1); | |
618 | TextDrawSetShadow(TextDrawJFS[playerid], 1); | |
619 | TextDrawUseBox(TextDrawJFS[playerid], 1); | |
620 | TextDrawBoxColor(TextDrawJFS[playerid], 80); | |
621 | ||
622 | TextDrawJFSV[playerid] = TextDrawCreate(224.000000, 334.000000, "JFS Speedometer"); | |
623 | TextDrawAlignment(TextDrawJFSV[playerid], 2); | |
624 | TextDrawBackgroundColor(TextDrawJFSV[playerid], 255); | |
625 | TextDrawFont(TextDrawJFSV[playerid], 3); | |
626 | TextDrawLetterSize(TextDrawJFSV[playerid], 0.379999, 1.299999); | |
627 | TextDrawColor(TextDrawJFSV[playerid], -1); | |
628 | TextDrawSetOutline(TextDrawJFSV[playerid], 1); | |
629 | TextDrawSetProportional(TextDrawJFSV[playerid], 1); | |
630 | #endif | |
631 | return 1; | |
632 | } | |
633 | ||
634 | public OnPlayerCommandText(playerid, cmdtext[]) | |
635 | { | |
636 | return 0; | |
637 | } | |
638 | ||
639 | public OnVehicleDamageStatusUpdate(vehicleid, playerid) | |
640 | { | |
641 | if(Blindagem[vehicleid] > 0) | |
642 | { | |
643 | Blindagem[vehicleid] --; | |
644 | RepairVehicle(vehicleid); | |
645 | } | |
646 | return 1; | |
647 | } | |
648 | ||
649 | public OnPlayerStateChange(playerid, newstate, oldstate) | |
650 | { | |
651 | if(newstate == PLAYER_STATE_DRIVER) | |
652 | { | |
653 | Speedometer = true; | |
654 | UpdateSpeedometer(playerid); | |
655 | TextDrawShowForPlayer(playerid, Text:TextDrawJFS[playerid]); | |
656 | TextDrawShowForPlayer(playerid, Text:TextDrawJFSV[playerid]); | |
657 | } | |
658 | return true; | |
659 | } | |
660 | ||
661 | public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) | |
662 | { | |
663 | if(dialogid == 4567) | |
664 | { | |
665 | if(response) | |
666 | { | |
667 | if(listitem == 0) | |
668 | { | |
669 | new ModeloID = GetVehicleModel(GetPlayerVehicleID(playerid)); | |
670 | if(Bikes(ModeloID)) return SendClientMessage(playerid, 0x696969AA, "Can not put gasoline on a Bike!"); | |
671 | olddistance = 999999; | |
672 | for(new i = 0; i < sizeof(LocaisGAS); i++) | |
673 | { | |
674 | GasX = LocaisGAS[i][0]; | |
675 | GasY = LocaisGAS[i][1]; | |
676 | GasZ = LocaisGAS[i][2]; | |
677 | newdistance = DistanciaPosto(playerid,GasX,GasY,GasZ); | |
678 | if (newdistance < olddistance) | |
679 | { | |
680 | olddistance = newdistance; | |
681 | closest = i; | |
682 | } | |
683 | } | |
684 | GameTextForPlayer(playerid,"~w~~n~~n~~n~~n~~n~~n~~n~~n~~n~Abastecendo Veiculo, Aguarde...",2000,3); | |
685 | SetTimer("JFSAC", 5000,0); | |
686 | gGasBiz[playerid] = closest+12; | |
687 | Abastecendo[playerid] = 1; | |
688 | return true; | |
689 | } | |
690 | else if(listitem == 1) | |
691 | { | |
692 | new ModeloID = GetVehicleModel(GetPlayerVehicleID(playerid)); | |
693 | if(VeiculosNaoTerrestres(ModeloID)) return SendClientMessage(playerid, 0x696969AA, "This Vehicle has no tire!"); | |
694 | olddistance = 999999; | |
695 | for(new i = 0; i < sizeof(LocaisGAS); i++) | |
696 | { | |
697 | GasX = LocaisGAS[i][0]; | |
698 | GasY = LocaisGAS[i][1]; | |
699 | GasZ = LocaisGAS[i][2]; | |
700 | newdistance = DistanciaPosto(playerid,GasX,GasY,GasZ); | |
701 | if (newdistance < olddistance) | |
702 | { | |
703 | olddistance = newdistance; | |
704 | closest = i; | |
705 | } | |
706 | } | |
707 | GameTextForPlayer(playerid,"~w~~n~~n~~n~~n~~n~~n~~n~~n~~n~Arranging your tire, Wait ...",2000,3); | |
708 | SetTimer("JFSAC", 5000,0); | |
709 | gGasBiz[playerid] = closest+12; | |
710 | ArrumandoPneu[playerid] = 1; | |
711 | new l,pn,pa,po; | |
712 | new vehicle = GetPlayerVehicleID(playerid); | |
713 | GetVehicleDamageStatus(vehicle,pa,po,l,pn); | |
714 | UpdateVehicleDamageStatus(vehicle, pa, po, l, 0); | |
715 | return true; | |
716 | } | |
717 | else if(listitem == 2) | |
718 | { | |
719 | new ModeloID = GetVehicleModel(GetPlayerVehicleID(playerid)); | |
720 | if(Bikes(ModeloID)) return SendClientMessage(playerid, 0x696969AA, "Can not Shield the Bike!"); | |
721 | new vehicle = GetPlayerVehicleID(playerid); | |
722 | GameTextForPlayer(playerid,"~r~~n~~n~~n~~n~~n~~n~~n~~n~~n~~>~ Armored! ~<~",2000,3); | |
723 | Blindagem[vehicle] = BlindagemMAX; | |
724 | SendClientMessage(playerid, -1, "You spent $ 10,000 To Shield your Vehicle!"); | |
725 | GivePlayerMoney(playerid, - 10000); | |
726 | return true; | |
727 | } | |
728 | } | |
729 | return true; | |
730 | } | |
731 | return 1; | |
732 | } | |
733 | ||
734 | COMMAND:refuel(playerid, params[]) | |
735 | { | |
736 | if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid,0xAFAFAFAA,"Do not you are in a vehicle."); | |
737 | if(!NoPosto(playerid)) return SendClientMessage(playerid,0xAFAFAFAA,"You're not in a gas station."); | |
738 | ShowPlayerDialog(playerid, 4567, DIALOG_STYLE_LIST, "JFS Speedometer v1.0 English - Panel", "Put gasoline\nArrange tire - $ 200\nShield vehicle - $ 10.000", "Select", "Close"); | |
739 | return true; | |
740 | } | |
741 | COMMAND:leavingvehicle(playerid, params[]) | |
742 | { | |
743 | if(OutOfGas[playerid] == 1) | |
744 | { | |
745 | TogglePlayerControllable(playerid, 1); | |
746 | RemovePlayerFromVehicle(playerid); | |
747 | OutOfGas[playerid] = 0; | |
748 | } | |
749 | return true; | |
750 | } | |
751 | ||
752 | ||
753 | public Float:DistanciaPosto(p1,Float:px,Float:py,Float:pz) | |
754 | { | |
755 | if(!IsPlayerConnected(p1)) | |
756 | return -1.00; | |
757 | ||
758 | GetPlayerPos(p1,x1,y1,z1); | |
759 | x2 = px; | |
760 | y2 = py; | |
761 | z2 = pz; | |
762 | return floatsqroot(floatpower(floatabs(floatsub(x2,x1)),2)+floatpower(floatabs(floatsub(y2,y1)),2)+floatpower(floatabs(floatsub(z2,z1)),2)); | |
763 | } | |
764 | ||
765 | public NoPosto(playerid) | |
766 | { | |
767 | if(IsPlayerConnected(playerid)) | |
768 | { | |
769 | if(IsPlayerInRangeOfPoint(playerid,6.0,1004.0070,-939.3102,42.1797) || IsPlayerInRangeOfPoint(playerid,6.0,1944.3260,-1772.9254,13.3906)) | |
770 | {//LS | |
771 | return 1; | |
772 | } | |
773 | else if(IsPlayerInRangeOfPoint(playerid,6.0,-90.5515,-1169.4578,2.4079) || IsPlayerInRangeOfPoint(playerid,6.0,-1609.7958,-2718.2048,48.5391)) | |
774 | {//LS | |
775 | return 1; | |
776 | } | |
777 | else if(IsPlayerInRangeOfPoint(playerid,6.0,-2029.4968,156.4366,28.9498) || IsPlayerInRangeOfPoint(playerid,8.0,-2408.7590,976.0934,45.4175)) | |
778 | {//SF | |
779 | return 1; | |
780 | } | |
781 | else if(IsPlayerInRangeOfPoint(playerid,5.0,-2243.9629,-2560.6477,31.8841) || IsPlayerInRangeOfPoint(playerid,8.0,-1676.6323,414.0262,6.9484)) | |
782 | {//Between LS and SF | |
783 | return 1; | |
784 | } | |
785 | else if(IsPlayerInRangeOfPoint(playerid,6.0,2202.2349,2474.3494,10.5258) || IsPlayerInRangeOfPoint(playerid,10.0,614.9333,1689.7418,6.6968)) | |
786 | {//LV | |
787 | return 1; | |
788 | } | |
789 | else if(IsPlayerInRangeOfPoint(playerid,8.0,-1328.8250,2677.2173,49.7665) || IsPlayerInRangeOfPoint(playerid,6.0,70.3882,1218.6783,18.5165)) | |
790 | {//LV | |
791 | return 1; | |
792 | } | |
793 | else if(IsPlayerInRangeOfPoint(playerid,8.0,2113.7390,920.1079,10.5255) || IsPlayerInRangeOfPoint(playerid,6.0,-1327.7218,2678.8723,50.0625)) | |
794 | {//LV | |
795 | return 1; | |
796 | } | |
797 | else if(IsPlayerInRangeOfPoint(playerid,8.0,2146.5759,2750.8442,10.6447) || IsPlayerInRangeOfPoint(playerid,6.0,2146.8779,2739.6157,10.6435)) | |
798 | {//LV2 | |
799 | return 1; | |
800 | } | |
801 | else if(IsPlayerInRangeOfPoint(playerid,8.0,1595.3046,2191.1331,10.6454) || IsPlayerInRangeOfPoint(playerid,6.0,1596.3274,2206.7070,10.6449)) | |
802 | {//LV3 | |
803 | return 1; | |
804 | } | |
805 | else if(IsPlayerInRangeOfPoint(playerid,8.0,-736.9305,2742.6138,47.0158)) | |
806 | {//Landtankstelle | |
807 | return 1; | |
808 | } | |
809 | } | |
810 | return 0; | |
811 | } | |
812 | ||
813 | public CheckDes() | |
814 | { | |
815 | for(new i=0;i<MAXPLAYERSJFS;i++) | |
816 | { | |
817 | if(IsPlayerConnected(i)) | |
818 | { | |
819 | if(GetPlayerState(i) == PLAYER_STATE_DRIVER) | |
820 | { | |
821 | new l,pn,pa,po; | |
822 | new vehicle = GetPlayerVehicleID(i); | |
823 | if(Desgaste[vehicle] >= 1) | |
824 | { | |
825 | Desgaste[vehicle]--; | |
826 | } | |
827 | new VGas[MAXPLAYERSJFS]; | |
828 | if(Desgaste[vehicle] == 15) | |
829 | { | |
830 | VGas[i] = 1; | |
831 | if(VGas[i] == 1) | |
832 | { | |
833 | SendClientMessage(i, -1, "Your tire is Worn out and the tire was punctured right front, Go to gas staation arrange !"); | |
834 | GetVehicleDamageStatus(vehicle,pa,po,l,pn); | |
835 | UpdateVehicleDamageStatus(vehicle, pa, po, l, 2); | |
836 | } | |
837 | } | |
838 | if(Desgaste[vehicle] == 14) | |
839 | { | |
840 | VGas[i] = 0; | |
841 | } | |
842 | if(Desgaste[vehicle] == 10) | |
843 | { | |
844 | VGas[i] = 1; | |
845 | if(VGas[i] == 1) | |
846 | { | |
847 | SendClientMessage(i, -1, "Your tire is Worn out and the tire was punctured left front, Go to gas staation arrange !"); | |
848 | GetVehicleDamageStatus(vehicle,pa,po,l,pn); | |
849 | UpdateVehicleDamageStatus(vehicle, pa, po, l, 10); | |
850 | } | |
851 | } | |
852 | if(Desgaste[vehicle] == 9) | |
853 | { | |
854 | VGas[i] = 0; | |
855 | } | |
856 | if(Desgaste[vehicle] == 5) | |
857 | { | |
858 | VGas[i] = 1; | |
859 | if(VGas[i] == 1) | |
860 | { | |
861 | SendClientMessage(i, -1, "This is your last chance to go in gas station arrange your tire!"); | |
862 | GetVehicleDamageStatus(vehicle,pa,po,l,pn); | |
863 | UpdateVehicleDamageStatus(vehicle, pa, po, l, 11); | |
864 | } | |
865 | } | |
866 | if(Desgaste[vehicle] == 4) | |
867 | { | |
868 | VGas[i] = 0; | |
869 | } | |
870 | if(Desgaste[vehicle] == 1) | |
871 | { | |
872 | VGas[i] = 1; | |
873 | if(VGas[i] == 1) | |
874 | { | |
875 | OutOfGas[i] = 1; | |
876 | SendClientMessage(i, -1, "Your tire have be punctured, get out of the car!"); | |
877 | GetVehicleDamageStatus(vehicle,pa,po,l,pn); | |
878 | UpdateVehicleDamageStatus(vehicle, pa, po, l, 15); | |
879 | } | |
880 | } | |
881 | if(Desgaste[vehicle] == 0) | |
882 | { | |
883 | VGas[i] = 0; | |
884 | } | |
885 | } | |
886 | } | |
887 | } | |
888 | return 1; | |
889 | } | |
890 | ||
891 | public CheckGas() | |
892 | { | |
893 | for(new i=0;i<MAXPLAYERSJFS;i++) | |
894 | { | |
895 | if(IsPlayerConnected(i)) | |
896 | { | |
897 | new vehicle = GetPlayerVehicleID(i); | |
898 | if(GetPlayerState(i) == PLAYER_STATE_DRIVER) | |
899 | { | |
900 | if(Gas[vehicle] >= 1) | |
901 | { | |
902 | Gas[vehicle]--; | |
903 | } | |
904 | if(Gas[vehicle] < 1) | |
905 | { | |
906 | OutOfGas[i] = 1; | |
907 | TogglePlayerControllable(i, 0); | |
908 | SendClientMessage(i, -1, "Finished gasoline ! Use /leavingvehicle to exit the vehicle."); | |
909 | } | |
910 | } | |
911 | } | |
912 | } | |
913 | return 1; | |
914 | } | |
915 | ||
916 | public StoppedVehicle() | |
917 | { | |
918 | for(new i=0; i<MAXPLAYERSJFS; i++) | |
919 | { | |
920 | if(IsPlayerConnected(i)) | |
921 | { | |
922 | if(IsPlayerInAnyVehicle(i)) | |
923 | { | |
924 | GetPlayerPos(i, x, y, z); | |
925 | distance = floatsqroot(floatpower(floatabs(floatsub(x,SavePlayerPos[i][LastX])),2)+floatpower(floatabs(floatsub(y,SavePlayerPos[i][LastY])),2)+floatpower(floatabs(floatsub(z,SavePlayerPos[i][LastZ])),2)); | |
926 | Valor = floatround(distance * 3600); | |
927 | if(UpdateSeconds > 1) | |
928 | { | |
929 | Valor = floatround(Valor / UpdateSeconds); | |
930 | } | |
931 | if(Valor == 0) | |
932 | { | |
933 | Gas[GetPlayerVehicleID(i)]++; | |
934 | Desgaste[GetPlayerVehicleID(i)]++; | |
935 | } | |
936 | SavePlayerPos[i][LastX] = x; | |
937 | SavePlayerPos[i][LastY] = y; | |
938 | SavePlayerPos[i][LastZ] = z; | |
939 | } | |
940 | } | |
941 | } | |
942 | return 1; | |
943 | } | |
944 | ||
945 | public JFSAC() | |
946 | { | |
947 | for(new i=0; i<MAXPLAYERSJFS; i++) | |
948 | { | |
949 | if(IsPlayerConnected(i)) | |
950 | { | |
951 | if(Abastecendo[i] == 1) | |
952 | { | |
953 | JFSAACC = GasMAX - Gas[GetPlayerVehicleID(i)]; | |
954 | JFSACPreco = JFSAACC * 10; | |
955 | if(GetPlayerMoney(i) >= JFSACPreco) | |
956 | { | |
957 | Gas[GetPlayerVehicleID(i)] += JFSAACC; | |
958 | format(Celula,sizeof(Celula),"you load your vehicle $ %d",JFSACPreco); | |
959 | SendClientMessage(i,0x33CCFFAA, Celula); | |
960 | GivePlayerMoney(i,-JFSACPreco); | |
961 | if(JFSACPreco > 0) | |
962 | JFSACPreco = 0; | |
963 | Abastecendo[i] = 0; | |
964 | } | |
965 | else | |
966 | { | |
967 | format(Celula,sizeof(Celula),"you don't have money to fuel their vehicle. ($ %d)",JFSACPreco); | |
968 | SendClientMessage(i,0x33CCFFAA,Celula); | |
969 | } | |
970 | } | |
971 | if(ArrumandoPneu[i] == 1) | |
972 | { | |
973 | if(GetPlayerMoney(i) >= 2000) | |
974 | { | |
975 | Desgaste[GetPlayerVehicleID(i)] = 100; | |
976 | format(Celula,sizeof(Celula),"you fixed the tire of your vehicle ($ 200)"); | |
977 | SendClientMessage(i,0x33CCFFAA, Celula); | |
978 | GivePlayerMoney(i, -2000); | |
979 | } | |
980 | else | |
981 | { | |
982 | format(Celula,sizeof(Celula),"you don't have money to fix the tire ($ 200)"); | |
983 | SendClientMessage(i,0x33CCFFAA,Celula); | |
984 | } | |
985 | } | |
986 | } | |
987 | } | |
988 | return 1; | |
989 | } | |
990 | ||
991 | stock PlayerInZone(playerid, Zone[], String) | |
992 | { | |
993 | GetPlayerPos(playerid, x, y, z); | |
994 | for(new i = 0; i != sizeof(ZoneLS); i++ ) | |
995 | { | |
996 | if(x >= ZoneLS[i][Zone_Coords][0] && x <= ZoneLS[i][Zone_Coords][3] && y >= ZoneLS[i][Zone_Coords][1] && y <= ZoneLS[i][Zone_Coords][4]) | |
997 | { | |
998 | return format(Zone, String, ZoneLS[i][Zone_Nomes], 0); | |
999 | } | |
1000 | } | |
1001 | return 0; | |
1002 | } | |
1003 | ||
1004 | stock GetPlayerSpeed(playerid) | |
1005 | { | |
1006 | new Float:ST[4]; | |
1007 | if(IsPlayerInAnyVehicle(playerid)) | |
1008 | GetVehicleVelocity(GetPlayerVehicleID(playerid),ST[0],ST[1],ST[2]); | |
1009 | else GetPlayerVelocity(playerid,ST[0],ST[1],ST[2]); | |
1010 | ST[3] = floatsqroot(floatpower(floatabs(ST[0]), 2.0) + floatpower(floatabs(ST[1]), 2.0) + floatpower(floatabs(ST[2]), 2.0)) * 179.28625; | |
1011 | return floatround(ST[3]); | |
1012 | } | |
1013 | ||
1014 | forward UpdateSpeedometer(playerid); | |
1015 | public UpdateSpeedometer(playerid) | |
1016 | { | |
1017 | if(Speedometer == true) | |
1018 | { | |
1019 | if(IsPlayerInAnyVehicle(playerid)) | |
1020 | { | |
1021 | new vehicleid = GetPlayerVehicleID(playerid); | |
1022 | new CVel[200], Float:SangueV; | |
1023 | GetVehicleHealth(vehicleid, SangueV); | |
1024 | PlayerInZone(playerid, ZoneSA, MAXZN); | |
1025 | new ModeloID = GetVehicleModel(GetPlayerVehicleID(playerid)); | |
1026 | if(VeiculosNaoTerrestres(ModeloID)) | |
1027 | { | |
1028 | format(CVel,sizeof(CVel),"~p~%d ~g~KM/H~n~~p~KM Traveled: ~g~%d~n~~p~Location: ~g~%s~n~~p~Vehicle Name: ~g~%s~n~~p~Bodywork: ~g~%d%%~n~~p~Gas: ~g~%d%%~n~~p~Shield: ~g~%d%", GetPlayerSpeed(playerid), KMP[vehicleid], ZoneSA, NomesVeiculos[GetVehicleModel(vehicleid)-400], floatround(SangueV)/10, Gas[vehicleid], Blindagem[vehicleid]); | |
1029 | TextDrawSetString(Text:TextDrawJFS[playerid], CVel); | |
1030 | } | |
1031 | else if(Bikes(ModeloID)) | |
1032 | { | |
1033 | format(CVel,sizeof(CVel),"~p~%d ~g~KM/H~n~~p~KM Traveled: ~g~%d~n~~p~Location: ~g~%s~n~~p~Vehicle Name: ~g~%s~n~~p~Bodywork: ~g~%d%%~n~~p~Tire wear: ~g~%d%%~n~~p~Shield: ~g~%d%", GetPlayerSpeed(playerid), KMP[vehicleid], ZoneSA, NomesVeiculos[GetVehicleModel(vehicleid)-400], floatround(SangueV)/10, Desgaste[vehicleid], Blindagem[vehicleid]); | |
1034 | TextDrawSetString(Text:TextDrawJFS[playerid], CVel); | |
1035 | } | |
1036 | else if(!VeiculosNaoTerrestres(ModeloID) && !Bikes(ModeloID)) | |
1037 | { | |
1038 | format(CVel,sizeof(CVel),"~p~%d ~g~KM/H~n~~p~KM Traveled: ~g~%d~n~~p~Location: ~g~%s~n~~p~Vehicle Name: ~g~%s~n~~p~Bodywork: ~g~%d%%~n~~p~Gas: ~g~%d%%~n~~p~Tire wear: ~g~%d%%~n~~p~Shield: ~g~%d%", GetPlayerSpeed(playerid), KMP[vehicleid], ZoneSA, NomesVeiculos[GetVehicleModel(vehicleid)-400], floatround(SangueV)/10, Gas[vehicleid], Desgaste[vehicleid], Blindagem[vehicleid]); | |
1039 | TextDrawSetString(Text:TextDrawJFS[playerid], CVel); | |
1040 | } | |
1041 | } | |
1042 | else | |
1043 | { | |
1044 | TextDrawHideForPlayer(playerid, Text:TextDrawJFS[playerid]); | |
1045 | TextDrawHideForPlayer(playerid, Text:TextDrawJFSV[playerid]); | |
1046 | Speedometer = false; | |
1047 | } | |
1048 | } | |
1049 | return true; | |
1050 | } | |
1051 | forward KMTraversed(playerid); | |
1052 | public KMTraversed(playerid) | |
1053 | { | |
1054 | if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER) | |
1055 | { | |
1056 | new vehicle = GetPlayerVehicleID(playerid); | |
1057 | static Float:PosX,Float:PosY,Float:PosZ; | |
1058 | GetVehicleVelocity(vehicle, PosX, PosY, PosZ); | |
1059 | // Codigo Abaixo Por DranKinS | |
1060 | KMP[vehicle] += (floatround(floatmul(((floatmul(floatsqroot(floatadd(floatadd(floatpower(PosX, 2), floatpower(PosY, 2)), floatpower(PosZ, 2))), 170.0) * 1)),1000)) / 3600); | |
1061 | } | |
1062 | return true; | |
1063 | } | |
1064 | ||
1065 | forward VeiculosNaoTerrestres(ID); | |
1066 | public VeiculosNaoTerrestres(ID) | |
1067 | { | |
1068 | if(ID == 417 || ID == 425 || ID == 430 || ID == 435 || ID == 446 || ID == 447 || ID == 449 || ID == 450 || ID == 452 || | |
1069 | ID == 453 || ID == 454 || ID == 460 || ID == 464 || ID == 465 || ID == 472 || ID == 473 || ID == 484 || ID == 487 || ID == 488 || | |
1070 | ID == 493 || ID == 501 || ID == 511 || ID == 512 || ID == 513 || ID == 519 || ID == 520 || | |
1071 | ID == 539 || ID == 548 || ID == 553 || ID == 563 || ID == 577 || ID == 592 || ID == 593 || ID == 594 || ID == 595) | |
1072 | { | |
1073 | return true; | |
1074 | } | |
1075 | return false; | |
1076 | } | |
1077 | ||
1078 | forward Bikes(ID); | |
1079 | public Bikes(ID) | |
1080 | { | |
1081 | if(ID == 481 || ID == 509 || ID == 510) | |
1082 | { | |
1083 | return true; | |
1084 | } | |
1085 | return false; | |
1086 | } |