Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Speedometer, engine (on/off), Fuel system made by Stefan / kevin974
- #include <a_samp>
- #include <utils>
- new FALSE = false;
- #define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
- #define SendFormattedMessage(%0,%1,%2) do{new _str[128]; format(_str,128,%2); SendClientMessage(%0,%1,_str);}while(FALSE)
- enum pSpeed
- {
- Text:Speedom,
- ShowSpeed,
- ReFuelTimer,
- Refueling,
- Float:OldCoordsX,
- Float:OldCoordsY
- };
- new Speed[MAX_PLAYERS][pSpeed];
- enum pVeh
- {
- Float:Fuel,
- OldFuel,
- Engine,
- IsLocked
- };
- new Vehicle[MAX_VEHICLES][pVeh];
- enum zoneinfo {
- zone_name[27],
- Float:zone_minx,
- Float:zone_miny,
- Float:zone_minz,
- Float:zone_maxx,
- Float:zone_maxy,
- Float:zone_maxz
- }
- #define COLOR_YELLOW 0xFFFF00AA
- #define COLOR_WHITE 0xFFFFFFAA
- #define COLOR_GREY 0xAFAFAFAA
- #define COLOR_ORANGE 0xFF9900AA
- #define SPAWN_GAS_MIN 35
- #define SPAWN_GAS_MAX 100
- #define MAX_START_TIME 3
- forward Speedometer(playerid);
- forward UnlockVehicle(vehicleid);
- forward TurnOnEngine(playerid, vehicle);
- forward TurnOffEngine(playerid, vehicle);
- forward ReFill(playerid);
- forward IsAtFuelStation(playerid);
- forward PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z);
- new VehiclesName[][] = {
- "Landstalker","Bravura","Buffalo","Linerunner","Pereniel","Sentinel","Dumper","Firetruck","Trashmaster","Stretch","Manana","Infernus",
- "Voodoo","Pony","Mule","Cheetah","Ambulance","Leviathan","Moonbeam","Esperanto","Taxi","Washington","Bobcat","Mr Whoopee","BF Injection",
- "Hunter","Premier","Enforcer","Securicar","Banshee","Predator","Bus","Rhino","Barracks","Hotknife","Trailer","Previon","Coach","Cabbie",
- "Stallion","Rumpo","RC Bandit","Romero","Packer","Monster","Admiral","Squalo","Seasparrow","Pizzaboy","Tram","Trailer","Turismo","Speeder",
- "Reefer","Tropic","Flatbed","Yankee","Caddy","Solair","Berkley's RC Van","Skimmer","PCJ-600","Faggio","Freeway","RC Baron","RC Raider",
- "Glendale","Oceanic","Sanchez","Sparrow","Patriot","Quad","Coastguard","Dinghy","Hermes","Sabre","Rustler","ZR3 50","Walton","Regina",
- "Comet","BMX","Burrito","Camper","Marquis","Baggage","Dozer","Maverick","News Chopper","Rancher","FBI Rancher","Virgo","Greenwood",
- "Jetmax","Hotring","Sandking","Blista Compact","Police Maverick","Boxville","Benson","Mesa","RC Goblin","Hotring Racer","Hotring Racer",
- "Bloodring Banger","Rancher","Super GT","Elegant","Journey","Bike","Mountain Bike","Beagle","Cropdust","Stunt","Tanker","RoadTrain",
- "Nebula","Majestic","Buccaneer","Shamal","Hydra","FCR-900","NRG-500","HPV1000","Cement Truck","Tow Truck","Fortune","Cadrona","FBI Truck",
- "Willard","Forklift","Tractor","Combine","Feltzer","Remington","Slamvan","Blade","Freight","Streak","Vortex","Vincent","Bullet","Clover",
- "Sadler","Firetruck","Hustler","Intruder","Primo","Cargobob","Tampa","Sunrise","Merit","Utility","Nevada","Yosemite","Windsor","Monster A",
- "Monster B","Uranus","Jester","Sultan","Stratum","Elegy","Raindance","RC Tiger","Flash","Tahoma","Savanna","Bandito","Freight","Trailer",
- "Kart","Mower","Duneride","Sweeper","Broadway","Tornado","AT-400","DFT-30","Huntley","Stafford","BF-400","Newsvan","Tug","Trailer","Emperor",
- "Wayfarer","Euros","Hotdog","Club","Trailer B","Trailer C","Andromada","Dodo","RC Cam","Launch","Police Car","Police Car",
- "Police Car","Police Ranger","Picador","S.W.A.T.","Alpha","Phoenix","Glendale","Sadler","Luggage Trailer","Luggage Trailer",
- "Stair Trailer","Boxville","Farm Plow","Utility Trailer"
- };
- new zones[][zoneinfo] = {
- { "'The Big Ear'", -410.00, 1403.30, -3.00, -137.90, 1681.20, 200.00},
- { "Aldea Malvada", -1372.10, 2498.50, 0.00, -1277.50, 2615.30, 200.00},
- { "Angel Pine", -2324.90, -2584.20, -6.10, -1964.20, -2212.10, 200.00},
- { "Arco del Oeste", -901.10, 2221.80, 0.00, -592.00, 2571.90, 200.00},
- { "Avispa Country Club", -2646.40, -355.40, 0.00, -2270.00, -222.50, 200.00},
- { "Avispa Country Club", -2831.80, -430.20, -6.10, -2646.40, -222.50, 200.00},
- { "Avispa Country Club", -2361.50, -417.10, 0.00, -2270.00, -355.40, 200.00},
- { "Avispa Country Club", -2667.80, -302.10, -28.80, -2646.40, -262.30, 71.10},
- { "Avispa Country Club", -2470.00, -355.40, 0.00, -2270.00, -318.40, 46.10},
- { "Avispa Country Club", -2550.00, -355.40, 0.00, -2470.00, -318.40, 39.70},
- { "Back o Beyond", -1166.90, -2641.10, 0.00, -321.70, -1856.00, 200.00},
- { "Battery Point", -2741.00, 1268.40, -4.50, -2533.00, 1490.40, 200.00},
- { "Bayside", -2741.00, 2175.10, 0.00, -2353.10, 2722.70, 200.00},
- { "Bayside Marina", -2353.10, 2275.70, 0.00, -2153.10, 2475.70, 200.00},
- { "Beacon Hill", -399.60, -1075.50, -1.40, -319.00, -977.50, 198.50},
- { "Blackfield", 964.30, 1203.20, -89.00, 1197.30, 1403.20, 110.90},
- { "Blackfield", 964.30, 1403.20, -89.00, 1197.30, 1726.20, 110.90},
- { "Blackfield Chapel", 1375.60, 596.30, -89.00, 1558.00, 823.20, 110.90},
- { "Blackfield Chapel", 1325.60, 596.30, -89.00, 1375.60, 795.00, 110.90},
- { "Blackfield Intersection", 1197.30, 1044.60, -89.00, 1277.00, 1163.30, 110.90},
- { "Blackfield Intersection", 1166.50, 795.00, -89.00, 1375.60, 1044.60, 110.90},
- { "Blackfield Intersection", 1277.00, 1044.60, -89.00, 1315.30, 1087.60, 110.90},
- { "Blackfield Intersection", 1375.60, 823.20, -89.00, 1457.30, 919.40, 110.90},
- { "Blueberry", 104.50, -220.10, 2.30, 349.60, 152.20, 200.00},
- { "Blueberry", 19.60, -404.10, 3.80, 349.60, -220.10, 200.00},
- { "Blueberry Acres", -319.60, -220.10, 0.00, 104.50, 293.30, 200.00},
- { "Caligula's Palace", 2087.30, 1543.20, -89.00, 2437.30, 1703.20, 110.90},
- { "Caligula's Palace", 2137.40, 1703.20, -89.00, 2437.30, 1783.20, 110.90},
- { "Calton Heights", -2274.10, 744.10, -6.10, -1982.30, 1358.90, 200.00},
- { "Chinatown", -2274.10, 578.30, -7.60, -2078.60, 744.10, 200.00},
- { "City Hall", -2867.80, 277.40, -9.10, -2593.40, 458.40, 200.00},
- { "Come-A-Lot", 2087.30, 943.20, -89.00, 2623.10, 1203.20, 110.90},
- { "Commerce", 1323.90, -1842.20, -89.00, 1701.90, -1722.20, 110.90},
- { "Commerce", 1323.90, -1722.20, -89.00, 1440.90, -1577.50, 110.90},
- { "Commerce", 1370.80, -1577.50, -89.00, 1463.90, -1384.90, 110.90},
- { "Commerce", 1463.90, -1577.50, -89.00, 1667.90, -1430.80, 110.90},
- { "Commerce", 1583.50, -1722.20, -89.00, 1758.90, -1577.50, 110.90},
- { "Commerce", 1667.90, -1577.50, -89.00, 1812.60, -1430.80, 110.90},
- { "Conference Center", 1046.10, -1804.20, -89.00, 1323.90, -1722.20, 110.90},
- { "Conference Center", 1073.20, -1842.20, -89.00, 1323.90, -1804.20, 110.90},
- { "Cranberry Station", -2007.80, 56.30, 0.00, -1922.00, 224.70, 100.00},
- { "Creek", 2749.90, 1937.20, -89.00, 2921.60, 2669.70, 110.90},
- { "Dillimore", 580.70, -674.80, -9.50, 861.00, -404.70, 200.00},
- { "Doherty", -2270.00, -324.10, -0.00, -1794.90, -222.50, 200.00},
- { "Doherty", -2173.00, -222.50, -0.00, -1794.90, 265.20, 200.00},
- { "Downtown", -1982.30, 744.10, -6.10, -1871.70, 1274.20, 200.00},
- { "Downtown", -1871.70, 1176.40, -4.50, -1620.30, 1274.20, 200.00},
- { "Downtown", -1700.00, 744.20, -6.10, -1580.00, 1176.50, 200.00},
- { "Downtown", -1580.00, 744.20, -6.10, -1499.80, 1025.90, 200.00},
- { "Downtown", -2078.60, 578.30, -7.60, -1499.80, 744.20, 200.00},
- { "Downtown", -1993.20, 265.20, -9.10, -1794.90, 578.30, 200.00},
- { "Downtown Los Santos", 1463.90, -1430.80, -89.00, 1724.70, -1290.80, 110.90},
- { "Downtown Los Santos", 1724.70, -1430.80, -89.00, 1812.60, -1250.90, 110.90},
- { "Downtown Los Santos", 1463.90, -1290.80, -89.00, 1724.70, -1150.80, 110.90},
- { "Downtown Los Santos", 1370.80, -1384.90, -89.00, 1463.90, -1170.80, 110.90},
- { "Downtown Los Santos", 1724.70, -1250.90, -89.00, 1812.60, -1150.80, 110.90},
- { "Downtown Los Santos", 1370.80, -1170.80, -89.00, 1463.90, -1130.80, 110.90},
- { "Downtown Los Santos", 1378.30, -1130.80, -89.00, 1463.90, -1026.30, 110.90},
- { "Downtown Los Santos", 1391.00, -1026.30, -89.00, 1463.90, -926.90, 110.90},
- { "Downtown Los Santos", 1507.50, -1385.20, 110.90, 1582.50, -1325.30, 335.90},
- { "East Beach", 2632.80, -1852.80, -89.00, 2959.30, -1668.10, 110.90},
- { "East Beach", 2632.80, -1668.10, -89.00, 2747.70, -1393.40, 110.90},
- { "East Beach", 2747.70, -1668.10, -89.00, 2959.30, -1498.60, 110.90},
- { "East Beach", 2747.70, -1498.60, -89.00, 2959.30, -1120.00, 110.90},
- { "East Los Santos", 2421.00, -1628.50, -89.00, 2632.80, -1454.30, 110.90},
- { "East Los Santos", 2222.50, -1628.50, -89.00, 2421.00, -1494.00, 110.90},
- { "East Los Santos", 2266.20, -1494.00, -89.00, 2381.60, -1372.00, 110.90},
- { "East Los Santos", 2381.60, -1494.00, -89.00, 2421.00, -1454.30, 110.90},
- { "East Los Santos", 2281.40, -1372.00, -89.00, 2381.60, -1135.00, 110.90},
- { "East Los Santos", 2381.60, -1454.30, -89.00, 2462.10, -1135.00, 110.90},
- { "East Los Santos", 2462.10, -1454.30, -89.00, 2581.70, -1135.00, 110.90},
- { "Easter Basin", -1794.90, 249.90, -9.10, -1242.90, 578.30, 200.00},
- { "Easter Basin", -1794.90, -50.00, -0.00, -1499.80, 249.90, 200.00},
- { "Easter Bay Airport", -1499.80, -50.00, -0.00, -1242.90, 249.90, 200.00},
- { "Easter Bay Airport", -1794.90, -730.10, -3.00, -1213.90, -50.00, 200.00},
- { "Easter Bay Airport", -1213.90, -730.10, 0.00, -1132.80, -50.00, 200.00},
- { "Easter Bay Airport", -1242.90, -50.00, 0.00, -1213.90, 578.30, 200.00},
- { "Easter Bay Airport", -1213.90, -50.00, -4.50, -947.90, 578.30, 200.00},
- { "Easter Bay Airport", -1315.40, -405.30, 15.40, -1264.40, -209.50, 25.40},
- { "Easter Bay Airport", -1354.30, -287.30, 15.40, -1315.40, -209.50, 25.40},
- { "Easter Bay Airport", -1490.30, -209.50, 15.40, -1264.40, -148.30, 25.40},
- { "Easter Bay Chemicals", -1132.80, -768.00, 0.00, -956.40, -578.10, 200.00},
- { "Easter Bay Chemicals", -1132.80, -787.30, 0.00, -956.40, -768.00, 200.00},
- { "El Castillo del Diablo", -464.50, 2217.60, 0.00, -208.50, 2580.30, 200.00},
- { "El Castillo del Diablo", -208.50, 2123.00, -7.60, 114.00, 2337.10, 200.00},
- { "El Castillo del Diablo", -208.50, 2337.10, 0.00, 8.40, 2487.10, 200.00},
- { "El Corona", 1812.60, -2179.20, -89.00, 1970.60, -1852.80, 110.90},
- { "El Corona", 1692.60, -2179.20, -89.00, 1812.60, -1842.20, 110.90},
- { "El Quebrados", -1645.20, 2498.50, 0.00, -1372.10, 2777.80, 200.00},
- { "Esplanade East", -1620.30, 1176.50, -4.50, -1580.00, 1274.20, 200.00},
- { "Esplanade East", -1580.00, 1025.90, -6.10, -1499.80, 1274.20, 200.00},
- { "Esplanade East", -1499.80, 578.30, -79.60, -1339.80, 1274.20, 20.30},
- { "Esplanade North", -2533.00, 1358.90, -4.50, -1996.60, 1501.20, 200.00},
- { "Esplanade North", -1996.60, 1358.90, -4.50, -1524.20, 1592.50, 200.00},
- { "Esplanade North", -1982.30, 1274.20, -4.50, -1524.20, 1358.90, 200.00},
- { "Fallen Tree", -792.20, -698.50, -5.30, -452.40, -380.00, 200.00},
- { "Fallow Bridge", 434.30, 366.50, 0.00, 603.00, 555.60, 200.00},
- { "Fern Ridge", 508.10, -139.20, 0.00, 1306.60, 119.50, 200.00},
- { "Financial", -1871.70, 744.10, -6.10, -1701.30, 1176.40, 300.00},
- { "Fisher's Lagoon", 1916.90, -233.30, -100.00, 2131.70, 13.80, 200.00},
- { "Flint Intersection", -187.70, -1596.70, -89.00, 17.00, -1276.60, 110.90},
- { "Flint Range", -594.10, -1648.50, 0.00, -187.70, -1276.60, 200.00},
- { "Fort Carson", -376.20, 826.30, -3.00, 123.70, 1220.40, 200.00},
- { "Foster Valley", -2270.00, -430.20, -0.00, -2178.60, -324.10, 200.00},
- { "Foster Valley", -2178.60, -599.80, -0.00, -1794.90, -324.10, 200.00},
- { "Foster Valley", -2178.60, -1115.50, 0.00, -1794.90, -599.80, 200.00},
- { "Foster Valley", -2178.60, -1250.90, 0.00, -1794.90, -1115.50, 200.00},
- { "Frederick Bridge", 2759.20, 296.50, 0.00, 2774.20, 594.70, 200.00},
- { "Gant Bridge", -2741.40, 1659.60, -6.10, -2616.40, 2175.10, 200.00},
- { "Gant Bridge", -2741.00, 1490.40, -6.10, -2616.40, 1659.60, 200.00},
- { "Ganton", 2222.50, -1852.80, -89.00, 2632.80, -1722.30, 110.90},
- { "Ganton", 2222.50, -1722.30, -89.00, 2632.80, -1628.50, 110.90},
- { "Garcia", -2411.20, -222.50, -0.00, -2173.00, 265.20, 200.00},
- { "Garcia", -2395.10, -222.50, -5.30, -2354.00, -204.70, 200.00},
- { "Garver Bridge", -1339.80, 828.10, -89.00, -1213.90, 1057.00, 110.90},
- { "Garver Bridge", -1213.90, 950.00, -89.00, -1087.90, 1178.90, 110.90},
- { "Garver Bridge", -1499.80, 696.40, -179.60, -1339.80, 925.30, 20.30},
- { "Glen Park", 1812.60, -1449.60, -89.00, 1996.90, -1350.70, 110.90},
- { "Glen Park", 1812.60, -1100.80, -89.00, 1994.30, -973.30, 110.90},
- { "Glen Park", 1812.60, -1350.70, -89.00, 2056.80, -1100.80, 110.90},
- { "Green Palms", 176.50, 1305.40, -3.00, 338.60, 1520.70, 200.00},
- { "Greenglass College", 964.30, 1044.60, -89.00, 1197.30, 1203.20, 110.90},
- { "Greenglass College", 964.30, 930.80, -89.00, 1166.50, 1044.60, 110.90},
- { "Hampton Barns", 603.00, 264.30, 0.00, 761.90, 366.50, 200.00},
- { "Hankypanky Point", 2576.90, 62.10, 0.00, 2759.20, 385.50, 200.00},
- { "Harry Gold Parkway", 1777.30, 863.20, -89.00, 1817.30, 2342.80, 110.90},
- { "Hashbury", -2593.40, -222.50, -0.00, -2411.20, 54.70, 200.00},
- { "Hilltop Farm", 967.30, -450.30, -3.00, 1176.70, -217.90, 200.00},
- { "Hunter Quarry", 337.20, 710.80, -115.20, 860.50, 1031.70, 203.70},
- { "Idlewood", 1812.60, -1852.80, -89.00, 1971.60, -1742.30, 110.90},
- { "Idlewood", 1812.60, -1742.30, -89.00, 1951.60, -1602.30, 110.90},
- { "Idlewood", 1951.60, -1742.30, -89.00, 2124.60, -1602.30, 110.90},
- { "Idlewood", 1812.60, -1602.30, -89.00, 2124.60, -1449.60, 110.90},
- { "Idlewood", 2124.60, -1742.30, -89.00, 2222.50, -1494.00, 110.90},
- { "Idlewood", 1971.60, -1852.80, -89.00, 2222.50, -1742.30, 110.90},
- { "Jefferson", 1996.90, -1449.60, -89.00, 2056.80, -1350.70, 110.90},
- { "Jefferson", 2124.60, -1494.00, -89.00, 2266.20, -1449.60, 110.90},
- { "Jefferson", 2056.80, -1372.00, -89.00, 2281.40, -1210.70, 110.90},
- { "Jefferson", 2056.80, -1210.70, -89.00, 2185.30, -1126.30, 110.90},
- { "Jefferson", 2185.30, -1210.70, -89.00, 2281.40, -1154.50, 110.90},
- { "Jefferson", 2056.80, -1449.60, -89.00, 2266.20, -1372.00, 110.90},
- { "Julius Thruway East", 2623.10, 943.20, -89.00, 2749.90, 1055.90, 110.90},
- { "Julius Thruway East", 2685.10, 1055.90, -89.00, 2749.90, 2626.50, 110.90},
- { "Julius Thruway East", 2536.40, 2442.50, -89.00, 2685.10, 2542.50, 110.90},
- { "Julius Thruway East", 2625.10, 2202.70, -89.00, 2685.10, 2442.50, 110.90},
- { "Julius Thruway North", 2498.20, 2542.50, -89.00, 2685.10, 2626.50, 110.90},
- { "Julius Thruway North", 2237.40, 2542.50, -89.00, 2498.20, 2663.10, 110.90},
- { "Julius Thruway North", 2121.40, 2508.20, -89.00, 2237.40, 2663.10, 110.90},
- { "Julius Thruway North", 1938.80, 2508.20, -89.00, 2121.40, 2624.20, 110.90},
- { "Julius Thruway North", 1534.50, 2433.20, -89.00, 1848.40, 2583.20, 110.90},
- { "Julius Thruway North", 1848.40, 2478.40, -89.00, 1938.80, 2553.40, 110.90},
- { "Julius Thruway North", 1704.50, 2342.80, -89.00, 1848.40, 2433.20, 110.90},
- { "Julius Thruway North", 1377.30, 2433.20, -89.00, 1534.50, 2507.20, 110.90},
- { "Julius Thruway South", 1457.30, 823.20, -89.00, 2377.30, 863.20, 110.90},
- { "Julius Thruway South", 2377.30, 788.80, -89.00, 2537.30, 897.90, 110.90},
- { "Julius Thruway West", 1197.30, 1163.30, -89.00, 1236.60, 2243.20, 110.90},
- { "Julius Thruway West", 1236.60, 2142.80, -89.00, 1297.40, 2243.20, 110.90},
- { "Juniper Hill", -2533.00, 578.30, -7.60, -2274.10, 968.30, 200.00},
- { "Juniper Hollow", -2533.00, 968.30, -6.10, -2274.10, 1358.90, 200.00},
- { "K.A.C.C. Military Fuels", 2498.20, 2626.50, -89.00, 2749.90, 2861.50, 110.90},
- { "Kincaid Bridge", -1339.80, 599.20, -89.00, -1213.90, 828.10, 110.90},
- { "Kincaid Bridge", -1213.90, 721.10, -89.00, -1087.90, 950.00, 110.90},
- { "Kincaid Bridge", -1087.90, 855.30, -89.00, -961.90, 986.20, 110.90},
- { "King's", -2329.30, 458.40, -7.60, -1993.20, 578.30, 200.00},
- { "King's", -2411.20, 265.20, -9.10, -1993.20, 373.50, 200.00},
- { "King's", -2253.50, 373.50, -9.10, -1993.20, 458.40, 200.00},
- { "LVA Freight Depot", 1457.30, 863.20, -89.00, 1777.40, 1143.20, 110.90},
- { "LVA Freight Depot", 1375.60, 919.40, -89.00, 1457.30, 1203.20, 110.90},
- { "LVA Freight Depot", 1277.00, 1087.60, -89.00, 1375.60, 1203.20, 110.90},
- { "LVA Freight Depot", 1315.30, 1044.60, -89.00, 1375.60, 1087.60, 110.90},
- { "LVA Freight Depot", 1236.60, 1163.40, -89.00, 1277.00, 1203.20, 110.90},
- { "Las Barrancas", -926.10, 1398.70, -3.00, -719.20, 1634.60, 200.00},
- { "Las Brujas", -365.10, 2123.00, -3.00, -208.50, 2217.60, 200.00},
- { "Las Colinas", 1994.30, -1100.80, -89.00, 2056.80, -920.80, 110.90},
- { "Las Colinas", 2056.80, -1126.30, -89.00, 2126.80, -920.80, 110.90},
- { "Las Colinas", 2185.30, -1154.50, -89.00, 2281.40, -934.40, 110.90},
- { "Las Colinas", 2126.80, -1126.30, -89.00, 2185.30, -934.40, 110.90},
- { "Las Colinas", 2747.70, -1120.00, -89.00, 2959.30, -945.00, 110.90},
- { "Las Colinas", 2632.70, -1135.00, -89.00, 2747.70, -945.00, 110.90},
- { "Las Colinas", 2281.40, -1135.00, -89.00, 2632.70, -945.00, 110.90},
- { "Las Payasadas", -354.30, 2580.30, 2.00, -133.60, 2816.80, 200.00},
- { "Las Venturas Airport", 1236.60, 1203.20, -89.00, 1457.30, 1883.10, 110.90},
- { "Las Venturas Airport", 1457.30, 1203.20, -89.00, 1777.30, 1883.10, 110.90},
- { "Las Venturas Airport", 1457.30, 1143.20, -89.00, 1777.40, 1203.20, 110.90},
- { "Las Venturas Airport", 1515.80, 1586.40, -12.50, 1729.90, 1714.50, 87.50},
- { "Last Dime Motel", 1823.00, 596.30, -89.00, 1997.20, 823.20, 110.90},
- { "Leafy Hollow", -1166.90, -1856.00, 0.00, -815.60, -1602.00, 200.00},
- { "Lil' Probe Inn", -90.20, 1286.80, -3.00, 153.80, 1554.10, 200.00},
- { "Linden Side", 2749.90, 943.20, -89.00, 2923.30, 1198.90, 110.90},
- { "Linden Station", 2749.90, 1198.90, -89.00, 2923.30, 1548.90, 110.90},
- { "Linden Station", 2811.20, 1229.50, -39.50, 2861.20, 1407.50, 60.40},
- { "Little Mexico", 1701.90, -1842.20, -89.00, 1812.60, -1722.20, 110.90},
- { "Little Mexico", 1758.90, -1722.20, -89.00, 1812.60, -1577.50, 110.90},
- { "Los Flores", 2581.70, -1454.30, -89.00, 2632.80, -1393.40, 110.90},
- { "Los Flores", 2581.70, -1393.40, -89.00, 2747.70, -1135.00, 110.90},
- { "Los Santos International", 1249.60, -2394.30, -89.00, 1852.00, -2179.20, 110.90},
- { "Los Santos International", 1852.00, -2394.30, -89.00, 2089.00, -2179.20, 110.90},
- { "Los Santos International", 1382.70, -2730.80, -89.00, 2201.80, -2394.30, 110.90},
- { "Los Santos International", 1974.60, -2394.30, -39.00, 2089.00, -2256.50, 60.90},
- { "Los Santos International", 1400.90, -2669.20, -39.00, 2189.80, -2597.20, 60.90},
- { "Los Santos International", 2051.60, -2597.20, -39.00, 2152.40, -2394.30, 60.90},
- { "Marina", 647.70, -1804.20, -89.00, 851.40, -1577.50, 110.90},
- { "Marina", 647.70, -1577.50, -89.00, 807.90, -1416.20, 110.90},
- { "Marina", 807.90, -1577.50, -89.00, 926.90, -1416.20, 110.90},
- { "Market", 787.40, -1416.20, -89.00, 1072.60, -1310.20, 110.90},
- { "Market", 952.60, -1310.20, -89.00, 1072.60, -1130.80, 110.90},
- { "Market", 1072.60, -1416.20, -89.00, 1370.80, -1130.80, 110.90},
- { "Market", 926.90, -1577.50, -89.00, 1370.80, -1416.20, 110.90},
- { "Market Station", 787.40, -1410.90, -34.10, 866.00, -1310.20, 65.80},
- { "Martin Bridge", -222.10, 293.30, 0.00, -122.10, 476.40, 200.00},
- { "Missionary Hill", -2994.40, -811.20, 0.00, -2178.60, -430.20, 200.00},
- { "Montgomery", 1119.50, 119.50, -3.00, 1451.40, 493.30, 200.00},
- { "Montgomery", 1451.40, 347.40, -6.10, 1582.40, 420.80, 200.00},
- { "Montgomery Intersection", 1546.60, 208.10, 0.00, 1745.80, 347.40, 200.00},
- { "Montgomery Intersection", 1582.40, 347.40, 0.00, 1664.60, 401.70, 200.00},
- { "Mulholland", 1414.00, -768.00, -89.00, 1667.60, -452.40, 110.90},
- { "Mulholland", 1281.10, -452.40, -89.00, 1641.10, -290.90, 110.90},
- { "Mulholland", 1269.10, -768.00, -89.00, 1414.00, -452.40, 110.90},
- { "Mulholland", 1357.00, -926.90, -89.00, 1463.90, -768.00, 110.90},
- { "Mulholland", 1318.10, -910.10, -89.00, 1357.00, -768.00, 110.90},
- { "Mulholland", 1169.10, -910.10, -89.00, 1318.10, -768.00, 110.90},
- { "Mulholland", 768.60, -954.60, -89.00, 952.60, -860.60, 110.90},
- { "Mulholland", 687.80, -860.60, -89.00, 911.80, -768.00, 110.90},
- { "Mulholland", 737.50, -768.00, -89.00, 1142.20, -674.80, 110.90},
- { "Mulholland", 1096.40, -910.10, -89.00, 1169.10, -768.00, 110.90},
- { "Mulholland", 952.60, -937.10, -89.00, 1096.40, -860.60, 110.90},
- { "Mulholland", 911.80, -860.60, -89.00, 1096.40, -768.00, 110.90},
- { "Mulholland", 861.00, -674.80, -89.00, 1156.50, -600.80, 110.90},
- { "Mulholland Intersection", 1463.90, -1150.80, -89.00, 1812.60, -768.00, 110.90},
- { "North Rock", 2285.30, -768.00, 0.00, 2770.50, -269.70, 200.00},
- { "Ocean Docks", 2373.70, -2697.00, -89.00, 2809.20, -2330.40, 110.90},
- { "Ocean Docks", 2201.80, -2418.30, -89.00, 2324.00, -2095.00, 110.90},
- { "Ocean Docks", 2324.00, -2302.30, -89.00, 2703.50, -2145.10, 110.90},
- { "Ocean Docks", 2089.00, -2394.30, -89.00, 2201.80, -2235.80, 110.90},
- { "Ocean Docks", 2201.80, -2730.80, -89.00, 2324.00, -2418.30, 110.90},
- { "Ocean Docks", 2703.50, -2302.30, -89.00, 2959.30, -2126.90, 110.90},
- { "Ocean Docks", 2324.00, -2145.10, -89.00, 2703.50, -2059.20, 110.90},
- { "Ocean Flats", -2994.40, 277.40, -9.10, -2867.80, 458.40, 200.00},
- { "Ocean Flats", -2994.40, -222.50, -0.00, -2593.40, 277.40, 200.00},
- { "Ocean Flats", -2994.40, -430.20, -0.00, -2831.80, -222.50, 200.00},
- { "Octane Springs", 338.60, 1228.50, 0.00, 664.30, 1655.00, 200.00},
- { "Old Venturas Strip", 2162.30, 2012.10, -89.00, 2685.10, 2202.70, 110.90},
- { "Palisades", -2994.40, 458.40, -6.10, -2741.00, 1339.60, 200.00},
- { "Palomino Creek", 2160.20, -149.00, 0.00, 2576.90, 228.30, 200.00},
- { "Paradiso", -2741.00, 793.40, -6.10, -2533.00, 1268.40, 200.00},
- { "Pershing Square", 1440.90, -1722.20, -89.00, 1583.50, -1577.50, 110.90},
- { "Pilgrim", 2437.30, 1383.20, -89.00, 2624.40, 1783.20, 110.90},
- { "Pilgrim", 2624.40, 1383.20, -89.00, 2685.10, 1783.20, 110.90},
- { "Pilson Intersection", 1098.30, 2243.20, -89.00, 1377.30, 2507.20, 110.90},
- { "Pirates in Men's Pants", 1817.30, 1469.20, -89.00, 2027.40, 1703.20, 110.90},
- { "Playa del Seville", 2703.50, -2126.90, -89.00, 2959.30, -1852.80, 110.90},
- { "Prickle Pine", 1534.50, 2583.20, -89.00, 1848.40, 2863.20, 110.90},
- { "Prickle Pine", 1117.40, 2507.20, -89.00, 1534.50, 2723.20, 110.90},
- { "Prickle Pine", 1848.40, 2553.40, -89.00, 1938.80, 2863.20, 110.90},
- { "Prickle Pine", 1938.80, 2624.20, -89.00, 2121.40, 2861.50, 110.90},
- { "Queens", -2533.00, 458.40, 0.00, -2329.30, 578.30, 200.00},
- { "Queens", -2593.40, 54.70, 0.00, -2411.20, 458.40, 200.00},
- { "Queens", -2411.20, 373.50, 0.00, -2253.50, 458.40, 200.00},
- { "Randolph Industrial Estate", 1558.00, 596.30, -89.00, 1823.00, 823.20, 110.90},
- { "Redsands East", 1817.30, 2011.80, -89.00, 2106.70, 2202.70, 110.90},
- { "Redsands East", 1817.30, 2202.70, -89.00, 2011.90, 2342.80, 110.90},
- { "Redsands East", 1848.40, 2342.80, -89.00, 2011.90, 2478.40, 110.90},
- { "Redsands West", 1236.60, 1883.10, -89.00, 1777.30, 2142.80, 110.90},
- { "Redsands West", 1297.40, 2142.80, -89.00, 1777.30, 2243.20, 110.90},
- { "Redsands West", 1377.30, 2243.20, -89.00, 1704.50, 2433.20, 110.90},
- { "Redsands West", 1704.50, 2243.20, -89.00, 1777.30, 2342.80, 110.90},
- { "Regular Tom", -405.70, 1712.80, -3.00, -276.70, 1892.70, 200.00},
- { "Richman", 647.50, -1118.20, -89.00, 787.40, -954.60, 110.90},
- { "Richman", 647.50, -954.60, -89.00, 768.60, -860.60, 110.90},
- { "Richman", 225.10, -1369.60, -89.00, 334.50, -1292.00, 110.90},
- { "Richman", 225.10, -1292.00, -89.00, 466.20, -1235.00, 110.90},
- { "Richman", 72.60, -1404.90, -89.00, 225.10, -1235.00, 110.90},
- { "Richman", 72.60, -1235.00, -89.00, 321.30, -1008.10, 110.90},
- { "Richman", 321.30, -1235.00, -89.00, 647.50, -1044.00, 110.90},
- { "Richman", 321.30, -1044.00, -89.00, 647.50, -860.60, 110.90},
- { "Richman", 321.30, -860.60, -89.00, 687.80, -768.00, 110.90},
- { "Richman", 321.30, -768.00, -89.00, 700.70, -674.80, 110.90},
- { "Robada Intersection", -1119.00, 1178.90, -89.00, -862.00, 1351.40, 110.90},
- { "Roca Escalante", 2237.40, 2202.70, -89.00, 2536.40, 2542.50, 110.90},
- { "Roca Escalante", 2536.40, 2202.70, -89.00, 2625.10, 2442.50, 110.90},
- { "Rockshore East", 2537.30, 676.50, -89.00, 2902.30, 943.20, 110.90},
- { "Rockshore West", 1997.20, 596.30, -89.00, 2377.30, 823.20, 110.90},
- { "Rockshore West", 2377.30, 596.30, -89.00, 2537.30, 788.80, 110.90},
- { "Rodeo", 72.60, -1684.60, -89.00, 225.10, -1544.10, 110.90},
- { "Rodeo", 72.60, -1544.10, -89.00, 225.10, -1404.90, 110.90},
- { "Rodeo", 225.10, -1684.60, -89.00, 312.80, -1501.90, 110.90},
- { "Rodeo", 225.10, -1501.90, -89.00, 334.50, -1369.60, 110.90},
- { "Rodeo", 334.50, -1501.90, -89.00, 422.60, -1406.00, 110.90},
- { "Rodeo", 312.80, -1684.60, -89.00, 422.60, -1501.90, 110.90},
- { "Rodeo", 422.60, -1684.60, -89.00, 558.00, -1570.20, 110.90},
- { "Rodeo", 558.00, -1684.60, -89.00, 647.50, -1384.90, 110.90},
- { "Rodeo", 466.20, -1570.20, -89.00, 558.00, -1385.00, 110.90},
- { "Rodeo", 422.60, -1570.20, -89.00, 466.20, -1406.00, 110.90},
- { "Rodeo", 466.20, -1385.00, -89.00, 647.50, -1235.00, 110.90},
- { "Rodeo", 334.50, -1406.00, -89.00, 466.20, -1292.00, 110.90},
- { "Royal Casino", 2087.30, 1383.20, -89.00, 2437.30, 1543.20, 110.90},
- { "San Andreas Sound", 2450.30, 385.50, -100.00, 2759.20, 562.30, 200.00},
- { "Santa Flora", -2741.00, 458.40, -7.60, -2533.00, 793.40, 200.00},
- { "Santa Maria Beach", 342.60, -2173.20, -89.00, 647.70, -1684.60, 110.90},
- { "Santa Maria Beach", 72.60, -2173.20, -89.00, 342.60, -1684.60, 110.90},
- { "Shady Cabin", -1632.80, -2263.40, -3.00, -1601.30, -2231.70, 200.00},
- { "Shady Creeks", -1820.60, -2643.60, -8.00, -1226.70, -1771.60, 200.00},
- { "Shady Creeks", -2030.10, -2174.80, -6.10, -1820.60, -1771.60, 200.00},
- { "Sobell Rail Yards", 2749.90, 1548.90, -89.00, 2923.30, 1937.20, 110.90},
- { "Spinybed", 2121.40, 2663.10, -89.00, 2498.20, 2861.50, 110.90},
- { "Starfish Casino", 2437.30, 1783.20, -89.00, 2685.10, 2012.10, 110.90},
- { "Starfish Casino", 2437.30, 1858.10, -39.00, 2495.00, 1970.80, 60.90},
- { "Starfish Casino", 2162.30, 1883.20, -89.00, 2437.30, 2012.10, 110.90},
- { "Temple", 1252.30, -1130.80, -89.00, 1378.30, -1026.30, 110.90},
- { "Temple", 1252.30, -1026.30, -89.00, 1391.00, -926.90, 110.90},
- { "Temple", 1252.30, -926.90, -89.00, 1357.00, -910.10, 110.90},
- { "Temple", 952.60, -1130.80, -89.00, 1096.40, -937.10, 110.90},
- { "Temple", 1096.40, -1130.80, -89.00, 1252.30, -1026.30, 110.90},
- { "Temple", 1096.40, -1026.30, -89.00, 1252.30, -910.10, 110.90},
- { "The Camel's Toe", 2087.30, 1203.20, -89.00, 2640.40, 1383.20, 110.90},
- { "The Clown's Pocket", 2162.30, 1783.20, -89.00, 2437.30, 1883.20, 110.90},
- { "The Emerald Isle", 2011.90, 2202.70, -89.00, 2237.40, 2508.20, 110.90},
- { "The Farm", -1209.60, -1317.10, 114.90, -908.10, -787.30, 251.90},
- { "The Four Dragons Casino", 1817.30, 863.20, -89.00, 2027.30, 1083.20, 110.90},
- { "The High Roller", 1817.30, 1283.20, -89.00, 2027.30, 1469.20, 110.90},
- { "The Mako Span", 1664.60, 401.70, 0.00, 1785.10, 567.20, 200.00},
- { "The Panopticon", -947.90, -304.30, -1.10, -319.60, 327.00, 200.00},
- { "The Pink Swan", 1817.30, 1083.20, -89.00, 2027.30, 1283.20, 110.90},
- { "The Sherman Dam", -968.70, 1929.40, -3.00, -481.10, 2155.20, 200.00},
- { "The Strip", 2027.40, 863.20, -89.00, 2087.30, 1703.20, 110.90},
- { "The Strip", 2106.70, 1863.20, -89.00, 2162.30, 2202.70, 110.90},
- { "The Strip", 2027.40, 1783.20, -89.00, 2162.30, 1863.20, 110.90},
- { "The Strip", 2027.40, 1703.20, -89.00, 2137.40, 1783.20, 110.90},
- { "The Visage", 1817.30, 1863.20, -89.00, 2106.70, 2011.80, 110.90},
- { "The Visage", 1817.30, 1703.20, -89.00, 2027.40, 1863.20, 110.90},
- { "Unity Station", 1692.60, -1971.80, -20.40, 1812.60, -1932.80, 79.50},
- { "Valle Ocultado", -936.60, 2611.40, 2.00, -715.90, 2847.90, 200.00},
- { "Verdant Bluffs", 930.20, -2488.40, -89.00, 1249.60, -2006.70, 110.90},
- { "Verdant Bluffs", 1073.20, -2006.70, -89.00, 1249.60, -1842.20, 110.90},
- { "Verdant Bluffs", 1249.60, -2179.20, -89.00, 1692.60, -1842.20, 110.90},
- { "Verdant Meadows", 37.00, 2337.10, -3.00, 435.90, 2677.90, 200.00},
- { "Verona Beach", 647.70, -2173.20, -89.00, 930.20, -1804.20, 110.90},
- { "Verona Beach", 930.20, -2006.70, -89.00, 1073.20, -1804.20, 110.90},
- { "Verona Beach", 851.40, -1804.20, -89.00, 1046.10, -1577.50, 110.90},
- { "Verona Beach", 1161.50, -1722.20, -89.00, 1323.90, -1577.50, 110.90},
- { "Verona Beach", 1046.10, -1722.20, -89.00, 1161.50, -1577.50, 110.90},
- { "Vinewood", 787.40, -1310.20, -89.00, 952.60, -1130.80, 110.90},
- { "Vinewood", 787.40, -1130.80, -89.00, 952.60, -954.60, 110.90},
- { "Vinewood", 647.50, -1227.20, -89.00, 787.40, -1118.20, 110.90},
- { "Vinewood", 647.70, -1416.20, -89.00, 787.40, -1227.20, 110.90},
- { "Whitewood Estates", 883.30, 1726.20, -89.00, 1098.30, 2507.20, 110.90},
- { "Whitewood Estates", 1098.30, 1726.20, -89.00, 1197.30, 2243.20, 110.90},
- { "Willowfield", 1970.60, -2179.20, -89.00, 2089.00, -1852.80, 110.90},
- { "Willowfield", 2089.00, -2235.80, -89.00, 2201.80, -1989.90, 110.90},
- { "Willowfield", 2089.00, -1989.90, -89.00, 2324.00, -1852.80, 110.90},
- { "Willowfield", 2201.80, -2095.00, -89.00, 2324.00, -1989.90, 110.90},
- { "Willowfield", 2541.70, -1941.40, -89.00, 2703.50, -1852.80, 110.90},
- { "Willowfield", 2324.00, -2059.20, -89.00, 2541.70, -1852.80, 110.90},
- { "Willowfield", 2541.70, -2059.20, -89.00, 2703.50, -1941.40, 110.90},
- { "Yellow Bell Station", 1377.40, 2600.40, -21.90, 1492.40, 2687.30, 78.00},
- // Main Zones
- { "Los Santos", 44.60, -2892.90, -242.90, 2997.00, -768.00, 900.00},
- { "Las Venturas", 869.40, 596.30, -242.90, 2997.00, 2993.80, 900.00},
- { "Bone County", -480.50, 596.30, -242.90, 869.40, 2993.80, 900.00},
- { "Tierra Robada", -2997.40, 1659.60, -242.90, -480.50, 2993.80, 900.00},
- { "Tierra Robada", -1213.90, 596.30, -242.90, -480.50, 1659.60, 900.00},
- { "San Fierro", -2997.40, -1115.50, -242.90, -1213.90, 1659.60, 900.00},
- { "Red County", -1213.90, -768.00, -242.90, 2997.00, 596.30, 900.00},
- { "Flint County", -1213.90, -2892.90, -242.90, 44.60, -768.00, 900.00},
- { "Whetstone", -2997.40, -2892.90, -242.90, -1213.90, -1115.50, 900.00}};
- public OnFilterScriptInit()
- {
- print("\n-----------------------------------------");
- print("Stefan/Kevin974 - Speedometer/Fuel/Engine system");
- print("-----------------------------------------\n");
- for(new Vehicles = 0; Vehicles < MAX_VEHICLES; Vehicles++)
- {
- Vehicle[Vehicles][Fuel] = Random(SPAWN_GAS_MIN, SPAWN_GAS_MAX);
- Vehicle[Vehicles][Engine] = random(1); //Vehicle[vehicle][Engine] = 0;
- }
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- Speed[i][ShowSpeed] = 1;
- Speed[i][Refueling] = 0;
- Speed[i][Speedom] = TextDrawCreate(506.000000,351.000000,"_");
- TextDrawUseBox(Speed[i][Speedom],1);
- TextDrawBoxColor(Speed[i][Speedom],0x00000065);
- TextDrawTextSize(Speed[i][Speedom],625.000000,0.000000);
- TextDrawAlignment(Speed[i][Speedom],0);
- TextDrawBackgroundColor(Speed[i][Speedom],0x000000FF);
- TextDrawFont(Speed[i][Speedom],2);
- TextDrawLetterSize(Speed[i][Speedom],0.25,1.0);
- TextDrawColor(Speed[i][Speedom],0xFFFFFFFF);
- TextDrawSetOutline(Speed[i][Speedom],1);
- TextDrawSetProportional(Speed[i][Speedom],1);
- TextDrawSetShadow(Speed[i][Speedom],1);
- SetTimerEx("Speedometer",1000,true,"i",i);
- }
- return 1;
- }
- public OnFilterScriptExit()
- {
- for(new i = 0; i <MAX_PLAYERS; i++)
- {
- TextDrawDestroy(Text:Speed[i][Speedom]);
- }
- }
- public OnPlayerCommandText(playerid,cmdtext[])
- {
- dcmd(refuel,6,cmdtext);
- dcmd(speed,5,cmdtext);
- dcmd(lock,4,cmdtext);
- dcmd(unlock,6,cmdtext);
- dcmd(eject,5,cmdtext);
- dcmd(engine,6,cmdtext);
- return false;
- }
- public OnVehicleSpawn(vehicleid)
- {
- Vehicle[vehicleid][Fuel] = Random(SPAWN_GAS_MIN, SPAWN_GAS_MAX);
- Vehicle[vehicleid][Engine] = random(1); //Vehicle[vehicle][Engine] = 0;
- return true;
- }
- public OnPlayerStateChange(playerid, newstate, oldstate)
- {
- if(newstate == PLAYER_STATE_ONFOOT)
- {
- TextDrawHideForPlayer(playerid, Speed[playerid][Speedom]);
- }
- if(newstate == PLAYER_STATE_DRIVER)
- {
- new vehicle = GetPlayerVehicleID(playerid);
- new VehicleModel = GetVehicleModel(GetPlayerVehicleID(playerid));
- if( VehicleModel == 509 || VehicleModel == 481 || VehicleModel == 510 )
- {
- TogglePlayerControllable(playerid, true);
- Vehicle[vehicle][Engine] = 1;
- } else if(Vehicle[vehicle][Engine] == 0)
- {
- GameTextForPlayer(playerid,"~w~Turn Engine on with '~r~/Engine On~w~'",4000,3);
- TogglePlayerControllable(playerid, false);
- SetTimerEx("VehicleCheckStatus",1000,true,"i",playerid);
- }
- }
- return true;
- }
- public OnPlayerExitVehicle(playerid, vehicleid)
- {
- if(Speed[playerid][Refueling] == 1) return StopRefueling(playerid);
- return true;
- }
- public Speedometer(playerid)
- {
- new State = GetPlayerState(playerid);
- if(State == PLAYER_STATE_DRIVER && IsPlayerInAnyVehicle(playerid))
- {
- if(Speed[playerid][ShowSpeed] == 1)
- {
- #define MULTIPLY_SPEED 4
- new vehicleid = GetPlayerVehicleID(playerid);
- new VehicleModel = GetVehicleModel(vehicleid);
- new Float:x, Float:y, Float:z, Float:health, string[256];
- GetPlayerPos(playerid, x, y, z); GetVehicleHealth(vehicleid, health);
- new Float:Dis = floatsqroot(floatpower(floatabs(floatsub(Speed[playerid][OldCoordsX],x)),2) + floatpower(floatabs(floatsub(Speed[playerid][OldCoordsY],y)),2));
- if(Vehicle[vehicleid][Fuel] <= 0){ RemovePlayerFromVehicle(playerid); SendClientMessage(playerid, COLOR_YELLOW, "[FUEL]: There is no fuel in the vehicle."); }
- if(VehicleModel==509||VehicleModel==481||VehicleModel==510) { SetVehicleHealth(GetPlayerVehicleID(playerid), 1000); Vehicle[vehicleid][Fuel] = 100; }
- if(VehicleModel==520||VehicleModel==476||VehicleModel==593||VehicleModel==553||VehicleModel==513||VehicleModel==512||VehicleModel==577||VehicleModel==592||VehicleModel==511||VehicleModel==539||VehicleModel==464||VehicleModel==519) { Vehicle[vehicleid][Fuel] = 100; }
- new speed = (floatround(Dis)*MULTIPLY_SPEED);
- new locked[15], Sspeed[15];
- if(Vehicle[vehicleid][IsLocked] == 1) { locked = "~R~Locked"; } else { locked = "~G~Unlocked"; }
- if( speed == 0) {
- format(Sspeed,sizeof(Sspeed),"~G~%dm/h",(floatround(Dis)*MULTIPLY_SPEED));
- } else if( speed >= 1 && speed <= 65 ){
- format(Sspeed,sizeof(Sspeed),"~G~%dm/h",(floatround(Dis)*MULTIPLY_SPEED));
- Vehicle[vehicleid][Fuel] -= 0.01;
- } else if( speed >= 66 && speed <= 120 ){
- format(Sspeed,sizeof(Sspeed),"~Y~%dm/h",(floatround(Dis)*MULTIPLY_SPEED));
- Vehicle[vehicleid][Fuel] -= 0.02;
- } else {
- format(Sspeed,sizeof(Sspeed),"~R~%dm/h",(floatround(Dis)*MULTIPLY_SPEED));
- Vehicle[vehicleid][Fuel] -= 0.03;
- }
- format(string,sizeof(string),"~B~Vehicle:~n~~w~%s~n~~B~Speed: %s~n~~B~Fuel: ~W~%.1f~n~~B~Health: ~W~%.1f~n~~b~Status: %s~n~~B~Location:~n~~w~%s" ,VehiclesName[GetVehicleModel(vehicleid)-400], Sspeed, Vehicle[vehicleid][Fuel], health/10, locked, ReturnPlayerZone(playerid));
- TextDrawSetString(Speed[playerid][Speedom], string);
- TextDrawShowForPlayer(playerid, Speed[playerid][Speedom]);
- Speed[playerid][OldCoordsX] = x; Speed[playerid][OldCoordsY] = y;
- } else { TextDrawHideForPlayer(playerid, Speed[playerid][Speedom]); }
- }
- return true;
- }
- ///////////////////////////
- // Functions
- //////////////////////////
- stock Random(min, max)
- {
- new a = random(max - min) + min;
- return a;
- }
- stock GetName(playerid)
- {
- new name[MAX_PLAYER_NAME]; GetPlayerName(playerid,name,sizeof(name));
- return name;
- }
- public PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z)
- {
- new Float:oldposx, Float:oldposy, Float:oldposz;
- new Float:tempposx, Float:tempposy, Float:tempposz;
- GetPlayerPos(playerid, oldposx, oldposy, oldposz);
- tempposx = (oldposx -x); tempposy = (oldposy -y); tempposz = (oldposz -z);
- if(((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
- { return true; }
- return false;
- }
- ///////////////////////////
- // Commands
- //////////////////////////
- dcmd_refuel(playerid,params[]){
- #pragma unused params
- if(IsPlayerConnected(playerid) && IsPlayerInAnyVehicle(playerid)){
- if(IsAtFuelStation(playerid) && GetPlayerState(playerid) == PLAYER_STATE_DRIVER){
- new vehicleid = GetPlayerVehicleID(playerid);
- if(Speed[playerid][Refueling] == 0){
- if(GetVehicleModel(vehicleid) == 481 || GetVehicleModel(vehicleid) == 509 || GetVehicleModel(vehicleid) == 510) return SendClientMessage(playerid,COLOR_YELLOW,".:: [ERROR]: This vehicle does not need fuel :.");
- if(Vehicle[vehicleid][Fuel] >= 100){
- SendClientMessage(playerid,COLOR_YELLOW,".:: [FUEL]: Your gas tank is already full.");
- } else {
- Vehicle[GetPlayerVehicleID(playerid)][OldFuel] = 0; Speed[playerid][Refueling] = 1;
- Speed[playerid][ReFuelTimer] = SetTimerEx("ReFill", 1000, true, "i", playerid); }
- } else { SendClientMessage(playerid,COLOR_YELLOW,".:: [FUEL]: You are allready refueling your car."); }
- } else { SendClientMessage(playerid,COLOR_YELLOW,".:: [FUEL]: You must be at a gas station to refuel"); } }
- return true;
- }
- dcmd_lock(playerid,params[]){
- #pragma unused params
- if(IsPlayerConnected(playerid) && Vehicle[GetPlayerVehicleID(playerid)][IsLocked] == 0){
- if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER){
- for(new i = 0; i <MAX_PLAYERS; i++) { if (i != playerid) { SetVehicleParamsForPlayer(GetPlayerVehicleID(playerid),i, 0, 1); } }
- SendClientMessage(playerid,COLOR_GREY, ".:: [VEHICLE]: Vehicle is Locked! (10 minutes)");
- new Float:X, Float:Y, Float:Z; GetPlayerPos(playerid,X,Y,Z);
- PlayerPlaySound(playerid,1057,X,Y,Z); Vehicle[GetPlayerVehicleID(playerid)][IsLocked] = 1;
- SetTimerEx("UnlockVehicle",600000,false,"i",GetPlayerVehicleID(playerid)); } }
- return true;
- }
- dcmd_unlock(playerid,params[]){
- #pragma unused params
- if(IsPlayerConnected(playerid) && Vehicle[GetPlayerVehicleID(playerid)][IsLocked] == 1){
- if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER) {
- for(new i = 0; i <MAX_PLAYERS; i++) { SetVehicleParamsForPlayer(GetPlayerVehicleID(playerid),i, 0, 0); }
- SendClientMessage(playerid,COLOR_GREY, ".:: [VEHICLE]: Vehicle is Unlocked!");
- new Float:X, Float:Y, Float:Z; GetPlayerPos(playerid,X,Y,Z);
- PlayerPlaySound(playerid,1057,X,Y,Z); Vehicle[GetPlayerVehicleID(playerid)][IsLocked] = 0; } }
- return true;
- }
- dcmd_eject(playerid,params[]) {
- #pragma unused params
- if(IsPlayerConnected(playerid)){
- if(!strlen(params)) return SendClientMessage(playerid, COLOR_WHITE, "[USAGE]: /eject [Player/ID]");
- new giveplayerid = ReturnUser(params);
- if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER && IsPlayerInVehicle(giveplayerid, GetPlayerVehicleID(playerid))){
- if(IsPlayerConnected(giveplayerid) && playerid != giveplayerid){
- SendFormattedMessage(playerid,COLOR_ORANGE,"[EJECT]: You have ejected %s(%i)from your vehicle.", GetName(giveplayerid), giveplayerid);
- SendFormattedMessage(giveplayerid,COLOR_ORANGE,"[EJECT]: You got ejected from %s's(%d) vehicle.", GetName(playerid), playerid);
- RemovePlayerFromVehicle(giveplayerid);} }
- }
- return true;
- }
- dcmd_engine(playerid,params[]){
- #pragma unused params
- if(IsPlayerConnected(playerid)){
- if(!strlen(params)) return SendClientMessage(playerid, COLOR_WHITE, "[USAGE]: /engine [on/off]");
- new vehicle = GetPlayerVehicleID(playerid);
- if(strcmp(params,"on",true) == 0) {
- if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER) {
- if(Vehicle[vehicle][Engine] == 0) { GameTextForPlayer(playerid,"~W~Starting engine",3000,3); SetTimerEx("TurnOnEngine", MAX_START_TIME*1000, 0, "dd", playerid, vehicle); }
- } }
- if(strcmp(params,"off",true) == 0) { TurnOffEngine(playerid, vehicle); }
- }
- return true;
- }
- dcmd_speed(playerid,params[]){
- #pragma unused params
- if(IsPlayerConnected(playerid)){
- if(!strlen(params)) return SendClientMessage(playerid, COLOR_WHITE, "[USAGE]: /speed [on/off]");
- if(strcmp(params,"on",true) == 0) { Speed[playerid][ShowSpeed]= 1; GameTextForPlayer(playerid,"~w~Speedometer ~g~On",2000,3); }
- if(strcmp(params,"off",true) == 0) { Speed[playerid][ShowSpeed] = 0; GameTextForPlayer(playerid,"~w~Speedometer ~r~Off",2000,3); }
- }
- return true;
- }
- ///////////////////////////
- // Vehicle Functions
- //////////////////////////
- public UnlockVehicle(vehicleid)
- {
- for(new i = 0; i <MAX_PLAYERS; i++)
- {
- SetVehicleParamsForPlayer(vehicleid,i, 0, 0);
- }
- Vehicle[vehicleid][IsLocked] = 0;
- }
- public TurnOnEngine(playerid, vehicle)
- {
- if(Vehicle[vehicle][Engine] == 0)
- {
- GameTextForPlayer(playerid,"~W~Engine turned ~g~On",3000,1);
- TogglePlayerControllable(playerid, true);
- Vehicle[vehicle][Engine] = 1;
- }
- return true;
- }
- public TurnOffEngine(playerid, vehicle)
- {
- if(Vehicle[vehicle][Engine] == 1)
- {
- GameTextForPlayer(playerid,"~W~Engine turned ~r~Off",3000,1);
- RemovePlayerFromVehicle(playerid);
- Vehicle[vehicle][Engine] = 0;
- }
- return true;
- }
- stock VehicleCheckStatus(playerid)
- {
- new vehicle = GetPlayerVehicleID(playerid);
- new VehicleModel = GetVehicleModel(GetPlayerVehicleID(playerid));
- if( VehicleModel == 509 || VehicleModel == 481 || VehicleModel == 510 )// Bikes
- {
- TogglePlayerControllable(playerid, true);
- Vehicle[vehicle][Engine] = 1;
- }
- if(Vehicle[vehicle][Engine] == 0)
- {
- TogglePlayerControllable(playerid, false);
- } else {
- TogglePlayerControllable(playerid, true);
- }
- }
- ///////////////////////////
- // Fuel Functions
- //////////////////////////
- public ReFill(playerid)
- {
- new Float:x, Float:y, Float:z;
- if(GetPlayerPos(playerid, x, y, z) != IsAtFuelStation(playerid) || Vehicle[GetPlayerVehicleID(playerid)][Fuel] >= 100){
- StopRefueling(playerid);
- } else { Vehicle[GetPlayerVehicleID(playerid)][Fuel] ++; Vehicle[GetPlayerVehicleID(playerid)][OldFuel] ++; }
- return true;
- }
- stock StopRefueling(playerid)
- {
- GivePlayerMoney(playerid, -Vehicle[GetPlayerVehicleID(playerid)][OldFuel]);
- SendFormattedMessage(playerid, COLOR_YELLOW,".:: [FUEL]: Your vehicle has been refueled for $%d.", Vehicle[GetPlayerVehicleID(playerid)][OldFuel]);
- Speed[playerid][Refueling] = 0; KillTimer(Speed[playerid][ReFuelTimer]);
- return true;
- }
- public IsAtFuelStation(playerid)
- {
- if(PlayerToPoint(10,playerid,1595.5406, 2198.0520, 10.3863) || PlayerToPoint(10,playerid,2202.0649, 2472.6697, 10.5677) ||
- PlayerToPoint(10,playerid,2115.1929, 919.9908, 10.5266) || PlayerToPoint(10,playerid,2640.7209, 1105.9565, 10.5274) ||
- PlayerToPoint(10,playerid,608.5971, 1699.6238, 6.9922) || PlayerToPoint(10,playerid,618.4878, 1684.5792, 6.9922) ||
- PlayerToPoint(10,playerid,2146.3467, 2748.2893, 10.5245) || PlayerToPoint(10,playerid,-1679.4595, 412.5129, 6.9973) ||
- PlayerToPoint(10,playerid,-1327.5607, 2677.4316, 49.8093) || PlayerToPoint(10,playerid,-1470.0050, 1863.2375, 32.3521) ||
- PlayerToPoint(10,playerid,-2409.2200, 976.2798, 45.2969) || PlayerToPoint(10,playerid,-2244.1396, -2560.5833, 31.9219) ||
- PlayerToPoint(10,playerid,-1606.0544, -2714.3083, 48.5335) || PlayerToPoint(10,playerid,1937.4293, -1773.1865, 13.3828) ||
- PlayerToPoint(10,playerid,-91.3854, -1169.9175, 2.4213) || PlayerToPoint(10,playerid,1383.4221, 462.5385, 20.1506) ||
- PlayerToPoint(10,playerid,660.4590, -565.0394, 16.3359) || PlayerToPoint(10,playerid,1381.7206, 459.1907, 20.3452) ||
- PlayerToPoint(10,playerid,-1605.7156, -2714.4573, 48.5335))
- { return true; }
- return false;
- }
- ///////////////////////////
- // Zone Functions
- //////////////////////////
- stock IsPlayerInZone(playerid, zoneid) {
- if(zoneid == -1) return false;
- new Float:x, Float:y, Float:z;
- GetPlayerPos(playerid, x, y, z);
- if(x >= zones[zoneid][zone_minx] && x < zones[zoneid][zone_maxx] && y >= zones[zoneid][zone_miny] && y < zones[zoneid][zone_maxy] && z >= zones[zoneid][zone_minz] && z < zones[zoneid][zone_maxz] && z < 900.0) return true;
- return false;
- }
- stock ReturnPlayerZone(playerid)
- {
- new playerzone[256] = "Unknown";
- for(new j; j < sizeof(zones); j++) {
- if(IsPlayerInZone(playerid,j)) {
- memcpy(playerzone, zones[j][zone_name], 0, 108);
- break;
- }
- }
- return playerzone;
- }
- stock GetPlayerZoneID(playerid)
- {
- for(new j; j < sizeof(zones); j++) {
- if(IsPlayerInZone(playerid, j)) return j;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement