Advertisement
Guest User

[FS]CarOwnership BUG FIXED

a guest
Jun 3rd, 2012
146
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 48.02 KB | None | 0 0
  1. /*
  2. ____________________________________________________________
  3. | |
  4. |Cali -> Izrada FS |
  5. |Hitman -> Prijevod, popravak bugova, unaprijeðenje FS, mappa
  6. |markinjo.amx -> Popravio bug sa spavnanjem vozila
  7. | |
  8. | |
  9. | |
  10. |_____________________________________________________________|
  11.  
  12. */
  13.  
  14. new v;
  15.  
  16. #include <a_samp>
  17. #include <dini>
  18.  
  19. #define DIALOGID 3304
  20. #define BOJA1 0x33CCFFAA
  21. #define BOJA2 0xFF0000AA
  22. #pragma tabsize 0
  23. //-------------------------------0.3c BOJE--------------------------------------
  24. #define SULJA "{FFFF80}"
  25. #define TPLAVA2 "{ADD6FF}"
  26. #define TPLAVA "{0482FF}"
  27. #define SZELENA "{00FF00}"
  28. #define BIJELA "{FFFFFF}"
  29. #define CRNA "{0E0101}"
  30. #define SIVA "{C3C3C3}"
  31. #define ZELENA "{6EF83C}"
  32. #define CRVENA "{F81414}"
  33. #define ZUTA "{F3FF02}"
  34. #define NARANDZASTA "{FFAF00}"
  35. #define LIME "{B7FF00}"
  36. #define CYAN "{00FFEE}"
  37. #define SPLAVA "{00C0FF}"
  38. #define PLAVA "{0049FF}"
  39. #define COL_MAGENTA "{F300FF}"
  40. #define COL_VIOLET "{B700FF}"
  41. #define ROZA "{FF00EA}"
  42. #define COL_MARONE "{A90202}"
  43. #define COL_PARAM "{3FCD02}"
  44. #define COL_VALUE "{A3E4FF}"
  45. #define COL_RULE "{F9E8B7}"
  46. #define COL_RULE2 "{FBDF89}"
  47. #define COL_RWHITE "{FFFFFF}"
  48. #define SVETLO_ZELENA "{C9FFAB}"
  49. #define SVETLO_CRVENA "{FFA1A1}"
  50. #define SVJETLO_CRVENA2 "{C77D87}"
  51. //------------------------------------------------------------------------------
  52.  
  53. enum car_info
  54. {
  55. Model,
  56. Price,
  57. Float:CarX,
  58. Float:CarY,
  59. Float:CarZ,
  60. Float:CarRot,
  61. Locked,
  62. mod1,
  63. mod2,
  64. mod3,
  65. mod4,
  66. mod5,
  67. mod6,
  68. mod7,
  69. mod8,
  70. mod9,
  71. mod10,
  72. mod11,
  73. mod12,
  74. mod13,
  75. mod14,
  76. mod15,
  77. mod16,
  78. mod17,
  79. paintjob,
  80. colora,
  81. colorb
  82. };
  83. new VehicleInfo[MAX_PLAYERS][car_info];
  84. new DealerCars[8];
  85. new Text3D:DealerCar[8];
  86. new Vehicle[MAX_PLAYERS];
  87. new OwnerID[MAX_VEHICLES];
  88. new CarPrice[MAX_VEHICLES];
  89. new VehOwned[MAX_VEHICLES];
  90. new ConfirmSale[MAX_PLAYERS];
  91. new gVehLocked[MAX_VEHICLES];
  92. new VehPlate[MAX_VEHICLES][256];
  93. new gPlayerHasCar[MAX_PLAYERS];
  94. new IsADealerCar[MAX_VEHICLES];
  95. new Checkpoint[MAX_PLAYERS];
  96. new bool:Destroyed[MAX_VEHICLES];
  97.  
  98.  
  99. stock GetVehicleNameFromID(vehicleid)
  100. {
  101. static const scVehicleNames[][18] = {
  102. "Landstalker",
  103. "Bravura",
  104. "Buffalo",
  105. "Linerunner",
  106. "Perrenial",
  107. "Sentinel",
  108. "Dumper",
  109. "Firetruck",
  110. "Trashmaster",
  111. "Stretch",
  112. "Manana",
  113. "Infernus",
  114. "Voodoo",
  115. "Pony",
  116. "Mule",
  117. "Cheetah",
  118. "Ambulance",
  119. "Leviathan",
  120. "Moonbeam",
  121. "Esperanto",
  122. "Taxi",
  123. "Washington",
  124. "Bobcat",
  125. "Mr Whoopee",
  126. "BF Injection",
  127. "Hunter",
  128. "Premier",
  129. "Enforcer",
  130. "Securicar",
  131. "Banshee",
  132. "Predator",
  133. "Bus",
  134. "Rhino",
  135. "Barracks",
  136. "Hotknife",
  137. "Trailer 1",
  138. "Previon",
  139. "Coach",
  140. "Cabbie",
  141. "Stallion",
  142. "Rumpo",
  143. "RC Bandit",
  144. "Romero",
  145. "Packer",
  146. "Monster",
  147. "Admiral",
  148. "Squalo",
  149. "Seasparrow",
  150. "Pizzaboy",
  151. "Tram",
  152. "Trailer 2",
  153. "Turismo",
  154. "Speeder",
  155. "Reefer",
  156. "Tropic",
  157. "Flatbed",
  158. "Yankee",
  159. "Caddy",
  160. "Solair",
  161. "Berkley's RC Van",
  162. "Skimmer",
  163. "PCJ-600",
  164. "Faggio",
  165. "Freeway",
  166. "RC Baron",
  167. "RC Raider",
  168. "Glendale",
  169. "Oceanic",
  170. "Sanchez",
  171. "Sparrow",
  172. "Patriot",
  173. "Quad",
  174. "Coastguard",
  175. "Dinghy",
  176. "Hermes",
  177. "Sabre",
  178. "Rustler",
  179. "ZR-350",
  180. "Walton",
  181. "Regina",
  182. "Comet",
  183. "BMX",
  184. "Burrito",
  185. "Camper",
  186. "Marquis",
  187. "Baggage",
  188. "Dozer",
  189. "Maverick",
  190. "News Chopper",
  191. "Rancher",
  192. "FBI Rancher",
  193. "Virgo",
  194. "Greenwood",
  195. "Jetmax",
  196. "Hotring",
  197. "Sandking",
  198. "Blista Compact",
  199. "Police Maverick",
  200. "Boxville",
  201. "Benson",
  202. "Mesa",
  203. "RC Goblin",
  204. "Hotring Racer A",
  205. "Hotring Racer B",
  206. "Bloodring Banger",
  207. "Rancher",
  208. "Super GT",
  209. "Elegant",
  210. "Journey",
  211. "Bike",
  212. "Mountain Bike",
  213. "Beagle",
  214. "Cropdust",
  215. "Stunt",
  216. "Tanker",
  217. "Roadtrain",
  218. "Nebula",
  219. "Majestic",
  220. "Buccaneer",
  221. "Shamal",
  222. "Hydra",
  223. "FCR-900",
  224. "NRG-500",
  225. "HPV1000",
  226. "Cement Truck",
  227. "Tow Truck",
  228. "Fortune",
  229. "Cadrona",
  230. "FBI Truck",
  231. "Willard",
  232. "Forklift",
  233. "Tractor",
  234. "Combine",
  235. "Feltzer",
  236. "Remington",
  237. "Slamvan",
  238. "Blade",
  239. "Freight",
  240. "Streak",
  241. "Vortex",
  242. "Vincent",
  243. "Bullet",
  244. "Clover",
  245. "Sadler",
  246. "Firetruck LA",
  247. "Hustler",
  248. "Intruder",
  249. "Primo",
  250. "Cargobob",
  251. "Tampa",
  252. "Sunrise",
  253. "Merit",
  254. "Utility",
  255. "Nevada",
  256. "Yosemite",
  257. "Windsor",
  258. "Monster A",
  259. "Monster B",
  260. "Uranus",
  261. "Jester",
  262. "Sultan",
  263. "Stratum",
  264. "Elegy",
  265. "Raindance",
  266. "RC Tiger",
  267. "Flash",
  268. "Tahoma",
  269. "Savanna",
  270. "Bandito",
  271. "Freight Flat",
  272. "Streak Carriage",
  273. "Kart",
  274. "Mower",
  275. "Duneride",
  276. "Sweeper",
  277. "Broadway",
  278. "Tornado",
  279. "AT-400",
  280. "DFT-30",
  281. "Huntley",
  282. "Stafford",
  283. "BF-400",
  284. "Newsvan",
  285. "Tug",
  286. "Trailer 3",
  287. "Emperor",
  288. "Wayfarer",
  289. "Euros",
  290. "Hotdog",
  291. "Club",
  292. "Freight Carriage",
  293. "Trailer 3",
  294. "Andromada",
  295. "Dodo",
  296. "RC Cam",
  297. "Launch",
  298. "LS Police Car",
  299. "SF Police Car",
  300. "LV Police Car",
  301. "Police Ranger",
  302. "Picador",
  303. "S.W.A.T. Van",
  304. "Alpha",
  305. "Phoenix",
  306. "Glendale",
  307. "Sadler",
  308. "Luggage Trailer A",
  309. "Luggage Trailer B",
  310. "Stair Trailer",
  311. "Boxville",
  312. "Farm Plow",
  313. "Utility Trailer"
  314. },
  315. scOnFoot[18] = "OnFoot";
  316. if (vehicleid > 0) {
  317. return scVehicleNames[GetVehicleModel(vehicleid) - 400];
  318. }
  319. else {
  320. return scOnFoot;
  321. }
  322. }
  323.  
  324. public OnGameModeInit()
  325. {
  326. CreateObject(3113,1450.24169922,-2173.19433594,12.08971977,0.00000000,285.00000000,0.00000000); //object(carrier_door_sfse) (1)
  327. CreateObject(3113,1458.41076660,-2173.17285156,12.08971977,0.00000000,284.99633789,180.00000000); //object(carrier_door_sfse) (2)
  328. CreateObject(3113,1435.95141602,-2173.16992188,12.08971977,0.00000000,284.99633789,180.00000000); //object(carrier_door_sfse) (3)
  329. CreateObject(9131,1452.19958496,-2183.70874023,15.75304604,0.00000000,0.00000000,0.00000000); //object(shbbyhswall13_lvs) (1)
  330. CreateObject(3851,1452.23669434,-2178.01562500,14.72416496,0.00000000,0.00000000,0.00000000); //object(carshowwin_sfsx) (2)
  331. CreateObject(3851,1452.22668457,-2170.92163086,14.72415733,0.00000000,0.00000000,0.00000000); //object(carshowwin_sfsx) (3)
  332. CreateObject(9131,1452.19921875,-2183.70800781,13.52803802,0.00000000,0.00000000,0.00000000); //object(shbbyhswall13_lvs) (2)
  333. CreateObject(1491,1452.26757812,-2165.01196289,12.72417450,0.00000000,0.00000000,90.00000000); //object(gen_doorint01) (1)
  334. CreateObject(9131,1452.22668457,-2165.38159180,15.77805901,0.00000000,0.00000000,0.00000000); //object(shbbyhswall13_lvs) (3)
  335. CreateObject(9131,1452.22656250,-2165.38085938,13.67805672,0.00000000,0.00000000,0.00000000); //object(shbbyhswall13_lvs) (4)
  336. CreateObject(9131,1452.19604492,-2163.10815430,15.70304108,0.00000000,0.00000000,0.00000000); //object(shbbyhswall13_lvs) (5)
  337. CreateObject(9131,1452.19531250,-2163.10742188,13.55304718,0.00000000,0.00000000,0.00000000); //object(shbbyhswall13_lvs) (6)
  338. CreateObject(3851,1446.48583984,-2162.98925781,14.71974182,0.00000000,0.00000000,270.00000000); //object(carshowwin_sfsx) (4)
  339. CreateObject(3851,1439.41821289,-2162.99707031,14.71974277,0.00000000,0.00000000,270.00000000); //object(carshowwin_sfsx) (5)
  340. CreateObject(9131,1433.78295898,-2162.99707031,15.77835464,0.00000000,0.00000000,0.00000000); //object(shbbyhswall13_lvs) (7)
  341. CreateObject(9131,1433.78222656,-2162.99707031,13.52835464,0.00000000,0.00000000,0.00000000); //object(shbbyhswall13_lvs) (8)
  342. CreateObject(3851,1433.62353516,-2168.78125000,14.72457027,0.00000000,0.00000000,0.00000000); //object(carshowwin_sfsx) (6)
  343. CreateObject(3851,1446.54736328,-2183.73901367,14.71978951,0.00000000,0.00000000,270.00000000); //object(carshowwin_sfsx) (7)
  344. CreateObject(3851,1439.47814941,-2183.75048828,14.71969318,0.00000000,0.00000000,270.00000000); //object(carshowwin_sfsx) (8)
  345. CreateObject(9131,1433.85314941,-2183.93945312,15.80329895,0.00000000,0.00000000,0.00000000); //object(shbbyhswall13_lvs) (9)
  346. CreateObject(3851,1433.63122559,-2178.61840820,14.72456360,0.00000000,0.00000000,0.00000000); //object(carshowwin_sfsx) (9)
  347. CreateObject(9131,1433.85253906,-2183.93945312,13.72830009,0.00000000,0.00000000,0.00000000); //object(shbbyhswall13_lvs) (10)
  348. CreateObject(3113,1437.47546387,-2173.19311523,16.33971596,0.00000000,284.99084473,179.99450684); //object(carrier_door_sfse) (4)
  349. CreateObject(3113,1449.00231934,-2173.23583984,16.33971596,0.00000000,284.99084473,359.99450684); //object(carrier_door_sfse) (5)
  350. CreateObject(996,1457.94836426,-2162.19921875,13.47177219,0.00000000,0.00000000,0.00000000); //object(lhouse_barrier1) (1)
  351. CreateObject(996,1449.80883789,-2162.21240234,13.47105312,0.00000000,0.00000000,0.00000000); //object(lhouse_barrier1) (2)
  352. CreateObject(996,1465.37158203,-2162.91162109,13.46558762,0.00000000,0.00000000,270.00000000); //object(lhouse_barrier1) (3)
  353. CreateObject(996,1465.35461426,-2171.11938477,13.46560192,0.00000000,0.00000000,270.00000000); //object(lhouse_barrier1) (4)
  354. CreateObject(1280,1465.10363770,-2172.70629883,13.11841106,0.00000000,0.00000000,0.00000000); //object(parkbench1) (1)
  355. CreateObject(1280,1465.16003418,-2164.69213867,13.11836433,0.00000000,0.00000000,0.00000000); //object(parkbench1) (2)
  356. CreateObject(1280,1459.92419434,-2162.57861328,13.12272644,0.00000000,0.00000000,92.00000000); //object(parkbench1) (3)
  357. CreateObject(996,1452.93017578,-2184.21044922,13.47345448,0.00000000,0.00000000,0.00000000); //object(lhouse_barrier1) (5)
  358. CreateObject(2714,1452.33020020,-2164.25463867,15.68962288,0.00000000,0.00000000,90.00000000); //object(cj_open_sign_2) (1)
  359. return 1;
  360. }
  361.  
  362. public OnFilterScriptInit()
  363. {
  364. new string[32], string2[32], string3[32], string4[32], string5[32], string6[32], string7[32], string8[32];
  365. DealerCars[0] = AddStaticVehicleEx(602,1437.15820312,-2180.63208008,13.62162590,270.00000000,1,1,15); //Alpha
  366. DealerCars[1] = AddStaticVehicleEx(562,1437.23449707,-2176.57812500,13.35901928,270.00000000,1,1,15); //Elegy
  367. DealerCars[2] = AddStaticVehicleEx(560,1437.27526855,-2172.09863281,13.39097500,270.00000000,1,1,15); //Sultan
  368. DealerCars[3] = AddStaticVehicleEx(559,1437.26403809,-2167.56982422,13.34652424,270.00000000,1,1,15); //Jester
  369. DealerCars[4] = AddStaticVehicleEx(480,1449.50854492,-2180.75708008,13.48739052,90.00000000,1,1,15); //Comet
  370. DealerCars[5] = AddStaticVehicleEx(451,1449.09179688,-2176.52246094,13.48335171,90.00000000,1,1,15); //Turismo
  371. DealerCars[6] = AddStaticVehicleEx(565,1449.32763672,-2172.03710938,13.27756405,90.00000000,1,1,15); //Flash
  372. DealerCars[7] = AddStaticVehicleEx(541,1449.11303711,-2167.62182617,13.39873028,90.00000000,1,1,15); //Bullet
  373.  
  374. IsADealerCar[DealerCars[0]] = true;
  375. IsADealerCar[DealerCars[1]] = true;
  376. IsADealerCar[DealerCars[2]] = true;
  377. IsADealerCar[DealerCars[3]] = true;
  378. IsADealerCar[DealerCars[4]] = true;
  379. IsADealerCar[DealerCars[5]] = true;
  380. IsADealerCar[DealerCars[6]] = true;
  381. IsADealerCar[DealerCars[7]] = true;
  382. CarPrice[DealerCars[0]] = 30000;
  383. CarPrice[DealerCars[1]] = 50000;
  384. CarPrice[DealerCars[2]] = 65000;
  385. CarPrice[DealerCars[3]] = 45000;
  386. CarPrice[DealerCars[4]] = 35000;
  387. CarPrice[DealerCars[5]] = 150000;
  388. CarPrice[DealerCars[6]] = 55000;
  389. CarPrice[DealerCars[7]] = 100000;
  390. format(string, sizeof(string), "Naziv: %s\nCijena: $%i", GetVehicleNameFromID(DealerCars[0]), CarPrice[DealerCars[0]]);
  391. format(string2, sizeof(string2), "Naziv: %s\nCijena: $%i", GetVehicleNameFromID(DealerCars[1]), CarPrice[DealerCars[1]]);
  392. format(string3, sizeof(string3), "Naziv: %s\nCijena: $%i", GetVehicleNameFromID(DealerCars[2]), CarPrice[DealerCars[2]]);
  393. format(string4, sizeof(string4), "Naziv: %s\nCijena: $%i", GetVehicleNameFromID(DealerCars[3]), CarPrice[DealerCars[3]]);
  394. format(string5, sizeof(string5), "Naziv: %s\nCijena: $%i", GetVehicleNameFromID(DealerCars[4]), CarPrice[DealerCars[4]]);
  395. format(string6, sizeof(string6), "Naziv: %s\nCijena: $%i", GetVehicleNameFromID(DealerCars[5]), CarPrice[DealerCars[5]]);
  396. format(string7, sizeof(string7), "Naziv: %s\nCijena: $%i", GetVehicleNameFromID(DealerCars[6]), CarPrice[DealerCars[6]]);
  397. format(string8, sizeof(string8), "Naziv: %s\nCijena: $%i", GetVehicleNameFromID(DealerCars[7]), CarPrice[DealerCars[7]]);
  398. DealerCar[0] = Create3DTextLabel(string, 0x33CCFFAA, 1437.15820312,-2180.63208008,13.62162590, 20.0, 0);
  399. DealerCar[1] = Create3DTextLabel(string2, 0x33CCFFAA, 1437.23449707,-2176.57812500,13.35901928, 20.0, 0);
  400. DealerCar[2] = Create3DTextLabel(string3, 0x33CCFFAA, 1437.27526855,-2172.09863281,13.39097500, 20.0, 0);
  401. DealerCar[3] = Create3DTextLabel(string4, 0x33CCFFAA, 1437.26403809,-2167.56982422,13.34652424, 20.0, 0);
  402. DealerCar[4] = Create3DTextLabel(string5, 0x33CCFFAA, 1449.50854492,-2180.75708008,13.48739052, 20.0, 0);
  403. DealerCar[5] = Create3DTextLabel(string6, 0x33CCFFAA, 1449.09179688,-2176.52246094,13.48335171, 20.0, 0);
  404. DealerCar[6] = Create3DTextLabel(string7, 0x33CCFFAA, 1449.32763672,-2172.03710938,13.27756405, 20.0, 0);
  405. DealerCar[7] = Create3DTextLabel(string8, 0x33CCFFAA, 1449.11303711,-2167.62182617,13.39873028, 20.0, 0);
  406. return 1;
  407. }
  408.  
  409. public OnFilterScriptExit()
  410. {
  411. IsADealerCar[DealerCars[0]] = false;
  412. IsADealerCar[DealerCars[1]] = false;
  413. IsADealerCar[DealerCars[2]] = false;
  414. IsADealerCar[DealerCars[3]] = false;
  415. IsADealerCar[DealerCars[4]] = false;
  416. IsADealerCar[DealerCars[5]] = false;
  417. IsADealerCar[DealerCars[6]] = false;
  418. IsADealerCar[DealerCars[7]] = false;
  419. CarPrice[DealerCars[0]] = 0;
  420. CarPrice[DealerCars[1]] = 0;
  421. CarPrice[DealerCars[2]] = 0;
  422. CarPrice[DealerCars[3]] = 0;
  423. CarPrice[DealerCars[4]] = 0;
  424. CarPrice[DealerCars[5]] = 0;
  425. CarPrice[DealerCars[6]] = 0;
  426. CarPrice[DealerCars[7]] = 0;
  427. DestroyVehicle(DealerCars[0]);
  428. DestroyVehicle(DealerCars[1]);
  429. DestroyVehicle(DealerCars[2]);
  430. DestroyVehicle(DealerCars[3]);
  431. DestroyVehicle(DealerCars[4]);
  432. DestroyVehicle(DealerCars[5]);
  433. DestroyVehicle(DealerCars[6]);
  434. DestroyVehicle(DealerCars[7]);
  435. Delete3DTextLabel(DealerCar[0]);
  436. Delete3DTextLabel(DealerCar[1]);
  437. Delete3DTextLabel(DealerCar[2]);
  438. Delete3DTextLabel(DealerCar[3]);
  439. Delete3DTextLabel(DealerCar[4]);
  440. Delete3DTextLabel(DealerCar[5]);
  441. Delete3DTextLabel(DealerCar[6]);
  442. Delete3DTextLabel(DealerCar[7]);
  443. return 1;
  444. }
  445.  
  446. public OnPlayerConnect(playerid)
  447. {
  448. new file[256], name[MAX_PLAYER_NAME];
  449. GetPlayerName(playerid, name, sizeof(name));
  450. format(file,sizeof(file),"Cars/%s.ini",name);
  451. if(dini_Exists(file))
  452. {
  453. VehicleInfo[playerid][Model] = dini_Int(file, "Model");
  454. VehicleInfo[playerid][Price] = dini_Int(file, "Price");
  455. VehicleInfo[playerid][CarX] = dini_Float(file, "X");
  456. VehicleInfo[playerid][CarY] = dini_Float(file, "Y");
  457. VehicleInfo[playerid][CarZ] = dini_Float(file, "Z");
  458. VehicleInfo[playerid][CarRot] = dini_Float(file, "Rot");
  459. VehicleInfo[playerid][Locked] = dini_Int(file, "Locked");
  460. VehicleInfo[playerid][mod1] = dini_Int(file, "mod1");
  461. VehicleInfo[playerid][mod2] = dini_Int(file, "mod2");
  462. VehicleInfo[playerid][mod3] = dini_Int(file, "mod3");
  463. VehicleInfo[playerid][mod4] = dini_Int(file, "mod4");
  464. VehicleInfo[playerid][mod5] = dini_Int(file, "mod5");
  465. VehicleInfo[playerid][mod6] = dini_Int(file, "mod6");
  466. VehicleInfo[playerid][mod7] = dini_Int(file, "mod7");
  467. VehicleInfo[playerid][mod8] = dini_Int(file, "mod8");
  468. VehicleInfo[playerid][mod9] = dini_Int(file, "mod9");
  469. VehicleInfo[playerid][mod10] = dini_Int(file, "mod10");
  470. VehicleInfo[playerid][mod11] = dini_Int(file, "mod11");
  471. VehicleInfo[playerid][mod12] = dini_Int(file, "mod12");
  472. VehicleInfo[playerid][mod13] = dini_Int(file, "mod13");
  473. VehicleInfo[playerid][mod14] = dini_Int(file, "mod14");
  474. VehicleInfo[playerid][mod15] = dini_Int(file, "mod15");
  475. VehicleInfo[playerid][mod16] = dini_Int(file, "mod16");
  476. VehicleInfo[playerid][mod17] = dini_Int(file, "mod17");
  477. VehicleInfo[playerid][paintjob] = dini_Int(file, "paintjob");
  478. VehicleInfo[playerid][colora] = dini_Int(file, "color1");
  479. VehicleInfo[playerid][colorb] = dini_Int(file, "color2");
  480. Vehicle[playerid] = CreateVehicle(VehicleInfo[playerid][Model], VehicleInfo[playerid][CarX], VehicleInfo[playerid][CarY], VehicleInfo[playerid][CarZ], VehicleInfo[playerid][CarRot], -1, -1, 3600000);
  481. if(VehicleInfo[playerid][mod1]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod1]); }
  482. if(VehicleInfo[playerid][mod2]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod2]); }
  483. if(VehicleInfo[playerid][mod3]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod3]); }
  484. if(VehicleInfo[playerid][mod4]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod4]); }
  485. if(VehicleInfo[playerid][mod5]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod5]); }
  486. if(VehicleInfo[playerid][mod6]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod6]); }
  487. if(VehicleInfo[playerid][mod7]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod7]); }
  488. if(VehicleInfo[playerid][mod8]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod8]); }
  489. if(VehicleInfo[playerid][mod9]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod9]); }
  490. if(VehicleInfo[playerid][mod10]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod10]); }
  491. if(VehicleInfo[playerid][mod11]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod11]); }
  492. if(VehicleInfo[playerid][mod12]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod12]); }
  493. if(VehicleInfo[playerid][mod13]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod13]); }
  494. if(VehicleInfo[playerid][mod14]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod14]); }
  495. if(VehicleInfo[playerid][mod15]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod15]); }
  496. if(VehicleInfo[playerid][mod16]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod16]); }
  497. if(VehicleInfo[playerid][mod17]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod17]); }
  498. if(VehicleInfo[playerid][colora]!=0 || VehicleInfo[playerid][colorb]!=0)
  499. {
  500. ChangeVehicleColor(Vehicle[playerid],VehicleInfo[playerid][colora],VehicleInfo[playerid][colorb]);
  501. }
  502. if(VehicleInfo[playerid][paintjob]!=0)
  503. {
  504. ChangeVehiclePaintjob(Vehicle[playerid],VehicleInfo[playerid][paintjob]);
  505. }
  506. new tmp[256]; tmp = dini_Get(file, "Plate");
  507. gPlayerHasCar[playerid] = 1;
  508. VehOwned[Vehicle[playerid]] = 1;
  509. OwnerID[Vehicle[playerid]] = playerid;
  510. SetVehicleParamsForPlayer(Vehicle[playerid], playerid, 0, VehicleInfo[playerid][Locked]);
  511. gVehLocked[Vehicle[playerid]] = VehicleInfo[playerid][Locked];
  512. SetVehicleNumberPlate(Vehicle[playerid], tmp);
  513. VehPlate[Vehicle[playerid]] = tmp;
  514. }
  515. return 1;
  516. }
  517.  
  518.  
  519. public OnPlayerDisconnect(playerid)
  520. {
  521. new file[256], name[24];
  522. GetPlayerName(playerid, name, 24);
  523. format(file,sizeof(file),"Cars/%s.ini",name);
  524. if(dini_Exists(file))
  525. {
  526. dini_IntSet(file, "Model", GetVehicleModel(Vehicle[playerid]));
  527. dini_IntSet(file, "Price", VehicleInfo[playerid][Price]);
  528. dini_FloatSet(file, "X", VehicleInfo[playerid][CarX]);
  529. dini_FloatSet(file, "Y", VehicleInfo[playerid][CarY]);
  530. dini_FloatSet(file, "Z", VehicleInfo[playerid][CarZ]);
  531. dini_FloatSet(file, "Rot", VehicleInfo[playerid][CarRot]);
  532. dini_IntSet(file, "Locked", VehicleInfo[playerid][Locked]);
  533. dini_Set(file, "Plate", VehPlate[Vehicle[playerid]]);
  534. dini_IntSet(file, "mod1", VehicleInfo[playerid][mod1]);
  535. dini_IntSet(file, "mod2", VehicleInfo[playerid][mod2]);
  536. dini_IntSet(file, "mod3", VehicleInfo[playerid][mod3]);
  537. dini_IntSet(file, "mod4", VehicleInfo[playerid][mod4]);
  538. dini_IntSet(file, "mod5", VehicleInfo[playerid][mod5]);
  539. dini_IntSet(file, "mod6", VehicleInfo[playerid][mod6]);
  540. dini_IntSet(file, "mod7", VehicleInfo[playerid][mod7]);
  541. dini_IntSet(file, "mod8", VehicleInfo[playerid][mod8]);
  542. dini_IntSet(file, "mod9", VehicleInfo[playerid][mod9]);
  543. dini_IntSet(file, "mod10", VehicleInfo[playerid][mod10]);
  544. dini_IntSet(file, "mod11", VehicleInfo[playerid][mod11]);
  545. dini_IntSet(file, "mod12", VehicleInfo[playerid][mod12]);
  546. dini_IntSet(file, "mod13", VehicleInfo[playerid][mod13]);
  547. dini_IntSet(file, "mod14", VehicleInfo[playerid][mod14]);
  548. dini_IntSet(file, "mod15", VehicleInfo[playerid][mod15]);
  549. dini_IntSet(file, "mod16", VehicleInfo[playerid][mod16]);
  550. dini_IntSet(file, "mod17", VehicleInfo[playerid][mod17]);
  551. dini_IntSet(file, "paintjob", VehicleInfo[playerid][paintjob]);
  552. dini_IntSet(file, "color1", VehicleInfo[playerid][colora]);
  553. dini_IntSet(file, "color2", VehicleInfo[playerid][colorb]);
  554. DestroyVehicle(Vehicle[playerid]);
  555. }
  556. return 1;
  557. }
  558.  
  559. public OnPlayerStateChange(playerid, newstate, oldstate)
  560. {
  561. if(newstate == PLAYER_STATE_DRIVER)
  562. {
  563. new veh = GetPlayerVehicleID(playerid);
  564. if(VehOwned[veh] == 0)
  565. {
  566. if(IsADealerCar[veh] == 1)
  567. {
  568. new string[128];
  569. format(string, sizeof(string), ""TPLAVA2"Jeste li sigurni da želite kupiti %s za $%i?", GetVehicleNameFromID(veh), CarPrice[veh]);
  570. ShowPlayerDialog(playerid, 669, DIALOG_STYLE_MSGBOX, "Kupovina", string, "Da", "Ne");
  571. return 1;
  572. }
  573. }
  574. else if(VehOwned[veh] == 1)
  575. {
  576. new owner[24], string[128];
  577. GetPlayerName(OwnerID[veh], owner, sizeof(owner));
  578. format(string, sizeof(string), ""TPLAVA2"[INFO]: Ovaj %s je u vlasništvu %s.", GetVehicleNameFromID(veh), owner);
  579. SendClientMessage(playerid, 0xFFFFFFAA, string);
  580. return 1;
  581. }
  582. }
  583. return 1;
  584. }
  585.  
  586. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  587. {
  588. if(dialogid == 3304)
  589. {
  590. if(response)
  591. {
  592. //-------------/LOCKcars-------------
  593. if(listitem == 0)
  594. {
  595. if(gPlayerHasCar[playerid] == 1)
  596. {
  597. new veh, Float:vehx, Float:vehy, Float:vehz;
  598. veh = Vehicle[playerid];
  599. GetVehiclePos(veh, vehx, vehy, vehz);
  600. if(IsPlayerInRangeOfPoint(playerid, 3.0, vehx, vehy, vehz))
  601. {
  602. if(VehicleInfo[playerid][Locked] == 0)
  603. {
  604. SetVehicleParamsForPlayer(veh, playerid, 0, 1);
  605. PlayerPlaySound(playerid, 1145, 0.0, 0.0, 0.0);
  606. GameTextForPlayer(playerid, "~r~Auto zakljucan!", 3000, 3);
  607. VehicleInfo[playerid][Locked] = 1;
  608. gVehLocked[v] = 1;
  609. return 1;
  610. }
  611. if(VehicleInfo[playerid][Locked] == 1)
  612. {
  613. SetVehicleParamsForPlayer(veh, playerid, 0, 0);
  614. PlayerPlaySound(playerid, 1145, 0.0, 0.0, 0.0);
  615. GameTextForPlayer(playerid, "~g~Auto otkljucan!", 3000, 3);
  616. VehicleInfo[playerid][Locked] = 0;
  617. gVehLocked[v] = 0;
  618. return 1;
  619. }
  620. }
  621. else
  622. {
  623. SendClientMessage(playerid, 0xAFAFAFAA, ""CRVENA"[INFO]: "BIJELA"Previše ste udaljeni od svog automobila.");
  624. return 1;
  625. }
  626. }
  627. else
  628. {
  629. SendClientMessage(playerid, 0xAFAFAFAA, ""CRVENA"[INFO]: "BIJELA"Ne posjedujete automobil.");
  630. }
  631. return 1;
  632. }
  633. if(listitem == 1)
  634. {
  635. new Float:X, Float:Y, Float:Z, Float:Rot;
  636. if(!IsPlayerInVehicle(playerid, Vehicle[playerid]))
  637. {
  638. SendClientMessage(playerid, 0xFFFFFFAA, ""CRVENA"[INFO]: "BIJELA"Niste u vlastitom automobilu.");
  639. return 1;
  640. }
  641. new file[256], name[24];
  642. GetPlayerName(playerid, name, 24);
  643. format(file,sizeof(file),"Cars/%s.ini",name);
  644. dini_IntSet(file, "Model", VehicleInfo[playerid][Model]);
  645. dini_IntSet(file, "Price", VehicleInfo[playerid][Price]);
  646. dini_FloatSet(file, "X", VehicleInfo[playerid][CarX]);
  647. dini_FloatSet(file, "Y", VehicleInfo[playerid][CarY]);
  648. dini_FloatSet(file, "Z", VehicleInfo[playerid][CarZ]);
  649. dini_FloatSet(file, "Rot", VehicleInfo[playerid][CarRot]);
  650. dini_IntSet(file, "Locked", VehicleInfo[playerid][Locked]);
  651. dini_IntSet(file, "paintjob", VehicleInfo[playerid][paintjob]);
  652. dini_IntSet(file, "color1", VehicleInfo[playerid][colora]);
  653. dini_IntSet(file, "color1", VehicleInfo[playerid][colorb]);
  654. SendClientMessage(playerid, 0xFFFF00FF, ""CRVENA"[INFO]: "BIJELA"Automobil je uspješno parkiran. ((Nakon reloga æe se ovdje spawnati)).");
  655. GetVehiclePos(Vehicle[playerid], X, Y, Z);
  656. GetVehicleZAngle(Vehicle[playerid], Rot);
  657. VehicleInfo[playerid][Model] = GetVehicleModel(playerid);
  658. VehicleInfo[playerid][CarX] = X;
  659. VehicleInfo[playerid][CarY] = Y;
  660. VehicleInfo[playerid][CarZ] = Z;
  661. VehicleInfo[playerid][CarRot] = Rot;
  662. return 1;
  663. }
  664. if(listitem == 2)
  665. {
  666. if(IsPlayerConnected(playerid))
  667. {
  668. if(!IsPlayerInVehicle(playerid, Vehicle[playerid]))
  669. {
  670. SendClientMessage(playerid, 0xFFFFFFAA, ""CRVENA"[INFO]: "BIJELA"Niste u vlastitom automobilu.");
  671. }
  672. if(ConfirmSale[playerid] == 0) {
  673. //SendClientMessage(playerid, 0xFFFF00FF, "Jeste li sigutni da zelite prodati biciklu (Koristi /prodajcars jos jednom da ga prodas).");
  674. ConfirmSale[playerid] = 1;
  675. }
  676. new string[128], file[256], name[MAX_PLAYER_NAME];
  677. GetPlayerName(playerid, name, sizeof(name));
  678. format(file,sizeof(file),"Cars/%s.ini",name);
  679. GameTextForPlayer(playerid, "~g~Uspjesno ste prodali svoj automobil!", 3000, 3);
  680. format(string, sizeof(string), ""CRVENA"[INFO]: "BIJELA"Prodali ste svoj automobil za 50 posto, za $%i.", VehicleInfo[playerid][Price]/2);
  681. GivePlayerMoney(playerid, VehicleInfo[playerid][Price]/2);
  682. DestroyVehicle(Vehicle[playerid]);
  683. dini_Remove(file);
  684. Vehicle[playerid] = 0;
  685. gPlayerHasCar[playerid] = 0;
  686. VehicleInfo[playerid][Model] = 0;
  687. VehicleInfo[playerid][Price] = 0;
  688. VehicleInfo[playerid][CarX] = 0;
  689. VehicleInfo[playerid][CarY] = 0;
  690. VehicleInfo[playerid][CarZ] = 0;
  691. VehicleInfo[playerid][CarRot] = 0;
  692. ConfirmSale[playerid] = 0;
  693. SendClientMessage(playerid, 0xFFFF00FF, string);
  694. }
  695. }
  696. }
  697. if(listitem == 3)
  698. {
  699. if(IsPlayerConnected(playerid))
  700. {
  701. if(gPlayerHasCar[playerid] == 1)
  702. {
  703. new Float:vx, Float:vy, Float:vz;
  704. GetVehiclePos(Vehicle[playerid], vx, vy, vz);
  705. SetPlayerCheckpoint(playerid, vx, vy, vz, 10.0);
  706. Checkpoint[playerid] = 1;
  707. SendClientMessage(playerid, 0xFFFFFFAA, ""CRVENA"[INFO]: "BIJELA"Odi na crveni marker da pronaðeš automobil!");
  708. }
  709. else
  710. {
  711. SendClientMessage(playerid, 0xAFAFAFAA, ""CRVENA"[INFO]: "BIJELA"Ne posjedujete automobil.");
  712. }
  713. }
  714. }
  715. return 1;
  716. }
  717.  
  718.  
  719. ///
  720. if(dialogid == 669)
  721. {
  722. if(response)
  723. {
  724. new file[256], name[MAX_PLAYER_NAME];
  725. GetPlayerName(playerid, name, sizeof(name));
  726. format(file,sizeof(file),"Cars/%s.ini",name);
  727. new veh = GetPlayerVehicleID(playerid);
  728. new money = GetPlayerMoney(playerid);
  729. if(money >= CarPrice[veh])
  730. {
  731. /*RemovePlayerFromVehicle(playerid);
  732. {*/
  733. RemovePlayerFromVehicle(playerid);
  734. if(gPlayerHasCar[playerid] == 1) return SendClientMessage(playerid, 0xFFFFFFFF, ""CRVENA"[INFO]: "BIJELA" Veæ posjedujete automobil!");
  735. new string[64];
  736. SendClientMessage(playerid, 0xAFAFAFAA, "Hvala na kupnji automobila.");
  737. PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
  738. dini_Create(file);
  739. Vehicle[playerid] = CreateVehicle(GetVehicleModel(veh), 1459.0154,-2173.8457,13.7221,178.1962, 1, 1, 3600000);
  740. format(string, sizeof(string), ""TPLAVA"[INFO]: "BIJELA"...Stvaranje vozila %i...", veh);
  741. SendClientMessage(playerid, 0xAFAFAFAA, string);
  742. VehicleInfo[playerid][Model] = GetVehicleModel(veh);
  743. VehicleInfo[playerid][Price] = CarPrice[veh];
  744. VehicleInfo[playerid][CarX] = 1459.0154;
  745. VehicleInfo[playerid][CarY] = -2173.8457;
  746. VehicleInfo[playerid][CarZ] = 13.7221;
  747. VehicleInfo[playerid][CarRot] = 178.1962;
  748. gPlayerHasCar[playerid] = 1;
  749. RemovePlayerFromVehicle(playerid);
  750. OwnerID[Vehicle[playerid]] = playerid;
  751. VehPlate[Vehicle[playerid]] = "XYZR 000";
  752. PutPlayerInVehicle(playerid, Vehicle[playerid], 0);
  753. GivePlayerMoney(playerid, -VehicleInfo[playerid][Price]);
  754. }
  755. else
  756. {
  757. RemovePlayerFromVehicle(playerid);
  758. SendClientMessage(playerid, 0xAFAFAFAA, ""CRVENA"[INFO]: "BIJELA"Nemate dovoljno novca za kupnju ovog automobila.");
  759. return 1;
  760. }
  761. }
  762. else
  763. {
  764. RemovePlayerFromVehicle(playerid);
  765. }
  766. }
  767. if(dialogid == 670)
  768. {
  769. if(response)
  770. {
  771. new file[256], name[24], license[10];
  772. GetPlayerName(playerid, name, 24);
  773. format(file,sizeof(file),"Cars/%s.ini",name);
  774. dini_IntSet(file, "Model", VehicleInfo[playerid][Model]);
  775. dini_IntSet(file, "Price", VehicleInfo[playerid][Price]);
  776. dini_FloatSet(file, "X", VehicleInfo[playerid][CarX]);
  777. dini_FloatSet(file, "Y", VehicleInfo[playerid][CarY]);
  778. dini_FloatSet(file, "Z", VehicleInfo[playerid][CarZ]);
  779. dini_FloatSet(file, "Rot", VehicleInfo[playerid][CarRot]);
  780. dini_IntSet(file, "Locked", VehicleInfo[playerid][Locked]);
  781. dini_IntSet(file, "mod1", VehicleInfo[playerid][mod1]);
  782. dini_IntSet(file, "mod2", VehicleInfo[playerid][mod2]);
  783. dini_IntSet(file, "mod3", VehicleInfo[playerid][mod3]);
  784. dini_IntSet(file, "mod4", VehicleInfo[playerid][mod4]);
  785. dini_IntSet(file, "mod5", VehicleInfo[playerid][mod5]);
  786. dini_IntSet(file, "mod6", VehicleInfo[playerid][mod6]);
  787. dini_IntSet(file, "mod7", VehicleInfo[playerid][mod7]);
  788. dini_IntSet(file, "mod8", VehicleInfo[playerid][mod8]);
  789. dini_IntSet(file, "mod9", VehicleInfo[playerid][mod9]);
  790. dini_IntSet(file, "mod10", VehicleInfo[playerid][mod10]);
  791. dini_IntSet(file, "mod11", VehicleInfo[playerid][mod11]);
  792. dini_IntSet(file, "mod12", VehicleInfo[playerid][mod12]);
  793. dini_IntSet(file, "mod13", VehicleInfo[playerid][mod13]);
  794. dini_IntSet(file, "mod14", VehicleInfo[playerid][mod14]);
  795. dini_IntSet(file, "mod15", VehicleInfo[playerid][mod15]);
  796. dini_IntSet(file, "mod16", VehicleInfo[playerid][mod16]);
  797. dini_IntSet(file, "mod17", VehicleInfo[playerid][mod17]);
  798. dini_IntSet(file, "paintjob", VehicleInfo[playerid][paintjob]);
  799. dini_IntSet(file, "color1", VehicleInfo[playerid][colora]);
  800. dini_IntSet(file, "color2", VehicleInfo[playerid][colorb]);
  801. new string[128], Float:CarHP, Float:OldCarHP, Float:X, Float:Y, Float:Z, Float:Rot;
  802. new plate = strlen(inputtext);
  803. if(plate < 4) return ShowPlayerDialog(playerid, 670, DIALOG_STYLE_INPUT, "Plate", "Plate must be at least 4 characters.\n\nPlease try again.", "Done", "Cancel");
  804. if(plate > 8) return ShowPlayerDialog(playerid, 670, DIALOG_STYLE_INPUT, "Plate", "Plate must be below 8 characters.\n\nPlease try again.", "Done", "Cancel");
  805. GetVehicleHealth(Vehicle[playerid], CarHP);
  806. OldCarHP = CarHP;
  807. GetVehiclePos(Vehicle[playerid], X, Y, Z);
  808. GetVehicleZAngle(Vehicle[playerid], Rot);
  809. SetVehicleNumberPlate(Vehicle[playerid], inputtext);
  810. SetVehicleToRespawn(Vehicle[playerid]);
  811. SetVehiclePos(Vehicle[playerid], X, Y, Z);
  812. SetVehicleZAngle(Vehicle[playerid], Rot);
  813. PutPlayerInVehicle(playerid, Vehicle[playerid], 0);
  814. format(license, sizeof(license), "%s", inputtext);
  815. VehPlate[Vehicle[playerid]] = license;
  816. dini_Set(file, "Plate", VehPlate[Vehicle[playerid]]);
  817. format(string, sizeof(string), "{FFFF00}You have set your vehicle's plate to:{FFFFFF} %s", inputtext);
  818. SendClientMessage(playerid, 0xFFFFFFFF, string);
  819. SendClientMessage(playerid, 0xFFFFFFFF, "NOTE: Your vehicle's health was restored to the previous amount (to prevent exploitation).");
  820. SetVehicleHealth(Vehicle[playerid], OldCarHP);
  821. VehicleInfo[playerid][Model] = dini_Int(file, "Model");
  822. VehicleInfo[playerid][Price] = dini_Int(file, "Price");
  823. VehicleInfo[playerid][CarX] = dini_Float(file, "X");
  824. VehicleInfo[playerid][CarY] = dini_Float(file, "Y");
  825. VehicleInfo[playerid][CarZ] = dini_Float(file, "Z");
  826. VehicleInfo[playerid][CarRot] = dini_Float(file, "Rot");
  827. VehicleInfo[playerid][Locked] = dini_Int(file, "Locked");
  828. VehicleInfo[playerid][mod1] = dini_Int(file, "mod1");
  829. VehicleInfo[playerid][mod2] = dini_Int(file, "mod2");
  830. VehicleInfo[playerid][mod3] = dini_Int(file, "mod3");
  831. VehicleInfo[playerid][mod4] = dini_Int(file, "mod4");
  832. VehicleInfo[playerid][mod5] = dini_Int(file, "mod5");
  833. VehicleInfo[playerid][mod6] = dini_Int(file, "mod6");
  834. VehicleInfo[playerid][mod7] = dini_Int(file, "mod7");
  835. VehicleInfo[playerid][mod8] = dini_Int(file, "mod8");
  836. VehicleInfo[playerid][mod9] = dini_Int(file, "mod9");
  837. VehicleInfo[playerid][mod10] = dini_Int(file, "mod10");
  838. VehicleInfo[playerid][mod11] = dini_Int(file, "mod11");
  839. VehicleInfo[playerid][mod12] = dini_Int(file, "mod12");
  840. VehicleInfo[playerid][mod13] = dini_Int(file, "mod13");
  841. VehicleInfo[playerid][mod14] = dini_Int(file, "mod14");
  842. VehicleInfo[playerid][mod15] = dini_Int(file, "mod15");
  843. VehicleInfo[playerid][mod16] = dini_Int(file, "mod16");
  844. VehicleInfo[playerid][mod17] = dini_Int(file, "mod17");
  845. VehicleInfo[playerid][paintjob] = dini_Int(file, "paintjob");
  846. VehicleInfo[playerid][colora] = dini_Int(file, "color1");
  847. VehicleInfo[playerid][colorb] = dini_Int(file, "color2");
  848. if(VehicleInfo[playerid][mod1]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod1]); }
  849. if(VehicleInfo[playerid][mod2]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod2]); }
  850. if(VehicleInfo[playerid][mod3]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod3]); }
  851. if(VehicleInfo[playerid][mod4]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod4]); }
  852. if(VehicleInfo[playerid][mod5]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod5]); }
  853. if(VehicleInfo[playerid][mod6]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod6]); }
  854. if(VehicleInfo[playerid][mod7]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod7]); }
  855. if(VehicleInfo[playerid][mod8]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod8]); }
  856. if(VehicleInfo[playerid][mod9]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod9]); }
  857. if(VehicleInfo[playerid][mod10]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod10]); }
  858. if(VehicleInfo[playerid][mod11]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod11]); }
  859. if(VehicleInfo[playerid][mod12]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod12]); }
  860. if(VehicleInfo[playerid][mod13]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod13]); }
  861. if(VehicleInfo[playerid][mod14]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod14]); }
  862. if(VehicleInfo[playerid][mod15]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod15]); }
  863. if(VehicleInfo[playerid][mod16]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod16]); }
  864. if(VehicleInfo[playerid][mod17]!=0) { AddVehicleComponent(Vehicle[playerid],VehicleInfo[playerid][mod17]); }
  865. if(VehicleInfo[playerid][colora]!=0 || VehicleInfo[playerid][colorb]!=0)
  866. {
  867. ChangeVehicleColor(Vehicle[playerid],VehicleInfo[playerid][colora],VehicleInfo[playerid][colorb]);
  868. }
  869. if(VehicleInfo[playerid][paintjob]!=0)
  870. {
  871. ChangeVehiclePaintjob(Vehicle[playerid],VehicleInfo[playerid][paintjob]);
  872. }
  873. SetVehicleParamsForPlayer(Vehicle[playerid], playerid, 0, VehicleInfo[playerid][Locked]);
  874. gVehLocked[Vehicle[playerid]] = VehicleInfo[playerid][Locked];
  875. CarHP = 0;
  876. OldCarHP = 0;
  877. return 1;
  878. }
  879. return 1;
  880. }
  881. return 1;
  882. }
  883. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  884. {
  885. if(IsPlayerInVehicle(playerid, Vehicle[playerid]))
  886. {
  887. if(GetVehicleModel(Vehicle[playerid]) == 483)
  888. {
  889. switch(paintjobid)
  890. {
  891. case 0: VehicleInfo[playerid][paintjob] = 0;
  892. }
  893. }
  894. if(GetVehicleModel(Vehicle[playerid]) == 534)
  895. {
  896. switch(paintjobid)
  897. {
  898. case 0: VehicleInfo[playerid][paintjob] = 0;
  899. case 1: VehicleInfo[playerid][paintjob] = 1;
  900. case 2: VehicleInfo[playerid][paintjob] = 2;
  901. }
  902. }
  903. if(GetVehicleModel(Vehicle[playerid]) == 535)
  904. {
  905. switch(paintjobid)
  906. {
  907. case 0: VehicleInfo[playerid][paintjob] = 0;
  908. case 1: VehicleInfo[playerid][paintjob] = 1;
  909. case 2: VehicleInfo[playerid][paintjob] = 2;
  910. }
  911. }
  912. if(GetVehicleModel(Vehicle[playerid]) == 536)
  913. {
  914. switch(paintjobid)
  915. {
  916. case 0: VehicleInfo[playerid][paintjob] = 0;
  917. case 1: VehicleInfo[playerid][paintjob] = 1;
  918. case 2: VehicleInfo[playerid][paintjob] = 2;
  919. }
  920. }
  921. if(GetVehicleModel(Vehicle[playerid]) == 558)
  922. {
  923. switch(paintjobid)
  924. {
  925. case 0: VehicleInfo[playerid][paintjob] = 0;
  926. case 1: VehicleInfo[playerid][paintjob] = 1;
  927. case 2: VehicleInfo[playerid][paintjob] = 2;
  928. }
  929. }
  930. if(GetVehicleModel(Vehicle[playerid]) == 559)
  931. {
  932. switch(paintjobid)
  933. {
  934. case 0: VehicleInfo[playerid][paintjob] = 0;
  935. case 1: VehicleInfo[playerid][paintjob] = 1;
  936. case 2: VehicleInfo[playerid][paintjob] = 2;
  937. }
  938. }
  939. if(GetVehicleModel(Vehicle[playerid]) == 560)
  940. {
  941. switch(paintjobid)
  942. {
  943. case 0: VehicleInfo[playerid][paintjob] = 0;
  944. case 1: VehicleInfo[playerid][paintjob] = 1;
  945. case 2: VehicleInfo[playerid][paintjob] = 2;
  946. }
  947. }
  948. if(GetVehicleModel(Vehicle[playerid]) == 561)
  949. {
  950. switch(paintjobid)
  951. {
  952. case 0: VehicleInfo[playerid][paintjob] = 0;
  953. case 1: VehicleInfo[playerid][paintjob] = 1;
  954. case 2: VehicleInfo[playerid][paintjob] = 2;
  955. }
  956. }
  957. if(GetVehicleModel(Vehicle[playerid]) == 562)
  958. {
  959. switch(paintjobid)
  960. {
  961. case 0: VehicleInfo[playerid][paintjob] = 0;
  962. case 1: VehicleInfo[playerid][paintjob] = 1;
  963. case 2: VehicleInfo[playerid][paintjob] = 2;
  964. }
  965. }
  966. if(GetVehicleModel(Vehicle[playerid]) == 565)
  967. {
  968. switch(paintjobid)
  969. {
  970. case 0: VehicleInfo[playerid][paintjob] = 0;
  971. case 1: VehicleInfo[playerid][paintjob] = 1;
  972. case 2: VehicleInfo[playerid][paintjob] = 2;
  973. }
  974. }
  975. if(GetVehicleModel(Vehicle[playerid]) == 567)
  976. {
  977. switch(paintjobid)
  978. {
  979. case 0: VehicleInfo[playerid][paintjob] = 0;
  980. case 1: VehicleInfo[playerid][paintjob] = 1;
  981. case 2: VehicleInfo[playerid][paintjob] = 2;
  982. }
  983. }
  984. if(GetVehicleModel(Vehicle[playerid]) == 575)
  985. {
  986. switch(paintjobid)
  987. {
  988. case 0: VehicleInfo[playerid][paintjob] = 0;
  989. case 1: VehicleInfo[playerid][paintjob] = 1;
  990. }
  991. }
  992. if(GetVehicleModel(Vehicle[playerid]) == 576)
  993. {
  994. switch(paintjobid)
  995. {
  996. case 0: VehicleInfo[playerid][paintjob] = 0;
  997. case 1: VehicleInfo[playerid][paintjob] = 1;
  998. case 2: VehicleInfo[playerid][paintjob] = 2;
  999. }
  1000. }
  1001. }
  1002. return 1;
  1003. }
  1004.  
  1005. public OnVehicleRespray(playerid,vehicleid, color1, color2)
  1006. {
  1007. if(IsPlayerInVehicle(playerid, Vehicle[playerid]))
  1008. {
  1009. VehicleInfo[playerid][colora] = color1;
  1010. VehicleInfo[playerid][colorb] = color2;
  1011. }
  1012. return 1;
  1013. }
  1014.  
  1015. strtok(const string[], &index)
  1016. {
  1017. new length = strlen(string);
  1018. while ((index < length) && (string[index] <= ' '))
  1019. {
  1020. index++;
  1021. }
  1022.  
  1023. new offset = index;
  1024. new result[20];
  1025. while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
  1026. {
  1027. result[index - offset] = string[index];
  1028. index++;
  1029. }
  1030. result[index - offset] = EOS;
  1031. return result;
  1032. }
  1033.  
  1034. public OnPlayerCommandText(playerid, cmdtext[])
  1035. {
  1036. new idx, /*tmp[128],*/ cmd[128];
  1037. cmd = strtok(cmdtext, idx);
  1038. ////////////
  1039. if(strcmp(cmdtext, "/v", true) == 0)
  1040. {
  1041. //if(IsPlayerInRangeOfPoint(playerid, 837.4081,-2060.8938,12.8672,179.2266))
  1042. {
  1043. ShowPlayerDialog(playerid, 3304, DIALOG_STYLE_LIST, ""TPLAVA"Opcije auta", ""TPLAVA"Otkljucaj-Zakljucaj\n"BIJELA"Parkiraj\n"TPLAVA"Prodaj\n"BIJELA"Lociraj", "Odaberi", "Odustani");
  1044. }
  1045. return 1;
  1046. }
  1047. ////////
  1048. return 0;
  1049. }
  1050.  
  1051. public OnPlayerEnterCheckpoint(playerid)
  1052. {
  1053. if(Checkpoint[playerid] == 1)
  1054. {
  1055. PlayerPlaySound(playerid, 1149, 0.0, 0.0, 0.0);
  1056. DisablePlayerCheckpoint(playerid);
  1057. return 1;
  1058. }
  1059. return 1;
  1060. }
  1061.  
  1062. public OnVehicleStreamIn(vehicleid, forplayerid)
  1063. {
  1064. if(gVehLocked[vehicleid] == 1)
  1065. {
  1066. SetVehicleParamsForPlayer(vehicleid, forplayerid, 0, 1);
  1067. gVehLocked[vehicleid] = 1;
  1068. }
  1069. else
  1070. {
  1071. SetVehicleParamsForPlayer(vehicleid, forplayerid, 0, 0);
  1072. gVehLocked[vehicleid] = 0;
  1073. }
  1074. return 1;
  1075. }
  1076.  
  1077. public OnVehicleSpawn(vehicleid)
  1078. {
  1079. if(Destroyed[vehicleid] == true)
  1080. {
  1081. new file[256], name[MAX_PLAYER_NAME];
  1082. GetPlayerName(OwnerID[vehicleid], name, sizeof(name));
  1083. format(file,sizeof(file),"Cars/%s.ini",name);
  1084. if(dini_Exists(file))
  1085. {
  1086. VehicleInfo[OwnerID[vehicleid]][Model] = dini_Int(file, "Model");
  1087. VehicleInfo[OwnerID[vehicleid]][Price] = dini_Int(file, "Price");
  1088. VehicleInfo[OwnerID[vehicleid]][CarX] = dini_Float(file, "X");
  1089. VehicleInfo[OwnerID[vehicleid]][CarY] = dini_Float(file, "Y");
  1090. VehicleInfo[OwnerID[vehicleid]][CarZ] = dini_Float(file, "Z");
  1091. VehicleInfo[OwnerID[vehicleid]][CarRot] = dini_Float(file, "Rot");
  1092. VehicleInfo[OwnerID[vehicleid]][Locked] = dini_Int(file, "Locked");
  1093. VehicleInfo[OwnerID[vehicleid]][mod1] = dini_Int(file, "mod1");
  1094. VehicleInfo[OwnerID[vehicleid]][mod2] = dini_Int(file, "mod2");
  1095. VehicleInfo[OwnerID[vehicleid]][mod3] = dini_Int(file, "mod3");
  1096. VehicleInfo[OwnerID[vehicleid]][mod4] = dini_Int(file, "mod4");
  1097. VehicleInfo[OwnerID[vehicleid]][mod5] = dini_Int(file, "mod5");
  1098. VehicleInfo[OwnerID[vehicleid]][mod6] = dini_Int(file, "mod6");
  1099. VehicleInfo[OwnerID[vehicleid]][mod7] = dini_Int(file, "mod7");
  1100. VehicleInfo[OwnerID[vehicleid]][mod8] = dini_Int(file, "mod8");
  1101. VehicleInfo[OwnerID[vehicleid]][mod9] = dini_Int(file, "mod9");
  1102. VehicleInfo[OwnerID[vehicleid]][mod10] = dini_Int(file, "mod10");
  1103. VehicleInfo[OwnerID[vehicleid]][mod11] = dini_Int(file, "mod11");
  1104. VehicleInfo[OwnerID[vehicleid]][mod12] = dini_Int(file, "mod12");
  1105. VehicleInfo[OwnerID[vehicleid]][mod13] = dini_Int(file, "mod13");
  1106. VehicleInfo[OwnerID[vehicleid]][mod14] = dini_Int(file, "mod14");
  1107. VehicleInfo[OwnerID[vehicleid]][mod15] = dini_Int(file, "mod15");
  1108. VehicleInfo[OwnerID[vehicleid]][mod16] = dini_Int(file, "mod16");
  1109. VehicleInfo[OwnerID[vehicleid]][mod17] = dini_Int(file, "mod17");
  1110. VehicleInfo[OwnerID[vehicleid]][paintjob] = dini_Int(file, "paintjob");
  1111. VehicleInfo[OwnerID[vehicleid]][colora] = dini_Int(file, "color1");
  1112. VehicleInfo[OwnerID[vehicleid]][colorb] = dini_Int(file, "color2");
  1113. Vehicle[OwnerID[vehicleid]] = CreateVehicle(VehicleInfo[OwnerID[vehicleid]][Model], VehicleInfo[OwnerID[vehicleid]][CarX], VehicleInfo[OwnerID[vehicleid]][CarY], VehicleInfo[OwnerID[vehicleid]][CarZ], VehicleInfo[OwnerID[vehicleid]][CarRot], -1, -1, 3600000);
  1114. if(VehicleInfo[OwnerID[vehicleid]][mod1]!=0) { AddVehicleComponent(Vehicle[OwnerID[vehicleid]],VehicleInfo[OwnerID[vehicleid]][mod1]); }
  1115. if(VehicleInfo[OwnerID[vehicleid]][mod2]!=0) { AddVehicleComponent(Vehicle[OwnerID[vehicleid]],VehicleInfo[OwnerID[vehicleid]][mod2]); }
  1116. if(VehicleInfo[OwnerID[vehicleid]][mod3]!=0) { AddVehicleComponent(Vehicle[OwnerID[vehicleid]],VehicleInfo[OwnerID[vehicleid]][mod3]); }
  1117. if(VehicleInfo[OwnerID[vehicleid]][mod4]!=0) { AddVehicleComponent(Vehicle[OwnerID[vehicleid]],VehicleInfo[OwnerID[vehicleid]][mod4]); }
  1118. if(VehicleInfo[OwnerID[vehicleid]][mod5]!=0) { AddVehicleComponent(Vehicle[OwnerID[vehicleid]],VehicleInfo[OwnerID[vehicleid]][mod5]); }
  1119. if(VehicleInfo[OwnerID[vehicleid]][mod6]!=0) { AddVehicleComponent(Vehicle[OwnerID[vehicleid]],VehicleInfo[OwnerID[vehicleid]][mod6]); }
  1120. if(VehicleInfo[OwnerID[vehicleid]][mod7]!=0) { AddVehicleComponent(Vehicle[OwnerID[vehicleid]],VehicleInfo[OwnerID[vehicleid]][mod7]); }
  1121. if(VehicleInfo[OwnerID[vehicleid]][mod8]!=0) { AddVehicleComponent(Vehicle[OwnerID[vehicleid]],VehicleInfo[OwnerID[vehicleid]][mod8]); }
  1122. if(VehicleInfo[OwnerID[vehicleid]][mod9]!=0) { AddVehicleComponent(Vehicle[OwnerID[vehicleid]],VehicleInfo[OwnerID[vehicleid]][mod9]); }
  1123. if(VehicleInfo[OwnerID[vehicleid]][mod10]!=0) { AddVehicleComponent(Vehicle[OwnerID[vehicleid]],VehicleInfo[OwnerID[vehicleid]][mod10]); }
  1124. if(VehicleInfo[OwnerID[vehicleid]][mod11]!=0) { AddVehicleComponent(Vehicle[OwnerID[vehicleid]],VehicleInfo[OwnerID[vehicleid]][mod11]); }
  1125. if(VehicleInfo[OwnerID[vehicleid]][mod12]!=0) { AddVehicleComponent(Vehicle[OwnerID[vehicleid]],VehicleInfo[OwnerID[vehicleid]][mod12]); }
  1126. if(VehicleInfo[OwnerID[vehicleid]][mod13]!=0) { AddVehicleComponent(Vehicle[OwnerID[vehicleid]],VehicleInfo[OwnerID[vehicleid]][mod13]); }
  1127. if(VehicleInfo[OwnerID[vehicleid]][mod14]!=0) { AddVehicleComponent(Vehicle[OwnerID[vehicleid]],VehicleInfo[OwnerID[vehicleid]][mod14]); }
  1128. if(VehicleInfo[OwnerID[vehicleid]][mod15]!=0) { AddVehicleComponent(Vehicle[OwnerID[vehicleid]],VehicleInfo[OwnerID[vehicleid]][mod15]); }
  1129. if(VehicleInfo[OwnerID[vehicleid]][mod16]!=0) { AddVehicleComponent(Vehicle[OwnerID[vehicleid]],VehicleInfo[OwnerID[vehicleid]][mod16]); }
  1130. if(VehicleInfo[OwnerID[vehicleid]][mod17]!=0) { AddVehicleComponent(Vehicle[OwnerID[vehicleid]],VehicleInfo[OwnerID[vehicleid]][mod17]); }
  1131. if(VehicleInfo[OwnerID[vehicleid]][colora]!=0 || VehicleInfo[OwnerID[vehicleid]][colorb]!=0)
  1132. {
  1133. ChangeVehicleColor(Vehicle[OwnerID[vehicleid]],VehicleInfo[OwnerID[vehicleid]][colora],VehicleInfo[OwnerID[vehicleid]][colorb]);
  1134. }
  1135. if(VehicleInfo[OwnerID[vehicleid]][paintjob]!=0)
  1136. {
  1137. ChangeVehiclePaintjob(Vehicle[OwnerID[vehicleid]],VehicleInfo[OwnerID[vehicleid]][paintjob]);
  1138. }
  1139. new tmp[256]; tmp = dini_Get(file, "Plate");
  1140. gPlayerHasCar[OwnerID[vehicleid]] = 1;
  1141. VehOwned[Vehicle[OwnerID[vehicleid]]] = 1;
  1142. SetVehicleParamsForPlayer(Vehicle[OwnerID[vehicleid]], OwnerID[vehicleid], 0, VehicleInfo[OwnerID[vehicleid]][Locked]);
  1143. gVehLocked[Vehicle[OwnerID[vehicleid]]] = VehicleInfo[OwnerID[vehicleid]][Locked];
  1144. SetVehicleNumberPlate(Vehicle[OwnerID[vehicleid]], tmp);
  1145. VehPlate[Vehicle[OwnerID[vehicleid]]] = tmp;
  1146. Destroyed[vehicleid] = false;
  1147. }
  1148. }
  1149. return 1;
  1150. }
  1151.  
  1152. stock IsACar(vehicleid)
  1153. {
  1154. switch(GetVehicleModel(vehicleid))
  1155. {
  1156. case 400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,
  1157. 418,419,420,421,422,423,424,426,427,428,429,431,432,433,434,435,436,437,438,
  1158. 439,440,442,443,444,445,451,455,456,458,459,466,467,470,474,475,477,478,479,
  1159. 480,482,483,486,489,490,491,492,494,495,496,498,499,500,502,503,504,505,506,
  1160. 507,508,514,515,516,517,518,524,525,526,527,528,529,533,534,535,536,540,541,
  1161. 542,543,544,545,546,547,549,550,551,552,554,555,556,557,558,559,560,561,562,
  1162. 565,566,567,568,573,575,576,578,579,580,582,585,587,588, 589,596,597,598,599,
  1163. 600,601,602,603,604,605,609: return 1;
  1164. }
  1165. return 1;
  1166. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement