Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ETB Cars by EvilToastBrot.
- #include <a_samp>
- #include <SII>
- #include <utils>
- // Einstellungen
- #define MIN_ID 100 // Minimale ID bei einem Nummernschild
- #define MAX_ID 999 // Maximale ID bei einem Nummernschild
- #define MaxCarsOwn 3 // Maximale Cars, die ein Spieler besitzen kann. Standart: 3
- #define MaxCarsRent 2 // Maximale Cars, von denen ein Spieler den Schlüssel haben kann. Standart: 2
- new NSPraefix[5] = "ETB"; // Präfix vor dem Nummernschild. Z.B. : ETB-AB-123. NSPraefix ist hier das "ETB"
- new Float:NSHoehe = 1.25; // Höhe vom Nummernschild am Fahrzeug. Standart: 1.25
- // Dialoge
- #define BuyDiag 3
- // Color Defines
- #define COLOR_GREY 0xAFAFAFAA
- #define COLOR_LIGHTBLUE 0x33CCFFAA
- #define COLOR_YELLOW 0xFFFF00AA
- #define COLOR_NS 0x40B42CFF
- #define COLOR_WHITE 0xFFFFFFAA
- #define COLOR_RED 0xAA3333AA
- #define COLOR_GREEN 0x33AA33AA
- #define COLOR_TS 0x000000B2
- #define MAX_ZONE_NAME 40
- // Forwards
- forward SaveCar(i);
- forward LoadCar(i);
- forward Save();
- forward AddComponents(i);
- forward IsAWheel(componentid);
- forward IsAExhaust(componentid);
- forward IsASideR(componentid);
- forward IsASideL(componentid);
- forward IsAFB(componentid);
- forward IsARB(componentid);
- forward IsASpoiler(componentid);
- forward IsARoof(componentid);
- forward IsAtGasStation(playerid);
- forward Gas();
- forward IsAPlane(carid);
- forward IsABoat(carid);
- forward FillGas(OldFuel, i, playerid);
- forward Speedometer(playerid);
- forward IsANoTachoVeh(vehid);
- forward CreateNumber();
- forward vrandom(min, max);
- forward Respawn(vehicleid);
- forward CheckLock();
- // Enums
- enum car_info
- {
- model,
- Float:px,
- Float:py,
- Float:pz,
- Float:pa,
- vid,
- Key[MAX_PLAYER_NAME],
- Key2[MAX_PLAYER_NAME],
- c1,
- c2,
- Text3D:NS,
- Cars,
- ABC[11],
- Fuel,
- NSID,
- BuyPrice,
- Lock,
- Nitro,
- Hyd,
- Wheel,
- Auspuff,
- SeiteL,
- SeiteR,
- FB,
- RB,
- Spoiler,
- Roof,
- Hood,
- Vent,
- Lamp,
- Rented
- }
- enum showcars_info
- {
- mmodel,
- Float:Carx,
- Float:Cary,
- Float:Carz,
- Float:Cara,
- Color1,
- Color2,
- CarPreis,
- CarName[30],
- Text3D:lbl,
- v_id,
- }
- new PlayerCar[MAX_VEHICLES][car_info];
- new ShowCars[][showcars_info] = {
- // Teure Cars --> Jefferson Motel
- {411, 2133.9138, -1143.7885, 24.6356, 39.3993, 11, 11, 123000, "Infernus"},
- {541, 2135.8252, -1140.0043, 24.9697, 38.1644, 58, 8, 96000, "Bullet"},
- {415, 2136.5181, -1135.4103, 25.4611, 41.7207, 25, 1, 105000, "Cheetah"},
- {451, 2136.0132, -1130.2549, 25.3655, 44.7183, 125, 125, 152000, "Turismo"},
- {559, 2118.9443, -1142.8414, 24.4125, 325.7177, 58, 8, 85000, "Jester"},
- {603, 2118.2944, -1137.7709, 24.9499, 326.2623, 69, 1, 83000, "Phoenix"},
- {506, 2119.0291, -1131.2905, 25.0035, 327.8102, 6, 6, 91000, "Super GT"},
- {477, 2119.6836, -1125.5911, 25.1389, 321.6796, 94, 1, 80500, "ZR-350"},
- // Billige Cars --> Grotti
- {400,563.0027,-1289.0051,17.3406,359.3714,123,1, 30000, "Landstalker"},
- {402,556.0446,-1288.9548,17.0799,359.4561,13,13, 47000, "Buffalo"},
- {404,549.2369,-1288.6235,16.9810,359.7011,119,50, 21000, "Perenniel"},
- {421,542.5278,-1288.9679,17.1247,358.3234,13,1, 26000, "Washington"},
- {426,535.5063,-1288.5604,16.9853,358.5514,42,42, 31000, "Premier"},
- {439,528.6777,-1288.6896,17.1379,356.7412,8,17, 33500, "Staillon"},
- {445,521.8549,-1288.6853,17.1172,0.2166,35,35, 29500, "Admiral"},
- // Bikes --> Otto Cars
- {581,-1664.4714,1224.5912,13.2717,192.2560,58,1, 34000, "BF-400"},
- {522,-1666.4797,1221.6826,13.2515,263.8130,7,79, 59000, "NRG-500"},
- {461,-1648.9540,1207.0366,13.2605,38.4243,37,1, 20000, "PCJ-600"},
- {463,-1666.5693,1205.0956,13.2122,320.4418,84,84, 27500, "Freeway"},
- {468,-1670.1582,1205.4038,20.8252,304.4069,46,46,18500, "Sanchez"},
- {471,-1664.9088,1222.5028,20.6384,234.7174,103,111, 19000, "Quad"},
- {521,-1649.4164,1206.8403,20.7161,51.8923,75,13, 29000, "FCR-900"},
- {462,-1660.6293,1204.6680,20.7568,310.3289,13,13, 3500, "Faggio"},
- {586,-1655.2209,1203.9518,20.6685,317.3647,122,1, 17000, "Wayfarer"}
- }; // Die ShowCars. Struktur: ModelID, x, y, z, a, color1, color2, preis, name
- new const Float:CarRanges[][] = {
- {2127.0771,-1134.5930,25.5472}, // Jefferson
- {547.0040,-1280.7773,17.2482}, // Grotti
- {-1657.1593,1213.0844,21.1563} // Otto Cars
- }; // Die Ranges für IsPlayerInRangeOfPoint um zu prüfen, an welchem Autohaus er ist.
- new const Float:CarSpawns[][] = {
- {2127.2217,-1144.6227,24.6127,350.7450}, // Jefferson
- {558.6084,-1261.9918,16.9693,13.7288}, // Grotti
- {-1644.6960,1304.5389,7.0285,134.1403} // Otto Cars
- }; // Die Spawns für die Fahrzeuge nach dem Kauf
- new ABCD[26][0] = {
- {"A"}, {"B"}, {"C"}, {"D"}, {"E"}, {"F"}, {"G"}, {"H"}, {"I"}, {"J"}, {"K"}, {"L"}, {"M"},
- {"N"}, {"O"}, {"P"}, {"Q"}, {"R"}, {"S"}, {"T"}, {"U"}, {"V"}, {"W"}, {"X"}, {"Y"}, {"Z"}
- };
- new PlayerVehicle[212][] = {
- "Landstalker", "Bravura", "Buffalo", "Linerunner", "Perrenial", "Sentinel", "Dumper", "Firetruck", "Trashmaster", "Stretch", "Manana",
- "Infernus", "Voodoo", "Pony", "Mule", "Cheetah", "Ambulance", "Leviathan", "Moonbeam", "Esperanto", "Taxi", "Washington", "Bobcat",
- "Whoopee", "BF Injection", "Hunter", "Premier", "Enforcer", "Securicar", "Banshee", "Predator", "Bus", "Rhino", "Barracks", "Hotknife",
- "Trailer 1", "Previon", "Coach", "Cabbie", "Stallion", "Rumpo", "RC Bandit", "Romero", "Packer", "Monster", "Admiral", "Squalo",
- "Seasparrow", "Pizzaboy", "Tram", "Trailer 2", "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", "ZR-350", "Walton", "Regina", "Comet", "BMX", "Burrito",
- "Camper", "Marquis", "Baggage", "Dozer", "Maverick", "News Chopper", "Rancher", "FBI Rancher", "Virgo", "Greenwood", "Jetmax", "Hotring",
- "Sandking", "Blista Compact", "Police Maverick", "Boxvillde", "Benson", "Mesa", "RC Goblin", "Hotring Racer A", "Hotring Racer B",
- "Bloodring Banger", "Rancher", "Super GT", "Elegant", "Journey", "Bike", "Mountain Bike", "Beagle", "Cropduster","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 LA", "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 Flat", "Streak Carriage", "Kart", "Mower", "Dune", "Sweeper", "Broadway",
- "Tornado", "AT-400", "DFT-30", "Huntley", "Stafford", "BF-400", "News Van", "Tug", "Trailer 3", "Emperor", "Wayfarer", "Euros", "Hotdog",
- "Club", "Freight Carriage", "Trailer 4", "Andromada", "Dodo", "RC Cam", "Launch", "Police Car (LSPD)", "Police Car (SFPD)",
- "Police Car (LVPD)", "Police Ranger", "Picador", "S.W.A.T", "Alpha", "Phoenix", "Glendale", "Sadler", "Luggage Trailer A",
- "Luggage Trailer B", "Stairs", "Boxville", "Tiller", "Utility Trailer"
- };
- enum MainZone
- {
- Zone_Name[28],
- Float:Zone_Area[6]
- };
- static const SA_GPS_ZONE_NAMES[][MainZone] = {
- {"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", {1197.30,1044.60,-89.00,1277.00,1163.30,110.90}},
- {"Blackfield", {1166.50,795.00,-89.00,1375.60,1044.60,110.90}},
- {"Blackfield", {1277.00,1044.60,-89.00,1315.30,1087.60,110.90}},
- {"Blackfield", {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 LS", {1463.90,-1430.80,-89.00,1724.70,-1290.80,110.90}},
- {"Downtown LS", {1724.70,-1430.80,-89.00,1812.60,-1250.90,110.90}},
- {"Downtown LS", {1463.90,-1290.80,-89.00,1724.70,-1150.80,110.90}},
- {"Downtown LS", {1370.80,-1384.90,-89.00,1463.90,-1170.80,110.90}},
- {"Downtown LS", {1724.70,-1250.90,-89.00,1812.60,-1150.80,110.90}},
- {"Downtown LS", {1370.80,-1170.80,-89.00,1463.90,-1130.80,110.90}},
- {"Downtown LS", {1378.30,-1130.80,-89.00,1463.90,-1026.30,110.90}},
- {"Downtown LS", {1391.00,-1026.30,-89.00,1463.90,-926.90,110.90}},
- {"Downtown LS", {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 AP", {-1499.80,-50.00,-0.00,-1242.90,249.90,200.00}},
- {"Easter Bay AP", {-1794.90,-730.10,-3.00,-1213.90,-50.00,200.00}},
- {"Easter Bay AP", {-1213.90,-730.10,0.00,-1132.80,-50.00,200.00}},
- {"Easter Bay AP", {-1242.90,-50.00,0.00,-1213.90,578.30,200.00}},
- {"Easter Bay AP", {-1213.90,-50.00,-4.50,-947.90,578.30,200.00}},
- {"Easter Bay AP", {-1315.40,-405.30,15.40,-1264.40,-209.50,25.40}},
- {"Easter Bay AP", {-1354.30,-287.30,15.40,-1315.40,-209.50,25.40}},
- {"Easter Bay AP", {-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}},
- {"Castillo del Diablo", {-464.50,2217.60,0.00,-208.50,2580.30,200.00}},
- {"Castillo del Diablo", {-208.50,2123.00,-7.60,114.00,2337.10,200.00}},
- {"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", {2623.10,943.20,-89.00,2749.90,1055.90,110.90}},
- {"Julius Thruway", {2685.10,1055.90,-89.00,2749.90,2626.50,110.90}},
- {"Julius Thruway", {2536.40,2442.50,-89.00,2685.10,2542.50,110.90}},
- {"Julius Thruway", {2625.10,2202.70,-89.00,2685.10,2442.50,110.90}},
- {"Julius Thruway", {2498.20,2542.50,-89.00,2685.10,2626.50,110.90}},
- {"Julius Thruway", {2237.40,2542.50,-89.00,2498.20,2663.10,110.90}},
- {"Julius Thruway", {2121.40,2508.20,-89.00,2237.40,2663.10,110.90}},
- {"Julius Thruway", {1938.80,2508.20,-89.00,2121.40,2624.20,110.90}},
- {"Julius Thruway", {1534.50,2433.20,-89.00,1848.40,2583.20,110.90}},
- {"Julius Thruway", {1848.40,2478.40,-89.00,1938.80,2553.40,110.90}},
- {"Julius Thruway", {1704.50,2342.80,-89.00,1848.40,2433.20,110.90}},
- {"Julius Thruway", {1377.30,2433.20,-89.00,1534.50,2507.20,110.90}},
- {"Julius Thruway", {1457.30,823.20,-89.00,2377.30,863.20,110.90}},
- {"Julius Thruway", {2377.30,788.80,-89.00,2537.30,897.90,110.90}},
- {"Julius Thruway", {1197.30,1163.30,-89.00,1236.60,2243.20,110.90}},
- {"Julius Thruway", {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.", {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}},
- {"LV Airport", {1236.60,1203.20,-89.00,1457.30,1883.10,110.90}},
- {"LV Airport", {1457.30,1203.20,-89.00,1777.30,1883.10,110.90}},
- {"LV Airport", {1457.30,1143.20,-89.00,1777.40,1203.20,110.90}},
- {"LV 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}},
- {"Liberty City", {-1000.00,400.00,1300.00,-700.00,600.00,1400.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}},
- {"LS International", {1249.60,-2394.30,-89.00,1852.00,-2179.20,110.90}},
- {"LS International", {1852.00,-2394.30,-89.00,2089.00,-2179.20,110.90}},
- {"LS International", {1382.70,-2730.80,-89.00,2201.80,-2394.30,110.90}},
- {"LS International", {1974.60,-2394.30,-39.00,2089.00,-2256.50,60.90}},
- {"LS International", {1400.90,-2669.20,-39.00,2189.80,-2597.20,60.90}},
- {"LS 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", {1546.60,208.10,0.00,1745.80,347.40,200.00}},
- {"Montgomery", {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", {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 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", {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}},
- {"4 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}},
- // Citys 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}}
- };
- new SideL, SideR;
- new Text:Tacho[MAX_PLAYERS];
- enum player_info { Own, Rent }
- new Player[MAX_PLAYERS][player_info];
- public OnFilterScriptInit()
- {
- print("\n--------------------------------------");
- print("ETB Cars by EvilToastBrot©");
- print("--------------------------------------\n");
- new str[150];
- for(new i = 0; i<sizeof(ShowCars); i++)
- {
- format(str, sizeof str,"Fahrzeug: %s\nPreis: %d$",ShowCars[i][CarName],ShowCars[i][CarPreis]);
- ShowCars[i][lbl] = Create3DTextLabel(str, COLOR_NS, 0.0, 0.0, 0.0, 40.0, 0, 0);
- ShowCars[i][v_id] = CreateVehicle(ShowCars[i][mmodel],ShowCars[i][Carx],ShowCars[i][Cary],ShowCars[i][Carz],ShowCars[i][Cara],ShowCars[i][Color1],ShowCars[i][Color2], 300);
- Attach3DTextLabelToVehicle(ShowCars[i][lbl], ShowCars[i][v_id], 0.0, 0.0, 1.25);
- }
- for(new i = 0; i<MAX_ID; i++)
- {
- LoadCar(i);
- AddComponents(i);
- }
- SetTimer("Save", 5000, 1);
- SetTimer("Gas", 20000, 1);
- SetTimer("CheckLock", 1000, 1);
- if(!fexist("/Cars/Players.ini"))
- {
- new File:f;
- f = fopen("/Cars/Players.ini", io_write);
- if(f) fclose(f);
- }
- return 1;
- }
- public OnFilterScriptExit()
- {
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- SaveCar(i);
- }
- return 1;
- }
- main() { }
- public OnPlayerConnect(playerid)
- {
- Tacho[playerid] = TextDrawCreate(460.000000, 381.500000, " ");
- TextDrawBackgroundColor(Tacho[playerid], 255);
- TextDrawFont(Tacho[playerid], 1);
- TextDrawLetterSize(Tacho[playerid], 0.32, 0.97);
- TextDrawColor(Tacho[playerid], -1);
- TextDrawSetOutline(Tacho[playerid], 0);
- TextDrawSetProportional(Tacho[playerid], 1);
- TextDrawSetShadow(Tacho[playerid], 1);
- SetPlayerMapIcon(playerid, 0, 547.0040, -1280.7773, 17.2482, 55, 0);
- SetPlayerMapIcon(playerid, 1, 2127.0771, -1134.5930, 25.5472, 55, 0);
- SetPlayerMapIcon(playerid, 2, -1657.1593, 1213.0844, 21.1563, 55, 0);
- CheckLock();
- if(INI_Open("/Cars/Players.ini"))
- {
- new str[60];
- format(str, sizeof str, "%s: Owner ", pn(playerid));
- Player[playerid][Own] = INI_ReadInt(str);
- format(str, sizeof str, "%s: Renter ", pn(playerid));
- Player[playerid][Rent] = INI_ReadInt(str);
- INI_Close();
- }
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- TextDrawHideForPlayer(playerid, Tacho[playerid]);
- if(INI_Open("/Cars/Players.ini"))
- {
- new str[60];
- format(str, sizeof str, "%s: Owner ", pn(playerid));
- INI_WriteInt(str, Player[playerid][Own]);
- format(str, sizeof str, "%s: Rent ", pn(playerid));
- INI_WriteInt(str, Player[playerid][Rent]);
- INI_Save();
- INI_Close();
- }
- return 1;
- }
- public OnVehicleSpawn(vehicleid)
- {
- return 1;
- }
- public OnVehicleDeath(vehicleid, killerid)
- {
- SetTimerEx("Respawn", 3000, 0, "d", vehicleid);
- return 1;
- }
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- new idx, cmd[20], tmp[256], str[256];
- cmd = strtok(cmdtext, idx);
- if(!strcmp("/carhelp", cmdtext, true))
- {
- SendClientMessage(playerid, COLOR_YELLOW, "/SellCar --> Fahrzeug verkaufen");
- SendClientMessage(playerid, COLOR_YELLOW, "/Park --> Fahrzeug parken");
- SendClientMessage(playerid, COLOR_YELLOW, "/Back --> Fahrzeug an den Parkplatz teleportieren");
- SendClientMessage(playerid, COLOR_YELLOW, "/LC [CarID] --> Fahrzeug abschließen");
- SendClientMessage(playerid, COLOR_YELLOW, "/ULC [CarID] --> Fahrzeug aufschließen");
- SendClientMessage(playerid, COLOR_YELLOW, "/Lock --> Fahrzeug ab-/aufschließen ( Nur wenn man im Fahrzeug sitzt! )");
- SendClientMessage(playerid, COLOR_YELLOW, "/Fill --> Fahrzeug an der Tanke auftanken");
- SendClientMessage(playerid, COLOR_YELLOW, "/Cars --> Eigene Fahrzeuge einsehen");
- SendClientMessage(playerid, COLOR_YELLOW, "/GiveCarKey [PlayerID] [CarID] --> Jemanden einen Fahrzeugschlüssel leihen");
- if(IsPlayerAdmin(playerid))
- {
- SendClientMessage(playerid, COLOR_RED, "/GotoCar [CarID] --> Zu einem Fahrzeug teleportieren");
- SendClientMessage(playerid, COLOR_RED, "/EnterCar [CarID] --> In ein Fahrzeug hineinteleportieren");
- SendClientMessage(playerid, COLOR_RED, "/BackCar [CarID] --> Ein Fahrzeug zum Parkplatz hinteleportieren");
- }
- return 1;
- }
- if (strcmp("/sellcar", cmdtext, true) == 0)
- {
- if(IsPlayerInAnyVehicle(playerid))
- {
- for(new i = 0; i<MAX_VEHICLES; i++)
- {
- if(PlayerCar[i][vid] == GetPlayerVehicleID(playerid))
- {
- if(!strcmp(PlayerCar[i][Key], pn(playerid), false))
- {
- new sform[128];
- format(sform,sizeof sform,"/Cars/%d.ini",PlayerCar[i][NSID]);
- if(fexist(sform))
- {
- print("File existiert");
- GivePlayerMoney(playerid, PlayerCar[i][BuyPrice]/2);
- new pm = GetVehicleModel(PlayerCar[i][vid]);
- pm -= 400;
- format(str, sizeof str, "Du hast deinen %s für %d verkauft!", PlayerVehicle[pm], PlayerCar[i][BuyPrice]/2);
- SendClientMessage(playerid, COLOR_RED, str);
- DestroyVehicle(PlayerCar[i][vid]);
- if(INI_Open(sform))
- {
- INI_Remove(sform);
- INI_Save();
- INI_Close();
- }
- PlayerCar[i][BuyPrice] = 0;
- PlayerCar[i][px] = 0;
- PlayerCar[i][py] = 0;
- PlayerCar[i][pz] = 0;
- PlayerCar[i][pa] = 0;
- format(PlayerCar[i][Key], MAX_PLAYER_NAME, "");
- PlayerCar[i][model] = 0;
- PlayerCar[i][c1] = 0;
- PlayerCar[i][c2] = 0;
- Player[playerid][Own]--;
- format(PlayerCar[i][ABC], 11, "");
- return 1;
- }
- else
- {
- return 1;
- }
- }
- else
- {
- return SendClientMessage(playerid, COLOR_GREY, "Dieses Fahrzeug gehört dir nicht!");
- }
- }
- }
- }
- return 1;
- }
- if (strcmp("/park", cmdtext, true) == 0)
- {
- if(IsPlayerInAnyVehicle(playerid))
- {
- for(new i = 0; i<MAX_VEHICLES; i++)
- {
- if(PlayerCar[i][vid] == GetPlayerVehicleID(playerid))
- {
- if(!strcmp(PlayerCar[i][Key], pn(playerid), false))
- {
- GetVehiclePos(GetPlayerVehicleID(playerid), PlayerCar[i][px], PlayerCar[i][py], PlayerCar[i][pz]);
- GetVehicleZAngle(GetPlayerVehicleID(playerid), PlayerCar[i][pa]);
- new Float:hh;
- GetVehicleHealth(GetPlayerVehicleID(playerid), hh);
- DestroyVehicle(PlayerCar[i][vid]);
- PlayerCar[i][vid] = CreateVehicle(PlayerCar[i][model], PlayerCar[i][px], PlayerCar[i][py], PlayerCar[i][pz], PlayerCar[i][pa], PlayerCar[i][c1], PlayerCar[i][c2], -1);
- SetVehicleHealth(PlayerCar[i][vid], hh);
- AddComponents(i);
- }
- else
- {
- SendClientMessage(playerid, COLOR_GREY, "Das Fahrzeug gehört dir nicht!");
- }
- return 1;
- }
- }
- }
- return 1;
- }
- if (strcmp("/back", cmdtext, true) == 0)
- {
- if(IsPlayerConnected(playerid))
- {
- for(new i = 0; i<MAX_VEHICLES; i++)
- {
- if(PlayerCar[i][vid] == GetPlayerVehicleID(playerid))
- {
- if(!strcmp(PlayerCar[i][Key], pn(playerid), false) || !strcmp(pn(playerid), PlayerCar[i][Key2], false))
- {
- new Float:hh;
- GetVehicleHealth(GetPlayerVehicleID(playerid), hh);
- SetVehicleToRespawn(GetPlayerVehicleID(playerid));
- SetVehicleHealth(PlayerCar[i][vid], hh);
- AddComponents(i);
- }
- else
- {
- return SendClientMessage(playerid, COLOR_GREY, "Dieses Fahrzeug gehört dir nicht!");
- }
- return 1;
- }
- }
- }
- return 1;
- }
- if(!strcmp("/givecarkey", cmd, true))
- {
- tmp = strtok(cmdtext, idx);
- if(!strlen(tmp))
- {
- return SendClientMessage(playerid, COLOR_GREY, "Verwendung: /GiveCarKey [PlayerID/Name] [CarID]");
- }
- new pid = ReturnUser(tmp);
- if(!IsPlayerConnected(pid))
- {
- return SendClientMessage(playerid, COLOR_GREY, "Inaktiver Spieler!");
- }
- tmp = strtok(cmdtext, idx);
- if(!strlen(tmp))
- {
- return SendClientMessage(playerid, COLOR_GREY, "Verwendung: /GiveCarKey [PlayerID/Name] [CarID]");
- }
- new id = strval(tmp);
- new sform[128];
- format(sform, sizeof sform, "/Cars/%d.ini", id);
- for(new i = 0; i<MAX_VEHICLES; i++)
- {
- if(id == PlayerCar[i][NSID])
- {
- if(fexist(sform))
- {
- if(!strcmp(pn(playerid), PlayerCar[i][Key], false))
- {
- if(Player[pid][Rent] < MaxCarsRent)
- {
- format(PlayerCar[i][Key2], MAX_PLAYER_NAME, "%s", pn(pid));
- Player[pid][Rent]++;
- format(str, sizeof str, "Du hast %s den Schlüssel zu deinem %s ( ID: %d ) gegeben!", pn(pid), PlayerVehicle[GetVehicleModel(PlayerCar[i][vid])-400], PlayerCar[i][NSID]);
- SendClientMessage(playerid, COLOR_YELLOW, str);
- format(str, sizeof str, "%s hat dir den Schlüssel zu seinem %s ( ID: %d ) gegeben!", pn(playerid), PlayerVehicle[GetVehicleModel(PlayerCar[i][vid])-400], PlayerCar[i][NSID]);
- SendClientMessage(playerid, COLOR_YELLOW, str);
- PlayerCar[i][Rented] = 1;
- return 1;
- }
- else
- {
- new string[50];
- format(string, sizeof string, "Der Spieler hat bereits %s Cars geliehen!", MaxCarsRent);
- SendClientMessage(playerid, COLOR_GREY, string);
- return 1;
- }
- }
- else
- {
- return SendClientMessage(playerid, COLOR_GREY, "Dieses Fahrzeug gehört dir nicht!");
- }
- }
- }
- }
- return 1;
- }
- if(!strcmp("/trashkey", cmd, true))
- {
- tmp = strtok(cmdtext, idx);
- if(!strlen(tmp))
- {
- return SendClientMessage(playerid, COLOR_GREY, "Verwendung: /TrashKey [CarID]");
- }
- new id = strval(tmp);
- new sform[128];
- format(sform, sizeof sform, "/Cars/%d.ini", id);
- for(new i = 0; i<MAX_VEHICLES; i++)
- {
- if(id == PlayerCar[i][NSID])
- {
- if(fexist(sform))
- {
- if(PlayerCar[i][Rented])
- {
- if(!strcmp(pn(playerid), PlayerCar[i][Key2], false))
- {
- format(PlayerCar[i][Key2], MAX_PLAYER_NAME, "");
- Player[playerid][Rent]--;
- new string[128];
- PlayerCar[i][Rented] = 0;
- format(string, sizeof string, "Du hast den Schlüssel zu deinem %s ( ID: %d ) weggeworfen!", PlayerVehicle[GetVehicleModel(PlayerCar[i][vid])-400], PlayerCar[i][NSID]);
- SendClientMessage(playerid, COLOR_GREY, string);
- return 1;
- }
- else
- {
- return SendClientMessage(playerid, COLOR_GREY, "Du hast nicht den Schlüssel zu diesem Fahrzeug!");
- }
- }
- else
- {
- return SendClientMessage(playerid, COLOR_GREY, "Du hast keine Schlüssel ausgeliehen!");
- }
- }
- }
- }
- return 1;
- }
- if(!strcmp("/lc", cmd, true))
- {
- tmp = strtok(cmdtext, idx);
- new id = strval(tmp);
- new sform[128];
- format(sform,sizeof sform,"/Cars/%d.ini",id);
- if(!strlen(tmp))
- {
- return SendClientMessage(playerid, COLOR_GREY, "Verwendung: /LC [CarID]");
- }
- for(new i = 0; i<MAX_VEHICLES; i++)
- {
- if(id == PlayerCar[i][NSID])
- {
- if(fexist(sform))
- {
- if(!strcmp(pn(playerid), PlayerCar[i][Key], false))
- {
- PlayerCar[i][Lock] = 1;
- SetVehicleParams4All(PlayerCar[i][vid], 0, 1);
- SetVehicleParamsForPlayer(PlayerCar[i][vid], playerid, 0, 0);
- if(IsPlayerConnected(ReturnUser(PlayerCar[i][Key2]))) { SetVehicleParamsForPlayer(PlayerCar[i][vid], ReturnUser(PlayerCar[i][Key2]), 0, 0); }
- SendClientMessage(playerid, COLOR_GREEN, ".:: Fahrzeug abgeschlossen! ::.");
- return 1;
- }
- else if(strcmp(pn(playerid), PlayerCar[i][Key], false) != 0)
- {
- return SendClientMessage(playerid, COLOR_GREY, "Dieses Fahrzeug gehört dir nicht!");
- }
- if(PlayerCar[i][Rented])
- {
- if(!strcmp(pn(playerid), PlayerCar[i][Key2], false))
- {
- PlayerCar[i][Lock] = 1;
- SetVehicleParams4All(PlayerCar[i][vid], 0, 1);
- SetVehicleParamsForPlayer(PlayerCar[i][vid], playerid, 0, 0);
- if(IsPlayerConnected(ReturnUser(PlayerCar[i][Key2]))) { SetVehicleParamsForPlayer(PlayerCar[i][vid], ReturnUser(PlayerCar[i][Key2]), 0, 0); }
- SendClientMessage(playerid, COLOR_GREEN, ".:: Fahrzeug abgeschlossen! ::.");
- return 1;
- }
- else
- {
- return SendClientMessage(playerid, COLOR_GREY, "Dieses Fahrzeug gehört dir nicht!");
- }
- }
- }
- }
- }
- return 1;
- }
- if(!strcmp("/ulc", cmd, true))
- {
- tmp = strtok(cmdtext, idx);
- new id = strval(tmp);
- new sform[128];
- format(sform,sizeof sform,"/Cars/%d.ini",id);
- if(!strlen(tmp))
- {
- return SendClientMessage(playerid, COLOR_GREY, "Verwendung: /LC [CarID]");
- }
- for(new i = 0; i<MAX_VEHICLES; i++)
- {
- if(id == PlayerCar[i][NSID])
- {
- if(fexist(sform))
- {
- if(!strcmp(pn(playerid), PlayerCar[i][Key], false))
- {
- PlayerCar[i][Lock] = 0;
- SetVehicleParams4All(PlayerCar[i][vid], 0, 0);
- SendClientMessage(playerid, COLOR_GREEN, ".:: Fahrzeug aufgeschlossen! ::.");
- return 1;
- }
- else if(strcmp(pn(playerid), PlayerCar[i][Key], false) != 0)
- {
- return SendClientMessage(playerid, COLOR_GREY, "Dieses Fahrzeug gehört dir nicht!");
- }
- if(PlayerCar[i][Rented])
- {
- if(!strcmp(pn(playerid), PlayerCar[i][Key2], false))
- {
- PlayerCar[i][Lock] = 0;
- SetVehicleParams4All(PlayerCar[i][vid], 0, 0);
- SendClientMessage(playerid, COLOR_GREEN, ".:: Fahrzeug aufgeschlossen! ::.");
- return 1;
- }
- else
- {
- return SendClientMessage(playerid, COLOR_GREY, "Dieses Fahrzeug gehört dir nicht!");
- }
- }
- }
- }
- }
- return 1;
- }
- if(!strcmp("/backcar", cmd, true))
- {
- if(IsPlayerAdmin(playerid))
- {
- tmp = strtok(cmdtext, idx);
- if(!strlen(tmp))
- {
- return SendClientMessage(playerid, COLOR_GREY, "Verwendung: /BackCar [CarID]");
- }
- new id = strval(tmp);
- for(new i = 0; i<MAX_VEHICLES; i++)
- {
- if(id == PlayerCar[i][NSID])
- {
- SetVehicleToRespawn(PlayerCar[i][vid]);
- SendClientMessage(playerid, COLOR_GREY, "Fahrzeug gebackt!");
- return 1;
- }
- }
- }
- else
- {
- return SendClientMessage(playerid, COLOR_GREY, "Du bist kein Admin!");
- }
- return 1;
- }
- if(!strcmp("/gotocar", cmd, true))
- {
- if(IsPlayerAdmin(playerid))
- {
- tmp = strtok(cmdtext, idx);
- if(!strlen(tmp))
- {
- return SendClientMessage(playerid, COLOR_GREY, "Verwendung: /GotoCar [CarID]");
- }
- new id = strval(tmp), Float:x, Float:y, Float:z;
- for(new i = 0; i<MAX_VEHICLES; i++)
- {
- if(id == PlayerCar[i][NSID])
- {
- GetVehiclePos(PlayerCar[i][vid], x, y, z);
- SetPlayerPos(playerid, x, y, z+1);
- SendClientMessage(playerid, COLOR_GREY, "Du hast dich teleportiert!");
- return 1;
- }
- }
- }
- else
- {
- return SendClientMessage(playerid, COLOR_GREY, "Du bist kein Admin!");
- }
- return 1;
- }
- if(!strcmp("/entercar", cmd, true))
- {
- if(IsPlayerAdmin(playerid))
- {
- tmp = strtok(cmdtext, idx);
- if(!strlen(tmp))
- {
- return SendClientMessage(playerid, COLOR_GREY, "Verwendung: /GotoCar [CarID]");
- }
- new id = strval(tmp);
- for(new i = 0; i<MAX_VEHICLES; i++)
- {
- if(id == PlayerCar[i][NSID])
- {
- PutPlayerInVehicle(playerid, PlayerCar[i][vid], 0);
- SendClientMessage(playerid, COLOR_GREY, "Du hast dich teleportiert!");
- return 1;
- }
- }
- }
- else
- {
- return SendClientMessage(playerid, COLOR_GREY, "Du bist kein Admin!");
- }
- return 1;
- }
- if(!strcmp("/getcar", cmd, true))
- {
- if(IsPlayerAdmin(playerid))
- {
- tmp = strtok(cmdtext, idx);
- if(!strlen(tmp))
- {
- return SendClientMessage(playerid, COLOR_GREY, "Verwendung: /GetCar [CarID]");
- }
- new id = strval(tmp);
- for(new i = 0; i<MAX_VEHICLES; i++)
- {
- if(id == PlayerCar[i][NSID])
- {
- new Float:xx, Float:yy, Float:zz;
- GetPlayerPos(playerid, xx, yy, zz);
- SetVehiclePos(PlayerCar[i][vid], xx+1, yy+1, zz);
- return 1;
- }
- }
- }
- else
- {
- return SendClientMessage(playerid, COLOR_GREY, "Du bist kein Admin!");
- }
- return 1;
- }
- if(!strcmp("/lock", cmdtext, true))
- {
- if(IsPlayerInAnyVehicle(playerid))
- {
- for(new i = 0; i<MAX_VEHICLES; i++)
- {
- if(PlayerCar[i][vid] == GetPlayerVehicleID(playerid))
- {
- if(!strcmp(PlayerCar[i][Key], pn(playerid), false))
- {
- if(!PlayerCar[i][Lock])
- {
- PlayerCar[i][Lock] = 1;
- SetVehicleParams4All(PlayerCar[i][vid], 0, 1);
- SetVehicleParamsForPlayer(PlayerCar[i][vid], playerid, 0, 0);
- if(IsPlayerConnected(ReturnUser(PlayerCar[i][Key2]))) { SetVehicleParamsForPlayer(PlayerCar[i][vid], ReturnUser(PlayerCar[i][Key2]), 0, 0); }
- SendClientMessage(playerid, COLOR_GREEN, ".:: Fahrzeug aufgeschlossen! ::.");
- return 1;
- }
- else if(PlayerCar[i][Lock])
- {
- PlayerCar[i][Lock] = 0;
- SetVehicleParams4All(PlayerCar[i][vid], 0, 0);
- SendClientMessage(playerid, COLOR_GREEN, ".:: Fahrzeug abgeschlossen! ::.");
- return 1;
- }
- }
- else
- {
- return SendClientMessage(playerid, COLOR_GREY, "Dieses Fahrzeug gehört dir nicht!");
- }
- if(PlayerCar[i][Rented])
- {
- if(!strcmp(pn(playerid), PlayerCar[i][Key2], false))
- {
- if(!PlayerCar[i][Lock])
- {
- PlayerCar[i][Lock] = 1;
- SetVehicleParams4All(PlayerCar[i][vid], 0, 1);
- SetVehicleParamsForPlayer(PlayerCar[i][vid], playerid, 0, 0);
- if(IsPlayerConnected(ReturnUser(PlayerCar[i][Key2]))) { SetVehicleParamsForPlayer(PlayerCar[i][vid], ReturnUser(PlayerCar[i][Key2]), 0, 0); }
- SendClientMessage(playerid, COLOR_GREEN, ".:: Fahrzeug aufgeschlossen! ::.");
- return 1;
- }
- else if(PlayerCar[i][Lock])
- {
- PlayerCar[i][Lock] = 0;
- SetVehicleParams4All(PlayerCar[i][vid], 0, 0);
- SendClientMessage(playerid, COLOR_GREEN, ".:: Fahrzeug abgeschlossen! ::.");
- return 1;
- }
- }
- else
- {
- return SendClientMessage(playerid, COLOR_GREY, "Dieses Fahrzeug gehört dir nicht!");
- }
- }
- }
- }
- }
- return 1;
- }
- if(!strcmp("/fill", cmdtext, true))
- {
- if(IsPlayerInAnyVehicle(playerid))
- {
- if(IsAtGasStation(playerid))
- {
- for(new i = 0; i<MAX_VEHICLES; i++)
- {
- if(GetPlayerVehicleID(playerid) == PlayerCar[i][vid])
- {
- new price = 100; price -= PlayerCar[i][Fuel];
- if(GetPlayerMoney(playerid) > price*2)
- {
- TogglePlayerControllable(playerid, 0);
- new OldFuel = PlayerCar[i][Fuel], t = vrandom(2000, 5000);
- SetTimerEx("FillGas", t, 0, "iii", OldFuel, i, playerid);
- GameTextForPlayer(playerid, "~w~~n~~n~~n~~n~~n~~n~~n~~n~Fahrzeug wird betankt...",t,3);
- }
- else
- {
- return SendClientMessage(playerid, COLOR_GREY, "Du hast nicht genug Geld!");
- }
- }
- }
- }
- else
- {
- return SendClientMessage(playerid, COLOR_GREY, "Du bist an keiner Tanke!");
- }
- }
- return 1;
- }
- if(!strcmp("/cars", cmdtext, true))
- {
- new sform[128], counter = 1, strii[128];
- for(new i = 0; i<MAX_VEHICLES; i++)
- {
- format(sform,sizeof sform,"/Cars/%d.ini",PlayerCar[i][NSID]);
- if(fexist(sform))
- {
- if(!strcmp(PlayerCar[i][Key], pn(playerid), false))
- {
- format(strii, sizeof strii, "Car %d - %s: %s-%s-%d", counter, PlayerVehicle[GetVehicleModel(PlayerCar[i][vid])-400], NSPraefix, PlayerCar[i][ABC], PlayerCar[i][NSID]);
- SendClientMessage(playerid, COLOR_YELLOW, strii);
- counter++;
- }
- if(strlen(PlayerCar[i][Key2]) > 0)
- {
- if(!strcmp(pn(playerid), PlayerCar[i][Key2], false))
- {
- format(strii, sizeof strii, "[Gehliehen] Car %d - %s: %s-%s-%d", counter, PlayerVehicle[GetVehicleModel(PlayerCar[i][vid])-400], NSPraefix, PlayerCar[i][ABC], PlayerCar[i][NSID]);
- SendClientMessage(playerid, COLOR_YELLOW, strii);
- counter++;
- }
- }
- }
- }
- return 1;
- }
- return 0;
- }
- public OnPlayerEnterVehicle(playerid, vehicleid)
- {
- return 1;
- }
- public OnPlayerStateChange(playerid, newstate, oldstate)
- {
- if(newstate == PLAYER_STATE_DRIVER)
- {
- TextDrawShowForPlayer(playerid, Tacho[playerid]);
- if(!IsANoTachoVeh(GetPlayerVehicleID(playerid)))
- {
- SetTimerEx("Speedometer", 450, 1, "d", playerid);
- }
- new str[80], strr[150];
- for(new i = 0; i<MAX_VEHICLES; i++)
- {
- if(PlayerCar[i][vid] == GetPlayerVehicleID(playerid))
- {
- new PlayerVehicleModelID = GetVehicleModel(PlayerCar[i][vid]);
- PlayerVehicleModelID -= 400;
- format(str, sizeof str, "Dieser %s gehört %s!", PlayerVehicle[PlayerVehicleModelID], PlayerCar[i][Key]);
- SendClientMessage(playerid, COLOR_GREY, str);
- return 1;
- }
- }
- for(new j = 0;j<sizeof(ShowCars);j++)
- {
- if(ShowCars[j][v_id] == GetPlayerVehicleID(playerid))
- {
- format(strr, sizeof strr, "Datenblatt:\nFahrzeug: %s\nPreis: %d$", ShowCars[j][CarName], ShowCars[j][CarPreis]);
- ShowPlayerDialog(playerid, BuyDiag, 0, "Fahrzeugkauf", strr, "Kaufen", "Abbrechen");
- TogglePlayerControllable(playerid, 0);
- return 1;
- }
- }
- }
- if(newstate == PLAYER_STATE_ONFOOT)
- {
- TextDrawHideForPlayer(playerid, Tacho[playerid]);
- }
- return 1;
- }
- public OnPlayerPickUpPickup(playerid, pickupid)
- {
- return 1;
- }
- public OnVehicleMod(playerid, vehicleid, componentid)
- {
- for(new i = 0; i <MAX_VEHICLES; i++)
- {
- if (vehicleid == PlayerCar[i][vid])
- {
- if((componentid >= 1008) && (componentid <= 1010)) {PlayerCar[i][Nitro] = componentid;}
- if((componentid >= 1142) && (componentid <= 1145)) {PlayerCar[i][Vent] = componentid;}
- if((componentid == 1013) || (componentid == 1024)) {PlayerCar[i][Lamp] = componentid;}
- if((componentid >= 1004) && (componentid <= 1005)||(componentid >= 1011) && (componentid <= 1012)) {PlayerCar[i][Hood] = componentid;}
- if(componentid == 1087) {PlayerCar[i][Hyd] = componentid;}
- if(componentid == 1086) {PlayerCar[i][Hyd] = componentid;}
- if(IsAWheel(componentid)) {PlayerCar[i][Wheel] = componentid;}
- if(IsAExhaust(componentid)) {PlayerCar[i][Auspuff] = componentid;}
- if(IsASideL(componentid)) {PlayerCar[i][SeiteL] = componentid; PlayerCar[i][SeiteR] = SideR;}
- if(IsASideR(componentid)) {PlayerCar[i][SeiteR] = componentid; PlayerCar[i][SeiteL] = SideL;}
- if(IsAFB(componentid)) {PlayerCar[i][FB] = componentid;}
- if(IsARB(componentid)) {PlayerCar[i][RB] = componentid;}
- if(IsASpoiler(componentid)) {PlayerCar[i][Spoiler] = componentid;}
- if(IsARoof(componentid)) {PlayerCar[i][Roof] = componentid;}
- return 1;
- }
- }
- return 1;
- }
- public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
- {
- return 1;
- }
- public OnVehicleRespray(playerid, vehicleid, color1, color2)
- {
- for(new i = 0; i<MAX_VEHICLES; i++)
- {
- if(PlayerCar[i][vid] == vehicleid)
- {
- PlayerCar[i][c1] = color1;
- PlayerCar[i][c2] = color2;
- }
- }
- return 1;
- }
- public OnVehicleStreamIn(vehicleid, forplayerid)
- {
- for(new i = 0; i<MAX_VEHICLES; i++)
- {
- if(vehicleid == PlayerCar[i][vid])
- {
- AddComponents(i);
- return 1;
- }
- }
- return 1;
- }
- public OnVehicleStreamOut(vehicleid, forplayerid)
- {
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- if(dialogid == BuyDiag)
- {
- if(response)
- {
- new price, co1, co2, mmmodel, str[50];
- for(new i = 0; i<sizeof ShowCars; i++)
- {
- if(GetPlayerVehicleID(playerid) == ShowCars[i][v_id])
- {
- price = ShowCars[i][CarPreis];
- co1 = ShowCars[i][Color1];
- co2 = ShowCars[i][Color2];
- mmmodel = ShowCars[i][mmodel];
- }
- }
- new sform[128], i = CreateNumber(), Float:rrx, Float:rry, Float:rrz, Float:rra;
- format(sform,sizeof sform,"/Cars/%d.ini",i);
- for(new k = 0; k<sizeof CarRanges; k++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 50.0, CarRanges[k][0],CarRanges[k][1],CarRanges[k][2]))
- {
- rrx = CarSpawns[k][0];
- rry = CarSpawns[k][1];
- rrz = CarSpawns[k][2];
- rra = CarSpawns[k][3];
- }
- }
- if(!fexist(sform))
- {
- if(GetPlayerMoney(playerid) > price)
- {
- if(Player[playerid][Own] < MaxCarsOwn)
- {
- GivePlayerMoney(playerid, -price);
- SendClientMessage(playerid, COLOR_YELLOW, "Glückwunsch zu deinem neuen Fahrzeug!");
- PlayerCar[i][NS] = Create3DTextLabel("", COLOR_NS, 0.0, 0.0, 0.0, 50.0, 0, 0);
- PlayerCar[i][px] = rrx;
- PlayerCar[i][py] = rry;
- PlayerCar[i][pz] = rrz;
- PlayerCar[i][pa] = rra;
- PlayerCar[i][c1] = co1;
- PlayerCar[i][c2] = co2;
- PlayerCar[i][Fuel] = 100;
- PlayerCar[i][model] = mmmodel;
- PlayerCar[i][NSID] = i;
- Player[playerid][Own]++;
- PlayerCar[i][BuyPrice] = price;
- format(PlayerCar[i][Key], MAX_PLAYER_NAME, "%s", pn(playerid));
- PlayerCar[i][vid] = CreateVehicle(PlayerCar[i][model], PlayerCar[i][px], PlayerCar[i][py], PlayerCar[i][pz], PlayerCar[i][pa], PlayerCar[i][c1], PlayerCar[i][c2], -1);
- format(PlayerCar[i][ABC], 11, "%s", CreateABC());
- format(str, sizeof str, "%s-%s-0%d", NSPraefix, PlayerCar[i][ABC], PlayerCar[i][NSID]);
- Update3DTextLabelText(PlayerCar[i][NS], COLOR_NS, str);
- Attach3DTextLabelToVehicle(PlayerCar[i][NS], PlayerCar[i][vid], 0.0, 0.0, NSHoehe);
- TogglePlayerControllable(playerid, 1);
- RemovePlayerFromVehicle(playerid);
- new File:f; f=fopen(sform,io_write); if(f) { fclose(f); }
- }
- else
- {
- new string[50];
- format(string, sizeof string, "Du hast schon %d Fahrzeuge!", MaxCarsOwn);
- SendClientMessage(playerid, COLOR_GREY, string);
- }
- }
- else
- {
- SendClientMessage(playerid, COLOR_GREY, "Du hast nicht genug Geld!");
- RemovePlayerFromVehicle(playerid);
- TogglePlayerControllable(playerid, 1);
- }
- }
- }
- if(!response)
- {
- RemovePlayerFromVehicle(playerid);
- TogglePlayerControllable(playerid, 1);
- }
- }
- return 1;
- }
- CreateABC()
- {
- new bla1 = random(26), bla2 = random(26), str[10];
- format(str, sizeof str, "%s%s", ABCD[bla1], ABCD[bla2]);
- return str;
- }
- stock pn(playerid)
- {
- new n[MAX_PLAYER_NAME];
- GetPlayerName(playerid, n, sizeof n);
- return n;
- }
- public SaveCar(i)
- {
- new sform[128];
- format(sform, sizeof sform, "/Cars/%d.ini", i);
- if(fexist(sform))
- {
- if(INI_Open(sform))
- {
- INI_WriteFloat("px", PlayerCar[i][px]);
- INI_WriteFloat("py", PlayerCar[i][py]);
- INI_WriteFloat("pz", PlayerCar[i][pz]);
- INI_WriteFloat("pa", PlayerCar[i][pa]);
- INI_WriteInt("model", PlayerCar[i][model]);
- INI_WriteInt("c1", PlayerCar[i][c1]);
- INI_WriteInt("c2", PlayerCar[i][c2]);
- INI_WriteString("Key", PlayerCar[i][Key]);
- INI_WriteString("Key2", PlayerCar[i][Key2]);
- INI_WriteInt("Rented", PlayerCar[i][Rented]);
- INI_WriteString("ABC", PlayerCar[i][ABC]);
- INI_WriteInt("Fuel", PlayerCar[i][Fuel]);
- INI_WriteInt("NSID", PlayerCar[i][NSID]);
- INI_WriteInt("BuyPrice", PlayerCar[i][BuyPrice]);
- INI_WriteInt("Lock", PlayerCar[i][Lock]);
- INI_WriteInt("Nitro", PlayerCar[i][Nitro]);
- INI_WriteInt("Hyd", PlayerCar[i][Hyd]);
- INI_WriteInt("Wheel", PlayerCar[i][Wheel]);
- INI_WriteInt("Auspuff", PlayerCar[i][Auspuff]);
- INI_WriteInt("SeiteL", PlayerCar[i][SeiteL]);
- INI_WriteInt("SeiteR", PlayerCar[i][SeiteR]);
- INI_WriteInt("FB", PlayerCar[i][FB]);
- INI_WriteInt("RB", PlayerCar[i][RB]);
- INI_WriteInt("Spoiler", PlayerCar[i][Spoiler]);
- INI_WriteInt("Roof", PlayerCar[i][Roof]);
- INI_WriteInt("Hood", PlayerCar[i][Hood]);
- INI_WriteInt("Vent", PlayerCar[i][Vent]);
- INI_WriteInt("Lamp", PlayerCar[i][Lamp]);
- INI_Save();
- INI_Close();
- }
- }
- return 1;
- }
- public LoadCar(i)
- {
- new path[128], str[30];
- format(path, sizeof path, "/Cars/%d.ini", i);
- if(fexist(path))
- {
- if(INI_Open(path))
- {
- PlayerCar[i][px] = INI_ReadFloat("px");
- PlayerCar[i][py] = INI_ReadFloat("py");
- PlayerCar[i][pz] = INI_ReadFloat("pz");
- PlayerCar[i][pa] = INI_ReadFloat("pa");
- PlayerCar[i][model] = INI_ReadInt("model");
- PlayerCar[i][c1] = INI_ReadInt("c1");
- PlayerCar[i][c2] = INI_ReadInt("c2");
- PlayerCar[i][Lock] = INI_ReadInt("Lock");
- PlayerCar[i][BuyPrice] = INI_ReadInt("BuyPrice");
- PlayerCar[i][Fuel] = INI_ReadInt("Fuel");
- PlayerCar[i][NSID] = INI_ReadInt("NSID");
- PlayerCar[i][Nitro] = INI_ReadInt("Nitro");
- PlayerCar[i][Hyd] = INI_ReadInt("Hyd");
- PlayerCar[i][Wheel] = INI_ReadInt("Wheel");
- PlayerCar[i][Auspuff] = INI_ReadInt("Auspuff");
- PlayerCar[i][SeiteL] = INI_ReadInt("SeiteL");
- PlayerCar[i][SeiteR] = INI_ReadInt("SeiteR");
- PlayerCar[i][FB] = INI_ReadInt("FB");
- PlayerCar[i][RB] = INI_ReadInt("RB");
- PlayerCar[i][Spoiler] = INI_ReadInt("Spoiler");
- PlayerCar[i][Roof] = INI_ReadInt("Roof");
- PlayerCar[i][Hood] = INI_ReadInt("Hood");
- PlayerCar[i][Vent] = INI_ReadInt("Vent");
- PlayerCar[i][Lamp] = INI_ReadInt("Lamp");
- PlayerCar[i][Rented] = INI_ReadInt("Rented");
- INI_ReadString(PlayerCar[i][ABC], "ABC", 11);
- INI_ReadString(PlayerCar[i][Key], "Key", MAX_PLAYER_NAME);
- INI_ReadString(PlayerCar[i][Key2], "Key2", MAX_PLAYER_NAME);
- INI_Close();
- PlayerCar[i][vid] = CreateVehicle(PlayerCar[i][model], PlayerCar[i][px], PlayerCar[i][py], PlayerCar[i][pz], PlayerCar[i][pa], PlayerCar[i][c1], PlayerCar[i][c2], -1);
- printf("Fahrzeug %d geladen & erstellt! [BESITZER: %s] [NUMMERNSCHILD: %s-%s-%d]", i, PlayerCar[i][Key], NSPraefix, PlayerCar[i][ABC], PlayerCar[i][NSID]);
- format(str, sizeof str, "%s-%s-0%d", NSPraefix, PlayerCar[i][ABC], i);
- PlayerCar[i][NS] = Create3DTextLabel("", COLOR_NS, 0.0, 0.0, 0.0, 50.0, 0, 0);
- Update3DTextLabelText(PlayerCar[i][NS], COLOR_NS, str);
- Attach3DTextLabelToVehicle(PlayerCar[i][NS], PlayerCar[i][vid], 0.0, 0.0, NSHoehe);
- }
- }
- return 1;
- }
- stock SetVehicleParams4All(veid, obj, lock)
- {
- for(new i = 0; i<MAX_PLAYERS; i++)
- {
- SetVehicleParamsForPlayer(veid, i, obj, lock);
- }
- return 1;
- }
- public Save()
- {
- for(new i = 0; i<MAX_VEHICLES; i++)
- {
- SaveCar(i);
- }
- return 1;
- }
- public AddComponents(i)
- {
- if(PlayerCar[i][Nitro] != 0) { AddVehicleComponent(PlayerCar[i][vid],PlayerCar[i][Nitro]); }
- if(PlayerCar[i][Hyd] != 0) { AddVehicleComponent(PlayerCar[i][vid],PlayerCar[i][Hyd]); }
- if(PlayerCar[i][Wheel] != 0) { AddVehicleComponent(PlayerCar[i][vid],PlayerCar[i][Wheel]); }
- if(PlayerCar[i][Auspuff] != 0) { AddVehicleComponent(PlayerCar[i][vid],PlayerCar[i][Auspuff]); }
- if(PlayerCar[i][SeiteL] != 0) { AddVehicleComponent(PlayerCar[i][vid],PlayerCar[i][SeiteL]); }
- if(PlayerCar[i][SeiteR] != 0) { AddVehicleComponent(PlayerCar[i][vid],PlayerCar[i][SeiteR]); }
- if(PlayerCar[i][FB] != 0) { AddVehicleComponent(PlayerCar[i][vid],PlayerCar[i][FB]); }
- if(PlayerCar[i][RB] != 0) { AddVehicleComponent(PlayerCar[i][vid],PlayerCar[i][RB]); }
- if(PlayerCar[i][Spoiler] != 0) { AddVehicleComponent(PlayerCar[i][vid],PlayerCar[i][Spoiler]); }
- if(PlayerCar[i][Roof] != 0) { AddVehicleComponent(PlayerCar[i][vid],PlayerCar[i][Roof]); }
- if(PlayerCar[i][Hood] != 0) { AddVehicleComponent(PlayerCar[i][vid],PlayerCar[i][Hood]); }
- if(PlayerCar[i][Vent] != 0) { AddVehicleComponent(PlayerCar[i][vid],PlayerCar[i][Vent]); }
- if(PlayerCar[i][Lamp] != 0) { AddVehicleComponent(PlayerCar[i][vid],PlayerCar[i][Lamp]); }
- ChangeVehicleColor(PlayerCar[i][vid],PlayerCar[i][c1],PlayerCar[i][c2]);
- return 1;
- }
- public IsASideR(componentid)
- {
- if(componentid == 1007){SideL = 1017;return 1;}
- if(componentid == 1026){SideL = 1027;return 1;}
- if(componentid == 1030){SideL = 1031;return 1;}
- if(componentid == 1040){SideL = 1036;return 1;}
- if(componentid == 1041){SideL = 1039;return 1;}
- if(componentid == 1042){SideL = 1099;return 1;}
- if(componentid == 1051){SideL = 1047;return 1;}
- if(componentid == 1048){SideL = 1052;return 1;}
- if(componentid == 1056){SideL = 1062;return 1;}
- if(componentid == 1063){SideL = 1057;return 1;}
- if(componentid == 1069){SideL = 1071;return 1;}
- if(componentid == 1072){SideL = 1070;return 1;}
- if(componentid == 1094){SideL = 1090;return 1;}
- if(componentid == 1093){SideL = 1095;return 1;}
- if(componentid == 1122){SideL = 1101;return 1;}
- if(componentid == 1102){SideL = 1133;return 1;}
- if(componentid == 1124){SideL = 1106;return 1;}
- if(componentid == 1107){SideL = 1108;return 1;}
- if(componentid == 1118){SideL = 1120;return 1;}
- if(componentid == 1137){SideL = 1134;return 1;}
- return 0;
- }
- public IsASideL(componentid)
- {
- if(componentid == 1134){SideR = 1137;return 1;}
- if(componentid == 1119){SideR = 1121;return 1;}
- if(componentid == 1120){SideR = 1118;return 1;}
- if(componentid == 1108){SideR = 1107;return 1;}
- if(componentid == 1017){SideR = 1007;return 1;}
- if(componentid == 1027){SideR = 1026;return 1;}
- if(componentid == 1031){SideR = 1030;return 1;}
- if(componentid == 1036){SideR = 1040;return 1;}
- if(componentid == 1039){SideR = 1041;return 1;}
- if(componentid == 1099){SideR = 1042;return 1;}
- if(componentid == 1047){SideR = 1051;return 1;}
- if(componentid == 1052){SideR = 1048;return 1;}
- if(componentid == 1062){SideR = 1056;return 1;}
- if(componentid == 1057){SideR = 1063;return 1;}
- if(componentid == 1071){SideR = 1069;return 1;}
- if(componentid == 1070){SideR = 1072;return 1;}
- if(componentid == 1090){SideR = 1094;return 1;}
- if(componentid == 1095){SideR = 1093;return 1;}
- if(componentid == 1095){SideR = 1093;return 1;}
- if(componentid == 1101){SideR = 1122;return 1;}
- if(componentid == 1133){SideR = 1102;return 1;}
- if(componentid == 1106){SideR = 1124;return 1;}
- return 0;
- }
- public IsAFB(componentid)
- {
- if(componentid >= 1152 && componentid <= 1153 || componentid >= 1165 && componentid <= 1166){return 1;}
- if(componentid == 1155 || componentid == 1157 || componentid == 1160 || componentid == 1176 || componentid == 1179 || componentid == 1185){return 1;}
- if(componentid >= 1169 && componentid <= 1174 || componentid >= 1181 && componentid <= 1182){return 1;}
- if(componentid >= 1188 && componentid <= 1191){return 1;}
- return 0;
- }
- public IsARB(componentid)
- {
- if(componentid >= 1140 && componentid <= 1141 || componentid >= 1148 && componentid <= 1151){return 1;}
- if(componentid == 1154 || componentid == 1156 || componentid == 1159 || componentid == 1161 || componentid == 1175 || componentid == 1180){return 1;}
- if(componentid >= 1167 && componentid <= 1168 || componentid >= 1177 && componentid <= 1178){return 1;}
- if(componentid >= 1183 && componentid <= 1184 || componentid >= 1186 && componentid <= 1187){return 1;}
- if(componentid >= 1192 && componentid <= 1193){return 1;}
- return 0;
- }
- public IsASpoiler(componentid)
- {
- if(componentid >= 1000 && componentid <= 1003 || componentid >= 1014 && componentid <= 1016){return 1;}
- if(componentid == 1023 || componentid == 1058 || componentid == 1158){return 1;}
- if(componentid >= 1049 && componentid <= 1050 || componentid >= 1138 && componentid <= 1139){return 1;}
- if(componentid >= 1146 && componentid <= 1147 || componentid >= 1162 && componentid <= 1164){return 1;}
- return 0;
- }
- public IsARoof(componentid)
- {
- if(componentid >= 1032 && componentid <= 1033 || componentid >= 1053 && componentid <= 1055){return 1;}
- if(componentid == 1035 || componentid == 1038 || componentid == 1061 || componentid == 1088 || componentid == 1091){return 1;}
- if(componentid == 1103 || componentid == 1128){return 1;}
- if(componentid >= 1067 && componentid <= 1068 || componentid >= 1130 && componentid <= 1131){return 1;}
- return 0;
- }
- public IsAExhaust(componentid)
- {
- if(componentid >= 1018 && componentid <= 1022){return 1;}
- if(componentid >= 1028 && componentid <= 1029){return 1;}
- if(componentid == 1037 || componentid == 1059 || componentid == 1089 || componentid == 1092 || componentid == 1132){return 1;}
- if(componentid == 1104 || componentid == 1105 || componentid == 1113 || componentid == 1114 || componentid == 1129){return 1;}
- if(componentid == 1135 || componentid == 1136){return 1;}
- if(componentid >= 1043 && componentid <= 1046){return 1;}
- if(componentid >= 1126 && componentid <= 1127){return 1;}
- if(componentid >= 1064 && componentid <= 1066){return 1;}
- return 0;
- }
- public IsAWheel(componentid)
- {
- if(componentid >= 1073 && componentid <= 1085) { return 1; }
- if(componentid >= 1096 && componentid <= 1098){ return 1; }
- if(componentid == 1025){ return 1; }
- return 0;
- }
- public CreateNumber()
- {
- new id = vrandom(MIN_ID, MAX_ID);
- new path[128];
- format(path,sizeof path,"/Cars/%d.ini",id);
- generate_id:
- while(fexist(path))
- {
- id = vrandom(MIN_ID, MAX_ID);
- }
- if(fexist(path))
- {
- goto generate_id;
- }
- return id;
- }
- public vrandom(min, max)
- {
- new output;
- while(output < min)
- {
- output = random(max);
- }
- return output;
- }
- strtok(const string[], &index)
- {
- new length = strlen(string);
- while ((index < length) && (string[index] <= ' '))
- {
- index++;
- }
- new offset = index;
- new result[20];
- while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
- {
- result[index - offset] = string[index];
- index++;
- }
- result[index - offset] = EOS;
- return result;
- }
- public IsAtGasStation(playerid)
- {
- if(IsPlayerConnected(playerid))
- {
- if(IsPlayerInRangeOfPoint(playerid,15.0,1004.0070,-939.3102,42.1797) || IsPlayerInRangeOfPoint(playerid,15.0,1944.3260,-1772.9254,13.3906))
- {
- return 1;
- }
- else if(IsPlayerInRangeOfPoint(playerid,15.0,-90.5515,-1169.4578,2.4079) || IsPlayerInRangeOfPoint(playerid,15.0,-1609.7958,-2718.2048,48.5391))
- {
- return 1;
- }
- else if(IsPlayerInRangeOfPoint(playerid,15.0,-2029.4968,156.4366,28.9498) || IsPlayerInRangeOfPoint(playerid,15.0,-2408.7590,976.0934,45.4175))
- {
- return 1;
- }
- else if(IsPlayerInRangeOfPoint(playerid,15.0,-2243.9629,-2560.6477,31.8841) || IsPlayerInRangeOfPoint(playerid,6.0,-1676.6323,414.0262,6.9484))
- {
- return 1;
- }
- else if(IsPlayerInRangeOfPoint(playerid,15.0,2202.2349,2474.3494,10.5258) || IsPlayerInRangeOfPoint(playerid,15.0,614.9333,1689.7418,6.6968))
- {
- return 1;
- }
- else if(IsPlayerInRangeOfPoint(playerid,15.0,-1328.8250,2677.2173,49.7665) || IsPlayerInRangeOfPoint(playerid,15.0,70.3882,1218.6783,18.5165))
- {
- return 1;
- }
- else if(IsPlayerInRangeOfPoint(playerid,15.0,2113.7390,920.1079,10.5255) || IsPlayerInRangeOfPoint(playerid,15.0,-1327.7218,2678.8723,50.0625))
- {
- return 1;
- }
- else if(IsPlayerInRangeOfPoint(playerid,15.0,2146.6143,2748.4758,10.3852)||IsPlayerInRangeOfPoint(playerid,15.0,2639.0022,1108.0353,10.3852))
- {
- return 1;
- }
- else if(IsPlayerInRangeOfPoint(playerid,15.0,1598.2035,2198.6448,10.3856))
- {
- return 1;
- }
- }
- return 0;
- }
- public Gas()
- {
- for(new j=0;j<MAX_PLAYERS;j++)
- {
- if(IsPlayerConnected(j))
- {
- for(new i = 0; i<MAX_VEHICLES; i++)
- {
- new vehicle = GetPlayerVehicleID(j);
- new Model = GetVehicleModel(vehicle);
- if(PlayerCar[i][vid] == vehicle)
- {
- if(IsPlayerInVehicle(j, vehicle))
- {
- if(PlayerCar[i][Fuel] > 0)
- {
- if(PlayerCar[i][Fuel] <= 10) { PlayerPlaySound(j, 1085, 0.0, 0.0, 0.0); }
- if(IsAPlane(vehicle) || IsABoat(vehicle) || Model == 462 || Model == 481 || Model == 509 || Model == 510)
- {
- PlayerCar[i][Fuel]++;
- }
- PlayerCar[i][Fuel]--;
- }
- else
- {
- TogglePlayerControllable(j, 0);
- GameTextForPlayer(j,"~w~~n~~n~~n~~n~~n~~n~~n~~n~Der Tank ist leer!~n~Mit der Entertaste kannst du das Fahrzeug verlassen!",3000,3);
- }
- if(PlayerCar[i][Fuel] > 100)
- {
- PlayerCar[i][Fuel] = 100;
- }
- }
- }
- }
- }
- }
- return 1;
- }
- public IsABoat(carid)
- {
- new m = GetVehicleModel(carid);
- if(m == 472 || m == 473 || m == 493 || m == 595 || m == 484 || m == 430)
- {
- return 1;
- }
- if(m == 452 || m == 446 || m == 454)
- {
- return 1;
- }
- return 0;
- }
- public IsAPlane(carid)
- {
- new modeel = GetVehicleModel(carid);
- if(modeel == 592 || modeel == 577 || modeel == 511 || modeel == 512 || modeel == 593 || modeel == 520)
- {
- return 1;
- }
- if(modeel == 553 || modeel == 476 || modeel == 519 || modeel == 460 || modeel == 513 || modeel == 548)
- {
- return 1;
- }
- if(modeel == 425 || modeel == 417 || modeel == 487 || modeel == 488 || modeel == 497 || modeel == 563)
- {
- return 1;
- }
- if(modeel == 447 || modeel == 469)
- {
- return 1;
- }
- return 0;
- }
- public FillGas(OldFuel, i, playerid)
- {
- new price = 100 - OldFuel, str[50];
- price = price*2;
- PlayerCar[i][Fuel] = 100;
- TogglePlayerControllable(playerid, 1);
- GivePlayerMoney(playerid, -price);
- format(str, sizeof str, "Fahrzeug für %d$ betankt!", price);
- SendClientMessage(playerid, COLOR_LIGHTBLUE, str);
- return 1;
- }
- public Speedometer(playerid)
- {
- if(IsPlayerInAnyVehicle(playerid))
- {
- new vehicleid = GetPlayerVehicleID(playerid), Float:speed_x, Float:speed_y, Float:speed_z, Float:final_speed, speed_string[256], final_speed_int, Float:chealth, LocationZone[MAX_ZONE_NAME], m = GetVehicleModel(vehicleid), f;
- for(new i = 0; i<MAX_VEHICLES; i++)
- {
- if(GetPlayerVehicleID(playerid) == PlayerCar[i][vid])
- {
- f = PlayerCar[i][Fuel];
- }
- }
- m -= 400;
- GetVehicleVelocity(vehicleid,speed_x,speed_y,speed_z);
- final_speed = floatsqroot(((speed_x*speed_x)+(speed_y*speed_y))+(speed_z*speed_z))*144; // 136.666667 = kmph // 85.4166672= mph
- final_speed_int = floatround(final_speed,floatround_round);
- GetVehicleHealth(vehicleid, chealth);
- GetPlayer2DZone(playerid, LocationZone, MAX_ZONE_NAME);
- format(speed_string,200,"~B~Fahrzeug: ~W~%s~n~~B~Km/h: ~W~%d km/h~n~~B~Zustand: ~W~%d%%~n~~B~Benzin: ~W~%d%%~n~~B~GPS: ~W~%s",PlayerVehicle[m], final_speed_int, floatround(chealth, floatround_round)/10, f, LocationZone);
- TextDrawSetString(Tacho[playerid], speed_string);
- return 1;
- }
- else
- {
- TextDrawHideForPlayer(playerid, Tacho[playerid]);
- }
- return 1;
- }
- stock GetPlayer2DZone(playerid, zone[], len)
- {
- new Float:x, Float:y, Float:z;
- GetPlayerPos(playerid, x, y, z);
- for(new i = 0; i != sizeof(SA_GPS_ZONE_NAMES); i++ ){
- if(x >= SA_GPS_ZONE_NAMES[i][Zone_Area][0] && x <= SA_GPS_ZONE_NAMES[i][Zone_Area][3] && y >= SA_GPS_ZONE_NAMES[i][Zone_Area][1] && y <= SA_GPS_ZONE_NAMES[i][Zone_Area][4]){
- return format(zone, len, SA_GPS_ZONE_NAMES[i][Zone_Name], 0);}
- }
- return 0;
- }
- public IsANoTachoVeh(vehid)
- {
- new m = GetVehicleModel(vehid);
- if(m == 509 || m == 510 || m == 481)
- {
- return 1;
- }
- return 0;
- }
- public Respawn(vehicleid)
- {
- for(new i = 0; i<MAX_VEHICLES; i++)
- {
- if(PlayerCar[i][vid] == vehicleid)
- {
- DestroyVehicle(PlayerCar[i][vid]);
- PlayerCar[i][vid] = CreateVehicle(PlayerCar[i][model], PlayerCar[i][px], PlayerCar[i][py], PlayerCar[i][pz], PlayerCar[i][pa], PlayerCar[i][c1], PlayerCar[i][c2], -1);
- return 1;
- }
- }
- return 1;
- }
- public CheckLock()
- {
- new p, p2;
- for(new i = 0; i<MAX_VEHICLES; i++)
- {
- if(PlayerCar[i][Lock])
- {
- p = ReturnUser(PlayerCar[i][Key]);
- p2 = ReturnUser(PlayerCar[i][Key2]);
- SetVehicleParams4All(PlayerCar[i][vid], 0, 1);
- if(IsPlayerConnected(p)) { SetVehicleParamsForPlayer(PlayerCar[i][vid], p, 0, 0); }
- if(IsPlayerConnected(p2)) { SetVehicleParamsForPlayer(PlayerCar[i][vid], p2, 0, 0); }
- }
- else if(!PlayerCar[i][Lock])
- {
- SetVehicleParams4All(PlayerCar[i][vid], 0, 0);
- }
- }
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement