Advertisement
Guest User

Untitled

a guest
Jan 31st, 2011
1,527
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 34.40 KB | None | 0 0
  1. #include <a_samp>
  2. #include <float>
  3.  
  4.  
  5. /*
  6. Credits to Ping ( Autohaus ersteller)
  7. Credits to Tratulla (2 Ini Functions.)
  8. Credits to SA-MP Wiki (strtok Funktion)
  9. Credits to RFT ( Edit)
  10. */
  11.  
  12.  
  13. #define RESETCARS
  14.  
  15.  
  16. #define CARSELL
  17.  
  18.  
  19.  
  20. #define COLOR_GRAD1 0xB4B5B7FF
  21. #define COLOR_GRAD2 0xBFC0C2FF
  22. #define COLOR_GRAD3 0xCBCCCEFF
  23. #define COLOR_GRAD4 0xD8D8D8FF
  24. #define COLOR_GRAD5 0xE3E3E3FF
  25. #define COLOR_GRAD6 0xF0F0F0FF
  26. #define COLOR_GREY 0xAFAFAFAA
  27. #define COLOR_GREEN 0x33AA33AA
  28. #define COLOR_RED 0xAA3333AA
  29. #define COLOR_LIGHTRED 0xFF6347AA
  30. #define COLOR_LIGHTBLUE 0x33CCFFAA
  31. #define COLOR_LIGHTGREEN 0x9ACD32AA
  32. #define COLOR_YELLOW 0xFFFF00AA
  33. #define COLOR_YELLOW2 0xF5DEB3AA
  34. #define COLOR_WHITE 0xFFFFFFAA
  35.  
  36. #define Max_Player_Cars 2
  37.  
  38. forward SetVehicleParamsForAll(carid,objective,doorslocked);
  39. forward CreateTunedCar(playerid, i);
  40. forward DelayDestroyCar(playerid);
  41. forward DelaySetVehicleParams(playerid);
  42. forward ResetAutohausSpawns();
  43.  
  44. enum ahCar
  45. {
  46. Typ,
  47. Float:X,
  48. Float:Y,
  49. Float:Z,
  50. Float:Rotation,
  51. Status,
  52. Lock,
  53. Carid,
  54. Paintjob,
  55. Farbe1,
  56. Farbe2,
  57. mod1,
  58. mod2,
  59. mod3,
  60. mod4,
  61. mod5,
  62. mod6,
  63. mod7,
  64. mod8,
  65. mod9,
  66. mod10,
  67. mod11,
  68. mod12,
  69. mod13,
  70. mod14,
  71. mod15,
  72. mod16,
  73. mod17,
  74. };
  75. new Carlist[MAX_PLAYERS][Max_Player_Cars][ahCar];
  76.  
  77. enum ahSpawn
  78. {
  79. Float:X,
  80. Float:Y,
  81. Float:Z,
  82. Float:Rotation,
  83. };
  84. new Autospawns[3][ahSpawn] = {
  85. {739.7457,-1343.8668,13.2828,270.2592},
  86. {-1639.3599,1198.1665,6.9527,269.9673},
  87. {960.0655,-909.5033,45.2856,150.2366}
  88. };
  89.  
  90. enum ahModell
  91. {
  92. Name[128],
  93. Autohaus,
  94. Modelid,
  95. Carid,
  96. Preis,
  97. Reparatur,
  98. Float:X,
  99. Float:Y,
  100. Float:Z,
  101. Float:Rotation,
  102. };
  103. new Kaufliste[40][ahModell] = {
  104. {"Stallion",0,439,-1,750000,5000,783.0,-1335.0,13.2,121.1},
  105. {"Feltzer",0,533,-1,500000,3000,783.0,-1340.0,13.2,121.1},
  106. {"Windsor",0,555,-1,450000,3400,783.0,-1345.0,13.2,121.1},
  107. {"Blade",0,536,-1,350000,3000,783.0,-1350.0,13.2,121.1},
  108. {"Remington",0,534,-1,500000,3000,783.0,-1355.0,13.2,121.1},
  109. {"Savanna",0,567,-1,350000,3000,783.0,-1360.0,13.2,121.1},
  110. {"Slamvan",0,535,-1,500000,3000,783.0,-1365.0,13.2,121.1},
  111. {"Voodoo",0,412,-1,500000,3000,783.0,-1370.0,13.2,121.1},
  112. {"Huntley",0,579,-1,200000,1000,783.0,-1375.0,13.2,121.1},
  113. {"Buccaneer",0,518,-1,120000,1000,783.0,-1380.0,13.2,121.1},
  114. {"Clover",0,542,-1,35000,500,765.0,-1360.0,13.4,301.1},
  115. {"Elegant",0,507,-1,40000,650,765.0,-1365.0,13.4,301.1},
  116. {"Elegy",0,562,-1,1500000,10000,765.0,-1370.0,13.4,301.1},
  117. {"Esperanto",0,419,-1,65000,650,765.0,-1375.0,13.4,301.1},
  118. {"Fortune",0,526,-1,35000,500,765.0,-1380.0,13.4,301.1},
  119. {"Sultan",0,560,-1,1500000,10000,766.0,-1333.0,13.3,211.1},
  120. {"Sunrise",0,550,-1,300000,2000,761.0,-1333.0,13.3,211.1},
  121. {"Vincent",0,540,-1,280000,2000,756.0,-1333.0,13.3,211.1},
  122. {"Alpha",0,602,-1,230000,2000,751.0,-1333.0,13.3,211.1},
  123. {"Banshee",0,429,-1,1000000,5500,746.0,-1333.0,13.3,211.1},
  124. {"Blista Compact",1,496,-1,350000,2500,-1668.6447,1207.0372,7.0249,309.5959},
  125. {"Buffalo",1,402,-1,500000,3000,-1663.6709,1215.2883,7.0234,274.9868},
  126. {"Bullet",1,541,-1,7500000,17500,-1651.3892,1210.3469,7.0208,281.3321},
  127. {"Cheetah",1,415,-1,4000000,10000,-1677.3560,1207.8099,13.4461,208.2602},
  128. {"Club",1,589,-1,70000,750,-1665.7789,1222.4406,13.4485,279.6459},
  129. {"Euros",1,587,-1,650000,7000,-1660.7256,1217.6407,13.4444,283.1553},
  130. {"Infernus",1,411,-1,1500000,7000,-1653.2462,1210.7842,13.4460,266.7211},
  131. {"Jester",1,559,-1,1500000,10000,-1676.0128,1207.1641,20.9248,261.5029},
  132. {"Phoenix",1,603,-1,600000,4000,-1664.4386,1206.8241,20.9289,332.5978},
  133. {"Super GT",1,506,-1,12500000,20000,-1651.6372,1208.2538,20.9231,305.1015},
  134. {"Turismo",1,451,-1,13000000,20000,-1665.1248,1222.7113,20.9265,267.4103},
  135. {"Uranus",1,558,-1,850000,10000,-1661.1943,1217.9629,20.9268,286.1662},
  136. {"ZR-350",1,477,-1,6500000,7000,-1654.3116,1214.8097,20.9267,173.5712},
  137. {"Faggio",0,462,-1,10000,500,750.7272,-1358.3872,13.0996,273.7736},
  138. {"Wayfarer",3,586,-1,600000,4000,974.7485,-927.0700,45.2858,67.0699},
  139. {"NRG-500",3,522,-1,12500000,20000,971.1738,-912.8298,45.3292,116.7014},
  140. {"FCR-900",3,521,-1,13000000,20000,976.1575,-925.9587,45.3364,63.6570},
  141. {"Sanchez",3,468,-1,850000,10000,977.1465,-925.1230,45.4507,60.6580},
  142. {"Freeway",3,463,-1,6500000,7000,975.9243,-912.8625,45.3052,120.8392},
  143. {"PCJ-600",3,461,-1,10000,500,973.7593,-912.7722,45.3397,118.7830}
  144. };
  145.  
  146.  
  147. new Spectating[MAX_PLAYERS][1];
  148.  
  149. // Anfang der Tuningkomponentenliste
  150. new spoiler[20][0] = {
  151. {1000},
  152. {1001},
  153. {1002},
  154. {1003},
  155. {1014},
  156. {1015},
  157. {1016},
  158. {1023},
  159. {1058},
  160. {1060},
  161. {1049},
  162. {1050},
  163. {1138},
  164. {1139},
  165. {1146},
  166. {1147},
  167. {1158},
  168. {1162},
  169. {1163},
  170. {1164}
  171. };
  172.  
  173. new nitro[3][0] = {
  174. {1008},
  175. {1009},
  176. {1010}
  177. };
  178.  
  179. new fbumper[23][0] = {
  180. {1117},
  181. {1152},
  182. {1153},
  183. {1155},
  184. {1157},
  185. {1160},
  186. {1165},
  187. {1167},
  188. {1169},
  189. {1170},
  190. {1171},
  191. {1172},
  192. {1173},
  193. {1174},
  194. {1175},
  195. {1179},
  196. {1181},
  197. {1182},
  198. {1185},
  199. {1188},
  200. {1189},
  201. {1192},
  202. {1193}
  203. };
  204.  
  205. new rbumper[22][0] = {
  206. {1140},
  207. {1141},
  208. {1148},
  209. {1149},
  210. {1150},
  211. {1151},
  212. {1154},
  213. {1156},
  214. {1159},
  215. {1161},
  216. {1166},
  217. {1168},
  218. {1176},
  219. {1177},
  220. {1178},
  221. {1180},
  222. {1183},
  223. {1184},
  224. {1186},
  225. {1187},
  226. {1190},
  227. {1191}
  228. };
  229.  
  230. new exhaust[28][0] = {
  231. {1018},
  232. {1019},
  233. {1020},
  234. {1021},
  235. {1022},
  236. {1028},
  237. {1029},
  238. {1037},
  239. {1043},
  240. {1044},
  241. {1045},
  242. {1046},
  243. {1059},
  244. {1064},
  245. {1065},
  246. {1066},
  247. {1089},
  248. {1092},
  249. {1104},
  250. {1105},
  251. {1113},
  252. {1114},
  253. {1126},
  254. {1127},
  255. {1129},
  256. {1132},
  257. {1135},
  258. {1136}
  259. };
  260.  
  261. new bventr[2][0] = {
  262. {1042},
  263. {1044}
  264. };
  265.  
  266. new bventl[2][0] = {
  267. {1043},
  268. {1045}
  269. };
  270.  
  271. new bscoop[4][0] = {
  272. {1004},
  273. {1005},
  274. {1011},
  275. {1012}
  276. };
  277.  
  278. new rscoop[13][0] = {
  279. {1006},
  280. {1032},
  281. {1033},
  282. {1035},
  283. {1038},
  284. {1053},
  285. {1054},
  286. {1055},
  287. {1061},
  288. {1067},
  289. {1068},
  290. {1088},
  291. {1091}
  292. };
  293.  
  294. new lskirt[21][0] = {
  295. {1007},
  296. {1026},
  297. {1031},
  298. {1036},
  299. {1039},
  300. {1042},
  301. {1047},
  302. {1048},
  303. {1056},
  304. {1057},
  305. {1069},
  306. {1070},
  307. {1090},
  308. {1093},
  309. {1106},
  310. {1108},
  311. {1118},
  312. {1119},
  313. {1133},
  314. {1122},
  315. {1134}
  316. };
  317.  
  318. new rskirt[21][0] = {
  319. {1017},
  320. {1027},
  321. {1030},
  322. {1040},
  323. {1041},
  324. {1051},
  325. {1052},
  326. {1062},
  327. {1063},
  328. {1071},
  329. {1072},
  330. {1094},
  331. {1095},
  332. {1099},
  333. {1101},
  334. {1102},
  335. {1107},
  336. {1120},
  337. {1121},
  338. {1124},
  339. {1137}
  340. };
  341.  
  342. new hydraulics[1][0] = {
  343. {1087}
  344. };
  345.  
  346. new base[1][0] = {
  347. {1086}
  348. };
  349.  
  350. new rbbars[2][0] = {
  351. {1109},
  352. {1110}
  353. };
  354.  
  355. new fbbars[2][0] = {
  356. {1115},
  357. {1116}
  358. };
  359.  
  360. new wheels[17][0] = {
  361. {1025},
  362. {1073},
  363. {1074},
  364. {1075},
  365. {1076},
  366. {1077},
  367. {1078},
  368. {1079},
  369. {1080},
  370. {1081},
  371. {1082},
  372. {1083},
  373. {1084},
  374. {1085},
  375. {1096},
  376. {1097},
  377. {1098}
  378. };
  379.  
  380. new lights[2][0] = {
  381. {1013},
  382. {1024}
  383. };
  384. // Ende der Tuningkomponentenliste
  385.  
  386. #if defined CARSELL
  387. new bietetAn[MAX_PLAYERS][2];
  388. #endif
  389.  
  390. ini_GetKey( line[] )
  391. {
  392. new keyRes[256];
  393. keyRes[0] = 0;
  394. if ( strfind( line , "=" , true ) == -1 ) return keyRes;
  395. strmid( keyRes , line , 0 , strfind( line , "=" , true ) , sizeof( keyRes) );
  396. return keyRes;
  397. }
  398.  
  399. ini_GetValue( line[] )
  400. {
  401. new valRes[256];
  402. valRes[0]=0;
  403. if ( strfind( line , "=" , true ) == -1 ) return valRes;
  404. strmid( valRes , line , strfind( line , "=" , true )+1 , strlen( line ) , sizeof( valRes ) );
  405. return valRes;
  406. }
  407.  
  408. strtok(const string[], &index)
  409. {
  410. new length = strlen(string);
  411. while ((index < length) && (string[index] <= ' '))
  412. {
  413. index++;
  414. }
  415.  
  416. new offset = index;
  417. new result[20];
  418. while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
  419. {
  420. result[index - offset] = string[index];
  421. index++;
  422. }
  423. result[index - offset] = EOS;
  424. return result;
  425. }
  426.  
  427. IsAutohausCar(carid)
  428. {
  429. new i;
  430. for(i=0; i<sizeof(Kaufliste); i++)
  431. {
  432. if(Kaufliste[i][Carid]==carid) { return i; }
  433. }
  434. return -1;
  435. }
  436.  
  437. GetPlayerFromCarlistCar(carid)
  438. {
  439. new i;
  440. for(i=0; i<sizeof(Carlist); i++)
  441. {
  442. for(new Car = 0; Car < Max_Player_Cars; Car++)
  443. {
  444. if(Carlist[i][Car][Carid]==carid) { return i; }
  445. }
  446. }
  447. return -1;
  448. }
  449.  
  450. GetModType(componentid)
  451. {
  452. new i;
  453. for(i=0; i<20; i++)
  454. {
  455. if(spoiler[i][0]==componentid) { return 1; }
  456. }
  457. for(i=0; i<3; i++)
  458. {
  459. if(nitro[i][0]==componentid) { return 2; }
  460. }
  461. for(i=0; i<23; i++)
  462. {
  463. if(fbumper[i][0]==componentid) { return 3; }
  464. }
  465. for(i=0; i<22; i++)
  466. {
  467. if(rbumper[i][0]==componentid) { return 4; }
  468. }
  469. for(i=0; i<28; i++)
  470. {
  471. if(exhaust[i][0]==componentid) { return 5; }
  472. }
  473. for(i=0; i<2; i++)
  474. {
  475. if(bventr[i][0]==componentid) { return 6; }
  476. }
  477. for(i=0; i<2; i++)
  478. {
  479. if(bventl[i][0]==componentid) { return 7; }
  480. }
  481. for(i=0; i<4; i++)
  482. {
  483. if(bscoop[i][0]==componentid) { return 8; }
  484. }
  485. for(i=0; i<13; i++)
  486. {
  487. if(rscoop[i][0]==componentid) { return 9; }
  488. }
  489. for(i=0; i<21; i++)
  490. {
  491. if(lskirt[i][0]==componentid) { return 10; }
  492. }
  493. for(i=0; i<21; i++)
  494. {
  495. if(rskirt[i][0]==componentid) { return 11; }
  496. }
  497. if(hydraulics[0][0]==componentid) { return 12; }
  498. if(base[0][0]==componentid) { return 13; }
  499. for(i=0; i<2; i++)
  500. {
  501. if(rbbars[i][0]==componentid) { return 14; }
  502. }
  503. for(i=0; i<2; i++)
  504. {
  505. if(fbbars[i][0]==componentid) { return 15; }
  506. }
  507. for(i=0; i<17; i++)
  508. {
  509. if(wheels[i][0]==componentid) { return 16; }
  510. }
  511. for(i=0; i<2; i++)
  512. {
  513. if(lights[i][0]==componentid) { return 17; }
  514. }
  515. return 0;
  516. }
  517.  
  518. public OnFilterScriptInit()
  519. {
  520. print("------------------------------");
  521. print(" ~*~ Mobiles Autohaus 1.4 ~*~");
  522. print(" ~*~ (c) 2009 by ping ~*~");
  523. print("------------------------------\n");
  524.  
  525. new i;
  526. for(i=0; i<sizeof(Kaufliste); i++)
  527. {
  528. Kaufliste[i][Carid]=CreateVehicle(Kaufliste[i][Modelid],Kaufliste[i][X],Kaufliste[i][Y],Kaufliste[i][Z],Kaufliste[i][Rotation],-1,-1,-1);
  529. }
  530. for(i=0; i<MAX_PLAYERS; i++)
  531. {
  532. Spectating[i][0]=-1;
  533. }
  534. return 1;
  535. }
  536.  
  537. public OnPlayerConnect(playerid)
  538. {
  539. for(new i = 0; i < Max_Player_Cars; i++)
  540. {
  541. new dateiname[MAX_PLAYER_NAME+4];
  542. new playername[MAX_PLAYER_NAME];
  543. Carlist[playerid][i][Typ]=-1; Carlist[playerid][i][X]=0.0; Carlist[playerid][i][Y]=0.0; Carlist[playerid][i][Z]=0.0;
  544. Carlist[playerid][i][Rotation]=0.0; Carlist[playerid][i][Status]=0; Carlist[playerid][i][Lock]=0; Carlist[playerid][i][Carid]=-1;
  545. Carlist[playerid][i][Farbe1]=-1; Carlist[playerid][i][Farbe2]=-1; Carlist[playerid][i][mod1]=-1; Carlist[playerid][i][mod2]=-1;
  546. Carlist[playerid][i][mod3]=-1; Carlist[playerid][i][mod4]=-1; Carlist[playerid][i][mod5]=-1; Carlist[playerid][i][mod6]=-1;
  547. Carlist[playerid][i][mod7]=-1; Carlist[playerid][i][mod8]=-1; Carlist[playerid][i][mod9]=-1; Carlist[playerid][i][mod10]=-1;
  548. Carlist[playerid][i][mod11]=-1; Carlist[playerid][i][mod12]=-1; Carlist[playerid][i][mod13]=-1; Carlist[playerid][i][mod14]=-1;
  549. Carlist[playerid][i][mod15]=-1; Carlist[playerid][i][mod16]=-1; Carlist[playerid][i][mod17]=-1; Carlist[playerid][i][Paintjob]=-1;
  550. Spectating[playerid][0]=-1;
  551. #if defined CARSELL
  552. bietetAn[playerid]={-1,0};
  553. #endif
  554. GetPlayerName(playerid, playername, sizeof(playername));
  555. format(dateiname, sizeof(dateiname), "%s%d.car", playername, i);
  556. if (fexist(dateiname))
  557. {
  558. new File: CarFile = fopen(dateiname, io_read);
  559. if ( CarFile )
  560. {
  561. new key[ 256 ];
  562. new Data[ 256 ];
  563. while ( fread( CarFile , Data , sizeof( Data ) ) )
  564. {
  565. key = ini_GetKey(Data);
  566. if(strcmp(key,"AH_Typ",true)==0) { Carlist[playerid][i][Typ]=strval(ini_GetValue(Data)); }
  567. else if(strcmp(key,"AH_X",true)==0) { Carlist[playerid][i][X]=floatstr(ini_GetValue(Data)); }
  568. else if(strcmp(key,"AH_Y",true)==0) { Carlist[playerid][i][Y]=floatstr(ini_GetValue(Data)); }
  569. else if(strcmp(key,"AH_Z",true)==0) { Carlist[playerid][i][Z]=floatstr(ini_GetValue(Data)); }
  570. else if(strcmp(key,"AH_Rot",true)==0) { Carlist[playerid][i][Rotation]=floatstr(ini_GetValue(Data)); }
  571. else if(strcmp(key,"AH_Status",true)==0) { Carlist[playerid][i][Status]=strval(ini_GetValue(Data)); }
  572. else if(strcmp(key,"AH_Lock",true)==0) { Carlist[playerid][i][Lock]=strval(ini_GetValue(Data)); }
  573. else if(strcmp(key,"AH_Paintjob",true)==0) { Carlist[playerid][i][Paintjob]=strval(ini_GetValue(Data)); }
  574. else if(strcmp(key,"AH_Farbe1",true)==0) { Carlist[playerid][i][Farbe1]=strval(ini_GetValue(Data)); }
  575. else if(strcmp(key,"AH_Farbe2",true)==0) { Carlist[playerid][i][Farbe2]=strval(ini_GetValue(Data)); }
  576. else if(strcmp(key,"AH_mod1",true)==0) { Carlist[playerid][i][mod1]=strval(ini_GetValue(Data)); }
  577. else if(strcmp(key,"AH_mod2",true)==0) { Carlist[playerid][i][mod2]=strval(ini_GetValue(Data)); }
  578. else if(strcmp(key,"AH_mod3",true)==0) { Carlist[playerid][i][mod3]=strval(ini_GetValue(Data)); }
  579. else if(strcmp(key,"AH_mod4",true)==0) { Carlist[playerid][i][mod4]=strval(ini_GetValue(Data)); }
  580. else if(strcmp(key,"AH_mod5",true)==0) { Carlist[playerid][i][mod5]=strval(ini_GetValue(Data)); }
  581. else if(strcmp(key,"AH_mod6",true)==0) { Carlist[playerid][i][mod6]=strval(ini_GetValue(Data)); }
  582. else if(strcmp(key,"AH_mod7",true)==0) { Carlist[playerid][i][mod7]=strval(ini_GetValue(Data)); }
  583. else if(strcmp(key,"AH_mod8",true)==0) { Carlist[playerid][i][mod8]=strval(ini_GetValue(Data)); }
  584. else if(strcmp(key,"AH_mod9",true)==0) { Carlist[playerid][i][mod9]=strval(ini_GetValue(Data)); }
  585. else if(strcmp(key,"AH_mod10",true)==0) { Carlist[playerid][i][mod10]=strval(ini_GetValue(Data)); }
  586. else if(strcmp(key,"AH_mod11",true)==0) { Carlist[playerid][i][mod11]=strval(ini_GetValue(Data)); }
  587. else if(strcmp(key,"AH_mod12",true)==0) { Carlist[playerid][i][mod12]=strval(ini_GetValue(Data)); }
  588. else if(strcmp(key,"AH_mod13",true)==0) { Carlist[playerid][i][mod13]=strval(ini_GetValue(Data)); }
  589. else if(strcmp(key,"AH_mod14",true)==0) { Carlist[playerid][i][mod14]=strval(ini_GetValue(Data)); }
  590. else if(strcmp(key,"AH_mod15",true)==0) { Carlist[playerid][i][mod15]=strval(ini_GetValue(Data)); }
  591. else if(strcmp(key,"AH_mod16",true)==0) { Carlist[playerid][i][mod16]=strval(ini_GetValue(Data)); }
  592. else if(strcmp(key,"AH_mod17",true)==0) { Carlist[playerid][i][mod17]=strval(ini_GetValue(Data)); }
  593. }
  594. }
  595. fclose(CarFile);
  596. if(Carlist[playerid][i][Typ]!=-1 && Carlist[playerid][i][Status]==1)
  597. {
  598. Carlist[playerid][i][Carid]=CreateTunedCar(playerid, i);
  599. }
  600. }
  601. SetTimerEx("DelaySetVehicleParams",10000,0,"i",playerid);
  602. }
  603. return 1;
  604. }
  605.  
  606. public OnPlayerDisconnect(playerid)
  607. {
  608. for( new i = 0; i < Max_Player_Cars; i++)
  609. {
  610. new dateiname[MAX_PLAYER_NAME+4];
  611. new playername[MAX_PLAYER_NAME];
  612. new var[256];
  613. GetPlayerName(playerid, playername, sizeof(playername));
  614. format(dateiname, sizeof(dateiname), "%s%d.car", playername, i);
  615. new File: CarFile = fopen(dateiname, io_write);
  616. format(var, 256, "AH_Typ=%i\n", Carlist[playerid][i][Typ]); fwrite(CarFile, var);
  617. format(var, 256, "AH_X=%f\n", Carlist[playerid][i][X]); fwrite(CarFile, var);
  618. format(var, 256, "AH_Y=%f\n", Carlist[playerid][i][Y]); fwrite(CarFile, var);
  619. format(var, 256, "AH_Z=%f\n", Carlist[playerid][i][Z]); fwrite(CarFile, var);
  620. format(var, 256, "AH_Rot=%f\n", Carlist[playerid][i][Rotation]); fwrite(CarFile, var);
  621. format(var, 256, "AH_Status=%i\n", Carlist[playerid][i][Status]); fwrite(CarFile, var);
  622. format(var, 256, "AH_Lock=%i\n", Carlist[playerid][i][Lock]); fwrite(CarFile, var);
  623. format(var, 256, "AH_Paintjob=%i\n", Carlist[playerid][i][Paintjob]); fwrite(CarFile, var);
  624. format(var, 256, "AH_Farbe1=%i\n", Carlist[playerid][i][Farbe1]); fwrite(CarFile, var);
  625. format(var, 256, "AH_Farbe2=%i\n", Carlist[playerid][i][Farbe2]); fwrite(CarFile, var);
  626. format(var, 256, "AH_mod1=%i\n", Carlist[playerid][i][mod1]); fwrite(CarFile, var);
  627. format(var, 256, "AH_mod2=%i\n", Carlist[playerid][i][mod2]); fwrite(CarFile, var);
  628. format(var, 256, "AH_mod3=%i\n", Carlist[playerid][i][mod3]); fwrite(CarFile, var);
  629. format(var, 256, "AH_mod4=%i\n", Carlist[playerid][i][mod4]); fwrite(CarFile, var);
  630. format(var, 256, "AH_mod5=%i\n", Carlist[playerid][i][mod5]); fwrite(CarFile, var);
  631. format(var, 256, "AH_mod6=%i\n", Carlist[playerid][i][mod6]); fwrite(CarFile, var);
  632. format(var, 256, "AH_mod7=%i\n", Carlist[playerid][i][mod7]); fwrite(CarFile, var);
  633. format(var, 256, "AH_mod8=%i\n", Carlist[playerid][i][mod8]); fwrite(CarFile, var);
  634. format(var, 256, "AH_mod9=%i\n", Carlist[playerid][i][mod9]); fwrite(CarFile, var);
  635. format(var, 256, "AH_mod10=%i\n", Carlist[playerid][i][mod10]); fwrite(CarFile, var);
  636. format(var, 256, "AH_mod11=%i\n", Carlist[playerid][i][mod11]); fwrite(CarFile, var);
  637. format(var, 256, "AH_mod12=%i\n", Carlist[playerid][i][mod12]); fwrite(CarFile, var);
  638. format(var, 256, "AH_mod13=%i\n", Carlist[playerid][i][mod13]); fwrite(CarFile, var);
  639. format(var, 256, "AH_mod14=%i\n", Carlist[playerid][i][mod14]); fwrite(CarFile, var);
  640. format(var, 256, "AH_mod15=%i\n", Carlist[playerid][i][mod15]); fwrite(CarFile, var);
  641. format(var, 256, "AH_mod16=%i\n", Carlist[playerid][i][mod16]); fwrite(CarFile, var);
  642. format(var, 256, "AH_mod17=%i\n", Carlist[playerid][i][mod17]); fwrite(CarFile, var);
  643. fclose(CarFile);
  644. if(Carlist[playerid][i][Carid]!=-1)
  645. {
  646. SetVehicleParamsForAll(Carlist[playerid][i][Carid],0,0);
  647. DestroyVehicle(Carlist[playerid][i][Carid]);
  648. Carlist[playerid][i][Carid]=-1;
  649. }
  650. if (Spectating[playerid][0]!=-1)
  651. {
  652. SetVehicleParamsForAll(Kaufliste[Spectating[playerid][0]][Carid],0,0);
  653. Spectating[playerid][0]=-1;
  654. }
  655. }
  656. return 1;
  657. }
  658.  
  659. public OnVehicleDeath(vehicleid, killerid)
  660. {
  661. new i;
  662. for(i=0; i<MAX_PLAYERS; i++)
  663. {
  664. for(new i2 = 0; i2 < Max_Player_Cars; i2++)
  665. {
  666. if(Carlist[i][i2][Carid]==vehicleid)
  667. {
  668. SetTimerEx("DelayDestroyCar",3000,0,"i",i);
  669. return 1;
  670. }
  671. }
  672. }
  673. return 1;
  674. }
  675.  
  676. public OnPlayerCommandText(playerid, cmdtext[])
  677. {
  678. new cmd[128], idx, string[128];
  679. new tmp[128];
  680.  
  681. cmd = strtok(cmdtext, idx);
  682.  
  683. if (strcmp("/carhelp", cmd, true, 10) == 0)
  684. {
  685. if(IsPlayerConnected(playerid))
  686. {
  687. SendClientMessage(playerid, COLOR_GREEN,"_______________________________________");
  688. SendClientMessage(playerid, COLOR_WHITE,"*** AUTO HILFE *** gib einen Befehl ein für mehr Hilfe");
  689. SendClientMessage(playerid, COLOR_GRAD3,"*** AUTO *** /park /fixcar /carlock /respraycar");
  690. SendClientMessage(playerid, COLOR_GRAD3,"*** AUTO *** /repaintcar /buycar /carsell /exitcar");
  691. #if defined CARSELL
  692. SendClientMessage(playerid, COLOR_GRAD3,"*** AUTO *** /pcarsell /cancelsell /acceptsell");
  693. #endif
  694. }
  695. return 1;
  696. }
  697. else if (strcmp("/park", cmd, true, 10) == 0)
  698. {
  699. for(new i = 0; i < Max_Player_Cars; i++)
  700. {
  701. if (IsPlayerInVehicle(playerid,Carlist[playerid][i][Carid]))
  702. {
  703. GetVehiclePos(Carlist[playerid][i][Carid],Carlist[playerid][i][X],Carlist[playerid][i][Y],Carlist[playerid][i][Z]);
  704. GetVehicleZAngle(Carlist[playerid][i][Carid],Carlist[playerid][i][Rotation]);
  705. SendClientMessage(playerid, COLOR_GREEN, "Fahrzeug geparkt!");
  706. return true;
  707. }
  708. }
  709. SendClientMessage(playerid, COLOR_GREY, "Du sitzt nicht in deinem eigenen Auto!");
  710. return 1;
  711. }
  712. else if (strcmp("/fixcar", cmd, true, 10) == 0)
  713. {
  714. tmp = strtok(cmdtext, idx);
  715. if(!tmp[0])
  716. {
  717. format(tmp, 128, "Verwendung: /repaintcar [1 - %d]", Max_Player_Cars);
  718. SendClientMessage(playerid, COLOR_WHITE, tmp);
  719. return true;
  720. }
  721. new i = strval(tmp);
  722. if (Carlist[playerid][i][Typ]!=-1)
  723. {
  724. if (Carlist[playerid][i][Status]==0)
  725. {
  726. new reparatur = Kaufliste[Carlist[playerid][i][Typ]][Reparatur];
  727. if (reparatur <= GetPlayerMoney(playerid))
  728. {
  729. Carlist[playerid][i][Status]=1;
  730. Carlist[playerid][i][Carid]=CreateTunedCar(playerid, i);
  731. GivePlayerMoney(playerid, - reparatur);
  732. format(string, 128, "Du hast dein Auto für $%i reparieren lassen! Es steht nun am letzten Parkpunkt für dich bereit.", reparatur);
  733. SendClientMessage(playerid, COLOR_RED, string);
  734. }
  735. else { format(string, 128, "Du hast nicht genug Geld für die Reparatur (benötigt: $%i)!", reparatur); SendClientMessage(playerid, COLOR_LIGHTRED, string); }
  736. }
  737. else { SendClientMessage(playerid, COLOR_GREY, "Dein Auto benötigt keine Reparatur!"); }
  738. }
  739. else { SendClientMessage(playerid, COLOR_GREY, "Du besitzt kein Auto auf diesen Slot!"); }
  740. return 1;
  741. }
  742. else if (strcmp("/carlock", cmd, true, 10) == 0)
  743. {
  744. tmp = strtok(cmdtext, idx);
  745. if(!tmp[0])
  746. {
  747. format(tmp, 128, "Verwendung: /repaintcar [1 - %d]", Max_Player_Cars);
  748. SendClientMessage(playerid, COLOR_WHITE, tmp);
  749. return true;
  750. }
  751. new i = strval(tmp);
  752. if (Carlist[playerid][i][Typ]!=-1)
  753. {
  754. if (Carlist[playerid][i][Carid]!=-1)
  755. {
  756. if (Carlist[playerid][i][Lock]==0)
  757. {
  758. Carlist[playerid][i][Lock]=1;
  759. SetVehicleParamsForAll(Carlist[playerid][i][Carid],0,1);
  760. SetVehicleParamsForPlayer(Carlist[playerid][i][Carid],playerid,0,0);
  761. SendClientMessage(playerid, COLOR_RED, "Du hast dein Auto für andere Spieler abgeschlossen!");
  762. }
  763. else
  764. {
  765. Carlist[playerid][i][Lock]=0;
  766. SetVehicleParamsForAll(Carlist[playerid][i][Carid],0,0);
  767. SendClientMessage(playerid, COLOR_RED, "Du hast dein Auto für andere Spieler aufgeschlossen!");
  768. }
  769. }
  770. else { SendClientMessage(playerid, COLOR_GREY, "Du besitzt zur Zeit kein Auto auf diesen Slot!"); }
  771. }
  772. else { SendClientMessage(playerid, COLOR_GREY, "Du besitzt kein Auto auf diesen Slot!"); }
  773. return 1;
  774. }
  775. else if (strcmp("/respraycar", cmd, true, 10) == 0)
  776. {
  777. tmp = strtok(cmdtext, idx);
  778. if(!tmp[0])
  779. {
  780. format(tmp, 128, "Verwendung: /repaintcar [1 - %d]", Max_Player_Cars);
  781. SendClientMessage(playerid, COLOR_WHITE, tmp);
  782. return true;
  783. }
  784. new i = strval(tmp);
  785. if (Carlist[playerid][i][Typ]!=-1)
  786. {
  787. if (Carlist[playerid][i][Carid]!=-1)
  788. {
  789. ChangeVehicleColor(Carlist[playerid][i][Carid],Carlist[playerid][i][Farbe1],Carlist[playerid][i][Farbe2]);
  790. SendClientMessage(playerid, COLOR_RED, "Dein Auto wurde neu lackiert!");
  791. }
  792. else { SendClientMessage(playerid, COLOR_GREY, "Du besitzt zur Zeit kein Auto auf diesen Slot!"); }
  793. }
  794. else { SendClientMessage(playerid, COLOR_GREY, "Du besitzt kein Auto auf diesen Slot!"); }
  795. return 1;
  796. }
  797. else if (strcmp("/repaintcar", cmd, true, 10) == 0)
  798. {
  799. tmp = strtok(cmdtext, idx);
  800. if(!tmp[0])
  801. {
  802. format(tmp, 128, "Verwendung: /repaintcar [1 - %d]", Max_Player_Cars);
  803. SendClientMessage(playerid, COLOR_WHITE, tmp);
  804. return true;
  805. }
  806. new i = strval(tmp);
  807. if (Carlist[playerid][i][Typ]!=-1)
  808. {
  809. if (Carlist[playerid][i][Carid]!=-1)
  810. {
  811. if (Carlist[playerid][i][Paintjob]!=-1)
  812. {
  813. ChangeVehiclePaintjob(Carlist[playerid][i][Carid],Carlist[playerid][i][Paintjob]);
  814. SendClientMessage(playerid, COLOR_RED, "Dein Auto wurde neu lackiert!");
  815. }
  816. else { SendClientMessage(playerid, COLOR_GREY, "Du hast keinen Paintjob für dein Auto!"); }
  817. }
  818. else { SendClientMessage(playerid, COLOR_GREY, "Du besitzt zur Zeit kein Auto auf diesen Slot!"); }
  819. }
  820. else { SendClientMessage(playerid, COLOR_GREY, "Du besitzt kein Auto auf diesen Slot!"); }
  821. return 1;
  822. }
  823. else if (strcmp("/exitcar", cmd, true, 10) == 0)
  824. {
  825. if (Spectating[playerid][0]!=-1)
  826. {
  827. TogglePlayerControllable(playerid,1);
  828. SetVehicleParamsForAll(Kaufliste[Spectating[playerid][0]][Carid],0,0);
  829. Spectating[playerid][0]=-1;
  830. RemovePlayerFromVehicle(playerid);
  831. }
  832. else { SendClientMessage(playerid, COLOR_GREY, "Du besichtigst kein Auto!"); }
  833. return 1;
  834. }
  835. else if(strcmp("/carsell", cmd, true, 10) == 0)
  836. {
  837. for(new i = 0; i < Max_Player_Cars; i++)
  838. {
  839. if (Carlist[playerid][i][Carid] == GetPlayerVehicleID(playerid))
  840. {
  841. new preis = (Kaufliste[Carlist[playerid][i][Typ]][Preis]/5)*4;
  842. if (IsPlayerInVehicle(playerid,Carlist[playerid][i][Carid])) { RemovePlayerFromVehicle(playerid); }
  843. GivePlayerMoney(playerid, preis);
  844. DestroyVehicle(Carlist[playerid][i][Carid]);
  845. Carlist[playerid][i][Typ]=-1; Carlist[playerid][i][X]=0.0; Carlist[playerid][i][Y]=0.0; Carlist[playerid][i][Z]=0.0;
  846. Carlist[playerid][i][Rotation]=0.0; Carlist[playerid][i][Status]=0; Carlist[playerid][i][Lock]=0; Carlist[playerid][i][Carid]=-1;
  847. Carlist[playerid][i][Farbe1]=-1; Carlist[playerid][i][Farbe2]=-1; Carlist[playerid][i][mod1]=-1; Carlist[playerid][i][mod2]=-1;
  848. Carlist[playerid][i][mod3]=-1; Carlist[playerid][i][mod4]=-1; Carlist[playerid][i][mod5]=-1; Carlist[playerid][i][mod6]=-1;
  849. Carlist[playerid][i][mod7]=-1; Carlist[playerid][i][mod8]=-1; Carlist[playerid][i][mod9]=-1; Carlist[playerid][i][mod10]=-1;
  850. Carlist[playerid][i][mod11]=-1; Carlist[playerid][i][mod12]=-1; Carlist[playerid][i][mod13]=-1; Carlist[playerid][i][mod14]=-1;
  851. Carlist[playerid][i][mod15]=-1; Carlist[playerid][i][mod16]=-1; Carlist[playerid][i][mod17]=-1; Carlist[playerid][i][Paintjob]=-1;
  852. format(string,128,"Du hast erfolgreich dein Auto für $%i verkauft!",preis);
  853. SendClientMessage(playerid, COLOR_RED, string);
  854. return true;
  855. }
  856. }
  857. SendClientMessage(playerid, COLOR_GREY, "Du besitzt kein Auto!");
  858. return 1;
  859. }
  860. else if (strcmp("/buycar", cmd, true, 10) == 0)
  861. {
  862. if (Spectating[playerid][0]!=-1)
  863. {
  864. for(new i = 0; i < Max_Player_Cars; i++)
  865. {
  866. if (Carlist[playerid][i][Typ]==-1)
  867. {
  868. new preis = Kaufliste[Spectating[playerid][0]][Preis];
  869. if (preis > GetPlayerMoney(playerid)){ format(string, 128, "Du hast nicht genug Geld für das Auto (benötigt: $%i)!", preis); SendClientMessage(playerid, COLOR_LIGHTRED, string); }
  870. {
  871. new autohaus=Kaufliste[Spectating[playerid][0]][Autohaus];
  872. GivePlayerMoney(playerid, - preis);
  873. Carlist[playerid][i][Typ]=Spectating[playerid][0]; Carlist[playerid][i][X]=Autospawns[autohaus][X]; Carlist[playerid][i][Y]=Autospawns[autohaus][Y];
  874. Carlist[playerid][i][Z]=Autospawns[autohaus][Z]; Carlist[playerid][i][Rotation]=Autospawns[autohaus][Rotation]; Carlist[playerid][i][Status]=1; Carlist[playerid][i][Lock]=0;
  875. Carlist[playerid][i][Carid]=CreateVehicle(Kaufliste[Spectating[playerid][0]][Modelid],Carlist[playerid][i][X],Carlist[playerid][i][Y],Carlist[playerid][i][Z],Carlist[playerid][i][Rotation],-1,-1,-1);
  876. SetVehicleParamsForAll(Kaufliste[Spectating[playerid][0]][Carid],0,0);
  877. TogglePlayerControllable(playerid,1);
  878. Spectating[playerid][0]=-1;
  879. RemovePlayerFromVehicle(playerid);
  880. format(string,128,"Du hast dir erfolgreich für $%i ein/einen %s gekauft!",preis,Kaufliste[Carlist[playerid][i][Typ]][Name]);
  881. SendClientMessage(playerid, COLOR_RED, string);
  882. SendClientMessage(playerid, COLOR_GREEN, "Wenn du dein Fahrzeug zerstörst, gib /fixcar ein.");
  883. SendClientMessage(playerid, COLOR_GREEN, "Mit /carlock kannst du dein Fahrzeug für andere Leute freigeben oder abschließen.");
  884. SendClientMessage(playerid, COLOR_GREEN, "Mehr Befehle kannst du unter /carhelp sehen.");
  885. SendClientMessage(playerid, COLOR_YELLOW, "Dein Auto steht am Ausgabepunkt bereit! Viel Spaß beim Fahren!");
  886. }
  887. }
  888. }
  889. format(tmp, 128, "Du besitzt bereits %d Autos", Max_Player_Cars);
  890. SendClientMessage(playerid, COLOR_GREY, tmp);
  891.  
  892. }
  893. else SendClientMessage(playerid, COLOR_GREY, "Du besichtigst kein Auto!");
  894. return true;
  895. }
  896. return 1;
  897. }
  898.  
  899. public OnPlayerStateChange(playerid, newstate, oldstate)
  900. {
  901. if(newstate == PLAYER_STATE_DRIVER)
  902. {
  903. new vehicleid = GetPlayerVehicleID(playerid);
  904. new typ;
  905. typ=IsAutohausCar(vehicleid);
  906. if(typ!=-1)
  907. {
  908. new string[128];
  909. TogglePlayerControllable(playerid,0);
  910. Spectating[playerid][0]=typ;
  911. SetVehicleParamsForAll(vehicleid,0,1);
  912. SendClientMessage(playerid, COLOR_YELLOW, "~*~ Autohaus ~*~");
  913. format(string,128,"Name: %s",Kaufliste[typ][Name]);
  914. SendClientMessage(playerid, COLOR_YELLOW, string);
  915. format(string,128,"Preis: $%i",Kaufliste[typ][Preis]);
  916. SendClientMessage(playerid, COLOR_YELLOW, string);
  917. format(string,128,"Reparaturkosten: $%i",Kaufliste[typ][Reparatur]);
  918. SendClientMessage(playerid, COLOR_YELLOW, string);
  919. SendClientMessage(playerid, COLOR_GREEN, "Dieses Fahrzeug ist zu verkaufen. Um es zu kaufen, benutze: /buycar");
  920. SendClientMessage(playerid, COLOR_GREEN, "Um das Fahrzeug zu verlassen, benutze: /exitcar");
  921. }
  922. }
  923. return 1;
  924. }
  925.  
  926. public OnVehicleMod(playerid,vehicleid,componentid)
  927. {
  928. for(new i = 0; i < Max_Player_Cars; i++)
  929. {
  930. if (playerid!=GetPlayerFromCarlistCar(vehicleid)) {return 1;}
  931. if(playerid!=-1)
  932. {
  933. new mod=GetModType(componentid);
  934. switch (mod)
  935. {
  936. case 1: { Carlist[playerid][i][mod1]=componentid; }
  937. case 2: { Carlist[playerid][i][mod2]=componentid; }
  938. case 3: { Carlist[playerid][i][mod3]=componentid; }
  939. case 4: { Carlist[playerid][i][mod4]=componentid; }
  940. case 5: { Carlist[playerid][i][mod5]=componentid; }
  941. case 6: { Carlist[playerid][i][mod6]=componentid; }
  942. case 7: { Carlist[playerid][i][mod7]=componentid; }
  943. case 8: { Carlist[playerid][i][mod8]=componentid; }
  944. case 9: { Carlist[playerid][i][mod9]=componentid; }
  945. case 10: { Carlist[playerid][i][mod10]=componentid; }
  946. case 11: { Carlist[playerid][i][mod11]=componentid; }
  947. case 12: { Carlist[playerid][i][mod12]=componentid; }
  948. case 13: { Carlist[playerid][i][mod13]=componentid; }
  949. case 14: { Carlist[playerid][i][mod14]=componentid; }
  950. case 15: { Carlist[playerid][i][mod15]=componentid; }
  951. case 16: { Carlist[playerid][i][mod16]=componentid; }
  952. case 17: { Carlist[playerid][i][mod17]=componentid; }
  953. default: { new string[128]; format(string,128,"Unbekannte Komponentenid: %i",componentid); print(string); }
  954. }
  955. }
  956. }
  957. return 1;
  958. }
  959.  
  960. public OnVehiclePaintjob(playerid,vehicleid, paintjobid)
  961. {
  962. for(new i = 0; i < Max_Player_Cars; i++)
  963. {
  964. if (playerid!=GetPlayerFromCarlistCar(vehicleid)) {return 1;}
  965. if(playerid!=-1)
  966. {
  967. Carlist[playerid][i][Paintjob]=paintjobid;
  968. }
  969. }
  970. return 1;
  971. }
  972.  
  973. public OnVehicleRespray(playerid,vehicleid, color1, color2)
  974. {
  975. for(new i= 0; i < Max_Player_Cars; i++)
  976. {
  977. if (playerid!=GetPlayerFromCarlistCar(vehicleid)) {return 1;}
  978. if(playerid!=-1)
  979. {
  980. Carlist[playerid][i][Farbe1]=color1;
  981. Carlist[playerid][i][Farbe2]=color2;
  982. }
  983. }
  984. return 1;
  985. }
  986.  
  987. public SetVehicleParamsForAll(carid,objective,doorslocked)
  988. {
  989. new i;
  990. for(i=0; i<MAX_PLAYERS; i++) { SetVehicleParamsForPlayer(carid,i,objective,doorslocked); }
  991. }
  992.  
  993. public CreateTunedCar(playerid, i)
  994. {
  995. if(IsPlayerConnected(playerid) && Carlist[playerid][i][Typ]!=-1)
  996. {
  997. new carid=CreateVehicle(Kaufliste[Carlist[playerid][i][Typ]][Modelid],Carlist[playerid][i][X],Carlist[playerid][i][Y],Carlist[playerid][i][Z],Carlist[playerid][i][Rotation],-1,-1,-1);
  998. if(Carlist[playerid][i][Lock]==1)
  999. {
  1000. SetVehicleParamsForAll(carid,0,1);
  1001. SetVehicleParamsForPlayer(carid,playerid,0,0);
  1002. }
  1003. if(Carlist[playerid][i][mod1]!=-1) { AddVehicleComponent(carid,Carlist[playerid][i][mod1]); }
  1004. if(Carlist[playerid][i][mod2]!=-1) { AddVehicleComponent(carid,Carlist[playerid][i][mod2]); }
  1005. if(Carlist[playerid][i][mod3]!=-1) { AddVehicleComponent(carid,Carlist[playerid][i][mod3]); }
  1006. if(Carlist[playerid][i][mod4]!=-1) { AddVehicleComponent(carid,Carlist[playerid][i][mod4]); }
  1007. if(Carlist[playerid][i][mod5]!=-1) { AddVehicleComponent(carid,Carlist[playerid][i][mod5]); }
  1008. if(Carlist[playerid][i][mod6]!=-1) { AddVehicleComponent(carid,Carlist[playerid][i][mod6]); }
  1009. if(Carlist[playerid][i][mod7]!=-1) { AddVehicleComponent(carid,Carlist[playerid][i][mod7]); }
  1010. if(Carlist[playerid][i][mod8]!=-1) { AddVehicleComponent(carid,Carlist[playerid][i][mod8]); }
  1011. if(Carlist[playerid][i][mod9]!=-1) { AddVehicleComponent(carid,Carlist[playerid][i][mod9]); }
  1012. if(Carlist[playerid][i][mod10]!=-1) { AddVehicleComponent(carid,Carlist[playerid][i][mod10]); }
  1013. if(Carlist[playerid][i][mod11]!=-1) { AddVehicleComponent(carid,Carlist[playerid][i][mod11]); }
  1014. if(Carlist[playerid][i][mod12]!=-1) { AddVehicleComponent(carid,Carlist[playerid][i][mod12]); }
  1015. if(Carlist[playerid][i][mod13]!=-1) { AddVehicleComponent(carid,Carlist[playerid][i][mod13]); }
  1016. if(Carlist[playerid][i][mod14]!=-1) { AddVehicleComponent(carid,Carlist[playerid][i][mod14]); }
  1017. if(Carlist[playerid][i][mod15]!=-1) { AddVehicleComponent(carid,Carlist[playerid][i][mod15]); }
  1018. if(Carlist[playerid][i][mod16]!=-1) { AddVehicleComponent(carid,Carlist[playerid][i][mod16]); }
  1019. if(Carlist[playerid][i][mod17]!=-1) { AddVehicleComponent(carid,Carlist[playerid][i][mod17]); }
  1020. if(Carlist[playerid][i][Paintjob]!=-1) { ChangeVehiclePaintjob(carid,Carlist[playerid][i][Paintjob]); }
  1021. if(Carlist[playerid][i][Farbe1]!=-1) { ChangeVehicleColor(carid,Carlist[playerid][i][Farbe1],Carlist[playerid][i][Farbe2]); }
  1022. return carid;
  1023. }
  1024. return -1;
  1025. }
  1026.  
  1027. public DelayDestroyCar(playerid)
  1028. {
  1029. for(new i= 0; i< Max_Player_Cars; i++)
  1030. {
  1031. SetVehicleParamsForAll(Carlist[playerid][i][Carid],0,0);
  1032. DestroyVehicle(Carlist[playerid][i][Carid]);
  1033. Carlist[playerid][i][Status]=0;
  1034. Carlist[playerid][i][Carid]=-1;
  1035. }
  1036. return 1;
  1037. }
  1038.  
  1039. public DelaySetVehicleParams(playerid)
  1040. {
  1041. if(!IsPlayerConnected(playerid)) { return 0; }
  1042. new i;
  1043. for(i=0; i<MAX_PLAYERS; i++)
  1044.  
  1045. {
  1046. for(new i2 = 0; i2 < Max_Player_Cars; i2++)
  1047. {
  1048. if(Carlist[i][i2][Carid]!=-1 && Carlist[i][i2][Lock]==1) { SetVehicleParamsForPlayer(Carlist[i][i2][Carid],playerid,0,1); }
  1049. if(Spectating[i][0]!=-1) { SetVehicleParamsForPlayer(Kaufliste[Spectating[i][0]][Carid],playerid,0,1); }
  1050. }
  1051. }
  1052. return 1;
  1053. }
  1054.  
  1055. public ResetAutohausSpawns()
  1056. {
  1057. new i;
  1058. for(i=0; i<sizeof(Kaufliste); i++) { SetVehicleToRespawn(Kaufliste[i][Carid]); }
  1059. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement