xXpoXXXIKK

ssssssssssssssssssssssssss

Apr 26th, 2016
125
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 438.47 KB | None | 0 0
  1. // (C) BY DARK TRIGARDON & [DT]SNIPER
  2. // Dies ist eine neue Verbeserte Auflage des DT_Car systems, mit mehr Funktionen und möglichkeiten.
  3. // Das Script wurde Kommplett neu erstellt.
  4. // Auch wurde viel wert auf die Dynamic des Script gelegt, somit lässt sich vieles (wenn im Script aktiviert) via Admin-Dialog einstellen
  5. // Bitte Copyright etc. drin lassen.
  6. #include <a_samp>
  7. //Versions Nummer: 1.3.7
  8.  
  9. //Danke an 8D. dafür dass ich eine idee aus seinen Autohaus (vom The Back Of Beyond - Server) "klauen" durfte und es noch etwas für dieses System angepasst habe (Farbenauswahl beim liveview)
  10. //Danke an [RMR]TScore für den nachgemappten tuner, dadurch wird ein Bug behoben
  11.  
  12. #define MYSQL_StrickenKid // Ausklammern um G-sTyLeZzZ MysqlPlugin anstatt Strickenkids zu benutzen (empfohlen auf allen linux servern)
  13. #define Debug //Aktiviert die MYSQL log! Achtung viel Inhalt! Aktiviert zudem paar Teleports und einen NRG befehl zum Scripten!
  14.  
  15. /*#define MYSQL_HOST "localhost" //host
  16. #define MYSQL_USER "samp5825" //User
  17. #define MYSQL_PASS "sagichnicht123" //Passwort
  18. #define MYSQL_DB "samp5825_saya" //Datenbank*/
  19.  
  20. #define MYSQL_HOST "localhost" //host
  21. #define MYSQL_USER "root" //User
  22. #define MYSQL_PASS "123" //Passwort
  23. #define MYSQL_DB "samp" //Datenbank
  24.  
  25. // Ab hier könnt ihr alles einstellen:
  26. #define Dtdc_Updater 2// erweitert(2), aktiviert(1) oder deaktiviert(0) den code der den Amdins bescheid gibt ob ein neues Update vorhanden ist.
  27. new Dtdc_UpdateManager[MAX_PLAYER_NAME] = "[MRL]saya"; // Name des Spielers, der automatisch über Updates informiert werden soll
  28. #define AktivateAdminDia 1 // Admin bekommt die möglichkeit fast alles Ingame einzustellen. Abgesehen von den Defines die sie hier einstellen.
  29. #define AktivateConfig 1 //Speichert und lädt alle nicht Einstellungen welche aus einem File (So werden Ingame eingestellte einstellungen gespeichert)
  30. #define MaxVehMore 2 // Anzahl Maximal Möglicher weiterer Fahrzeuge pro Person! Für Premium Sytem oder ähnliches.
  31. #define MaxVehPlayer 3 // Anzahl Möglicher Fahrzeuge pro Person! Achtung nicht zu hoch setzten! Das verbraucht Speicher und kann über das Carlimit hinausschiessen!
  32. #define MaxVehicle 400 //Maximale Anzahl an Vehiclen, die geladen werden. (Bei Cars4Eva werden maximal dise Anzahl geladen. Ansosten lässt sich die bese Maximal Zahl folgendermaßen berechnen: MaxSlots * MaxVehPerPlayer) Default: 400 (2 vehicle bei 200 Spieleren)
  33. #define Cars4Eva 0 // 1= Autos bleiben für immer ; 0= Autos eines Spielers nur wenn dieser Online auf dem Server. Ich rate dazu dies auf 0 zu belassen da Cars4Eva ob in meinem oder einen anderen System sehr Performence lastig sein kann.
  34. #define MaxSeller 25 // Maximale Autohäuser
  35. #define MaxResprayer 10 // Maximale Resprayer
  36. #define MaxTuner 15 // Maximale Tuner
  37. #define MaxSellerCars 200 //Maximale Anzahl an verkaufbaren Autos (wie viele Autos autohäusern hinzugefügt werden können (insgesammt), damit sie dort zu kaufen sind)
  38. #define MaxSellerPark 200 //Maximale Anzahl an Parkpläten (wie viele PArkplätze autohäusern hinzugefügt werden können (insgesammt), damit sie dort als startspawn dienen)
  39. #define MapIconBegin 0 //Beginnende MapIconid Max 99 Bei höherer Id werden keine mehr angezeigt.
  40. #define UnbugTuner // erstellt den Tuner neu, dies Hilft, dass alle das Auto sehen können (im tuner und Resprayer), jedoch wird ein Objekt erstellt. (Ausklammern zum abschalten)
  41.  
  42. #define AdminDia 14278 // DIALOG ID AdminDialog
  43. #define CarBuyDia 14279 // DIALOG ID CarBuyDialog
  44. #define UserDia 14280 // DIALOG ID UserDialog
  45.  
  46. //Nur ändern wenn dass configsystem deaktiviert.
  47. new Dtdc_Select = 0; // 0=Liveview ; 1=Dialog; 2=Live Dialog (mal wieder was neues xD);
  48. new Dtdc_LockOrAlarm = 1; // 1 = Kaufbare Alarmanlage als Sicherungsmittel; 0= normales Abschliessen (Funktioniert nicht immer); 2 = Alarmanlage in jedem Auto ohne sie kaufen zu müssen. 3 = abschliessen (spieler kann nicht mehr einsteigen)
  49. new Dtdc_LockAlarmOnSpawn = 1; // auf 0 setzten, wenn autos nach dem einloggen kaufen etc. abgeschlossen sein sollen. 1= abgescahltet 2=Lock on buy ansonsten nur beim spawn abgeschlossen wenn auch beim letzten save abgeschlossen.
  50. new Dtdc_Speedo = 0; // 0=Speedo Aktiviert; 1=Speedo deaktiviert.
  51. new Dtdc_SpeedoShadow = 0; // 0=Speedo Aktiviert; 1=Speedo deaktiviert.
  52. new Dtdc_Icon = 1239; //Icon-Modell default = 1239 (Info-Zeichen)
  53. new Dtdc_MapIcon = 55; //MapIcon-Modell 0= MapIcons Aus (es können insgesammt 99 Icons erstellt werden ohne Streamer); Default-ID: 55(Car)
  54. new Dtdc_LoadHealth = 0;//Laden und Speichern des Fahrzeugzustandes (Health+Aussehen) 0=Aktiviert 1= Deaktivert
  55. new Dtdc_ParkCommand = 0;//Speichern des Standorts via /park, wenn ausgeschaltet wird die letzte pos. gespeichert. 0=Aktiviert 1= Deaktivert
  56. new Dtdc_PutInVehOnBuy = 0;//Käufer in das neugekaufte Auto setzen. 0=Aktiviert, 1= deaktivierts
  57. new Dtdc_ReSpawnSek = 60;//Nach wievielen Sekunden soll ein Auto respawnt werden, wenn es kaputt gegangen ist?
  58. new Dtdc_EasySellerCreate = 0; //Einfachere erstellung von Autohäusern, da der Platz des Liveviews auf einen Standart Platz gesetzt wird (Ottos Cars) 0 = Aktiviert 1= deaktiviert
  59. new Dtdc_SpeedoTank = 0;//0 = aktiviert die Tankanzeige beim Speedo 1= deaktiviert die Tankanzeige
  60. new Dtdc_SpeedoPos = 0;//Positon des Speedos (0 = unten rechts 1 = unten rechts leicht erhöht 2= mitte rechts)
  61. new Dtdc_CmdCarList = 0;//0 aktiviert den /carlist befehl. (kann dürch Carfind/carsell erweitert werden)
  62. new Dtdc_CarListCarFind = 0;//0 aktiviert carfind befehl welcher in der Carlist eingebaut ist!
  63. new Dtdc_CarListCarSell = 0;//0 aktiviert carsell befehl welcher in der Carlist eingebaut ist!
  64. new Dtdc_SaveVw = 1;//Virtual-World-Speicherung 0= Aktiviert
  65. new Dtdc_Resprayer = 1;//Sollen Spray einrichtungen für alle fahrzeuge erstellt werden können und geladen werden? (0=aktiviert)
  66. new Dtdc_RsIcon =1248; //IconModel Resprayer default = 1248 (GTA3-Sign)
  67. new Dtdc_RsMapIcon =63; //MapIcon-Modell 0= MapIcons Aus (es können insgesammt 99 Icons erstellt werden ohne Streamer); Default-ID: 63(Pay N Spray)
  68. new Dtdc_RsPreis = 400; //Preis fürs im Sprayen in Resprayer
  69. new Dtdc_Tuner = 0; //Sollen Tuning-Stationen für Motorräder Autos und Trucks erstellt werden? (0 = aktiviert)
  70. new Dtdc_NeonPreis = 500; // Preis für Neonlichter in den Tuning-Stationen
  71. new Dtdc_NumplatePreis = 500; // Preis für Nummernschilder in den Tuning-Stationen
  72. new Dtdc_TuIcon =1248; //IconModel Resprayer default = 1248 (GTA3-Sign)
  73. new Dtdc_TuMapIcon =63; //MapIcon-Modell 0= MapIcons Aus (es können insgesammt 99 Icons erstellt werden ohne Streamer); Default-ID: 63(Pay N Spray)
  74. new Dtdc_OPark = 0;//0 = Aktivieren vom Ordnungsamtparken!
  75. new Dtdc_OParkPay = 1000;//Preis für das Freikaufen
  76. new Float:Dtdc_OParkRate = 0.3;
  77. new Float:Dtdc_OParkX = 877.43;
  78. new Float:Dtdc_OParkY = -1229.88;
  79. new Float:Dtdc_OParkZ = 15.90;
  80. new Float:Dtdc_OParkR = 25.0;
  81. new Dtdc_OParkTow = 1;//0 = Deaktivieren von ziehen von Autos mit dem Towcar (für ein selfamde ziehscript z.b)/1=Aktivieren vom Towcar abschleppen mit der Taste "2"/2 = Aktivieren Aktivieren vom Towcar abschleppen mit "/tow"
  82. new Dtdc_NeonOnOff = 1;//0 = Neon kann nicht abgeschlatet werden. /1=Aktivieren Deaktivieren des Neon mit der Taste "N" / 2 = Aktivieren Deaktivieren des Neon mit "/Neon"
  83.  
  84. //LogConfiguration
  85. new Dtdc_Logs[6];
  86.  
  87. //Bitte nichts mehr ändern wenn mann nicht weiss was man tut
  88. #pragma dynamic 20000 // Headspace erhöhen
  89. //#include <utils>
  90. #include <a_http>
  91.  
  92. /* Beispiel bei Gamemodeseitigen Geld
  93. stock GivePMoney(playerid, money)
  94. {
  95. return CallRemoteFunction("GivePlayerEuro","dd",playerid,money);
  96. }
  97.  
  98. stock GetPMoney(playerid)
  99. {
  100. return CallRemoteFunction("GetPlayerEuros","d",playerid);
  101. }
  102. #undef GivePlayerMoney
  103. #define GivePlayerMoney GivePMoney
  104. #define GetPlayerMoney GetPMoney*/
  105.  
  106.  
  107. #if defined MYSQL_StrickenKid
  108.  
  109. #include <Mysql>
  110. #define mysql_fetch_row2 mysql_fetch_row
  111. #define mysql_query_fix mysql_query
  112.  
  113. #else
  114.  
  115. #include <a_mysql>
  116.  
  117. new MYSQL_CON;
  118.  
  119. stock mysql_query_fix(query[],resultid=-1,extraid=-1)
  120. {
  121. return mysql_query(query,resultid,extraid,MYSQL_CON);
  122. }
  123.  
  124. stock mysql_real_escape_string_f(const source[],dest[])
  125. {
  126. return mysql_real_escape_string(source,dest,MYSQL_CON);
  127. }
  128.  
  129. stock mysql_free_result_fix()
  130. {
  131. return mysql_free_result(MYSQL_CON);
  132. }
  133.  
  134. stock mysql_store_result_fix()
  135. {
  136. return mysql_store_result(MYSQL_CON);
  137. }
  138.  
  139. stock mysql_retrieve_row_f()
  140. {
  141. return mysql_retrieve_row(MYSQL_CON);
  142. }
  143.  
  144. stock mysql_fetch_field_f(const fieldname[],string[])
  145. {
  146. return mysql_fetch_field_row(string,fieldname,MYSQL_CON);
  147. }
  148.  
  149. stock mysql_fetch_row2_format_f(string[],const deli[] = "|")
  150. {
  151. return mysql_fetch_row_format(string,deli,MYSQL_CON);
  152. }
  153.  
  154. stock mysql_num_rows_fix()
  155. {
  156. return mysql_num_rows(MYSQL_CON);
  157. }
  158.  
  159. #define mysql_fetch_row2 mysql_fetch_row2_format_f
  160. #define mysql_num_rows mysql_num_rows_fix
  161. #define mysql_fetch_field mysql_fetch_field_f
  162. #define mysql_retrieve_row mysql_retrieve_row_f
  163. #define mysql_store_result mysql_store_result_fix
  164. #define mysql_free_result mysql_free_result_fix
  165. #define mysql_real_escape_string mysql_real_escape_string_f
  166.  
  167. #endif
  168.  
  169. #define COLOR_YELLOW 0xFFFF00AA
  170. #define COLOR_WHITE 0xFFFFFFFF
  171. #define COLOR_GREY 0xAFAFAFAA
  172. #define COLOR_LIGHTBLUE 0x33CCFFAA
  173.  
  174. //playerdefines AdminDialog NICHT VERÄNDERN!
  175. #define AdminMainDia 0
  176. #define AdminCfgDia 1
  177. #define AdminSelDia 2
  178. #define AdminLoaDia 3
  179. #define AdminLosDia 4
  180. #define AdminSpdDia 5
  181. #define AdminSellerDia 6
  182. #define AdminSellerCreDia 7
  183. #define AdminSellerEditDia 8
  184. #define AdminSellerCarEditDia 9
  185. #define AdminSellerCarNewDia 10
  186. #define AdminSellerCarNewDia2 11
  187. #define AdminSellerCarNewDia3 12
  188. #define AdminSellerCarNewDia4 13
  189. #define AdminSellerCarDelDia 14
  190. #define AdminSellerCarDelAllDia 15
  191. #define AdminSellerCarEditDia2 16
  192. #define AdminSellerCarEditDia3 17
  193. #define AdminSellerParkSelDia 18
  194. #define AdminSellerParkNewDia 19
  195. #define AdminSellerParkDelAllDia 20
  196. #define AdminSellerRenameDia 21
  197. #define AdminSellerDelDia 22
  198. #define AdminSellerDelAllDia 23
  199. #define AdminPickDia 24
  200. #define AdminMapDia 25
  201. #define AdminHealDia 26
  202. #define AdminParkDia 27
  203. #define AdminPIVBDia 28
  204. #define AdminCRTDia 29
  205. #define AdminESCDia 30
  206. #define AdminSellerEditPosDia 31
  207. #define AdminSellerEditPosICDia 32
  208. #define AdminSellerEditPosLCDia 33
  209. #define AdminSellerEditPosCADia 34
  210. #define AdminSellerEditPosPLDia 35
  211. #define AdminLogCfgDia 36
  212. #define AdminAllLogDia 37
  213. #define AdminCbLogDia 38
  214. #define AdminRaaLogDia 39
  215. #define AdminDfLogDia 40
  216. #define AdminSpdCfgDia 41
  217. #define AdminSpdTankCfgDia 42
  218. #define AdminSpdPosiCfgDia 43
  219. #define AdminScLogDia 44
  220. #define AdminLcLogDia 45
  221. #define AdminSaveCfgDia 46
  222. #define AdminVWDia 47
  223. #define AdminCaLiCfgDia 48
  224. #define AdminCarListDia 49
  225. #define AdminCarFindDia 50
  226. #define AdminCarSellDia 51
  227. #define AdminAllgemeinCfgDia 52
  228. #define AdminAutohausCfgDia 53
  229. #define AdminResprayerCfgDia 54
  230. #define AdminReSpDia 55
  231. #define AdminResprayerDia 56
  232. #define AdminRsIconDia 57
  233. #define AdminRsMapDia 58
  234. #define AdminResprayerCreDia 59
  235. #define AdminResprayerDelAllDia 60
  236. #define AdminResprayerEditDia 61
  237. #define AdminResprayerDelDia 62
  238. #define AdminResprayerEditSelDia 63
  239. #define AdminResprayerRenameDia 64
  240. #define AdminResprayerPosDia 65
  241. #define AdminRsPreisDia 66
  242. #define AdminMsLogDia 67
  243. #define AdminTunerCfgDia 68
  244. #define AdminTuIconDia 69
  245. #define AdminTuMapDia 70
  246. #define AdminTuNPreisDia 71
  247. #define AdminTuSpDia 72
  248. #define AdminTunerDia 73
  249. #define AdminTunerCreDia 74
  250. #define AdminTunerDelAllDia 75
  251. #define AdminTunerEditDia 76
  252. #define AdminTunerDelDia 77
  253. #define AdminTunerEditSelDia 78
  254. #define AdminTunerRenameDia 79
  255. #define AdminTunerPosDia 80
  256. #define AdminTuNPPreisDia 81
  257. #define AdminOParkDia 82
  258. #define AdminOPCfgDia 83
  259. #define AdminOPPayCfgDia 84
  260. #define AdminOPRateCfgDia 85
  261. #define AdminOPPosCfgDia 86
  262. #define AdminOPRadiCfgDia 87
  263. #define AdminOPTowCfgDia 88
  264. #define AdminSpdShCfgDia 89
  265. #define AdminTunerNeonOnDia 90
  266. #define AdminSellerCfgDia 91
  267. #define AdminSellerCfgTypDia 92
  268.  
  269. //Playerdefines CarBuydialog NICHT VERÄNDERN!
  270. //Live Dialog
  271. #define LDMainDia 0
  272. #define LDBuyMsgDia 1
  273.  
  274. //Playerdefines UserDialog NICHT VERÄNDERN!
  275. #define UserSellDia 0
  276. #define UserSellDia2 1
  277. #define User2UserSellDia 2
  278. #define User2UserSellDia2 3
  279. #define User2UserSellDia3 4
  280. #define CarlistDia 5
  281. #define CarlistSearchDia 6
  282. #define TunerNumplateDia 7
  283. #define DoNothingDia 8
  284.  
  285. //VEHARTEN
  286. #define veh_Bicycles 0
  287. #define veh_Bikes 1
  288. #define veh_Planes 2
  289. #define veh_Boats 3
  290. #define veh_Cars 4
  291. #define veh_Trains 5
  292. #define veh_Helicopters 6
  293. #define veh_Trucks 7
  294. #define veh_Sonder 8
  295. #define veh_Rc 9
  296.  
  297.  
  298. //weitere defines
  299. #define MaxVehPerPlayer (MaxVehPlayer+MaxVehMore)
  300.  
  301. new Dtdc_CarName[][] =
  302. {
  303. "Landstalker", "Bravura", "Buffalo", "Linerunner", "Perrenial", "Sentinel",
  304. "Dumper", "Firetruck", "Trashmaster", "Stretch", "Manana", "Infernus",
  305. "Voodoo", "Pony", "Mule", "Cheetah", "Ambulance", "Leviathan", "Moonbeam",
  306. "Esperanto", "Taxi", "Washington", "Bobcat", "Whoopee", "BF Injection",
  307. "Hunter", "Premier", "Enforcer", "Securicar", "Banshee", "Predator", "Bus",
  308. "Rhino", "Barracks", "Hotknife", "Trailer", "Previon", "Coach", "Cabbie",
  309. "Stallion", "Rumpo", "RC Bandit", "Romero", "Packer", "Monster", "Admiral",
  310. "Squalo", "Seasparrow", "Pizzaboy", "Tram", "Trailer", "Turismo", "Speeder",
  311. "Reefer", "Tropic", "Flatbed", "Yankee", "Caddy", "Solair", "Berkley's RC Van",
  312. "Skimmer", "PCJ-600", "Faggio", "Freeway", "RC Baron", "RC Raider", "Glendale",
  313. "Oceanic","Sanchez", "Sparrow", "Patriot", "Quad", "Coastguard", "Dinghy",
  314. "Hermes", "Sabre", "Rustler", "ZR-350", "Walton", "Regina", "Comet", "BMX",
  315. "Burrito", "Camper", "Marquis", "Baggage", "Dozer", "Maverick", "News Chopper",
  316. "Rancher", "FBI Rancher", "Virgo", "Greenwood", "Jetmax", "Hotring", "Sandking",
  317. "Blista Compact", "Police Maverick", "Boxvillde", "Benson", "Mesa", "RC Goblin",
  318. "Hotring Racer A", "Hotring Racer B", "Bloodring Banger", "Rancher", "Super GT",
  319. "Elegant", "Journey", "Bike", "Mountain Bike", "Beagle", "Cropduster", "Stunt",
  320. "Tanker", "Roadtrain", "Nebula", "Majestic", "Buccaneer", "Shamal", "Hydra",
  321. "FCR-900", "NRG-500", "HPV1000", "Cement Truck", "Tow Truck", "Fortune",
  322. "Cadrona", "FBI Truck", "Willard", "Forklift", "Tractor", "Combine", "Feltzer",
  323. "Remington", "Slamvan", "Blade", "Freight", "Streak", "Vortex", "Vincent",
  324. "Bullet", "Clover", "Sadler", "Firetruck", "Hustler", "Intruder", "Primo",
  325. "Cargobob", "Tampa", "Sunrise", "Merit", "Utility", "Nevada", "Yosemite",
  326. "Windsor", "Monster", "Monster", "Uranus", "Jester", "Sultan", "Stratum",
  327. "Elegy", "Raindance", "RC Tiger", "Flash", "Tahoma", "Savanna", "Bandito",
  328. "Freight Flat", "Streak Carriage", "Kart", "Mower", "Dune", "Sweeper",
  329. "Broadway", "Tornado", "AT-400", "DFT-30", "Huntley", "Stafford", "BF-400",
  330. "News Van", "Tug", "Trailer", "Emperor", "Wayfarer", "Euros", "Hotdog", "Club",
  331. "Freight Box", "Trailer", "Andromada", "Dodo", "RC Cam", "Launch", "Police Car",
  332. "Police Car", "Police Car", "Police Ranger", "Picador", "S.W.A.T", "Alpha",
  333. "Phoenix", "Glendale Shit", "Sadler Shit", "Luggage", "Luggage", "Stairs", "Boxville",
  334. "Tiller", "Utility Trailer"
  335. };
  336.  
  337. new Dtdc_NumCat[11] ={20,33,24,28,22,21,9,11,10,11,3};
  338.  
  339. new Dtdc_CarCat[11][] =
  340. {
  341. {602,429,496,402,541,415,589,587,565,494,502,503,411,559,603,475,506,451,558,477},//Sport Wagen
  342. {445,504,401,518,527,542,507,562,585,419,526,604,466,492,474,546,517,410,551,516,467,426,436,547,405,580,560,550,549,540,491,529,421},//Saloons
  343. {536,575,534,567,535,566,576,412,568,424,579,400,500,444,556,557,470,489,505,495,480,533,439,555},//Lowrider & offroad & Convertibles
  344. {433,499,422,482,498,609,524,578,573,455,403,414,582,443,514,600,413,515,440,543,605,459,531,408,552,478,456,554},//Industrial & Trucks
  345. {416,431,438,437,523,427,490,528,407,544,596,598,597,599,432,601,420,418,404,479,458,561},//Public Service und Station
  346. {485,457,483,508,532,486,406,530,434,545,588,571,572,423,442,428,409,574,525,583,539},//Sonstige
  347. {548,425,417,487,488,497,563,447,469},//Helis
  348. {592,577,511,512,593,520,553,476,519,460,513},//Planes
  349. {472,473,493,595,484,430,453,452,446,454},//Boats
  350. {462,448,581,522,461,521,523,463,586,468,471},//Bikes
  351. {509,481,510}//Bycilce
  352. };
  353. new Dtdc_NameCat[11][35] ={"Sport Wagen","Saloons","Lowrider, Offroad und Convertibles","Industrial und Trucks","Public Service und Station","Sonstige","Helis","Flugzeuge","Boote","Motorräder","Fahrräder"};
  354.  
  355. enum Dtdc_Player_enum
  356. {
  357. AdminDialog,
  358. CarBuyDialog,
  359. UserDialog,
  360. SellerStep,
  361. SCName[40],
  362. Float:SCeX,
  363. Float:SCeY,
  364. Float:SCeZ,
  365. Float:SCeR,
  366. Float:SClvcX,
  367. Float:SClvcY,
  368. Float:SClvcZ,
  369. Float:SClvcR,
  370. Float:SCplyX,
  371. Float:SCplyY,
  372. Float:SCplyZ,
  373. Float:SCcamX,
  374. Float:SCcamY,
  375. Float:SCcamZ,
  376. SellerSite,
  377. SellerLastShow,
  378. SellerRLastShow,
  379. SellerRLastShow2,
  380. editSeller,
  381. CarCat,
  382. CarSelect,
  383. CarShow,
  384. CarColorSelect1,
  385. CarColorSelect2,
  386.  
  387. Car[MaxVehPerPlayer],
  388.  
  389. IsInSeller,
  390. Text:CarKauf[2],
  391. IsAtCar,
  392. LastTick,
  393.  
  394. PlayersNear[12],
  395. SelectPlayer,
  396. Seller,
  397. SellerMoney,
  398. SellerCar,
  399.  
  400. speedoPos,
  401. Text:dtdc_Speedo1,
  402. Text:dtdc_Speedo2,
  403. Text:dtdc_Speedo3,
  404. Text:dtdc_Speedo4,
  405. Text:dtdc_Speedo5,
  406. Text:dtdc_Speedo6,
  407. Text:dtdc_Speedo7,
  408. Text:dtdc_Speedo8,
  409. Float:dtdc_distance,
  410.  
  411. CarListCar,
  412. CarListIds[2],
  413. FindCar,
  414. FindCarTimer,
  415. SellCar,
  416.  
  417. ResprayerStep,
  418. RCName[40],
  419. Float:RCeX,
  420. Float:RCeY,
  421. Float:RCeZ,
  422. Float:RCeR,
  423. IsInRespray,
  424. Text:CarSpray[2],
  425.  
  426. TunerStep,
  427. TuName[40],
  428. Float:TueX,
  429. Float:TueY,
  430. Float:TueZ,
  431. Float:TueR,
  432. IsInTuner,
  433. IsInMenu,
  434. BuyNeonType
  435. };
  436.  
  437. enum Dtdc_Resprayer_enum
  438. {
  439. rSqlId,
  440. rPlaceHolder,
  441. rAktivated,
  442. rNameIs[40],
  443. Float:rPosX,
  444. Float:rPosY,
  445. Float:rPosZ,
  446. Float:rRot,
  447. rPick,
  448. rMap
  449. };
  450.  
  451. enum Dtdc_Seller_enum
  452. {
  453. sSqlId,
  454. sAktivated,
  455. sName[40],
  456. Float:sIconPosX,
  457. Float:sIconPosY,
  458. Float:sIconPosZ,
  459. Float:sIconRot,
  460. Float:sLVCarPosX,
  461. Float:sLVCarPosY,
  462. Float:sLVCarPosZ,
  463. Float:sLVCarRot,
  464. Float:sLVCamPosX,
  465. Float:sLVCamPosY,
  466. Float:sLVCamPosZ,
  467. Float:sLVPlyPosX,
  468. Float:sLVPlyPosY,
  469. Float:sLVPlyPosZ,
  470. sPickup,
  471. sCars,
  472. sPark,
  473. sPlayerTyp,
  474. sLastPark
  475. };
  476. enum Dtdc_SCars_enum
  477. {
  478. scSqlId,
  479. scAktivated,
  480. scModel,
  481. scCat,
  482. scPreis,
  483. scSeller,
  484. scSellerSql
  485. };
  486. enum Dtdc_SPark_enum
  487. {
  488. spSqlId,
  489. spAktivated,
  490. Float:spPosX,
  491. Float:spPosY,
  492. Float:spPosZ,
  493. Float:spRotZ,
  494. spSeller,
  495. spSellerSql
  496. };
  497.  
  498. enum Dtdc_Car_enum
  499. {
  500. cSqlId,
  501. cAktivated,
  502. cStatus,
  503. cRespawn,
  504. cFirstSpawn,
  505. cSlotid,
  506. cCarId,
  507. cOwnerName[MAX_PLAYER_NAME],
  508. cOwnerOnline,
  509. Float:cPosX,
  510. Float:cPosY,
  511. Float:cPosZ,
  512. Float:cRotZ,
  513. cPreis,
  514. cModel,
  515. cColor1,
  516. cColor2,
  517. cAlarmBuyed,
  518. Float:cHealth,
  519. cDmgPanels,
  520. cDmgDoors,
  521. cDmgLights,
  522. cDmgTires,
  523. cLocked,
  524. cComponent00,
  525. cComponent01,
  526. cComponent02,
  527. cComponent03,
  528. cComponent04,
  529. cComponent05,
  530. cComponent06,
  531. cComponent07,
  532. cComponent08,
  533. cComponent09,
  534. cComponent10,
  535. cComponent11,
  536. cComponent12,
  537. cComponent13,
  538. cPJ,
  539. cVW,
  540. cNeon,
  541. cNumPlate[30],
  542. cOPark,
  543. Float:cOParkX,
  544. Float:cOParkY,
  545. Float:cOParkZ,
  546. Float:cOParkR
  547. };
  548.  
  549. enum Dtdc_NeonPos_enum
  550. {
  551. npCarModel,
  552. Float:npPosX,
  553. Float:npPosY,
  554. Float:npPosZ
  555. };
  556.  
  557. enum Dtdc_SpeedoPos_enum
  558. {
  559. Float:speedoPosX,
  560. Float:speedoPosY,
  561. speedoName[50]
  562. };
  563. enum Dtdc_RP_enum
  564. {
  565. Float:rsCarPosX,
  566. Float:rsCarPosY,
  567. Float:rsCarPosZ,
  568. Float:rsCarRotZ,
  569. Float:rsCamPosX,
  570. Float:rsCamPosY,
  571. Float:rsCamPosZ,
  572. Float:rsPlyPosX,
  573. Float:rsPlyPosY,
  574. Float:rsPlyPosZ,
  575. rsInt
  576. };
  577.  
  578. enum Dtdc_Tuner_enum
  579. {
  580. tSqlId,
  581. tAktivated,
  582. tNameIs[40],
  583. Float:tPosX,
  584. Float:tPosY,
  585. Float:tPosZ,
  586. Float:tRot,
  587. tPick,
  588. tMap,
  589. Menu:tMenu
  590. };
  591.  
  592. enum Dtdc_Neon_enum
  593. {
  594. nObject,
  595. nName[40]
  596. };
  597.  
  598. new Dtdc_Respray[MaxResprayer][Dtdc_Resprayer_enum];
  599. new Dtdc_Tune[MaxTuner][Dtdc_Tuner_enum];
  600. new Dtdc_Seller[MaxSeller][Dtdc_Seller_enum];
  601. new Dtdc_SCars[MaxSellerCars][Dtdc_SCars_enum];
  602. new Dtdc_SPark[MaxSellerPark][Dtdc_SPark_enum];
  603. new Dtdc_Player[MAX_PLAYERS][Dtdc_Player_enum];
  604. new Dtdc_Car[MaxVehicle][Dtdc_Car_enum];
  605.  
  606. new Dtdc_VehNeon[MAX_VEHICLES][2];
  607.  
  608. new Dtdc_NeonPos[12][Dtdc_NeonPos_enum] =
  609. {
  610. {445,0.8,0.0,-0.7},
  611. {522,0.0,-0.15,-0.7},//NRG
  612. {462,0.0,-0.15,-0.7},//Fagio
  613. {521,0.0,-0.15,-0.7},//FCR
  614. {461,0.0,-0.15,-0.7},//PCJ
  615. {463,0.0,-0.15,-0.7},//Freeway
  616. {581,0.0,-0.15,-0.7},//BF400
  617. {448,0.0,-0.15,-0.7},//Pizzaboy
  618. {586,0.0,-0.25,0.23},//Wayfarer
  619. {523,0.0,-0.15,0.32},//Copbike
  620. {468,0.0,-0.15,-0.7},//Sanchez
  621. {471,0.23,0.05,-0.1}//Quad
  622. };
  623.  
  624. new Dtdc_Neon[6][Dtdc_Neon_enum] =
  625. {
  626. {18647,"Rot"},
  627. {18648,"Blau"},
  628. {18649,"Gruen"},
  629. {18650,"Gelb"},
  630. {18651,"Pink"},
  631. {18652,"Weiß"}
  632. };
  633.  
  634. new Dtdc_SpeedoPosi[10][Dtdc_SpeedoPos_enum] =
  635. {
  636. {440.0,372.5,"Unten Rechts"},
  637. {440.0,357.5,"Unten Rechts leicht erhöht"},
  638. {440.0,220.5,"Mitte Rechts"},
  639. {240.0,372.5,"Unten Mitte"},
  640. {240.0,357.5,"Unten Mitte leicht erhöht"},
  641. {440.0,110.0,"Unter der Geldanzeige"},
  642. {010.0,275.5,"Übern Kompass"},
  643. {010.0,120.5,"Unterm Chat"},
  644. {010.0,210.5,"Mitte Links"},
  645. {240.0,010.0,"Oben Mitte"}
  646. };
  647.  
  648. new Dtdc_ResprayPos[5][Dtdc_RP_enum] =
  649. {
  650. #if !defined UnbugTuner
  651. {615.0621, -1.5000, 1000.9219, 62.5268, 610.7044, -3.0020, 1002.9219, 606.3551, -5.2866, 1000.9053, 1},//Autos/Bikes
  652. #else
  653. {1497.8193,-1525.5084,23.4554, 53.5368, 1492.1970,-1526.7511,23.6925, 1488.2257,-1546.8790,27.5516, 0},//Autos/Bikes
  654. #endif
  655. {364.4521, 2535.2507, 16.7994, 143.5330, 363.4927, 2517.9648, 20.1097, 363.7562, 2515.0146, 16.6026, 0},//Helis
  656. {381.2591, 2518.3030, 16.8022, 301.3368, 410.704650, 2540.466064, 27.0826, 412.3152, 2542.3782, 26.5826, 0},//Flugzeuge
  657. {-2224.524169,2489.500976,0.194415,185.989471,-2230.486328,2468.041503,6.984375,-2232.770507,2463.832275,4.984375,0},//Boote
  658. {-67.8768,-1116.5798,1.6841,132.7708,-77.3770,-1118.4355,3.0781,-80.8266,-1119.9077,1.0847,0}//Trucks/Sonder
  659. };
  660.  
  661. //NO ENUM
  662. new Dtdc_SellerNum = 0;
  663. new Dtdc_SCarsNum = 0;
  664. new Dtdc_CarsNum = 0;
  665. new Dtdc_SParkNum = 0;
  666. new Dtdc_ResprayerNum = 0;
  667. new Dtdc_TunerNum = 0;
  668.  
  669. new dtdc_Speedotimer;
  670. new dtdc_SaveTimer;
  671. new Text:Dtdc_BuyTexte[4];
  672. new Text:Dtdc_ResprayTxt[3];
  673.  
  674. new Menu:Dtdc_NeonMenu;
  675. new Menu:Dtdc_NeonConfMenu;
  676. new Menu:Dtdc_NeonAbConfMenu;
  677.  
  678. forward Dtdc_LoadConfig();
  679. forward Dtdc_SaveConfig();
  680. forward Dtdc_LoadSeller();
  681.  
  682. //Nicht meine Arbeiten xD
  683. forward Dtdc_GetKey( line[] );
  684. forward Dtdc_GetValue( line[] );
  685. forward Dtdc_split(const strsrc[], strdest[][], delimiter);
  686.  
  687. new Dtdc_Version[8] = "1.3.7";
  688.  
  689. public OnFilterScriptInit()
  690. {
  691. print( "\n");
  692. print( "-------- www.dark-trigardon.eu --------");
  693. print( " [FS]DT_DynamicCar by [DT]Sniper");
  694. printf(" V.: %s",Dtdc_Version);
  695. print( "---------------------------------------\n");
  696. Dtdc_CheckUpdates(-1,true);
  697. #if !defined MYSQL_StrickenKid
  698. #if defined Debug
  699. mysql_debug(1);
  700. #endif
  701. #endif
  702. #if defined UnbugTuner
  703. CreateObject(14776, 1503, -1533.1999511719, 29.200000762939, 0, 0, 270.25);//tuner innen ls Danke an [RMR]TScore
  704. #endif
  705. DTDC_MySQLConnect(MYSQL_HOST,MYSQL_USER,MYSQL_PASS,MYSQL_DB);
  706. DTDC_MySQLCreateTables();
  707. DTDC_ConvertFilesToSql();
  708. new checker = AktivateConfig;
  709. if(checker == 1) {Dtdc_LoadConfig();Dtdc_LoadLogConfig();}
  710. if(Dtdc_Speedo == 0) {dtdc_Speedotimer = SetTimer("dtdc_Speedo",1004,1);}//speedo updater
  711. dtdc_SaveTimer = SetTimer("Dtdc_SaveAllCars",810373,1); //810373 = Primzahl Ungefähr 13,5min
  712. Dtdc_LoadSeller();
  713. for(new i = 0; i <Dtdc_SellerNum; i++)
  714. {
  715. SetTimerEx("Dtdc_CreateSeller",500,0,"d",i);
  716. }
  717. Dtdc_LoadSCars();
  718. Dtdc_LoadSPark();
  719. Dtdc_LoadResprayer();
  720. for(new i = 0; i <Dtdc_ResprayerNum; i++)
  721. {
  722. SetTimerEx("Dtdc_CreateResprayer",600,0,"d",i);
  723. }
  724. Dtdc_LoadTuner();
  725. for(new i = 0; i <Dtdc_TunerNum; i++)
  726. {
  727. SetTimerEx("Dtdc_CreateTuner",700,0,"d",i);
  728. }
  729. checker = Cars4Eva;
  730. //new name[MAX_PLAYER_NAME];
  731. //new checker2 = 0;
  732. //new checkname[MAX_PLAYER_NAME];
  733. //new string[25];
  734.  
  735. if(checker == 1)
  736. {
  737. Dtdc_LoadAllCars(true);
  738. }
  739.  
  740. for(new i = 0; i <MAX_PLAYERS; i++)
  741. {
  742. //checker2 = 0;
  743. if(IsPlayerConnected(i))
  744. {
  745. Dtdc_SpeedoInit(i,false);
  746. }
  747. }
  748. //Menüs
  749. new string[128];
  750. Dtdc_NeonMenu = CreateMenu("Neon-Lichter",2,25,150,75,50);
  751. SetMenuColumnHeader(Dtdc_NeonMenu, 0, "Neon-Lichter");
  752. for(new x=0; x < sizeof(Dtdc_Neon); x++) {
  753. format(string, sizeof(string), "%s ($%d)",Dtdc_Neon[x][nName],Dtdc_NeonPreis);
  754. AddMenuItem(Dtdc_NeonMenu, 0, string);
  755. }
  756. AddMenuItem(Dtdc_NeonMenu, 0, "Neonlichter abmontieren");
  757. Dtdc_NeonConfMenu = CreateMenu("Neon-Lichter",2,25,150,75,50);
  758. SetMenuColumnHeader(Dtdc_NeonConfMenu, 0, "Neon-Lichter");
  759. format(string, sizeof(string), "Kaufen ($%d)",Dtdc_NeonPreis);
  760. AddMenuItem(Dtdc_NeonConfMenu, 0, string);
  761. AddMenuItem(Dtdc_NeonConfMenu, 0, "Zurueck");
  762. Dtdc_NeonAbConfMenu = CreateMenu("Neon-Lichter",2,25,150,75,50);
  763. SetMenuColumnHeader(Dtdc_NeonAbConfMenu, 0, "Neon-Lichter");
  764. AddMenuItem(Dtdc_NeonAbConfMenu, 0, "Abmontieren (0$)");
  765. AddMenuItem(Dtdc_NeonAbConfMenu, 0, "Zurueck");
  766. //textdraws
  767. Dtdc_BuyTexte[0] = TextDrawCreate(2.000000,343.000000,"~n~~n~~n~");
  768. Dtdc_BuyTexte[1] = TextDrawCreate(9.000000,350.000000,"~n~~n~~n~");
  769. Dtdc_BuyTexte[2] = TextDrawCreate(5.000000,425.000000,"Links/Rechts zur Auswahl des Fahrzeuges~n~Hoch/Runter zur Auswahl der Farbe (C mit benutzen fuer 2.Farbe)");
  770. Dtdc_BuyTexte[3] = TextDrawCreate(460.000000,426.000000,"Enter zum Kaufen des Fahrzeuges~n~STRG zum Abbrechen des Kaufes");
  771. //Text0
  772. TextDrawUseBox(Dtdc_BuyTexte[0],1);
  773. TextDrawBoxColor(Dtdc_BuyTexte[0],0x000000ff);
  774. TextDrawTextSize(Dtdc_BuyTexte[0],639.000000,9.000000);
  775. TextDrawAlignment(Dtdc_BuyTexte[0],0);
  776. TextDrawBackgroundColor(Dtdc_BuyTexte[0],0x000000ff);
  777. TextDrawFont(Dtdc_BuyTexte[0],3);
  778. TextDrawLetterSize(Dtdc_BuyTexte[0],1.000000,4.499999);
  779. TextDrawColor(Dtdc_BuyTexte[0],0x000000ff);
  780. TextDrawSetOutline(Dtdc_BuyTexte[0],1);
  781. TextDrawSetProportional(Dtdc_BuyTexte[0],1);
  782. //Text1
  783. TextDrawUseBox(Dtdc_BuyTexte[1],1);
  784. TextDrawBoxColor(Dtdc_BuyTexte[1],0xffffff99);
  785. TextDrawTextSize(Dtdc_BuyTexte[1],632.000000,7.000000);
  786. TextDrawAlignment(Dtdc_BuyTexte[1],0);
  787. TextDrawBackgroundColor(Dtdc_BuyTexte[1],0xffffff00);
  788. TextDrawSetOutline(Dtdc_BuyTexte[1],1);
  789. TextDrawFont(Dtdc_BuyTexte[1],3);
  790. TextDrawLetterSize(Dtdc_BuyTexte[1],1.300000,2.599999);
  791. TextDrawColor(Dtdc_BuyTexte[1],0xffffff00);
  792. TextDrawSetProportional(Dtdc_BuyTexte[1],1);
  793. //Text 45
  794. TextDrawAlignment(Dtdc_BuyTexte[2],0);
  795. TextDrawAlignment(Dtdc_BuyTexte[3],0);
  796. TextDrawBackgroundColor(Dtdc_BuyTexte[2],0x000000ff);
  797. TextDrawBackgroundColor(Dtdc_BuyTexte[3],0x000000ff);
  798. TextDrawFont(Dtdc_BuyTexte[2],1);
  799. TextDrawLetterSize(Dtdc_BuyTexte[2],0.299999,1.100000);
  800. TextDrawFont(Dtdc_BuyTexte[3],1);
  801. TextDrawLetterSize(Dtdc_BuyTexte[3],0.299999,1.000000);
  802. TextDrawColor(Dtdc_BuyTexte[2],0xffffff99);
  803. TextDrawColor(Dtdc_BuyTexte[3],0xffffff99);
  804. TextDrawSetOutline(Dtdc_BuyTexte[2],1);
  805. TextDrawSetOutline(Dtdc_BuyTexte[3],1);
  806. TextDrawSetShadow(Dtdc_BuyTexte[2],1);
  807. TextDrawSetShadow(Dtdc_BuyTexte[3],1);
  808. TextDrawSetProportional(Dtdc_BuyTexte[2],1);
  809. TextDrawSetProportional(Dtdc_BuyTexte[3],1);
  810.  
  811. Dtdc_ResprayTxt[0] = TextDrawCreate(16.000000,233.000000,"~n~~n~~n~");
  812. Dtdc_ResprayTxt[1] = TextDrawCreate(17.000000,235.000000,"~n~~n~~n~");
  813. Dtdc_ResprayTxt[2] = TextDrawCreate(15.000000,284.000000,"Benutze Hoch/Runter und Rechts/Links,~n~um die Farben auszuwaehlen!");
  814. TextDrawUseBox(Dtdc_ResprayTxt[0],1);
  815. TextDrawBoxColor(Dtdc_ResprayTxt[0],0x00000066);
  816. TextDrawTextSize(Dtdc_ResprayTxt[0],161.000000,12.000000);
  817. TextDrawUseBox(Dtdc_ResprayTxt[1],1);
  818. TextDrawBoxColor(Dtdc_ResprayTxt[1],0xffffff99);
  819. TextDrawTextSize(Dtdc_ResprayTxt[1],160.000000,4.000000);
  820. TextDrawAlignment(Dtdc_ResprayTxt[0],0);
  821. TextDrawAlignment(Dtdc_ResprayTxt[1],0);
  822. TextDrawAlignment(Dtdc_ResprayTxt[2],0);
  823. TextDrawBackgroundColor(Dtdc_ResprayTxt[0],0x00000000);
  824. TextDrawBackgroundColor(Dtdc_ResprayTxt[1],0x00000000);
  825. TextDrawBackgroundColor(Dtdc_ResprayTxt[2],0x000000ff);
  826. TextDrawFont(Dtdc_ResprayTxt[0],3);
  827. TextDrawLetterSize(Dtdc_ResprayTxt[0],1.000000,2.899999);
  828. TextDrawFont(Dtdc_ResprayTxt[1],3);
  829. TextDrawLetterSize(Dtdc_ResprayTxt[1],1.000000,1.699999);
  830. TextDrawFont(Dtdc_ResprayTxt[2],1);
  831. TextDrawLetterSize(Dtdc_ResprayTxt[2],0.199999,1.500000);
  832. TextDrawColor(Dtdc_ResprayTxt[0],0x00000000);
  833. TextDrawColor(Dtdc_ResprayTxt[1],0x00000000);
  834. TextDrawColor(Dtdc_ResprayTxt[2],0xffffffcc);
  835. TextDrawSetOutline(Dtdc_ResprayTxt[0],1);
  836. TextDrawSetOutline(Dtdc_ResprayTxt[1],1);
  837. TextDrawSetOutline(Dtdc_ResprayTxt[2],1);
  838. TextDrawSetProportional(Dtdc_ResprayTxt[0],1);
  839. TextDrawSetProportional(Dtdc_ResprayTxt[1],1);
  840. TextDrawSetProportional(Dtdc_ResprayTxt[2],1);
  841. TextDrawSetShadow(Dtdc_ResprayTxt[0],1);
  842. TextDrawSetShadow(Dtdc_ResprayTxt[1],1);
  843. TextDrawSetShadow(Dtdc_ResprayTxt[2],1);
  844. return 1;
  845. }
  846.  
  847. forward dtdc_Speedo();
  848. public dtdc_Speedo()
  849. {
  850. for(new i=0; i<MAX_PLAYERS;i++)
  851. {
  852. if(IsPlayerConnected(i))
  853. {
  854. if(IsPlayerInAnyVehicle(i))
  855. {
  856. new pos = (Dtdc_SpeedoPos*100)+Dtdc_SpeedoShadow;
  857. if(Dtdc_Player[i][speedoPos] != pos)
  858. {
  859. if(Dtdc_Player[i][dtdc_Speedo1]) {TextDrawHideForPlayer(i,Dtdc_Player[i][dtdc_Speedo1]);}
  860. if(Dtdc_Player[i][dtdc_Speedo2]) {TextDrawHideForPlayer(i,Dtdc_Player[i][dtdc_Speedo2]);}
  861. if(Dtdc_Player[i][dtdc_Speedo3]) {TextDrawHideForPlayer(i,Dtdc_Player[i][dtdc_Speedo3]);}
  862. if(Dtdc_Player[i][dtdc_Speedo4]) {TextDrawHideForPlayer(i,Dtdc_Player[i][dtdc_Speedo4]);}
  863. if(Dtdc_Player[i][dtdc_Speedo5]) {TextDrawHideForPlayer(i,Dtdc_Player[i][dtdc_Speedo5]);}
  864. if(Dtdc_Player[i][dtdc_Speedo6]) {TextDrawHideForPlayer(i,Dtdc_Player[i][dtdc_Speedo6]);}
  865. if(Dtdc_Player[i][dtdc_Speedo7]) {TextDrawHideForPlayer(i,Dtdc_Player[i][dtdc_Speedo7]);}
  866. if(Dtdc_Player[i][dtdc_Speedo8]) {TextDrawHideForPlayer(i,Dtdc_Player[i][dtdc_Speedo8]);}
  867. TextDrawDestroy(Dtdc_Player[i][dtdc_Speedo1]);
  868. TextDrawDestroy(Dtdc_Player[i][dtdc_Speedo2]);
  869. TextDrawDestroy(Dtdc_Player[i][dtdc_Speedo3]);
  870. TextDrawDestroy(Dtdc_Player[i][dtdc_Speedo4]);
  871. TextDrawDestroy(Dtdc_Player[i][dtdc_Speedo5]);
  872. TextDrawDestroy(Dtdc_Player[i][dtdc_Speedo6]);
  873. TextDrawDestroy(Dtdc_Player[i][dtdc_Speedo7]);
  874. TextDrawDestroy(Dtdc_Player[i][dtdc_Speedo8]);
  875. Dtdc_SpeedoInit(i,true);
  876. }
  877. new string[126];
  878. new Float:tX = Dtdc_SpeedoPosi[Dtdc_SpeedoPos][speedoPosX];
  879. //new Float:tY = Dtdc_SpeedoPosi[Dtdc_SpeedoPos][speedoPosY];
  880. Dtdc_Player[i][dtdc_distance] = GetPlayerSpeed(i, true);
  881. new model =GetVehicleModel(GetPlayerVehicleID(i));
  882. if(model == 509 || model == 510|| model == 481) {Dtdc_Player[i][dtdc_distance] = Dtdc_Player[i][dtdc_distance]/4;}// Set Bikes Speedo down.
  883.  
  884. if(Dtdc_SpeedoTank == 0 && !CallRemoteFunction("IsNoTankVeh","d",GetPlayerVehicleID(i)))
  885. {
  886. TextDrawSetString(Dtdc_Player[i][dtdc_Speedo1]," ~n~ ~n~ ~n~ ~n~ ");
  887. TextDrawLetterSize(Dtdc_Player[i][dtdc_Speedo1],0.399999,1.60000);
  888. format(string,sizeof(string),"Fahrzeug: %s~n~KMH: %.0f~n~Zustand:~n~Tank:",Dtdc_CarName[GetVehicleModel(GetPlayerVehicleID(i))-400],Dtdc_Player[i][dtdc_distance]);
  889. } else {
  890. TextDrawSetString(Dtdc_Player[i][dtdc_Speedo1]," ~n~ ~n~ ~n~ ");
  891. TextDrawLetterSize(Dtdc_Player[i][dtdc_Speedo1],0.399999,1.65000);
  892. format(string,sizeof(string),"Fahrzeug: %s~n~KMH: %.0f~n~Zustand:~n~",Dtdc_CarName[GetVehicleModel(GetPlayerVehicleID(i))-400],Dtdc_Player[i][dtdc_distance]);
  893. }
  894. TextDrawSetString(Dtdc_Player[i][dtdc_Speedo2],string);
  895. new Float:CarHealth;
  896. GetVehicleHealth(GetPlayerVehicleID(i),CarHealth);
  897. CarHealth = CarHealth - 250;
  898. CarHealth = CarHealth /10;
  899. CarHealth = CarHealth /75;
  900. CarHealth = CarHealth *100;
  901. new CarHealthIni =floatround(CarHealth,floatround_floor);
  902. if(CarHealthIni < 0){CarHealthIni = 0;}
  903. new Float:CarHealthBalken = CarHealthIni;
  904. CarHealthBalken = CarHealthBalken +tX + 70;
  905. TextDrawTextSize(Dtdc_Player[i][dtdc_Speedo4],CarHealthBalken,-3.000000);
  906. format(string,sizeof(string),"%d",CarHealthIni);
  907. TextDrawSetString(Dtdc_Player[i][dtdc_Speedo5],string);
  908. new sMaxTank = 100;
  909. new sTank = 100;
  910. sTank = CallRemoteFunction("GetVehGas","d",GetPlayerVehicleID(i));
  911. CarHealthBalken = (sTank * 100) / sMaxTank;
  912. CarHealthBalken = CarHealthBalken +tX + 70;
  913. format(string,sizeof(string),"%d",sTank);
  914. TextDrawSetString(Dtdc_Player[i][dtdc_Speedo8],string);
  915. TextDrawTextSize(Dtdc_Player[i][dtdc_Speedo7],CarHealthBalken,-3.000000);
  916. //SHOW
  917.  
  918. TextDrawShowForPlayer(i,Dtdc_Player[i][dtdc_Speedo1]);
  919. TextDrawShowForPlayer(i,Dtdc_Player[i][dtdc_Speedo2]);
  920. TextDrawShowForPlayer(i,Dtdc_Player[i][dtdc_Speedo3]);
  921. TextDrawShowForPlayer(i,Dtdc_Player[i][dtdc_Speedo4]);
  922. TextDrawShowForPlayer(i,Dtdc_Player[i][dtdc_Speedo5]);
  923. if(Dtdc_SpeedoTank == 0 && !CallRemoteFunction("IsNoTankVeh","d",GetPlayerVehicleID(i)))
  924. {
  925. TextDrawShowForPlayer(i,Dtdc_Player[i][dtdc_Speedo6]);
  926. TextDrawShowForPlayer(i,Dtdc_Player[i][dtdc_Speedo7]);
  927. TextDrawShowForPlayer(i,Dtdc_Player[i][dtdc_Speedo8]);
  928. } else {
  929. TextDrawHideForPlayer(i,Dtdc_Player[i][dtdc_Speedo6]);
  930. TextDrawHideForPlayer(i,Dtdc_Player[i][dtdc_Speedo7]);
  931. TextDrawHideForPlayer(i,Dtdc_Player[i][dtdc_Speedo8]);
  932. }
  933. } else {
  934. if(Dtdc_Player[i][dtdc_Speedo1]) {TextDrawHideForPlayer(i,Dtdc_Player[i][dtdc_Speedo1]);}
  935. if(Dtdc_Player[i][dtdc_Speedo2]) {TextDrawHideForPlayer(i,Dtdc_Player[i][dtdc_Speedo2]);}
  936. if(Dtdc_Player[i][dtdc_Speedo3]) {TextDrawHideForPlayer(i,Dtdc_Player[i][dtdc_Speedo3]);}
  937. if(Dtdc_Player[i][dtdc_Speedo4]) {TextDrawHideForPlayer(i,Dtdc_Player[i][dtdc_Speedo4]);}
  938. if(Dtdc_Player[i][dtdc_Speedo5]) {TextDrawHideForPlayer(i,Dtdc_Player[i][dtdc_Speedo5]);}
  939. if(Dtdc_Player[i][dtdc_Speedo6]) {TextDrawHideForPlayer(i,Dtdc_Player[i][dtdc_Speedo6]);}
  940. if(Dtdc_Player[i][dtdc_Speedo7]) {TextDrawHideForPlayer(i,Dtdc_Player[i][dtdc_Speedo7]);}
  941. if(Dtdc_Player[i][dtdc_Speedo8]) {TextDrawHideForPlayer(i,Dtdc_Player[i][dtdc_Speedo8]);}
  942. }
  943. }
  944. }
  945. }
  946.  
  947. public OnGameModeExit()
  948. {
  949. Dtdc_SaveAll();
  950. }
  951.  
  952. public OnFilterScriptExit()
  953. {
  954. Dtdc_SaveAll();
  955. return 1;
  956. }
  957.  
  958. forward Dtdc_SaveAll();
  959. public Dtdc_SaveAll()
  960. {
  961. if(Dtdc_Speedo == 0) {KillTimer(dtdc_Speedotimer);}
  962. KillTimer(dtdc_SaveTimer);
  963. Dtdc_SaveSeller();
  964. Dtdc_SaveResprayer();
  965. Dtdc_SaveConfig();
  966. Dtdc_SaveLogConfig();
  967. Dtdc_SaveSCars();
  968. Dtdc_SaveSPark();
  969. for(new sellerid = 0; sellerid<Dtdc_SellerNum; sellerid++)
  970. {
  971. Dtdc_DestroySeller(sellerid);
  972. }
  973. for(new sellerid = 0; sellerid<Dtdc_ResprayerNum; sellerid++)
  974. {
  975. Dtdc_DestroyResprayer(sellerid);
  976. }
  977. dtdc_SetSpeedoOff();
  978. for(new c = 0; c <MaxVehicle;c++)
  979. {
  980. if(Dtdc_Car[c][cAktivated] == 1)
  981. {
  982. Dtdc_Log(3,"------[OnFilterScriptExit]------");
  983. Dtdc_SaveVeh(c);
  984. Dtdc_DelNeonFromVeh(Dtdc_Car[c][cCarId]);
  985. DestroyVehicle(Dtdc_Car[c][cCarId]);
  986. Dtdc_Car[c][cAktivated] = 0;
  987. Dtdc_Car[c][cSqlId] = 0;
  988. }
  989. }
  990. }
  991.  
  992. public OnPlayerConnect(playerid)
  993. {
  994. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  995. Dtdc_Player[playerid][CarBuyDialog] = AdminMainDia;
  996. Dtdc_Player[playerid][IsInSeller] = (MaxSeller+1);
  997. Dtdc_Player[playerid][IsInRespray] = (MaxResprayer+1);
  998. Dtdc_Player[playerid][IsInTuner] = (MaxTuner+1);
  999. Dtdc_Player[playerid][IsInMenu] = 0;
  1000. Dtdc_Player[playerid][CarListCar] = (MaxVehicle+1);
  1001. Dtdc_Player[playerid][SellerStep] = 0;
  1002. Dtdc_Player[playerid][ResprayerStep] = 0;
  1003. Dtdc_Player[playerid][TunerStep] = 0;
  1004. Dtdc_Player[playerid][FindCar] = -1;
  1005. Dtdc_Player[playerid][SellCar] = -1;
  1006. Dtdc_Player[playerid][BuyNeonType] = -1;
  1007. Dtdc_Player[playerid][LastTick] = GetTickCount();
  1008. for(new i=0;i<2;i++)
  1009. {
  1010. Dtdc_Player[playerid][CarListIds][i] =0;
  1011. }
  1012. SetPVarInt(playerid,"dtdc_firstspawn",0);
  1013. SetPVarInt(playerid,"dtdc_loadtimeron",0);
  1014. Dtdc_SpeedoInit(playerid,false);
  1015. return 1;
  1016. }
  1017.  
  1018. stock GetPlayerCarNum(playerid)
  1019. {
  1020. new num = 0;
  1021. for(new c = 0; c <MaxVehPerPlayer;c++)
  1022. {
  1023. if(Dtdc_Player[playerid][Car][c] != MaxVehicle +1)
  1024. {
  1025. num++;
  1026. }
  1027. }
  1028. return num;
  1029. }
  1030.  
  1031. forward DTDC_InitLoad(playerid);
  1032. public DTDC_InitLoad(playerid)
  1033. {
  1034. SetPVarInt(playerid,"dtdc_loadtimeron",0);
  1035. new checker = Cars4Eva;
  1036. new string[60];
  1037. new name[MAX_PLAYER_NAME];
  1038. GetPlayerName(playerid,name,MAX_PLAYER_NAME);
  1039. for(new c = 0; c <MaxVehPerPlayer;c++)
  1040. {
  1041. Dtdc_Player[playerid][Car][c] = MaxVehicle +1;
  1042. if(checker == 0)
  1043. {
  1044. #if MaxVehMore != 0
  1045. if(c >= MaxVehPlayer)
  1046. {
  1047. new more = CallRemoteFunction("DtdcMoreVehicle","d",playerid);
  1048. if(c >= (MaxVehPlayer+more)) continue;
  1049. }
  1050. #endif
  1051. format(string,sizeof(string),"%s%d.DynCar",name,c);
  1052. Dtdc_Log(4,"----[OnPlayerConnect]----");
  1053. Dtdc_ConvertVeh(string);
  1054. Dtdc_LoadVeh(name,c);
  1055. }
  1056. }
  1057.  
  1058. new checker2 = 0;
  1059. new checker3 = 0;
  1060. new checkname[MAX_PLAYER_NAME];
  1061. for(new c = 0; c <MaxVehicle;c++)
  1062. {
  1063. if(checker3 >= Dtdc_CarsNum){break;}
  1064. if(checker2 >= MaxVehPerPlayer){break;}
  1065. if(Dtdc_Car[c][cAktivated] == 1 && Dtdc_Car[c][cOwnerOnline] == MAX_PLAYERS+1)
  1066. {
  1067. strmid(checkname, Dtdc_Car[c][cOwnerName], 0, strlen(Dtdc_Car[c][cOwnerName]), MAX_PLAYER_NAME);
  1068. if(!strcmp(name,checkname,false,MAX_PLAYER_NAME))
  1069. {
  1070. Dtdc_Car[c][cOwnerOnline] = playerid;
  1071. Dtdc_Player[playerid][Car][Dtdc_Car[c][cSlotid]] = c;
  1072. if(checker == 0){SetTimerEx("Dtdc_SpawnVeh",100,0,"d",c);}
  1073. checker2++;
  1074. }
  1075. checker3++;
  1076. }
  1077. }
  1078.  
  1079. if(!strcmp(name,Dtdc_UpdateManager,false,MAX_PLAYER_NAME))
  1080. {
  1081. Dtdc_CheckUpdates(playerid,true);
  1082. }
  1083. }
  1084.  
  1085. public OnPlayerDisconnect(playerid, reason)
  1086. {
  1087. if(Dtdc_Player[playerid][dtdc_Speedo1]) {TextDrawHideForPlayer(playerid,Dtdc_Player[playerid][dtdc_Speedo1]);}
  1088. if(Dtdc_Player[playerid][dtdc_Speedo2]) {TextDrawHideForPlayer(playerid,Dtdc_Player[playerid][dtdc_Speedo2]);}
  1089. if(Dtdc_Player[playerid][dtdc_Speedo3]) {TextDrawHideForPlayer(playerid,Dtdc_Player[playerid][dtdc_Speedo3]);}
  1090. if(Dtdc_Player[playerid][dtdc_Speedo4]) {TextDrawHideForPlayer(playerid,Dtdc_Player[playerid][dtdc_Speedo4]);}
  1091. if(Dtdc_Player[playerid][dtdc_Speedo5]) {TextDrawHideForPlayer(playerid,Dtdc_Player[playerid][dtdc_Speedo5]);}
  1092. if(Dtdc_Player[playerid][dtdc_Speedo6]) {TextDrawHideForPlayer(playerid,Dtdc_Player[playerid][dtdc_Speedo6]);}
  1093. if(Dtdc_Player[playerid][dtdc_Speedo7]) {TextDrawHideForPlayer(playerid,Dtdc_Player[playerid][dtdc_Speedo7]);}
  1094. if(Dtdc_Player[playerid][dtdc_Speedo8]) {TextDrawHideForPlayer(playerid,Dtdc_Player[playerid][dtdc_Speedo8]);}
  1095.  
  1096.  
  1097. if(GetPVarInt(playerid,"dtdc_firstspawn") == 0) return 1;
  1098. if(GetPVarInt(playerid,"dtdc_loadtimeron") == 0)
  1099. {
  1100. new checker = Cars4Eva;
  1101. new name[MAX_PLAYER_NAME];
  1102. GetPlayerName(playerid,name,MAX_PLAYER_NAME);
  1103. for(new c = 0; c <MaxVehPerPlayer;c++)
  1104. {
  1105. if(Dtdc_Player[playerid][Car][c] != MaxVehicle +1)
  1106. {
  1107. if(Dtdc_Car[Dtdc_Player[playerid][Car][c]][cAktivated] == 1)
  1108. {
  1109. Dtdc_Car[Dtdc_Player[playerid][Car][c]][cOwnerOnline] = MAX_PLAYERS+1;
  1110. Dtdc_Log(3,"------[OnPlayerDisconnect]------");
  1111. Dtdc_SaveVeh(Dtdc_Player[playerid][Car][c]);
  1112. if(checker == 0)
  1113. {
  1114. Dtdc_Car[Dtdc_Player[playerid][Car][c]][cAktivated] = 0;
  1115. Dtdc_Car[Dtdc_Player[playerid][Car][c]][cSqlId] = 0;
  1116. Dtdc_DelNeonFromVeh(Dtdc_Car[Dtdc_Player[playerid][Car][c]][cCarId]);
  1117. DestroyVehicle(Dtdc_Car[Dtdc_Player[playerid][Car][c]][cCarId]);
  1118. }
  1119. }
  1120. }
  1121. }
  1122. } else {
  1123. KillTimer(GetPVarInt(playerid,"dtdc_loadtimer"));
  1124. }
  1125. return 1;
  1126. }
  1127.  
  1128.  
  1129. public OnPlayerSpawn(playerid)
  1130. {
  1131. if(GetPVarInt(playerid,"dtdc_firstspawn") == 0)
  1132. {
  1133. new tmp = SetTimerEx("DTDC_InitLoad",60000,0,"d",playerid);
  1134. SetPVarInt(playerid,"dtdc_firstspawn",1);
  1135. SetPVarInt(playerid,"dtdc_loadtimeron",1);
  1136. SetPVarInt(playerid,"dtdc_loadtimer",tmp);
  1137. }
  1138. for(new sellerid = 0; sellerid<Dtdc_SellerNum; sellerid++)
  1139. {
  1140. if(Dtdc_MapIcon != 0 && (MapIconBegin + sellerid) <=99 && Dtdc_Seller[sellerid][sAktivated] == 1)
  1141. {
  1142. SetPlayerMapIcon(playerid, (MapIconBegin + sellerid), Dtdc_Seller[sellerid][sIconPosX],Dtdc_Seller[sellerid][sIconPosY],Dtdc_Seller[sellerid][sIconPosZ], Dtdc_MapIcon, COLOR_YELLOW);
  1143. }
  1144. }
  1145. for(new sellerid = 0; sellerid<Dtdc_ResprayerNum; sellerid++)
  1146. {
  1147. if(Dtdc_MapIcon != 0 && (MapIconBegin +MaxSeller+ sellerid) <=99 && Dtdc_Respray[sellerid][rAktivated] == 1)
  1148. {
  1149. SetPlayerMapIcon(playerid, (MapIconBegin +MaxSeller+ sellerid), Dtdc_Respray[sellerid][rPosX],Dtdc_Respray[sellerid][rPosY],Dtdc_Respray[sellerid][rPosZ], Dtdc_RsMapIcon, COLOR_YELLOW);
  1150. }
  1151. }
  1152. for(new sellerid = 0; sellerid<Dtdc_TunerNum; sellerid++)
  1153. {
  1154. if(Dtdc_MapIcon != 0 && (MapIconBegin +MaxSeller+ MaxResprayer+ sellerid) <=99 && Dtdc_Tune[sellerid][tAktivated] == 1)
  1155. {
  1156. SetPlayerMapIcon(playerid, (MapIconBegin +MaxSeller+ MaxResprayer+ sellerid), Dtdc_Tune[sellerid][tPosX],Dtdc_Tune[sellerid][tPosY],Dtdc_Tune[sellerid][tPosZ], Dtdc_TuMapIcon, COLOR_YELLOW);
  1157. }
  1158. }
  1159. }
  1160.  
  1161. new sql[1024];
  1162.  
  1163. public OnVehicleSpawn(vehicleid)
  1164. {
  1165. new carid = Dtdc_GetCarArrayId(vehicleid);
  1166. if(carid != -1)
  1167. {
  1168. if(Dtdc_Car[carid][cRespawn] != 1)
  1169. {
  1170. Dtdc_Car[carid][cStatus] = 0;
  1171. Dtdc_Car[carid][cHealth] = 1000.000;
  1172. Dtdc_Car[carid][cDmgPanels] = 0;
  1173. Dtdc_Car[carid][cDmgDoors] = 0;
  1174. Dtdc_Car[carid][cDmgLights] = 0;
  1175. Dtdc_Car[carid][cDmgTires] = 0;
  1176. Dtdc_DelNeonFromVeh(Dtdc_Car[carid][cCarId]);
  1177. DestroyVehicle(Dtdc_Car[carid][cCarId]);
  1178. if(Dtdc_ReSpawnSek != 0){SetTimerEx("Dtdc_SpawnVeh",(1000*Dtdc_ReSpawnSek),0,"d",carid);} else { Dtdc_SpawnVeh(carid); }
  1179. }else{Dtdc_Car[carid][cRespawn] = 0;}
  1180. }
  1181. return 1;
  1182. }
  1183.  
  1184. public OnVehicleDeath(vehicleid, killerid)
  1185. {
  1186. return 1;
  1187. }
  1188.  
  1189. strtok(const string[], &index)
  1190. {
  1191. new length = strlen(string);
  1192. while ((index < length) && (string[index] <= ' '))
  1193. {
  1194. index++;
  1195. }
  1196.  
  1197. new offset = index;
  1198. new result[20];
  1199. while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
  1200. {
  1201. result[index - offset] = string[index];
  1202. index++;
  1203. }
  1204. result[index - offset] = EOS;
  1205. return result;
  1206. }
  1207.  
  1208. public OnPlayerCommandText(playerid, cmdtext[])
  1209. {
  1210. new cmd[256],
  1211. tmp[256],
  1212. idx;
  1213. cmd = strtok(cmdtext, idx);
  1214. #if defined Debug
  1215. if (strcmp("/gototune", cmdtext, true, 10) == 0)
  1216. {
  1217. if(!IsPlayerAdmin(playerid) && !CallRemoteFunction("PlayerIsAdmin","i",playerid))
  1218. {
  1219. SendClientMessage(playerid,COLOR_GREY," Du hast nicht die nötigen Rechte!");
  1220. return 1;
  1221. }
  1222. if(!IsPlayerInAnyVehicle(playerid))
  1223. {
  1224. SendClientMessage(playerid,COLOR_GREY," Du bist in keinem Auto!");
  1225. return 1;
  1226. }
  1227. new veh =GetPlayerVehicleID(playerid);
  1228. SetPlayerVirtualWorld(playerid, 645-playerid);
  1229. SetVehicleVirtualWorld(veh,645-playerid);
  1230. //SetPlayerInterior(playerid,1);
  1231.  
  1232. SetVehicleVirtualWorld(veh,645-playerid); // old SetVehicleVirtualWorld(veh,GetPlayerVirtualWorld(playerid));
  1233. LinkVehicleToInterior(veh,0);
  1234. SetVehiclePos(veh,1508.0642,-1546.7838,24.5884);
  1235.  
  1236. return 1;
  1237. }
  1238. if (strcmp("/gototune2", cmdtext, true, 10) == 0)
  1239. {
  1240. if(!IsPlayerAdmin(playerid) && !CallRemoteFunction("PlayerIsAdmin","i",playerid))
  1241. {
  1242. SendClientMessage(playerid,COLOR_GREY," Du hast nicht die nötigen Rechte!");
  1243. return 1;
  1244. }
  1245. if(!IsPlayerInAnyVehicle(playerid))
  1246. {
  1247. SendClientMessage(playerid,COLOR_GREY," Du bist in keinem Auto!");
  1248. return 1;
  1249. }
  1250. new veh =GetPlayerVehicleID(playerid);
  1251. SetPlayerVirtualWorld(playerid, 645-playerid);
  1252. SetVehicleVirtualWorld(veh,645-playerid);
  1253. SetPlayerInterior(playerid,1);
  1254.  
  1255. SetVehiclePos(veh,624.7989,-22.6824,1001.8007);
  1256. SetVehicleZAngle(veh, 0.0);
  1257. SetVehicleVirtualWorld(veh,645-playerid); // old SetVehicleVirtualWorld(veh,GetPlayerVirtualWorld(playerid));
  1258. LinkVehicleToInterior(veh,1);
  1259.  
  1260. return 1;
  1261. }
  1262. if (strcmp("/dtdc_nrg", cmdtext, true, 10) == 0)
  1263. {
  1264. if(!IsPlayerAdmin(playerid) && !CallRemoteFunction("PlayerIsAdmin","i",playerid))
  1265. {
  1266. SendClientMessage(playerid,COLOR_GREY," Du hast nicht die nötigen Rechte!");
  1267. }
  1268. new Float:px,Float:py,Float:pz,Float:pr;
  1269. GetPlayerPos(playerid,px,py,pz);
  1270. GetPlayerFacingAngle(playerid,pr);
  1271. CreateVehicle(522,px,py,pz+0.2,pr,0,0,-1);
  1272. SetPlayerPos(playerid,px,py,pz+1.5);
  1273.  
  1274. return 1;
  1275. }
  1276. if (strcmp("/dtdc_money", cmdtext, true, 10) == 0)
  1277. {
  1278. if(!IsPlayerAdmin(playerid) && !CallRemoteFunction("PlayerIsAdmin","i",playerid))
  1279. {
  1280. SendClientMessage(playerid,COLOR_GREY," Du hast nicht die nötigen Rechte!");
  1281. }
  1282. GivePlayerMoney(playerid,1500);
  1283. return 1;
  1284. }
  1285. #endif
  1286. if (strcmp("/dtdcamenu", cmdtext, true, 10) == 0)
  1287. {
  1288. if(!IsPlayerAdmin(playerid) && !CallRemoteFunction("PlayerIsAdmin","i",playerid))
  1289. {
  1290. SendClientMessage(playerid,COLOR_GREY," Du hast nicht die nötigen Rechte!");
  1291. return 1;
  1292. }
  1293. new str[50];
  1294. new str2[120];
  1295. format(str,sizeof(str),"[DT]Dynamic Car Admin-Menu (V: %s)",Dtdc_Version);
  1296. format(str2,sizeof(str2),"Configuration\nLog Configuration\nAutohaeuser\nResprayer\nTuner");
  1297. new checker = Dtdc_Updater;
  1298. if(checker!=0){format(str2,sizeof(str2),"%s\nAuf Updates Prüfen",str2);}
  1299. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,str,str2,"OK","Abbrechen");
  1300. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  1301. return 1;
  1302. }
  1303. if (strcmp("/carhelp", cmdtext, true, 8) == 0)
  1304. {
  1305. new string[120];
  1306. format(string,sizeof(string)," | COMMANDS | /carinfo");
  1307. if(Dtdc_ParkCommand == 0) {format(string,sizeof(string),"%s /parken",string);}
  1308. format(string,sizeof(string),"%s /carsell",string);
  1309. SendClientMessage(playerid, COLOR_LIGHTBLUE," ------------------[CARHELP]-------------------");
  1310. SendClientMessage(playerid, COLOR_WHITE,string);// " | COMMANDS | /parken /carlock /carkey /carsell"
  1311. if(Dtdc_LockOrAlarm == 0 || Dtdc_LockOrAlarm == 3) {format(string,sizeof(string)," | COMMANDS | /carlock");} else { format(string,sizeof(string)," | COMMANDS | /caralarm"); }
  1312. if(Dtdc_LockOrAlarm == 1) {format(string,sizeof(string),"%s /buycaralarm",string);}
  1313. if(Dtdc_CmdCarList == 0){format(string,sizeof(string),"%s /carlist",string);}
  1314. if(Dtdc_NeonOnOff == 2){format(string,sizeof(string),"%s /neon",string);}
  1315. if(IsPlayerInAnyVehicle(playerid) && Dtdc_OPark == 0)
  1316. {
  1317. if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 525 && Dtdc_OParkTow != 2){SendClientMessage(playerid, COLOR_WHITE, " | Ordnungsamt | /opark");}
  1318. if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 525 && Dtdc_OParkTow == 2){SendClientMessage(playerid, COLOR_WHITE, " | Ordnungsamt | /opark /tow");}
  1319. }
  1320. SendClientMessage(playerid, COLOR_WHITE,string);//" | COMMANDS | /giveparkrights /givecarkey /carkeylock");
  1321. if(IsPlayerAdmin(playerid) || CallRemoteFunction("PlayerIsAdmin","i",playerid)){SendClientMessage(playerid, COLOR_WHITE, " | ADMINCMDS | /dtdcamenu");}
  1322. SendClientMessage(playerid, COLOR_LIGHTBLUE," ------------------[CARHELP]-------------------");
  1323. return 1;
  1324. }
  1325. if(strcmp("/Neon", cmdtext, true, 5) == 0 && Dtdc_NeonOnOff == 2)
  1326. {
  1327. new car = Dtdc_GetCarNearPlayer(playerid,true,10.0);
  1328. if(car != -1)
  1329. {
  1330. new veh = Dtdc_Car[car][cCarId];
  1331. if(Dtdc_Car[car][cNeon] != -1)
  1332. {
  1333. if(Dtdc_VehNeon[veh][0] == 0)
  1334. {
  1335. Dtdc_SetNeonToVeh(veh,Dtdc_Car[car][cNeon]);
  1336. SendClientMessage(playerid,COLOR_YELLOW," Du hast die Neonlichter deines Autos angeschaltet!");
  1337. } else {
  1338. Dtdc_DelNeonFromVeh(veh);
  1339. SendClientMessage(playerid,COLOR_YELLOW," Du hast die Neonlichter deines Autos abgeschaltet!");
  1340. }
  1341. } else {
  1342. SendClientMessage(playerid,COLOR_GREY," Dieses Fahrzeug hat kein Neon!");
  1343. return 1;
  1344. }
  1345. } else {
  1346. SendClientMessage(playerid,COLOR_GREY," Es ist kein Auto in der nähe welches du besitzt!");
  1347. return 1;
  1348. }
  1349. return 1;
  1350. }
  1351. if(strcmp("/tow", cmdtext, true, 4) == 0 && Dtdc_OParkTow == 2)
  1352. {
  1353. if(IsPlayerInAnyVehicle(playerid)&&GetPlayerState(playerid)==PLAYER_STATE_DRIVER) // Credits to zeruel_angel habe einwenig abgekupfert
  1354. {
  1355. if (GetVehicleModel(GetPlayerVehicleID(playerid)) == 525)
  1356. {
  1357. new veh =GetPlayerVehicleID(playerid);
  1358. if(IsTrailerAttachedToVehicle(veh))
  1359. {
  1360. SendClientMessage(playerid,0xFFFF00AA,"Lasse Auto herunter...");
  1361. DetachTrailerFromVehicle(GetPlayerVehicleID(playerid));
  1362. } else {
  1363. SendClientMessage(playerid,0xFFFF00AA,"Suche nach Auto zum anschleppen....");
  1364. new Float:pX,Float:pY,Float:pZ;
  1365. GetPlayerPos(playerid,pX,pY,pZ);
  1366. new Float:vX,Float:vY,Float:vZ;
  1367. new Found=0;
  1368. new vid=0;
  1369. while((vid<MAX_VEHICLES)&&(!Found))
  1370. {
  1371. vid++;
  1372. GetVehiclePos(vid,vX,vY,vZ);
  1373. if ((floatabs(pX-vX)<7.0)&&(floatabs(pY-vY)<7.0)&&(floatabs(pZ-vZ)<7.0)&&(vid!=GetPlayerVehicleID(playerid)))
  1374. {
  1375. Found=1;
  1376. if (IsTrailerAttachedToVehicle(GetPlayerVehicleID(playerid)))
  1377. {
  1378. DetachTrailerFromVehicle(GetPlayerVehicleID(playerid));
  1379. }
  1380. AttachTrailerToVehicle(vid,GetPlayerVehicleID(playerid));
  1381. SendClientMessage(playerid,0xFFFF00AA,"Auto Angehoben!");
  1382. new car = Dtdc_GetCarArrayId(vid);
  1383. if(car == -1)
  1384. {
  1385. SendClientMessage(playerid,0xFFFF00AA,"Info: Dies ist Kein Auto welches du mit /opark parken kannst!");
  1386. }
  1387. }
  1388. }
  1389. if (!Found)
  1390. {
  1391. SendClientMessage(playerid,0xFFFF00AA,"Kein Auto in deiner Nähe.");
  1392. }
  1393. }
  1394. }
  1395. }
  1396. return 1;
  1397. }
  1398. if (strcmp("/opark", cmdtext, true, 6) == 0 && Dtdc_OPark == 0)
  1399. {
  1400. if(!IsPlayerInAnyVehicle(playerid))
  1401. {
  1402. SendClientMessage(playerid,COLOR_GREY," Du musst in einem Abschlepwagen sitzen!");
  1403. return 1;
  1404. }
  1405. if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 525)
  1406. {
  1407. new veh = GetPlayerVehicleID(playerid);
  1408. if(!IsTrailerAttachedToVehicle(veh))
  1409. {
  1410. SendClientMessage(playerid,COLOR_GREY," Du hast kein Auto am Abschlepwagen dran!");
  1411. return 1;
  1412. }
  1413. if(Dtdc_OParkR > 0.0)
  1414. {
  1415. if(!IsPlayerInRangeOfPoint(playerid,Dtdc_OParkR,Dtdc_OParkX,Dtdc_OParkY,Dtdc_OParkZ))
  1416. {
  1417. SendClientMessage(playerid,COLOR_GREY," Du kannst hier kein Auto abstellen, bitte fahre zum O-Amt Parkplatz!");
  1418. return 1;
  1419. }
  1420. }
  1421. new trailer = GetVehicleTrailer(veh);
  1422. new car = Dtdc_GetCarArrayId(trailer);
  1423. if(car != -1)
  1424. {
  1425. if(Dtdc_Car[car][cOPark] == 1)
  1426. {
  1427. SendClientMessage(playerid,COLOR_GREY," Dieses Auto ist schon geparkt worden!");
  1428. return 1;
  1429. }
  1430. GetVehiclePos(trailer,Dtdc_Car[car][cOParkX],Dtdc_Car[car][cOParkY],Dtdc_Car[car][cOParkZ]);
  1431. GetVehicleZAngle(veh,Dtdc_Car[car][cOParkR]);
  1432. DetachTrailerFromVehicle(veh);
  1433. Dtdc_Car[car][cOPark] = 1;
  1434. Dtdc_Log(3,"------[/opark]------");
  1435. Dtdc_SaveVeh(car);
  1436. if(Dtdc_OParkRate > 0.0)
  1437. {
  1438. new lohn = floatround(Dtdc_OParkPay*Dtdc_OParkRate);
  1439. new string[200];
  1440. format(string,sizeof(string),"Du hast das Fahrzeug erfolgreich abgeschleppt! Du bekommst %d$ belohnung!",lohn);
  1441. GivePlayerMoney(playerid,lohn);
  1442. SendClientMessage(playerid,COLOR_YELLOW,string);
  1443. } else {
  1444. SendClientMessage(playerid,COLOR_YELLOW,"Du hast das Fahrzeug erfolgreich abgeschleppt!");
  1445. }
  1446. return 1;
  1447. } else {
  1448. SendClientMessage(playerid,COLOR_GREY," Dieses Auto gehört keinem!");
  1449. return 1;
  1450. }
  1451. } else {
  1452. SendClientMessage(playerid,COLOR_GREY," Du musst in einem Abschlepwagen sitzen!");
  1453. return 1;
  1454. }
  1455. }
  1456. if (strcmp("/carlist", cmdtext, true, 8) == 0 && Dtdc_CmdCarList == 0)
  1457. {
  1458. new string[600];
  1459. new bool:check = true;
  1460. for(new c = 0; c <MaxVehPerPlayer;c++)
  1461. {
  1462. if(Dtdc_Player[playerid][Car][c] != MaxVehicle +1)
  1463. {
  1464. new carid = Dtdc_Player[playerid][Car][c];
  1465. if(check)
  1466. {
  1467. check = false;
  1468. format(string,sizeof(string),"%s",Dtdc_CarName[GetVehicleModel(Dtdc_Car[carid][cCarId])-400]);
  1469. } else {
  1470. format(string,sizeof(string),"%s\n%s",string,Dtdc_CarName[GetVehicleModel(Dtdc_Car[carid][cCarId])-400]);
  1471. }
  1472. }
  1473. }
  1474. if(check)
  1475. {
  1476. SendClientMessage(playerid,COLOR_GREY," Du besitzt keine Autos");
  1477. return 1;
  1478. }
  1479. ShowPlayerDialog(playerid,UserDia,DIALOG_STYLE_LIST,"Deine Fahrzeuge:",string,"Auswahl","Abbrechen");
  1480. Dtdc_Player[playerid][UserDialog] = CarlistDia;
  1481. return 1;
  1482. }
  1483. if (strcmp("/caralarm", cmdtext, true, 9) == 0 && (Dtdc_LockOrAlarm != 0 && Dtdc_LockOrAlarm != 3))
  1484. {
  1485. new car = Dtdc_GetCarNearPlayer(playerid,true,10.0);
  1486. if(car != -1)
  1487. {
  1488. if(Dtdc_Car[car][cAlarmBuyed] != 1 && Dtdc_LockOrAlarm == 1)
  1489. {
  1490. SendClientMessage(playerid,COLOR_GREY," Dieses Auto besitzt keine Alarmanlage! Kaufe eine mit /buycaralarm");
  1491. return 1;
  1492. }
  1493. if(Dtdc_Car[car][cLocked] == 1)
  1494. {
  1495. Dtdc_Car[car][cLocked] = 0;
  1496. SendClientMessage(playerid,COLOR_YELLOW," Du hast die Alarmanlage deines Autos abgeschaltet!");
  1497. GameTextForPlayer(playerid,"~g~Alarmanlage deaktivert!",3000,1);
  1498. } else {
  1499. Dtdc_Car[car][cLocked] = 1;
  1500. SendClientMessage(playerid,COLOR_YELLOW," Du hast die Alarmanlage deines Autos angeschaltet!");
  1501. GameTextForPlayer(playerid,"~r~Alarmanlage aktivert!",3000,1);
  1502. }
  1503. return 1;
  1504. } else {
  1505. SendClientMessage(playerid,COLOR_GREY," Es ist kein Auto in der nähe welches du besitzt!");
  1506. return 1;
  1507. }
  1508. }
  1509. if (strcmp("/carlock", cmdtext, true, 8) == 0 && (Dtdc_LockOrAlarm != 1 && Dtdc_LockOrAlarm != 2))
  1510. {
  1511. new car = Dtdc_GetCarNearPlayer(playerid,true,10.0);
  1512. if(car != -1)
  1513. {
  1514. if(Dtdc_Car[car][cLocked] == 1)
  1515. {
  1516. Dtdc_Car[car][cLocked] = 0;
  1517. if(Dtdc_LockOrAlarm == 0) {SetVehicleLock(Dtdc_Car[car][cCarId],Dtdc_Car[car][cLocked]);}
  1518. PlayerPlaySound(playerid, 1145, 0.0, 0.0, 0.0);
  1519. SetVehicleBlink(Dtdc_Car[car][cCarId]);
  1520. SendClientMessage(playerid,COLOR_YELLOW," Du hast dein Auto aufgeschlossen!");
  1521. GameTextForPlayer(playerid,"~g~Fahrzeug aufgeschlossen!",3000,1);
  1522. } else {
  1523. Dtdc_Car[car][cLocked] = 1;
  1524. if(Dtdc_LockOrAlarm == 0) {SetVehicleLock(Dtdc_Car[car][cCarId],Dtdc_Car[car][cLocked]);}
  1525. PlayerPlaySound(playerid, 1145, 0.0, 0.0, 0.0);
  1526. SetVehicleBlink(Dtdc_Car[car][cCarId]);
  1527. SendClientMessage(playerid,COLOR_YELLOW," Du hast dein Auto abgeschlossen!");
  1528. GameTextForPlayer(playerid,"~r~Fahrzeug abgeschlossen!",3000,1);
  1529. }
  1530. return 1;
  1531. } else {
  1532. SendClientMessage(playerid,COLOR_GREY," Es ist kein Auto in der nähe welches du besitzt!");
  1533. return 1;
  1534. }
  1535. }
  1536. if (strcmp("/rauskaufen", cmdtext, true, 11) == 0)
  1537. {
  1538. new car = Dtdc_GetCarNearPlayer(playerid,true,10.0);
  1539. if(car != -1)
  1540. {
  1541. if(Dtdc_Car[car][cOPark] == 1)
  1542. {
  1543. new string[126];
  1544. if(GetPlayerMoney(playerid) < Dtdc_OParkPay)
  1545. {
  1546. format(string,sizeof(string)," Du besitzt nicht genug Geld! Du benötigst %d$",Dtdc_OParkPay);
  1547. SendClientMessage(playerid,COLOR_GREY,string);
  1548. return 1;
  1549. }
  1550. Dtdc_Car[car][cOPark] = 0;
  1551. GivePlayerMoney(playerid,-Dtdc_OParkPay);
  1552. format(string,sizeof(string)," Du hast dein %s für %d$ rausgekauft!",Dtdc_CarName[GetVehicleModel(Dtdc_Car[car][cCarId])-400],Dtdc_OParkPay);
  1553. SendClientMessage(playerid,COLOR_YELLOW,string);
  1554. GameTextForPlayer(playerid,"~g~Fahrzeug rausgekauft!",3000,1);
  1555. new lohn = floatround(Dtdc_OParkPay*Dtdc_OParkRate);
  1556. new frakmon = Dtdc_OParkPay - lohn;
  1557. CallRemoteFunction("DtdcFrakkasse","dd",0,frakmon);
  1558. } else {
  1559. SendClientMessage(playerid,COLOR_GREY," Dieses Auto wurde nicht abgeschleppt!");
  1560. }
  1561. return 1;
  1562. } else {
  1563. SendClientMessage(playerid,COLOR_GREY," Es ist kein Auto in der nähe welches du besitzt!");
  1564. return 1;
  1565. }
  1566. }
  1567. if (strcmp("/buycaralarm", cmdtext, true, 12) == 0 && Dtdc_LockOrAlarm == 1)
  1568. {
  1569. if(IsPlayerInAnyVehicle(playerid))
  1570. {
  1571. new veh = GetPlayerVehicleID(playerid);
  1572. new car = Dtdc_GetCarArrayId(veh);
  1573. if(car != -1)
  1574. {
  1575. if(Dtdc_Car[car][cOwnerOnline] != playerid)
  1576. {
  1577. SendClientMessage(playerid,COLOR_GREY," Dieses Auto gehört nicht dir!");
  1578. return 1;
  1579. }
  1580. if(Dtdc_Car[car][cAlarmBuyed] == 1)
  1581. {
  1582. SendClientMessage(playerid,COLOR_GREY," Dieses Auto besitzt schon eine Alarmanlage!");
  1583. return 1;
  1584. }
  1585. if(GetPlayerMoney(playerid) < 2500)
  1586. {
  1587. SendClientMessage(playerid,COLOR_GREY," Du besitzt nicht genug Geld! Du benötigst 2500$!");
  1588. return 1;
  1589. }
  1590. Dtdc_Car[car][cAlarmBuyed] = 1;
  1591. GivePlayerMoney(playerid,-2500);
  1592. SendClientMessage(playerid,COLOR_YELLOW,"Alarmanlage wurde erfolgreich gekauft und eingebaut benutze /caralarm in der nähe deines Wagens um sie zu aktivieren!");
  1593. return 1;
  1594. } else {
  1595. SendClientMessage(playerid,COLOR_GREY," Dieses Auto gehört keinem!");
  1596. return 1;
  1597. }
  1598. } else {
  1599. SendClientMessage(playerid,COLOR_GREY," Du musst in deinem Auto sein!");
  1600. return 1;
  1601. }
  1602. }
  1603. if (strcmp("/parken", cmdtext, true, 7) == 0 && Dtdc_ParkCommand == 0)
  1604. {
  1605. if(IsPlayerInAnyVehicle(playerid))
  1606. {
  1607. new veh = GetPlayerVehicleID(playerid);
  1608. new car = Dtdc_GetCarArrayId(veh);
  1609. if(car != -1)
  1610. {
  1611. if(Dtdc_Car[car][cOwnerOnline] != playerid)
  1612. {
  1613. SendClientMessage(playerid,COLOR_GREY," Dieses Auto gehört nicht dir!");
  1614. return 1;
  1615. }
  1616. GetVehiclePos(veh,Dtdc_Car[car][cPosX],Dtdc_Car[car][cPosY],Dtdc_Car[car][cPosZ]);
  1617. GetVehicleZAngle(veh,Dtdc_Car[car][cRotZ]);
  1618. Dtdc_Car[car][cVW] =GetVehicleVirtualWorld(Dtdc_Car[car][cCarId]);
  1619. Dtdc_Log(3,"------[/parken]------");
  1620. Dtdc_SaveVeh(car);
  1621. SendClientMessage(playerid,COLOR_YELLOW,"Dein Auto wurde erfolgreich geparkt!");
  1622. return 1;
  1623. } else {
  1624. SendClientMessage(playerid,COLOR_GREY," Dieses Auto gehört keinem!");
  1625. return 1;
  1626. }
  1627. } else {
  1628. SendClientMessage(playerid,COLOR_GREY," Du musst in deinem Auto sein!");
  1629. return 1;
  1630. }
  1631. }
  1632. if (strcmp("/carinfo", cmdtext, true, 8) == 0)
  1633. {
  1634. if(IsPlayerInAnyVehicle(playerid))
  1635. {
  1636. new veh = GetPlayerVehicleID(playerid);
  1637. new carid = Dtdc_GetCarArrayId(veh);
  1638. if(carid != -1)
  1639. {
  1640. new string[120];
  1641. SendClientMessage(playerid, COLOR_LIGHTBLUE," ------------------[CARINFO]------------------");
  1642. new checker = Cars4Eva;
  1643. if(checker == 1)
  1644. {
  1645. new onoff[20] = "Online";
  1646. if(Dtdc_Car[carid][cOwnerOnline] == MAX_PLAYERS+1){onoff ="Offline";}
  1647. format(string,sizeof(string)," | Besitzer: %s (%s) Fahrzeug-Name: %s",Dtdc_Car[carid][cOwnerName],onoff,Dtdc_CarName[GetVehicleModel(Dtdc_Car[carid][cCarId])-400]);
  1648. } else {format(string,sizeof(string)," | Besitzer: %s Fahrzeug-Name: %s",Dtdc_Car[carid][cOwnerName],Dtdc_CarName[GetVehicleModel(Dtdc_Car[carid][cCarId])-400]);}
  1649. SendClientMessage(playerid,COLOR_WHITE,string);
  1650. return 1;
  1651. } else {
  1652. SendClientMessage(playerid,COLOR_GREY," Dieses Auto gehört keinem!");
  1653. return 1;
  1654. }
  1655. } else {
  1656. new carid = Dtdc_GetCarNearPlayer(playerid,true,10.0);
  1657. if(carid != -1)
  1658. {
  1659. new string[120];
  1660. SendClientMessage(playerid, COLOR_LIGHTBLUE," ------------------[CARINFO]------------------");
  1661. new checker = Cars4Eva;
  1662. if(checker == 1)
  1663. {
  1664. new onoff[20] = "Online";
  1665. if(Dtdc_Car[carid][cOwnerOnline] == MAX_PLAYERS+1){onoff ="Offline";}
  1666. format(string,sizeof(string)," | Besitzer: %s (%s) Fahrzeug-Name: %s",Dtdc_Car[carid][cOwnerName],onoff,Dtdc_CarName[GetVehicleModel(Dtdc_Car[carid][cCarId])-400]);
  1667. } else {format(string,sizeof(string)," | Besitzer: %s Fahrzeug-Name: %s",Dtdc_Car[carid][cOwnerName],Dtdc_CarName[GetVehicleModel(Dtdc_Car[carid][cCarId])-400]);}
  1668. SendClientMessage(playerid,COLOR_WHITE,string);
  1669. return 1;
  1670. } else {
  1671. SendClientMessage(playerid,COLOR_GREY," Du bist nicht in der nähe eines Autos welches einem Spieler gehört!");
  1672. return 1;
  1673. }
  1674. }
  1675. }
  1676. if (strcmp(cmd, "/checkcar", true) == 0)
  1677. {
  1678. if(IsPlayerConnected(playerid))
  1679. {
  1680. if(!IsPlayerAdmin(playerid) && !CallRemoteFunction("PlayerIsAdmin","i",playerid))
  1681. {
  1682. SendClientMessage(playerid,COLOR_GREY," Du hast nicht die nötigen Rechte!");
  1683. return 1;
  1684. }
  1685. tmp = strtok(cmdtext, idx);
  1686. if(!strlen(tmp))
  1687. {
  1688. SendClientMessage(playerid, COLOR_GREY, "FEHLER: /checkcar [playerid]");
  1689. return 1;
  1690. }
  1691. new giveplayerid = strval(tmp);
  1692. if(IsPlayerConnected(giveplayerid))
  1693. {
  1694. if(giveplayerid != INVALID_PLAYER_ID)
  1695. {
  1696. new bool:check = true;
  1697. new string[200];
  1698. for(new c = 0; c <MaxVehPerPlayer;c++)
  1699. {
  1700. if(Dtdc_Player[giveplayerid][Car][c] != MaxVehicle +1)
  1701. {
  1702. new carid = Dtdc_Player[giveplayerid][Car][c];
  1703. if(check)
  1704. {
  1705. check = false;
  1706. format(string,sizeof(string),"{FFFFFF}%s {3399ff}id:%d",Dtdc_CarName[GetVehicleModel(Dtdc_Car[carid][cCarId])-400],Dtdc_Car[carid][cCarId]);
  1707. } else {
  1708. format(string,sizeof(string),"%s \n{FFFFFF}%s {3399ff}id:%d",string,Dtdc_CarName[GetVehicleModel(Dtdc_Car[carid][cCarId])-400],Dtdc_Car[carid][cCarId]);
  1709. }
  1710. }
  1711. }
  1712. if(check)
  1713. {
  1714. SendClientMessage(playerid,COLOR_GREY," Der Spieler besitzt keine Autos");
  1715. return 1;
  1716. }
  1717. ShowPlayerDialog(playerid,UserDia,DIALOG_STYLE_MSGBOX,"Seine Fahrzeuge",string,"OK","Abbrechen");
  1718. Dtdc_Player[playerid][UserDialog] = DoNothingDia;
  1719. return 1;
  1720. }
  1721. }
  1722. else
  1723. {
  1724. SendClientMessage(playerid, COLOR_GREY, " Der Spieler wurde nicht gefunden!");
  1725. }
  1726. }
  1727. return 1;
  1728. }
  1729. if (strcmp("/carsell", cmdtext, true, 8) == 0)
  1730. {
  1731. if(IsPlayerInAnyVehicle(playerid))
  1732. {
  1733. new carid = Dtdc_GetCarArrayId(GetPlayerVehicleID(playerid));
  1734. if(carid != -1)
  1735. {
  1736. if(Dtdc_Car[carid][cOwnerOnline] != playerid)
  1737. {
  1738. SendClientMessage(playerid,COLOR_GREY," Dieses Auto gehört nicht dir!");
  1739. return 1;
  1740. }
  1741. new preis = Dtdc_Car[carid][cPreis]/3*2;
  1742. Dtdc_Player[playerid][SellCar] = carid;
  1743. new string[120];
  1744. format(string,sizeof(string),"An Gebrauchtwagenhändler verkaufen (%d$)\nAn anderen Spieler verkaufen",preis);
  1745. ShowPlayerDialog(playerid,UserDia,DIALOG_STYLE_LIST,"Fahrzeug Verkaus-Optionen",string,"OK","Abbrechen");
  1746. Dtdc_Player[playerid][UserDialog] = UserSellDia;
  1747. return 1;
  1748. } else {
  1749. SendClientMessage(playerid,COLOR_GREY," Dieses Auto gehört nicht dir!");
  1750. return 1;
  1751. }
  1752. } else {
  1753. SendClientMessage(playerid,COLOR_GREY," Du musst in einem Auto sein!");
  1754. return 1;
  1755. }
  1756. }
  1757. return 0;
  1758. }
  1759.  
  1760. forward Dtdc_GetCarNearPlayer(playerid,bool:owning,Float:radi);
  1761. public Dtdc_GetCarNearPlayer(playerid,bool:owning,Float:radi)
  1762. {
  1763. new carid = -1;
  1764. new Float:dis = -1;
  1765. new checker3 = 0;
  1766. new Float:vx,Float:vy, Float:vz;
  1767. new Float:px,Float:py, Float:pz;
  1768. GetPlayerPos(playerid,px,py,pz);
  1769. for(new c = 0; c <MaxVehicle;c++)
  1770. {
  1771. if(checker3 >= Dtdc_CarsNum){break;}
  1772. if(Dtdc_Car[c][cAktivated] == 1)
  1773. {
  1774. GetVehiclePos(Dtdc_Car[c][cCarId],vx,vy,vz);
  1775. if(IsPlayerInRangeOfPoint(playerid,radi,vx,vy,vz) && (!owning || Dtdc_Car[c][cOwnerOnline] == playerid))
  1776. {
  1777. new Float:discheck = floatsqroot(floatpower(floatabs(floatsub(px,vx)),2)+floatpower(floatabs(floatsub(py,vy)),2)+floatpower(floatabs(floatsub(pz,vz)),2));
  1778. if(dis == -1) {
  1779. dis = discheck;
  1780. carid = c;
  1781. }else{
  1782. if(discheck < dis)
  1783. {
  1784. dis = discheck;
  1785. carid = c;
  1786. }
  1787. }
  1788.  
  1789. }
  1790. checker3++;
  1791. }
  1792. }
  1793. return carid;
  1794. }
  1795.  
  1796. forward Dtdc_GetCarArrayId(vehid);
  1797. public Dtdc_GetCarArrayId(vehid)
  1798. {
  1799. new carid = -1;
  1800. new checker3 = 0;
  1801. for(new c = 0; c <MaxVehicle;c++)
  1802. {
  1803. if(checker3 >= Dtdc_CarsNum){break;}
  1804. if(Dtdc_Car[c][cAktivated] == 1)
  1805. {
  1806. if(Dtdc_Car[c][cCarId] == vehid)
  1807. {
  1808. carid = c; break;
  1809. }
  1810. checker3++;
  1811. }
  1812. }
  1813. return carid;
  1814. }
  1815.  
  1816. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  1817. {
  1818. new carid = Dtdc_GetCarArrayId(vehicleid);
  1819. new string[126];
  1820. if(carid != -1)
  1821. {
  1822. if(Dtdc_LockOrAlarm == 3)
  1823. {
  1824. if(Dtdc_Car[carid][cLocked] == 1 && Dtdc_Car[carid][cAktivated] == 1)
  1825. {
  1826. TogglePlayerControllable(playerid,0);
  1827. ClearAnimations(playerid);
  1828. SetPlayerSpecialAction(playerid,SPECIAL_ACTION_NONE);
  1829. TogglePlayerControllable(playerid,1);
  1830. GameTextForPlayer(playerid,"~r~Abgeschlossen!",3000,1);
  1831. return 0;
  1832. }
  1833. }
  1834. if(Dtdc_LockOrAlarm == 0)
  1835. {
  1836. if(Dtdc_Car[carid][cAktivated] == 1)
  1837. {
  1838. SetVehicleLock(Dtdc_Car[carid][cCarId],Dtdc_Car[carid][cLocked]);
  1839. }
  1840. }
  1841. if(Dtdc_Car[carid][cAktivated] == 1 && Dtdc_Car[carid][cOPark] == 1)
  1842. {
  1843. TogglePlayerControllable(playerid,0);
  1844. ClearAnimations(playerid);
  1845. SetPlayerSpecialAction(playerid,SPECIAL_ACTION_NONE);
  1846. TogglePlayerControllable(playerid,1);
  1847. GameTextForPlayer(playerid,"~r~Abgeschleppt!",3000,1);
  1848. format(string,sizeof(string),"Dein %s wurde abgeschleppt! Bezahle %d$ um es rauszukaufen mit /rauskaufen .",Dtdc_CarName[GetVehicleModel(Dtdc_Car[carid][cCarId])-400],Dtdc_OParkPay);
  1849. SendClientMessage(playerid,COLOR_WHITE,string);
  1850. return 0;
  1851. }
  1852. }
  1853. return 1;
  1854. }
  1855.  
  1856. public OnPlayerExitVehicle(playerid, vehicleid)
  1857. {
  1858. return 1;
  1859. }
  1860.  
  1861. public OnPlayerStateChange(playerid, newstate, oldstate)
  1862. {
  1863. if(Dtdc_LockOrAlarm != 3 && Dtdc_LockOrAlarm != 0)
  1864. {
  1865. if(newstate == PLAYER_STATE_DRIVER)
  1866. {
  1867. new carid = Dtdc_GetCarArrayId(GetPlayerVehicleID(playerid));
  1868. if(carid != -1)
  1869. {
  1870. if(Dtdc_Car[carid][cLocked] == 1 && Dtdc_Car[carid][cAktivated] == 1)
  1871. {
  1872. RemovePlayerFromVehicle(playerid);
  1873. SetVehiclealarm(Dtdc_Car[carid][cCarId]);
  1874. SendClientMessage(playerid,COLOR_GREY," Die Alarmanlage des Autos geht los, du springst aus den Auto und rennst weg, damit dich keiner bemerkt!");
  1875. }
  1876. }
  1877. }
  1878. }
  1879. return 1;
  1880. }
  1881.  
  1882.  
  1883. public OnPlayerObjectMoved(playerid, objectid)
  1884. {
  1885. return 1;
  1886. }
  1887.  
  1888. #if defined UnbugTuner
  1889. forward DTDC_SetPlayerCarTuner(playerid,onlyangle);
  1890. public DTDC_SetPlayerCarTuner(playerid,onlyangle)
  1891. {
  1892. if(Dtdc_Player[playerid][IsInTuner] != MaxTuner+1)
  1893. {
  1894. new veh = Dtdc_Player[playerid][CarShow];
  1895. if(onlyangle == 0)
  1896. {
  1897. RemovePlayerFromVehicle(playerid);
  1898. SetPlayerPos(playerid,1488.2257,-1546.8790,27.5516);
  1899.  
  1900. SetVehicleVirtualWorld(veh,645-playerid); // old SetVehicleVirtualWorld(veh,GetPlayerVirtualWorld(playerid));
  1901. LinkVehicleToInterior(veh,0);
  1902. SetVehiclePos(veh,1508.0642,-1546.7838,24.5884);
  1903. }
  1904. SetVehicleZAngle(veh, 359.9673);
  1905. }
  1906. }
  1907.  
  1908. forward DTDC_SetPlayerCarRespray(playerid,onlyangle);
  1909. public DTDC_SetPlayerCarRespray(playerid,onlyangle)
  1910. {
  1911. if(Dtdc_Player[playerid][IsInRespray] != MaxResprayer+1)
  1912. {
  1913. new veh = Dtdc_Player[playerid][CarShow];
  1914. new index = 0;
  1915. if(onlyangle == 0)
  1916. {
  1917. RemovePlayerFromVehicle(playerid);
  1918. SetPlayerPos(playerid,Dtdc_ResprayPos[index][rsPlyPosX],Dtdc_ResprayPos[index][rsPlyPosY],Dtdc_ResprayPos[index][rsPlyPosZ]);
  1919. SetPlayerInterior(playerid,0);
  1920. SetPlayerVirtualWorld(playerid, 645-playerid);
  1921.  
  1922. SetVehiclePos(veh,Dtdc_ResprayPos[index][rsCarPosX],Dtdc_ResprayPos[index][rsCarPosY],Dtdc_ResprayPos[index][rsCarPosZ]);
  1923. SetVehicleZAngle(veh, Dtdc_ResprayPos[index][rsCarRotZ]);
  1924. SetVehicleVirtualWorld(veh,645-playerid); // old SetVehicleVirtualWorld(veh,GetPlayerVirtualWorld(playerid));
  1925. LinkVehicleToInterior(veh,0);
  1926. }
  1927. SetVehicleZAngle(veh, Dtdc_ResprayPos[index][rsCarRotZ]);
  1928. }
  1929. }
  1930. #endif
  1931.  
  1932. public OnPlayerPickUpPickup(playerid, pickupid)
  1933. {
  1934. new string2[120];
  1935. new string[250];
  1936. new seller = MaxSeller +1;
  1937. new resprayer = MaxResprayer +1;
  1938. if(IsPlayerInAnyVehicle(playerid))
  1939. {
  1940. new carid = Dtdc_GetCarArrayId(GetPlayerVehicleID(playerid));
  1941. if(carid != -1)
  1942. {
  1943. if(Dtdc_Car[carid][cOwnerOnline] == playerid && Dtdc_Car[carid][cAktivated] == 1)
  1944. {
  1945. for(new i=0;i<Dtdc_ResprayerNum;i++)
  1946. {
  1947. if((VehToPoint(GetPlayerVehicleID(playerid),9.5,Dtdc_Respray[i][rPosX],Dtdc_Respray[i][rPosY],Dtdc_Respray[i][rPosZ]) || ( VehToPoint(GetPlayerVehicleID(playerid),40.5,Dtdc_Respray[i][rPosX],Dtdc_Respray[i][rPosY],Dtdc_Respray[i][rPosZ]) && VehicleArt(GetPlayerVehicleID(playerid)) == veh_Planes) )&&Dtdc_Respray[i][rAktivated] == 1)
  1948. {
  1949. resprayer = i;
  1950. break;
  1951. }
  1952. if(( VehToPoint(GetPlayerVehicleID(playerid),23.5,Dtdc_Respray[i][rPosX],Dtdc_Respray[i][rPosY],Dtdc_Respray[i][rPosZ]) && VehicleArt(GetPlayerVehicleID(playerid)) == veh_Boats)&&Dtdc_Respray[i][rAktivated] == 1)
  1953. {
  1954. resprayer = i;
  1955. break;
  1956. }
  1957. }
  1958. if(resprayer != MaxResprayer+1 && Dtdc_Player[playerid][IsInRespray] == MaxResprayer+1 && (GetTickCount() - Dtdc_Player[playerid][LastTick]) > 5000 )
  1959. {
  1960. Dtdc_Player[playerid][IsInRespray] = resprayer;
  1961. new index = 0;
  1962. if(VehicleArt(GetPlayerVehicleID(playerid)) == veh_Boats) {index = 3;}
  1963. else if(VehicleArt(GetPlayerVehicleID(playerid)) == veh_Planes) {index = 2;}
  1964. else if(VehicleArt(GetPlayerVehicleID(playerid)) == veh_Helicopters) {index = 1;}
  1965. else if(VehicleArt(GetPlayerVehicleID(playerid)) == veh_Trucks || VehicleArt(GetPlayerVehicleID(playerid)) == veh_Sonder) {index = 4;}
  1966. //setPos
  1967. new veh = GetPlayerVehicleID(playerid);
  1968. #if defined UnbugTuner
  1969. if(index == 0)
  1970. {
  1971. Dtdc_Player[playerid][LastTick] = GetTickCount();
  1972.  
  1973. TogglePlayerControllable(playerid,0);
  1974. SetVehicleVirtualWorld(veh,645-playerid); // old SetVehicleVirtualWorld(veh,GetPlayerVirtualWorld(playerid));
  1975. SetPlayerVirtualWorld(playerid, 645-playerid);
  1976. SetPlayerInterior(playerid,0);
  1977.  
  1978. SetPlayerCameraPos(playerid,Dtdc_ResprayPos[index][rsCamPosX],Dtdc_ResprayPos[index][rsCamPosY],Dtdc_ResprayPos[index][rsCamPosZ]);
  1979. SetPlayerCameraLookAt(playerid,Dtdc_ResprayPos[index][rsCarPosX],Dtdc_ResprayPos[index][rsCarPosY],Dtdc_ResprayPos[index][rsCarPosZ]);
  1980.  
  1981. //Car
  1982. Dtdc_Player[playerid][CarShow] = veh;
  1983.  
  1984. LinkVehicleToInterior(veh,0);
  1985. SetVehicleZAngle(veh, Dtdc_ResprayPos[index][rsCarRotZ]);
  1986. SetVehiclePos(veh,1527.3375,-1475.8082,9.2642);
  1987. SetVehicleZAngle(veh, Dtdc_ResprayPos[index][rsCarRotZ]);
  1988.  
  1989. SetTimerEx("DTDC_SetPlayerCarRespray",500,0,"dd",playerid,0);
  1990. SetTimerEx("DTDC_SetPlayerCarRespray",750,0,"dd",playerid,1);
  1991. } else {
  1992. Dtdc_Player[playerid][LastTick] = GetTickCount();
  1993. RemovePlayerFromVehicle(playerid);
  1994. SetPlayerPos(playerid,Dtdc_ResprayPos[index][rsPlyPosX],Dtdc_ResprayPos[index][rsPlyPosY],Dtdc_ResprayPos[index][rsPlyPosZ]);
  1995. SetPlayerInterior(playerid,Dtdc_ResprayPos[index][rsInt]);
  1996. SetPlayerVirtualWorld(playerid, 645-playerid);
  1997. TogglePlayerControllable(playerid,0);
  1998. SetPlayerCameraPos(playerid,Dtdc_ResprayPos[index][rsCamPosX],Dtdc_ResprayPos[index][rsCamPosY],Dtdc_ResprayPos[index][rsCamPosZ]);
  1999. SetPlayerCameraLookAt(playerid,Dtdc_ResprayPos[index][rsCarPosX],Dtdc_ResprayPos[index][rsCarPosY],Dtdc_ResprayPos[index][rsCarPosZ]);
  2000. //Car
  2001. Dtdc_Player[playerid][CarShow] = veh;
  2002. SetVehiclePos(veh,Dtdc_ResprayPos[index][rsCarPosX],Dtdc_ResprayPos[index][rsCarPosY],Dtdc_ResprayPos[index][rsCarPosZ]);
  2003. SetVehicleZAngle(veh, Dtdc_ResprayPos[index][rsCarRotZ]);
  2004. SetVehicleVirtualWorld(veh,645-playerid); // old SetVehicleVirtualWorld(veh,GetPlayerVirtualWorld(playerid));
  2005. LinkVehicleToInterior(veh,Dtdc_ResprayPos[index][rsInt]);
  2006. }
  2007. #else
  2008. Dtdc_Player[playerid][LastTick] = GetTickCount();
  2009. RemovePlayerFromVehicle(playerid);
  2010. SetPlayerPos(playerid,Dtdc_ResprayPos[index][rsPlyPosX],Dtdc_ResprayPos[index][rsPlyPosY],Dtdc_ResprayPos[index][rsPlyPosZ]);
  2011. SetPlayerInterior(playerid,Dtdc_ResprayPos[index][rsInt]);
  2012. SetPlayerVirtualWorld(playerid, 645-playerid);
  2013. TogglePlayerControllable(playerid,0);
  2014. SetPlayerCameraPos(playerid,Dtdc_ResprayPos[index][rsCamPosX],Dtdc_ResprayPos[index][rsCamPosY],Dtdc_ResprayPos[index][rsCamPosZ]);
  2015. SetPlayerCameraLookAt(playerid,Dtdc_ResprayPos[index][rsCarPosX],Dtdc_ResprayPos[index][rsCarPosY],Dtdc_ResprayPos[index][rsCarPosZ]);
  2016. //Car
  2017. Dtdc_Player[playerid][CarShow] = veh;
  2018. SetVehiclePos(veh,Dtdc_ResprayPos[index][rsCarPosX],Dtdc_ResprayPos[index][rsCarPosY],Dtdc_ResprayPos[index][rsCarPosZ]);
  2019. SetVehicleZAngle(veh, Dtdc_ResprayPos[index][rsCarRotZ]);
  2020. SetVehicleVirtualWorld(veh,645-playerid); // old SetVehicleVirtualWorld(veh,GetPlayerVirtualWorld(playerid));
  2021. LinkVehicleToInterior(veh,Dtdc_ResprayPos[index][rsInt]);
  2022. #endif
  2023. Dtdc_Player[playerid][CarColorSelect1] = Dtdc_Car[carid][cColor1];
  2024. Dtdc_Player[playerid][CarColorSelect2] = Dtdc_Car[carid][cColor2];
  2025.  
  2026. //textdraws
  2027. format(string,sizeof(string),"Color 1: %d~n~Color 2: %d~n~Preis: 400$",Dtdc_Player[playerid][CarColorSelect1],Dtdc_Player[playerid][CarColorSelect2]);
  2028. if(!Dtdc_Player[playerid][CarSpray][0])
  2029. {
  2030. Dtdc_Player[playerid][CarSpray][0] = TextDrawCreate(18.000000,222.000000,Dtdc_Respray[Dtdc_Player[playerid][IsInRespray]][rNameIs]);
  2031. Dtdc_Player[playerid][CarSpray][1] = TextDrawCreate(16.000000,242.000000,string);
  2032. TextDrawAlignment(Dtdc_Player[playerid][CarSpray][0],0);
  2033. TextDrawAlignment(Dtdc_Player[playerid][CarSpray][1],0);
  2034. TextDrawBackgroundColor(Dtdc_Player[playerid][CarSpray][0],0x000000ff);
  2035. TextDrawBackgroundColor(Dtdc_Player[playerid][CarSpray][1],0x000000ff);
  2036. TextDrawFont(Dtdc_Player[playerid][CarSpray][0],0);
  2037. TextDrawLetterSize(Dtdc_Player[playerid][CarSpray][0],0.499999,1.400000);
  2038. TextDrawFont(Dtdc_Player[playerid][CarSpray][1],1);
  2039. TextDrawLetterSize(Dtdc_Player[playerid][CarSpray][1],0.499999,1.400000);
  2040. TextDrawColor(Dtdc_Player[playerid][CarSpray][0],0xffffffff);
  2041. TextDrawColor(Dtdc_Player[playerid][CarSpray][1],0x0000ffff);
  2042. TextDrawSetOutline(Dtdc_Player[playerid][CarSpray][0],1);
  2043. TextDrawSetOutline(Dtdc_Player[playerid][CarSpray][1],1);
  2044. TextDrawSetProportional(Dtdc_Player[playerid][CarSpray][0],1);
  2045. TextDrawSetProportional(Dtdc_Player[playerid][CarSpray][1],1);
  2046. TextDrawSetShadow(Dtdc_Player[playerid][CarSpray][0],1);
  2047. TextDrawSetShadow(Dtdc_Player[playerid][CarSpray][1],1);
  2048. TextDrawShowForPlayer(playerid,Dtdc_Player[playerid][CarSpray][0]);
  2049. TextDrawShowForPlayer(playerid,Dtdc_Player[playerid][CarSpray][1]);
  2050. }
  2051. else
  2052. {
  2053. TextDrawHideForPlayer(playerid,Dtdc_Player[playerid][CarSpray][0]);
  2054. TextDrawSetString(Dtdc_Player[playerid][CarSpray][0],Dtdc_Respray[Dtdc_Player[playerid][IsInRespray]][rNameIs]);
  2055. TextDrawShowForPlayer(playerid,Dtdc_Player[playerid][CarSpray][0]);
  2056. TextDrawHideForPlayer(playerid,Dtdc_Player[playerid][CarSpray][1]);
  2057. TextDrawSetString(Dtdc_Player[playerid][CarSpray][1],string);
  2058. TextDrawShowForPlayer(playerid,Dtdc_Player[playerid][CarSpray][1]);
  2059. }
  2060. for(new i=0;i<3;i++){TextDrawShowForPlayer(playerid,Dtdc_ResprayTxt[i]);}
  2061. return 1;
  2062. }
  2063. resprayer = MaxTuner +1;
  2064. for(new i=0;i<Dtdc_ResprayerNum;i++)
  2065. {
  2066. if((VehToPoint(GetPlayerVehicleID(playerid),9.5,Dtdc_Tune[i][tPosX],Dtdc_Tune[i][tPosY],Dtdc_Tune[i][tPosZ]) || ( VehToPoint(GetPlayerVehicleID(playerid),40.5,Dtdc_Tune[i][tPosX],Dtdc_Tune[i][tPosY],Dtdc_Tune[i][tPosZ]) && VehicleArt(GetPlayerVehicleID(playerid)) == veh_Planes) )&&Dtdc_Respray[i][rAktivated] == 1)
  2067. {
  2068. resprayer = i;
  2069. break;
  2070. }
  2071. if(( VehToPoint(GetPlayerVehicleID(playerid),23.5,Dtdc_Tune[i][tPosX],Dtdc_Tune[i][tPosY],Dtdc_Tune[i][tPosZ]) && VehicleArt(GetPlayerVehicleID(playerid)) == veh_Boats)&&Dtdc_Respray[i][rAktivated] == 1)
  2072. {
  2073. resprayer = i;
  2074. break;
  2075. }
  2076. }
  2077. if(resprayer != MaxTuner+1 && Dtdc_Player[playerid][IsInTuner] == MaxTuner+1 && (GetTickCount() - Dtdc_Player[playerid][LastTick]) > 5000 )
  2078. {
  2079. Dtdc_Player[playerid][IsInMenu] = 0;
  2080. new index = 0;
  2081. if(VehicleArt(GetPlayerVehicleID(playerid)) == veh_Boats) {index = 3;}
  2082. if(VehicleArt(GetPlayerVehicleID(playerid)) == veh_Bikes) {index = 5;}
  2083. else if(VehicleArt(GetPlayerVehicleID(playerid)) == veh_Planes) {index = 2;}
  2084. else if(VehicleArt(GetPlayerVehicleID(playerid)) == veh_Helicopters) {index = 1;}
  2085. else if(VehicleArt(GetPlayerVehicleID(playerid)) == veh_Trucks || VehicleArt(GetPlayerVehicleID(playerid)) == veh_Sonder) {index = 4;}
  2086. if(index == 0 || index == 5)
  2087. {
  2088. Dtdc_Player[playerid][IsInTuner] = resprayer;
  2089. ShowMenuForPlayer(Dtdc_Tune[Dtdc_Player[playerid][IsInTuner]][tMenu], playerid);
  2090. new veh = GetPlayerVehicleID(playerid);
  2091.  
  2092. #if defined UnbugTuner
  2093. SetPlayerVirtualWorld(playerid, 645-playerid);
  2094. SetVehicleVirtualWorld(veh,645-playerid);
  2095. //SetPlayerInterior(playerid,1);
  2096. TogglePlayerControllable(playerid,0);
  2097. SetPlayerCameraPos(playerid,1496.5846,-1531.7704,27.7900);
  2098. SetPlayerCameraLookAt(playerid,1508.0642,-1546.7838,24.5884);
  2099.  
  2100. SetVehicleZAngle(veh, 359.9673);
  2101. LinkVehicleToInterior(veh,0);
  2102. SetVehiclePos(veh,1527.3375,-1475.8082,9.2642);
  2103. SetVehicleZAngle(veh, 359.9673);
  2104.  
  2105. PlayerPlaySound(playerid, 1149, 0.0, 0.0, 0.0);
  2106.  
  2107. Dtdc_Player[playerid][CarShow] = veh;
  2108.  
  2109.  
  2110. SetTimerEx("DTDC_SetPlayerCarTuner",500,0,"dd",playerid,0);
  2111. SetTimerEx("DTDC_SetPlayerCarTuner",750,0,"dd",playerid,1);
  2112. #else
  2113. RemovePlayerFromVehicle(playerid);
  2114. SetPlayerPos(playerid,616.0981,-21.3538,1000.9219);
  2115. SetPlayerInterior(playerid,1);
  2116. SetPlayerVirtualWorld(playerid, 645-playerid);
  2117. TogglePlayerControllable(playerid,0);
  2118. SetPlayerCameraPos(playerid,619.4365,-17.0174,1000.9219+3);
  2119. SetPlayerCameraLookAt(playerid,624.7989,-22.6824,1001.8007);
  2120.  
  2121. PlayerPlaySound(playerid, 1149, 0.0, 0.0, 0.0);
  2122.  
  2123. Dtdc_Player[playerid][CarShow] = veh;
  2124. SetVehiclePos(veh,624.7989,-22.6824,1001.8007);
  2125. SetVehicleZAngle(veh, 0.0);
  2126. SetVehicleVirtualWorld(veh,645-playerid); // old SetVehicleVirtualWorld(veh,GetPlayerVirtualWorld(playerid));
  2127. LinkVehicleToInterior(veh,1);
  2128. #endif
  2129. }
  2130. }
  2131. }
  2132. }
  2133. }
  2134. for(new i=0;i<Dtdc_SellerNum;i++)
  2135. {
  2136. if(IsPlayerInRangeOfPoint(playerid,2.3,Dtdc_Seller[i][sIconPosX],Dtdc_Seller[i][sIconPosY],Dtdc_Seller[i][sIconPosZ])&&Dtdc_Seller[i][sAktivated] == 1)
  2137. {
  2138. seller = i;
  2139. break;
  2140. }
  2141. }
  2142. if(seller != MaxSeller +1 && Dtdc_Player[playerid][IsInSeller] == MaxSeller +1)
  2143. {
  2144. if(Dtdc_Seller[seller][sCars] == 0){SendClientMessage(playerid,COLOR_GREY," Dieses Autohaus besitzt noch keine Autos zum Verkauf!"); return 1;}
  2145. if(Dtdc_Seller[seller][sPark] == 0){SendClientMessage(playerid,COLOR_GREY," Dieses Autohaus besitzt noch keine Parkplätzte als Spawn!"); return 1;}
  2146. if(Dtdc_Seller[seller][sPlayerTyp] != 0)
  2147. {
  2148. if(CallRemoteFunction("GetPlayerTyp","dd",playerid,Dtdc_Seller[seller][sPlayerTyp]) == 0) return 1;
  2149. }
  2150. Dtdc_Player[playerid][IsInSeller] = seller;
  2151. Dtdc_Player[playerid][SellerLastShow] = 0;
  2152. CallRemoteFunction("PlayerDTDCSellerStateChange","dd",playerid,1);
  2153. switch(Dtdc_Select)
  2154. {
  2155. case 0://Liveview
  2156. {
  2157. Dtdc_Player[playerid][CarSelect] = 0;
  2158. Dtdc_Player[playerid][CarColorSelect1] = 0;
  2159. Dtdc_Player[playerid][CarColorSelect2] = 0;
  2160. Dtdc_Player[playerid][IsAtCar] = 0;
  2161. new plus = 0;
  2162. for(new i = 0; i < Dtdc_SCarsNum; i++)
  2163. {
  2164. if(Dtdc_SCars[i][scSeller] == Dtdc_Player[playerid][IsInSeller])
  2165. {
  2166. if(plus == Dtdc_Player[playerid][IsAtCar]) {Dtdc_Player[playerid][CarSelect] = i; break;}
  2167. plus++;
  2168. }
  2169. }
  2170. //SetPlayer & Cam On Position
  2171. SetPlayerPos(playerid,Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVPlyPosX],Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVPlyPosY],Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVPlyPosZ]);
  2172. SetPlayerVirtualWorld(playerid, 645-playerid);
  2173. TogglePlayerControllable(playerid,0);
  2174. SetPlayerCameraPos(playerid,Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVCamPosX],Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVCamPosY],Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVCamPosZ]);
  2175. SetPlayerCameraLookAt(playerid,Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVCarPosX],Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVCarPosY],Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVCarPosZ]);
  2176. //SHOW CAR
  2177. if(Dtdc_Player[playerid][CarShow] !=0){DestroyVehicle(Dtdc_Player[playerid][CarShow]);Dtdc_Player[playerid][CarShow] = 0;}
  2178. Dtdc_Player[playerid][CarShow] = CreateVehicle(Dtdc_SCars[Dtdc_Player[playerid][CarSelect]][scModel],Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVCarPosX],Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVCarPosY],Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVCarPosZ],Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVCarRot],Dtdc_Player[playerid][CarColorSelect1],Dtdc_Player[playerid][CarColorSelect2],-1);
  2179. SetVehicleVirtualWorld(Dtdc_Player[playerid][CarShow],GetPlayerVirtualWorld(playerid));
  2180. Dtdc_Player[playerid][LastTick] = GetTickCount();
  2181. //Textdraw
  2182. format(string,sizeof(string),"Name: %s~n~Kategorie: %s~n~Preis: ~g~%d$",Dtdc_CarName[Dtdc_SCars[Dtdc_Player[playerid][CarSelect]][scModel]-400],Dtdc_NameCat[Dtdc_SCars[Dtdc_Player[playerid][CarSelect]][scCat]],Dtdc_SCars[Dtdc_Player[playerid][CarSelect]][scPreis]);
  2183. if(!Dtdc_Player[playerid][CarKauf][0])
  2184. {
  2185. Dtdc_Player[playerid][CarKauf][0] = TextDrawCreate(20.000000,328.000000,Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sName]);
  2186. Dtdc_Player[playerid][CarKauf][1] = TextDrawCreate(11.000000,355.000000,string);
  2187. TextDrawAlignment(Dtdc_Player[playerid][CarKauf][0],0);
  2188. TextDrawAlignment(Dtdc_Player[playerid][CarKauf][1],0);
  2189. TextDrawBackgroundColor(Dtdc_Player[playerid][CarKauf][0],0x000000ff);
  2190. TextDrawBackgroundColor(Dtdc_Player[playerid][CarKauf][1],0x000000ff);
  2191. TextDrawFont(Dtdc_Player[playerid][CarKauf][0],0);
  2192. TextDrawLetterSize(Dtdc_Player[playerid][CarKauf][0],1.000000,2.299999);
  2193. TextDrawFont(Dtdc_Player[playerid][CarKauf][1],1);
  2194. TextDrawLetterSize(Dtdc_Player[playerid][CarKauf][1],0.499999,1.800000);
  2195. TextDrawColor(Dtdc_Player[playerid][CarKauf][0],0xffffffff);
  2196. TextDrawColor(Dtdc_Player[playerid][CarKauf][1],0xffffffff);
  2197. TextDrawSetOutline(Dtdc_Player[playerid][CarKauf][0],1);
  2198. TextDrawSetOutline(Dtdc_Player[playerid][CarKauf][1],1);
  2199. TextDrawSetProportional(Dtdc_Player[playerid][CarKauf][0],1);
  2200. TextDrawSetProportional(Dtdc_Player[playerid][CarKauf][1],1);
  2201. TextDrawSetShadow(Dtdc_Player[playerid][CarKauf][0],1);
  2202. TextDrawSetShadow(Dtdc_Player[playerid][CarKauf][1],1);
  2203. TextDrawShowForPlayer(playerid,Dtdc_Player[playerid][CarKauf][0]);
  2204. TextDrawShowForPlayer(playerid,Dtdc_Player[playerid][CarKauf][1]);
  2205. }
  2206. else
  2207. {
  2208. TextDrawHideForPlayer(playerid,Dtdc_Player[playerid][CarKauf][0]);
  2209. TextDrawSetString(Dtdc_Player[playerid][CarKauf][0],Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sName]);
  2210. TextDrawShowForPlayer(playerid,Dtdc_Player[playerid][CarKauf][0]);
  2211. TextDrawHideForPlayer(playerid,Dtdc_Player[playerid][CarKauf][1]);
  2212. TextDrawSetString(Dtdc_Player[playerid][CarKauf][1],string);
  2213. TextDrawShowForPlayer(playerid,Dtdc_Player[playerid][CarKauf][1]);
  2214. }
  2215. for(new i=0;i<4;i++){TextDrawShowForPlayer(playerid,Dtdc_BuyTexte[i]);}
  2216.  
  2217. }
  2218. case 2://Live Dialog
  2219. {
  2220. format(string2, sizeof(string2), " [%s] ",Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sName]);
  2221. Dtdc_Player[playerid][SellerSite] = 1;
  2222. Dtdc_Player[playerid][SellerLastShow] = 0;
  2223. Dtdc_Player[playerid][SellerRLastShow] = 0;
  2224. Dtdc_Player[playerid][SellerRLastShow2] = 0;
  2225. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  2226. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  2227. format(string, sizeof(string), "",string);
  2228. new lastshow = 0;
  2229. new reallastshow = 0;
  2230. for(new i = 0; i < Dtdc_SCarsNum; i++)
  2231. {
  2232. if(minshow <= lastshow && (i > Dtdc_Player[playerid][SellerRLastShow] || i==0))
  2233. {
  2234. if(lastshow > maxshow){break;}
  2235. if(Dtdc_SCars[i][scSeller] == Dtdc_Player[playerid][IsInSeller])
  2236. {
  2237. if(lastshow == minshow){format(string, sizeof(string), "%s (%d$)",Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_SCars[i][scPreis]);}
  2238. else {format(string, sizeof(string), "%s\n%s (%d$)",string,Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_SCars[i][scPreis]);}
  2239. lastshow ++;
  2240. }
  2241. }
  2242. reallastshow = i;
  2243. Dtdc_Player[playerid][SellerRLastShow2]++;
  2244. }
  2245. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  2246. if(lastshow < (Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sCars]-1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  2247. ShowPlayerDialog(playerid,CarBuyDia,DIALOG_STYLE_LIST,string2,string,"Ansehen","Abbrechen");
  2248. Dtdc_Player[playerid][CarBuyDialog] = LDMainDia;
  2249. Dtdc_Player[playerid][SellerLastShow] = lastshow;
  2250. Dtdc_Player[playerid][SellerRLastShow] = reallastshow;
  2251.  
  2252. //SetPlayer & Cam On Position
  2253. SetPlayerPos(playerid,Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVPlyPosX],Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVPlyPosY],Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVPlyPosZ]);
  2254. SetPlayerVirtualWorld(playerid, 645-playerid);
  2255. TogglePlayerControllable(playerid,0);
  2256. SetPlayerCameraPos(playerid,Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVCamPosX],Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVCamPosY],Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVCamPosZ]);
  2257. SetPlayerCameraLookAt(playerid,Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVCarPosX],Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVCarPosY],Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVCarPosZ]);
  2258. }
  2259. case 1://Dialog
  2260. {
  2261. format(string2, sizeof(string2), " [%s] ",Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sName]);
  2262. Dtdc_Player[playerid][SellerSite] = 1;
  2263. Dtdc_Player[playerid][SellerLastShow] = 0;
  2264. Dtdc_Player[playerid][SellerRLastShow] = 0;
  2265. Dtdc_Player[playerid][SellerRLastShow2] = 0;
  2266. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  2267. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  2268. format(string, sizeof(string), "",string);
  2269. new lastshow = 0;
  2270. new reallastshow = 0;
  2271. for(new i = 0; i < Dtdc_SCarsNum; i++)
  2272. {
  2273. if(minshow <= lastshow && (i > Dtdc_Player[playerid][SellerRLastShow] || i==0))
  2274. {
  2275. if(lastshow > maxshow){break;}
  2276. if(Dtdc_SCars[i][scSeller] == Dtdc_Player[playerid][IsInSeller])
  2277. {
  2278. if(lastshow == minshow){format(string, sizeof(string), "%s (%d$)",Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_SCars[i][scPreis]);}
  2279. else {format(string, sizeof(string), "%s\n%s (%d$)",string,Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_SCars[i][scPreis]);}
  2280. lastshow ++;
  2281. }
  2282. }
  2283. reallastshow = i;
  2284. Dtdc_Player[playerid][SellerRLastShow2]++;
  2285. }
  2286. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  2287. if(lastshow < (Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sCars]-1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  2288. ShowPlayerDialog(playerid,CarBuyDia,DIALOG_STYLE_LIST,string2,string,"Ansehen","Abbrechen");
  2289. Dtdc_Player[playerid][CarBuyDialog] = LDMainDia;
  2290. Dtdc_Player[playerid][SellerLastShow] = lastshow;
  2291. Dtdc_Player[playerid][SellerRLastShow] = reallastshow;
  2292.  
  2293. //SetPlayer & Cam On Position
  2294. new Float:px,Float:py,Float:pa;
  2295. px = Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconPosX];
  2296. py = Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconPosY];
  2297. pa = Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconRot];
  2298. GetXYInFrontOf(pa,px,py,2.5);
  2299. SetPlayerPos(playerid,px,py,Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconPosZ]);
  2300. SetPlayerFacingAngle(playerid,Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconRot]);
  2301. SetPlayerInterior(playerid,0);
  2302. SetCameraBehindPlayer(playerid);
  2303. TogglePlayerControllable(playerid,0);
  2304. SetPlayerVirtualWorld(playerid, 645-playerid);
  2305. }
  2306. }
  2307. }
  2308. return 1;
  2309. }
  2310.  
  2311. public OnVehicleMod(playerid, vehicleid, componentid)
  2312. {
  2313. return 1;
  2314. }
  2315.  
  2316. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  2317. {
  2318. new checker = 0;
  2319. for(new c = 0; c <MaxVehicle;c++)
  2320. {
  2321. if(checker >= Dtdc_CarsNum){break;}
  2322. if(Dtdc_Car[c][cAktivated] == 1)
  2323. {
  2324. if(Dtdc_Car[c][cCarId] == vehicleid)
  2325. {
  2326. Dtdc_Car[c][cPJ] = paintjobid+1;
  2327. Dtdc_Car[c][cColor1] = 1;
  2328. Dtdc_Car[c][cColor2] = 1;
  2329. }
  2330. checker ++;
  2331. }
  2332. }
  2333. return 1;
  2334. }
  2335.  
  2336. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  2337. {
  2338. new checker = 0;
  2339. for(new c = 0; c <MaxVehicle;c++)
  2340. {
  2341. if(checker >= Dtdc_CarsNum){break;}
  2342. if(Dtdc_Car[c][cAktivated] == 1)
  2343. {
  2344. if(Dtdc_Car[c][cCarId] == vehicleid)
  2345. {
  2346. Dtdc_Car[c][cColor1] = color1;
  2347. Dtdc_Car[c][cColor2] = color2;
  2348. }
  2349. checker ++;
  2350. }
  2351. }
  2352. return 1;
  2353. }
  2354.  
  2355. public OnPlayerSelectedMenuRow(playerid, row)
  2356. {
  2357. new string[128];
  2358. if(Dtdc_Player[playerid][IsInTuner] != MaxTuner+1)
  2359. {
  2360. new Menu:current;
  2361. current = GetPlayerMenu(playerid);
  2362. if(current == Dtdc_Tune[Dtdc_Player[playerid][IsInTuner]][tMenu])
  2363. {
  2364. switch(row)
  2365. {
  2366. case 0: //Numplate
  2367. {
  2368. Dtdc_Player[playerid][BuyNeonType] = -1;
  2369. HideMenuForPlayer(current,playerid);
  2370. Dtdc_Player[playerid][IsInMenu] = 1;
  2371. TogglePlayerControllable(playerid,0);
  2372. PlayerPlaySound(playerid, 1149, 0.0, 0.0, 0.0);
  2373. #if defined UnbugTuner
  2374. SetPlayerCameraPos(playerid,1508.1078,-1550.8710,24.7356);
  2375. SetPlayerCameraLookAt(playerid,1508.3939,-1546.8423,24.7356);
  2376. #else
  2377. SetPlayerCameraPos(playerid,624.6892,-27.0020,1000.9219+1);
  2378. SetPlayerCameraLookAt(playerid,624.7989,-22.6824,1001.8007);
  2379. #endif
  2380. format(string,sizeof(string),"Nummernschild Kaufen ($%d)",Dtdc_NumplatePreis);
  2381. ShowPlayerDialog(playerid,UserDia,DIALOG_STYLE_INPUT,string,"Bitte geben sie den Text für das Nummernschild ein!\nZwichen 1 und 30 Zeichen!","Auswahl","Abbrechen");
  2382. Dtdc_Player[playerid][UserDialog] = TunerNumplateDia;
  2383. return 1;
  2384. }
  2385. case 1: //Neon
  2386. {
  2387. Dtdc_Player[playerid][BuyNeonType] = -1;
  2388. Dtdc_Player[playerid][IsInMenu] = 2;
  2389. HideMenuForPlayer(current,playerid);
  2390. ShowMenuForPlayer(Dtdc_NeonMenu,playerid);
  2391. PlayerPlaySound(playerid, 1149, 0.0, 0.0, 0.0);
  2392. TogglePlayerControllable(playerid,0);
  2393. #if defined UnbugTuner
  2394. SetPlayerCameraPos(playerid,1508.0613,-1540.4309,22.9265);
  2395. SetPlayerCameraLookAt(playerid,1508.0642,-1546.7838,24.5884);
  2396. #else
  2397. SetPlayerCameraPos(playerid,619.7092,-22.8137,1000.9219);
  2398. SetPlayerCameraLookAt(playerid,624.7989,-22.6824,1001.8007);
  2399. #endif
  2400. return 1;
  2401. }
  2402. }
  2403. } else if(current == Dtdc_NeonMenu) {
  2404. PlayerPlaySound(playerid, 1149, 0.0, 0.0, 0.0);
  2405. TogglePlayerControllable(playerid,0);
  2406. Dtdc_Player[playerid][IsInMenu] = 3;
  2407. if(row == 6)
  2408. {
  2409. Dtdc_DelNeonFromVeh(Dtdc_Player[playerid][CarShow]);
  2410. ShowMenuForPlayer(Dtdc_NeonAbConfMenu,playerid);
  2411. } else {
  2412. Dtdc_SetNeonToVeh(Dtdc_Player[playerid][CarShow],row);
  2413. ShowMenuForPlayer(Dtdc_NeonConfMenu,playerid);
  2414. }
  2415. Dtdc_Player[playerid][BuyNeonType] = row;
  2416.  
  2417. } else if(current == Dtdc_NeonConfMenu || current == Dtdc_NeonAbConfMenu) {
  2418. if(row == 0)
  2419. {
  2420. if(Dtdc_Player[playerid][BuyNeonType] == 6)
  2421. {
  2422. Dtdc_DelNeonFromVeh(Dtdc_Player[playerid][CarShow]);
  2423. new carid = Dtdc_GetCarArrayId(Dtdc_Player[playerid][CarShow]);
  2424. Dtdc_Car[carid][cNeon] = -1;
  2425. Dtdc_Player[playerid][BuyNeonType] = -1;
  2426. PlayerPlaySound(playerid, 1133 , 0.0, 0.0, 0.0);
  2427. } else {
  2428. if(GetPlayerMoney(playerid) < Dtdc_NeonPreis)
  2429. {
  2430. PlayerPlaySound(playerid, 1085 , 0.0, 0.0, 0.0);
  2431. Dtdc_Player[playerid][BuyNeonType] = -1;
  2432. format(string, sizeof(string), " Du hast nicht genug Geld! Du benötigst $%d!",Dtdc_NeonPreis);
  2433. SendClientMessage(playerid,COLOR_GREY,string);
  2434. } else {
  2435. Dtdc_DelNeonFromVeh(Dtdc_Player[playerid][CarShow]);
  2436. Dtdc_SetNeonToVeh(Dtdc_Player[playerid][CarShow],Dtdc_Player[playerid][BuyNeonType]);
  2437. new carid = Dtdc_GetCarArrayId(Dtdc_Player[playerid][CarShow]);
  2438. Dtdc_Car[carid][cNeon] = Dtdc_Player[playerid][BuyNeonType];
  2439. Dtdc_Player[playerid][BuyNeonType] = -1;
  2440. PlayerPlaySound(playerid, 1133 , 0.0, 0.0, 0.0);
  2441. GivePlayerMoney(playerid,-Dtdc_NeonPreis);
  2442. }
  2443. }
  2444. }
  2445. OnPlayerExitedMenu(playerid);
  2446. }
  2447. }
  2448. return 1;
  2449. }
  2450.  
  2451. public OnPlayerExitedMenu(playerid)
  2452. {
  2453. if(Dtdc_Player[playerid][IsInTuner] != MaxTuner+1)
  2454. {
  2455. switch(Dtdc_Player[playerid][IsInMenu])
  2456. {
  2457. case 0:
  2458. {
  2459. //setback
  2460. //Car
  2461. SetVehiclePos(Dtdc_Player[playerid][CarShow],Dtdc_Tune[Dtdc_Player[playerid][IsInTuner]][tPosX],Dtdc_Tune[Dtdc_Player[playerid][IsInTuner]][tPosY],Dtdc_Tune[Dtdc_Player[playerid][IsInTuner]][tPosZ]);
  2462. SetVehicleZAngle(Dtdc_Player[playerid][CarShow], Dtdc_Tune[Dtdc_Player[playerid][IsInTuner]][tRot]);
  2463. SetVehicleVirtualWorld(Dtdc_Player[playerid][CarShow],0);
  2464. LinkVehicleToInterior(Dtdc_Player[playerid][CarShow],0);
  2465. //player
  2466. SetPlayerPos(playerid,Dtdc_Tune[Dtdc_Player[playerid][IsInTuner]][tPosX],Dtdc_Tune[Dtdc_Player[playerid][IsInTuner]][tPosY],Dtdc_Tune[Dtdc_Player[playerid][IsInTuner]][tPosZ]+1.5);
  2467. SetPlayerInterior(playerid,0);
  2468. SetPlayerVirtualWorld(playerid, 0);
  2469. TogglePlayerControllable(playerid,1);
  2470. SetCameraBehindPlayer(playerid);
  2471. PutPlayerInVehicle(playerid,Dtdc_Player[playerid][CarShow],0);
  2472. Dtdc_Player[playerid][CarShow] = 0;
  2473.  
  2474. PlayerPlaySound(playerid, 1053, 0.0, 0.0, 0.0);//Abord Sound
  2475. Dtdc_Player[playerid][IsInTuner] = MaxTuner +1;
  2476. Dtdc_Player[playerid][LastTick] = GetTickCount();
  2477. Dtdc_Player[playerid][IsInMenu]=0;
  2478.  
  2479. Dtdc_DelNeonFromVeh(Dtdc_Player[playerid][CarShow]);
  2480. Dtdc_SetNeonToVeh(Dtdc_Player[playerid][CarShow],Dtdc_Car[Dtdc_GetCarArrayId(Dtdc_Player[playerid][CarShow])][cNeon]);
  2481. }
  2482. case 1,2,3:
  2483. {
  2484. TogglePlayerControllable(playerid,0);
  2485. if(Dtdc_Player[playerid][BuyNeonType] != -1 && Dtdc_Player[playerid][IsInMenu]== 3){PlayerPlaySound(playerid, 1053, 0.0, 0.0, 0.0);Dtdc_Player[playerid][BuyNeonType] = -1;}
  2486. else if(Dtdc_Player[playerid][IsInMenu] != 3) {PlayerPlaySound(playerid, 1053, 0.0, 0.0, 0.0);}//
  2487. Dtdc_Player[playerid][IsInMenu] = 0;
  2488. ShowMenuForPlayer(Dtdc_Tune[Dtdc_Player[playerid][IsInTuner]][tMenu],playerid);
  2489. #if defined UnbugTuner
  2490. SetPlayerCameraPos(playerid,1496.5846,-1531.7704,27.7900);
  2491. SetPlayerCameraLookAt(playerid,1508.0642,-1546.7838,24.5884);
  2492. #else
  2493. SetPlayerCameraPos(playerid,619.4365,-17.0174,1000.9219+3);
  2494. SetPlayerCameraLookAt(playerid,624.7989,-22.6824,1001.8007);
  2495. #endif
  2496. Dtdc_DelNeonFromVeh(Dtdc_Player[playerid][CarShow]);
  2497. Dtdc_SetNeonToVeh(Dtdc_Player[playerid][CarShow],Dtdc_Car[Dtdc_GetCarArrayId(Dtdc_Player[playerid][CarShow])][cNeon]);
  2498. }
  2499. }
  2500. }
  2501. return 1;
  2502. }
  2503.  
  2504. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  2505. {
  2506. if(Dtdc_NeonOnOff == 1)
  2507. {
  2508. new car = Dtdc_GetCarNearPlayer(playerid,true,10.0);
  2509. if(car != -1 && (newkeys & KEY_NO))
  2510. {
  2511. new veh = Dtdc_Car[car][cCarId];
  2512. if(Dtdc_Car[car][cNeon] != -1)
  2513. {
  2514. if(Dtdc_VehNeon[veh][0] == 0)
  2515. {
  2516. Dtdc_SetNeonToVeh(veh,Dtdc_Car[car][cNeon]);
  2517. SendClientMessage(playerid,COLOR_YELLOW," Du hast die Neonlichter deines Autos angeschaltet!");
  2518. } else {
  2519. Dtdc_DelNeonFromVeh(veh);
  2520. SendClientMessage(playerid,COLOR_YELLOW," Du hast die Neonlichter deines Autos abgeschaltet!");
  2521. }
  2522. } else {
  2523. SendClientMessage(playerid,COLOR_GREY," Dieses Fahrzeug hat kein Neon!");
  2524. return 1;
  2525. }
  2526. }
  2527. }
  2528. if(Dtdc_OParkTow == 1)
  2529. {
  2530. if((newkeys & KEY_SUBMISSION) &&(IsPlayerInAnyVehicle(playerid))&&(GetPlayerState(playerid)==PLAYER_STATE_DRIVER)) // Credits to zeruel_angel habe einwenig abgekupfert
  2531. {
  2532. if (GetVehicleModel(GetPlayerVehicleID(playerid)) == 525)
  2533. {
  2534. new veh =GetPlayerVehicleID(playerid);
  2535. if(IsTrailerAttachedToVehicle(veh))
  2536. {
  2537. SendClientMessage(playerid,0xFFFF00AA,"Lasse Auto herunter...");
  2538. DetachTrailerFromVehicle(GetPlayerVehicleID(playerid));
  2539. } else {
  2540. SendClientMessage(playerid,0xFFFF00AA,"Suche nach Auto zum anschleppen....");
  2541. new Float:pX,Float:pY,Float:pZ;
  2542. GetPlayerPos(playerid,pX,pY,pZ);
  2543. new Float:vX,Float:vY,Float:vZ;
  2544. new Found=0;
  2545. new vid=0;
  2546. while((vid<MAX_VEHICLES)&&(!Found))
  2547. {
  2548. vid++;
  2549. GetVehiclePos(vid,vX,vY,vZ);
  2550. if ((floatabs(pX-vX)<7.0)&&(floatabs(pY-vY)<7.0)&&(floatabs(pZ-vZ)<7.0)&&(vid!=GetPlayerVehicleID(playerid)))
  2551. {
  2552. Found=1;
  2553. if (IsTrailerAttachedToVehicle(GetPlayerVehicleID(playerid)))
  2554. {
  2555. DetachTrailerFromVehicle(GetPlayerVehicleID(playerid));
  2556. }
  2557. AttachTrailerToVehicle(vid,GetPlayerVehicleID(playerid));
  2558. SendClientMessage(playerid,0xFFFF00AA,"Auto Angehoben!");
  2559. new car = Dtdc_GetCarArrayId(vid);
  2560. if(car == -1)
  2561. {
  2562. SendClientMessage(playerid,0xFFFF00AA,"Info: Dies ist Kein Auto welches du mit /opark parken kannst!");
  2563. }
  2564. }
  2565. }
  2566. if (!Found)
  2567. {
  2568. SendClientMessage(playerid,0xFFFF00AA,"There is no car in range.");
  2569. }
  2570. }
  2571. }
  2572. }
  2573. }
  2574. return 1;
  2575. }
  2576.  
  2577. public OnPlayerUpdate(playerid)
  2578. {
  2579. if(Dtdc_Select == 0 && Dtdc_Player[playerid][IsInSeller] != MaxSeller +1 && (GetTickCount() - Dtdc_Player[playerid][LastTick]) >= 500 )
  2580. {
  2581. Dtdc_HandleLiveView(playerid); // Naja Grandlarc lässt grüßen xD Naja habe andere wege um a und d benutzen zu können versucht, doch nur der ging zu 100%
  2582. }
  2583. if(Dtdc_Player[playerid][IsInRespray] != MaxResprayer +1 && (GetTickCount() - Dtdc_Player[playerid][LastTick]) >= 250 )
  2584. {
  2585. Dtdc_HandleResprayer(playerid); // Naja Grandlarc lässt grüßen xD Naja habe andere wege um a und d benutzen zu können versucht, doch nur der ging zu 100%
  2586. }
  2587. return 1;
  2588. }
  2589.  
  2590. forward Dtdc_HandleResprayer(playerid);
  2591. public Dtdc_HandleResprayer(playerid)
  2592. {
  2593. if( (GetTickCount() - Dtdc_Player[playerid][LastTick]) < 250 ) return;
  2594. new string[200];
  2595. new Keys,ud,lr;
  2596. GetPlayerKeys(playerid,Keys,ud,lr);
  2597. //KEYS
  2598. if(Keys & KEY_FIRE) {
  2599. //setback
  2600. //Car
  2601. SetVehiclePos(Dtdc_Player[playerid][CarShow],Dtdc_Respray[Dtdc_Player[playerid][IsInRespray]][rPosX],Dtdc_Respray[Dtdc_Player[playerid][IsInRespray]][rPosY],Dtdc_Respray[Dtdc_Player[playerid][IsInRespray]][rPosZ]);
  2602. SetVehicleZAngle(Dtdc_Player[playerid][CarShow], Dtdc_Respray[Dtdc_Player[playerid][IsInRespray]][rRot]);
  2603. SetVehicleVirtualWorld(Dtdc_Player[playerid][CarShow],0);
  2604. LinkVehicleToInterior(Dtdc_Player[playerid][CarShow],0);
  2605. //player
  2606. SetPlayerPos(playerid,Dtdc_Respray[Dtdc_Player[playerid][IsInRespray]][rPosX],Dtdc_Respray[Dtdc_Player[playerid][IsInRespray]][rPosY],Dtdc_Respray[Dtdc_Player[playerid][IsInRespray]][rPosZ]+1.5);
  2607. SetPlayerInterior(playerid,0);
  2608. SetPlayerVirtualWorld(playerid, 0);
  2609. TogglePlayerControllable(playerid,1);
  2610. SetCameraBehindPlayer(playerid);
  2611. PutPlayerInVehicle(playerid,Dtdc_Player[playerid][CarShow],0);
  2612. new carid = Dtdc_GetCarArrayId(Dtdc_Player[playerid][CarShow]);
  2613. ChangeVehicleColor(Dtdc_Player[playerid][CarShow],Dtdc_Car[carid][cColor1],Dtdc_Car[carid][cColor2]);
  2614. Dtdc_Player[playerid][CarShow] = 0;
  2615.  
  2616. PlayerPlaySound(playerid, 1053, 0.0, 0.0, 0.0);//Abord Sound
  2617. Dtdc_Player[playerid][IsInRespray] = MaxResprayer +1;
  2618. Dtdc_Player[playerid][LastTick] = GetTickCount();
  2619. //textdraw
  2620. TextDrawHideForPlayer(playerid,Dtdc_Player[playerid][CarSpray][0]);
  2621. TextDrawHideForPlayer(playerid,Dtdc_Player[playerid][CarSpray][1]);
  2622. for(new i=0;i<3;i++){TextDrawHideForPlayer(playerid,Dtdc_ResprayTxt[i]);}
  2623. }
  2624. if(Keys & 16) {
  2625. if(GetPlayerMoney(playerid) < Dtdc_RsPreis)
  2626. {
  2627. format(string,sizeof(string)," Du hast nicht genug Geld! Du benötigst %d$!",Dtdc_RsPreis);
  2628. SendClientMessage(playerid,COLOR_GREY,string);
  2629. } else {
  2630. //setback
  2631. //Car
  2632. SetVehiclePos(Dtdc_Player[playerid][CarShow],Dtdc_Respray[Dtdc_Player[playerid][IsInRespray]][rPosX],Dtdc_Respray[Dtdc_Player[playerid][IsInRespray]][rPosY],Dtdc_Respray[Dtdc_Player[playerid][IsInRespray]][rPosZ]);
  2633. SetVehicleZAngle(Dtdc_Player[playerid][CarShow], Dtdc_Respray[Dtdc_Player[playerid][IsInRespray]][rRot]);
  2634. SetVehicleVirtualWorld(Dtdc_Player[playerid][CarShow],0);
  2635. LinkVehicleToInterior(Dtdc_Player[playerid][CarShow],0);
  2636. //player
  2637. SetPlayerPos(playerid,Dtdc_Respray[Dtdc_Player[playerid][IsInRespray]][rPosX],Dtdc_Respray[Dtdc_Player[playerid][IsInRespray]][rPosY],Dtdc_Respray[Dtdc_Player[playerid][IsInRespray]][rPosZ]+1.5);
  2638. SetPlayerInterior(playerid,0);
  2639. SetPlayerVirtualWorld(playerid, 0);
  2640. TogglePlayerControllable(playerid,1);
  2641. SetCameraBehindPlayer(playerid);
  2642. PutPlayerInVehicle(playerid,Dtdc_Player[playerid][CarShow],0);
  2643. new carid = Dtdc_GetCarArrayId(Dtdc_Player[playerid][CarShow]);
  2644. Dtdc_Car[carid][cColor1] = Dtdc_Player[playerid][CarColorSelect1];
  2645. Dtdc_Car[carid][cColor2] = Dtdc_Player[playerid][CarColorSelect2];
  2646. ChangeVehicleColor(Dtdc_Player[playerid][CarShow],Dtdc_Car[carid][cColor1],Dtdc_Car[carid][cColor2]);
  2647. Dtdc_Player[playerid][CarShow] = 0;
  2648.  
  2649. PlayerPlaySound(playerid, 1134, 0.0, 0.0, 0.0);//Respray Sound
  2650. GivePlayerMoney(playerid,-Dtdc_RsPreis);
  2651. Dtdc_Player[playerid][IsInRespray] = MaxResprayer +1;
  2652. Dtdc_Player[playerid][LastTick] = GetTickCount();
  2653. //textdraw
  2654. TextDrawHideForPlayer(playerid,Dtdc_Player[playerid][CarSpray][0]);
  2655. TextDrawHideForPlayer(playerid,Dtdc_Player[playerid][CarSpray][1]);
  2656. for(new i=0;i<3;i++){TextDrawHideForPlayer(playerid,Dtdc_ResprayTxt[i]);}
  2657. }
  2658. }
  2659. if(lr > 0)
  2660. { // right
  2661. Dtdc_Player[playerid][CarColorSelect1] ++;
  2662. if(Dtdc_Player[playerid][CarColorSelect1] > 255){Dtdc_Player[playerid][CarColorSelect1] = 0;}
  2663. if(Dtdc_Player[playerid][CarColorSelect2] > 255){Dtdc_Player[playerid][CarColorSelect2] = 0;}
  2664. ChangeVehicleColor(Dtdc_Player[playerid][CarShow],Dtdc_Player[playerid][CarColorSelect1],Dtdc_Player[playerid][CarColorSelect2]);
  2665. Dtdc_Player[playerid][LastTick] = GetTickCount();
  2666. //textdraw
  2667. format(string,sizeof(string),"Color 1: %d~n~Color 2: %d~n~Preis: %d$",Dtdc_Player[playerid][CarColorSelect1],Dtdc_Player[playerid][CarColorSelect2],Dtdc_RsPreis);
  2668. TextDrawHideForPlayer(playerid,Dtdc_Player[playerid][CarSpray][1]);
  2669. TextDrawSetString(Dtdc_Player[playerid][CarSpray][1],string);
  2670. TextDrawShowForPlayer(playerid,Dtdc_Player[playerid][CarSpray][1]);
  2671. }
  2672. else if(lr < 0)
  2673. {
  2674. Dtdc_Player[playerid][CarColorSelect1] --;
  2675. if(Dtdc_Player[playerid][CarColorSelect1] < 0){Dtdc_Player[playerid][CarColorSelect1] = 255;}
  2676. if(Dtdc_Player[playerid][CarColorSelect2] < 0){Dtdc_Player[playerid][CarColorSelect2] = 255;}
  2677. ChangeVehicleColor(Dtdc_Player[playerid][CarShow],Dtdc_Player[playerid][CarColorSelect1],Dtdc_Player[playerid][CarColorSelect2]);
  2678. Dtdc_Player[playerid][LastTick] = GetTickCount();
  2679. //textdraw
  2680. format(string,sizeof(string),"Color 1: %d~n~Color 2: %d~n~Preis: %d$",Dtdc_Player[playerid][CarColorSelect1],Dtdc_Player[playerid][CarColorSelect2],Dtdc_RsPreis);
  2681. TextDrawHideForPlayer(playerid,Dtdc_Player[playerid][CarSpray][1]);
  2682. TextDrawSetString(Dtdc_Player[playerid][CarSpray][1],string);
  2683. TextDrawShowForPlayer(playerid,Dtdc_Player[playerid][CarSpray][1]);
  2684. }
  2685. if(ud < 0) {//up
  2686. Dtdc_Player[playerid][CarColorSelect2] ++;
  2687. if(Dtdc_Player[playerid][CarColorSelect1] > 255){Dtdc_Player[playerid][CarColorSelect1] = 0;}
  2688. if(Dtdc_Player[playerid][CarColorSelect2] > 255){Dtdc_Player[playerid][CarColorSelect2] = 0;}
  2689. ChangeVehicleColor(Dtdc_Player[playerid][CarShow],Dtdc_Player[playerid][CarColorSelect1],Dtdc_Player[playerid][CarColorSelect2]);
  2690. Dtdc_Player[playerid][LastTick] = GetTickCount();
  2691. //textdraw
  2692. format(string,sizeof(string),"Color 1: %d~n~Color 2: %d~n~Preis: %d$",Dtdc_Player[playerid][CarColorSelect1],Dtdc_Player[playerid][CarColorSelect2],Dtdc_RsPreis);
  2693. TextDrawHideForPlayer(playerid,Dtdc_Player[playerid][CarSpray][1]);
  2694. TextDrawSetString(Dtdc_Player[playerid][CarSpray][1],string);
  2695. TextDrawShowForPlayer(playerid,Dtdc_Player[playerid][CarSpray][1]);
  2696. } else if(ud > 0) { //down
  2697. Dtdc_Player[playerid][CarColorSelect2] --;
  2698. if(Dtdc_Player[playerid][CarColorSelect1] < 0){Dtdc_Player[playerid][CarColorSelect1] = 255;}
  2699. if(Dtdc_Player[playerid][CarColorSelect2] < 0){Dtdc_Player[playerid][CarColorSelect2] = 255;}
  2700. ChangeVehicleColor(Dtdc_Player[playerid][CarShow],Dtdc_Player[playerid][CarColorSelect1],Dtdc_Player[playerid][CarColorSelect2]);
  2701. Dtdc_Player[playerid][LastTick] = GetTickCount();
  2702. //textdraw
  2703. format(string,sizeof(string),"Color 1: %d~n~Color 2: %d~n~Preis: %d$",Dtdc_Player[playerid][CarColorSelect1],Dtdc_Player[playerid][CarColorSelect2],Dtdc_RsPreis);
  2704. TextDrawHideForPlayer(playerid,Dtdc_Player[playerid][CarSpray][1]);
  2705. TextDrawSetString(Dtdc_Player[playerid][CarSpray][1],string);
  2706. TextDrawShowForPlayer(playerid,Dtdc_Player[playerid][CarSpray][1]);
  2707. }
  2708. }
  2709.  
  2710. forward Dtdc_HandleLiveView(playerid);
  2711. public Dtdc_HandleLiveView(playerid)
  2712. {
  2713. if( (GetTickCount() - Dtdc_Player[playerid][LastTick]) < 500 ) return;
  2714. new string[200];
  2715. new Keys,ud,lr;
  2716. GetPlayerKeys(playerid,Keys,ud,lr);
  2717. //KEYS
  2718. if(Keys & KEY_FIRE) {
  2719. new Float:px,Float:py,Float:pa;
  2720. px = Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconPosX];
  2721. py = Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconPosY];
  2722. pa = Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconRot];
  2723. GetXYInFrontOf(pa,px,py,2.5);
  2724. SetPlayerPos(playerid,px,py,Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconPosZ]);
  2725. SetPlayerFacingAngle(playerid,Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconRot]);
  2726. SetPlayerInterior(playerid,0);
  2727. SetCameraBehindPlayer(playerid);
  2728. TogglePlayerControllable(playerid,1);
  2729. SetPlayerVirtualWorld(playerid, 0);
  2730. Dtdc_Player[playerid][IsInSeller] = (MaxSeller+1);
  2731. CallRemoteFunction("PlayerDTDCSellerStateChange","dd",playerid,0);
  2732. TextDrawHideForPlayer(playerid,Dtdc_Player[playerid][CarKauf][0]);
  2733. TextDrawHideForPlayer(playerid,Dtdc_Player[playerid][CarKauf][1]);
  2734. for(new i=0;i<4;i++){TextDrawHideForPlayer(playerid,Dtdc_BuyTexte[i]);}
  2735. //CAR SHOW
  2736. if(Dtdc_Player[playerid][CarShow] !=0){DestroyVehicle(Dtdc_Player[playerid][CarShow]);Dtdc_Player[playerid][CarShow] = 0;}
  2737. Dtdc_Player[playerid][LastTick] = GetTickCount();
  2738. return;
  2739. }
  2740. if(Keys & 16) {
  2741. if(Dtdc_OnCarBuy(playerid,Dtdc_Player[playerid][IsInSeller],Dtdc_Player[playerid][CarSelect]))
  2742. {
  2743. new Float:px,Float:py,Float:pa;
  2744. px = Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconPosX];
  2745. py = Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconPosY];
  2746. pa = Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconRot];
  2747. GetXYInFrontOf(pa,px,py,2.5);
  2748. SetPlayerPos(playerid,px,py,Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconPosZ]);
  2749. SetPlayerFacingAngle(playerid,Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconRot]);
  2750. SetPlayerInterior(playerid,0);
  2751. SetCameraBehindPlayer(playerid);
  2752. TogglePlayerControllable(playerid,1);
  2753. SetPlayerVirtualWorld(playerid, 0);
  2754. Dtdc_Player[playerid][IsInSeller] = (MaxSeller+1);
  2755. CallRemoteFunction("PlayerDTDCSellerStateChange","dd",playerid,0);
  2756. TextDrawHideForPlayer(playerid,Dtdc_Player[playerid][CarKauf][0]);
  2757. TextDrawHideForPlayer(playerid,Dtdc_Player[playerid][CarKauf][1]);
  2758. for(new i=0;i<4;i++){TextDrawHideForPlayer(playerid,Dtdc_BuyTexte[i]);}
  2759. //CAR SHOW
  2760. if(Dtdc_Player[playerid][CarShow] !=0){DestroyVehicle(Dtdc_Player[playerid][CarShow]);Dtdc_Player[playerid][CarShow] = 0;}
  2761. }
  2762. Dtdc_Player[playerid][LastTick] = GetTickCount();
  2763. return;
  2764. }
  2765. if(lr > 0) { // right
  2766. Dtdc_Player[playerid][CarSelect] = 0;
  2767. Dtdc_Player[playerid][IsAtCar] ++;
  2768. if(Dtdc_Player[playerid][IsAtCar] >= Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sCars]){Dtdc_Player[playerid][IsAtCar] = 0;}
  2769. new plus = 0;
  2770. for(new i = 0; i < Dtdc_SCarsNum; i++)
  2771. {
  2772. if(Dtdc_SCars[i][scSeller] == Dtdc_Player[playerid][IsInSeller])
  2773. {
  2774. if(plus == Dtdc_Player[playerid][IsAtCar]) {Dtdc_Player[playerid][CarSelect] = i; break;}
  2775. plus++;
  2776. }
  2777. }
  2778. //SHOW CAR
  2779. if(Dtdc_Player[playerid][CarShow] !=0){DestroyVehicle(Dtdc_Player[playerid][CarShow]);Dtdc_Player[playerid][CarShow] = 0;}
  2780. Dtdc_Player[playerid][CarShow] = CreateVehicle(Dtdc_SCars[Dtdc_Player[playerid][CarSelect]][scModel],Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVCarPosX],Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVCarPosY],Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVCarPosZ],Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVCarRot],Dtdc_Player[playerid][CarColorSelect1],Dtdc_Player[playerid][CarColorSelect2],-1);
  2781. SetVehicleVirtualWorld(Dtdc_Player[playerid][CarShow],GetPlayerVirtualWorld(playerid));
  2782. //Textdraw
  2783. format(string,sizeof(string),"Name: %s~n~Kategorie: %s~n~Preis: ~g~%d$",Dtdc_CarName[Dtdc_SCars[Dtdc_Player[playerid][CarSelect]][scModel]-400],Dtdc_NameCat[Dtdc_SCars[Dtdc_Player[playerid][CarSelect]][scCat]],Dtdc_SCars[Dtdc_Player[playerid][CarSelect]][scPreis]);
  2784. if(!Dtdc_Player[playerid][CarKauf][0])
  2785. {
  2786. Dtdc_Player[playerid][CarKauf][0] = TextDrawCreate(20.000000,328.000000,Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sName]);
  2787. Dtdc_Player[playerid][CarKauf][1] = TextDrawCreate(11.000000,355.000000,string);
  2788. TextDrawAlignment(Dtdc_Player[playerid][CarKauf][0],0);
  2789. TextDrawAlignment(Dtdc_Player[playerid][CarKauf][1],0);
  2790. TextDrawBackgroundColor(Dtdc_Player[playerid][CarKauf][0],0x000000ff);
  2791. TextDrawBackgroundColor(Dtdc_Player[playerid][CarKauf][1],0x000000ff);
  2792. TextDrawFont(Dtdc_Player[playerid][CarKauf][0],0);
  2793. TextDrawLetterSize(Dtdc_Player[playerid][CarKauf][0],1.000000,2.299999);
  2794. TextDrawFont(Dtdc_Player[playerid][CarKauf][1],1);
  2795. TextDrawLetterSize(Dtdc_Player[playerid][CarKauf][1],0.499999,1.800000);
  2796. TextDrawColor(Dtdc_Player[playerid][CarKauf][0],0xffffffff);
  2797. TextDrawColor(Dtdc_Player[playerid][CarKauf][1],0xffffffff);
  2798. TextDrawSetOutline(Dtdc_Player[playerid][CarKauf][0],1);
  2799. TextDrawSetOutline(Dtdc_Player[playerid][CarKauf][1],1);
  2800. TextDrawSetProportional(Dtdc_Player[playerid][CarKauf][0],1);
  2801. TextDrawSetProportional(Dtdc_Player[playerid][CarKauf][1],1);
  2802. TextDrawSetShadow(Dtdc_Player[playerid][CarKauf][0],1);
  2803. TextDrawSetShadow(Dtdc_Player[playerid][CarKauf][1],1);
  2804. TextDrawShowForPlayer(playerid,Dtdc_Player[playerid][CarKauf][0]);
  2805. TextDrawShowForPlayer(playerid,Dtdc_Player[playerid][CarKauf][1]);
  2806. }
  2807. else
  2808. {
  2809. TextDrawHideForPlayer(playerid,Dtdc_Player[playerid][CarKauf][0]);
  2810. TextDrawSetString(Dtdc_Player[playerid][CarKauf][0],Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sName]);
  2811. TextDrawShowForPlayer(playerid,Dtdc_Player[playerid][CarKauf][0]);
  2812. TextDrawHideForPlayer(playerid,Dtdc_Player[playerid][CarKauf][1]);
  2813. TextDrawSetString(Dtdc_Player[playerid][CarKauf][1],string);
  2814. TextDrawShowForPlayer(playerid,Dtdc_Player[playerid][CarKauf][1]);
  2815. }
  2816. Dtdc_Player[playerid][LastTick] = GetTickCount();
  2817. return;
  2818. }
  2819. else if(lr < 0) {
  2820. Dtdc_Player[playerid][CarSelect] = 0;
  2821. Dtdc_Player[playerid][IsAtCar] --;
  2822. if(Dtdc_Player[playerid][IsAtCar] <0){Dtdc_Player[playerid][IsAtCar] = Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sCars]-1;}
  2823. new plus = 0;
  2824. for(new i = 0; i < Dtdc_SCarsNum; i++)
  2825. {
  2826. if(Dtdc_SCars[i][scSeller] == Dtdc_Player[playerid][IsInSeller])
  2827. {
  2828. if(plus == Dtdc_Player[playerid][IsAtCar]) {Dtdc_Player[playerid][CarSelect] = i; break;}
  2829. plus++;
  2830. }
  2831. }
  2832. //SHOW CAR
  2833. if(Dtdc_Player[playerid][CarShow] !=0){DestroyVehicle(Dtdc_Player[playerid][CarShow]);Dtdc_Player[playerid][CarShow] = 0;}
  2834. Dtdc_Player[playerid][CarShow] = CreateVehicle(Dtdc_SCars[Dtdc_Player[playerid][CarSelect]][scModel],Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVCarPosX],Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVCarPosY],Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVCarPosZ],Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVCarRot],Dtdc_Player[playerid][CarColorSelect1],Dtdc_Player[playerid][CarColorSelect2],-1);
  2835. SetVehicleVirtualWorld(Dtdc_Player[playerid][CarShow],GetPlayerVirtualWorld(playerid));
  2836. //Textdraw
  2837. format(string,sizeof(string),"Name: %s~n~Kategorie: %s~n~Preis: ~g~%d$",Dtdc_CarName[Dtdc_SCars[Dtdc_Player[playerid][CarSelect]][scModel]-400],Dtdc_NameCat[Dtdc_SCars[Dtdc_Player[playerid][CarSelect]][scCat]],Dtdc_SCars[Dtdc_Player[playerid][CarSelect]][scPreis]);
  2838. if(!Dtdc_Player[playerid][CarKauf][0])
  2839. {
  2840. Dtdc_Player[playerid][CarKauf][0] = TextDrawCreate(20.000000,328.000000,Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sName]);
  2841. Dtdc_Player[playerid][CarKauf][1] = TextDrawCreate(11.000000,355.000000,string);
  2842. TextDrawAlignment(Dtdc_Player[playerid][CarKauf][0],0);
  2843. TextDrawAlignment(Dtdc_Player[playerid][CarKauf][1],0);
  2844. TextDrawBackgroundColor(Dtdc_Player[playerid][CarKauf][0],0x000000ff);
  2845. TextDrawBackgroundColor(Dtdc_Player[playerid][CarKauf][1],0x000000ff);
  2846. TextDrawFont(Dtdc_Player[playerid][CarKauf][0],0);
  2847. TextDrawLetterSize(Dtdc_Player[playerid][CarKauf][0],1.000000,2.299999);
  2848. TextDrawFont(Dtdc_Player[playerid][CarKauf][1],1);
  2849. TextDrawLetterSize(Dtdc_Player[playerid][CarKauf][1],0.499999,1.800000);
  2850. TextDrawColor(Dtdc_Player[playerid][CarKauf][0],0xffffffff);
  2851. TextDrawColor(Dtdc_Player[playerid][CarKauf][1],0xffffffff);
  2852. TextDrawSetOutline(Dtdc_Player[playerid][CarKauf][0],1);
  2853. TextDrawSetOutline(Dtdc_Player[playerid][CarKauf][1],1);
  2854. TextDrawSetProportional(Dtdc_Player[playerid][CarKauf][0],1);
  2855. TextDrawSetProportional(Dtdc_Player[playerid][CarKauf][1],1);
  2856. TextDrawSetShadow(Dtdc_Player[playerid][CarKauf][0],1);
  2857. TextDrawSetShadow(Dtdc_Player[playerid][CarKauf][1],1);
  2858. TextDrawShowForPlayer(playerid,Dtdc_Player[playerid][CarKauf][0]);
  2859. TextDrawShowForPlayer(playerid,Dtdc_Player[playerid][CarKauf][1]);
  2860. }
  2861. else
  2862. {
  2863. TextDrawHideForPlayer(playerid,Dtdc_Player[playerid][CarKauf][0]);
  2864. TextDrawSetString(Dtdc_Player[playerid][CarKauf][0],Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sName]);
  2865. TextDrawShowForPlayer(playerid,Dtdc_Player[playerid][CarKauf][0]);
  2866. TextDrawHideForPlayer(playerid,Dtdc_Player[playerid][CarKauf][1]);
  2867. TextDrawSetString(Dtdc_Player[playerid][CarKauf][1],string);
  2868. TextDrawShowForPlayer(playerid,Dtdc_Player[playerid][CarKauf][1]);
  2869. }
  2870. Dtdc_Player[playerid][LastTick] = GetTickCount();
  2871. return;
  2872. }
  2873. if(ud < 0) {//up
  2874. if(Keys & KEY_CROUCH){Dtdc_Player[playerid][CarColorSelect2] ++;} else {Dtdc_Player[playerid][CarColorSelect1] ++;}
  2875. if(Dtdc_Player[playerid][CarColorSelect1] > 127){Dtdc_Player[playerid][CarColorSelect1] = 0;}
  2876. if(Dtdc_Player[playerid][CarColorSelect2] > 127){Dtdc_Player[playerid][CarColorSelect2] = 0;}
  2877. ChangeVehicleColor(Dtdc_Player[playerid][CarShow],Dtdc_Player[playerid][CarColorSelect1],Dtdc_Player[playerid][CarColorSelect2]);
  2878. Dtdc_Player[playerid][LastTick] = GetTickCount();
  2879. } else if(ud > 0) { //down
  2880. if(Keys & KEY_CROUCH){Dtdc_Player[playerid][CarColorSelect2] --;} else {Dtdc_Player[playerid][CarColorSelect1] --;}
  2881. if(Dtdc_Player[playerid][CarColorSelect1] < 0){Dtdc_Player[playerid][CarColorSelect1] = 127;}
  2882. if(Dtdc_Player[playerid][CarColorSelect2] < 0){Dtdc_Player[playerid][CarColorSelect2] = 127;}
  2883. ChangeVehicleColor(Dtdc_Player[playerid][CarShow],Dtdc_Player[playerid][CarColorSelect1],Dtdc_Player[playerid][CarColorSelect2]);
  2884. Dtdc_Player[playerid][LastTick] = GetTickCount();
  2885. }
  2886. }
  2887.  
  2888. forward Dtdc_InitLogCfgChanger(playerid);
  2889. public Dtdc_InitLogCfgChanger(playerid)
  2890. {
  2891. new string[500];
  2892. new AkDeakStr[2][15] = {"Aktiviert", "Deaktiviert"};
  2893. format(string, sizeof(string), "Alle Logs bearbeiten\nCarBuy.log (%s)\nReloadAllArrays.log (%s)\nDeleteFile.log (%s)\nSaveCar.log (%s)\nLoadCar.log (%s)\nMysql.log (%s)",AkDeakStr[Dtdc_Logs[0]],AkDeakStr[Dtdc_Logs[1]],AkDeakStr[Dtdc_Logs[2]],AkDeakStr[Dtdc_Logs[3]],AkDeakStr[Dtdc_Logs[4]],AkDeakStr[Dtdc_Logs[5]]);
  2894. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Log Configuration",string,"Change","Zurück");
  2895. Dtdc_Player[playerid][AdminDialog] = AdminLogCfgDia;
  2896. }
  2897.  
  2898. forward Dtdc_InitSpdCfgChanger(playerid);
  2899. public Dtdc_InitSpdCfgChanger(playerid)
  2900. {
  2901. new string[500];
  2902. new AkDeakStr[2][15] = {"Aktiviert", "Deaktiviert"};
  2903. format(string, sizeof(string), "Tankanzeige (%s)\nPosition (%s)\nText-Schatten (%s)",AkDeakStr[Dtdc_SpeedoTank],Dtdc_SpeedoPosi[Dtdc_SpeedoPos][speedoName],AkDeakStr[Dtdc_SpeedoShadow]);
  2904. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Speedo Configuration",string,"Change","Zurück");
  2905. Dtdc_Player[playerid][AdminDialog] = AdminSpdCfgDia;
  2906. }
  2907.  
  2908. forward Dtdc_InitOParkCfgChanger(playerid);
  2909. public Dtdc_InitOParkCfgChanger(playerid)
  2910. {
  2911. new string[500];
  2912. new AkDeakStr[2][15] = {"Aktiviert", "Deaktiviert"};
  2913. new State[3][15] = {"Deaktiviert", "Taste 2", "/tow"};
  2914. format(string, sizeof(string), "OPark-Sytem (%s)\nPreis ($%d)\nAbschlepper-Rate (%.2f%%)\nOPark-Position\nOPark-Position-Radius (%.2f)\nTowtruck (%s)",AkDeakStr[Dtdc_OPark],Dtdc_OParkPay,(Dtdc_OParkRate*100),Dtdc_OParkR,State[Dtdc_OParkTow]);
  2915. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Speedo Configuration",string,"Change","Zurück");
  2916. Dtdc_Player[playerid][AdminDialog] = AdminOPCfgDia;
  2917. }
  2918.  
  2919. forward Dtdc_InitSaveCfgChanger(playerid);
  2920. public Dtdc_InitSaveCfgChanger(playerid)
  2921. {
  2922. new string[500];
  2923. new AkDeakStr[2][15] = {"Aktiviert", "Deaktiviert"};
  2924. format(string, sizeof(string), "Load Health (%s)\nSave Virtual-World (%s)",AkDeakStr[Dtdc_LoadHealth],AkDeakStr[Dtdc_SaveVw]);
  2925. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Car-Save Configuration",string,"Change","Zurück");
  2926. Dtdc_Player[playerid][AdminDialog] = AdminSaveCfgDia;
  2927. }
  2928.  
  2929. forward Dtdc_InitCaLiCfgChanger(playerid);
  2930. public Dtdc_InitCaLiCfgChanger(playerid)
  2931. {
  2932. new string[500];
  2933. new AkDeakStr[2][15] = {"Aktiviert", "Deaktiviert"};
  2934. format(string, sizeof(string), "Carlist Command (%s)\nCar-Search (%s)\nCar-Sell (%s)",AkDeakStr[Dtdc_CmdCarList],AkDeakStr[Dtdc_CarListCarFind],AkDeakStr[Dtdc_CarListCarSell]);
  2935. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Car-Save Configuration",string,"Change","Zurück");
  2936. Dtdc_Player[playerid][AdminDialog] = AdminCaLiCfgDia;
  2937. }
  2938.  
  2939. forward Dtdc_InitAllgCfgChanger(playerid);
  2940. public Dtdc_InitAllgCfgChanger(playerid)
  2941. {
  2942. new string[500];
  2943. new LaStr[4][35] = {"Lock (normal)", "Alarm (Kaufbar)", "Alarm", "Lock (Spieler geht nicht zum Auto)"};
  2944. new AkDeakStr[2][15] = {"Aktiviert", "Deaktiviert"};
  2945. new AkDeakStr2[3][15] = {"Aktiviert", "Deaktiviert", "Lock On Buy"};
  2946. format(string, sizeof(string), "Lock Or Alarm (%s)\nLock/Alarm On Spawn (%s)\nPark Command (%s)\nCar Respawn (%d sek)",LaStr[Dtdc_LockOrAlarm],AkDeakStr2[Dtdc_LockAlarmOnSpawn],AkDeakStr[Dtdc_ParkCommand],Dtdc_ReSpawnSek);
  2947. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Allgemeine Configuration",string,"Change","Zurück");
  2948. Dtdc_Player[playerid][AdminDialog] = AdminAllgemeinCfgDia;
  2949. }
  2950. forward Dtdc_InitAuHaCfgChanger(playerid);
  2951. public Dtdc_InitAuHaCfgChanger(playerid)
  2952. {
  2953. new string[500];
  2954. new AkDeakStr[2][15] = {"Aktiviert", "Deaktiviert"};
  2955. new SelectStr[3][20] = {"Liveview", "Dialog", "Live Dialog"};
  2956. format(string, sizeof(string), "Select (%s)\nPut In Veh On Buy (%s)\nPickup-Id (%d)\nMapIcon-Id (%d)\nEasy Seller Create (%s)",SelectStr[Dtdc_Select],AkDeakStr[Dtdc_PutInVehOnBuy],Dtdc_Icon,Dtdc_MapIcon,AkDeakStr[Dtdc_EasySellerCreate]);
  2957. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Allgemeine Configuration",string,"Change","Zurück");
  2958. Dtdc_Player[playerid][AdminDialog] = AdminAutohausCfgDia;
  2959. }
  2960. forward Dtdc_InitReSpCfgChanger(playerid);
  2961. public Dtdc_InitReSpCfgChanger(playerid)
  2962. {
  2963. new string[500];
  2964. new AkDeakStr[2][15] = {"Aktiviert", "Deaktiviert"};
  2965. format(string, sizeof(string), "Resprayer (%s)\nPickup-Id (%d)\nMapIcon-Id (%d)\nPreis (%d$)",AkDeakStr[Dtdc_Resprayer],Dtdc_RsIcon,Dtdc_RsMapIcon,Dtdc_RsPreis);
  2966. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Resprayer Configuration",string,"Change","Zurück");
  2967. Dtdc_Player[playerid][AdminDialog] = AdminResprayerCfgDia;
  2968. }
  2969. forward Dtdc_InitTuCfgChanger(playerid);
  2970. public Dtdc_InitTuCfgChanger(playerid)
  2971. {
  2972. new string[500];
  2973. new AkDeakStr[2][15] = {"Aktiviert", "Deaktiviert"};
  2974. new AkDeakStr2[3][23] = {"Deaktiviert", "Tastendruck \"N\"", "/Neon"};
  2975. format(string, sizeof(string), "Tuner (%s)\nPickup-Id (%d)\nMapIcon-Id (%d)\nNeon-Preis (%d$)\nNummernschild-Preis (%d$)\nNeon Abschaltbar (%s)",AkDeakStr[Dtdc_Tuner],Dtdc_TuIcon,Dtdc_TuMapIcon,Dtdc_NeonPreis,Dtdc_NumplatePreis,AkDeakStr2[Dtdc_NeonOnOff]);
  2976. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Tuner Configuration",string,"Change","Zurück");
  2977. Dtdc_Player[playerid][AdminDialog] = AdminTunerCfgDia;
  2978. }
  2979. forward Dtdc_InitCfgChanger(playerid);
  2980. public Dtdc_InitCfgChanger(playerid)
  2981. {
  2982. new string[500];
  2983. new AkDeakStr[2][15] = {"Aktiviert", "Deaktiviert"};
  2984. format(string, sizeof(string), "Allgemeine Config\nAutohaus Config\nCar Speicherung\nSpeedo (%s)\nCar-List\nResprayer Config\nTuner Config\nO-Park (%s)",AkDeakStr[Dtdc_Speedo],AkDeakStr[Dtdc_OPark]);//
  2985. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Configuration",string,"Change","Zurück");
  2986. Dtdc_Player[playerid][AdminDialog] = AdminCfgDia;
  2987. }
  2988.  
  2989. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  2990. {
  2991. new string2[120];
  2992. new string[250];
  2993. new checker = 0;
  2994. switch(dialogid)
  2995. {
  2996. case AdminDia :
  2997. {
  2998. new newSellerstr[2][40] = {"Neues erstellen","Erstellung fortführen"};
  2999. if(response)
  3000. {
  3001. switch(Dtdc_Player[playerid][AdminDialog])
  3002. {
  3003. case AdminMainDia :
  3004. {
  3005. switch(listitem)
  3006. {
  3007. case 0 :
  3008. {
  3009. Dtdc_InitCfgChanger(playerid);
  3010. }
  3011. case 1 :
  3012. {
  3013. Dtdc_InitLogCfgChanger(playerid);
  3014. }
  3015. case 2 :
  3016. {
  3017. checker = 0;
  3018. if(Dtdc_Player[playerid][SellerStep] != 0) {checker = 1;}
  3019. format(string, sizeof(string), "Editieren\nLöschen\nAlle Löschen\n%s",newSellerstr[checker]);
  3020. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Autohaeuser:",string,"OK","Zurück");
  3021. Dtdc_Player[playerid][AdminDialog] = AdminSellerDia;
  3022. }
  3023. case 3:
  3024. {
  3025. checker = 0;
  3026. if(Dtdc_Player[playerid][ResprayerStep] != 0) {checker = 1;}
  3027. format(string, sizeof(string), "Editieren\nLöschen\nAlle Löschen\n%s",newSellerstr[checker]);
  3028. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Resprayer:",string,"OK","Zurück");
  3029. Dtdc_Player[playerid][AdminDialog] = AdminResprayerDia;
  3030. }
  3031. case 4:
  3032. {
  3033. checker = 0;
  3034. if(Dtdc_Player[playerid][TunerStep] != 0) {checker = 1;}
  3035. format(string, sizeof(string), "Editieren\nLöschen\nAlle Löschen\n%s",newSellerstr[checker]);
  3036. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Tuner:",string,"OK","Zurück");
  3037. Dtdc_Player[playerid][AdminDialog] = AdminTunerDia;
  3038. }
  3039. case 5 :
  3040. {
  3041. checker = Dtdc_Updater;
  3042. if(checker == 1)
  3043. {
  3044. Dtdc_CheckUpdates(playerid);
  3045. }
  3046. }
  3047. }
  3048. }
  3049. case AdminOPCfgDia:
  3050. {
  3051. switch(listitem)
  3052. {
  3053. case 0 : { ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Park Command:","Aktiviert\nDeaktiviert","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminOParkDia; }
  3054. case 1 : { ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,"Autofreikauf-Preis:","Bitte geben sie den Preis für das freikaufen eines Autos auf dem O-Amt Parkplatz ein.","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminOPPayCfgDia; }
  3055. case 2 : { ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,"Abschlepper-Rate:","Bitte geben sie eine Prozentzahl an (0-100%), die der Abschlepper von dem Freikaufpreis bekommen soll.","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminOPRateCfgDia; }
  3056. case 3 : { ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_MSGBOX,"OPark-Position:","Sollen die abgeschleppten Fahrzeuge nur hier im gebiet abgestellt werden können?","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminOPPosCfgDia; }
  3057. case 4 : { ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,"OPark-Radius:","Wie Groß soll der Radius sein, in dem die Fahrzeuge abgestellt werden können?\n0 bedeutet überall.","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminOPRadiCfgDia; }
  3058. case 5 : { ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Abscleppwagen/Towtruck:","Deaktiviert\nTaste 2\n/tow","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminOPTowCfgDia; }
  3059. }
  3060. }
  3061. case AdminOPPayCfgDia:
  3062. {
  3063. if(strlen(inputtext) == 0)
  3064. {
  3065. SendClientMessage(playerid,COLOR_GREY," Du musst einen Preis eingeben!");
  3066. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  3067. Dtdc_InitOParkCfgChanger(playerid);
  3068. return 1;
  3069. }
  3070. new Iconid= strval(inputtext);
  3071. if(Iconid < 0)
  3072. {
  3073. SendClientMessage(playerid,COLOR_GREY," Der Preis darf nicht unter 0$ sein!");
  3074. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  3075. Dtdc_InitOParkCfgChanger(playerid);
  3076. return 1;
  3077. }
  3078. Dtdc_OParkPay = Iconid; Dtdc_SaveConfig();
  3079. Dtdc_InitOParkCfgChanger(playerid);
  3080. }
  3081. case AdminOPRateCfgDia :
  3082. {
  3083. if(strlen(inputtext) == 0)
  3084. {
  3085. SendClientMessage(playerid,COLOR_GREY," Du musst eine Prozentzahl eingeben!");
  3086. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  3087. Dtdc_InitOParkCfgChanger(playerid);
  3088. return 1;
  3089. }
  3090. new Float:Iconid = floatstr(inputtext);
  3091. if(Iconid < 0 || Iconid > 100)
  3092. {
  3093. SendClientMessage(playerid,COLOR_GREY," Eine Prozentzahl geht von 0-100!");
  3094. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  3095. Dtdc_InitOParkCfgChanger(playerid);
  3096. return 1;
  3097. }
  3098. Iconid = Iconid /100;
  3099. Dtdc_OParkRate = Iconid; Dtdc_SaveConfig();
  3100. Dtdc_InitOParkCfgChanger(playerid);
  3101. }
  3102. case AdminOPRadiCfgDia:
  3103. {
  3104. if(strlen(inputtext) == 0)
  3105. {
  3106. SendClientMessage(playerid,COLOR_GREY," Du musst einen Radius eingeben!");
  3107. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  3108. Dtdc_InitOParkCfgChanger(playerid);
  3109. return 1;
  3110. }
  3111. new Float:Iconid= floatstr(inputtext);
  3112. if(Iconid < 0)
  3113. {
  3114. SendClientMessage(playerid,COLOR_GREY," Der Radius darf nicht unter 0 sein!");
  3115. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  3116. Dtdc_InitOParkCfgChanger(playerid);
  3117. return 1;
  3118. }
  3119. Dtdc_OParkR = Iconid; Dtdc_SaveConfig();
  3120. Dtdc_InitOParkCfgChanger(playerid);
  3121. }
  3122. case AdminOPPosCfgDia :
  3123. {
  3124. GetPlayerPos(playerid,Dtdc_OParkX,Dtdc_OParkY,Dtdc_OParkZ);
  3125. GetPlayerFacingAngle(playerid,Dtdc_OParkR);
  3126. SendClientMessage(playerid,COLOR_YELLOW," Die Neue OPark-Position wurde gespeichert!");
  3127. Dtdc_SaveConfig();
  3128. Dtdc_InitOParkCfgChanger(playerid);
  3129. }
  3130. case AdminLogCfgDia :
  3131. {
  3132. switch(listitem)
  3133. {
  3134. case 0 : {ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Alle Logs:","Aktivieren\nDeaktivieren\nBereinigen","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminAllLogDia;}
  3135. case 1 : {ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"CarBuy.log","Aktivieren\nDeaktivieren\nBereinigen","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminCbLogDia;}
  3136. case 2 : {ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"ReloadAllArrays.log","Aktivieren\nDeaktivieren\nBereinigen","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminRaaLogDia;}
  3137. case 3 : {ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"DeleteFile.log","Aktivieren\nDeaktivieren\nBereinigen","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminDfLogDia;}
  3138. case 4 : {ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"SaveCar.log","Aktivieren\nDeaktivieren\nBereinigen","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminScLogDia;}
  3139. case 5 : {ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"LoadCar.log","Aktivieren\nDeaktivieren\nBereinigen","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminLcLogDia;}
  3140. case 6 : {ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Mysql.log","Aktivieren\nDeaktivieren\nBereinigen","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminMsLogDia;}
  3141. }
  3142. }
  3143. case AdminAllLogDia:
  3144. {
  3145. if(listitem == 2)
  3146. {
  3147. for(new i=0;i<sizeof(Dtdc_Logs);i++)
  3148. {
  3149. Dtdc_ClearLog(i);
  3150. }
  3151. } else {
  3152. for(new i=0;i<sizeof(Dtdc_Logs);i++)
  3153. {
  3154. Dtdc_Logs[i] = listitem;
  3155. }
  3156. }
  3157. Dtdc_InitLogCfgChanger(playerid);
  3158. Dtdc_SaveLogConfig();
  3159. }
  3160. case AdminCbLogDia:
  3161. {
  3162. if(listitem == 2)
  3163. {
  3164. Dtdc_ClearLog(0);
  3165. } else {
  3166. Dtdc_Logs[0] = listitem;
  3167. }
  3168. Dtdc_InitLogCfgChanger(playerid);
  3169. Dtdc_SaveLogConfig();
  3170. }
  3171. case AdminRaaLogDia:
  3172. {
  3173. if(listitem == 2)
  3174. {
  3175. Dtdc_ClearLog(1);
  3176. } else {
  3177. Dtdc_Logs[1] = listitem;
  3178. }
  3179. Dtdc_InitLogCfgChanger(playerid);
  3180. Dtdc_SaveLogConfig();
  3181. }
  3182. case AdminDfLogDia:
  3183. {
  3184. if(listitem == 2)
  3185. {
  3186. Dtdc_ClearLog(2);
  3187. } else {
  3188. Dtdc_Logs[2] = listitem;
  3189. }
  3190. Dtdc_InitLogCfgChanger(playerid);
  3191. Dtdc_SaveLogConfig();
  3192. }
  3193. case AdminScLogDia:
  3194. {
  3195. if(listitem == 2)
  3196. {
  3197. Dtdc_ClearLog(3);
  3198. } else {
  3199. Dtdc_Logs[3] = listitem;
  3200. }
  3201. Dtdc_InitLogCfgChanger(playerid);
  3202. Dtdc_SaveLogConfig();
  3203. }
  3204. case AdminLcLogDia:
  3205. {
  3206. if(listitem == 2)
  3207. {
  3208. Dtdc_ClearLog(4);
  3209. } else {
  3210. Dtdc_Logs[4] = listitem;
  3211. }
  3212. Dtdc_InitLogCfgChanger(playerid);
  3213. Dtdc_SaveLogConfig();
  3214. }
  3215. case AdminMsLogDia:
  3216. {
  3217. if(listitem == 2)
  3218. {
  3219. Dtdc_ClearLog(5);
  3220. } else {
  3221. Dtdc_Logs[5] = listitem;
  3222. }
  3223. Dtdc_InitLogCfgChanger(playerid);
  3224. Dtdc_SaveLogConfig();
  3225. }
  3226. case AdminCaLiCfgDia :
  3227. {
  3228. switch(listitem)
  3229. {
  3230. case 0 : {ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Car-List Command:","Aktiviert\nDeaktiviert","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminCarListDia;}
  3231. case 1 : {ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Car-Search:","Aktiviert\nDeaktiviert","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminCarFindDia;}
  3232. case 2 : {ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Car-Sell:","Aktiviert\nDeaktiviert","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminCarSellDia;}
  3233. }
  3234. }
  3235. case AdminCarListDia : { Dtdc_CmdCarList = listitem; Dtdc_SaveConfig();Dtdc_InitCaLiCfgChanger(playerid);}
  3236. case AdminCarFindDia : { Dtdc_CarListCarFind = listitem; Dtdc_SaveConfig();Dtdc_InitCaLiCfgChanger(playerid);}
  3237. case AdminCarSellDia : { Dtdc_CarListCarSell = listitem; Dtdc_SaveConfig();Dtdc_InitCaLiCfgChanger(playerid);}
  3238. case AdminSaveCfgDia :
  3239. {
  3240. switch(listitem)
  3241. {
  3242. case 0 : {ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Load Health:","Aktiviert\nDeaktiviert","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminHealDia;}
  3243. case 1 : {ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Virtual-World Save:","Aktiviert\nDeaktiviert","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminVWDia;}
  3244. }
  3245. }
  3246. case AdminHealDia : { Dtdc_LoadHealth = listitem; Dtdc_SaveConfig();Dtdc_InitSaveCfgChanger(playerid);}
  3247. case AdminVWDia : { Dtdc_SaveVw = listitem; Dtdc_SaveConfig();Dtdc_InitSaveCfgChanger(playerid);}
  3248. case AdminAllgemeinCfgDia:
  3249. {
  3250. switch(listitem)
  3251. {
  3252. case 0 : {ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Lock Or Alarm:","Lock (Sa:Mp Schliessanlage)\nAlarm (Kaufbare Alarmanlage)\nAlarm (In jedem Wagen)\nLock (Spieler geht nicht zum Auto)","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminLoaDia;}
  3253. case 1 : {ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Lock/Alarm On Spawn:","Aktiviert\nDeaktiviert\nLock/Alarm beim Kaufen","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminLosDia;}
  3254. case 2 : {ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Park Command:","Aktiviert\nDeaktiviert","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminParkDia;}
  3255. case 3 : {format(string, sizeof(string), "Car Respawn (%d sek)",Dtdc_ReSpawnSek);ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,string,"Bitte geben sie die Sekundenanzahl an, nach dem ein Zerstörtes Auto wieder gespawnt werden soll!\n 0 = sofortiger respawn","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminCRTDia;}
  3256. }
  3257. }
  3258. case AdminAutohausCfgDia:
  3259. {
  3260. switch(listitem)
  3261. {
  3262. case 0 : {ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Car Select Type:","Liveview\nDialog\nLive Dialog","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminSelDia;}
  3263. case 1 : {ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Put In Veh On Buy:","Aktiviert\nDeaktiviert","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminPIVBDia;}
  3264. case 2 : {format(string, sizeof(string), "Pickup-Id (%d)",Dtdc_Icon);ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,string,"Bitte gebe deine Pickup-Modelid ein welche benutzt werden soll.\nBei einer nicht verfügbaren Id kann es zu Abstürzen kommen!","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminPickDia;}
  3265. case 3 : {format(string, sizeof(string), "MapIcon-Id (%d)",Dtdc_MapIcon);ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,string,"Bitte gebe deine MapIcon-Modelid ein welche benutzt werden soll.\nDie Id 0 deaktiviert alle MapIcons\nBei einer nicht verfügbaren Id kann es zu Abstürzen kommen!","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminMapDia;}
  3266. case 4 : {ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Easy Seller Create:","Aktiviert\nDeaktiviert","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminESCDia;}
  3267. }
  3268. }
  3269. case AdminTunerCfgDia:
  3270. {
  3271. switch(listitem)
  3272. {
  3273. case 0 : {ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Tuner Aktivierung:","Aktiviert\nDeaktiviert","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminTuSpDia;}
  3274. case 1 : {format(string, sizeof(string), "Pickup-Id (%d)",Dtdc_TuIcon);ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,string,"Bitte gebe deine Pickup-Modelid ein welche benutzt werden soll.\nBei einer nicht verfügbaren Id kann es zu Abstürzen kommen!","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminTuIconDia;}
  3275. case 2 : {format(string, sizeof(string), "MapIcon-Id (%d)",Dtdc_TuMapIcon);ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,string,"Bitte gebe deine MapIcon-Modelid ein welche benutzt werden soll.\nDie Id 0 deaktiviert alle MapIcons\nBei einer nicht verfügbaren Id kann es zu Abstürzen kommen!","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminTuMapDia;}
  3276. case 3 : {format(string, sizeof(string), "Neon-Preis (%d)",Dtdc_NeonPreis);ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,string,"Bitte gebe den Preis für die Neonlichter ein.","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminTuNPreisDia;}
  3277. case 4 : {format(string, sizeof(string), "Nummernschild-Preis (%d)",Dtdc_NumplatePreis);ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,string,"Bitte gebe den Preis für die Nummernschilder ein.","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminTuNPPreisDia;}
  3278. case 5 : {ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Neon Deaktivierbar:","Deaktivieren\nTastendruck \"N\"\nBefehl (/Neon)","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminTunerNeonOnDia;}
  3279. }
  3280. }
  3281. case AdminReSpDia:
  3282. {
  3283. Dtdc_Resprayer = listitem;
  3284. if(Dtdc_Resprayer == 0)
  3285. {
  3286. for(new sellerid = 0; sellerid<Dtdc_ResprayerNum; sellerid++)
  3287. {
  3288. Dtdc_CreateResprayer(sellerid);
  3289. }
  3290. } else {
  3291. for(new sellerid = 0; sellerid<Dtdc_ResprayerNum; sellerid++)
  3292. {
  3293. Dtdc_DestroyResprayer(sellerid);
  3294. }
  3295. }
  3296. Dtdc_SaveConfig();
  3297. Dtdc_InitReSpCfgChanger(playerid);
  3298. }
  3299. case AdminTuNPreisDia:
  3300. {
  3301. if(strlen(inputtext) == 0)
  3302. {
  3303. SendClientMessage(playerid,COLOR_GREY," Du musst einen Preis eingeben!");
  3304. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  3305. Dtdc_InitTuCfgChanger(playerid);
  3306. return 1;
  3307. }
  3308. new Iconid= strval(inputtext);
  3309. if(Iconid < 0)
  3310. {
  3311. SendClientMessage(playerid,COLOR_GREY," Der Preis darf nicht unter 0$ sein!");
  3312. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  3313. Dtdc_InitTuCfgChanger(playerid);
  3314. return 1;
  3315. }
  3316. Dtdc_NeonPreis = Iconid; Dtdc_SaveConfig();
  3317. Dtdc_InitTuCfgChanger(playerid);
  3318. }
  3319. case AdminTuNPPreisDia:
  3320. {
  3321. if(strlen(inputtext) == 0)
  3322. {
  3323. SendClientMessage(playerid,COLOR_GREY," Du musst einen Preis eingeben!");
  3324. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  3325. Dtdc_InitTuCfgChanger(playerid);
  3326. return 1;
  3327. }
  3328. new Iconid= strval(inputtext);
  3329. if(Iconid < 0)
  3330. {
  3331. SendClientMessage(playerid,COLOR_GREY," Der Preis darf nicht unter 0$ sein!");
  3332. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  3333. Dtdc_InitTuCfgChanger(playerid);
  3334. return 1;
  3335. }
  3336. Dtdc_NumplatePreis = Iconid; Dtdc_SaveConfig();
  3337. Dtdc_InitTuCfgChanger(playerid);
  3338. }
  3339. case AdminTuIconDia:
  3340. {
  3341. if(strlen(inputtext) == 0)
  3342. {
  3343. SendClientMessage(playerid,COLOR_GREY," Du musst eine ID eingeben!");
  3344. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  3345. Dtdc_InitTuCfgChanger(playerid);
  3346. return 1;
  3347. }
  3348. new Iconid= strval(inputtext);
  3349. if(Iconid != 1559 && Iconid > 1325 || Iconid < 1210)
  3350. {
  3351. SendClientMessage(playerid,COLOR_GREY," Diese Id ist laut Scriptking nicht verfügbar!");
  3352. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  3353. Dtdc_InitTuCfgChanger(playerid);
  3354. return 1;
  3355. }
  3356. Dtdc_TuIcon = Iconid; Dtdc_SaveConfig();
  3357. for(new i=0; i< Dtdc_TunerNum; i++)
  3358. {
  3359. Dtdc_DestroyTuner(i);
  3360. Dtdc_CreateTuner(i);
  3361. }
  3362. Dtdc_InitTuCfgChanger(playerid);
  3363. }
  3364. case AdminTuMapDia:
  3365. {
  3366. if(strlen(inputtext) == 0)
  3367. {
  3368. SendClientMessage(playerid,COLOR_GREY," Du musst eine ID eingeben!");
  3369. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  3370. Dtdc_InitTuCfgChanger(playerid);
  3371. return 1;
  3372. }
  3373. new Iconid= strval(inputtext);
  3374. if(Iconid > 63 || Iconid < 0)
  3375. {
  3376. SendClientMessage(playerid,COLOR_GREY," Diese Id ist laut Scriptking nicht verfügbar!");
  3377. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  3378. Dtdc_InitTuCfgChanger(playerid);
  3379. return 1;
  3380. }
  3381. Dtdc_RsMapIcon = Iconid; Dtdc_SaveConfig();
  3382. for(new i=0; i< Dtdc_TunerNum; i++)
  3383. {
  3384. Dtdc_DestroyTuner(i);
  3385. Dtdc_CreateTuner(i);
  3386. }
  3387. Dtdc_InitTuCfgChanger(playerid);
  3388. }
  3389. case AdminResprayerCfgDia:
  3390. {
  3391. switch(listitem)
  3392. {
  3393. case 0 : {ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Resprayer Aktivierung:","Aktiviert\nDeaktiviert","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminReSpDia;}
  3394. case 1 : {format(string, sizeof(string), "Pickup-Id (%d)",Dtdc_RsIcon);ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,string,"Bitte gebe deine Pickup-Modelid ein welche benutzt werden soll.\nBei einer nicht verfügbaren Id kann es zu Abstürzen kommen!","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminRsIconDia;}
  3395. case 2 : {format(string, sizeof(string), "MapIcon-Id (%d)",Dtdc_RsMapIcon);ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,string,"Bitte gebe deine MapIcon-Modelid ein welche benutzt werden soll.\nDie Id 0 deaktiviert alle MapIcons\nBei einer nicht verfügbaren Id kann es zu Abstürzen kommen!","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminRsMapDia;}
  3396. case 3 : {format(string, sizeof(string), "Preis (%d)",Dtdc_RsPreis);ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,string,"Bitte gebe den Preis fürs umsprayen ein.","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminRsPreisDia;}
  3397. }
  3398. }
  3399. case AdminTuSpDia:
  3400. {
  3401. Dtdc_Tuner = listitem;
  3402. if(Dtdc_Tuner == 0)
  3403. {
  3404. for(new sellerid = 0; sellerid<Dtdc_ResprayerNum; sellerid++)
  3405. {
  3406. Dtdc_CreateTuner(sellerid);
  3407. }
  3408. } else {
  3409. for(new sellerid = 0; sellerid<Dtdc_ResprayerNum; sellerid++)
  3410. {
  3411. Dtdc_DestroyTuner(sellerid);
  3412. }
  3413. }
  3414. Dtdc_SaveConfig();
  3415. Dtdc_InitTuCfgChanger(playerid);
  3416. }
  3417. case AdminTunerNeonOnDia:
  3418. {
  3419. Dtdc_NeonOnOff = listitem;
  3420. Dtdc_SaveConfig();
  3421. Dtdc_InitTuCfgChanger(playerid);
  3422. }
  3423. case AdminRsPreisDia:
  3424. {
  3425. if(strlen(inputtext) == 0)
  3426. {
  3427. SendClientMessage(playerid,COLOR_GREY," Du musst einen Preis eingeben!");
  3428. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  3429. Dtdc_InitReSpCfgChanger(playerid);
  3430. return 1;
  3431. }
  3432. new Iconid= strval(inputtext);
  3433. if(Iconid < 0)
  3434. {
  3435. SendClientMessage(playerid,COLOR_GREY," Der Preis darf nicht unter 0$ sein!");
  3436. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  3437. Dtdc_InitReSpCfgChanger(playerid);
  3438. return 1;
  3439. }
  3440. Dtdc_RsPreis = Iconid; Dtdc_SaveConfig();
  3441. Dtdc_InitReSpCfgChanger(playerid);
  3442. }
  3443. case AdminRsIconDia:
  3444. {
  3445. if(strlen(inputtext) == 0)
  3446. {
  3447. SendClientMessage(playerid,COLOR_GREY," Du musst eine ID eingeben!");
  3448. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  3449. Dtdc_InitReSpCfgChanger(playerid);
  3450. return 1;
  3451. }
  3452. new Iconid= strval(inputtext);
  3453. if(Iconid != 1559 && Iconid > 1325 || Iconid < 1210)
  3454. {
  3455. SendClientMessage(playerid,COLOR_GREY," Diese Id ist laut Scriptking nicht verfügbar!");
  3456. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  3457. Dtdc_InitReSpCfgChanger(playerid);
  3458. return 1;
  3459. }
  3460. Dtdc_RsIcon = Iconid; Dtdc_SaveConfig();
  3461. for(new i=0; i< Dtdc_ResprayerNum; i++)
  3462. {
  3463. Dtdc_DestroyResprayer(i);
  3464. Dtdc_CreateResprayer(i);
  3465. }
  3466. Dtdc_InitReSpCfgChanger(playerid);
  3467. }
  3468. case AdminRsMapDia:
  3469. {
  3470. if(strlen(inputtext) == 0)
  3471. {
  3472. SendClientMessage(playerid,COLOR_GREY," Du musst eine ID eingeben!");
  3473. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  3474. Dtdc_InitReSpCfgChanger(playerid);
  3475. return 1;
  3476. }
  3477. new Iconid= strval(inputtext);
  3478. if(Iconid > 63 || Iconid < 0)
  3479. {
  3480. SendClientMessage(playerid,COLOR_GREY," Diese Id ist laut Scriptking nicht verfügbar!");
  3481. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  3482. Dtdc_InitReSpCfgChanger(playerid);
  3483. return 1;
  3484. }
  3485. Dtdc_RsMapIcon = Iconid; Dtdc_SaveConfig();
  3486. for(new i=0; i< Dtdc_ResprayerNum; i++)
  3487. {
  3488. Dtdc_DestroyResprayer(i);
  3489. Dtdc_CreateResprayer(i);
  3490. }
  3491. Dtdc_InitReSpCfgChanger(playerid);
  3492. }
  3493. case AdminCfgDia :
  3494. {
  3495. switch(listitem)
  3496. {
  3497. case 0 : {Dtdc_InitAllgCfgChanger(playerid);}
  3498. case 1 : {Dtdc_InitAuHaCfgChanger(playerid);}
  3499. case 2 : {Dtdc_InitSaveCfgChanger(playerid);}
  3500. case 3 : {ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Speedo:","Aktiviert\nDeaktiviert\nWeitere Spedo Configuration","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminSpdDia;}
  3501. case 4 : {Dtdc_InitCaLiCfgChanger(playerid);}
  3502. case 5 : {Dtdc_InitReSpCfgChanger(playerid);}
  3503. case 6 : {Dtdc_InitTuCfgChanger(playerid);}
  3504. case 7 : {Dtdc_InitOParkCfgChanger(playerid);}
  3505. }
  3506. }
  3507. case AdminSelDia : { Dtdc_Select = listitem; Dtdc_SaveConfig();Dtdc_InitAuHaCfgChanger(playerid);}
  3508. case AdminLoaDia :
  3509. {
  3510. Dtdc_LockOrAlarm = listitem;
  3511. for(new c = 0; c <MaxVehicle;c++)
  3512. {
  3513. if(Dtdc_Car[c][cAktivated] == 1)
  3514. {
  3515. if(listitem != 0)
  3516. {
  3517. SetVehicleLock(Dtdc_Car[c][cCarId],0);
  3518. } else {
  3519. SetVehicleLock(Dtdc_Car[c][cCarId],Dtdc_Car[c][cLocked]);
  3520. }
  3521. if(listitem == 1)
  3522. {
  3523. if(Dtdc_Car[c][cAlarmBuyed] == 0 && Dtdc_Car[c][cLocked] == 1) { Dtdc_Car[c][cLocked] = 0; }
  3524. }
  3525. }
  3526. }
  3527. Dtdc_SaveConfig();
  3528. Dtdc_InitAllgCfgChanger(playerid);
  3529. }
  3530. case AdminLosDia : { Dtdc_LockAlarmOnSpawn = listitem; Dtdc_SaveConfig();Dtdc_InitAllgCfgChanger(playerid);}
  3531. case AdminParkDia : { Dtdc_ParkCommand = listitem; Dtdc_SaveConfig();Dtdc_InitAllgCfgChanger(playerid);}
  3532. case AdminOParkDia : { Dtdc_OPark = listitem; Dtdc_SaveConfig();Dtdc_InitOParkCfgChanger(playerid);}
  3533. case AdminOPTowCfgDia : { Dtdc_OParkTow = listitem; Dtdc_SaveConfig();Dtdc_InitOParkCfgChanger(playerid);}
  3534. case AdminPIVBDia : { Dtdc_PutInVehOnBuy = listitem; Dtdc_SaveConfig();Dtdc_InitAuHaCfgChanger(playerid);}
  3535. case AdminESCDia : { Dtdc_EasySellerCreate = listitem; Dtdc_SaveConfig();Dtdc_InitAuHaCfgChanger(playerid);}
  3536. case AdminCRTDia :
  3537. {
  3538. if(strlen(inputtext) == 0)
  3539. {
  3540. SendClientMessage(playerid,COLOR_GREY," Du musst eine Zeit eingeben!");
  3541. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  3542. Dtdc_InitCfgChanger(playerid);
  3543. return 1;
  3544. }
  3545. Dtdc_ReSpawnSek = strval(inputtext); Dtdc_SaveConfig();
  3546. Dtdc_InitAllgCfgChanger(playerid);
  3547. }
  3548. case AdminPickDia:
  3549. {
  3550. if(strlen(inputtext) == 0)
  3551. {
  3552. SendClientMessage(playerid,COLOR_GREY," Du musst eine ID eingeben!");
  3553. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  3554. Dtdc_InitCfgChanger(playerid);
  3555. return 1;
  3556. }
  3557. new Iconid= strval(inputtext);
  3558. if(Iconid != 1559 && Iconid > 1325 || Iconid < 1210)
  3559. {
  3560. SendClientMessage(playerid,COLOR_GREY," Diese Id ist laut Scriptking nicht verfügbar!");
  3561. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  3562. Dtdc_InitCfgChanger(playerid);
  3563. return 1;
  3564. }
  3565. Dtdc_Icon = Iconid; Dtdc_SaveConfig();
  3566. for(new i=0; i< Dtdc_SellerNum; i++)
  3567. {
  3568. Dtdc_DestroySeller(i);
  3569. Dtdc_CreateSeller(i);
  3570. }
  3571. Dtdc_InitAuHaCfgChanger(playerid);
  3572. }
  3573. case AdminMapDia:
  3574. {
  3575. if(strlen(inputtext) == 0)
  3576. {
  3577. SendClientMessage(playerid,COLOR_GREY," Du musst eine ID eingeben!");
  3578. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  3579. Dtdc_InitCfgChanger(playerid);
  3580. return 1;
  3581. }
  3582. new Iconid= strval(inputtext);
  3583. if(Iconid > 63 || Iconid < 0)
  3584. {
  3585. SendClientMessage(playerid,COLOR_GREY," Diese Id ist laut Scriptking nicht verfügbar!");
  3586. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  3587. Dtdc_InitCfgChanger(playerid);
  3588. return 1;
  3589. }
  3590. Dtdc_MapIcon = Iconid; Dtdc_SaveConfig();
  3591. for(new i=0; i< Dtdc_SellerNum; i++)
  3592. {
  3593. Dtdc_DestroySeller(i);
  3594. Dtdc_CreateSeller(i);
  3595. }
  3596. Dtdc_InitAuHaCfgChanger(playerid);
  3597. }
  3598. case AdminSpdDia :
  3599. {
  3600. if(listitem != 2)
  3601. {
  3602. if(Dtdc_Speedo == 0)
  3603. {
  3604. KillTimer(dtdc_Speedotimer); dtdc_SetSpeedoOff();
  3605. } else {
  3606. dtdc_Speedotimer = SetTimer("dtdc_Speedo",1004,1);
  3607. }
  3608. Dtdc_Speedo = listitem; Dtdc_SaveConfig();
  3609. Dtdc_InitCfgChanger(playerid);
  3610. } else {
  3611. Dtdc_InitSpdCfgChanger(playerid);
  3612. }
  3613. }
  3614. case AdminSpdCfgDia:
  3615. {
  3616. switch(listitem)
  3617. {
  3618. case 0 :{ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Speedo: Tankanzeige:","Aktiviert\nDeaktiviert","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminSpdTankCfgDia;}
  3619. case 1 :
  3620. {
  3621. for(new i = 0; i < sizeof(Dtdc_SpeedoPosi); i++)
  3622. {
  3623. if(i == 0){format(string, sizeof(string), "%s",Dtdc_SpeedoPosi[i][speedoName]);}
  3624. else {format(string, sizeof(string), "%s\n%s",string,Dtdc_SpeedoPosi[i][speedoName]);}
  3625. }
  3626. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Speedo: Position:",string,"OK","Zurück");
  3627. Dtdc_Player[playerid][AdminDialog] = AdminSpdPosiCfgDia;
  3628. }
  3629. case 2:{ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Speedo: Text-Schatten:","Aktiviert\nDeaktiviert","OK","Zurück"); Dtdc_Player[playerid][AdminDialog] = AdminSpdShCfgDia;}//Dtdc_SpeedoShadow
  3630. }
  3631. }
  3632. case AdminSpdTankCfgDia:{Dtdc_SpeedoTank = listitem;Dtdc_InitSpdCfgChanger(playerid);Dtdc_SaveConfig();}
  3633. case AdminSpdPosiCfgDia:{Dtdc_SpeedoPos = listitem;Dtdc_InitSpdCfgChanger(playerid);Dtdc_SaveConfig();}
  3634. case AdminSpdShCfgDia:{Dtdc_SpeedoShadow = listitem;Dtdc_InitSpdCfgChanger(playerid);Dtdc_SaveConfig();}
  3635. case AdminSellerDia:
  3636. {
  3637. switch(listitem)
  3638. {
  3639. case 0 :
  3640. {
  3641. if(Dtdc_SellerNum == 0){SendClientMessage(playerid,COLOR_GREY," Es sind noch keine Autohäuser verfügbar!"); return 1;}
  3642. Dtdc_Player[playerid][SellerSite] = 1;
  3643. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  3644. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  3645. new lastshow = 0;
  3646. for(new i = minshow; i <= maxshow && i < Dtdc_SellerNum; i++)
  3647. {
  3648. lastshow = i;
  3649. if(i == minshow){format(string, sizeof(string), "%s",Dtdc_Seller[i][sName]);}
  3650. else {format(string, sizeof(string), "%s\n%s",string,Dtdc_Seller[i][sName]);}
  3651. }
  3652. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  3653. if(lastshow < (Dtdc_SellerNum - 1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  3654. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Autohaus editieren",string,"Auswählen","Zurück");
  3655. Dtdc_Player[playerid][AdminDialog] = AdminSellerEditDia;
  3656. Dtdc_Player[playerid][SellerLastShow] =lastshow;
  3657. }
  3658. case 1 :
  3659. {
  3660. if(Dtdc_SellerNum == 0){SendClientMessage(playerid,COLOR_GREY," Es sind noch keine Autohäuser verfügbar!"); return 1;}
  3661. Dtdc_Player[playerid][SellerSite] = 1;
  3662. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  3663. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  3664. new lastshow = 0;
  3665. for(new i = minshow; i <= maxshow && i < Dtdc_SellerNum; i++)
  3666. {
  3667. lastshow = i;
  3668. if(i == minshow){format(string, sizeof(string), "%s",Dtdc_Seller[i][sName]);}
  3669. else {format(string, sizeof(string), "%s\n%s",string,Dtdc_Seller[i][sName]);}
  3670. }
  3671. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  3672. if(lastshow < (Dtdc_SellerNum - 1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  3673. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Autohaus löschen",string,"Löschen","Zurück");
  3674. Dtdc_Player[playerid][AdminDialog] = AdminSellerDelDia;
  3675. Dtdc_Player[playerid][SellerLastShow] =lastshow;
  3676. }
  3677. case 2 :
  3678. {
  3679. format(string2, sizeof(string2), " Autohäuser löschen",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  3680. format(string, sizeof(string), "Wollen sie wirklich alle %d Autohäuser, mit dazugehörigen Autos und Parkplätzen löschen?",Dtdc_SellerNum);
  3681. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_MSGBOX,string2,string,"Löschen","Zurück");
  3682. Dtdc_Player[playerid][AdminDialog] = AdminSellerDelAllDia;
  3683. }
  3684. case 3 :
  3685. {
  3686. switch(Dtdc_Player[playerid][SellerStep])
  3687. {
  3688. case 0:
  3689. {
  3690. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,"Neues Autohaus:","Name des Autohauses:","OK","Abbrechen");
  3691. Dtdc_Player[playerid][AdminDialog] = AdminSellerCreDia;
  3692. return 1;
  3693. }
  3694. case 1:
  3695. {
  3696. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_MSGBOX ,"Neues Autohaus:","Eingang des Autohauses:\nOk drücken wenn sie am Ort stehen, an dem der Eingang hin soll.","OK","Abbrechen");
  3697. Dtdc_Player[playerid][AdminDialog] = AdminSellerCreDia;
  3698. return 1;
  3699. }
  3700. case 2:
  3701. {
  3702. if(!IsPlayerInAnyVehicle(playerid))
  3703. {
  3704. SendClientMessage(playerid,COLOR_GREY," Du musst in einem Auto sein um die Car-Position beim Liveview/LiveDialog setzen zu können!");
  3705. return 1;
  3706. }
  3707. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_MSGBOX ,"Neues Autohaus:","Liveview Car Position:\nOk drücken wenn sie am Ort stehen, an dem das Auto beim Liveview/LiveDialog zu sehen sein soll.","OK","Abbrechen");
  3708. Dtdc_Player[playerid][AdminDialog] = AdminSellerCreDia;
  3709. return 1;
  3710. }
  3711. case 3:
  3712. {
  3713. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_MSGBOX ,"Neues Autohaus:","Liveview Kamera Position:\nOk drücken wenn sie am Ort stehen, an dem die Kamera beim Liveview/LiveDialog sein soll, die Kamera position wird Automatisch leicht erhöht.","OK","Abbrechen");
  3714. Dtdc_Player[playerid][AdminDialog] = AdminSellerCreDia;
  3715. return 1;
  3716. }
  3717. case 4:
  3718. {
  3719. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_MSGBOX ,"Neues Autohaus:","Liveview Player Position:\nOk drücken wenn sie am Ort stehen, an dem der Player beim Liveview/LiveDialog sein soll, am besten sollte er leicht hinter der Kamera stehen.","OK","Abbrechen");
  3720. Dtdc_Player[playerid][AdminDialog] = AdminSellerCreDia;
  3721. }
  3722. }
  3723. }
  3724. }
  3725. }
  3726. case AdminSellerDelAllDia:
  3727. {
  3728. new SellerNum = Dtdc_SellerNum;
  3729. for(new i=0; i< Dtdc_SellerNum; i++)
  3730. {
  3731. Dtdc_DeleteSeller(i);
  3732. Dtdc_Seller[i][sAktivated] = 0;
  3733. Dtdc_Seller[i][sSqlId] = 0;
  3734. Dtdc_DestroySeller(i);
  3735. }
  3736.  
  3737. Dtdc_SaveSeller();
  3738. Dtdc_LoadSeller();
  3739.  
  3740. for(new i=0; i< Dtdc_SParkNum; i++)
  3741. {
  3742. Dtdc_DeleteSPark(i);
  3743. Dtdc_SPark[i][spAktivated] = 0;
  3744. }
  3745. for(new i=0; i< Dtdc_SCarsNum; i++)
  3746. {
  3747. Dtdc_DeleteSCar(i);
  3748. Dtdc_SCars[i][scAktivated] = 0;
  3749. }
  3750.  
  3751. Dtdc_SaveSPark();
  3752. Dtdc_SaveSCars();
  3753.  
  3754. Dtdc_LoadSCars();
  3755. Dtdc_LoadSPark();
  3756.  
  3757. format(string, sizeof(string), "Alle %d Autohauser wurden mit allen Autos und Parkplätzen gelöscht!",SellerNum);
  3758. SendClientMessage(playerid,COLOR_YELLOW,string);
  3759.  
  3760. checker = 0;
  3761. if(Dtdc_Player[playerid][SellerStep] != 0) {checker = 1;}
  3762. format(string, sizeof(string), "Editieren\nLöschen\nAlle Löschen\n%s",newSellerstr[checker]);
  3763. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Autohaeuser:",string,"OK","Zurück");
  3764. Dtdc_Player[playerid][AdminDialog] = AdminSellerDia;
  3765. }
  3766. case AdminSellerDelDia:
  3767. {
  3768. if(Dtdc_Player[playerid][SellerSite] == 1 && listitem == 10){listitem=11;}
  3769. if(Dtdc_Player[playerid][SellerLastShow] == (Dtdc_SellerNum - 1) && listitem > (Dtdc_Player[playerid][SellerLastShow]-((10*Dtdc_Player[playerid][SellerSite])-10)))
  3770. {
  3771. listitem=10;
  3772. }
  3773. switch(listitem)
  3774. {
  3775. case 10 :
  3776. {
  3777. Dtdc_Player[playerid][SellerSite] --;
  3778. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  3779. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  3780. new lastshow = 0;
  3781. for(new i = minshow; i <= maxshow && i < Dtdc_SellerNum; i++)
  3782. {
  3783. lastshow = i;
  3784. if(i == minshow){format(string, sizeof(string), "%s",Dtdc_Seller[i][sName]);}
  3785. else {format(string, sizeof(string), "%s\n%s",string,Dtdc_Seller[i][sName]);}
  3786. }
  3787. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  3788. if(lastshow < (Dtdc_SellerNum - 1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  3789. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Autohaus löschen",string,"Löschen","Zurück");
  3790. Dtdc_Player[playerid][AdminDialog] = AdminSellerDelDia;
  3791. Dtdc_Player[playerid][SellerLastShow] =lastshow;
  3792. }
  3793. case 11 :
  3794. {
  3795. Dtdc_Player[playerid][SellerSite] ++;
  3796. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  3797. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  3798. new lastshow = 0;
  3799. for(new i = minshow; i <= maxshow && i < Dtdc_SellerNum; i++)
  3800. {
  3801. lastshow = i;
  3802. if(i == minshow){format(string, sizeof(string), "%s",Dtdc_Seller[i][sName]);}
  3803. else {format(string, sizeof(string), "%s\n%s",string,Dtdc_Seller[i][sName]);}
  3804. }
  3805. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  3806. if(lastshow < (Dtdc_SellerNum - 1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  3807. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Autohaus löschen",string,"Löschen","Zurück");
  3808. Dtdc_Player[playerid][AdminDialog] = AdminSellerDelDia;
  3809. Dtdc_Player[playerid][SellerLastShow] =lastshow;
  3810. }
  3811. default:
  3812. {
  3813. new delSeller = ((Dtdc_Player[playerid][SellerSite] *10)-10) +listitem;
  3814. Dtdc_DeleteSeller(delSeller);
  3815. Dtdc_Seller[delSeller][sAktivated] = 0;
  3816. Dtdc_Seller[delSeller][sSqlId] = 0;
  3817.  
  3818. for(new i = 0; i <Dtdc_SellerNum; i++)
  3819. {
  3820. Dtdc_DestroySeller(i);
  3821. }
  3822.  
  3823. Dtdc_SaveSeller();
  3824. Dtdc_LoadSeller();
  3825.  
  3826. for(new i = 0; i <Dtdc_SellerNum; i++)
  3827. {
  3828. Dtdc_CreateSeller(i);
  3829. }
  3830.  
  3831. for(new i=0; i< Dtdc_SParkNum; i++)
  3832. {
  3833. if(Dtdc_SPark[i][spSeller] == delSeller)
  3834. {
  3835. Dtdc_DeleteSPark(i);
  3836. Dtdc_SPark[i][spAktivated] = 0;
  3837. Dtdc_SPark[i][spSqlId] = 0;
  3838. } else if(Dtdc_SPark[i][spSeller] > delSeller){
  3839. Dtdc_SPark[i][spSeller] --;
  3840. }
  3841. }
  3842. for(new i=0; i< Dtdc_SCarsNum; i++)
  3843. {
  3844. if(Dtdc_SCars[i][scSeller] == delSeller)
  3845. {
  3846. Dtdc_DeleteSCar(i);
  3847. Dtdc_SCars[i][scAktivated] = 0;
  3848. Dtdc_SCars[i][scSqlId] = 0;
  3849. } else if(Dtdc_SCars[i][scSeller] > delSeller){
  3850. Dtdc_SCars[i][scSeller] --;
  3851. }
  3852. }
  3853.  
  3854. Dtdc_SaveSPark();
  3855. Dtdc_SaveSCars();
  3856.  
  3857. Dtdc_LoadSCars();
  3858. Dtdc_LoadSPark();
  3859.  
  3860. format(string, sizeof(string), "Autohaus (%s) wurde mit allen Autos und Parkplätzen gelöscht!",Dtdc_Seller[delSeller][sName]);
  3861. SendClientMessage(playerid,COLOR_YELLOW,string);
  3862.  
  3863. checker = 0;
  3864. if(Dtdc_Player[playerid][SellerStep] != 0) {checker = 1;}
  3865. format(string, sizeof(string), "Editieren\nLöschen\nAlle Löschen\n%s",newSellerstr[checker]);
  3866. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Autohaeuser:",string,"OK","Zurück");
  3867. Dtdc_Player[playerid][AdminDialog] = AdminSellerDia;
  3868.  
  3869. }
  3870. }
  3871. }
  3872. case AdminSellerEditDia:
  3873. {
  3874. if(Dtdc_Player[playerid][SellerSite] == 1 && listitem == 10){listitem=11;}
  3875. if(Dtdc_Player[playerid][SellerLastShow] == (Dtdc_SellerNum - 1) && listitem > (Dtdc_Player[playerid][SellerLastShow]-((10*Dtdc_Player[playerid][SellerSite])-10)))
  3876. {
  3877. listitem=10;
  3878. }
  3879. switch(listitem)
  3880. {
  3881. case 10 :
  3882. {
  3883. Dtdc_Player[playerid][SellerSite] --;
  3884. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  3885. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  3886. new lastshow = 0;
  3887. for(new i = minshow; i <= maxshow && i < Dtdc_SellerNum; i++)
  3888. {
  3889. lastshow = i;
  3890. if(i == minshow){format(string, sizeof(string), "%s",Dtdc_Seller[i][sName]);}
  3891. else {format(string, sizeof(string), "%s\n%s",string,Dtdc_Seller[i][sName]);}
  3892. }
  3893. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  3894. if(lastshow < (Dtdc_SellerNum - 1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  3895. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Autohaus editieren",string,"Auswählen","Zurück");
  3896. Dtdc_Player[playerid][AdminDialog] = AdminSellerEditDia;
  3897. Dtdc_Player[playerid][SellerLastShow] =lastshow;
  3898. }
  3899. case 11 :
  3900. {
  3901. Dtdc_Player[playerid][SellerSite] ++;
  3902. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  3903. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  3904. new lastshow = 0;
  3905. for(new i = minshow; i <= maxshow && i < Dtdc_SellerNum; i++)
  3906. {
  3907. lastshow = i;
  3908. if(i == minshow){format(string, sizeof(string), "%s",Dtdc_Seller[i][sName]);}
  3909. else {format(string, sizeof(string), "%s\n%s",string,Dtdc_Seller[i][sName]);}
  3910. }
  3911. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  3912. if(lastshow < (Dtdc_SellerNum - 1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  3913. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Autohaus editieren",string,"Auswählen","Zurück");
  3914. Dtdc_Player[playerid][AdminDialog] = AdminSellerEditDia;
  3915. Dtdc_Player[playerid][SellerLastShow] =lastshow;
  3916. }
  3917. default:
  3918. {
  3919. Dtdc_Player[playerid][editSeller] = ((Dtdc_Player[playerid][SellerSite] *10)-10) +listitem;
  3920. format(string, sizeof(string), "Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  3921. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Namen editieren\nPositionen editieren\nParkplaetze editieren\nVerkaufs-Autos editieren\nAutohaus-Config","Auswählen","Zurück");
  3922. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarEditDia;
  3923. }
  3924. }
  3925. }
  3926. case AdminSellerCarEditDia:
  3927. {
  3928. switch(listitem)
  3929. {
  3930. case 0:
  3931. {
  3932. format(string2, sizeof(string2), " Name von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  3933. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,string2,"Bitte lege den neuen Namen fest!","Speichern","Zurück");
  3934. Dtdc_Player[playerid][AdminDialog] = AdminSellerRenameDia;
  3935. }
  3936. case 1:
  3937. {
  3938. format(string2, sizeof(string2), " Positionen von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  3939. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string2,"Eingang-Position setzen\nLiveview Car-Position setzen\nLiveview Cam-Position setzen\nLiveview Player-Position setzen","Auswählen","Zurück");
  3940. Dtdc_Player[playerid][AdminDialog] = AdminSellerEditPosDia;
  3941. }
  3942. case 2:
  3943. {
  3944. format(string, sizeof(string), " Parkplätze von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  3945. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Alle Parkplätze löschen\nParkplatz Hinzufügen","Auswählen","Zurück");
  3946. Dtdc_Player[playerid][AdminDialog] = AdminSellerParkSelDia;
  3947. }
  3948. case 3:
  3949. {
  3950. format(string, sizeof(string), " Autos von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  3951. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Auto-Preis editieren\nAuto loeschen\nAlle Autos löschen\nAuto Hinzufügen","Auswählen","Zurück");
  3952. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarNewDia;
  3953. }
  3954. case 4:
  3955. {
  3956. format(string, sizeof(string), " Config von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  3957. new strt[100];
  3958. format(strt, sizeof(strt), "Autohaus-Spielertyp (%d)",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sPlayerTyp]);
  3959. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,strt,"Auswählen","Zurück");
  3960. Dtdc_Player[playerid][AdminDialog] = AdminSellerCfgDia;
  3961. }
  3962. }
  3963. }
  3964. case AdminSellerCfgDia:
  3965. {
  3966. switch(listitem)
  3967. {
  3968. case 0:
  3969. {
  3970. format(string2, sizeof(string2), " Spielertyp von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  3971. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,string2,"Bitte lege den neuen Spielertypen fest! (0=Alle Spieler)","Speichern","Zurück");
  3972. Dtdc_Player[playerid][AdminDialog] = AdminSellerCfgTypDia;
  3973. }
  3974. }
  3975. }
  3976. case AdminSellerCfgTypDia:
  3977. {
  3978. if(strlen(inputtext) == 0)
  3979. {
  3980. SendClientMessage(playerid,COLOR_GREY," Du musst einen Spielertypen angeben (0=Alle Spieler)!");
  3981. Dtdc_Player[playerid][SellerStep] = 0;
  3982. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  3983.  
  3984. format(string2, sizeof(string2), " Spielertyp von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  3985. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,string2,"Bitte lege den neuen Spielertypen fest! (0=Alle Spieler)","Speichern","Zurück");
  3986. Dtdc_Player[playerid][AdminDialog] = AdminSellerCfgTypDia;
  3987. return 1;
  3988. }
  3989. new ntyp = strval(inputtext);
  3990. format(string, sizeof(string), " Der Spielertyp (%d) wurde gespeichert!",ntyp);
  3991. Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sPlayerTyp]=ntyp;
  3992. SendClientMessage(playerid,COLOR_YELLOW,string);
  3993. Dtdc_SaveSeller();
  3994. }
  3995. case AdminSellerEditPosDia:
  3996. {
  3997. switch(listitem)
  3998. {
  3999. case 0://Icon
  4000. {
  4001. format(string2, sizeof(string2), " Eingang von Autohaus (%s) setzen",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4002. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_MSGBOX ,string2,"Eingang des Autohauses:\nOk drücken wenn sie am Ort stehen, an dem der Eingang hin soll.","OK","Zurück");
  4003. Dtdc_Player[playerid][AdminDialog] = AdminSellerEditPosICDia;
  4004. Dtdc_SaveSeller();
  4005. }
  4006. case 1://LV Car
  4007. {
  4008. if(!IsPlayerInAnyVehicle(playerid))
  4009. {
  4010. SendClientMessage(playerid,COLOR_GREY," Du musst in einem Auto sein um die Car-Position beim Liveview/LiveDialog setzen zu können!");
  4011. format(string2, sizeof(string2), " Positionen von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4012. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string2,"Eingang-Position setzen\nLiveview Car-Position setzen\nLiveview Cam-Position setzen\nLiveview Player-Position setzen","Auswählen","Zurück");
  4013. Dtdc_Player[playerid][AdminDialog] = AdminSellerEditPosDia;
  4014. return 1;
  4015. }
  4016. format(string2, sizeof(string2), " Liveview Car-Position von Autohaus (%s) setzen",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4017. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_MSGBOX ,string2,"Liveview Car Position:\nOk drücken wenn sie am Ort stehen, an dem das Auto beim Liveview/LiveDialog zu sehen sein soll.","OK","Zurück");
  4018. Dtdc_Player[playerid][AdminDialog] = AdminSellerEditPosLCDia;
  4019. Dtdc_SaveSeller();
  4020. }
  4021. case 2://LV Cam
  4022. {
  4023. format(string2, sizeof(string2), " Liveview Kamera-Position von Autohaus (%s) setzen",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4024. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_MSGBOX ,string2,"Liveview Kamera Position:\nOk drücken wenn sie am Ort stehen, an dem die Kamera beim Liveview/LiveDialog sein soll, die Kamera position wird Automatisch leicht erhöht.","OK","Zurück");
  4025. Dtdc_Player[playerid][AdminDialog] = AdminSellerEditPosCADia;
  4026. Dtdc_SaveSeller();
  4027. }
  4028. case 3://LV Player
  4029. {
  4030. format(string2, sizeof(string2), " Liveview Player-Position von Autohaus (%s) setzen",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4031. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_MSGBOX ,string2,"Liveview Player Position:\nOk drücken wenn sie am Ort stehen, an dem der Player beim Liveview/LiveDialog sein soll, am besten sollte er leicht hinter der Kamera stehen.","OK","Zurück");
  4032. Dtdc_Player[playerid][AdminDialog] = AdminSellerEditPosPLDia;
  4033. Dtdc_SaveSeller();
  4034. }
  4035. }
  4036. }
  4037. case AdminSellerEditPosICDia:
  4038. {
  4039. GetPlayerPos(playerid,Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sIconPosX],Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sIconPosY],Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sIconPosZ]);
  4040. GetPlayerFacingAngle(playerid, Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sIconRot]);
  4041. SendClientMessage(playerid,COLOR_YELLOW," Der neue Eingang wurde gespeichert!");
  4042. Dtdc_DestroySeller(Dtdc_Player[playerid][editSeller]);
  4043. Dtdc_CreateSeller(Dtdc_Player[playerid][editSeller]);
  4044.  
  4045. format(string2, sizeof(string2), " Positionen von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4046. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string2,"Eingang-Position setzen\nLiveview Car-Position setzen\nLiveview Cam-Position setzen\nLiveview Player-Position setzen","Auswählen","Zurück");
  4047. Dtdc_Player[playerid][AdminDialog] = AdminSellerEditPosDia;
  4048. Dtdc_SaveSeller();
  4049. return 1;
  4050. }
  4051. case AdminSellerEditPosLCDia:
  4052. {
  4053. if(!IsPlayerInAnyVehicle(playerid))
  4054. {
  4055. SendClientMessage(playerid,COLOR_GREY," Du musst in einem Auto sein um die Car-Position beim Liveview/LiveDialog setzen zu können!");
  4056. format(string2, sizeof(string2), " Positionen von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4057. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string2,"Eingang-Position setzen\nLiveview Car-Position setzen\nLiveview Cam-Position setzen\nLiveview Player-Position setzen","Auswählen","Zurück");
  4058. Dtdc_Player[playerid][AdminDialog] = AdminSellerEditPosDia;
  4059. return 1;
  4060. }
  4061. GetVehiclePos(GetPlayerVehicleID(playerid),Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sLVCarPosX],Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sLVCarPosY],Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sLVCarPosZ]);
  4062. GetVehicleZAngle(GetPlayerVehicleID(playerid), Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sLVCarRot]);
  4063. SendClientMessage(playerid,COLOR_YELLOW," Die neue Car-Position beim Liveview/LiveDialog wurde gespeichert!");
  4064.  
  4065. format(string2, sizeof(string2), " Positionen von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4066. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string2,"Eingang-Position setzen\nLiveview Car-Position setzen\nLiveview Cam-Position setzen\nLiveview Player-Position setzen","Auswählen","Zurück");
  4067. Dtdc_Player[playerid][AdminDialog] = AdminSellerEditPosDia;
  4068. Dtdc_SaveSeller();
  4069. return 1;
  4070. }
  4071. case AdminSellerEditPosCADia:
  4072. {
  4073. GetPlayerPos(playerid,Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sLVCamPosX],Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sLVCamPosY],Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sLVCamPosZ]);
  4074. Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sLVCamPosZ] = Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sLVCamPosZ]+2;
  4075. SendClientMessage(playerid,COLOR_YELLOW," Die neue Kamera-Position beim Liveview/LiveDialog wurde gespeichert!");
  4076.  
  4077. format(string2, sizeof(string2), " Positionen von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4078. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string2,"Eingang-Position setzen\nLiveview Car-Position setzen\nLiveview Cam-Position setzen\nLiveview Player-Position setzen","Auswählen","Zurück");
  4079. Dtdc_Player[playerid][AdminDialog] = AdminSellerEditPosDia;
  4080. Dtdc_SaveSeller();
  4081. return 1;
  4082. }
  4083. case AdminSellerEditPosPLDia:
  4084. {
  4085. GetPlayerPos(playerid,Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sLVPlyPosX],Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sLVPlyPosY],Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sLVPlyPosZ]);
  4086. SendClientMessage(playerid,COLOR_YELLOW," Die neue Player-Position beim Liveview/LiveDialog wurde gespeichert!");
  4087.  
  4088. format(string2, sizeof(string2), " Positionen von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4089. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string2,"Eingang-Position setzen\nLiveview Car-Position setzen\nLiveview Cam-Position setzen\nLiveview Player-Position setzen","Auswählen","Zurück");
  4090. Dtdc_Player[playerid][AdminDialog] = AdminSellerEditPosDia;
  4091. Dtdc_SaveSeller();
  4092. return 1;
  4093. }
  4094. case AdminSellerRenameDia:
  4095. {
  4096. if(strlen(inputtext) == 0)
  4097. {
  4098. SendClientMessage(playerid,COLOR_GREY," Ein Autohaus kann keinen lerren Namen haben!");
  4099. Dtdc_Player[playerid][SellerStep] = 0;
  4100. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  4101.  
  4102. format(string, sizeof(string), "Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4103. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Namen editieren\nPositionen editieren\nParkplaetze editieren\nVerkaufs-Autos editieren","Auswählen","Zurück");
  4104. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarEditDia;
  4105. return 1;
  4106. }
  4107. if(strlen(inputtext) >= 40)
  4108. {
  4109. SendClientMessage(playerid,COLOR_GREY," Der Name darf Maximal 40 Zeichen lang sein!");
  4110. Dtdc_Player[playerid][SellerStep] = 0;
  4111. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  4112. return 1;
  4113. }
  4114. format(Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName],40,inputtext);
  4115. format(string, sizeof(string), " Der Name (%s) wurde gespeichert!",inputtext);
  4116. SendClientMessage(playerid,COLOR_YELLOW,string);
  4117. Dtdc_SaveSeller();
  4118. }
  4119. case AdminSellerParkSelDia:
  4120. {
  4121. switch(listitem)
  4122. {
  4123. case 0:
  4124. {
  4125. format(string2, sizeof(string2), " Parkplätze von Autohaus (%s) löschen",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4126. format(string, sizeof(string), "Wollen sie wirklich alle %d Parkplätze löschen?",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sPark]);
  4127. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_MSGBOX,string2,string,"Löschen","Zurück");
  4128. Dtdc_Player[playerid][AdminDialog] = AdminSellerParkDelAllDia;
  4129. }
  4130. case 1:
  4131. {
  4132. if(!IsPlayerInAnyVehicle(playerid)){SendClientMessage(playerid,COLOR_GREY," Du musst mit einem Fahrzeug am Ort stehen wo du ein Parkplatz hinzufügen willst!"); return 1;}
  4133. format(string2, sizeof(string2), " Parkplatz zu Autohaus (%s) hinzufügen",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4134. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_MSGBOX,string2,"Möchten sie wirklich ein Parkplatz an der Anktuellen Position hinzufügen?","Hizufügen","Zurück");
  4135. Dtdc_Player[playerid][AdminDialog] = AdminSellerParkNewDia;
  4136. }
  4137. }
  4138. }
  4139. case AdminSellerParkDelAllDia:
  4140. {
  4141. for(new i=0; i< Dtdc_SParkNum; i++)
  4142. {
  4143. if(Dtdc_SPark[i][spSeller] == Dtdc_Player[playerid][editSeller])
  4144. {
  4145. Dtdc_DeleteSPark(i);
  4146. Dtdc_SPark[i][spAktivated] = 0;
  4147. Dtdc_SPark[i][spSqlId] = 0;
  4148. }
  4149. }
  4150. format(string2, sizeof(string2), " Es wurden alle %d Parkplätze aus dem Autohaus (%s) gelöscht!",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sPark],Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4151. SendClientMessage(playerid,COLOR_YELLOW,string2);
  4152. Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sPark] --;
  4153. Dtdc_SaveSPark();
  4154. Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sPark] = 0;
  4155. Dtdc_LoadSPark();
  4156.  
  4157. format(string, sizeof(string), " Parkplätze von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4158. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Alle Parkplätze löschen\nParkplatz Hinzufügen","Auswählen","Zurück");
  4159. Dtdc_Player[playerid][AdminDialog] = AdminSellerParkSelDia;
  4160. }
  4161. case AdminSellerParkNewDia:
  4162. {
  4163. if(!IsPlayerInAnyVehicle(playerid)){SendClientMessage(playerid,COLOR_GREY," Du musst mit einem Fahrzeug am Ort stehen wo du ein Parkplatz hinzufügen willst!"); return 1;}
  4164. new veh = GetPlayerVehicleID(playerid);
  4165.  
  4166. GetVehiclePos(veh,Dtdc_SPark[Dtdc_SParkNum][spPosX],Dtdc_SPark[Dtdc_SParkNum][spPosY],Dtdc_SPark[Dtdc_SParkNum][spPosZ]);
  4167. GetVehicleZAngle(veh,Dtdc_SPark[Dtdc_SParkNum][spRotZ]);
  4168. Dtdc_SPark[Dtdc_SParkNum][spSeller] = Dtdc_Player[playerid][editSeller];
  4169. Dtdc_SPark[Dtdc_SParkNum][spAktivated] = 1;
  4170. Dtdc_SPark[Dtdc_SParkNum][spSellerSql] = Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sSqlId];
  4171.  
  4172. Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sPark] ++;
  4173. Dtdc_SParkNum ++;
  4174.  
  4175. Dtdc_SaveSPark();
  4176.  
  4177. format(string2, sizeof(string2), " Parkplatz zu Autohaus (%s) hinzugefügt!",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4178. SendClientMessage(playerid,COLOR_YELLOW,string2);
  4179.  
  4180. format(string, sizeof(string), " Parkplätze von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4181. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Alle Parkplätze löschen\nParkplatz Hinzufügen","Auswählen","Zurück");
  4182. Dtdc_Player[playerid][AdminDialog] = AdminSellerParkSelDia;
  4183. }
  4184. case AdminSellerCarNewDia:
  4185. {
  4186. switch(listitem)
  4187. {
  4188. case 0:
  4189. {
  4190. if(Dtdc_SCarsNum == 0){SendClientMessage(playerid,COLOR_GREY," Es sind keine Autos in diesem Autohaus!"); return 1;}
  4191. format(string2, sizeof(string2), " Auto von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4192. Dtdc_Player[playerid][SellerSite] = 1;
  4193. Dtdc_Player[playerid][SellerLastShow] = 0;
  4194. Dtdc_Player[playerid][SellerRLastShow] = 0;
  4195. Dtdc_Player[playerid][SellerRLastShow2] = 0;
  4196. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  4197. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  4198. format(string, sizeof(string), "",string);
  4199. new lastshow = 0;
  4200. new reallastshow = 0;
  4201. for(new i = 0; i < Dtdc_SCarsNum; i++)
  4202. {
  4203. if(minshow <= lastshow && (i > Dtdc_Player[playerid][SellerRLastShow] || i==0))
  4204. {
  4205. if(lastshow > maxshow){break;}
  4206. if(Dtdc_SCars[i][scSeller] == Dtdc_Player[playerid][editSeller])
  4207. {
  4208. if(lastshow == minshow){format(string, sizeof(string), "%s (%d$)",Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_SCars[i][scPreis]);}
  4209. else {format(string, sizeof(string), "%s\n%s (%d$)",string,Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_SCars[i][scPreis]);}
  4210. lastshow ++;
  4211. }
  4212. }
  4213. reallastshow = i;
  4214. Dtdc_Player[playerid][SellerRLastShow2]++;
  4215. }
  4216. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  4217. if(lastshow < (Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sCars]-1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  4218. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string2,string,"Editieren","Zurück");
  4219. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarEditDia2;
  4220. Dtdc_Player[playerid][SellerLastShow] = lastshow;
  4221. Dtdc_Player[playerid][SellerRLastShow] = reallastshow;
  4222. }
  4223. case 1:
  4224. {
  4225. if(Dtdc_SCarsNum == 0){SendClientMessage(playerid,COLOR_GREY," Es sind keine Autos in diesem Autohaus!"); return 1;}
  4226. format(string2, sizeof(string2), " Auto von Autohaus (%s) löschen",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4227. Dtdc_Player[playerid][SellerSite] = 1;
  4228. Dtdc_Player[playerid][SellerLastShow] = 0;
  4229. Dtdc_Player[playerid][SellerRLastShow] = 0;
  4230. Dtdc_Player[playerid][SellerRLastShow2] = 0;
  4231. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  4232. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  4233. format(string, sizeof(string), "",string);
  4234. new lastshow = 0;
  4235. new reallastshow = 0;
  4236. for(new i = 0; i < Dtdc_SCarsNum; i++)
  4237. {
  4238. if(minshow <= lastshow && (i > Dtdc_Player[playerid][SellerRLastShow] || i==0))
  4239. {
  4240. if(lastshow > maxshow){break;}
  4241. if(Dtdc_SCars[i][scSeller] == Dtdc_Player[playerid][editSeller])
  4242. {
  4243. if(lastshow == minshow){format(string, sizeof(string), "%s (%d$)",Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_SCars[i][scPreis]);}
  4244. else {format(string, sizeof(string), "%s\n%s (%d$)",string,Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_SCars[i][scPreis]);}
  4245. lastshow ++;
  4246. }
  4247. }
  4248. reallastshow = i;
  4249. Dtdc_Player[playerid][SellerRLastShow2]++;
  4250. }
  4251. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  4252. if(lastshow < (Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sCars]-1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  4253. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string2,string,"Löschen","Zurück");
  4254. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarDelDia;
  4255. Dtdc_Player[playerid][SellerLastShow] = lastshow;
  4256. Dtdc_Player[playerid][SellerRLastShow] = reallastshow;
  4257. }
  4258. case 2:
  4259. {
  4260. format(string2, sizeof(string2), " Autos von Autohaus (%s) löschen",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4261. format(string, sizeof(string), "Wollen sie wirklich alle %d Autos löschen?",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sCars]);
  4262. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_MSGBOX,string2,string,"Löschen","Zurück");
  4263. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarDelAllDia;
  4264. }
  4265. case 3:
  4266. {
  4267. format(string2, sizeof(string2), " Auto zu Autohaus (%s) hinzufügen",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4268. for(new i=0;i < sizeof(Dtdc_NameCat);i++)
  4269. {
  4270. if(i == 0) {format(string, sizeof(string), "%s",Dtdc_NameCat[i]);}
  4271. else {format(string, sizeof(string), "%s\n%s",string,Dtdc_NameCat[i]);}
  4272. }
  4273. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string2,string,"Auswählen","Zurück");
  4274. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarNewDia2;
  4275. }
  4276. }
  4277. }
  4278. case AdminSellerCarEditDia2:
  4279. {
  4280. if(Dtdc_Player[playerid][SellerSite] == 1 && listitem == 10){listitem=11;}
  4281. if(Dtdc_Player[playerid][SellerLastShow] >= (Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sCars]-1) && listitem > (Dtdc_Player[playerid][SellerLastShow]-((10*Dtdc_Player[playerid][SellerSite])-10+1)))
  4282. {
  4283. listitem=10;
  4284. }
  4285. switch(listitem)
  4286. {
  4287. case 10 :
  4288. {
  4289. format(string2, sizeof(string2), " Auto von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4290. Dtdc_Player[playerid][SellerSite] --;
  4291. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  4292. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  4293. Dtdc_Player[playerid][SellerLastShow] = minshow;
  4294. format(string, sizeof(string), "",string);
  4295. new lastshow = Dtdc_Player[playerid][SellerLastShow];
  4296. new reallastshow = 0;
  4297. Dtdc_Player[playerid][SellerRLastShow] -= (Dtdc_Player[playerid][SellerRLastShow2]-1);
  4298. Dtdc_Player[playerid][SellerRLastShow2] = 0;
  4299. for(new i = 0; i < Dtdc_SCarsNum; i++)
  4300. {
  4301. if(minshow <= lastshow && (i > Dtdc_Player[playerid][SellerRLastShow] || i==0))
  4302. {
  4303. if(lastshow > maxshow){break;}
  4304. if(Dtdc_SCars[i][scSeller] == Dtdc_Player[playerid][editSeller])
  4305. {
  4306. if(lastshow == minshow){format(string, sizeof(string), "%s (%d$)",Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_SCars[i][scPreis]);}
  4307. else {format(string, sizeof(string), "%s\n%s (%d$)",string,Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_SCars[i][scPreis]);}
  4308. lastshow ++;
  4309. }
  4310. }
  4311. reallastshow = i;
  4312. Dtdc_Player[playerid][SellerRLastShow2]++;
  4313. }
  4314. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  4315. if(lastshow < (Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sCars]-1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  4316. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string2,string,"Editieren","Zurück");
  4317. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarEditDia2;
  4318. Dtdc_Player[playerid][SellerLastShow] = lastshow;
  4319. Dtdc_Player[playerid][SellerRLastShow] = reallastshow;
  4320. }
  4321. case 11 :
  4322. {
  4323. format(string2, sizeof(string2), " Auto von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4324. Dtdc_Player[playerid][SellerSite] ++;
  4325. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  4326. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  4327. Dtdc_Player[playerid][SellerLastShow] = minshow;
  4328. format(string, sizeof(string), "",string);
  4329. new lastshow = Dtdc_Player[playerid][SellerLastShow];
  4330. new reallastshow = 0;
  4331. Dtdc_Player[playerid][SellerRLastShow2] = 0;
  4332. for(new i = 0; i < Dtdc_SCarsNum; i++)
  4333. {
  4334. if(minshow <= lastshow && (i > Dtdc_Player[playerid][SellerRLastShow] || i==0))
  4335. {
  4336. if(lastshow > maxshow){break;}
  4337. if(Dtdc_SCars[i][scSeller] == Dtdc_Player[playerid][editSeller])
  4338. {
  4339. if(lastshow == minshow){format(string, sizeof(string), "%s (%d$)",Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_SCars[i][scPreis]);}
  4340. else {format(string, sizeof(string), "%s\n%s (%d$)",string,Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_SCars[i][scPreis]);}
  4341. lastshow ++;
  4342. }
  4343. }
  4344. reallastshow = i;
  4345. Dtdc_Player[playerid][SellerRLastShow2]++;
  4346. }
  4347. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  4348. if(lastshow < (Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sCars]-1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  4349. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string2,string,"Editieren","Zurück");
  4350. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarEditDia2;
  4351. Dtdc_Player[playerid][SellerLastShow] = lastshow;
  4352. Dtdc_Player[playerid][SellerRLastShow] = reallastshow;
  4353. }
  4354. default:
  4355. {
  4356. new plus = 0;
  4357. Dtdc_Player[playerid][CarSelect] = MaxSellerCars+1;
  4358. for(new i=0; i< Dtdc_SCarsNum; i++)
  4359. {
  4360. if(Dtdc_SCars[i][scSeller] == Dtdc_Player[playerid][editSeller])
  4361. {
  4362. if(plus == (((Dtdc_Player[playerid][SellerSite] *10)-10) +listitem))
  4363. {
  4364. Dtdc_Player[playerid][CarSelect] = i;
  4365. break;
  4366. }
  4367. plus++;
  4368. }
  4369. }
  4370. if(Dtdc_Player[playerid][CarSelect] != MaxSellerCars+1)
  4371. {
  4372. format(string2, sizeof(string2), " Auto von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4373. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,string2,"Lege den Preis für das Auto fest!","Speichern","Abbrechen");
  4374. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarEditDia3;
  4375. }
  4376. }
  4377. }
  4378. }
  4379. case AdminSellerCarEditDia3:
  4380. {
  4381. if(strlen(inputtext) == 0)
  4382. {
  4383. SendClientMessage(playerid,COLOR_GREY," Du musst etwas eingeben!");
  4384. format(string2, sizeof(string2), " Auto von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4385. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,string2,"Lege den Preis für das Auto fest!","Speichern","Zurück");
  4386. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarEditDia3;
  4387. return 1;
  4388. }
  4389. new money = strval(inputtext);
  4390. if(money <= 0 || money > 9999999)
  4391. {
  4392. SendClientMessage(playerid,COLOR_GREY," Der Preis muss zwichen 1$ und 9999999$ sein!");
  4393. format(string2, sizeof(string2), " Auto von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4394. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,string2,"Lege den Preis für das Auto fest!","Speichern","Zurück");
  4395. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarEditDia3;
  4396. return 1;
  4397. }
  4398. Dtdc_SCars[Dtdc_Player[playerid][CarSelect]][scAktivated] = 1;
  4399. Dtdc_SCars[Dtdc_Player[playerid][CarSelect]][scPreis] = money;
  4400.  
  4401. Dtdc_SaveSCars();
  4402. Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sCars] = 0;
  4403. Dtdc_LoadSCars();
  4404. format(string2, sizeof(string2), " %s von Autohaus (%s) editiert! (Preis: %d)",Dtdc_CarName[Dtdc_SCars[Dtdc_Player[playerid][CarSelect]][scModel]-400],Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName],money);
  4405. SendClientMessage(playerid,COLOR_YELLOW,string2);
  4406. }
  4407. case AdminSellerCarDelAllDia:
  4408. {
  4409. for(new i=0; i< Dtdc_SCarsNum; i++)
  4410. {
  4411. if(Dtdc_SCars[i][scSeller] == Dtdc_Player[playerid][editSeller])
  4412. {
  4413. Dtdc_DeleteSCar(i);
  4414. Dtdc_SCars[i][scAktivated] = 0;
  4415. Dtdc_SCars[i][scSqlId] = 0;
  4416. }
  4417. }
  4418. format(string2, sizeof(string2), " Es wurden alle %d Autos aus dem Autohaus (%s) gelöscht!",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sCars],Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4419. SendClientMessage(playerid,COLOR_YELLOW,string2);
  4420. Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sCars] --;
  4421. Dtdc_SaveSCars();
  4422. Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sCars] = 0;
  4423. Dtdc_LoadSCars();
  4424.  
  4425. format(string, sizeof(string), " Autos von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4426. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Auto-Preis editieren\nAuto loeschen\nAlle Autos löschen\nAuto Hinzufügen","Auswählen","Zurück");
  4427. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarNewDia;
  4428. }
  4429. case AdminSellerCarDelDia:
  4430. {
  4431. if(Dtdc_Player[playerid][SellerSite] == 1 && listitem == 10){listitem=11;}
  4432. if(Dtdc_Player[playerid][SellerLastShow] >= (Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sCars]-1) && listitem > (Dtdc_Player[playerid][SellerLastShow]-((10*Dtdc_Player[playerid][SellerSite])-10+1)))
  4433. {
  4434. listitem=10;
  4435. }
  4436. switch(listitem)
  4437. {
  4438. case 10 :
  4439. {
  4440. format(string2, sizeof(string2), " Auto von Autohaus (%s) löschen",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4441. Dtdc_Player[playerid][SellerSite] --;
  4442. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  4443. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  4444. Dtdc_Player[playerid][SellerLastShow] = minshow;
  4445. format(string, sizeof(string), "",string);
  4446. new lastshow = Dtdc_Player[playerid][SellerLastShow];
  4447. new reallastshow = 0;
  4448. Dtdc_Player[playerid][SellerRLastShow] -= (Dtdc_Player[playerid][SellerRLastShow2]-1);
  4449. Dtdc_Player[playerid][SellerRLastShow2] = 0;
  4450. for(new i = 0; i < Dtdc_SCarsNum; i++)
  4451. {
  4452. if(minshow <= lastshow && (i > Dtdc_Player[playerid][SellerRLastShow] || i==0))
  4453. {
  4454. if(lastshow > maxshow){break;}
  4455. if(Dtdc_SCars[i][scSeller] == Dtdc_Player[playerid][editSeller])
  4456. {
  4457. if(lastshow == minshow){format(string, sizeof(string), "%s (%d$)",Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_SCars[i][scPreis]);}
  4458. else {format(string, sizeof(string), "%s\n%s (%d$)",string,Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_SCars[i][scPreis]);}
  4459. lastshow ++;
  4460. }
  4461. }
  4462. reallastshow = i;
  4463. Dtdc_Player[playerid][SellerRLastShow2]++;
  4464. }
  4465. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  4466. if(lastshow < (Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sCars]-1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  4467. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string2,string,"Löschen","Zurück");
  4468. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarDelDia;
  4469. Dtdc_Player[playerid][SellerLastShow] = lastshow;
  4470. Dtdc_Player[playerid][SellerRLastShow] = reallastshow;
  4471. }
  4472. case 11 :
  4473. {
  4474. format(string2, sizeof(string2), " Auto von Autohaus (%s) löschen",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4475. Dtdc_Player[playerid][SellerSite] ++;
  4476. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  4477. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  4478. Dtdc_Player[playerid][SellerLastShow] = minshow;
  4479. format(string, sizeof(string), "",string);
  4480. new lastshow = Dtdc_Player[playerid][SellerLastShow];
  4481. new reallastshow = 0;
  4482. Dtdc_Player[playerid][SellerRLastShow2] = 0;
  4483. for(new i = 0; i < Dtdc_SCarsNum; i++)
  4484. {
  4485. if(minshow <= lastshow && (i > Dtdc_Player[playerid][SellerRLastShow] || i==0))
  4486. {
  4487. if(lastshow > maxshow){break;}
  4488. if(Dtdc_SCars[i][scSeller] == Dtdc_Player[playerid][editSeller])
  4489. {
  4490. if(lastshow == minshow){format(string, sizeof(string), "%s (%d$)",Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_SCars[i][scPreis]);}
  4491. else {format(string, sizeof(string), "%s\n%s (%d$)",string,Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_SCars[i][scPreis]);}
  4492. lastshow ++;
  4493. }
  4494. }
  4495. reallastshow = i;
  4496. Dtdc_Player[playerid][SellerRLastShow2]++;
  4497. }
  4498. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  4499. if(lastshow < (Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sCars]-1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  4500. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string2,string,"Löschen","Zurück");
  4501. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarDelDia;
  4502. Dtdc_Player[playerid][SellerLastShow] = lastshow;
  4503. Dtdc_Player[playerid][SellerRLastShow] = reallastshow;
  4504. }
  4505. default:
  4506. {
  4507. new plus = 0;
  4508. for(new i=0; i< Dtdc_SCarsNum; i++)
  4509. {
  4510. if(Dtdc_SCars[i][scSeller] == Dtdc_Player[playerid][editSeller])
  4511. {
  4512. if(plus == (((Dtdc_Player[playerid][SellerSite] *10)-10) +listitem))
  4513. {
  4514. Dtdc_DeleteSCar(i);
  4515. Dtdc_SCars[i][scAktivated] = 0;
  4516. Dtdc_SCars[i][scSqlId] = 0;
  4517. format(string2, sizeof(string2), " %s aus Autohaus (%s) gelöscht!",Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4518. SendClientMessage(playerid,COLOR_YELLOW,string2);
  4519. break;
  4520. }
  4521. plus++;
  4522. }
  4523. }
  4524.  
  4525. Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sCars] --;
  4526. Dtdc_SaveSCars();
  4527. Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sCars] = 0;
  4528. Dtdc_LoadSCars();
  4529.  
  4530. format(string, sizeof(string), " Autos von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4531. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Auto-Preis editieren\nAuto loeschen\nAlle Autos löschen\nAuto Hinzufügen","Auswählen","Zurück");
  4532. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarNewDia;
  4533. }
  4534. }
  4535. }
  4536. case AdminSellerCarNewDia2:
  4537. {
  4538. format(string2, sizeof(string2), " Auto zu Autohaus (%s) hinzufügen",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4539. Dtdc_Player[playerid][CarCat] = listitem;
  4540. Dtdc_Player[playerid][SellerSite] = 1;
  4541. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  4542. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  4543. new lastshow = 0;
  4544. for(new i = minshow; i <= maxshow && i < Dtdc_NumCat[Dtdc_Player[playerid][CarCat]]; i++)
  4545. {
  4546. lastshow = i;
  4547. if(i == minshow){format(string, sizeof(string), "%s",Dtdc_CarName[Dtdc_CarCat[Dtdc_Player[playerid][CarCat]][i]-400]);}
  4548. else {format(string, sizeof(string), "%s\n%s",string,Dtdc_CarName[Dtdc_CarCat[Dtdc_Player[playerid][CarCat]][i]-400]);}
  4549. }
  4550. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  4551. if(lastshow < (Dtdc_NumCat[Dtdc_Player[playerid][CarCat]] - 1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  4552. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string2,string,"Auswählen","Zurück");
  4553. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarNewDia3;
  4554. Dtdc_Player[playerid][SellerLastShow] = lastshow;
  4555. }
  4556. case AdminSellerCarNewDia3:
  4557. {
  4558. if(Dtdc_Player[playerid][SellerSite] == 1 && listitem == 10){listitem=11;}
  4559. if(Dtdc_Player[playerid][SellerLastShow] == (Dtdc_NumCat[Dtdc_Player[playerid][CarCat]] - 1) && listitem > (Dtdc_Player[playerid][SellerLastShow]-((10*Dtdc_Player[playerid][SellerSite])-10)))
  4560. {
  4561. listitem=10;
  4562. }
  4563. switch(listitem)
  4564. {
  4565. case 10 :
  4566. {
  4567. Dtdc_Player[playerid][SellerSite] --;
  4568. format(string2, sizeof(string2), " Auto zu Autohaus (%s) hinzufügen",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4569. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  4570. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  4571. new lastshow = 0;
  4572. for(new i = minshow; i <= maxshow && i < Dtdc_NumCat[Dtdc_Player[playerid][CarCat]]; i++)
  4573. {
  4574. lastshow = i;
  4575. if(i == minshow){format(string, sizeof(string), "%s",Dtdc_CarName[Dtdc_CarCat[Dtdc_Player[playerid][CarCat]][i]-400]);}
  4576. else {format(string, sizeof(string), "%s\n%s",string,Dtdc_CarName[Dtdc_CarCat[Dtdc_Player[playerid][CarCat]][i]-400]);}
  4577. }
  4578. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  4579. if(lastshow < (Dtdc_NumCat[Dtdc_Player[playerid][CarCat]] - 1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  4580. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string2,string,"Auswählen","Zurück");
  4581. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarNewDia3;
  4582. Dtdc_Player[playerid][SellerLastShow] = lastshow;
  4583. }
  4584. case 11 :
  4585. {
  4586. Dtdc_Player[playerid][SellerSite] ++;
  4587. format(string2, sizeof(string2), " Auto zu Autohaus (%s) hinzufügen",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4588. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  4589. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  4590. new lastshow = 0;
  4591. for(new i = minshow; i <= maxshow && i < Dtdc_NumCat[Dtdc_Player[playerid][CarCat]]; i++)
  4592. {
  4593. lastshow = i;
  4594. if(i == minshow){format(string, sizeof(string), "%s",Dtdc_CarName[Dtdc_CarCat[Dtdc_Player[playerid][CarCat]][i]-400]);}
  4595. else {format(string, sizeof(string), "%s\n%s",string,Dtdc_CarName[Dtdc_CarCat[Dtdc_Player[playerid][CarCat]][i]-400]);}
  4596. }
  4597. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  4598. if(lastshow < (Dtdc_NumCat[Dtdc_Player[playerid][CarCat]] - 1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  4599. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string2,string,"Auswählen","Zurück");
  4600. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarNewDia3;
  4601. Dtdc_Player[playerid][SellerLastShow] = lastshow;
  4602. }
  4603. default:
  4604. {
  4605. Dtdc_Player[playerid][CarSelect] = ((Dtdc_Player[playerid][SellerSite] *10)-10) +listitem;
  4606. format(string2, sizeof(string2), " %s zu Autohaus (%s) hinzufügen",Dtdc_CarName[Dtdc_CarCat[Dtdc_Player[playerid][CarCat]][Dtdc_Player[playerid][CarSelect]]-400],Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4607. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,string2,"Lege den Preis für das Auto fest!","Hinzufügen","Zurück");
  4608. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarNewDia4;
  4609.  
  4610. }
  4611. }
  4612. }
  4613. case AdminSellerCarNewDia4:
  4614. {
  4615. if(strlen(inputtext) == 0)
  4616. {
  4617. SendClientMessage(playerid,COLOR_GREY," Du musst etwas eingeben!");
  4618. format(string2, sizeof(string2), " %s zu Autohaus (%s) hinzufügen",Dtdc_CarName[Dtdc_CarCat[Dtdc_Player[playerid][CarCat]][Dtdc_Player[playerid][CarSelect]]-400],Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4619. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,string2,"Lege den Preis für das Auto fest!","Hinzufügen","Zurück");
  4620. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarNewDia4;
  4621. return 1;
  4622. }
  4623. new money = strval(inputtext);
  4624. if(money <= 0 || money > 9999999)
  4625. {
  4626. SendClientMessage(playerid,COLOR_GREY," Der Preis muss zwichen 1$ und 9999999$ sein!");
  4627. format(string2, sizeof(string2), " %s zu Autohaus (%s) hinzufügen",Dtdc_CarName[Dtdc_CarCat[Dtdc_Player[playerid][CarCat]][Dtdc_Player[playerid][CarSelect]]-400],Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4628. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,string2,"Lege den Preis für das Auto fest!","Hinzufügen","Zurück");
  4629. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarNewDia4;
  4630. return 1;
  4631. }
  4632. Dtdc_SCars[Dtdc_SCarsNum][scAktivated] = 1;
  4633. Dtdc_SCars[Dtdc_SCarsNum][scModel] = Dtdc_CarCat[Dtdc_Player[playerid][CarCat]][Dtdc_Player[playerid][CarSelect]];
  4634. Dtdc_SCars[Dtdc_SCarsNum][scCat] = Dtdc_Player[playerid][CarCat];
  4635. Dtdc_SCars[Dtdc_SCarsNum][scPreis] = money;
  4636. Dtdc_SCars[Dtdc_SCarsNum][scSeller] = Dtdc_Player[playerid][editSeller];
  4637. Dtdc_SCars[Dtdc_SCarsNum][scSellerSql] = Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sSqlId];
  4638.  
  4639. Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sCars] ++;
  4640. Dtdc_SCarsNum++;
  4641. Dtdc_SaveSCars();
  4642. format(string2, sizeof(string2), " %s zu Autohaus (%s) hinzugefügt! (Preis: %d)",Dtdc_CarName[Dtdc_CarCat[Dtdc_Player[playerid][CarCat]][Dtdc_Player[playerid][CarSelect]]-400],Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName],money);
  4643. SendClientMessage(playerid,COLOR_YELLOW,string2);
  4644. format(string, sizeof(string), " Autos von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4645. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Auto-Preis editieren\nAuto loeschen\nAlle Autos löschen\nAuto Hinzufügen","Auswählen","Zurück");
  4646. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarNewDia;
  4647. }
  4648. case AdminSellerCreDia:
  4649. {
  4650. switch(Dtdc_Player[playerid][SellerStep])
  4651. {
  4652. case 0:
  4653. {
  4654. if(strlen(inputtext) == 0)
  4655. {
  4656. SendClientMessage(playerid,COLOR_GREY," Ein Autohaus kann keinen lerren Namen haben!");
  4657. Dtdc_Player[playerid][SellerStep] = 0;
  4658. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,"Neues Autohaus:","Name des Autohauses:","OK","Abbrechen");
  4659. Dtdc_Player[playerid][AdminDialog] = AdminSellerCreDia;
  4660. return 1;
  4661. }
  4662. if(strlen(inputtext) >= 40)
  4663. {
  4664. SendClientMessage(playerid,COLOR_GREY," Der Name darf Maximal 40 Zeichen lang sein!");
  4665. Dtdc_Player[playerid][SellerStep] = 0;
  4666. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,"Neues Autohaus:","Name des Autohauses:","OK","Abbrechen");
  4667. Dtdc_Player[playerid][AdminDialog] = AdminSellerCreDia;
  4668. return 1;
  4669. }
  4670. format(Dtdc_Player[playerid][SCName],40,inputtext);
  4671. format(string, sizeof(string), " Der Name (%s) wurde gespeichert!",inputtext);
  4672. SendClientMessage(playerid,COLOR_YELLOW,string);
  4673. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_MSGBOX ,"Neues Autohaus:","Eingang des Autohauses:\nOk drücken wenn sie am Ort stehen, an dem der Eingang hin soll.","OK","Abbrechen");
  4674. Dtdc_Player[playerid][AdminDialog] = AdminSellerCreDia;
  4675. Dtdc_Player[playerid][SellerStep] ++;
  4676. return 1;
  4677. }
  4678. case 1:
  4679. {
  4680. GetPlayerPos(playerid,Dtdc_Player[playerid][SCeX],Dtdc_Player[playerid][SCeY],Dtdc_Player[playerid][SCeZ]);
  4681. GetPlayerFacingAngle(playerid, Dtdc_Player[playerid][SCeR]);
  4682. SendClientMessage(playerid,COLOR_YELLOW,"Der Eingangsort wurde gespeichert.");
  4683. if(Dtdc_EasySellerCreate == 0) {
  4684. //Eingaben speichern
  4685. format(Dtdc_Seller[Dtdc_SellerNum][sName],40,Dtdc_Player[playerid][SCName]);
  4686. Dtdc_Seller[Dtdc_SellerNum][sIconRot] = Dtdc_Player[playerid][SCeR];
  4687. Dtdc_Seller[Dtdc_SellerNum][sIconPosX] = Dtdc_Player[playerid][SCeX];
  4688. Dtdc_Seller[Dtdc_SellerNum][sIconPosY] = Dtdc_Player[playerid][SCeY];
  4689. Dtdc_Seller[Dtdc_SellerNum][sIconPosZ] = Dtdc_Player[playerid][SCeZ];
  4690. Dtdc_Seller[Dtdc_SellerNum][sAktivated] = 1;
  4691. //Easy Seller speichert die deafault Vars:
  4692. Dtdc_Seller[Dtdc_SellerNum][sLVCarPosX] = -1654.9818;
  4693. Dtdc_Seller[Dtdc_SellerNum][sLVCarPosY] = 1207.5421;
  4694. Dtdc_Seller[Dtdc_SellerNum][sLVCarPosZ] = 20.7849;
  4695. Dtdc_Seller[Dtdc_SellerNum][sLVCarRot] = 307.1484;
  4696.  
  4697. Dtdc_Seller[Dtdc_SellerNum][sLVCamPosX] = -1653.9987;
  4698. Dtdc_Seller[Dtdc_SellerNum][sLVCamPosY] = 1215.7729;
  4699. Dtdc_Seller[Dtdc_SellerNum][sLVCamPosZ] = 21.1563 + 2;
  4700.  
  4701. Dtdc_Seller[Dtdc_SellerNum][sLVPlyPosX] = -1654.2745;
  4702. Dtdc_Seller[Dtdc_SellerNum][sLVPlyPosY] = 1218.9373;
  4703. Dtdc_Seller[Dtdc_SellerNum][sLVPlyPosZ] = 21.1563;
  4704. Dtdc_Seller[Dtdc_SellerNum][sAktivated] = 1;
  4705.  
  4706. Dtdc_CreateSeller(Dtdc_SellerNum);
  4707.  
  4708. Dtdc_SellerNum ++;
  4709. Dtdc_SaveSeller();
  4710.  
  4711. Dtdc_Player[playerid][SellerStep] = 0;
  4712. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  4713. SendClientMessage(playerid,COLOR_YELLOW," EasySellerCreate hat alle weiteren Variablen auf default gestzt! Bitte erstelle nun die Parkplätze und Autos!");
  4714. return 1;
  4715. }
  4716. Dtdc_Player[playerid][SellerStep] ++;
  4717. if(!IsPlayerInAnyVehicle(playerid))
  4718. {
  4719. SendClientMessage(playerid,COLOR_GREY," Du musst in einem Auto sein um die Car-Position beim Liveview/LiveDialog setzen zu können!");
  4720. return 1;
  4721. }
  4722. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_MSGBOX ,"Neues Autohaus:","Liveview Car Position:\nOk drücken wenn sie am Ort stehen, an dem das Auto beim Liveview/LiveDialog zu sehen sein soll.","OK","Abbrechen");
  4723. Dtdc_Player[playerid][AdminDialog] = AdminSellerCreDia;
  4724. return 1;
  4725. }
  4726. case 2:
  4727. {
  4728. if(!IsPlayerInAnyVehicle(playerid))
  4729. {
  4730. SendClientMessage(playerid,COLOR_GREY," Du musst in einem Auto sein um die Car-Position beim Liveview/LiveDialog setzen zu können!");
  4731. return 1;
  4732. }
  4733. SendClientMessage(playerid,COLOR_YELLOW,"Liveview/LiveDialog Car Position gespeichert!");
  4734. new veh = GetPlayerVehicleID(playerid);
  4735. Dtdc_Player[playerid][SellerStep] ++;
  4736. GetVehiclePos(veh,Dtdc_Player[playerid][SClvcX],Dtdc_Player[playerid][SClvcY],Dtdc_Player[playerid][SClvcZ]);
  4737. GetVehicleZAngle(veh,Dtdc_Player[playerid][SClvcR]);
  4738. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_MSGBOX ,"Neues Autohaus:","Liveview Kamera Position:\nOk drücken wenn sie am Ort stehen, an dem die Kamera beim Liveview/LiveDialog sein soll, die Kamera position wird Automatisch leicht erhöht.","OK","Abbrechen");
  4739. Dtdc_Player[playerid][AdminDialog] = AdminSellerCreDia;
  4740. }
  4741. case 3:
  4742. {
  4743. SendClientMessage(playerid,COLOR_YELLOW,"Liveview/LiveDialog Kamera Position gespeichert!");
  4744. Dtdc_Player[playerid][SellerStep] ++;
  4745. GetPlayerPos(playerid,Dtdc_Player[playerid][SCcamX],Dtdc_Player[playerid][SCcamY],Dtdc_Player[playerid][SCcamZ]);
  4746. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_MSGBOX ,"Neues Autohaus:","Liveview Player Position:\nOk drücken wenn sie am Ort stehen, an dem der Player beim Liveview/LiveDialog sein soll, am besten sollte er leicht hinter der Kamera stehen.","OK","Abbrechen");
  4747. Dtdc_Player[playerid][AdminDialog] = AdminSellerCreDia;
  4748. }
  4749. case 4:
  4750. {
  4751. SendClientMessage(playerid,COLOR_YELLOW,"Liveview/LiveDialog Player Position gespeichert!");
  4752. Dtdc_Player[playerid][SellerStep] ++;
  4753. GetPlayerPos(playerid,Dtdc_Player[playerid][SCplyX],Dtdc_Player[playerid][SCplyY],Dtdc_Player[playerid][SCplyZ]);
  4754.  
  4755. //Eingaben speichern
  4756. format(Dtdc_Seller[Dtdc_SellerNum][sName],40,Dtdc_Player[playerid][SCName]);
  4757. Dtdc_Seller[Dtdc_SellerNum][sIconRot] = Dtdc_Player[playerid][SCeR];
  4758. Dtdc_Seller[Dtdc_SellerNum][sIconPosX] = Dtdc_Player[playerid][SCeX];
  4759. Dtdc_Seller[Dtdc_SellerNum][sIconPosY] = Dtdc_Player[playerid][SCeY];
  4760. Dtdc_Seller[Dtdc_SellerNum][sIconPosZ] = Dtdc_Player[playerid][SCeZ];
  4761. Dtdc_Seller[Dtdc_SellerNum][sAktivated] = 1;
  4762. //Easy Seller speichert die deafault Vars:
  4763. Dtdc_Seller[Dtdc_SellerNum][sLVCarPosX] = Dtdc_Player[playerid][SClvcX];
  4764. Dtdc_Seller[Dtdc_SellerNum][sLVCarPosY] = Dtdc_Player[playerid][SClvcY];
  4765. Dtdc_Seller[Dtdc_SellerNum][sLVCarPosZ] = Dtdc_Player[playerid][SClvcZ];
  4766. Dtdc_Seller[Dtdc_SellerNum][sLVCarRot] = Dtdc_Player[playerid][SClvcR];
  4767.  
  4768. Dtdc_Seller[Dtdc_SellerNum][sLVCamPosX] = Dtdc_Player[playerid][SCcamX];
  4769. Dtdc_Seller[Dtdc_SellerNum][sLVCamPosY] = Dtdc_Player[playerid][SCcamY];
  4770. Dtdc_Seller[Dtdc_SellerNum][sLVCamPosZ] = Dtdc_Player[playerid][SCcamZ] + 2;
  4771.  
  4772. Dtdc_Seller[Dtdc_SellerNum][sLVPlyPosX] = Dtdc_Player[playerid][SCplyX];
  4773. Dtdc_Seller[Dtdc_SellerNum][sLVPlyPosY] = Dtdc_Player[playerid][SCplyY];
  4774. Dtdc_Seller[Dtdc_SellerNum][sLVPlyPosZ] = Dtdc_Player[playerid][SCplyZ];
  4775. Dtdc_Seller[Dtdc_SellerNum][sAktivated] = 1;
  4776.  
  4777. Dtdc_CreateSeller(Dtdc_SellerNum);
  4778.  
  4779. Dtdc_SellerNum ++;
  4780. Dtdc_SaveSeller();
  4781.  
  4782. Dtdc_Player[playerid][SellerStep] = 0;
  4783. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  4784. SendClientMessage(playerid,COLOR_YELLOW," Autohaus erstellt! Bitte erstelle nun die Parkplätze und Autos! .");
  4785. }
  4786. }
  4787. }
  4788. case AdminTunerDia:
  4789. {
  4790. switch(listitem)
  4791. {
  4792. case 0 :
  4793. {
  4794. if(Dtdc_TunerNum == 0){SendClientMessage(playerid,COLOR_GREY," Es sind noch keine Tuner verfügbar!"); return 1;}
  4795. Dtdc_Player[playerid][SellerSite] = 1;
  4796. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  4797. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  4798. new lastshow = 0;
  4799. for(new i = minshow; i <= maxshow && i < Dtdc_TunerNum; i++)
  4800. {
  4801. lastshow = i;
  4802. if(i == minshow){format(string, sizeof(string), "%s",Dtdc_Tune[i][tNameIs]);}
  4803. else {format(string, sizeof(string), "%s\n%s",string,Dtdc_Tune[i][tNameIs]);}
  4804. }
  4805. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  4806. if(lastshow < (Dtdc_TunerNum - 1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  4807. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Tuner editieren",string,"Auswählen","Zurück");
  4808. Dtdc_Player[playerid][AdminDialog] = AdminTunerEditDia;
  4809. Dtdc_Player[playerid][SellerLastShow] =lastshow;
  4810. }
  4811. case 1 :
  4812. {
  4813. if(Dtdc_TunerNum == 0){SendClientMessage(playerid,COLOR_GREY," Es sind noch keine Tuner verfügbar!"); return 1;}
  4814. Dtdc_Player[playerid][SellerSite] = 1;
  4815. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  4816. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  4817. new lastshow = 0;
  4818. for(new i = minshow; i <= maxshow && i < Dtdc_TunerNum; i++)
  4819. {
  4820. lastshow = i;
  4821. if(i == minshow){format(string, sizeof(string), "%s",Dtdc_Tune[i][tNameIs]);}
  4822. else {format(string, sizeof(string), "%s\n%s",string,Dtdc_Tune[i][tNameIs]);}
  4823. }
  4824. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  4825. if(lastshow < (Dtdc_TunerNum - 1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  4826. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Tuner löschen",string,"Löschen","Zurück");
  4827. Dtdc_Player[playerid][AdminDialog] = AdminTunerDelDia;
  4828. Dtdc_Player[playerid][SellerLastShow] =lastshow;
  4829. }
  4830. case 2 :
  4831. {
  4832. format(string2, sizeof(string2), " Tuner löschen",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  4833. format(string, sizeof(string), "Wollen sie wirklich alle %d Tuner löschen?",Dtdc_TunerNum);
  4834. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_MSGBOX,string2,string,"Löschen","Zurück");
  4835. Dtdc_Player[playerid][AdminDialog] = AdminTunerDelAllDia;
  4836. }
  4837. case 3 :
  4838. {
  4839. switch(Dtdc_Player[playerid][TunerStep])
  4840. {
  4841. case 0:
  4842. {
  4843. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,"Neuer Tuner:","Name des Tuners:","OK","Abbrechen");
  4844. Dtdc_Player[playerid][AdminDialog] = AdminTunerCreDia;
  4845. return 1;
  4846. }
  4847. case 1:
  4848. {
  4849. if(!IsPlayerInAnyVehicle(playerid))
  4850. {
  4851. SendClientMessage(playerid,COLOR_GREY," Du musst in einem Auto sein um den Eingang setzen zu können!");
  4852. return 1;
  4853. }
  4854. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_MSGBOX ,"Neuer Tuner:","Eingang des Tuners:\nOk drücken wenn sie am Ort stehen, an dem der Eingang hin soll.","OK","Abbrechen");
  4855. Dtdc_Player[playerid][AdminDialog] = AdminTunerCreDia;
  4856. return 1;
  4857. }
  4858. }
  4859. }
  4860. }
  4861. }
  4862. case AdminTunerEditDia:
  4863. {
  4864. if(Dtdc_Player[playerid][SellerSite] == 1 && listitem == 10){listitem=11;}
  4865. if(Dtdc_Player[playerid][SellerLastShow] == (Dtdc_TunerNum - 1) && listitem > (Dtdc_Player[playerid][SellerLastShow]-((10*Dtdc_Player[playerid][SellerSite])-10)))
  4866. {
  4867. listitem=10;
  4868. }
  4869. switch(listitem)
  4870. {
  4871. case 10 :
  4872. {
  4873. Dtdc_Player[playerid][SellerSite] --;
  4874. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  4875. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  4876. new lastshow = 0;
  4877. for(new i = minshow; i <= maxshow && i < Dtdc_TunerNum; i++)
  4878. {
  4879. lastshow = i;
  4880. if(i == minshow){format(string, sizeof(string), "%s",Dtdc_Tune[i][tNameIs]);}
  4881. else {format(string, sizeof(string), "%s\n%s",string,Dtdc_Tune[i][tNameIs]);}
  4882. }
  4883. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  4884. if(lastshow < (Dtdc_TunerNum - 1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  4885. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Tuner editieren",string,"Löschen","Zurück");
  4886. Dtdc_Player[playerid][AdminDialog] = AdminTunerEditDia;
  4887. Dtdc_Player[playerid][SellerLastShow] =lastshow;
  4888. }
  4889. case 11 :
  4890. {
  4891. Dtdc_Player[playerid][SellerSite] ++;
  4892. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  4893. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  4894. new lastshow = 0;
  4895. for(new i = minshow; i <= maxshow && i < Dtdc_TunerNum; i++)
  4896. {
  4897. lastshow = i;
  4898. if(i == minshow){format(string, sizeof(string), "%s",Dtdc_Tune[i][tNameIs]);}
  4899. else {format(string, sizeof(string), "%s\n%s",string,Dtdc_Tune[i][tNameIs]);}
  4900. }
  4901. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  4902. if(lastshow < (Dtdc_TunerNum - 1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  4903. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Tuner editieren",string,"Löschen","Zurück");
  4904. Dtdc_Player[playerid][AdminDialog] = AdminTunerEditDia;
  4905. Dtdc_Player[playerid][SellerLastShow] =lastshow;
  4906. }
  4907. default:
  4908. {
  4909. Dtdc_Player[playerid][editSeller] = ((Dtdc_Player[playerid][SellerSite] *10)-10) +listitem;
  4910. format(string, sizeof(string), "Tuner (%s) editieren",Dtdc_Respray[Dtdc_Player[playerid][editSeller]][rNameIs]);
  4911. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Namen editieren\nPosition setzen","Auswählen","Zurück");
  4912. Dtdc_Player[playerid][AdminDialog] = AdminTunerEditSelDia;
  4913. }
  4914. }
  4915. }
  4916. case AdminTunerEditSelDia:
  4917. {
  4918. switch(listitem)
  4919. {
  4920. case 0://Namen
  4921. {
  4922. format(string2, sizeof(string2), " Name von Tuner (%s) editieren",Dtdc_Tune[Dtdc_Player[playerid][editSeller]][tNameIs]);
  4923. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,string2,"Bitte lege den neuen Namen fest!","Speichern","Zurück");
  4924. Dtdc_Player[playerid][AdminDialog] = AdminTunerRenameDia;
  4925. }
  4926. case 1://Position
  4927. {
  4928. if(!IsPlayerInAnyVehicle(playerid))
  4929. {
  4930. SendClientMessage(playerid,COLOR_GREY," Du musst in einem Auto sein um die Position setzen zu können!");
  4931. format(string, sizeof(string), "Tuner (%s) editieren",Dtdc_Tune[Dtdc_Player[playerid][editSeller]][tNameIs]);
  4932. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Namen editieren\nPosition setzen","Auswählen","Zurück");
  4933. Dtdc_Player[playerid][AdminDialog] = AdminTunerEditSelDia;
  4934. return 1;
  4935. }
  4936. format(string2, sizeof(string2), " Position von Tuner (%s) setzen",Dtdc_Tune[Dtdc_Player[playerid][editSeller]][tNameIs]);
  4937. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_MSGBOX ,string2,"Tuner Position:\nOk drücken wenn sie am Ort stehen, an dem der Tuner Sein soll.","OK","Zurück");
  4938. Dtdc_Player[playerid][AdminDialog] = AdminTunerPosDia;
  4939. Dtdc_SaveResprayer();
  4940. }
  4941. }
  4942. }
  4943. case AdminTunerRenameDia:
  4944. {
  4945. if(strlen(inputtext) == 0)
  4946. {
  4947. SendClientMessage(playerid,COLOR_GREY," Ein Tuner kann keinen lerren Namen haben!");
  4948. Dtdc_Player[playerid][SellerStep] = 0;
  4949. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  4950.  
  4951. format(string2, sizeof(string2), " Name von Tuner (%s) editieren",Dtdc_Tune[Dtdc_Player[playerid][editSeller]][tNameIs]);
  4952. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,string2,"Bitte lege den neuen Namen fest!","Speichern","Zurück");
  4953. Dtdc_Player[playerid][AdminDialog] = AdminTunerRenameDia;
  4954. return 1;
  4955. }
  4956. if(strlen(inputtext) >= 40)
  4957. {
  4958. SendClientMessage(playerid,COLOR_GREY," Der Name darf Maximal 40 Zeichen lang sein!");
  4959. format(string2, sizeof(string2), " Name von Tuner (%s) editieren",Dtdc_Tune[Dtdc_Player[playerid][editSeller]][tNameIs]);
  4960. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,string2,"Bitte lege den neuen Namen fest!","Speichern","Zurück");
  4961. Dtdc_Player[playerid][AdminDialog] = AdminTunerRenameDia;
  4962. return 1;
  4963. }
  4964. format(Dtdc_Tune[Dtdc_Player[playerid][editSeller]][tNameIs],40,inputtext);
  4965. format(string, sizeof(string), " Der Name (%s) wurde gespeichert!",inputtext);
  4966. SendClientMessage(playerid,COLOR_YELLOW,string);
  4967. Dtdc_SaveTuner();
  4968.  
  4969. format(string, sizeof(string), "Tuner (%s) editieren",Dtdc_Tune[Dtdc_Player[playerid][editSeller]][tNameIs]);
  4970. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Namen editieren\nPosition setzen","Auswählen","Zurück");
  4971. Dtdc_Player[playerid][AdminDialog] = AdminTunerEditSelDia;
  4972. }
  4973. case AdminTunerPosDia:
  4974. {
  4975. if(!IsPlayerInAnyVehicle(playerid))
  4976. {
  4977. SendClientMessage(playerid,COLOR_GREY," Du musst in einem Auto sein um die Position setzen zu können!");
  4978. format(string, sizeof(string), "Tuner (%s) editieren",Dtdc_Tune[Dtdc_Player[playerid][editSeller]][tNameIs]);
  4979. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Namen editieren\nPosition setzen","Auswählen","Zurück");
  4980. Dtdc_Player[playerid][AdminDialog] = AdminTunerEditSelDia;
  4981. return 1;
  4982. }
  4983. GetVehiclePos(GetPlayerVehicleID(playerid),Dtdc_Tune[Dtdc_Player[playerid][editSeller]][tPosX],Dtdc_Tune[Dtdc_Player[playerid][editSeller]][tPosY],Dtdc_Tune[Dtdc_Player[playerid][editSeller]][tPosZ]);
  4984. GetVehicleZAngle(GetPlayerVehicleID(playerid), Dtdc_Tune[Dtdc_Player[playerid][editSeller]][tRot]);
  4985. SendClientMessage(playerid,COLOR_YELLOW," Die neue Position wurde gespeichert!");
  4986.  
  4987. Dtdc_DestroyTuner(Dtdc_Player[playerid][editSeller]);
  4988. Dtdc_CreateTuner(Dtdc_Player[playerid][editSeller]);
  4989.  
  4990. format(string, sizeof(string), "Tuner (%s) editieren",Dtdc_Tune[Dtdc_Player[playerid][editSeller]][tNameIs]);
  4991. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Namen editieren\nPosition setzen","Auswählen","Zurück");
  4992. Dtdc_Player[playerid][AdminDialog] = AdminTunerEditSelDia;
  4993. Dtdc_SaveTuner();
  4994. }
  4995. case AdminTunerDelAllDia:
  4996. {
  4997. new SellerNum = Dtdc_TunerNum;
  4998. for(new i=0; i< Dtdc_TunerNum; i++)
  4999. {
  5000. Dtdc_DeleteTuner(i);
  5001. Dtdc_Tune[i][tSqlId] = 0;
  5002. Dtdc_Tune[i][tAktivated] = 0;
  5003. Dtdc_DestroyTuner(i);
  5004. }
  5005.  
  5006. Dtdc_SaveTuner();
  5007. Dtdc_LoadTuner();
  5008.  
  5009. format(string, sizeof(string), "Alle %d Tuner wurden gelöscht!",SellerNum);
  5010. SendClientMessage(playerid,COLOR_YELLOW,string);
  5011.  
  5012. checker = 0;
  5013. if(Dtdc_Player[playerid][TunerStep] != 0) {checker = 1;}
  5014. format(string, sizeof(string), "Editieren\nLöschen\nAlle Löschen\n%s",newSellerstr[checker]);
  5015. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Tuner:",string,"OK","Zurück");
  5016. Dtdc_Player[playerid][AdminDialog] = AdminTunerDia;
  5017. }
  5018. case AdminTunerCreDia:
  5019. {
  5020. switch(Dtdc_Player[playerid][TunerStep])
  5021. {
  5022. case 0:
  5023. {
  5024. if(strlen(inputtext) == 0)
  5025. {
  5026. SendClientMessage(playerid,COLOR_GREY," Ein Tuner kann keinen lerren Namen haben!");
  5027. Dtdc_Player[playerid][TunerStep] = 0;
  5028. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,"Neuer Tuner:","Name des Tuners:","OK","Abbrechen");
  5029. Dtdc_Player[playerid][AdminDialog] = AdminTunerCreDia;
  5030. return 1;
  5031. }
  5032. if(strlen(inputtext) >= 40)
  5033. {
  5034. SendClientMessage(playerid,COLOR_GREY," Der Name darf Maximal 40 Zeichen lang sein!");
  5035. Dtdc_Player[playerid][TunerStep] = 0;
  5036. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,"Neuer Tuner:","Name des Tuners:","OK","Abbrechen");
  5037. Dtdc_Player[playerid][AdminDialog] = AdminTunerCreDia;
  5038. return 1;
  5039. }
  5040. format(Dtdc_Player[playerid][TuName],40,inputtext);
  5041. format(string, sizeof(string), " Der Name (%s) wurde gespeichert!",inputtext);
  5042. SendClientMessage(playerid,COLOR_YELLOW,string);
  5043. if(!IsPlayerInAnyVehicle(playerid))
  5044. {
  5045. SendClientMessage(playerid,COLOR_GREY," Du musst in einem Auto sein um den Eingang setzen zu können!");
  5046. return 1;
  5047. }
  5048. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_MSGBOX ,"Neuer Tuner:","Eingang des Tuners:\nOk drücken wenn sie am Ort stehen, an dem der Eingang hin soll.","OK","Abbrechen");
  5049. Dtdc_Player[playerid][AdminDialog] = AdminTunerCreDia;
  5050. Dtdc_Player[playerid][TunerStep] ++;
  5051. return 1;
  5052. }
  5053. case 1:
  5054. {
  5055. if(!IsPlayerInAnyVehicle(playerid))
  5056. {
  5057. SendClientMessage(playerid,COLOR_GREY," Du musst in einem Auto sein um den Eingang setzen zu können!");
  5058. return 1;
  5059. }
  5060. GetVehiclePos(GetPlayerVehicleID(playerid),Dtdc_Player[playerid][TueX],Dtdc_Player[playerid][TueY],Dtdc_Player[playerid][TueZ]);
  5061. GetVehicleZAngle(GetPlayerVehicleID(playerid), Dtdc_Player[playerid][TueR]);
  5062. SendClientMessage(playerid,COLOR_YELLOW,"Der Eingangsort wurde gespeichert.");
  5063. //Eingaben speichern
  5064. format(Dtdc_Tune[Dtdc_TunerNum][tNameIs],40,Dtdc_Player[playerid][TuName]);
  5065. Dtdc_Tune[Dtdc_TunerNum][tRot] = Dtdc_Player[playerid][TueR];
  5066. Dtdc_Tune[Dtdc_TunerNum][tPosX] = Dtdc_Player[playerid][TueX];
  5067. Dtdc_Tune[Dtdc_TunerNum][tPosY] = Dtdc_Player[playerid][TueY];
  5068. Dtdc_Tune[Dtdc_TunerNum][tPosZ] = Dtdc_Player[playerid][TueZ];
  5069. Dtdc_Tune[Dtdc_TunerNum][tAktivated] = 1;
  5070. //Erstellungund Speicherung
  5071. Dtdc_CreateResprayer(Dtdc_TunerNum);
  5072. Dtdc_TunerNum ++;
  5073. Dtdc_SaveTuner();
  5074. Dtdc_Player[playerid][TunerStep] = 0;
  5075. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  5076. SendClientMessage(playerid,COLOR_YELLOW," Tuner wurde erstellt!");
  5077. return 1;
  5078. }
  5079. }
  5080. }
  5081. case AdminTunerDelDia:
  5082. {
  5083. if(Dtdc_Player[playerid][SellerSite] == 1 && listitem == 10){listitem=11;}
  5084. if(Dtdc_Player[playerid][SellerLastShow] == (Dtdc_TunerNum - 1) && listitem > (Dtdc_Player[playerid][SellerLastShow]-((10*Dtdc_Player[playerid][SellerSite])-10)))
  5085. {
  5086. listitem=10;
  5087. }
  5088. switch(listitem)
  5089. {
  5090. case 10 :
  5091. {
  5092. Dtdc_Player[playerid][SellerSite] --;
  5093. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  5094. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  5095. new lastshow = 0;
  5096. for(new i = minshow; i <= maxshow && i < Dtdc_TunerNum; i++)
  5097. {
  5098. lastshow = i;
  5099. if(i == minshow){format(string, sizeof(string), "%s",Dtdc_Tune[i][tNameIs]);}
  5100. else {format(string, sizeof(string), "%s\n%s",string,Dtdc_Tune[i][tNameIs]);}
  5101. }
  5102. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  5103. if(lastshow < (Dtdc_TunerNum - 1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  5104. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Tuner löschen",string,"Löschen","Zurück");
  5105. Dtdc_Player[playerid][AdminDialog] = AdminTunerDelDia;
  5106. Dtdc_Player[playerid][SellerLastShow] =lastshow;
  5107. }
  5108. case 11 :
  5109. {
  5110. Dtdc_Player[playerid][SellerSite] ++;
  5111. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  5112. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  5113. new lastshow = 0;
  5114. for(new i = minshow; i <= maxshow && i < Dtdc_TunerNum; i++)
  5115. {
  5116. lastshow = i;
  5117. if(i == minshow){format(string, sizeof(string), "%s",Dtdc_Tune[i][tNameIs]);}
  5118. else {format(string, sizeof(string), "%s\n%s",string,Dtdc_Tune[i][tNameIs]);}
  5119. }
  5120. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  5121. if(lastshow < (Dtdc_TunerNum - 1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  5122. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Tuner löschen",string,"Löschen","Zurück");
  5123. Dtdc_Player[playerid][AdminDialog] = AdminTunerDelDia;
  5124. Dtdc_Player[playerid][SellerLastShow] =lastshow;
  5125. }
  5126. default:
  5127. {
  5128. new delSeller = ((Dtdc_Player[playerid][SellerSite] *10)-10) +listitem;
  5129. Dtdc_DeleteTuner(delSeller);
  5130. Dtdc_Respray[delSeller][rSqlId] = 0;
  5131. Dtdc_Respray[delSeller][rAktivated] = 0;
  5132.  
  5133. format(string, sizeof(string), "Tuner (%s) gelöscht!",Dtdc_Tune[delSeller][tNameIs]);
  5134. SendClientMessage(playerid,COLOR_YELLOW,string);
  5135.  
  5136. for(new i = 0; i <Dtdc_TunerNum+1; i++)
  5137. {
  5138. Dtdc_DestroyTuner(i);
  5139. }
  5140.  
  5141. Dtdc_SaveTuner();
  5142. Dtdc_LoadTuner();
  5143.  
  5144. for(new i = 0; i <Dtdc_TunerNum; i++)
  5145. {
  5146. Dtdc_CreateTuner(i);
  5147. }
  5148.  
  5149. checker = 0;
  5150. if(Dtdc_Player[playerid][TunerStep] != 0) {checker = 1;}
  5151. format(string, sizeof(string), "Editieren\nLöschen\nAlle Löschen\n%s",newSellerstr[checker]);
  5152. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Tuner:",string,"OK","Zurück");
  5153. Dtdc_Player[playerid][AdminDialog] = AdminTunerDia;
  5154.  
  5155. }
  5156. }
  5157. }
  5158. case AdminResprayerDia:
  5159. {
  5160. switch(listitem)
  5161. {
  5162. case 0 :
  5163. {
  5164. if(Dtdc_ResprayerNum == 0){SendClientMessage(playerid,COLOR_GREY," Es sind noch keine Resprayer verfügbar!"); return 1;}
  5165. Dtdc_Player[playerid][SellerSite] = 1;
  5166. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  5167. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  5168. new lastshow = 0;
  5169. for(new i = minshow; i <= maxshow && i < Dtdc_ResprayerNum; i++)
  5170. {
  5171. lastshow = i;
  5172. if(i == minshow){format(string, sizeof(string), "%s",Dtdc_Respray[i][rNameIs]);}
  5173. else {format(string, sizeof(string), "%s\n%s",string,Dtdc_Respray[i][rNameIs]);}
  5174. }
  5175. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  5176. if(lastshow < (Dtdc_ResprayerNum - 1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  5177. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Resprayer editieren",string,"Auswählen","Zurück");
  5178. Dtdc_Player[playerid][AdminDialog] = AdminResprayerEditDia;
  5179. Dtdc_Player[playerid][SellerLastShow] =lastshow;
  5180. }
  5181. case 1 :
  5182. {
  5183. if(Dtdc_ResprayerNum == 0){SendClientMessage(playerid,COLOR_GREY," Es sind noch keine Resprayer verfügbar!"); return 1;}
  5184. Dtdc_Player[playerid][SellerSite] = 1;
  5185. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  5186. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  5187. new lastshow = 0;
  5188. for(new i = minshow; i <= maxshow && i < Dtdc_ResprayerNum; i++)
  5189. {
  5190. lastshow = i;
  5191. if(i == minshow){format(string, sizeof(string), "%s",Dtdc_Respray[i][rNameIs]);}
  5192. else {format(string, sizeof(string), "%s\n%s",string,Dtdc_Respray[i][rNameIs]);}
  5193. }
  5194. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  5195. if(lastshow < (Dtdc_ResprayerNum - 1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  5196. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Resprayer löschen",string,"Löschen","Zurück");
  5197. Dtdc_Player[playerid][AdminDialog] = AdminResprayerDelDia;
  5198. Dtdc_Player[playerid][SellerLastShow] =lastshow;
  5199. }
  5200. case 2 :
  5201. {
  5202. format(string2, sizeof(string2), " Resprayer löschen",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  5203. format(string, sizeof(string), "Wollen sie wirklich alle %d Resprayer löschen?",Dtdc_ResprayerNum);
  5204. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_MSGBOX,string2,string,"Löschen","Zurück");
  5205. Dtdc_Player[playerid][AdminDialog] = AdminResprayerDelAllDia;
  5206. }
  5207. case 3 :
  5208. {
  5209. switch(Dtdc_Player[playerid][ResprayerStep])
  5210. {
  5211. case 0:
  5212. {
  5213. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,"Neuer Resprayer:","Name des Resprayers:","OK","Abbrechen");
  5214. Dtdc_Player[playerid][AdminDialog] = AdminResprayerCreDia;
  5215. return 1;
  5216. }
  5217. case 1:
  5218. {
  5219. if(!IsPlayerInAnyVehicle(playerid))
  5220. {
  5221. SendClientMessage(playerid,COLOR_GREY," Du musst in einem Auto sein um den Eingang setzen zu können!");
  5222. return 1;
  5223. }
  5224. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_MSGBOX ,"Neuer Resprayer:","Eingang des Resprayers:\nOk drücken wenn sie am Ort stehen, an dem der Eingang hin soll.","OK","Abbrechen");
  5225. Dtdc_Player[playerid][AdminDialog] = AdminResprayerCreDia;
  5226. return 1;
  5227. }
  5228. }
  5229. }
  5230. }
  5231. }
  5232. case AdminResprayerEditDia:
  5233. {
  5234. if(Dtdc_Player[playerid][SellerSite] == 1 && listitem == 10){listitem=11;}
  5235. if(Dtdc_Player[playerid][SellerLastShow] == (Dtdc_ResprayerNum - 1) && listitem > (Dtdc_Player[playerid][SellerLastShow]-((10*Dtdc_Player[playerid][SellerSite])-10)))
  5236. {
  5237. listitem=10;
  5238. }
  5239. switch(listitem)
  5240. {
  5241. case 10 :
  5242. {
  5243. Dtdc_Player[playerid][SellerSite] --;
  5244. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  5245. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  5246. new lastshow = 0;
  5247. for(new i = minshow; i <= maxshow && i < Dtdc_ResprayerNum; i++)
  5248. {
  5249. lastshow = i;
  5250. if(i == minshow){format(string, sizeof(string), "%s",Dtdc_Respray[i][rNameIs]);}
  5251. else {format(string, sizeof(string), "%s\n%s",string,Dtdc_Respray[i][rNameIs]);}
  5252. }
  5253. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  5254. if(lastshow < (Dtdc_ResprayerNum - 1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  5255. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Resprayer editieren",string,"Löschen","Zurück");
  5256. Dtdc_Player[playerid][AdminDialog] = AdminResprayerEditDia;
  5257. Dtdc_Player[playerid][SellerLastShow] =lastshow;
  5258. }
  5259. case 11 :
  5260. {
  5261. Dtdc_Player[playerid][SellerSite] ++;
  5262. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  5263. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  5264. new lastshow = 0;
  5265. for(new i = minshow; i <= maxshow && i < Dtdc_ResprayerNum; i++)
  5266. {
  5267. lastshow = i;
  5268. if(i == minshow){format(string, sizeof(string), "%s",Dtdc_Respray[i][rNameIs]);}
  5269. else {format(string, sizeof(string), "%s\n%s",string,Dtdc_Respray[i][rNameIs]);}
  5270. }
  5271. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  5272. if(lastshow < (Dtdc_ResprayerNum - 1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  5273. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Resprayer editieren",string,"Löschen","Zurück");
  5274. Dtdc_Player[playerid][AdminDialog] = AdminResprayerEditDia;
  5275. Dtdc_Player[playerid][SellerLastShow] =lastshow;
  5276. }
  5277. default:
  5278. {
  5279. Dtdc_Player[playerid][editSeller] = ((Dtdc_Player[playerid][SellerSite] *10)-10) +listitem;
  5280. format(string, sizeof(string), "Resprayer (%s) editieren",Dtdc_Respray[Dtdc_Player[playerid][editSeller]][rNameIs]);
  5281. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Namen editieren\nPosition setzen","Auswählen","Zurück");
  5282. Dtdc_Player[playerid][AdminDialog] = AdminResprayerEditSelDia;
  5283. }
  5284. }
  5285. }
  5286. case AdminResprayerEditSelDia:
  5287. {
  5288. switch(listitem)
  5289. {
  5290. case 0://Namen
  5291. {
  5292. format(string2, sizeof(string2), " Name von Resprayer (%s) editieren",Dtdc_Respray[Dtdc_Player[playerid][editSeller]][rNameIs]);
  5293. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,string2,"Bitte lege den neuen Namen fest!","Speichern","Zurück");
  5294. Dtdc_Player[playerid][AdminDialog] = AdminResprayerRenameDia;
  5295. }
  5296. case 1://Position
  5297. {
  5298. if(!IsPlayerInAnyVehicle(playerid))
  5299. {
  5300. SendClientMessage(playerid,COLOR_GREY," Du musst in einem Auto sein um die Position setzen zu können!");
  5301. format(string, sizeof(string), "Resprayer (%s) editieren",Dtdc_Respray[Dtdc_Player[playerid][editSeller]][rNameIs]);
  5302. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Namen editieren\nPosition setzen","Auswählen","Zurück");
  5303. Dtdc_Player[playerid][AdminDialog] = AdminResprayerEditSelDia;
  5304. return 1;
  5305. }
  5306. format(string2, sizeof(string2), " Position von Resprayer (%s) setzen",Dtdc_Respray[Dtdc_Player[playerid][editSeller]][rNameIs]);
  5307. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_MSGBOX ,string2,"Resprayer Position:\nOk drücken wenn sie am Ort stehen, an dem der Resprayer Sein soll.","OK","Zurück");
  5308. Dtdc_Player[playerid][AdminDialog] = AdminResprayerPosDia;
  5309. Dtdc_SaveResprayer();
  5310. }
  5311. }
  5312. }
  5313. case AdminResprayerRenameDia:
  5314. {
  5315. if(strlen(inputtext) == 0)
  5316. {
  5317. SendClientMessage(playerid,COLOR_GREY," Ein Resprayer kann keinen lerren Namen haben!");
  5318. Dtdc_Player[playerid][SellerStep] = 0;
  5319. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  5320.  
  5321. format(string2, sizeof(string2), " Name von Resprayer (%s) editieren",Dtdc_Respray[Dtdc_Player[playerid][editSeller]][rNameIs]);
  5322. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,string2,"Bitte lege den neuen Namen fest!","Speichern","Zurück");
  5323. Dtdc_Player[playerid][AdminDialog] = AdminResprayerRenameDia;
  5324. return 1;
  5325. }
  5326. if(strlen(inputtext) >= 40)
  5327. {
  5328. SendClientMessage(playerid,COLOR_GREY," Der Name darf Maximal 40 Zeichen lang sein!");
  5329. format(string2, sizeof(string2), " Name von Resprayer (%s) editieren",Dtdc_Respray[Dtdc_Player[playerid][editSeller]][rNameIs]);
  5330. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,string2,"Bitte lege den neuen Namen fest!","Speichern","Zurück");
  5331. Dtdc_Player[playerid][AdminDialog] = AdminResprayerRenameDia;
  5332. return 1;
  5333. }
  5334. format(Dtdc_Respray[Dtdc_Player[playerid][editSeller]][rNameIs],40,inputtext);
  5335. format(string, sizeof(string), " Der Name (%s) wurde gespeichert!",inputtext);
  5336. SendClientMessage(playerid,COLOR_YELLOW,string);
  5337. Dtdc_SaveResprayer();
  5338.  
  5339. format(string, sizeof(string), "Resprayer (%s) editieren",Dtdc_Respray[Dtdc_Player[playerid][editSeller]][rNameIs]);
  5340. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Namen editieren\nPosition setzen","Auswählen","Zurück");
  5341. Dtdc_Player[playerid][AdminDialog] = AdminResprayerEditSelDia;
  5342. }
  5343. case AdminResprayerPosDia:
  5344. {
  5345. if(!IsPlayerInAnyVehicle(playerid))
  5346. {
  5347. SendClientMessage(playerid,COLOR_GREY," Du musst in einem Auto sein um die Position setzen zu können!");
  5348. format(string, sizeof(string), "Resprayer (%s) editieren",Dtdc_Respray[Dtdc_Player[playerid][editSeller]][rNameIs]);
  5349. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Namen editieren\nPosition setzen","Auswählen","Zurück");
  5350. Dtdc_Player[playerid][AdminDialog] = AdminResprayerEditSelDia;
  5351. return 1;
  5352. }
  5353. GetVehiclePos(GetPlayerVehicleID(playerid),Dtdc_Respray[Dtdc_Player[playerid][editSeller]][rPosX],Dtdc_Respray[Dtdc_Player[playerid][editSeller]][rPosY],Dtdc_Respray[Dtdc_Player[playerid][editSeller]][rPosZ]);
  5354. GetVehicleZAngle(GetPlayerVehicleID(playerid), Dtdc_Respray[Dtdc_Player[playerid][editSeller]][rRot]);
  5355. SendClientMessage(playerid,COLOR_YELLOW," Die neue Position wurde gespeichert!");
  5356.  
  5357. Dtdc_DestroyResprayer(Dtdc_Player[playerid][editSeller]);
  5358. Dtdc_CreateResprayer(Dtdc_Player[playerid][editSeller]);
  5359.  
  5360. format(string, sizeof(string), "Resprayer (%s) editieren",Dtdc_Respray[Dtdc_Player[playerid][editSeller]][rNameIs]);
  5361. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Namen editieren\nPosition setzen","Auswählen","Zurück");
  5362. Dtdc_Player[playerid][AdminDialog] = AdminResprayerEditSelDia;
  5363. Dtdc_SaveResprayer();
  5364. }
  5365. case AdminResprayerDelDia:
  5366. {
  5367. if(Dtdc_Player[playerid][SellerSite] == 1 && listitem == 10){listitem=11;}
  5368. if(Dtdc_Player[playerid][SellerLastShow] == (Dtdc_ResprayerNum - 1) && listitem > (Dtdc_Player[playerid][SellerLastShow]-((10*Dtdc_Player[playerid][SellerSite])-10)))
  5369. {
  5370. listitem=10;
  5371. }
  5372. switch(listitem)
  5373. {
  5374. case 10 :
  5375. {
  5376. Dtdc_Player[playerid][SellerSite] --;
  5377. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  5378. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  5379. new lastshow = 0;
  5380. for(new i = minshow; i <= maxshow && i < Dtdc_ResprayerNum; i++)
  5381. {
  5382. lastshow = i;
  5383. if(i == minshow){format(string, sizeof(string), "%s",Dtdc_Respray[i][rNameIs]);}
  5384. else {format(string, sizeof(string), "%s\n%s",string,Dtdc_Respray[i][rNameIs]);}
  5385. }
  5386. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  5387. if(lastshow < (Dtdc_ResprayerNum - 1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  5388. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Resprayer löschen",string,"Löschen","Zurück");
  5389. Dtdc_Player[playerid][AdminDialog] = AdminResprayerDelDia;
  5390. Dtdc_Player[playerid][SellerLastShow] =lastshow;
  5391. }
  5392. case 11 :
  5393. {
  5394. Dtdc_Player[playerid][SellerSite] ++;
  5395. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  5396. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  5397. new lastshow = 0;
  5398. for(new i = minshow; i <= maxshow && i < Dtdc_ResprayerNum; i++)
  5399. {
  5400. lastshow = i;
  5401. if(i == minshow){format(string, sizeof(string), "%s",Dtdc_Respray[i][rNameIs]);}
  5402. else {format(string, sizeof(string), "%s\n%s",string,Dtdc_Respray[i][rNameIs]);}
  5403. }
  5404. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  5405. if(lastshow < (Dtdc_ResprayerNum - 1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  5406. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Resprayer löschen",string,"Löschen","Zurück");
  5407. Dtdc_Player[playerid][AdminDialog] = AdminResprayerDelDia;
  5408. Dtdc_Player[playerid][SellerLastShow] =lastshow;
  5409. }
  5410. default:
  5411. {
  5412. new delSeller = ((Dtdc_Player[playerid][SellerSite] *10)-10) +listitem;
  5413. Dtdc_DeleteRespray(delSeller);
  5414. Dtdc_Respray[delSeller][rSqlId] = 0;
  5415. Dtdc_Respray[delSeller][rAktivated] = 0;
  5416.  
  5417. format(string, sizeof(string), "Resprayer (%s) gelöscht!",Dtdc_Respray[delSeller][rNameIs]);
  5418. SendClientMessage(playerid,COLOR_YELLOW,string);
  5419.  
  5420. for(new i = 0; i <Dtdc_ResprayerNum+1; i++)
  5421. {
  5422. Dtdc_DestroyResprayer(i);
  5423. }
  5424.  
  5425. Dtdc_SaveResprayer();
  5426. Dtdc_LoadResprayer();
  5427.  
  5428. for(new i = 0; i <Dtdc_ResprayerNum; i++)
  5429. {
  5430. Dtdc_CreateResprayer(i);
  5431. }
  5432.  
  5433. checker = 0;
  5434. if(Dtdc_Player[playerid][ResprayerStep] != 0) {checker = 1;}
  5435. format(string, sizeof(string), "Editieren\nLöschen\nAlle Löschen\n%s",newSellerstr[checker]);
  5436. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Resprayer:",string,"OK","Zurück");
  5437. Dtdc_Player[playerid][AdminDialog] = AdminResprayerDia;
  5438.  
  5439. }
  5440. }
  5441. }
  5442. case AdminResprayerDelAllDia:
  5443. {
  5444. new SellerNum = Dtdc_ResprayerNum;
  5445. for(new i=0; i< Dtdc_ResprayerNum; i++)
  5446. {
  5447. Dtdc_DeleteRespray(i);
  5448. Dtdc_Respray[i][rSqlId] = 0;
  5449. Dtdc_Respray[i][rAktivated] = 0;
  5450. Dtdc_DestroyResprayer(i);
  5451. }
  5452.  
  5453. Dtdc_SaveResprayer();
  5454. Dtdc_LoadResprayer();
  5455.  
  5456. format(string, sizeof(string), "Alle %d Resprayer wurden gelöscht!",SellerNum);
  5457. SendClientMessage(playerid,COLOR_YELLOW,string);
  5458.  
  5459. checker = 0;
  5460. if(Dtdc_Player[playerid][ResprayerStep] != 0) {checker = 1;}
  5461. format(string, sizeof(string), "Editieren\nLöschen\nAlle Löschen\n%s",newSellerstr[checker]);
  5462. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Resprayer:",string,"OK","Zurück");
  5463. Dtdc_Player[playerid][AdminDialog] = AdminResprayerDia;
  5464. }
  5465. case AdminResprayerCreDia:
  5466. {
  5467. switch(Dtdc_Player[playerid][ResprayerStep])
  5468. {
  5469. case 0:
  5470. {
  5471. if(strlen(inputtext) == 0)
  5472. {
  5473. SendClientMessage(playerid,COLOR_GREY," Ein Autohaus kann keinen lerren Namen haben!");
  5474. Dtdc_Player[playerid][ResprayerStep] = 0;
  5475. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,"Neues Autohaus:","Name des Autohauses:","OK","Abbrechen");
  5476. Dtdc_Player[playerid][AdminDialog] = AdminResprayerCreDia;
  5477. return 1;
  5478. }
  5479. if(strlen(inputtext) >= 40)
  5480. {
  5481. SendClientMessage(playerid,COLOR_GREY," Der Name darf Maximal 40 Zeichen lang sein!");
  5482. Dtdc_Player[playerid][ResprayerStep] = 0;
  5483. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_INPUT,"Neues Autohaus:","Name des Autohauses:","OK","Abbrechen");
  5484. Dtdc_Player[playerid][AdminDialog] = AdminResprayerCreDia;
  5485. return 1;
  5486. }
  5487. format(Dtdc_Player[playerid][RCName],40,inputtext);
  5488. format(string, sizeof(string), " Der Name (%s) wurde gespeichert!",inputtext);
  5489. SendClientMessage(playerid,COLOR_YELLOW,string);
  5490. if(!IsPlayerInAnyVehicle(playerid))
  5491. {
  5492. SendClientMessage(playerid,COLOR_GREY," Du musst in einem Auto sein um den Eingang setzen zu können!");
  5493. return 1;
  5494. }
  5495. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_MSGBOX ,"Neues Autohaus:","Eingang des Autohauses:\nOk drücken wenn sie am Ort stehen, an dem der Eingang hin soll.","OK","Abbrechen");
  5496. Dtdc_Player[playerid][AdminDialog] = AdminResprayerCreDia;
  5497. Dtdc_Player[playerid][ResprayerStep] ++;
  5498. return 1;
  5499. }
  5500. case 1:
  5501. {
  5502. if(!IsPlayerInAnyVehicle(playerid))
  5503. {
  5504. SendClientMessage(playerid,COLOR_GREY," Du musst in einem Auto sein um den Eingang setzen zu können!");
  5505. return 1;
  5506. }
  5507. GetVehiclePos(GetPlayerVehicleID(playerid),Dtdc_Player[playerid][RCeX],Dtdc_Player[playerid][RCeY],Dtdc_Player[playerid][RCeZ]);
  5508. GetVehicleZAngle(GetPlayerVehicleID(playerid), Dtdc_Player[playerid][RCeR]);
  5509. SendClientMessage(playerid,COLOR_YELLOW,"Der Eingangsort wurde gespeichert.");
  5510. //Eingaben speichern
  5511. format(Dtdc_Respray[Dtdc_ResprayerNum][rNameIs],40,Dtdc_Player[playerid][RCName]);
  5512. Dtdc_Respray[Dtdc_ResprayerNum][rRot] = Dtdc_Player[playerid][RCeR];
  5513. Dtdc_Respray[Dtdc_ResprayerNum][rPosX] = Dtdc_Player[playerid][RCeX];
  5514. Dtdc_Respray[Dtdc_ResprayerNum][rPosY] = Dtdc_Player[playerid][RCeY];
  5515. Dtdc_Respray[Dtdc_ResprayerNum][rPosZ] = Dtdc_Player[playerid][RCeZ];
  5516. Dtdc_Respray[Dtdc_ResprayerNum][rAktivated] = 1;
  5517. //Erstellungund Speicherung
  5518. Dtdc_CreateResprayer(Dtdc_ResprayerNum);
  5519. Dtdc_ResprayerNum ++;
  5520. Dtdc_SaveResprayer();
  5521. Dtdc_Player[playerid][ResprayerStep] = 0;
  5522. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  5523. SendClientMessage(playerid,COLOR_YELLOW," Resprayer wurde erstellt!");
  5524. return 1;
  5525. }
  5526. }
  5527. }
  5528. }
  5529. } else {
  5530. switch(Dtdc_Player[playerid][AdminDialog])
  5531. {
  5532. case AdminCaLiCfgDia : { Dtdc_InitCfgChanger(playerid);}
  5533. case AdminCarListDia : { Dtdc_InitCaLiCfgChanger(playerid);}
  5534. case AdminCarFindDia : { Dtdc_InitCaLiCfgChanger(playerid);}
  5535. case AdminCarSellDia : { Dtdc_InitCaLiCfgChanger(playerid);}
  5536. case AdminCfgDia : {OnPlayerCommandText(playerid, "/dtdcamenu");}
  5537. case AdminLogCfgDia : {OnPlayerCommandText(playerid, "/dtdcamenu");}
  5538. case AdminSelDia : {Dtdc_InitCfgChanger(playerid);}
  5539. case AdminAutohausCfgDia : {Dtdc_InitCfgChanger(playerid);}
  5540. case AdminAllgemeinCfgDia : {Dtdc_InitCfgChanger(playerid);}
  5541. case AdminOPCfgDia : {Dtdc_InitCfgChanger(playerid);}
  5542. case AdminLoaDia : {Dtdc_InitAllgCfgChanger(playerid);}
  5543. case AdminLosDia : {Dtdc_InitAllgCfgChanger(playerid);}
  5544. case AdminHealDia : {Dtdc_InitSaveCfgChanger(playerid);}
  5545. case AdminVWDia : {Dtdc_InitSaveCfgChanger(playerid);}
  5546. case AdminParkDia : {Dtdc_InitAllgCfgChanger(playerid);}
  5547. case AdminPIVBDia : {Dtdc_InitAuHaCfgChanger(playerid);}
  5548. case AdminPickDia: {Dtdc_InitAuHaCfgChanger(playerid);}
  5549. case AdminMapDia: {Dtdc_InitAuHaCfgChanger(playerid);}
  5550. case AdminSpdDia : {Dtdc_InitCfgChanger(playerid);}
  5551. case AdminCRTDia : {Dtdc_InitAllgCfgChanger(playerid);}
  5552. case AdminESCDia : {Dtdc_InitAuHaCfgChanger(playerid);}
  5553. case AdminSaveCfgDia : {Dtdc_InitCfgChanger(playerid);}
  5554. case AdminSellerDia:{OnPlayerCommandText(playerid, "/dtdcamenu");}
  5555. case AdminResprayerDia:{OnPlayerCommandText(playerid, "/dtdcamenu");}
  5556. case AdminTunerDia:{OnPlayerCommandText(playerid, "/dtdcamenu");}
  5557. case AdminAllLogDia : {Dtdc_InitLogCfgChanger(playerid);}
  5558. case AdminCbLogDia : {Dtdc_InitLogCfgChanger(playerid);}
  5559. case AdminRaaLogDia : {Dtdc_InitLogCfgChanger(playerid);}
  5560. case AdminDfLogDia : {Dtdc_InitLogCfgChanger(playerid);}
  5561. case AdminSpdCfgDia: {Dtdc_InitCfgChanger(playerid);}
  5562. case AdminSpdTankCfgDia:{Dtdc_InitSpdCfgChanger(playerid);}
  5563. case AdminSpdShCfgDia:{Dtdc_InitSpdCfgChanger(playerid);}
  5564. case AdminSpdPosiCfgDia:{Dtdc_InitSpdCfgChanger(playerid);}
  5565. case AdminResprayerCfgDia:{Dtdc_InitCfgChanger(playerid);}
  5566. case AdminTunerCfgDia:{Dtdc_InitCfgChanger(playerid);}
  5567. case AdminReSpDia:{Dtdc_InitReSpCfgChanger(playerid);}
  5568. case AdminRsMapDia:{Dtdc_InitReSpCfgChanger(playerid);}
  5569. case AdminRsIconDia:{Dtdc_InitReSpCfgChanger(playerid);}
  5570. case AdminRsPreisDia:{Dtdc_InitReSpCfgChanger(playerid);}
  5571. case AdminTuSpDia:{Dtdc_InitTuCfgChanger(playerid);}
  5572. case AdminTunerNeonOnDia:{Dtdc_InitTuCfgChanger(playerid);}
  5573. case AdminTuMapDia:{Dtdc_InitTuCfgChanger(playerid);}
  5574. case AdminTuIconDia:{Dtdc_InitTuCfgChanger(playerid);}
  5575. case AdminTuNPreisDia:{Dtdc_InitTuCfgChanger(playerid);}
  5576. case AdminTuNPPreisDia:{Dtdc_InitTuCfgChanger(playerid);}
  5577. case AdminOParkDia : {Dtdc_InitOParkCfgChanger(playerid);}
  5578. case AdminOPTowCfgDia : {Dtdc_InitOParkCfgChanger(playerid);}
  5579. case AdminOPPayCfgDia : {Dtdc_InitOParkCfgChanger(playerid);}
  5580. case AdminOPRateCfgDia : {Dtdc_InitOParkCfgChanger(playerid);}
  5581. case AdminOPPosCfgDia : {Dtdc_InitOParkCfgChanger(playerid);}
  5582. case AdminTunerDelAllDia:
  5583. {
  5584. checker = 0;
  5585. if(Dtdc_Player[playerid][TunerStep] != 0) {checker = 1;}
  5586. format(string, sizeof(string), "Editieren\nLöschen\nAlle Löschen\n%s",newSellerstr[checker]);
  5587. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Tuner:",string,"OK","Zurück");
  5588. Dtdc_Player[playerid][AdminDialog] = AdminTunerDia;
  5589. }
  5590. case AdminTunerRenameDia:
  5591. {
  5592. format(string, sizeof(string), "Resprayer (%s) editieren",Dtdc_Tune[Dtdc_Player[playerid][editSeller]][tNameIs]);
  5593. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Namen editieren\nPosition setzen","Auswählen","Zurück");
  5594. Dtdc_Player[playerid][AdminDialog] = AdminTunerEditSelDia;
  5595. Dtdc_SaveTuner();
  5596. }
  5597. case AdminTunerPosDia:
  5598. {
  5599. format(string, sizeof(string), "Resprayer (%s) editieren",Dtdc_Tune[Dtdc_Player[playerid][editSeller]][tNameIs]);
  5600. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Namen editieren\nPosition setzen","Auswählen","Zurück");
  5601. Dtdc_Player[playerid][AdminDialog] = AdminTunerEditSelDia;
  5602. Dtdc_SaveTuner();
  5603. }
  5604. case AdminTunerDelDia:
  5605. {
  5606. checker = 0;
  5607. if(Dtdc_Player[playerid][TunerStep] != 0) {checker = 1;}
  5608. format(string, sizeof(string), "Editieren\nLöschen\nAlle Löschen\n%s",newSellerstr[checker]);
  5609. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Tuner:",string,"OK","Zurück");
  5610. Dtdc_Player[playerid][AdminDialog] = AdminTunerDia;
  5611. }
  5612. case AdminTunerEditDia:
  5613. {
  5614. checker = 0;
  5615. if(Dtdc_Player[playerid][TunerStep] != 0) {checker = 1;}
  5616. format(string, sizeof(string), "Editieren\nLöschen\nAlle Löschen\n%s",newSellerstr[checker]);
  5617. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Tuner:",string,"OK","Zurück");
  5618. Dtdc_Player[playerid][AdminDialog] = AdminTunerDia;
  5619. }
  5620. case AdminTunerEditSelDia:
  5621. {
  5622. checker = 0;
  5623. if(Dtdc_Player[playerid][TunerStep] != 0) {checker = 1;}
  5624. format(string, sizeof(string), "Editieren\nLöschen\nAlle Löschen\n%s",newSellerstr[checker]);
  5625. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Tuner:",string,"OK","Zurück");
  5626. Dtdc_Player[playerid][AdminDialog] = AdminTunerDia;
  5627. }
  5628. case AdminTunerCreDia:
  5629. {
  5630. checker = 0;
  5631. if(Dtdc_Player[playerid][TunerStep] != 0) {checker = 1;}
  5632. format(string, sizeof(string), "Editieren\nLöschen\nAlle Löschen\n%s",newSellerstr[checker]);
  5633. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Tuner:",string,"OK","Zurück");
  5634. Dtdc_Player[playerid][AdminDialog] = AdminTunerDia;
  5635. }
  5636. //resprayer
  5637. case AdminResprayerDelAllDia:
  5638. {
  5639. checker = 0;
  5640. if(Dtdc_Player[playerid][ResprayerStep] != 0) {checker = 1;}
  5641. format(string, sizeof(string), "Editieren\nLöschen\nAlle Löschen\n%s",newSellerstr[checker]);
  5642. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Resprayer:",string,"OK","Zurück");
  5643. Dtdc_Player[playerid][AdminDialog] = AdminResprayerDia;
  5644. }
  5645. case AdminResprayerRenameDia:
  5646. {
  5647. format(string, sizeof(string), "Resprayer (%s) editieren",Dtdc_Respray[Dtdc_Player[playerid][editSeller]][rNameIs]);
  5648. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Namen editieren\nPosition setzen","Auswählen","Zurück");
  5649. Dtdc_Player[playerid][AdminDialog] = AdminResprayerEditSelDia;
  5650. Dtdc_SaveResprayer();
  5651. }
  5652. case AdminResprayerPosDia:
  5653. {
  5654. format(string, sizeof(string), "Resprayer (%s) editieren",Dtdc_Respray[Dtdc_Player[playerid][editSeller]][rNameIs]);
  5655. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Namen editieren\nPosition setzen","Auswählen","Zurück");
  5656. Dtdc_Player[playerid][AdminDialog] = AdminResprayerEditSelDia;
  5657. Dtdc_SaveResprayer();
  5658. }
  5659. case AdminResprayerDelDia:
  5660. {
  5661. checker = 0;
  5662. if(Dtdc_Player[playerid][ResprayerStep] != 0) {checker = 1;}
  5663. format(string, sizeof(string), "Editieren\nLöschen\nAlle Löschen\n%s",newSellerstr[checker]);
  5664. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Resprayer:",string,"OK","Zurück");
  5665. Dtdc_Player[playerid][AdminDialog] = AdminResprayerDia;
  5666. }
  5667. case AdminResprayerEditDia:
  5668. {
  5669. checker = 0;
  5670. if(Dtdc_Player[playerid][ResprayerStep] != 0) {checker = 1;}
  5671. format(string, sizeof(string), "Editieren\nLöschen\nAlle Löschen\n%s",newSellerstr[checker]);
  5672. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Resprayer:",string,"OK","Zurück");
  5673. Dtdc_Player[playerid][AdminDialog] = AdminResprayerDia;
  5674. }
  5675. case AdminResprayerEditSelDia:
  5676. {
  5677. checker = 0;
  5678. if(Dtdc_Player[playerid][ResprayerStep] != 0) {checker = 1;}
  5679. format(string, sizeof(string), "Editieren\nLöschen\nAlle Löschen\n%s",newSellerstr[checker]);
  5680. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Resprayer:",string,"OK","Zurück");
  5681. Dtdc_Player[playerid][AdminDialog] = AdminResprayerDia;
  5682. }
  5683. case AdminResprayerCreDia:
  5684. {
  5685. checker = 0;
  5686. if(Dtdc_Player[playerid][ResprayerStep] != 0) {checker = 1;}
  5687. format(string, sizeof(string), "Editieren\nLöschen\nAlle Löschen\n%s",newSellerstr[checker]);
  5688. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Resprayer:",string,"OK","Zurück");
  5689. Dtdc_Player[playerid][AdminDialog] = AdminResprayerDia;
  5690. }
  5691. case AdminSellerEditPosDia:
  5692. {
  5693. format(string, sizeof(string), "Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  5694. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Namen editieren\nPositionen editieren\nParkplaetze editieren\nVerkaufs-Autos editieren","Auswählen","Zurück");
  5695. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarEditDia;
  5696. }
  5697. case AdminSellerEditPosICDia:
  5698. {
  5699. format(string2, sizeof(string2), " Positionen von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  5700. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string2,"Eingang-Position setzen\nLiveview Car-Position setzen\nLiveview Cam-Position setzen\nLiveview Player-Position setzen","Auswählen","Zurück");
  5701. Dtdc_Player[playerid][AdminDialog] = AdminSellerEditPosDia;
  5702. }
  5703. case AdminSellerEditPosLCDia:
  5704. {
  5705. format(string2, sizeof(string2), " Positionen von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  5706. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string2,"Eingang-Position setzen\nLiveview Car-Position setzen\nLiveview Cam-Position setzen\nLiveview Player-Position setzen","Auswählen","Zurück");
  5707. Dtdc_Player[playerid][AdminDialog] = AdminSellerEditPosDia;
  5708. }
  5709. case AdminSellerEditPosCADia:
  5710. {
  5711. format(string2, sizeof(string2), " Positionen von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  5712. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string2,"Eingang-Position setzen\nLiveview Car-Position setzen\nLiveview Cam-Position setzen\nLiveview Player-Position setzen","Auswählen","Zurück");
  5713. Dtdc_Player[playerid][AdminDialog] = AdminSellerEditPosDia;
  5714. }
  5715. case AdminSellerEditPosPLDia:
  5716. {
  5717. format(string2, sizeof(string2), " Positionen von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  5718. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string2,"Eingang-Position setzen\nLiveview Car-Position setzen\nLiveview Cam-Position setzen\nLiveview Player-Position setzen","Auswählen","Zurück");
  5719. Dtdc_Player[playerid][AdminDialog] = AdminSellerEditPosDia;
  5720. }
  5721. case AdminSellerCarEditDia2:
  5722. {
  5723. format(string, sizeof(string), " Autos von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  5724. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Auto-Preis editieren\nAuto loeschen\nAlle Autos löschen\nAuto Hinzufügen","Auswählen","Zurück");
  5725. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarNewDia;
  5726. }
  5727. case AdminSellerParkDelAllDia:
  5728. {
  5729. format(string, sizeof(string), " Parkplätze von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  5730. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Alle Parkplätze löschen\nParkplatz Hinzufügen","Auswählen","Zurück");
  5731. Dtdc_Player[playerid][AdminDialog] = AdminSellerParkSelDia;
  5732. }
  5733. case AdminSellerParkNewDia:
  5734. {
  5735. format(string, sizeof(string), " Parkplätze von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  5736. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Alle Parkplätze löschen\nParkplatz Hinzufügen","Auswählen","Zurück");
  5737. Dtdc_Player[playerid][AdminDialog] = AdminSellerParkSelDia;
  5738. }
  5739. case AdminSellerEditDia:
  5740. {
  5741. checker = 0;
  5742. if(Dtdc_Player[playerid][SellerStep] != 0) {checker = 1;}
  5743. format(string, sizeof(string), "Editieren\nLöschen\nAlle Löschen\n%s",newSellerstr[checker]);
  5744. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Autohaeuser:",string,"OK","Zurück");
  5745. Dtdc_Player[playerid][AdminDialog] = AdminSellerDia;
  5746. }
  5747. case AdminSellerCarEditDia:
  5748. {
  5749. checker = 0;
  5750. if(Dtdc_Player[playerid][SellerStep] != 0) {checker = 1;}
  5751. format(string, sizeof(string), "Editieren\nLöschen\nAlle Löschen\n%s",newSellerstr[checker]);
  5752. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Autohaeuser:",string,"OK","Zurück");
  5753. Dtdc_Player[playerid][AdminDialog] = AdminSellerDia;
  5754. }
  5755. case AdminSellerCarNewDia4:
  5756. {
  5757. Dtdc_Player[playerid][SellerSite] = 1;
  5758. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  5759. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  5760. new lastshow = 0;
  5761. for(new i = minshow; i <= maxshow && i < Dtdc_NumCat[Dtdc_Player[playerid][CarCat]]; i++)
  5762. {
  5763. lastshow = i;
  5764. if(i == minshow){format(string, sizeof(string), "%s",Dtdc_CarName[Dtdc_CarCat[Dtdc_Player[playerid][CarCat]][i]-400]);}
  5765. else {format(string, sizeof(string), "%s\n%s",string,Dtdc_CarName[Dtdc_CarCat[Dtdc_Player[playerid][CarCat]][i]-400]);}
  5766. }
  5767. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  5768. if(lastshow < (Dtdc_NumCat[Dtdc_Player[playerid][CarCat]] - 1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  5769. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string2,string,"Auswählen","Zurück");
  5770. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarNewDia3;
  5771. Dtdc_Player[playerid][SellerLastShow] = lastshow;
  5772. }
  5773. case AdminSellerCarDelAllDia:
  5774. {
  5775. format(string, sizeof(string), " Autos von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  5776. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Auto-Preis editieren\nAuto loeschen\nAlle Autos löschen\nAuto Hinzufügen","Auswählen","Zurück");
  5777. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarNewDia;
  5778. }
  5779. case AdminSellerCarDelDia:
  5780. {
  5781. format(string, sizeof(string), " Autos von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  5782. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Auto-Preis editieren\nAuto loeschen\nAlle Autos löschen\nAuto Hinzufügen","Auswählen","Zurück");
  5783. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarNewDia;
  5784. }
  5785. case AdminSellerDelAllDia:
  5786. {
  5787. checker = 0;
  5788. if(Dtdc_Player[playerid][SellerStep] != 0) {checker = 1;}
  5789. format(string, sizeof(string), "Editieren\nLöschen\nAlle Löschen\n%s",newSellerstr[checker]);
  5790. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Autohaeuser:",string,"OK","Zurück");
  5791. Dtdc_Player[playerid][AdminDialog] = AdminSellerDia;
  5792. }
  5793. case AdminSellerDelDia:
  5794. {
  5795. checker = 0;
  5796. if(Dtdc_Player[playerid][SellerStep] != 0) {checker = 1;}
  5797. format(string, sizeof(string), "Editieren\nLöschen\nAlle Löschen\n%s",newSellerstr[checker]);
  5798. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,"Autohaeuser:",string,"OK","Zurück");
  5799. Dtdc_Player[playerid][AdminDialog] = AdminSellerDia;
  5800. }
  5801. case AdminSellerCarNewDia2:
  5802. {
  5803. format(string, sizeof(string), " Autos von Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  5804. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Auto-Preis editieren\nAuto loeschen\nAlle Autos löschen\nAuto Hinzufügen","Auswählen","Zurück");
  5805. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarNewDia;
  5806. }
  5807. case AdminSellerCarNewDia3:
  5808. {
  5809. format(string2, sizeof(string2), " Auto zu Autohaus (%s) hinzufügen",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  5810. for(new i=0;i < sizeof(Dtdc_NameCat);i++)
  5811. {
  5812. if(i == 0) {format(string, sizeof(string), "%s",Dtdc_NameCat[i]);}
  5813. else {format(string, sizeof(string), "%s\n%s",string,Dtdc_NameCat[i]);}
  5814. }
  5815. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string2,string,"Auswählen","Zurück");
  5816. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarNewDia2;
  5817. }
  5818. case AdminSellerRenameDia:
  5819. {
  5820. format(string, sizeof(string), "Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  5821. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Namen editieren\nPositionen editieren\nParkplaetze editieren\nVerkaufs-Autos editieren","Auswählen","Zurück");
  5822. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarEditDia;
  5823. }
  5824. case AdminSellerParkSelDia:
  5825. {
  5826. format(string, sizeof(string), "Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  5827. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Namen editieren\nPositionen editieren\nParkplaetze editieren\nVerkaufs-Autos editieren","Auswählen","Zurück");
  5828. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarEditDia;
  5829. }
  5830. case AdminSellerCarNewDia:
  5831. {
  5832. format(string, sizeof(string), "Autohaus (%s) editieren",Dtdc_Seller[Dtdc_Player[playerid][editSeller]][sName]);
  5833. ShowPlayerDialog(playerid,AdminDia,DIALOG_STYLE_LIST,string,"Namen editieren\nPositionen editieren\nParkplaetze editieren\nVerkaufs-Autos editieren","Auswählen","Zurück");
  5834. Dtdc_Player[playerid][AdminDialog] = AdminSellerCarEditDia;
  5835. }
  5836. default :
  5837. {
  5838. Dtdc_Player[playerid][AdminDialog] = AdminMainDia;
  5839. }
  5840. }
  5841. }//Response
  5842. }
  5843. case CarBuyDia :
  5844. {
  5845. switch(Dtdc_Select)
  5846. {
  5847. case 2://LiveDialog
  5848. {
  5849. if(response)
  5850. {
  5851. if(Dtdc_Player[playerid][IsInSeller] != (MaxSeller +1))
  5852. {
  5853. switch(Dtdc_Player[playerid][CarBuyDialog])
  5854. {
  5855. case LDMainDia:
  5856. {
  5857. if(Dtdc_Player[playerid][SellerSite] == 1 && listitem == 10){listitem=11;}
  5858. if(Dtdc_Player[playerid][SellerLastShow] >= (Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sCars]-1) && listitem > (Dtdc_Player[playerid][SellerLastShow]-((10*Dtdc_Player[playerid][SellerSite])-10+1)))
  5859. {
  5860. listitem=10;
  5861. }
  5862. switch(listitem)
  5863. {
  5864. case 10 :
  5865. {
  5866. format(string2, sizeof(string2), " [%s] ",Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sName]);
  5867. Dtdc_Player[playerid][SellerSite] --;
  5868. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  5869. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  5870. Dtdc_Player[playerid][SellerLastShow] = minshow;
  5871. format(string, sizeof(string), "",string);
  5872. new lastshow = Dtdc_Player[playerid][SellerLastShow];
  5873. new reallastshow = 0;
  5874. Dtdc_Player[playerid][SellerRLastShow] -= (Dtdc_Player[playerid][SellerRLastShow2]-1);
  5875. Dtdc_Player[playerid][SellerRLastShow2] = 0;
  5876. for(new i = 0; i < Dtdc_SCarsNum; i++)
  5877. {
  5878. if(minshow <= lastshow && (i > Dtdc_Player[playerid][SellerRLastShow] || i==0))
  5879. {
  5880. if(lastshow > maxshow){break;}
  5881. if(Dtdc_SCars[i][scSeller] == Dtdc_Player[playerid][IsInSeller])
  5882. {
  5883. if(lastshow == minshow){format(string, sizeof(string), "%s (%d$)",Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_SCars[i][scPreis]);}
  5884. else {format(string, sizeof(string), "%s\n%s (%d$)",string,Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_SCars[i][scPreis]);}
  5885. lastshow ++;
  5886. }
  5887. }
  5888. reallastshow = i;
  5889. Dtdc_Player[playerid][SellerRLastShow2]++;
  5890. }
  5891. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  5892. if(lastshow < (Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sCars]-1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  5893. ShowPlayerDialog(playerid,CarBuyDia,DIALOG_STYLE_LIST,string2,string,"Ansehen","Abbrechen");
  5894. Dtdc_Player[playerid][CarBuyDialog] = LDMainDia;
  5895. Dtdc_Player[playerid][SellerLastShow] = lastshow;
  5896. Dtdc_Player[playerid][SellerRLastShow] = reallastshow;
  5897. }
  5898. case 11 :
  5899. {
  5900. format(string2, sizeof(string2), " [%s] ",Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sName]);
  5901. Dtdc_Player[playerid][SellerSite] ++;
  5902. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  5903. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  5904. Dtdc_Player[playerid][SellerLastShow] = minshow;
  5905. format(string, sizeof(string), "",string);
  5906. new lastshow = Dtdc_Player[playerid][SellerLastShow];
  5907. new reallastshow = 0;
  5908. Dtdc_Player[playerid][SellerRLastShow2] = 0;
  5909. for(new i = 0; i < Dtdc_SCarsNum; i++)
  5910. {
  5911. if(minshow <= lastshow && (i > Dtdc_Player[playerid][SellerRLastShow] || i==0))
  5912. {
  5913. if(lastshow > maxshow){break;}
  5914. if(Dtdc_SCars[i][scSeller] == Dtdc_Player[playerid][IsInSeller])
  5915. {
  5916. if(lastshow == minshow){format(string, sizeof(string), "%s (%d$)",Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_SCars[i][scPreis]);}
  5917. else {format(string, sizeof(string), "%s\n%s (%d$)",string,Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_SCars[i][scPreis]);}
  5918. lastshow ++;
  5919. }
  5920. }
  5921. reallastshow = i;
  5922. Dtdc_Player[playerid][SellerRLastShow2]++;
  5923. }
  5924. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  5925. if(lastshow < (Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sCars]-1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  5926. ShowPlayerDialog(playerid,CarBuyDia,DIALOG_STYLE_LIST,string2,string,"Ansehen","Abbrechen");
  5927. Dtdc_Player[playerid][CarBuyDialog] = LDMainDia;
  5928. Dtdc_Player[playerid][SellerLastShow] = lastshow;
  5929. Dtdc_Player[playerid][SellerRLastShow] = reallastshow;
  5930. }
  5931. default:
  5932. {
  5933. new plus = 0;
  5934. for(new i=0; i< Dtdc_SCarsNum; i++)
  5935. {
  5936. if(Dtdc_SCars[i][scSeller] == Dtdc_Player[playerid][IsInSeller])
  5937. {
  5938. if(plus == (((Dtdc_Player[playerid][SellerSite] *10)-10) +listitem))
  5939. {
  5940. Dtdc_Player[playerid][CarSelect] = i;
  5941. break;
  5942. }
  5943. plus++;
  5944. }
  5945. }
  5946.  
  5947. format(string2, sizeof(string2), " [%s] ",Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sName]);
  5948. format(string, sizeof(string), "Name: %s\nKategorie: %s\nPreis: %d$",Dtdc_CarName[Dtdc_SCars[Dtdc_Player[playerid][CarSelect]][scModel]-400],Dtdc_NameCat[Dtdc_SCars[Dtdc_Player[playerid][CarSelect]][scCat]],Dtdc_SCars[Dtdc_Player[playerid][CarSelect]][scPreis]);
  5949. ShowPlayerDialog(playerid,CarBuyDia,DIALOG_STYLE_MSGBOX,string2,string,"Kaufen","Zurück");
  5950. Dtdc_Player[playerid][CarBuyDialog] = LDBuyMsgDia;
  5951.  
  5952. //SHOW CAR
  5953. if(Dtdc_Player[playerid][CarShow] !=0){DestroyVehicle(Dtdc_Player[playerid][CarShow]);Dtdc_Player[playerid][CarShow] = 0;}
  5954. Dtdc_Player[playerid][CarShow] = CreateVehicle(Dtdc_SCars[Dtdc_Player[playerid][CarSelect]][scModel],Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVCarPosX],Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVCarPosY],Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVCarPosZ],Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sLVCarRot],-1,-1,-1);
  5955. SetVehicleVirtualWorld(Dtdc_Player[playerid][CarShow],GetPlayerVirtualWorld(playerid));
  5956. }
  5957. }
  5958. }
  5959. case LDBuyMsgDia:
  5960. {
  5961. if(Dtdc_Player[playerid][CarSelect] != MaxSellerCars+1 && Dtdc_Player[playerid][IsInSeller] != (MaxSeller+1))
  5962. {
  5963. if(Dtdc_OnCarBuy(playerid,Dtdc_Player[playerid][IsInSeller],Dtdc_Player[playerid][CarSelect]))
  5964. {
  5965. new Float:px,Float:py,Float:pa;
  5966. px = Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconPosX];
  5967. py = Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconPosY];
  5968. pa = Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconRot];
  5969. GetXYInFrontOf(pa,px,py,2.5);
  5970. SetPlayerPos(playerid,px,py,Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconPosZ]);
  5971. SetPlayerFacingAngle(playerid,Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconRot]);
  5972. SetPlayerInterior(playerid,0);
  5973. SetCameraBehindPlayer(playerid);
  5974. TogglePlayerControllable(playerid,1);
  5975. SetPlayerVirtualWorld(playerid, 0);
  5976. Dtdc_Player[playerid][CarBuyDialog] = LDMainDia;
  5977. Dtdc_Player[playerid][IsInSeller] = (MaxSeller+1);
  5978. CallRemoteFunction("PlayerDTDCSellerStateChange","dd",playerid,0);
  5979. //CAR SHOW
  5980. if(Dtdc_Player[playerid][CarShow] !=0){DestroyVehicle(Dtdc_Player[playerid][CarShow]);Dtdc_Player[playerid][CarShow] = 0;}
  5981. } else {
  5982. format(string2, sizeof(string2), " [%s] ",Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sName]);
  5983. Dtdc_Player[playerid][SellerSite] = 1;
  5984. Dtdc_Player[playerid][SellerRLastShow] = 0;
  5985. Dtdc_Player[playerid][SellerRLastShow2] = 0;
  5986. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  5987. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  5988. format(string, sizeof(string), "",string);
  5989. new lastshow = 0;
  5990. new reallastshow = 0;
  5991. for(new i = 0; i < Dtdc_SCarsNum; i++)
  5992. {
  5993. if(minshow <= lastshow && (i > Dtdc_Player[playerid][SellerRLastShow] || i==0))
  5994. {
  5995. if(lastshow > maxshow){break;}
  5996. if(Dtdc_SCars[i][scSeller] == Dtdc_Player[playerid][IsInSeller])
  5997. {
  5998. if(lastshow == minshow){format(string, sizeof(string), "%s (%d$)",Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_SCars[i][scPreis]);}
  5999. else {format(string, sizeof(string), "%s\n%s (%d$)",string,Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_SCars[i][scPreis]);}
  6000. lastshow ++;
  6001. }
  6002. }
  6003. reallastshow = i;
  6004. Dtdc_Player[playerid][SellerRLastShow2]++;
  6005. }
  6006. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  6007. if(lastshow < (Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sCars]-1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  6008. ShowPlayerDialog(playerid,CarBuyDia,DIALOG_STYLE_LIST,string2,string,"Ansehen","Abbrechen");
  6009. Dtdc_Player[playerid][CarBuyDialog] = LDMainDia;
  6010. Dtdc_Player[playerid][SellerLastShow] = lastshow;
  6011. Dtdc_Player[playerid][SellerRLastShow] = reallastshow;
  6012. //CAR SHOW
  6013. if(Dtdc_Player[playerid][CarShow] !=0){DestroyVehicle(Dtdc_Player[playerid][CarShow]);Dtdc_Player[playerid][CarShow] = 0;}
  6014. }
  6015. }
  6016. else
  6017. {
  6018. new Float:px,Float:py,Float:pa;
  6019. px = Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconPosX];
  6020. py = Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconPosY];
  6021. pa = Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconRot];
  6022. GetXYInFrontOf(pa,px,py,2.5);
  6023. SetPlayerPos(playerid,px,py,Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconPosZ]);
  6024. SetPlayerFacingAngle(playerid,Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconRot]);
  6025. SetPlayerInterior(playerid,0);
  6026. SetCameraBehindPlayer(playerid);
  6027. TogglePlayerControllable(playerid,1);
  6028. SetPlayerVirtualWorld(playerid, 0);
  6029. Dtdc_Player[playerid][CarBuyDialog] = LDMainDia;
  6030. Dtdc_Player[playerid][IsInSeller] = (MaxSeller+1);
  6031. CallRemoteFunction("PlayerDTDCSellerStateChange","dd",playerid,0);
  6032. //CAR SHOW
  6033. if(Dtdc_Player[playerid][CarShow] !=0){DestroyVehicle(Dtdc_Player[playerid][CarShow]);Dtdc_Player[playerid][CarShow] = 0;}
  6034. }
  6035. }
  6036. default:
  6037. {
  6038. new Float:px,Float:py,Float:pa;
  6039. px = Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconPosX];
  6040. py = Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconPosY];
  6041. pa = Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconRot];
  6042. GetXYInFrontOf(pa,px,py,2.5);
  6043. SetPlayerPos(playerid,px,py,Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconPosZ]);
  6044. SetPlayerFacingAngle(playerid,Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconRot]);
  6045. SetPlayerInterior(playerid,0);
  6046. SetCameraBehindPlayer(playerid);
  6047. TogglePlayerControllable(playerid,1);
  6048. SetPlayerVirtualWorld(playerid, 0);
  6049. Dtdc_Player[playerid][CarBuyDialog] = LDMainDia;
  6050. Dtdc_Player[playerid][IsInSeller] = (MaxSeller+1);
  6051. CallRemoteFunction("PlayerDTDCSellerStateChange","dd",playerid,0);
  6052. //CAR SHOW
  6053. if(Dtdc_Player[playerid][CarShow] !=0){DestroyVehicle(Dtdc_Player[playerid][CarShow]);Dtdc_Player[playerid][CarShow] = 0;}
  6054. }
  6055. }
  6056. }
  6057. } else {
  6058. if(Dtdc_Player[playerid][IsInSeller] != (MaxSeller +1))
  6059. {
  6060. switch(Dtdc_Player[playerid][CarBuyDialog])
  6061. {
  6062. case LDBuyMsgDia:
  6063. {
  6064. format(string2, sizeof(string2), " [%s] ",Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sName]);
  6065. Dtdc_Player[playerid][SellerSite] = 1;
  6066. Dtdc_Player[playerid][SellerRLastShow] = 0;
  6067. Dtdc_Player[playerid][SellerRLastShow2] = 0;
  6068. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  6069. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  6070. format(string, sizeof(string), "",string);
  6071. new lastshow = 0;
  6072. new reallastshow = 0;
  6073. for(new i = 0; i < Dtdc_SCarsNum; i++)
  6074. {
  6075. if(minshow <= lastshow && (i > Dtdc_Player[playerid][SellerRLastShow] || i==0))
  6076. {
  6077. if(lastshow > maxshow){break;}
  6078. if(Dtdc_SCars[i][scSeller] == Dtdc_Player[playerid][IsInSeller])
  6079. {
  6080. if(lastshow == minshow){format(string, sizeof(string), "%s (%d$)",Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_SCars[i][scPreis]);}
  6081. else {format(string, sizeof(string), "%s\n%s (%d$)",string,Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_SCars[i][scPreis]);}
  6082. lastshow ++;
  6083. }
  6084. }
  6085. reallastshow = i;
  6086. Dtdc_Player[playerid][SellerRLastShow2]++;
  6087. }
  6088. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  6089. if(lastshow < (Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sCars]-1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  6090. ShowPlayerDialog(playerid,CarBuyDia,DIALOG_STYLE_LIST,string2,string,"Ansehen","Abbrechen");
  6091. Dtdc_Player[playerid][CarBuyDialog] = LDMainDia;
  6092. Dtdc_Player[playerid][SellerLastShow] = lastshow;
  6093. Dtdc_Player[playerid][SellerRLastShow] = reallastshow;
  6094. //CAR SHOW
  6095. if(Dtdc_Player[playerid][CarShow] !=0){DestroyVehicle(Dtdc_Player[playerid][CarShow]);Dtdc_Player[playerid][CarShow] = 0;}
  6096. }
  6097. default:
  6098. {
  6099. new Float:px,Float:py,Float:pa;
  6100. px = Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconPosX];
  6101. py = Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconPosY];
  6102. pa = Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconRot];
  6103. GetXYInFrontOf(pa,px,py,2.5);
  6104. SetPlayerPos(playerid,px,py,Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconPosZ]);
  6105. SetPlayerFacingAngle(playerid,Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconRot]);
  6106. SetPlayerInterior(playerid,0);
  6107. SetCameraBehindPlayer(playerid);
  6108. TogglePlayerControllable(playerid,1);
  6109. SetPlayerVirtualWorld(playerid, 0);
  6110. Dtdc_Player[playerid][CarBuyDialog] = LDMainDia;
  6111. Dtdc_Player[playerid][IsInSeller] = (MaxSeller+1);
  6112. CallRemoteFunction("PlayerDTDCSellerStateChange","dd",playerid,0);
  6113. //CAR SHOW
  6114. if(Dtdc_Player[playerid][CarShow] !=0){DestroyVehicle(Dtdc_Player[playerid][CarShow]);Dtdc_Player[playerid][CarShow] = 0;}
  6115. }
  6116. }
  6117. } else {
  6118. Dtdc_Player[playerid][CarBuyDialog] = LDMainDia;
  6119. Dtdc_Player[playerid][IsInSeller] = (MaxSeller+1);
  6120. }
  6121. }//Response
  6122. }//Livedialog case
  6123. case 1://Dialog
  6124. {
  6125. if(response)
  6126. {
  6127. if(Dtdc_Player[playerid][IsInSeller] != (MaxSeller +1))
  6128. {
  6129. switch(Dtdc_Player[playerid][CarBuyDialog])
  6130. {
  6131. case LDMainDia:
  6132. {
  6133. if(Dtdc_Player[playerid][SellerSite] == 1 && listitem == 10){listitem=11;}
  6134. if(Dtdc_Player[playerid][SellerLastShow] >= (Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sCars]-1) && listitem > (Dtdc_Player[playerid][SellerLastShow]-((10*Dtdc_Player[playerid][SellerSite])-10+1)))
  6135. {
  6136. listitem=10;
  6137. }
  6138. switch(listitem)
  6139. {
  6140. case 10 :
  6141. {
  6142. format(string2, sizeof(string2), " [%s] ",Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sName]);
  6143. Dtdc_Player[playerid][SellerSite] --;
  6144. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  6145. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  6146. Dtdc_Player[playerid][SellerLastShow] = minshow;
  6147. format(string, sizeof(string), "",string);
  6148. new lastshow = Dtdc_Player[playerid][SellerLastShow];
  6149. new reallastshow = 0;
  6150. Dtdc_Player[playerid][SellerRLastShow] -= (Dtdc_Player[playerid][SellerRLastShow2]-1);
  6151. Dtdc_Player[playerid][SellerRLastShow2] = 0;
  6152. for(new i = 0; i < Dtdc_SCarsNum; i++)
  6153. {
  6154. if(minshow <= lastshow && (i > Dtdc_Player[playerid][SellerRLastShow] || i==0))
  6155. {
  6156. if(lastshow > maxshow){break;}
  6157. if(Dtdc_SCars[i][scSeller] == Dtdc_Player[playerid][IsInSeller])
  6158. {
  6159. if(lastshow == minshow){format(string, sizeof(string), "%s (%d$)",Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_SCars[i][scPreis]);}
  6160. else {format(string, sizeof(string), "%s\n%s (%d$)",string,Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_SCars[i][scPreis]);}
  6161. lastshow ++;
  6162. }
  6163. }
  6164. reallastshow = i;
  6165. Dtdc_Player[playerid][SellerRLastShow2]++;
  6166. }
  6167. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  6168. if(lastshow < (Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sCars]-1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  6169. ShowPlayerDialog(playerid,CarBuyDia,DIALOG_STYLE_LIST,string2,string,"Ansehen","Abbrechen");
  6170. Dtdc_Player[playerid][CarBuyDialog] = LDMainDia;
  6171. Dtdc_Player[playerid][SellerLastShow] = lastshow;
  6172. Dtdc_Player[playerid][SellerRLastShow] = reallastshow;
  6173. }
  6174. case 11 :
  6175. {
  6176. format(string2, sizeof(string2), " [%s] ",Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sName]);
  6177. Dtdc_Player[playerid][SellerSite] ++;
  6178. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  6179. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  6180. Dtdc_Player[playerid][SellerLastShow] = minshow;
  6181. format(string, sizeof(string), "",string);
  6182. new lastshow = Dtdc_Player[playerid][SellerLastShow];
  6183. new reallastshow = 0;
  6184. Dtdc_Player[playerid][SellerRLastShow2] = 0;
  6185. for(new i = 0; i < Dtdc_SCarsNum; i++)
  6186. {
  6187. if(minshow <= lastshow && (i > Dtdc_Player[playerid][SellerRLastShow] || i==0))
  6188. {
  6189. if(lastshow > maxshow){break;}
  6190. if(Dtdc_SCars[i][scSeller] == Dtdc_Player[playerid][IsInSeller])
  6191. {
  6192. if(lastshow == minshow){format(string, sizeof(string), "%s (%d$)",Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_SCars[i][scPreis]);}
  6193. else {format(string, sizeof(string), "%s\n%s (%d$)",string,Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_SCars[i][scPreis]);}
  6194. lastshow ++;
  6195. }
  6196. }
  6197. reallastshow = i;
  6198. Dtdc_Player[playerid][SellerRLastShow2]++;
  6199. }
  6200. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  6201. if(lastshow < (Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sCars]-1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  6202. ShowPlayerDialog(playerid,CarBuyDia,DIALOG_STYLE_LIST,string2,string,"Ansehen","Abbrechen");
  6203. Dtdc_Player[playerid][CarBuyDialog] = LDMainDia;
  6204. Dtdc_Player[playerid][SellerLastShow] = lastshow;
  6205. Dtdc_Player[playerid][SellerRLastShow] = reallastshow;
  6206. }
  6207. default:
  6208. {
  6209. new plus = 0;
  6210. for(new i=0; i< Dtdc_SCarsNum; i++)
  6211. {
  6212. if(Dtdc_SCars[i][scSeller] == Dtdc_Player[playerid][IsInSeller])
  6213. {
  6214. if(plus == (((Dtdc_Player[playerid][SellerSite] *10)-10) +listitem))
  6215. {
  6216. Dtdc_Player[playerid][CarSelect] = i;
  6217. break;
  6218. }
  6219. plus++;
  6220. }
  6221. }
  6222.  
  6223. format(string2, sizeof(string2), " [%s] ",Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sName]);
  6224. format(string, sizeof(string), "Name: %s\nKategorie: %s\nPreis: %d$",Dtdc_CarName[Dtdc_SCars[Dtdc_Player[playerid][CarSelect]][scModel]-400],Dtdc_NameCat[Dtdc_SCars[Dtdc_Player[playerid][CarSelect]][scCat]],Dtdc_SCars[Dtdc_Player[playerid][CarSelect]][scPreis]);
  6225. ShowPlayerDialog(playerid,CarBuyDia,DIALOG_STYLE_MSGBOX,string2,string,"Kaufen","Zurück");
  6226. Dtdc_Player[playerid][CarBuyDialog] = LDBuyMsgDia;
  6227. }
  6228. }
  6229. }
  6230. case LDBuyMsgDia:
  6231. {
  6232. if(Dtdc_Player[playerid][CarSelect] != MaxSellerCars+1 && Dtdc_Player[playerid][IsInSeller] != (MaxSeller+1))
  6233. {
  6234. if(Dtdc_OnCarBuy(playerid,Dtdc_Player[playerid][IsInSeller],Dtdc_Player[playerid][CarSelect]))
  6235. {
  6236. SetCameraBehindPlayer(playerid);
  6237. TogglePlayerControllable(playerid,1);
  6238. SetPlayerVirtualWorld(playerid, 0);
  6239. Dtdc_Player[playerid][CarBuyDialog] = LDMainDia;
  6240. Dtdc_Player[playerid][IsInSeller] = (MaxSeller+1);
  6241. CallRemoteFunction("PlayerDTDCSellerStateChange","dd",playerid,0);
  6242. } else {
  6243. format(string2, sizeof(string2), " [%s] ",Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sName]);
  6244. Dtdc_Player[playerid][SellerSite] = 1;
  6245. Dtdc_Player[playerid][SellerRLastShow] = 0;
  6246. Dtdc_Player[playerid][SellerRLastShow2] = 0;
  6247. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  6248. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  6249. format(string, sizeof(string), "",string);
  6250. new lastshow = 0;
  6251. new reallastshow = 0;
  6252. for(new i = 0; i < Dtdc_SCarsNum; i++)
  6253. {
  6254. if(minshow <= lastshow && (i > Dtdc_Player[playerid][SellerRLastShow] || i==0))
  6255. {
  6256. if(lastshow > maxshow){break;}
  6257. if(Dtdc_SCars[i][scSeller] == Dtdc_Player[playerid][IsInSeller])
  6258. {
  6259. if(lastshow == minshow){format(string, sizeof(string), "%s (%d$)",Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_SCars[i][scPreis]);}
  6260. else {format(string, sizeof(string), "%s\n%s (%d$)",string,Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_SCars[i][scPreis]);}
  6261. lastshow ++;
  6262. }
  6263. }
  6264. reallastshow = i;
  6265. Dtdc_Player[playerid][SellerRLastShow2]++;
  6266. }
  6267. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  6268. if(lastshow < (Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sCars]-1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  6269. ShowPlayerDialog(playerid,CarBuyDia,DIALOG_STYLE_LIST,string2,string,"Ansehen","Abbrechen");
  6270. Dtdc_Player[playerid][CarBuyDialog] = LDMainDia;
  6271. Dtdc_Player[playerid][SellerLastShow] = lastshow;
  6272. Dtdc_Player[playerid][SellerRLastShow] = reallastshow;
  6273. }
  6274. }
  6275. else
  6276. {
  6277. SetCameraBehindPlayer(playerid);
  6278. TogglePlayerControllable(playerid,1);
  6279. SetPlayerVirtualWorld(playerid, 0);
  6280. Dtdc_Player[playerid][CarBuyDialog] = LDMainDia;
  6281. Dtdc_Player[playerid][IsInSeller] = (MaxSeller+1);
  6282. CallRemoteFunction("PlayerDTDCSellerStateChange","dd",playerid,0);
  6283. }
  6284. }
  6285. default:
  6286. {
  6287. SetCameraBehindPlayer(playerid);
  6288. TogglePlayerControllable(playerid,1);
  6289. SetPlayerVirtualWorld(playerid, 0);
  6290. Dtdc_Player[playerid][CarBuyDialog] = LDMainDia;
  6291. Dtdc_Player[playerid][IsInSeller] = (MaxSeller+1);
  6292. CallRemoteFunction("PlayerDTDCSellerStateChange","dd",playerid,0);
  6293. }
  6294. }
  6295. }
  6296. } else {
  6297. if(Dtdc_Player[playerid][IsInSeller] != (MaxSeller +1))
  6298. {
  6299. switch(Dtdc_Player[playerid][CarBuyDialog])
  6300. {
  6301. case LDBuyMsgDia:
  6302. {
  6303. format(string2, sizeof(string2), " [%s] ",Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sName]);
  6304. Dtdc_Player[playerid][SellerSite] = 1;
  6305. Dtdc_Player[playerid][SellerRLastShow] = 0;
  6306. Dtdc_Player[playerid][SellerRLastShow2] = 0;
  6307. new maxshow = (Dtdc_Player[playerid][SellerSite] *10)-1;
  6308. new minshow = (Dtdc_Player[playerid][SellerSite] *10)-10;
  6309. format(string, sizeof(string), "",string);
  6310. new lastshow = 0;
  6311. new reallastshow = 0;
  6312. for(new i = 0; i < Dtdc_SCarsNum; i++)
  6313. {
  6314. if(minshow <= lastshow && (i > Dtdc_Player[playerid][SellerRLastShow] || i==0))
  6315. {
  6316. if(lastshow > maxshow){break;}
  6317. if(Dtdc_SCars[i][scSeller] == Dtdc_Player[playerid][IsInSeller])
  6318. {
  6319. if(lastshow == minshow){format(string, sizeof(string), "%s (%d$)",Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_SCars[i][scPreis]);}
  6320. else {format(string, sizeof(string), "%s\n%s (%d$)",string,Dtdc_CarName[Dtdc_SCars[i][scModel]-400],Dtdc_SCars[i][scPreis]);}
  6321. lastshow ++;
  6322. }
  6323. }
  6324. reallastshow = i;
  6325. Dtdc_Player[playerid][SellerRLastShow2]++;
  6326. }
  6327. if(Dtdc_Player[playerid][SellerSite] != 1) {format(string, sizeof(string), "%s\nZurueck",string);}
  6328. if(lastshow < (Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sCars]-1)) {format(string, sizeof(string), "%s\nWeiter",string);}
  6329. ShowPlayerDialog(playerid,CarBuyDia,DIALOG_STYLE_LIST,string2,string,"Ansehen","Abbrechen");
  6330. Dtdc_Player[playerid][CarBuyDialog] = LDMainDia;
  6331. Dtdc_Player[playerid][SellerLastShow] = lastshow;
  6332. Dtdc_Player[playerid][SellerRLastShow] = reallastshow;
  6333. }
  6334. default:
  6335. {
  6336. SetCameraBehindPlayer(playerid);
  6337. TogglePlayerControllable(playerid,1);
  6338. SetPlayerVirtualWorld(playerid, 0);
  6339. Dtdc_Player[playerid][CarBuyDialog] = LDMainDia;
  6340. Dtdc_Player[playerid][IsInSeller] = (MaxSeller+1);
  6341. CallRemoteFunction("PlayerDTDCSellerStateChange","dd",playerid,0);
  6342. }
  6343. }
  6344. } else {
  6345. Dtdc_Player[playerid][CarBuyDialog] = LDMainDia;
  6346. Dtdc_Player[playerid][IsInSeller] = (MaxSeller+1);
  6347. }
  6348. }//Response
  6349. }//dialog case
  6350. default:
  6351. {
  6352. new Float:px,Float:py,Float:pa;
  6353. px = Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconPosX];
  6354. py = Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconPosY];
  6355. pa = Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconRot];
  6356. GetXYInFrontOf(pa,px,py,2.5);
  6357. SetPlayerPos(playerid,px,py,Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconPosZ]);
  6358. SetPlayerFacingAngle(playerid,Dtdc_Seller[Dtdc_Player[playerid][IsInSeller]][sIconRot]);
  6359. SetPlayerInterior(playerid,0);
  6360. SetCameraBehindPlayer(playerid);
  6361. TogglePlayerControllable(playerid,1);
  6362. SetPlayerVirtualWorld(playerid, 0);
  6363. Dtdc_Player[playerid][CarBuyDialog] = LDMainDia;
  6364. Dtdc_Player[playerid][IsInSeller] = (MaxSeller+1);
  6365. CallRemoteFunction("PlayerDTDCSellerStateChange","dd",playerid,0);
  6366. //CAR SHOW
  6367. if(Dtdc_Player[playerid][CarShow] !=0){DestroyVehicle(Dtdc_Player[playerid][CarShow]);Dtdc_Player[playerid][CarShow] = 0;}
  6368. }
  6369. }
  6370. }
  6371. case UserDia:
  6372. {
  6373. switch(Dtdc_Player[playerid][UserDialog])// /Carsell
  6374. {
  6375. case DoNothingDia:
  6376. {
  6377. return 1;
  6378. }
  6379. case UserSellDia:
  6380. {
  6381. if(response)
  6382. {
  6383. switch(listitem)
  6384. {
  6385. case 0://Gebrauchtwagenhändler
  6386. {
  6387. new carid = Dtdc_Player[playerid][SellCar];
  6388. if(carid != -1)
  6389. {
  6390. if(Dtdc_Car[carid][cOwnerOnline] != playerid)
  6391. {
  6392. SendClientMessage(playerid,COLOR_GREY," Dieses Auto gehört nicht dir!");
  6393. return 1;
  6394. }
  6395. new preis = Dtdc_Car[carid][cPreis]/3*2;
  6396. format(string,sizeof(string),"Wollen sie ihren %s wirklich für %d$ an einen Gebrauchtwagenhändler verkaufen?",Dtdc_CarName[Dtdc_Car[carid][cModel]-400],preis);
  6397. ShowPlayerDialog(playerid,UserDia,DIALOG_STYLE_MSGBOX,"Gebrauchtwagenhändler",string,"OK","Zurück");
  6398. Dtdc_Player[playerid][UserDialog] = UserSellDia2;
  6399. return 1;
  6400. } else {
  6401. SendClientMessage(playerid,COLOR_GREY," Dieses Auto gehört nicht dir!");
  6402. return 1;
  6403. }
  6404. }
  6405. case 1:
  6406. {
  6407. new carid = Dtdc_Player[playerid][SellCar];
  6408. if(carid != -1)
  6409. {
  6410. if(Dtdc_Car[carid][cOwnerOnline] != playerid)
  6411. {
  6412. SendClientMessage(playerid,COLOR_GREY," Dieses Auto gehört nicht dir!");
  6413. return 1;
  6414. }
  6415. for(new i = 0; i<12; i++){Dtdc_Player[playerid][PlayersNear][i] = -1;}
  6416. new isat = 0;
  6417. for(new i = 0; i <MAX_PLAYERS; i++)
  6418. {
  6419. if(isat >= 12){break;}
  6420. if(IsPlayerConnected(i) && i != playerid)
  6421. {
  6422. if(GetPlayerVehicleID(playerid) == GetPlayerVehicleID(i))
  6423. {
  6424. Dtdc_Player[playerid][PlayersNear][isat] = i;
  6425. isat++;
  6426. }
  6427. }
  6428. }
  6429. for(new i = 0; i <MAX_PLAYERS; i++)
  6430. {
  6431. if(isat >= 12){break;}
  6432. if(IsPlayerConnected(i) && i != playerid)
  6433. {
  6434. if(IsPlayerInRangeOfPlayer(playerid,i,8.0) && GetPlayerVehicleID(playerid) != GetPlayerVehicleID(i))
  6435. {
  6436. Dtdc_Player[playerid][PlayersNear][isat] = i;
  6437. isat++;
  6438. }
  6439. }
  6440. }
  6441. if(isat == 0)
  6442. {
  6443. SendClientMessage(playerid,COLOR_GREY," Es ist kein Spieler in deiner nähe oder in deinem Fahrzeug!");
  6444. return 1;
  6445. }
  6446. new pn[MAX_PLAYER_NAME];
  6447. for(new i = 0; i <12; i++)
  6448. {
  6449. if(Dtdc_Player[playerid][PlayersNear][i] != -1)
  6450. {
  6451. GetPlayerName(Dtdc_Player[playerid][PlayersNear][i],pn,sizeof(pn));
  6452. if(i == 0){ format(string,sizeof(string),"%s\n",pn); }
  6453. else { format(string,sizeof(string),"%s%s\n",string,pn); }
  6454. }
  6455. }
  6456. ShowPlayerDialog(playerid,UserDia,DIALOG_STYLE_LIST,"Player-Auswahl",string,"Auswählen","Zurück");
  6457. Dtdc_Player[playerid][UserDialog] = User2UserSellDia;
  6458. return 1;
  6459. } else {
  6460. SendClientMessage(playerid,COLOR_GREY," Dieses Auto gehört nicht dir!");
  6461. return 1;
  6462. }
  6463. }
  6464. }
  6465. } else { Dtdc_Player[playerid][SellCar] = -1; }
  6466. }
  6467. case UserSellDia2:
  6468. {
  6469. if(response)
  6470. {
  6471. new carid = Dtdc_Player[playerid][SellCar];
  6472. Dtdc_Player[playerid][SellCar] = -1;
  6473. if(carid != -1)
  6474. {
  6475. if(Dtdc_Car[carid][cOwnerOnline] != playerid)
  6476. {
  6477. SendClientMessage(playerid,COLOR_GREY," Dieses Auto gehört nicht dir!");
  6478. return 1;
  6479. }
  6480. new preis = Dtdc_Car[carid][cPreis]/3*2;
  6481. GivePlayerMoney(playerid,preis);
  6482. Dtdc_Player[playerid][Car][Dtdc_Car[carid][cSlotid]] = MaxVehicle +1;
  6483. Dtdc_DeleteVeh(carid);
  6484. Dtdc_Car[carid][cAktivated] = 0;
  6485. format(string,sizeof(string),"Gebrauchtwagenhändler: Danke das ich dein schicken %s für %d$ kaufen durfte!",Dtdc_CarName[Dtdc_Car[carid][cModel]-400],preis);
  6486. SendClientMessage(playerid,COLOR_YELLOW,string);
  6487. return 1;
  6488. } else {
  6489. SendClientMessage(playerid,COLOR_GREY," Dieses Auto gehört nicht dir!");
  6490. return 1;
  6491. }
  6492. } else {
  6493. OnPlayerCommandText(playerid, "/carsell"); Dtdc_Player[playerid][SellCar] = -1;
  6494. }
  6495. }
  6496. case User2UserSellDia:
  6497. {
  6498. if(response)
  6499. {
  6500. new carid = Dtdc_Player[playerid][SellCar];
  6501. if(carid != -1)
  6502. {
  6503. if(Dtdc_Car[carid][cOwnerOnline] != playerid)
  6504. {
  6505. SendClientMessage(playerid,COLOR_GREY," Dieses Auto gehört nicht dir!");
  6506. return 1;
  6507. }
  6508. Dtdc_Player[playerid][SelectPlayer] = Dtdc_Player[playerid][PlayersNear][listitem];
  6509. if(!IsPlayerConnected(Dtdc_Player[playerid][SelectPlayer]) || Dtdc_Player[playerid][SelectPlayer] == playerid)
  6510. {
  6511. SendClientMessage(playerid,COLOR_GREY," Der Spieler ist nicht mehr Online!");
  6512. return 1;
  6513. }
  6514. new carslot = MaxVehicle +1;
  6515. for(new c = 0; c <MaxVehPerPlayer;c++)
  6516. {
  6517. if(Dtdc_Player[Dtdc_Player[playerid][SelectPlayer]][Car][c] == MaxVehicle +1)
  6518. {
  6519. carslot = c;
  6520. break;
  6521. }
  6522. }
  6523. if(carslot == MaxVehicle +1)
  6524. {
  6525. format(string,sizeof(string)," Dieser Spieler kann keine weiteren Autos kaufen!",MaxVehPerPlayer);
  6526. SendClientMessage(playerid,COLOR_GREY,string);
  6527. return 1;
  6528. }
  6529. new pn2[MAX_PLAYER_NAME];
  6530. GetPlayerName(Dtdc_Player[playerid][SelectPlayer],pn2,sizeof(pn2));
  6531. format(string2, sizeof(string2), " %s an %s verkaufen",Dtdc_CarName[Dtdc_Car[carid][cModel]-400],pn2);
  6532. ShowPlayerDialog(playerid,UserDia,DIALOG_STYLE_INPUT,string2,"Lege den Preis für das Auto fest!","Anfrage senden","Zurück");
  6533. Dtdc_Player[playerid][UserDialog] = User2UserSellDia2;
  6534. return 1;
  6535. } else {
  6536. SendClientMessage(playerid,COLOR_GREY," Dieses Auto gehört nicht dir!");
  6537. return 1;
  6538. }
  6539. } else {
  6540. OnPlayerCommandText(playerid, "/carsell"); Dtdc_Player[playerid][SellCar] = -1;
  6541. }
  6542. }
  6543. case User2UserSellDia2:
  6544. {
  6545. if(response)
  6546. {
  6547. new carid = Dtdc_Player[playerid][SellCar];
  6548. Dtdc_Player[playerid][SellCar] = -1;
  6549. if(carid != -1)
  6550. {
  6551. if(Dtdc_Car[carid][cOwnerOnline] != playerid)
  6552. {
  6553. SendClientMessage(playerid,COLOR_GREY," Dieses Auto gehört nicht dir!");
  6554. return 1;
  6555. }
  6556. if(!IsPlayerConnected(Dtdc_Player[playerid][SelectPlayer]) || Dtdc_Player[playerid][SelectPlayer] == playerid)
  6557. {
  6558. SendClientMessage(playerid,COLOR_GREY," Der Spieler ist nicht mehr Online!");
  6559. return 1;
  6560. }
  6561. new carslot = MaxVehicle +1;
  6562. for(new c = 0; c <MaxVehPerPlayer;c++)
  6563. {
  6564. if(Dtdc_Player[Dtdc_Player[playerid][SelectPlayer]][Car][c] == MaxVehicle +1)
  6565. {
  6566. carslot = c;
  6567. break;
  6568. }
  6569. }
  6570. if(carslot == MaxVehicle +1)
  6571. {
  6572. format(string,sizeof(string)," Dieser Spieler kann keine weiteren Autos kaufen!",MaxVehPerPlayer);
  6573. SendClientMessage(playerid,COLOR_GREY,string);
  6574. return 1;
  6575. }
  6576. new pn3[MAX_PLAYER_NAME];
  6577. GetPlayerName(Dtdc_Player[playerid][SelectPlayer],pn3,sizeof(pn3));
  6578. if(strlen(inputtext) == 0)
  6579. {
  6580. SendClientMessage(playerid,COLOR_GREY," Du musst etwas eingeben!");
  6581. format(string2, sizeof(string2), " %s an %s verkaufen",Dtdc_CarName[Dtdc_Car[carid][cModel]-400],pn3);
  6582. ShowPlayerDialog(playerid,UserDia,DIALOG_STYLE_INPUT,string2,"Lege den Preis für das Auto fest!","Anfrage senden","Zurück");
  6583. Dtdc_Player[playerid][UserDialog] = User2UserSellDia2;
  6584. return 1;
  6585. }
  6586. new money = strval(inputtext);
  6587. if(money <= 0 || money > 9999999)
  6588. {
  6589. SendClientMessage(playerid,COLOR_GREY," Der Preis muss zwichen 1$ und 9999999$ sein!");
  6590. format(string2, sizeof(string2), " %s an %s verkaufen",Dtdc_CarName[Dtdc_Car[carid][cModel]-400],pn3);
  6591. ShowPlayerDialog(playerid,UserDia,DIALOG_STYLE_INPUT,string2,"Lege den Preis für das Auto fest!","Anfrage senden","Zurück");
  6592. Dtdc_Player[playerid][UserDialog] = User2UserSellDia2;
  6593. return 1;
  6594. }
  6595. new pid = Dtdc_Player[playerid][SelectPlayer];
  6596. Dtdc_Player[pid][Seller] = playerid;
  6597. Dtdc_Player[pid][SellerMoney] = money;
  6598. Dtdc_Player[pid][SellerCar] = carid;
  6599. format(string, sizeof(string), "Du bietest %s dein %s für %d$ an! Bitte warte auf seine Antwort!",pn3,Dtdc_CarName[Dtdc_Car[carid][cModel]-400],money);
  6600. SendClientMessage(playerid,COLOR_GREY,string);
  6601.  
  6602. GetPlayerName(playerid,pn3,sizeof(pn3));
  6603. format(string2, sizeof(string2), " %s bietet dir seinen %s zum Kaufen an.\nSein Preis ist %d$!",pn3,Dtdc_CarName[Dtdc_Car[carid][cModel]-400],money);
  6604. ShowPlayerDialog(pid,UserDia,DIALOG_STYLE_MSGBOX,"Fahrzeug-Angebot:",string2,"Annehmen","Ablehnen");
  6605. Dtdc_Player[pid][UserDialog] = User2UserSellDia3;
  6606. return 1;
  6607. } else {
  6608. SendClientMessage(playerid,COLOR_GREY," Dieses Auto gehört nicht dir!");
  6609. return 1;
  6610. }
  6611. } else {
  6612. OnPlayerCommandText(playerid, "/carsell"); Dtdc_Player[playerid][SellCar] = -1;
  6613. }
  6614. }
  6615. case User2UserSellDia3:
  6616. {
  6617. if(response)
  6618. {
  6619. if(!IsPlayerConnected(Dtdc_Player[playerid][Seller]) || Dtdc_Player[playerid][Seller] == playerid)
  6620. {
  6621. SendClientMessage(playerid,COLOR_GREY," Der Spieler ist nicht mehr Online!");
  6622. return 1;
  6623. }
  6624. new carid = Dtdc_Player[playerid][SellerCar];
  6625. if(carid != -1)
  6626. {
  6627. if(Dtdc_Car[carid][cOwnerOnline] != Dtdc_Player[playerid][Seller])
  6628. {
  6629. SendClientMessage(playerid,COLOR_GREY," Dieses Auto gehört ihm nicht!");
  6630. return 1;
  6631. }
  6632. new carslot = MaxVehicle +1;
  6633. new pn3[MAX_PLAYER_NAME];
  6634. GetPlayerName(playerid,pn3,sizeof(pn3));
  6635. for(new c = 0; c <MaxVehPerPlayer;c++)
  6636. {
  6637. if(Dtdc_Player[playerid][Car][c] == MaxVehicle +1)
  6638. {
  6639. carslot = c;
  6640. break;
  6641. }
  6642. }
  6643. if(carslot == MaxVehicle +1)
  6644. {
  6645. GetPlayerName(playerid,pn3,sizeof(pn3));
  6646. SendClientMessage(playerid,COLOR_GREY," Du kannst keine weiteren Autos kaufen!");
  6647. format(string,sizeof(string)," Der Spieler %s hat dein Verkaufs-Angebot abgelehnt!",pn3);
  6648. SendClientMessage(Dtdc_Player[playerid][Seller],COLOR_GREY,string);
  6649. return 1;
  6650. }
  6651. if(GetPlayerMoney(playerid)<Dtdc_Player[playerid][SellerMoney])
  6652. {
  6653. GetPlayerName(playerid,pn3,sizeof(pn3));
  6654. format(string,sizeof(string)," Du hast nicht genug Geld! (Preis:%d$)",Dtdc_Player[playerid][SellerMoney]);
  6655. SendClientMessage(playerid,COLOR_GREY,string);
  6656. format(string,sizeof(string)," Der Spieler %s hat dein Verkaufs-Angebot abgelehnt!",pn3);
  6657. SendClientMessage(Dtdc_Player[playerid][Seller],COLOR_GREY,string);
  6658. return 1;
  6659. }
  6660. GetPlayerName(playerid,pn3,sizeof(pn3));
  6661. format(string,sizeof(string)," Der Spieler %s hat dein Verkaufs-Angebot (%d$) angenommen! Die Fahrzeugpapiere sind nun auf seinem Namen umgeschrieben!",pn3,Dtdc_Player[playerid][SellerMoney]);
  6662. SendClientMessage(Dtdc_Player[playerid][Seller],COLOR_YELLOW,string);
  6663. GetPlayerName(Dtdc_Player[playerid][Seller],pn3,sizeof(pn3));
  6664. format(string,sizeof(string)," Du hast das Verkaufs-Angebot (%d$) von %s angenommen! Die Fahrzeugpapiere vom %s sind nun auf seinem Namen umgeschrieben!",Dtdc_Player[playerid][SellerMoney],pn3,Dtdc_CarName[Dtdc_Car[carid][cModel]-400]);
  6665. SendClientMessage(playerid,COLOR_YELLOW,string);
  6666.  
  6667. Dtdc_PlayerToPlayerSell(playerid,Dtdc_Player[playerid][Seller],carslot,carid,Dtdc_Player[playerid][SellerMoney]);
  6668.  
  6669. return 1;
  6670. } else {
  6671. SendClientMessage(playerid,COLOR_GREY," Dieses Auto gehört ihm nicht!");
  6672. return 1;
  6673. }
  6674. } else { //Verkauf abgelehnt
  6675. new pn3[MAX_PLAYER_NAME];
  6676. GetPlayerName(playerid,pn3,sizeof(pn3));
  6677. if(!IsPlayerConnected(Dtdc_Player[playerid][Seller]) || Dtdc_Player[playerid][Seller] == playerid)
  6678. {
  6679. format(string,sizeof(string)," Der Spieler %s hat dein Verkaufs-Angebot abgelehnt!",pn3);
  6680. SendClientMessage(Dtdc_Player[playerid][Seller],COLOR_GREY,string);
  6681. }
  6682. GetPlayerName(Dtdc_Player[playerid][Seller],pn3,sizeof(pn3));
  6683. Dtdc_Player[playerid][Seller] = -1;
  6684. format(string,sizeof(string)," Du hast das Verkaufs-Angebot von %s abgelehnt!",pn3);
  6685. SendClientMessage(playerid,COLOR_WHITE," Du hast das Verkaufs-Angebot abgelehnt!");
  6686. return 1;
  6687. }
  6688. }//case
  6689. case CarlistDia:
  6690. {
  6691. if(response && Dtdc_CarListChecker())
  6692. {
  6693. Dtdc_Player[playerid][CarListCar] = listitem;
  6694. new carid = Dtdc_Player[playerid][Car][listitem];
  6695. new idx = 0;
  6696. new str[300];
  6697. if(Dtdc_CarListCarFind == 0)
  6698. {
  6699. if(Dtdc_Player[playerid][FindCar] == -1)
  6700. {
  6701. if(idx == 0){format(str,sizeof(str),"Suchen & Markieren");}else{format(str,sizeof(str),"%s\nSuchen & Makieren",str);}
  6702. } else {
  6703. if(idx == 0){format(str,sizeof(str),"Suche Abbrechen");}else{format(str,sizeof(str),"%s\nSuche Abbrechen",str);}
  6704. }
  6705. Dtdc_Player[playerid][CarListIds][idx] = 1;idx++;
  6706. }
  6707. if(Dtdc_CarListCarSell == 0)
  6708. {
  6709. if(idx == 0){format(str,sizeof(str),"Verkaufen");}else{format(str,sizeof(str),"%s\nVerkaufen",str);}
  6710. Dtdc_Player[playerid][CarListIds][idx] = 2;idx++;
  6711. }
  6712. ShowPlayerDialog(playerid,UserDia,DIALOG_STYLE_LIST,Dtdc_CarName[Dtdc_Car[carid][cModel]-400],str,"Auswahl","Abbrechen");
  6713. Dtdc_Player[playerid][UserDialog] = CarlistSearchDia;
  6714. }
  6715. }
  6716. case CarlistSearchDia:
  6717. {
  6718. if(response && Dtdc_CarListChecker())
  6719. {
  6720. switch(Dtdc_Player[playerid][CarListIds][listitem])
  6721. {
  6722. case 1: //CarSearch
  6723. {
  6724. if(Dtdc_Player[playerid][FindCar] == -1)
  6725. {
  6726. new arrayid = Dtdc_Player[playerid][Car][Dtdc_Player[playerid][CarListCar]];
  6727. new findcarid = Dtdc_Car[arrayid][cCarId];
  6728. Dtdc_Player[playerid][FindCar] = findcarid;
  6729. new Float:cx,Float:cy,Float:cz;
  6730. GetVehiclePos(findcarid,cx,cy,cz);
  6731. DisablePlayerCheckpoint(playerid);
  6732. SetPlayerCheckpoint(playerid,cx,cy,cz,8.5);
  6733. Dtdc_Player[playerid][FindCarTimer] = SetTimerEx("Dtdc_PlayerSearchVeh",3001,1,"d",playerid);// 3001 ist laut Internet ne Primzahl
  6734. SendClientMessage(playerid,COLOR_WHITE," Fahrzeug-Suche gestartet und Fahrzeug Makiert!");
  6735. } else {
  6736. DisablePlayerCheckpoint(playerid);
  6737. new arrayid = Dtdc_Player[playerid][Car][Dtdc_Player[playerid][CarListCar]];
  6738. new findcarid = Dtdc_Car[arrayid][cCarId];
  6739. if(Dtdc_Player[playerid][FindCar] != findcarid)
  6740. {
  6741. OnPlayerCommandText(playerid, "/carlist");
  6742. }
  6743. KillTimer(Dtdc_Player[playerid][FindCarTimer]);
  6744. Dtdc_Player[playerid][FindCar] = -1;
  6745. SendClientMessage(playerid,COLOR_WHITE," Fahrzeug-Suche abgebrochen!");
  6746. }
  6747.  
  6748. }
  6749. case 2: //Carsell
  6750. {
  6751. Dtdc_Player[playerid][SellCar] = Dtdc_Player[playerid][Car][Dtdc_Player[playerid][CarListCar]];
  6752. new carid = Dtdc_Player[playerid][SellCar];
  6753. new preis = Dtdc_Car[carid][cPreis]/3*2;
  6754. format(string,sizeof(string),"An Gebrauchtwagenhändler verkaufen (%d$)\nAn anderen Spieler verkaufen",preis);
  6755. ShowPlayerDialog(playerid,UserDia,DIALOG_STYLE_LIST,"Fahrzeug Verkaus-Optionen",string,"OK","Abbrechen");
  6756. Dtdc_Player[playerid][UserDialog] = UserSellDia;
  6757. }
  6758. }
  6759. } else {
  6760. OnPlayerCommandText(playerid, "/carlist");
  6761. }
  6762. }
  6763. case TunerNumplateDia:
  6764. {
  6765. if(response)
  6766. {
  6767. if(strlen(inputtext) == 0)
  6768. {
  6769. SendClientMessage(playerid,COLOR_GREY," Du musst einen Text für das Nummernshild angeben!");
  6770. Dtdc_Player[playerid][UserDialog] = UserSellDia;
  6771. OnPlayerExitedMenu(playerid);
  6772. return 1;
  6773. }
  6774. if(strlen(inputtext) > 10)
  6775. {
  6776. SendClientMessage(playerid,COLOR_GREY," Der Text für das Nummernschild darf Maximal 10 Zeichen lang sein!");
  6777. Dtdc_Player[playerid][UserDialog] = UserSellDia;
  6778. OnPlayerExitedMenu(playerid);
  6779. return 1;
  6780. }
  6781. if(GetPlayerMoney(playerid) < Dtdc_NumplatePreis)
  6782. {
  6783. format(string,sizeof(string)," Du hast nicht genug Geld! Du benötigst $%d!",Dtdc_NumplatePreis);
  6784. SendClientMessage(playerid,COLOR_GREY,string);
  6785. Dtdc_Player[playerid][UserDialog] = UserSellDia;
  6786. OnPlayerExitedMenu(playerid);
  6787. return 1;
  6788. }
  6789. new mres[20];
  6790. mysql_real_escape_string(inputtext,mres);
  6791. format(sql,sizeof(sql),"SELECT * FROM `playercars` WHERE `Numplate` = '%s' LIMIT 1",mres);
  6792. mysql_query_fix(sql);
  6793. mysql_store_result();
  6794. if(mysql_num_rows() != 0)
  6795. {
  6796. mysql_free_result();
  6797. SendClientMessage(playerid,COLOR_GREY," Dieses Nummernschild wird bereits verwendet!");
  6798. Dtdc_Player[playerid][UserDialog] = UserSellDia;
  6799. OnPlayerExitedMenu(playerid);
  6800. }
  6801. mysql_free_result();
  6802. GivePlayerMoney(playerid,-Dtdc_NumplatePreis);
  6803. new carid = Dtdc_GetCarArrayId(Dtdc_Player[playerid][CarShow]);
  6804. strmid(Dtdc_Car[carid][cNumPlate],inputtext,0,strlen(inputtext),30);
  6805. Dtdc_RespawnVeh(Dtdc_Player[playerid][CarShow],true,0);
  6806.  
  6807. Dtdc_Player[playerid][IsInMenu]=0;
  6808. OnPlayerExitedMenu(playerid);
  6809. } else {
  6810. OnPlayerExitedMenu(playerid);
  6811. }
  6812. }//case
  6813. }
  6814. }
  6815. }
  6816. return 0;
  6817. }
  6818.  
  6819. public OnPlayerEnterCheckpoint(playerid)
  6820. {
  6821. if(Dtdc_Player[playerid][FindCar] != -1)
  6822. {
  6823. KillTimer(Dtdc_Player[playerid][FindCarTimer]);
  6824. DisablePlayerCheckpoint(playerid);
  6825. Dtdc_Player[playerid][FindCar] = -1;
  6826. SendClientMessage(playerid,COLOR_WHITE," Fahrzeug gefunden!");
  6827. }
  6828. return 1;
  6829. }
  6830.  
  6831. forward Dtdc_PlayerSearchVeh(playerid);
  6832. public Dtdc_PlayerSearchVeh(playerid)
  6833. {
  6834. if(Dtdc_Player[playerid][FindCar] != -1)
  6835. {
  6836. new Float:cx,Float:cy,Float:cz;
  6837. new findcarid = Dtdc_Player[playerid][FindCar];
  6838. GetVehiclePos(findcarid,cx,cy,cz);
  6839. if(IsPlayerInRangeOfPoint(playerid,60.0,cx,cy,cz))
  6840. {
  6841. KillTimer(Dtdc_Player[playerid][FindCarTimer]);
  6842. DisablePlayerCheckpoint(playerid);
  6843. Dtdc_Player[playerid][FindCar] = -1;
  6844. SendClientMessage(playerid,COLOR_WHITE," Fahrzeug gefunden!");
  6845. } else {
  6846. DisablePlayerCheckpoint(playerid);
  6847. SetPlayerCheckpoint(playerid,cx,cy,cz,8.5);
  6848. }
  6849. }
  6850. }
  6851.  
  6852. stock Dtdc_CarListChecker()
  6853. {
  6854. if(Dtdc_CarListCarFind == 0){return 1;}
  6855. if(Dtdc_CarListCarSell == 0){return 1;}
  6856. return 0;
  6857. }
  6858.  
  6859. forward Dtdc_PlayerToPlayerSell(playerid,seller,carslot,carid,preis);
  6860. public Dtdc_PlayerToPlayerSell(playerid,seller,carslot,carid,preis)
  6861. {
  6862. if(Dtdc_Car[carid][cAktivated] == 1)
  6863. {
  6864. Dtdc_Player[seller][Car][Dtdc_Car[carid][cSlotid]] = MaxVehicle +1;
  6865. GetPlayerName(playerid,Dtdc_Car[carid][cOwnerName],MAX_PLAYER_NAME);
  6866. Dtdc_Car[carid][cOwnerOnline] = playerid;
  6867. GivePlayerMoney(playerid,-preis);
  6868. GivePlayerMoney(seller,preis);
  6869. Dtdc_Car[carid][cSlotid] = carslot;
  6870. Dtdc_Player[playerid][Car][Dtdc_Car[carid][cSlotid]] = carid;
  6871. Dtdc_Log(3,"------[Dtdc_PlayerToPlayerSell]------");
  6872. Dtdc_SaveVeh(carid);
  6873. }
  6874. }
  6875.  
  6876. forward Dtdc_DeleteSeller(seller);
  6877. public Dtdc_DeleteSeller(seller)
  6878. {
  6879. if(Dtdc_Seller[seller][sAktivated] == 1)
  6880. {
  6881. format(sql,sizeof(sql),"DELETE FROM `seller` WHERE `id` = '%d'",Dtdc_Seller[seller][sSqlId]);
  6882. mysql_query_fix(sql);
  6883. Dtdc_Seller[seller][sAktivated] = 0;
  6884. Dtdc_Seller[seller][sSqlId] = 0;
  6885. }
  6886. }
  6887.  
  6888. forward Dtdc_DeleteSCar(carid);
  6889. public Dtdc_DeleteSCar(carid)
  6890. {
  6891. if(Dtdc_SCars[carid][scAktivated] == 1)
  6892. {
  6893. format(sql,sizeof(sql),"DELETE FROM `sellercars` WHERE `id` = '%d'",Dtdc_SCars[carid][scSqlId]);
  6894. mysql_query_fix(sql);
  6895. Dtdc_SCars[carid][scAktivated] = 0;
  6896. Dtdc_SCars[carid][scSqlId] = 0;
  6897. }
  6898. }
  6899.  
  6900. forward Dtdc_DeleteSPark(carid);
  6901. public Dtdc_DeleteSPark(carid)
  6902. {
  6903. if(Dtdc_SPark[carid][spAktivated] == 1)
  6904. {
  6905. format(sql,sizeof(sql),"DELETE FROM `sellerparks` WHERE `id` = '%d'",Dtdc_SPark[carid][spSqlId]);
  6906. mysql_query_fix(sql);
  6907. Dtdc_SPark[carid][spAktivated] = 0;
  6908. Dtdc_SPark[carid][spSqlId] = 0;
  6909. }
  6910. }
  6911.  
  6912. forward Dtdc_DeleteRespray(carid);
  6913. public Dtdc_DeleteRespray(carid)
  6914. {
  6915. if(Dtdc_Respray[carid][rAktivated] == 1)
  6916. {
  6917. format(sql,sizeof(sql),"DELETE FROM `resprayer` WHERE `id` = '%d'",Dtdc_Respray[carid][rSqlId]);
  6918. mysql_query_fix(sql);
  6919. Dtdc_Respray[carid][rAktivated] = 0;
  6920. Dtdc_Respray[carid][rSqlId] = 0;
  6921. }
  6922. }
  6923.  
  6924. forward Dtdc_DeleteTuner(carid);
  6925. public Dtdc_DeleteTuner(carid)
  6926. {
  6927. if(Dtdc_Tune[carid][tAktivated] == 1)
  6928. {
  6929. format(sql,sizeof(sql),"DELETE FROM `tuner` WHERE `id` = '%d'",Dtdc_Tune[carid][tSqlId]);
  6930. mysql_query_fix(sql);
  6931. Dtdc_Tune[carid][tAktivated] = 0;
  6932. Dtdc_Tune[carid][tSqlId] = 0;
  6933. }
  6934. }
  6935.  
  6936. forward Dtdc_DeleteVeh(carid);
  6937. public Dtdc_DeleteVeh(carid)
  6938. {
  6939. if(Dtdc_Car[carid][cAktivated] == 1)
  6940. {
  6941. format(sql,sizeof(sql),"DELETE FROM `playercars` WHERE `id` = '%d'",Dtdc_Car[carid][cSqlId]);
  6942. mysql_query_fix(sql);
  6943. Dtdc_DelNeonFromVeh(Dtdc_Car[carid][cCarId]);
  6944. DestroyVehicle(Dtdc_Car[carid][cCarId]);
  6945. Dtdc_Car[carid][cAktivated] = 0;
  6946. }
  6947. }
  6948.  
  6949. new Dtdc_SaveReloadAllArrays = 0;
  6950.  
  6951. forward Dtdc_ReloadAllArrays();
  6952. public Dtdc_ReloadAllArrays()
  6953. {
  6954. if(Dtdc_SaveReloadAllArrays == 0)
  6955. {
  6956. Dtdc_SaveReloadAllArrays = 1;
  6957. Dtdc_Log(1,"------------[NEW ReloadAllArrays]------------");
  6958. new name[MAX_PLAYER_NAME];
  6959. new checker2 = 0;
  6960. new checkname[MAX_PLAYER_NAME];
  6961. new logstr[120];
  6962. Dtdc_SaveAllCars();
  6963. for(new c = 0; c <MaxVehicle;c++)
  6964. {
  6965. if(Dtdc_Car[c][cAktivated]== 0)
  6966. {
  6967. for(new c2 = c; c2 <MaxVehicle;c2++)
  6968. {
  6969. if(c2+1 < MaxVehicle)
  6970. {
  6971. Dtdc_Car[c2][cAktivated]=Dtdc_Car[c2+1][cAktivated];
  6972. Dtdc_Car[c2][cSlotid]=Dtdc_Car[c2+1][cSlotid];
  6973. Dtdc_Car[c2][cCarId]=Dtdc_Car[c2+1][cCarId];
  6974. strmid(Dtdc_Car[c2][cOwnerName], Dtdc_Car[c2+1][cOwnerName], 0, strlen(Dtdc_Car[c2+1][cOwnerName]), MAX_PLAYER_NAME);
  6975. //Dtdc_Car[c2][cOwnerName]=Dtdc_Car[c2+1][cOwnerName];
  6976. Dtdc_Car[c2][cOwnerOnline]=Dtdc_Car[c2+1][cOwnerOnline];
  6977. Dtdc_Car[c2][cPosX]=Dtdc_Car[c2+1][cPosX];
  6978. Dtdc_Car[c2][cPosY]=Dtdc_Car[c2+1][cPosY];
  6979. Dtdc_Car[c2][cPosZ]=Dtdc_Car[c2+1][cPosZ];
  6980. Dtdc_Car[c2][cRotZ]=Dtdc_Car[c2+1][cRotZ];
  6981. Dtdc_Car[c2][cPreis]=Dtdc_Car[c2+1][cPreis];
  6982. Dtdc_Car[c2][cModel]=Dtdc_Car[c2+1][cModel];
  6983. Dtdc_Car[c2][cColor1]=Dtdc_Car[c2+1][cColor1];
  6984. Dtdc_Car[c2][cColor2]=Dtdc_Car[c2+1][cColor2];
  6985. Dtdc_Car[c2][cAlarmBuyed]=Dtdc_Car[c2+1][cAlarmBuyed];
  6986. Dtdc_Car[c2][cHealth]=Dtdc_Car[c2+1][cHealth];
  6987. Dtdc_Car[c2][cDmgPanels]=Dtdc_Car[c2+1][cDmgPanels];
  6988. Dtdc_Car[c2][cDmgDoors]=Dtdc_Car[c2+1][cDmgDoors];
  6989. Dtdc_Car[c2][cDmgLights]=Dtdc_Car[c2+1][cDmgLights];
  6990. Dtdc_Car[c2][cDmgTires]=Dtdc_Car[c2+1][cDmgTires];
  6991. Dtdc_Car[c2][cLocked]=Dtdc_Car[c2+1][cLocked];
  6992. //components
  6993. Dtdc_Car[c2][cComponent00]=Dtdc_Car[c2+1][cComponent00];
  6994. Dtdc_Car[c2][cComponent01]=Dtdc_Car[c2+1][cComponent01];
  6995. Dtdc_Car[c2][cComponent02]=Dtdc_Car[c2+1][cComponent02];
  6996. Dtdc_Car[c2][cComponent03]=Dtdc_Car[c2+1][cComponent03];
  6997. Dtdc_Car[c2][cComponent04]=Dtdc_Car[c2+1][cComponent04];
  6998. Dtdc_Car[c2][cComponent05]=Dtdc_Car[c2+1][cComponent05];
  6999. Dtdc_Car[c2][cComponent06]=Dtdc_Car[c2+1][cComponent06];
  7000. Dtdc_Car[c2][cComponent07]=Dtdc_Car[c2+1][cComponent07];
  7001. Dtdc_Car[c2][cComponent08]=Dtdc_Car[c2+1][cComponent08];
  7002. Dtdc_Car[c2][cComponent09]=Dtdc_Car[c2+1][cComponent09];
  7003. Dtdc_Car[c2][cComponent10]=Dtdc_Car[c2+1][cComponent10];
  7004. Dtdc_Car[c2][cComponent11]=Dtdc_Car[c2+1][cComponent11];
  7005. Dtdc_Car[c2][cComponent12]=Dtdc_Car[c2+1][cComponent12];
  7006. Dtdc_Car[c2][cComponent13]=Dtdc_Car[c2+1][cComponent13];
  7007. Dtdc_Car[c2][cPJ]=Dtdc_Car[c2+1][cPJ];
  7008. } else {break;}
  7009. }
  7010. }
  7011. }
  7012. Dtdc_CarsNum = 0;
  7013. for(new c = 0; c <MaxVehicle;c++)
  7014. {
  7015. if(Dtdc_Car[c][cAktivated] == 1)
  7016. {
  7017. Dtdc_CarsNum++;
  7018. }
  7019. format(logstr,sizeof(logstr),"ID: %d File: %s%d.DynCar Aktiv: %d",c,Dtdc_Car[c][cOwnerName],Dtdc_Car[c][cSlotid],Dtdc_Car[c][cAktivated]);
  7020. Dtdc_Log(1,logstr);
  7021. }
  7022. Dtdc_CarsNum++;
  7023. for(new i = 0; i <MAX_PLAYERS; i++)
  7024. {
  7025. if(IsPlayerConnected(i))
  7026. {
  7027. GetPlayerName(i,name,MAX_PLAYER_NAME);
  7028. new checker3 = 0;
  7029. checker2 = 0;
  7030. for(new c = 0; c <MaxVehicle;c++)
  7031. {
  7032. if(checker3 >= Dtdc_CarsNum){break;}
  7033. if(checker2 >= MaxVehPerPlayer){break;}
  7034. if(Dtdc_Car[c][cAktivated] == 1)
  7035. {
  7036. strmid(checkname, Dtdc_Car[c][cOwnerName], 0, strlen(Dtdc_Car[c][cOwnerName]), MAX_PLAYER_NAME);
  7037. if(!strcmp(name,checkname,false,MAX_PLAYER_NAME))
  7038. {
  7039. Dtdc_Car[c][cOwnerOnline] = i;
  7040. Dtdc_Player[i][Car][Dtdc_Car[c][cSlotid]] = c;
  7041. checker2++;
  7042. }
  7043. }
  7044. checker3++;
  7045. }
  7046. }
  7047. }
  7048. Dtdc_SaveReloadAllArrays =0;
  7049. }
  7050. }
  7051.  
  7052. public Dtdc_SaveConfig()
  7053. {
  7054. new checker = AktivateConfig;
  7055. if(checker == 1)
  7056. {
  7057. new File: file = fopen("DtDynamicCars/cfg/Config.cfg", io_write);
  7058. if (file)
  7059. {
  7060. new var[32];
  7061. format(var, 32, "dtdc_Speedo=%d\n",Dtdc_Speedo);fwrite(file, var);
  7062. format(var, 32, "LockAlarmOnSpawn=%d\n",Dtdc_LockAlarmOnSpawn);fwrite(file, var);
  7063. format(var, 32, "LockOrAlarm=%d\n",Dtdc_LockOrAlarm);fwrite(file, var);
  7064. format(var, 32, "Select=%d\n",Dtdc_Select);fwrite(file, var);
  7065. format(var, 32, "Icon=%d\n",Dtdc_Icon);fwrite(file, var);
  7066. format(var, 32, "MapIcon=%d\n",Dtdc_MapIcon);fwrite(file, var);
  7067. format(var, 32, "LoadHealth=%d\n",Dtdc_LoadHealth);fwrite(file, var);
  7068. format(var, 32, "ParkCommand=%d\n",Dtdc_ParkCommand);fwrite(file, var);
  7069. format(var, 32, "PutInVehOnBuy=%d\n",Dtdc_PutInVehOnBuy);fwrite(file, var);
  7070. format(var, 32, "ReSpawnSek=%d\n",Dtdc_ReSpawnSek);fwrite(file, var);
  7071. format(var, 32, "EasySellerCreate=%d\n",Dtdc_EasySellerCreate);fwrite(file, var);
  7072. format(var, 32, "SpeedoTank=%d\n",Dtdc_SpeedoTank);fwrite(file, var);
  7073. format(var, 32, "SpeedoPos=%d\n",Dtdc_SpeedoPos);fwrite(file, var);
  7074. format(var, 32, "SaveVw=%d\n",Dtdc_SaveVw);fwrite(file, var);
  7075. format(var, 32, "CarList=%d\n",Dtdc_CmdCarList);fwrite(file, var);
  7076. format(var, 32, "CarListFind=%d\n",Dtdc_CarListCarFind);fwrite(file, var);
  7077. format(var, 32, "CarListSell=%d\n",Dtdc_CarListCarSell);fwrite(file, var);
  7078. format(var, 32, "Resprayer=%d\n",Dtdc_Resprayer);fwrite(file, var);
  7079. format(var, 32, "RsIcon=%d\n",Dtdc_RsIcon);fwrite(file, var);
  7080. format(var, 32, "RsMap=%d\n",Dtdc_RsMapIcon);fwrite(file, var);
  7081. format(var, 32, "RsPreis=%d\n",Dtdc_RsPreis);fwrite(file, var);
  7082. format(var, 32, "Tuner=%d\n",Dtdc_Tuner);fwrite(file, var);
  7083. format(var, 32, "NeonPreis=%d\n",Dtdc_NeonPreis);fwrite(file, var);
  7084. format(var, 32, "TuIcon=%d\n",Dtdc_TuIcon);fwrite(file, var);
  7085. format(var, 32, "TuMap=%d\n",Dtdc_TuMapIcon);fwrite(file, var);
  7086. format(var, 32, "NumplatePreis=%d\n",Dtdc_NumplatePreis);fwrite(file, var);
  7087. format(var, 32, "OPark=%d\n",Dtdc_OPark);fwrite(file, var);
  7088. format(var, 32, "OParkPay=%d\n",Dtdc_OParkPay);fwrite(file, var);
  7089. format(var, 32, "OParkRate=%f\n",Dtdc_OParkRate);fwrite(file, var);
  7090. format(var, 32, "OParkX=%f\n",Dtdc_OParkX);fwrite(file, var);
  7091. format(var, 32, "OParkY=%f\n",Dtdc_OParkY);fwrite(file, var);
  7092. format(var, 32, "OParkZ=%f\n",Dtdc_OParkZ);fwrite(file, var);
  7093. format(var, 32, "OParkR=%f\n",Dtdc_OParkR);fwrite(file, var);
  7094. format(var, 32, "OParkTow=%d\n",Dtdc_OParkTow);fwrite(file, var);
  7095. format(var, 32, "SpeedoShadow=%d\n",Dtdc_SpeedoShadow);fwrite(file, var);
  7096. format(var, 32, "NeonOnOff=%d\n",Dtdc_NeonOnOff);fwrite(file, var);
  7097. fclose(file);
  7098. }
  7099. }
  7100. }
  7101.  
  7102. forward Dtdc_SaveLogConfig();
  7103. public Dtdc_SaveLogConfig()
  7104. {
  7105. new checker = AktivateConfig;
  7106. if(checker == 1)
  7107. {
  7108. new File: file = fopen("DtDynamicCars/cfg/LogConfig.cfg", io_write);
  7109. if (file)
  7110. {
  7111. new str[50];
  7112. for(new i=0;i<sizeof(Dtdc_Logs);i++)
  7113. {
  7114. format(str,sizeof(str),"%d\n", Dtdc_Logs[i]);
  7115. fwrite(file,str);
  7116. }
  7117. fclose(file);
  7118. }
  7119. }
  7120. }
  7121.  
  7122. forward Dtdc_LoadLogConfig();
  7123. public Dtdc_LoadLogConfig()
  7124. {
  7125. new checker = AktivateConfig;
  7126. if(checker == 1)
  7127. {
  7128. new File: file = fopen("DtDynamicCars/cfg/LogConfig.cfg", io_read);
  7129. if (file)
  7130. {
  7131. new Data[ 256 ];
  7132. new i=0;
  7133. while(fread(file , Data , sizeof(Data) ))
  7134. {
  7135. Dtdc_Logs[i]= strval( Data );
  7136. i++;
  7137. }
  7138. fclose(file);
  7139. }
  7140. }
  7141. }
  7142.  
  7143. public Dtdc_LoadConfig()
  7144. {
  7145. new File: file = fopen("DtDynamicCars/cfg/Config.cfg", io_read);
  7146. if (file)
  7147. {
  7148. new key[ 256 ] , val[ 256 ];
  7149. new Data[ 256 ];
  7150. while ( fread(file , Data , sizeof( Data ) ) )
  7151. {
  7152. key = Dtdc_GetKey( Data );
  7153. if( strcmp( key , "dtdc_Speedo" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_Speedo = strval( val ); }
  7154. if( strcmp( key , "LockAlarmOnSpawn" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_LockAlarmOnSpawn = strval( val ); }
  7155. if( strcmp( key , "LockOrAlarm" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_LockOrAlarm = strval( val ); }
  7156. if( strcmp( key , "Select" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_Select = strval( val ); }
  7157. if( strcmp( key , "Icon" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_Icon = strval( val ); }
  7158. if( strcmp( key , "MapIcon" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_MapIcon = strval( val ); }
  7159. if( strcmp( key , "LoadHealth" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_LoadHealth = strval( val ); }
  7160. if( strcmp( key , "ParkCommand" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_ParkCommand = strval( val ); }
  7161. if( strcmp( key , "PutInVehOnBuy" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_PutInVehOnBuy = strval( val ); }
  7162. if( strcmp( key , "ReSpawnSek" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_ReSpawnSek = strval( val ); }
  7163. if( strcmp( key , "EasySellerCreate" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_EasySellerCreate = strval( val ); }
  7164. if( strcmp( key , "SpeedoTank" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_SpeedoTank = strval( val ); }
  7165. if( strcmp( key , "SpeedoPos" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_SpeedoPos = strval( val ); }
  7166. if( strcmp( key , "SaveVw" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_SaveVw = strval( val ); }
  7167. if( strcmp( key , "CarList" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_CmdCarList = strval( val ); }
  7168. if( strcmp( key , "CarListFind" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_CarListCarFind = strval( val ); }
  7169. if( strcmp( key , "CarListSell" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_CarListCarSell = strval( val ); }
  7170. if( strcmp( key , "Resprayer" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_Resprayer = strval( val ); }
  7171. if( strcmp( key , "RsIcon" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_RsIcon = strval( val ); }
  7172. if( strcmp( key , "RsMap" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_RsMapIcon = strval( val ); }
  7173. if( strcmp( key , "RsPreis" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_RsPreis = strval( val ); }
  7174. if( strcmp( key , "Tuner" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_Tuner = strval( val ); }
  7175. if( strcmp( key , "NeonPreis" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_NeonPreis = strval( val ); }
  7176. if( strcmp( key , "TuIcon" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_TuIcon = strval( val ); }
  7177. if( strcmp( key , "TuMap" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_TuMapIcon = strval( val ); }
  7178. if( strcmp( key , "NumplatePreis" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_NumplatePreis = strval( val ); }
  7179. if( strcmp( key , "OPark" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_OPark = strval( val ); }
  7180. if( strcmp( key , "OParkPay" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_OParkPay = strval( val ); }
  7181. if( strcmp( key , " ate" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_OParkRate = floatstr( val ); }
  7182. if( strcmp( key , "OParkX" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_OParkX = floatstr( val ); }
  7183. if( strcmp( key , "OParkY" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_OParkY = floatstr( val ); }
  7184. if( strcmp( key , "OParkZ" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_OParkZ = floatstr( val ); }
  7185. if( strcmp( key , "OParkR" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_OParkR = floatstr( val ); }
  7186. if( strcmp( key , "OParkTow" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_OParkTow = strval( val ); }
  7187. if( strcmp( key , "SpeedoShadow" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_SpeedoShadow = strval( val ); }
  7188. if( strcmp( key , "NeonOnOff" , true ) == 0 ) { val = Dtdc_GetValue( Data ); Dtdc_NeonOnOff = strval( val ); }
  7189. }
  7190. fclose(file);
  7191. }
  7192. }
  7193.  
  7194. public Dtdc_LoadSeller()
  7195. {
  7196. Dtdc_SellerNum = 0;
  7197.  
  7198. for(new i = 0;i < MaxSeller; i++)
  7199. {
  7200. Dtdc_Seller[i][sAktivated] = 0;
  7201. Dtdc_Seller[i][sSqlId] = 0;
  7202. }
  7203.  
  7204. new arrCoords[17][64];
  7205. new strFromFile2[256];
  7206. format(sql,sizeof(sql),"SELECT * FROM `seller`");
  7207. mysql_query_fix(sql);
  7208. mysql_store_result();
  7209. if(mysql_num_rows() != 0)
  7210. {
  7211. new idx = 0;
  7212. while (mysql_fetch_row2(strFromFile2,","))
  7213. {
  7214. Dtdc_split(strFromFile2, arrCoords, ',');
  7215. Dtdc_Seller[idx][sSqlId] = strval(arrCoords[0]);
  7216. strmid(Dtdc_Seller[idx][sName], arrCoords[1], 0, strlen(arrCoords[1]), 40);
  7217. Dtdc_Seller[idx][sIconPosX] = floatstr(arrCoords[2]);
  7218. Dtdc_Seller[idx][sIconPosY] = floatstr(arrCoords[3]);
  7219. Dtdc_Seller[idx][sIconPosZ] = floatstr(arrCoords[4]);
  7220. Dtdc_Seller[idx][sIconRot] = floatstr(arrCoords[5]);
  7221. Dtdc_Seller[idx][sLVCarPosX] = floatstr(arrCoords[6]);
  7222. Dtdc_Seller[idx][sLVCarPosY] = floatstr(arrCoords[7]);
  7223. Dtdc_Seller[idx][sLVCarPosZ] = floatstr(arrCoords[8]);
  7224. Dtdc_Seller[idx][sLVCarRot] = floatstr(arrCoords[9]);
  7225. Dtdc_Seller[idx][sLVCamPosX] = floatstr(arrCoords[10]);
  7226. Dtdc_Seller[idx][sLVCamPosY] = floatstr(arrCoords[11]);
  7227. Dtdc_Seller[idx][sLVCamPosZ] = floatstr(arrCoords[12]);
  7228. Dtdc_Seller[idx][sLVPlyPosX] = floatstr(arrCoords[13]);
  7229. Dtdc_Seller[idx][sLVPlyPosY] = floatstr(arrCoords[14]);
  7230. Dtdc_Seller[idx][sLVPlyPosZ] = floatstr(arrCoords[15]);
  7231. Dtdc_Seller[idx][sPlayerTyp] = strval(arrCoords[16]);
  7232. Dtdc_Seller[idx][sAktivated] = 1;
  7233. Dtdc_Seller[idx][sCars] = 0;
  7234. Dtdc_Seller[idx][sPark] = 0;
  7235. idx ++;
  7236. }
  7237. Dtdc_SellerNum = idx;
  7238. }
  7239. printf("%d Autohäuser geladen",Dtdc_SellerNum);
  7240. }
  7241.  
  7242. forward Dtdc_SaveSeller();
  7243. public Dtdc_SaveSeller()
  7244. {
  7245. if(Dtdc_SellerNum != 0)
  7246. {
  7247. for(new idx=0;idx < Dtdc_SellerNum; idx ++)
  7248. {
  7249. if(Dtdc_Seller[idx][sAktivated] == 1)
  7250. {
  7251. new sName_temp[60];
  7252. mysql_real_escape_string(Dtdc_Seller[idx][sName],sName_temp);
  7253. if(Dtdc_Seller[idx][sSqlId] != 0)
  7254. {
  7255. DTDC_UpdateString("seller","Name",sName_temp,Dtdc_Seller[idx][sSqlId]);
  7256. DTDC_UpdateFloat("seller","sIconPosX",Dtdc_Seller[idx][sIconPosX],Dtdc_Seller[idx][sSqlId]);
  7257. DTDC_UpdateFloat("seller","sIconPosY",Dtdc_Seller[idx][sIconPosY],Dtdc_Seller[idx][sSqlId]);
  7258. DTDC_UpdateFloat("seller","sIconPosZ",Dtdc_Seller[idx][sIconPosZ],Dtdc_Seller[idx][sSqlId]);
  7259. DTDC_UpdateFloat("seller","sIconRot",Dtdc_Seller[idx][sIconRot],Dtdc_Seller[idx][sSqlId]);
  7260. DTDC_UpdateFloat("seller","sLVCarPosX",Dtdc_Seller[idx][sLVCarPosX],Dtdc_Seller[idx][sSqlId]);
  7261. DTDC_UpdateFloat("seller","sLVCarPosY",Dtdc_Seller[idx][sLVCarPosY],Dtdc_Seller[idx][sSqlId]);
  7262. DTDC_UpdateFloat("seller","sLVCarPosZ",Dtdc_Seller[idx][sLVCarPosZ],Dtdc_Seller[idx][sSqlId]);
  7263. DTDC_UpdateFloat("seller","sLVCarRot",Dtdc_Seller[idx][sLVCarRot],Dtdc_Seller[idx][sSqlId]);
  7264. DTDC_UpdateFloat("seller","sLVCamPosX",Dtdc_Seller[idx][sLVCamPosX],Dtdc_Seller[idx][sSqlId]);
  7265. DTDC_UpdateFloat("seller","sLVCamPosY",Dtdc_Seller[idx][sLVCamPosY],Dtdc_Seller[idx][sSqlId]);
  7266. DTDC_UpdateFloat("seller","sLVCamPosZ",Dtdc_Seller[idx][sLVCamPosZ],Dtdc_Seller[idx][sSqlId]);
  7267. DTDC_UpdateFloat("seller","sLVPlyPosX",Dtdc_Seller[idx][sLVPlyPosX],Dtdc_Seller[idx][sSqlId]);
  7268. DTDC_UpdateFloat("seller","sLVPlyPosY",Dtdc_Seller[idx][sLVPlyPosY],Dtdc_Seller[idx][sSqlId]);
  7269. DTDC_UpdateFloat("seller","sLVPlyPosZ",Dtdc_Seller[idx][sLVPlyPosZ],Dtdc_Seller[idx][sSqlId]);
  7270. DTDC_UpdateInt("seller","PlayerTyp",Dtdc_Seller[idx][sPlayerTyp],Dtdc_Seller[idx][sSqlId]);
  7271. } else {
  7272. format(sql,sizeof(sql),"INSERT INTO `seller` (`Name`, `sIconPosX`, `sIconPosY`, `sIconPosZ`, `sIconRot`, `sLVCarPosX`, `sLVCarPosY`, `sLVCarPosZ`, `sLVCarRot`, `sLVCamPosX`, `sLVCamPosY`, `sLVCamPosZ`, `sLVPlyPosX`, `sLVPlyPosY`, `sLVPlyPosZ`) VALUES ('%s', '%f', '%f', '%f', '%f', '%f', '%f', '%f', '%f', '%f', '%f', '%f', '%f', '%f', '%f');",
  7273. sName_temp,
  7274. Dtdc_Seller[idx][sIconPosX],
  7275. Dtdc_Seller[idx][sIconPosY],
  7276. Dtdc_Seller[idx][sIconPosZ],
  7277. Dtdc_Seller[idx][sIconRot],
  7278. Dtdc_Seller[idx][sLVCarPosX],
  7279. Dtdc_Seller[idx][sLVCarPosY],
  7280. Dtdc_Seller[idx][sLVCarPosZ],
  7281. Dtdc_Seller[idx][sLVCarRot],
  7282. Dtdc_Seller[idx][sLVCamPosX],
  7283. Dtdc_Seller[idx][sLVCamPosY],
  7284. Dtdc_Seller[idx][sLVCamPosZ],
  7285. Dtdc_Seller[idx][sLVPlyPosX],
  7286. Dtdc_Seller[idx][sLVPlyPosY],
  7287. Dtdc_Seller[idx][sLVPlyPosZ]);
  7288. mysql_query_fix(sql);
  7289.  
  7290. new str[20];
  7291. format(sql,sizeof(sql),"SELECT `id` FROM `seller` WHERE Name = '%s' ORDER BY `id` DESC",sName_temp);
  7292. mysql_query_fix(sql);
  7293. mysql_store_result();
  7294. #if !defined MYSQL_StrickenKid
  7295. mysql_retrieve_row();
  7296. #endif
  7297. mysql_fetch_field("id",str);
  7298. Dtdc_Seller[idx][sSqlId] = strval(str);
  7299. mysql_free_result();
  7300. }
  7301. }
  7302. }
  7303. }
  7304. }
  7305.  
  7306. forward Dtdc_LoadTuner();
  7307. public Dtdc_LoadTuner()
  7308. {
  7309. Dtdc_TunerNum = 0;
  7310.  
  7311. for(new i = 0;i < MaxResprayer; i++)
  7312. {
  7313. Dtdc_Tune[i][tAktivated] = 0;
  7314. Dtdc_Tune[i][tSqlId] = 0;
  7315. }
  7316.  
  7317. new arrCoords[6][64];
  7318. new strFromFile2[256];
  7319. format(sql,sizeof(sql),"SELECT * FROM `tuner`");
  7320. mysql_query_fix(sql);
  7321. mysql_store_result();
  7322. if(mysql_num_rows() != 0)
  7323. {
  7324. new idx = 0;
  7325. while(mysql_fetch_row2(strFromFile2,","))
  7326. {
  7327. Dtdc_split(strFromFile2, arrCoords, ',');
  7328. Dtdc_Tune[idx][tSqlId] = strval(arrCoords[0]);
  7329. strmid(Dtdc_Tune[idx][tNameIs], arrCoords[1], 0, strlen(arrCoords[1]), 40);
  7330. Dtdc_Tune[idx][tPosX] = floatstr(arrCoords[2]);
  7331. Dtdc_Tune[idx][tPosY] = floatstr(arrCoords[3]);
  7332. Dtdc_Tune[idx][tPosZ] = floatstr(arrCoords[4]);
  7333. Dtdc_Tune[idx][tRot] = floatstr(arrCoords[5]);
  7334. Dtdc_Tune[idx][tAktivated] = 1;
  7335. idx ++;
  7336. }
  7337. Dtdc_TunerNum = idx;
  7338. }
  7339. }
  7340.  
  7341. forward Dtdc_SaveTuner();
  7342. public Dtdc_SaveTuner()
  7343. {
  7344. if(Dtdc_TunerNum != 0)
  7345. {
  7346. for(new idx=0;idx < Dtdc_TunerNum; idx ++)
  7347. {
  7348. if(Dtdc_Tune[idx][tAktivated] == 1)
  7349. {
  7350. new sName_temp[60];
  7351. mysql_real_escape_string(Dtdc_Tune[idx][tNameIs],sName_temp);
  7352. if(Dtdc_Tune[idx][tSqlId] != 0)
  7353. {
  7354. DTDC_UpdateString("tuner","Name",sName_temp,Dtdc_Tune[idx][tSqlId]);
  7355. DTDC_UpdateFloat("tuner","PosX",Dtdc_Tune[idx][tPosX],Dtdc_Tune[idx][tSqlId]);
  7356. DTDC_UpdateFloat("tuner","PosY",Dtdc_Tune[idx][tPosY],Dtdc_Tune[idx][tSqlId]);
  7357. DTDC_UpdateFloat("tuner","PosZ",Dtdc_Tune[idx][tPosZ],Dtdc_Tune[idx][tSqlId]);
  7358. DTDC_UpdateFloat("tuner","Rot",Dtdc_Tune[idx][tRot],Dtdc_Tune[idx][tSqlId]);
  7359. } else {
  7360. format(sql,sizeof(sql),"INSERT INTO `tuner` (`Name`, `PosX`, `PosY`, `PosZ`, `Rot`) VALUES ('%s', '%f', '%f', '%f', '%f');",
  7361. sName_temp,
  7362. Dtdc_Tune[idx][tPosX],
  7363. Dtdc_Tune[idx][tPosY],
  7364. Dtdc_Tune[idx][tPosZ],
  7365. Dtdc_Tune[idx][tRot]);
  7366. mysql_query_fix(sql);
  7367.  
  7368. new str[20];
  7369. format(sql,sizeof(sql),"SELECT `id` FROM `tuner` WHERE `Name` = '%d' ORDER BY `id` DESC",sName_temp);
  7370. mysql_query_fix(sql);
  7371. mysql_store_result();
  7372. #if !defined MYSQL_StrickenKid
  7373. mysql_retrieve_row();
  7374. #endif
  7375. mysql_fetch_field("id",str);
  7376. Dtdc_Tune[idx][tSqlId] = strval(str);
  7377. mysql_free_result();
  7378. }
  7379. }
  7380. }
  7381. }
  7382. }
  7383.  
  7384. forward Dtdc_LoadResprayer();
  7385. public Dtdc_LoadResprayer()
  7386. {
  7387. Dtdc_ResprayerNum = 0;
  7388.  
  7389. for(new i = 0;i < MaxResprayer; i++)
  7390. {
  7391. Dtdc_Respray[i][rAktivated] = 0;
  7392. Dtdc_Respray[i][rSqlId] = 0;
  7393. }
  7394.  
  7395. new arrCoords[6][64];
  7396. new strFromFile2[256];
  7397. format(sql,sizeof(sql),"SELECT * FROM `resprayer`");
  7398. mysql_query_fix(sql);
  7399. mysql_store_result();
  7400. if(mysql_num_rows() != 0)
  7401. {
  7402. new idx = 0;
  7403. while(mysql_fetch_row2(strFromFile2,","))
  7404. {
  7405. Dtdc_split(strFromFile2, arrCoords, ',');
  7406. Dtdc_Respray[idx][rSqlId] = strval(arrCoords[0]);
  7407. strmid(Dtdc_Respray[idx][rNameIs], arrCoords[1], 0, strlen(arrCoords[1]), 40);
  7408. Dtdc_Respray[idx][rPosX] = floatstr(arrCoords[2]);
  7409. Dtdc_Respray[idx][rPosY] = floatstr(arrCoords[3]);
  7410. Dtdc_Respray[idx][rPosZ] = floatstr(arrCoords[4]);
  7411. Dtdc_Respray[idx][rRot] = floatstr(arrCoords[5]);
  7412. Dtdc_Respray[idx][rAktivated] = 1;
  7413. idx ++;
  7414. }
  7415. Dtdc_ResprayerNum = idx;
  7416. }
  7417. mysql_free_result();
  7418. }
  7419.  
  7420. forward Dtdc_SaveResprayer();
  7421. public Dtdc_SaveResprayer()
  7422. {
  7423. if(Dtdc_ResprayerNum != 0)
  7424. {
  7425. for(new idx=0;idx < Dtdc_ResprayerNum; idx ++)
  7426. {
  7427. if(Dtdc_Respray[idx][rAktivated] == 1)
  7428. {
  7429. new sName_temp[60];
  7430. mysql_real_escape_string(Dtdc_Respray[idx][rNameIs],sName_temp);
  7431. if(Dtdc_Respray[idx][rSqlId] != 0)
  7432. {
  7433. DTDC_UpdateString("resprayer","Name",sName_temp,Dtdc_Respray[idx][rSqlId]);
  7434. DTDC_UpdateFloat("resprayer","PosX",Dtdc_Respray[idx][rPosX],Dtdc_Respray[idx][rSqlId]);
  7435. DTDC_UpdateFloat("resprayer","PosY",Dtdc_Respray[idx][rPosY],Dtdc_Respray[idx][rSqlId]);
  7436. DTDC_UpdateFloat("resprayer","PosZ",Dtdc_Respray[idx][rPosZ],Dtdc_Respray[idx][rSqlId]);
  7437. DTDC_UpdateFloat("resprayer","Rot",Dtdc_Respray[idx][rRot],Dtdc_Respray[idx][rSqlId]);
  7438. } else {
  7439. format(sql,sizeof(sql),"INSERT INTO `resprayer` (`Name`, `PosX`, `PosY`, `PosZ`, `Rot`) VALUES ('%s', '%f', '%f', '%f', '%f');",
  7440. sName_temp,
  7441. Dtdc_Respray[idx][rPosX],
  7442. Dtdc_Respray[idx][rPosY],
  7443. Dtdc_Respray[idx][rPosZ],
  7444. Dtdc_Respray[idx][rRot]);
  7445. mysql_query_fix(sql);
  7446.  
  7447. new str[20];
  7448. format(sql,sizeof(sql),"SELECT `id` FROM `resprayer` WHERE `Name` = '%d' ORDER BY `id` DESC",sName_temp);
  7449. mysql_query_fix(sql);
  7450. mysql_store_result();
  7451. #if !defined MYSQL_StrickenKid
  7452. mysql_retrieve_row();
  7453. #endif
  7454. mysql_fetch_field("id",str);
  7455. Dtdc_Respray[idx][rSqlId] = strval(str);
  7456. mysql_free_result();
  7457. }
  7458. }
  7459. }
  7460. }
  7461. }
  7462.  
  7463. forward Dtdc_SaveSCars();
  7464. public Dtdc_SaveSCars()
  7465. {
  7466. if(Dtdc_SCarsNum != 0)
  7467. {
  7468. for(new idx=0;idx < Dtdc_SCarsNum; idx ++)
  7469. {
  7470. if(Dtdc_SCars[idx][scAktivated] == 1)
  7471. {
  7472. if(Dtdc_SCars[idx][scSqlId] != 0)
  7473. {
  7474. DTDC_UpdateInt("sellercars","Model",Dtdc_SCars[idx][scModel],Dtdc_SCars[idx][scSqlId]);
  7475. DTDC_UpdateInt("sellercars","Preis",Dtdc_SCars[idx][scPreis],Dtdc_SCars[idx][scSqlId]);
  7476. DTDC_UpdateInt("sellercars","Cat",Dtdc_SCars[idx][scCat],Dtdc_SCars[idx][scSqlId]);
  7477. DTDC_UpdateInt("sellercars","Sellerid",Dtdc_SCars[idx][scSellerSql],Dtdc_SCars[idx][scSqlId]);
  7478. } else {
  7479. format(sql,sizeof(sql),"INSERT INTO `sellercars` (`Model`, `Preis`, `Cat`, `Sellerid`) VALUES ('%d', '%d', '%d', '%d');",
  7480. Dtdc_SCars[idx][scModel],
  7481. Dtdc_SCars[idx][scPreis],
  7482. Dtdc_SCars[idx][scCat],
  7483. Dtdc_SCars[idx][scSellerSql]);
  7484. mysql_query_fix(sql);
  7485.  
  7486. new str[20];
  7487. format(sql,sizeof(sql),"SELECT `id` FROM `sellercars` WHERE `Model` = '%d' AND `Sellerid` = '%d' AND `Preis` = '%d' ORDER BY `id` DESC",Dtdc_SCars[idx][scModel],Dtdc_SCars[idx][scSellerSql],Dtdc_SCars[idx][scPreis]);
  7488. mysql_query_fix(sql);
  7489. mysql_store_result();
  7490. #if !defined MYSQL_StrickenKid
  7491. mysql_retrieve_row();
  7492. #endif
  7493. mysql_fetch_field("id",str);
  7494. Dtdc_SCars[idx][scSqlId] = strval(str);
  7495. mysql_free_result();
  7496. }
  7497. }
  7498. }
  7499. }
  7500. }
  7501.  
  7502. forward Dtdc_LoadSPark();
  7503. public Dtdc_LoadSPark()
  7504. {
  7505. Dtdc_SParkNum = 0;
  7506.  
  7507. for(new i = 0;i < MaxSellerPark; i++)
  7508. {
  7509. Dtdc_SPark[i][spAktivated] = 0;
  7510. Dtdc_SPark[i][spSqlId] = 0;
  7511. }
  7512.  
  7513. new arrCoords[6][64];
  7514. new strFromFile2[256];
  7515. format(sql,sizeof(sql),"SELECT * FROM `sellerparks`");
  7516. mysql_query_fix(sql);
  7517. mysql_store_result();
  7518. if(mysql_num_rows() != 0)
  7519. {
  7520. new idx = 0;
  7521. while (mysql_fetch_row2(strFromFile2,","))
  7522. {
  7523. Dtdc_split(strFromFile2, arrCoords, ',');
  7524. Dtdc_SPark[idx][spSqlId] = strval(arrCoords[0]);
  7525. Dtdc_SPark[idx][spPosX] = floatstr(arrCoords[1]);
  7526. Dtdc_SPark[idx][spPosY] = floatstr(arrCoords[2]);
  7527. Dtdc_SPark[idx][spPosZ] = floatstr(arrCoords[3]);
  7528. Dtdc_SPark[idx][spRotZ] = floatstr(arrCoords[4]);
  7529. Dtdc_SPark[idx][spSellerSql] = strval(arrCoords[5]);
  7530. Dtdc_SPark[idx][spSeller] = DTDC_GetSIdxOutSql(Dtdc_SPark[idx][spSellerSql]);
  7531. if(Dtdc_Seller[Dtdc_SPark[idx][spSeller]][sAktivated] == 1)
  7532. {
  7533. Dtdc_SPark[idx][spAktivated] = 1;
  7534. Dtdc_Seller[Dtdc_SPark[idx][spSeller]][sPark] ++;
  7535. } else { idx --;}
  7536. idx ++;
  7537. }
  7538. Dtdc_SParkNum = idx;
  7539. }
  7540. mysql_free_result();
  7541. printf("%d Parkplätze geladen",Dtdc_SParkNum);
  7542. }
  7543.  
  7544. forward Dtdc_SaveSPark();
  7545. public Dtdc_SaveSPark()
  7546. {
  7547. if(Dtdc_SCarsNum != 0)
  7548. {
  7549. for(new idx=0;idx < Dtdc_SParkNum; idx ++)
  7550. {
  7551. if(Dtdc_SPark[idx][spAktivated] == 1)
  7552. {
  7553. if(Dtdc_SPark[idx][spSqlId] != 0)
  7554. {
  7555. DTDC_UpdateFloat("sellerparks","PosX",Dtdc_SPark[idx][spPosX],Dtdc_SPark[idx][spSqlId]);
  7556. DTDC_UpdateFloat("sellerparks","PosY",Dtdc_SPark[idx][spPosY],Dtdc_SPark[idx][spSqlId]);
  7557. DTDC_UpdateFloat("sellerparks","PosZ",Dtdc_SPark[idx][spPosZ],Dtdc_SPark[idx][spSqlId]);
  7558. DTDC_UpdateFloat("sellerparks","RotZ",Dtdc_SPark[idx][spRotZ],Dtdc_SPark[idx][spSqlId]);
  7559. DTDC_UpdateInt("sellerparks","sellerid",Dtdc_SPark[idx][spSellerSql],Dtdc_SPark[idx][spSqlId]);
  7560. } else {
  7561. format(sql,sizeof(sql),"INSERT INTO `sellerparks` ( `PosX`, `PosY`, `PosZ`, `RotZ`, `sellerid`) VALUES ('%f', '%f', '%f', '%f', '%d');",
  7562. Dtdc_SPark[idx][spPosX],
  7563. Dtdc_SPark[idx][spPosY],
  7564. Dtdc_SPark[idx][spPosZ],
  7565. Dtdc_SPark[idx][spRotZ],
  7566. Dtdc_SPark[idx][spSellerSql]);
  7567. mysql_query_fix(sql);
  7568.  
  7569. new str[20];
  7570. format(sql,sizeof(sql),"SELECT `id` FROM `sellerparks` WHERE `PosX` = '%f' AND `PosY` = '%f' AND `PosZ` = '%f' AND `sellerid` = '%d' ORDER BY `id` DESC",Dtdc_SPark[idx][spPosX],Dtdc_SPark[idx][spPosY],Dtdc_SPark[idx][spPosZ],Dtdc_SPark[idx][spSellerSql]);
  7571. mysql_query_fix(sql);
  7572. mysql_store_result();
  7573. #if !defined MYSQL_StrickenKid
  7574. mysql_retrieve_row();
  7575. #endif
  7576. mysql_fetch_field("id",str);
  7577. Dtdc_SCars[idx][scSqlId] = strval(str);
  7578. mysql_free_result();
  7579. }
  7580. }
  7581. }
  7582. }
  7583. }
  7584.  
  7585. forward Dtdc_LoadSCars();
  7586. public Dtdc_LoadSCars()
  7587. {
  7588. Dtdc_SCarsNum = 0;
  7589.  
  7590. for(new i = 0;i < MaxSellerCars; i++)
  7591. {
  7592. Dtdc_SCars[i][scAktivated] = 0;
  7593. Dtdc_SCars[i][scSqlId] = 0;
  7594. }
  7595.  
  7596. new arrCoords[5][64];
  7597. new strFromFile2[256];
  7598. format(sql,sizeof(sql),"SELECT * FROM `sellercars`");
  7599. mysql_query_fix(sql);
  7600. mysql_store_result();
  7601. if(mysql_num_rows() != 0)
  7602. {
  7603. new idx = 0;
  7604. while (mysql_fetch_row2(strFromFile2,","))
  7605. {
  7606. Dtdc_split(strFromFile2, arrCoords, ',');
  7607. Dtdc_SCars[idx][scSqlId] = strval(arrCoords[0]);
  7608. Dtdc_SCars[idx][scModel] = strval(arrCoords[1]);
  7609. Dtdc_SCars[idx][scCat] = strval(arrCoords[3]);
  7610. Dtdc_SCars[idx][scPreis] = strval(arrCoords[2]);
  7611. Dtdc_SCars[idx][scSellerSql] = strval(arrCoords[4]);
  7612. Dtdc_SCars[idx][scSeller] = DTDC_GetSIdxOutSql(Dtdc_SCars[idx][scSellerSql]);
  7613. if(Dtdc_Seller[Dtdc_SCars[idx][scSeller]][sAktivated] == 1)
  7614. {
  7615. Dtdc_SCars[idx][scAktivated] = 1;
  7616. Dtdc_Seller[Dtdc_SCars[idx][scSeller]][sCars] ++;
  7617. } else { idx --;}
  7618. idx ++;
  7619. }
  7620. Dtdc_SCarsNum = idx;
  7621. }
  7622. mysql_free_result();
  7623. printf("%d Verkaufsautos geladen",Dtdc_SCarsNum);
  7624. }
  7625.  
  7626. stock DTDC_GetSIdxOutSql(sqlid)
  7627. {
  7628. for(new idx=0;idx < Dtdc_SellerNum; idx ++)
  7629. {
  7630. if(Dtdc_Seller[idx][sAktivated] == 1)
  7631. {
  7632. if(Dtdc_Seller[idx][sSqlId] == sqlid)
  7633. {
  7634. return idx;
  7635. }
  7636. }
  7637. }
  7638. return MaxSeller +1;
  7639. }
  7640.  
  7641. stock Dtdc_GetKey( line[] )
  7642. {
  7643. new keyRes[256];
  7644. keyRes[0] = 0;
  7645. if ( strfind( line , "=" , true ) == -1 ) return keyRes;
  7646. strmid( keyRes , line , 0 , strfind( line , "=" , true ) , sizeof( keyRes) );
  7647. return keyRes;
  7648. }
  7649.  
  7650. stock Dtdc_GetValue( line[] )
  7651. {
  7652. new valRes[256];
  7653. valRes[0]=0;
  7654. if ( strfind( line , "=" , true ) == -1 ) return valRes;
  7655. strmid( valRes , line , strfind( line , "=" , true )+1 , strlen( line ) , sizeof( valRes ) );
  7656. return valRes;
  7657. }
  7658.  
  7659. public Dtdc_split(const strsrc[], strdest[][], delimiter)
  7660. {
  7661. new i, li;
  7662. new aNum;
  7663. new len;
  7664. while(i <= strlen(strsrc)){
  7665. if(strsrc[i]==delimiter || i==strlen(strsrc)){
  7666. len = strmid(strdest[aNum], strsrc, li, i, 128);
  7667. strdest[aNum][len] = 0;
  7668. li = i+1;
  7669. aNum++;
  7670. }
  7671. i++;
  7672. }
  7673. return 1;
  7674. }
  7675.  
  7676. forward dtdc_SetSpeedoOff();
  7677. public dtdc_SetSpeedoOff()
  7678. {
  7679. for(new i=0; i<MAX_PLAYERS;i++)
  7680. {
  7681. if(IsPlayerConnected(i))
  7682. {
  7683. if(Dtdc_Player[i][dtdc_Speedo1]) {TextDrawHideForPlayer(i,Dtdc_Player[i][dtdc_Speedo1]);}
  7684. if(Dtdc_Player[i][dtdc_Speedo2]) {TextDrawHideForPlayer(i,Dtdc_Player[i][dtdc_Speedo2]);}
  7685. if(Dtdc_Player[i][dtdc_Speedo3]) {TextDrawHideForPlayer(i,Dtdc_Player[i][dtdc_Speedo3]);}
  7686. if(Dtdc_Player[i][dtdc_Speedo4]) {TextDrawHideForPlayer(i,Dtdc_Player[i][dtdc_Speedo4]);}
  7687. if(Dtdc_Player[i][dtdc_Speedo5]) {TextDrawHideForPlayer(i,Dtdc_Player[i][dtdc_Speedo5]);}
  7688. if(Dtdc_Player[i][dtdc_Speedo6]) {TextDrawHideForPlayer(i,Dtdc_Player[i][dtdc_Speedo6]);}
  7689. if(Dtdc_Player[i][dtdc_Speedo7]) {TextDrawHideForPlayer(i,Dtdc_Player[i][dtdc_Speedo7]);}
  7690. if(Dtdc_Player[i][dtdc_Speedo8]) {TextDrawHideForPlayer(i,Dtdc_Player[i][dtdc_Speedo8]);}
  7691. }
  7692. }
  7693. }
  7694.  
  7695. forward Dtdc_CreateSeller(sellerid);
  7696. public Dtdc_CreateSeller(sellerid)
  7697. {
  7698. if(Dtdc_Seller[sellerid][sAktivated] == 1)
  7699. {
  7700. if(Dtdc_MapIcon != 0 && (MapIconBegin + sellerid) <=99)
  7701. {
  7702. for(new i = 0; i<MAX_PLAYERS; i++)
  7703. {
  7704. if(IsPlayerConnected(i)){
  7705. SetPlayerMapIcon(i, (MapIconBegin + sellerid), Dtdc_Seller[sellerid][sIconPosX],Dtdc_Seller[sellerid][sIconPosY],Dtdc_Seller[sellerid][sIconPosZ], Dtdc_MapIcon, COLOR_YELLOW);
  7706. }
  7707. }
  7708. }
  7709. Dtdc_Seller[sellerid][sPickup] = CreatePickup(Dtdc_Icon, 2, Dtdc_Seller[sellerid][sIconPosX],Dtdc_Seller[sellerid][sIconPosY],Dtdc_Seller[sellerid][sIconPosZ],0);
  7710. }
  7711. }
  7712.  
  7713. forward Dtdc_DestroySeller(sellerid);
  7714. public Dtdc_DestroySeller(sellerid)
  7715. {
  7716. for(new i = 0; i<MAX_PLAYERS; i++)
  7717. {
  7718. if(IsPlayerConnected(i)){
  7719. RemovePlayerMapIcon(i,(MapIconBegin + sellerid));
  7720. }
  7721. }
  7722. DestroyPickup(Dtdc_Seller[sellerid][sPickup]);
  7723. }
  7724.  
  7725. forward Dtdc_CreateResprayer(resprayerid);
  7726. public Dtdc_CreateResprayer(resprayerid)
  7727. {
  7728. if(Dtdc_Respray[resprayerid][rAktivated] == 1 && Dtdc_Resprayer == 0)
  7729. {
  7730. if(Dtdc_RsMapIcon != 0 && (MapIconBegin +MaxSeller+ resprayerid) <=99)
  7731. {
  7732. for(new i = 0; i<MAX_PLAYERS; i++)
  7733. {
  7734. if(IsPlayerConnected(i)){
  7735. SetPlayerMapIcon(i, (MapIconBegin +MaxSeller+ resprayerid), Dtdc_Respray[resprayerid][rPosX],Dtdc_Respray[resprayerid][rPosY],Dtdc_Respray[resprayerid][rPosZ], Dtdc_RsMapIcon, COLOR_YELLOW);
  7736. }
  7737. }
  7738. }
  7739. Dtdc_Respray[resprayerid][rPick] = CreatePickup(Dtdc_RsIcon, 14, Dtdc_Respray[resprayerid][rPosX],Dtdc_Respray[resprayerid][rPosY],Dtdc_Respray[resprayerid][rPosZ],0);
  7740.  
  7741. }
  7742. }
  7743.  
  7744. forward Dtdc_CreateTuner(tunerid);
  7745. public Dtdc_CreateTuner(tunerid)
  7746. {
  7747. if(Dtdc_Tune[tunerid][tAktivated] == 1 && Dtdc_Tuner == 0)
  7748. {
  7749. if(Dtdc_TuMapIcon != 0 && (MapIconBegin +MaxSeller+ MaxResprayer+ tunerid) <=99)
  7750. {
  7751. for(new i = 0; i<MAX_PLAYERS; i++)
  7752. {
  7753. if(IsPlayerConnected(i)){
  7754. SetPlayerMapIcon(i, (MapIconBegin +MaxSeller+ MaxResprayer+ tunerid), Dtdc_Tune[tunerid][tPosX],Dtdc_Tune[tunerid][tPosY],Dtdc_Tune[tunerid][tPosZ], Dtdc_TuMapIcon, COLOR_YELLOW);
  7755. }
  7756. }
  7757. }
  7758. Dtdc_Tune[tunerid][tPick] = CreatePickup(Dtdc_RsIcon, 14, Dtdc_Tune[tunerid][tPosX],Dtdc_Tune[tunerid][tPosY],Dtdc_Tune[tunerid][tPosZ],0);
  7759. Dtdc_Tune[tunerid][tMenu] = CreateMenu(Dtdc_Tune[tunerid][tNameIs],2,25,150,75,50);
  7760. SetMenuColumnHeader(Dtdc_Tune[tunerid][tMenu], 0, Dtdc_Tune[tunerid][tNameIs]);
  7761. AddMenuItem(Dtdc_Tune[tunerid][tMenu], 0, "Nummernschilder");
  7762. AddMenuItem(Dtdc_Tune[tunerid][tMenu], 0, "Neon-Lichter");
  7763. }
  7764. }
  7765.  
  7766. forward Dtdc_DestroyTuner(tunerid);
  7767. public Dtdc_DestroyTuner(tunerid)
  7768. {
  7769. for(new i = 0; i<MAX_PLAYERS; i++)
  7770. {
  7771. if(IsPlayerConnected(i)){
  7772. RemovePlayerMapIcon(i,(MapIconBegin +MaxSeller+ MaxResprayer+ tunerid));
  7773. }
  7774. }
  7775. DestroyPickup(Dtdc_Tune[tunerid][tPick]);
  7776. DestroyMenu(Dtdc_Tune[tunerid][tMenu]);
  7777. }
  7778.  
  7779. forward Dtdc_DestroyResprayer(resprayerid);
  7780. public Dtdc_DestroyResprayer(resprayerid)
  7781. {
  7782. for(new i = 0; i<MAX_PLAYERS; i++)
  7783. {
  7784. if(IsPlayerConnected(i)){
  7785. RemovePlayerMapIcon(i,(MapIconBegin +MaxSeller+ resprayerid));
  7786. }
  7787. }
  7788. DestroyPickup(Dtdc_Respray[resprayerid][rPick]);
  7789. }
  7790.  
  7791. forward Dtdc_SpeedoInit(playerid, bool:forcenew);
  7792. public Dtdc_SpeedoInit(playerid, bool:forcenew)
  7793. {
  7794. if(!Dtdc_Player[playerid][dtdc_Speedo1] || forcenew == true) {
  7795. new pos = (Dtdc_SpeedoPos*100)+Dtdc_SpeedoShadow;
  7796. Dtdc_Player[playerid][speedoPos] = pos;
  7797. new Float:tX = Dtdc_SpeedoPosi[Dtdc_SpeedoPos][speedoPosX];
  7798. new Float:tY = Dtdc_SpeedoPosi[Dtdc_SpeedoPos][speedoPosY];
  7799. Dtdc_Player[playerid][dtdc_Speedo1] = TextDrawCreate(tX,tY," ~n~ ~n~ ~n~ ~n~ ");
  7800. TextDrawBoxColor(Dtdc_Player[playerid][dtdc_Speedo1],0x33333364);
  7801. TextDrawUseBox(Dtdc_Player[playerid][dtdc_Speedo1],true);
  7802. TextDrawTextSize(Dtdc_Player[playerid][dtdc_Speedo1],tX+185.000000,tY+506.500000);
  7803. TextDrawAlignment(Dtdc_Player[playerid][dtdc_Speedo1],0);
  7804. TextDrawBackgroundColor(Dtdc_Player[playerid][dtdc_Speedo1],0x000000ff);
  7805. TextDrawFont(Dtdc_Player[playerid][dtdc_Speedo1],3);
  7806. TextDrawLetterSize(Dtdc_Player[playerid][dtdc_Speedo1],0.399999,1.60000);
  7807. TextDrawColor(Dtdc_Player[playerid][dtdc_Speedo1],0x00000099);
  7808. TextDrawSetProportional(Dtdc_Player[playerid][dtdc_Speedo1],1);
  7809. if(!Dtdc_SpeedoShadow){TextDrawSetShadow(Dtdc_Player[playerid][dtdc_Speedo1],2);} else {TextDrawSetShadow(Dtdc_Player[playerid][dtdc_Speedo1],0);}
  7810. //In OnGameModeInit or any other place, we procced to create our textdraw:
  7811. Dtdc_Player[playerid][dtdc_Speedo2] = TextDrawCreate(tX+1.000000,tY+1.500000,"Fahrzeug: lol~n~KMH: 100~n~Zustand:~n~Tank:");
  7812. TextDrawBoxColor(Dtdc_Player[playerid][dtdc_Speedo2],0xffffffff);
  7813. TextDrawUseBox(Dtdc_Player[playerid][dtdc_Speedo2],true);
  7814. TextDrawTextSize(Dtdc_Player[playerid][dtdc_Speedo2],tX+184.000000,tY+506.500000);
  7815. TextDrawAlignment(Dtdc_Player[playerid][dtdc_Speedo2],0);
  7816. TextDrawBackgroundColor(Dtdc_Player[playerid][dtdc_Speedo2],0x000000ff);
  7817. TextDrawFont(Dtdc_Player[playerid][dtdc_Speedo2],3);
  7818. TextDrawLetterSize(Dtdc_Player[playerid][dtdc_Speedo2],0.399999,1.500000);
  7819. TextDrawColor(Dtdc_Player[playerid][dtdc_Speedo2],0x00000099);
  7820. TextDrawSetProportional(Dtdc_Player[playerid][dtdc_Speedo2],1);
  7821. if(!Dtdc_SpeedoShadow){TextDrawSetShadow(Dtdc_Player[playerid][dtdc_Speedo2],2);} else {TextDrawSetShadow(Dtdc_Player[playerid][dtdc_Speedo2],0);}
  7822. //In OnGameModeInit or any other place, we procced to create our textdraw:
  7823. Dtdc_Player[playerid][dtdc_Speedo3] = TextDrawCreate(tX+178.000000,tY+32.500000," ");
  7824. TextDrawUseBox(Dtdc_Player[playerid][dtdc_Speedo3],1);
  7825. TextDrawBoxColor(Dtdc_Player[playerid][dtdc_Speedo3],0x00000066);
  7826. TextDrawTextSize(Dtdc_Player[playerid][dtdc_Speedo3],tX+62.0,tY-375.500000);
  7827. TextDrawAlignment(Dtdc_Player[playerid][dtdc_Speedo3],0);
  7828. TextDrawBackgroundColor(Dtdc_Player[playerid][dtdc_Speedo3],0x000000ff);
  7829. TextDrawFont(Dtdc_Player[playerid][dtdc_Speedo3],3);
  7830. TextDrawLetterSize(Dtdc_Player[playerid][dtdc_Speedo3],1.100000,0.699999);
  7831. TextDrawColor(Dtdc_Player[playerid][dtdc_Speedo3],0xffffffff);
  7832. TextDrawSetOutline(Dtdc_Player[playerid][dtdc_Speedo3],1);
  7833. TextDrawSetProportional(Dtdc_Player[playerid][dtdc_Speedo3],1);
  7834. if(!Dtdc_SpeedoShadow){TextDrawSetShadow(Dtdc_Player[playerid][dtdc_Speedo3],1);} else {TextDrawSetShadow(Dtdc_Player[playerid][dtdc_Speedo3],0);}
  7835. //In OnGameModeInit or any other place, we procced to create our textdraw:
  7836. Dtdc_Player[playerid][dtdc_Speedo4] = TextDrawCreate(tX+70,tY+34," ~n~ ");
  7837. TextDrawUseBox(Dtdc_Player[playerid][dtdc_Speedo4],1);
  7838. TextDrawBoxColor(Dtdc_Player[playerid][dtdc_Speedo4],0xCC3300CC);
  7839. TextDrawTextSize(Dtdc_Player[playerid][dtdc_Speedo4],tX+170,tY-375.5);
  7840. TextDrawAlignment(Dtdc_Player[playerid][dtdc_Speedo4],0);
  7841. TextDrawBackgroundColor(Dtdc_Player[playerid][dtdc_Speedo4],0x000000ff);
  7842. TextDrawFont(Dtdc_Player[playerid][dtdc_Speedo4],3);
  7843. TextDrawLetterSize(Dtdc_Player[playerid][dtdc_Speedo4],0.500000,0.35000);
  7844. TextDrawColor(Dtdc_Player[playerid][dtdc_Speedo4],0xffffffff);
  7845. TextDrawSetOutline(Dtdc_Player[playerid][dtdc_Speedo4],1);
  7846. TextDrawSetProportional(Dtdc_Player[playerid][dtdc_Speedo4],1);
  7847. if(!Dtdc_SpeedoShadow){TextDrawSetShadow(Dtdc_Player[playerid][dtdc_Speedo4],1);} else {TextDrawSetShadow(Dtdc_Player[playerid][dtdc_Speedo4],0);}
  7848. //In OnGameModeInit or any other place, we procced to create our textdraw:
  7849. Dtdc_Player[playerid][dtdc_Speedo5] = TextDrawCreate(tX+120.000000,tY+32.5,"100");
  7850. TextDrawAlignment(Dtdc_Player[playerid][dtdc_Speedo5],2);
  7851. TextDrawBackgroundColor(Dtdc_Player[playerid][dtdc_Speedo5],0x000000ff);
  7852. TextDrawFont(Dtdc_Player[playerid][dtdc_Speedo5],3);
  7853. TextDrawLetterSize(Dtdc_Player[playerid][dtdc_Speedo5],0.500000,0.700000);
  7854. TextDrawColor(Dtdc_Player[playerid][dtdc_Speedo5],0xffffffff);
  7855. TextDrawSetOutline(Dtdc_Player[playerid][dtdc_Speedo5],1);
  7856. TextDrawSetProportional(Dtdc_Player[playerid][dtdc_Speedo5],1);
  7857. TextDrawSetShadow(Dtdc_Player[playerid][dtdc_Speedo5],0);
  7858. //In OnGameModeInit or any other place, we procced to create our textdraw:
  7859. Dtdc_Player[playerid][dtdc_Speedo6] = TextDrawCreate(tX+178,tY+47.500000," ");
  7860. TextDrawUseBox(Dtdc_Player[playerid][dtdc_Speedo6],1);
  7861. TextDrawBoxColor(Dtdc_Player[playerid][dtdc_Speedo6],0x00000066);
  7862. TextDrawTextSize(Dtdc_Player[playerid][dtdc_Speedo6],tX+62.000000,tY-375.5);
  7863. TextDrawAlignment(Dtdc_Player[playerid][dtdc_Speedo6],0);
  7864. TextDrawBackgroundColor(Dtdc_Player[playerid][dtdc_Speedo6],0x000000ff);
  7865. TextDrawFont(Dtdc_Player[playerid][dtdc_Speedo6],3);
  7866. TextDrawLetterSize(Dtdc_Player[playerid][dtdc_Speedo6],1.100000,0.699999);
  7867. TextDrawColor(Dtdc_Player[playerid][dtdc_Speedo6],0xffffffff);
  7868. TextDrawSetOutline(Dtdc_Player[playerid][dtdc_Speedo6],1);
  7869. TextDrawSetProportional(Dtdc_Player[playerid][dtdc_Speedo6],1);
  7870. if(!Dtdc_SpeedoShadow){TextDrawSetShadow(Dtdc_Player[playerid][dtdc_Speedo6],1);} else {TextDrawSetShadow(Dtdc_Player[playerid][dtdc_Speedo6],0);}
  7871. //In OnGameModeInit or any other place, we procced to create our textdraw:
  7872. Dtdc_Player[playerid][dtdc_Speedo7] = TextDrawCreate(tX+70.000000,tY+49.00000," ~n~ ");
  7873. TextDrawUseBox(Dtdc_Player[playerid][dtdc_Speedo7],1);
  7874. TextDrawBoxColor(Dtdc_Player[playerid][dtdc_Speedo7],0x0066CCCC);
  7875. TextDrawTextSize(Dtdc_Player[playerid][dtdc_Speedo7],tX-170.000000,tY-375.5);
  7876. TextDrawAlignment(Dtdc_Player[playerid][dtdc_Speedo7],0);
  7877. TextDrawBackgroundColor(Dtdc_Player[playerid][dtdc_Speedo7],0x000000ff);
  7878. TextDrawFont(Dtdc_Player[playerid][dtdc_Speedo7],3);
  7879. TextDrawLetterSize(Dtdc_Player[playerid][dtdc_Speedo7],0.500000,0.35000);
  7880. TextDrawColor(Dtdc_Player[playerid][dtdc_Speedo7],0xffffffff);
  7881. TextDrawSetOutline(Dtdc_Player[playerid][dtdc_Speedo7],1);
  7882. TextDrawSetProportional(Dtdc_Player[playerid][dtdc_Speedo7],1);
  7883. if(!Dtdc_SpeedoShadow){TextDrawSetShadow(Dtdc_Player[playerid][dtdc_Speedo7],1);} else {TextDrawSetShadow(Dtdc_Player[playerid][dtdc_Speedo7],0);}
  7884. //In OnGameModeInit or any other place, we procced to create our textdraw:
  7885. Dtdc_Player[playerid][dtdc_Speedo8] = TextDrawCreate(tX+120.000000,tY+47.500000,"100");
  7886. TextDrawAlignment(Dtdc_Player[playerid][dtdc_Speedo8],2);
  7887. TextDrawBackgroundColor(Dtdc_Player[playerid][dtdc_Speedo8],0x000000ff);
  7888. TextDrawFont(Dtdc_Player[playerid][dtdc_Speedo8],3);
  7889. TextDrawLetterSize(Dtdc_Player[playerid][dtdc_Speedo8],0.500000,0.700000);
  7890. TextDrawColor(Dtdc_Player[playerid][dtdc_Speedo8],0xffffffff);
  7891. TextDrawSetOutline(Dtdc_Player[playerid][dtdc_Speedo8],1);
  7892. TextDrawSetProportional(Dtdc_Player[playerid][dtdc_Speedo8],1);
  7893. TextDrawSetShadow(Dtdc_Player[playerid][dtdc_Speedo8],0);
  7894.  
  7895. }
  7896. }
  7897.  
  7898. forward Float:GetXYInFrontOf(&Float:a, &Float:x, &Float:y, Float:distanc);
  7899. Float:GetXYInFrontOf(&Float:a, &Float:x, &Float:y, Float:distanc)
  7900. {
  7901. x += (distanc * floatsin(-a, degrees));
  7902. y += (distanc * floatcos(-a, degrees));
  7903. return a;
  7904. }
  7905.  
  7906. forward Dtdc_OnCarBuy(playerid,seller,scarid);
  7907. public Dtdc_OnCarBuy(playerid,seller,scarid)
  7908. {
  7909. new string[120];
  7910. new money = GetPlayerMoney(playerid);
  7911. //FEHLERCODES Sollten im Normal-Fall nicht auftreten!
  7912. if(Dtdc_SCars[scarid][scSeller] != seller)
  7913. {
  7914. SendClientMessage(playerid,COLOR_GREY," !!!SCHWERWIEGENDER FEHLER (Fehler-Code:001)!!! BITTE ADMIN BESCHEIDGEBEN!!!");
  7915. format(string,sizeof(string),"SCHWERWIEGENDER FEHLER (Fehler-Code:001) [%d != %d]",Dtdc_SCars[scarid][scSeller],seller);
  7916. Dtdc_Log(0,string,playerid);
  7917. return 1;
  7918. }
  7919. if(Dtdc_Seller[seller][sPark] == 0)
  7920. {
  7921. SendClientMessage(playerid,COLOR_GREY," !!!SCHWERWIEGENDER FEHLER (Fehler-Code:002)!!! BITTE ADMIN BESCHEIDGEBEN!!!");
  7922. format(string,sizeof(string),"SCHWERWIEGENDER FEHLER (Fehler-Code:002) [%d == 0]",Dtdc_Seller[seller][sPark]);
  7923. Dtdc_Log(0,string,playerid);
  7924. return 1;
  7925. }
  7926. if(Dtdc_Seller[seller][sCars] == 0)
  7927. {
  7928. SendClientMessage(playerid,COLOR_GREY," !!!SCHWERWIEGENDER FEHLER (Fehler-Code:003)!!! BITTE ADMIN BESCHEIDGEBEN!!!");
  7929. format(string,sizeof(string),"SCHWERWIEGENDER FEHLER (Fehler-Code:003) [%d == 0]",Dtdc_Seller[seller][sCars]);
  7930. Dtdc_Log(0,string,playerid);
  7931. return 1;
  7932. }
  7933. if(Dtdc_SCars[scarid][scAktivated] == 0)
  7934. {
  7935. SendClientMessage(playerid,COLOR_GREY," !!!SCHWERWIEGENDER FEHLER (Fehler-Code:004)!!! BITTE ADMIN BESCHEIDGEBEN!!!");
  7936. format(string,sizeof(string),"SCHWERWIEGENDER FEHLER (Fehler-Code:004) [%d == 0]",Dtdc_SCars[scarid][scAktivated]);
  7937. Dtdc_Log(0,string,playerid);
  7938. return 1;
  7939. }
  7940. if(Dtdc_Seller[seller][sAktivated] == 0)
  7941. {
  7942. SendClientMessage(playerid,COLOR_GREY," !!!SCHWERWIEGENDER FEHLER (Fehler-Code:005)!!! BITTE ADMIN BESCHEIDGEBEN!!!");
  7943. format(string,sizeof(string),"SCHWERWIEGENDER FEHLER (Fehler-Code:005) [%d == 0]",Dtdc_Seller[seller][sAktivated]);
  7944. Dtdc_Log(0,string,playerid);
  7945. return 1;
  7946. }
  7947. if(Dtdc_Seller[seller][sPlayerTyp] != 0)
  7948. {
  7949. if(CallRemoteFunction("GetPlayerTyp","dd",playerid,Dtdc_Seller[seller][sPlayerTyp]) == 0)
  7950. {
  7951. SendClientMessage(playerid,COLOR_GREY," !!!SCHWERWIEGENDER FEHLER (Fehler-Code:006)!!! BITTE ADMIN BESCHEIDGEBEN!!!");
  7952. format(string,sizeof(string),"SCHWERWIEGENDER FEHLER (Fehler-Code:006) [%d == %d(%d)]",Dtdc_Seller[seller][sPlayerTyp],CallRemoteFunction("GetPlayerTyp","dd",playerid,Dtdc_Seller[seller][sPlayerTyp]),playerid);
  7953. Dtdc_Log(0,string,playerid);
  7954. return 1;
  7955. }
  7956. }
  7957. //Alle anderen Fehler
  7958. if(money < Dtdc_SCars[scarid][scPreis])
  7959. {
  7960. format(string,sizeof(string)," Du hast nicht genug Geld! Du benötigst %d$!",Dtdc_SCars[scarid][scPreis]);
  7961. SendClientMessage(playerid,COLOR_GREY,string);
  7962. return 0;
  7963. }
  7964. new carslot = MaxVehicle +1;
  7965. for(new c = 0; c <MaxVehPerPlayer;c++)
  7966. {
  7967. if(Dtdc_Player[playerid][Car][c] == MaxVehicle +1)
  7968. {
  7969. carslot = c;
  7970. break;
  7971. }
  7972. }
  7973. #if MaxVehMore != 0
  7974. if(carslot >= MaxVehPlayer)
  7975. {
  7976. new more = CallRemoteFunction("DtdcMoreVehicle","d",playerid);
  7977. if(carslot >= (MaxVehPlayer+more))
  7978. {
  7979. format(string,sizeof(string)," Du kannst keine Autos mehr kaufen, du kannst Maximal %d Autos kaufen!",(MaxVehPlayer+more));
  7980. SendClientMessage(playerid,COLOR_GREY,string);
  7981. return 0;
  7982. }
  7983. }
  7984. #endif
  7985. if(carslot == MaxVehicle +1)
  7986. {
  7987. format(string,sizeof(string)," Du kannst keine Autos mehr kaufen, jeder Player kann Maximal %d Autos kaufen!",MaxVehPerPlayer);
  7988. SendClientMessage(playerid,COLOR_GREY,string);
  7989. return 0;
  7990. }
  7991. if(Dtdc_CarsNum >= MaxVehicle-1)
  7992. {
  7993. format(string,sizeof(string)," Du kannst keine Autos mehr kaufen, auf diesem Server können maximal %d Autos gekauft werdenen!",MaxVehicle);
  7994. SendClientMessage(playerid,COLOR_GREY,string);
  7995. return 0;
  7996. }
  7997. //KEIN FEHLER GEFUNDEN = CAR KAUFEN UND SPEICHERN.
  7998. GivePlayerMoney(playerid,-Dtdc_SCars[scarid][scPreis]);
  7999. new carid = Dtdc_CarsNum;
  8000. if(carid >= MaxVehicle)
  8001. {
  8002. for(new x=0;x<MaxVehicle;x++)
  8003. {
  8004. if(Dtdc_Car[x][cAktivated] == 0)
  8005. {
  8006. carid = x;
  8007. }
  8008. }
  8009. } else {
  8010. Dtdc_CarsNum++;
  8011. }
  8012. Dtdc_Player[playerid][Car][carslot] = carid;
  8013.  
  8014. Dtdc_Car[carid][cNeon] = -1;
  8015. Dtdc_Car[carid][cAktivated] = 1;
  8016. Dtdc_Car[carid][cSlotid] = carslot;
  8017. GetPlayerName(playerid,Dtdc_Car[carid][cOwnerName],MAX_PLAYER_NAME);
  8018. format(Dtdc_Car[carid][cNumPlate],30,"");
  8019. Dtdc_Car[carid][cOwnerOnline] = playerid;
  8020. Dtdc_Car[carid][cPreis] = Dtdc_SCars[scarid][scPreis];
  8021. Dtdc_Car[carid][cModel] = Dtdc_SCars[scarid][scModel];
  8022. Dtdc_Car[carid][cColor1] = random(126);
  8023. Dtdc_Car[carid][cColor2] = random(126);
  8024. if(Dtdc_Select == 0){Dtdc_Car[carid][cColor1] = Dtdc_Player[playerid][CarColorSelect1];Dtdc_Car[carid][cColor2] = Dtdc_Player[playerid][CarColorSelect2];}
  8025. Dtdc_Car[carid][cAlarmBuyed] = 0;
  8026. Dtdc_Car[carid][cLocked] = 0;
  8027. if(Dtdc_LockAlarmOnSpawn == 2) {Dtdc_Car[carid][cLocked] = 1;}
  8028. Dtdc_SetParkplatz(carid,seller);
  8029.  
  8030. Dtdc_Car[carid][cCarId] = CreateVehicle(Dtdc_Car[carid][cModel],Dtdc_Car[carid][cPosX],Dtdc_Car[carid][cPosY],Dtdc_Car[carid][cPosZ],Dtdc_Car[carid][cRotZ],Dtdc_Car[carid][cColor1],Dtdc_Car[carid][cColor2],-1);
  8031. Dtdc_Car[carid][cComponent00] = GetVehicleComponentInSlot(Dtdc_Car[carid][cCarId],CARMODTYPE_SPOILER);
  8032. Dtdc_Car[carid][cComponent01] = GetVehicleComponentInSlot(Dtdc_Car[carid][cCarId],CARMODTYPE_HOOD);
  8033. Dtdc_Car[carid][cComponent02] = GetVehicleComponentInSlot(Dtdc_Car[carid][cCarId],CARMODTYPE_ROOF);
  8034. Dtdc_Car[carid][cComponent03] = GetVehicleComponentInSlot(Dtdc_Car[carid][cCarId],CARMODTYPE_SIDESKIRT);
  8035. Dtdc_Car[carid][cComponent04] = GetVehicleComponentInSlot(Dtdc_Car[carid][cCarId],CARMODTYPE_LAMPS);
  8036. Dtdc_Car[carid][cComponent05] = GetVehicleComponentInSlot(Dtdc_Car[carid][cCarId],CARMODTYPE_NITRO);
  8037. Dtdc_Car[carid][cComponent06] = GetVehicleComponentInSlot(Dtdc_Car[carid][cCarId],CARMODTYPE_EXHAUST);
  8038. Dtdc_Car[carid][cComponent07] = GetVehicleComponentInSlot(Dtdc_Car[carid][cCarId],CARMODTYPE_WHEELS);
  8039. Dtdc_Car[carid][cComponent08] = GetVehicleComponentInSlot(Dtdc_Car[carid][cCarId],CARMODTYPE_STEREO);
  8040. Dtdc_Car[carid][cComponent09] = GetVehicleComponentInSlot(Dtdc_Car[carid][cCarId],CARMODTYPE_HYDRAULICS);
  8041. Dtdc_Car[carid][cComponent10] = GetVehicleComponentInSlot(Dtdc_Car[carid][cCarId],CARMODTYPE_FRONT_BUMPER);
  8042. Dtdc_Car[carid][cComponent11] = GetVehicleComponentInSlot(Dtdc_Car[carid][cCarId],CARMODTYPE_REAR_BUMPER);
  8043. Dtdc_Car[carid][cComponent12] = GetVehicleComponentInSlot(Dtdc_Car[carid][cCarId],CARMODTYPE_VENT_RIGHT);
  8044. Dtdc_Car[carid][cComponent13] = GetVehicleComponentInSlot(Dtdc_Car[carid][cCarId],CARMODTYPE_VENT_LEFT);
  8045. GetVehicleDamageStatus(Dtdc_Car[carid][cCarId],Dtdc_Car[carid][cDmgPanels],Dtdc_Car[carid][cDmgDoors],Dtdc_Car[carid][cDmgLights],Dtdc_Car[carid][cDmgTires]);
  8046. GetVehicleHealth(Dtdc_Car[carid][cCarId],Dtdc_Car[carid][cHealth]);
  8047. Dtdc_Car[carid][cStatus] = 1;
  8048. Dtdc_Car[carid][cFirstSpawn] = 1;
  8049. CallRemoteFunction("OnVehicleDTDCSpawn","dd",Dtdc_Car[carid][cCarId],Dtdc_Car[carid][cFirstSpawn]);
  8050.  
  8051. Dtdc_Car[carid][cSqlId] = 0;
  8052. Dtdc_Log(3,"------[Dtdc_OnCarBuy]------");
  8053. Dtdc_SaveVeh(carid);
  8054.  
  8055. if(Dtdc_PutInVehOnBuy == 0){SetTimerEx("Dtdc_PutInVeh",200,0,"dd",playerid,carid);}
  8056. return 1;
  8057. }
  8058.  
  8059. forward Dtdc_PutInVeh(playerid,car);
  8060. public Dtdc_PutInVeh(playerid,car)
  8061. {
  8062. if(Dtdc_Car[car][cAktivated] == 1 && IsPlayerConnected(playerid))
  8063. {
  8064. SetPlayerPos(playerid,Dtdc_Car[car][cPosX],Dtdc_Car[car][cPosY],Dtdc_Car[car][cPosZ]+1.5);
  8065. PutPlayerInVehicle(playerid,Dtdc_Car[car][cCarId],0);
  8066. }
  8067. }
  8068.  
  8069. forward Dtdc_SetParkplatz(car,seller);
  8070. public Dtdc_SetParkplatz(car,seller)
  8071. {
  8072. new park = 0;
  8073. new plus = 0;
  8074. for(new i=0; i< Dtdc_SParkNum; i++)
  8075. {
  8076. if(Dtdc_SPark[i][spSeller] == seller)
  8077. {
  8078. if(plus == Dtdc_Seller[seller][sLastPark])
  8079. {
  8080. park = i;
  8081. break;
  8082. }
  8083. plus++;
  8084. }
  8085. }
  8086.  
  8087. Dtdc_Car[car][cPosX] = Dtdc_SPark[park][spPosX];
  8088. Dtdc_Car[car][cPosY] = Dtdc_SPark[park][spPosY];
  8089. Dtdc_Car[car][cPosZ] = Dtdc_SPark[park][spPosZ];
  8090. Dtdc_Car[car][cRotZ] = Dtdc_SPark[park][spRotZ];
  8091.  
  8092. Dtdc_Seller[seller][sLastPark]++;
  8093. if(Dtdc_Seller[seller][sLastPark] >= Dtdc_Seller[seller][sPark]){Dtdc_Seller[seller][sLastPark]= 0;}
  8094. return 1;
  8095. }
  8096.  
  8097. forward Dtdc_SaveVeh(car);
  8098. public Dtdc_SaveVeh(car)
  8099. {
  8100. if(Dtdc_Car[car][cAktivated] == 1)
  8101. {
  8102. if(Dtdc_Car[car][cStatus] == 1)
  8103. {
  8104. Dtdc_Car[car][cComponent00] = GetVehicleComponentInSlot(Dtdc_Car[car][cCarId],CARMODTYPE_SPOILER);
  8105. Dtdc_Car[car][cComponent01] = GetVehicleComponentInSlot(Dtdc_Car[car][cCarId],CARMODTYPE_HOOD);
  8106. Dtdc_Car[car][cComponent02] = GetVehicleComponentInSlot(Dtdc_Car[car][cCarId],CARMODTYPE_ROOF);
  8107. Dtdc_Car[car][cComponent03] = GetVehicleComponentInSlot(Dtdc_Car[car][cCarId],CARMODTYPE_SIDESKIRT);
  8108. Dtdc_Car[car][cComponent04] = GetVehicleComponentInSlot(Dtdc_Car[car][cCarId],CARMODTYPE_LAMPS);
  8109. Dtdc_Car[car][cComponent05] = GetVehicleComponentInSlot(Dtdc_Car[car][cCarId],CARMODTYPE_NITRO);
  8110. Dtdc_Car[car][cComponent06] = GetVehicleComponentInSlot(Dtdc_Car[car][cCarId],CARMODTYPE_EXHAUST);
  8111. Dtdc_Car[car][cComponent07] = GetVehicleComponentInSlot(Dtdc_Car[car][cCarId],CARMODTYPE_WHEELS);
  8112. Dtdc_Car[car][cComponent08] = GetVehicleComponentInSlot(Dtdc_Car[car][cCarId],CARMODTYPE_STEREO);
  8113. Dtdc_Car[car][cComponent09] = GetVehicleComponentInSlot(Dtdc_Car[car][cCarId],CARMODTYPE_HYDRAULICS);
  8114. Dtdc_Car[car][cComponent10] = GetVehicleComponentInSlot(Dtdc_Car[car][cCarId],CARMODTYPE_FRONT_BUMPER);
  8115. Dtdc_Car[car][cComponent11] = GetVehicleComponentInSlot(Dtdc_Car[car][cCarId],CARMODTYPE_REAR_BUMPER);
  8116. Dtdc_Car[car][cComponent12] = GetVehicleComponentInSlot(Dtdc_Car[car][cCarId],CARMODTYPE_VENT_RIGHT);
  8117. Dtdc_Car[car][cComponent13] = GetVehicleComponentInSlot(Dtdc_Car[car][cCarId],CARMODTYPE_VENT_LEFT);
  8118. GetVehicleDamageStatus(Dtdc_Car[car][cCarId],Dtdc_Car[car][cDmgPanels],Dtdc_Car[car][cDmgDoors],Dtdc_Car[car][cDmgLights],Dtdc_Car[car][cDmgTires]);
  8119. GetVehicleHealth(Dtdc_Car[car][cCarId],Dtdc_Car[car][cHealth]);
  8120. }
  8121.  
  8122. if(Dtdc_ParkCommand == 1)
  8123. {
  8124. GetVehiclePos(Dtdc_Car[car][cCarId],Dtdc_Car[car][cPosX],Dtdc_Car[car][cPosY],Dtdc_Car[car][cPosZ]);
  8125. GetVehicleZAngle(Dtdc_Car[car][cCarId],Dtdc_Car[car][cRotZ]);
  8126. Dtdc_Car[car][cVW] =GetVehicleVirtualWorld(Dtdc_Car[car][cCarId]);
  8127. }
  8128.  
  8129. if(Dtdc_Car[car][cSqlId] == 0)
  8130. {
  8131. new str[20];
  8132. new mres[20];
  8133. mysql_real_escape_string(Dtdc_Car[car][cOwnerName],mres);
  8134. format(sql,sizeof(sql),"SELECT `id` FROM `playercars` WHERE `Owner` = '%s' AND `SlotId` = %d ORDER BY `id` DESC LIMIT 1",mres,Dtdc_Car[car][cSlotid]);
  8135. mysql_query_fix(sql);
  8136. mysql_store_result();
  8137. if(mysql_num_rows() != 0)
  8138. {
  8139. #if !defined MYSQL_StrickenKid
  8140. mysql_retrieve_row();
  8141. #endif
  8142. mysql_fetch_field("id",str);
  8143. Dtdc_Car[car][cSqlId] = strval(str);
  8144. mysql_free_result();
  8145. } else {
  8146. mysql_free_result();
  8147. format(sql,sizeof(sql),"INSERT INTO `playercars` ( `Owner`, `SlotId`) VALUES ('%s', '%d');",mres,Dtdc_Car[car][cSlotid]);
  8148. mysql_query_fix(sql);
  8149.  
  8150. format(sql,sizeof(sql),"SELECT `id` FROM `playercars` WHERE `Owner` = '%s' AND `SlotId` = '%d' ORDER BY `id` DESC LIMIT 1",mres,Dtdc_Car[car][cSlotid]);
  8151. mysql_query_fix(sql);
  8152. mysql_store_result();
  8153. #if !defined MYSQL_StrickenKid
  8154. mysql_retrieve_row();
  8155. #endif
  8156. mysql_fetch_field("id",str);
  8157. Dtdc_Car[car][cSqlId] = strval(str);
  8158. mysql_free_result();
  8159. }
  8160. }
  8161.  
  8162. if(Dtdc_Car[car][cSqlId] != 0)
  8163. {
  8164. DTDC_UpdateInt("playercars","SlotId",Dtdc_Car[car][cSlotid],Dtdc_Car[car][cSqlId]);
  8165. DTDC_UpdateString("playercars","Owner",Dtdc_Car[car][cOwnerName],Dtdc_Car[car][cSqlId]);
  8166. DTDC_UpdateInt("playercars","Preis",Dtdc_Car[car][cPreis],Dtdc_Car[car][cSqlId]);
  8167. DTDC_UpdateInt("playercars","Model",Dtdc_Car[car][cModel],Dtdc_Car[car][cSqlId]);
  8168. DTDC_UpdateInt("playercars","Color1",Dtdc_Car[car][cColor1],Dtdc_Car[car][cSqlId]);
  8169. DTDC_UpdateInt("playercars","Color2",Dtdc_Car[car][cColor1],Dtdc_Car[car][cSqlId]);
  8170. DTDC_UpdateInt("playercars","AlarmBuyed",Dtdc_Car[car][cAlarmBuyed],Dtdc_Car[car][cSqlId]);
  8171. DTDC_UpdateInt("playercars","Locked",Dtdc_Car[car][cLocked],Dtdc_Car[car][cSqlId]);
  8172. DTDC_UpdateInt("playercars","PJ",Dtdc_Car[car][cPJ],Dtdc_Car[car][cSqlId]);
  8173. //Health and VehicleDmg
  8174. DTDC_UpdateFloat("playercars","Health",Dtdc_Car[car][cHealth],Dtdc_Car[car][cSqlId]);
  8175. DTDC_UpdateInt("playercars","DmgPanels",Dtdc_Car[car][cDmgPanels],Dtdc_Car[car][cSqlId]);
  8176. DTDC_UpdateInt("playercars","DmgDoors",Dtdc_Car[car][cDmgDoors],Dtdc_Car[car][cSqlId]);
  8177. DTDC_UpdateInt("playercars","DmgLights",Dtdc_Car[car][cDmgLights],Dtdc_Car[car][cSqlId]);
  8178. DTDC_UpdateInt("playercars","DmgTires",Dtdc_Car[car][cDmgTires],Dtdc_Car[car][cSqlId]);
  8179. //Tuning
  8180. DTDC_UpdateInt("playercars","Component00",Dtdc_Car[car][cComponent00],Dtdc_Car[car][cSqlId]);
  8181. DTDC_UpdateInt("playercars","Component01",Dtdc_Car[car][cComponent01],Dtdc_Car[car][cSqlId]);
  8182. DTDC_UpdateInt("playercars","Component02",Dtdc_Car[car][cComponent02],Dtdc_Car[car][cSqlId]);
  8183. DTDC_UpdateInt("playercars","Component03",Dtdc_Car[car][cComponent03],Dtdc_Car[car][cSqlId]);
  8184. DTDC_UpdateInt("playercars","Component04",Dtdc_Car[car][cComponent04],Dtdc_Car[car][cSqlId]);
  8185. DTDC_UpdateInt("playercars","Component05",Dtdc_Car[car][cComponent05],Dtdc_Car[car][cSqlId]);
  8186. DTDC_UpdateInt("playercars","Component06",Dtdc_Car[car][cComponent06],Dtdc_Car[car][cSqlId]);
  8187. DTDC_UpdateInt("playercars","Component07",Dtdc_Car[car][cComponent07],Dtdc_Car[car][cSqlId]);
  8188. DTDC_UpdateInt("playercars","Component08",Dtdc_Car[car][cComponent08],Dtdc_Car[car][cSqlId]);
  8189. DTDC_UpdateInt("playercars","Component09",Dtdc_Car[car][cComponent09],Dtdc_Car[car][cSqlId]);
  8190. DTDC_UpdateInt("playercars","Component10",Dtdc_Car[car][cComponent10],Dtdc_Car[car][cSqlId]);
  8191. DTDC_UpdateInt("playercars","Component11",Dtdc_Car[car][cComponent11],Dtdc_Car[car][cSqlId]);
  8192. DTDC_UpdateInt("playercars","Component12",Dtdc_Car[car][cComponent12],Dtdc_Car[car][cSqlId]);
  8193. DTDC_UpdateInt("playercars","Component13",Dtdc_Car[car][cComponent13],Dtdc_Car[car][cSqlId]);
  8194. //Pos
  8195. DTDC_UpdateFloat("playercars","PosX",Dtdc_Car[car][cPosX],Dtdc_Car[car][cSqlId]);
  8196. DTDC_UpdateFloat("playercars","PosY",Dtdc_Car[car][cPosY],Dtdc_Car[car][cSqlId]);
  8197. DTDC_UpdateFloat("playercars","PosZ",Dtdc_Car[car][cPosZ],Dtdc_Car[car][cSqlId]);
  8198. DTDC_UpdateFloat("playercars","RotZ",Dtdc_Car[car][cRotZ],Dtdc_Car[car][cSqlId]);
  8199. DTDC_UpdateInt("playercars","VW",Dtdc_Car[car][cVW],Dtdc_Car[car][cSqlId]);
  8200. //spezialtuning
  8201. DTDC_UpdateInt("playercars","Neon",Dtdc_Car[car][cNeon],Dtdc_Car[car][cSqlId]);
  8202. DTDC_UpdateString("playercars","Numplate",Dtdc_Car[car][cNumPlate],Dtdc_Car[car][cSqlId]);
  8203. //Opark
  8204. DTDC_UpdateInt("playercars","OPark",Dtdc_Car[car][cOPark],Dtdc_Car[car][cSqlId]);
  8205. DTDC_UpdateFloat("playercars","OParkX",Dtdc_Car[car][cOParkX],Dtdc_Car[car][cSqlId]);
  8206. DTDC_UpdateFloat("playercars","OParkY",Dtdc_Car[car][cOParkY],Dtdc_Car[car][cSqlId]);
  8207. DTDC_UpdateFloat("playercars","OParkZ",Dtdc_Car[car][cOParkZ],Dtdc_Car[car][cSqlId]);
  8208. DTDC_UpdateFloat("playercars","OParkR",Dtdc_Car[car][cOParkR],Dtdc_Car[car][cSqlId]);
  8209. }
  8210. }
  8211. }
  8212.  
  8213. forward Dtdc_LoadVeh(PlayerName[],slot);
  8214. public Dtdc_LoadVeh(PlayerName[],slot)
  8215. {
  8216. new string[80];
  8217. mysql_real_escape_string(PlayerName,PlayerName);
  8218. format(sql,sizeof(sql),"SELECT * FROM `playercars` WHERE `Owner` = '%s' AND `SlotId` = '%d' ORDER BY `id` DESC LIMIT 1",PlayerName,slot);
  8219. mysql_query_fix(sql);
  8220. mysql_store_result();
  8221. new rows = mysql_num_rows();
  8222. format(string,sizeof(string),"Load: %s Slot: %d Found: %d",PlayerName,slot,rows);
  8223. Dtdc_Log(4,string);
  8224. if(rows !=0 && Dtdc_CarsNum < (MaxVehicle-1))
  8225. {
  8226. new id = Dtdc_CarsNum;
  8227. if(id >= MaxVehicle)
  8228. {
  8229. for(new x=0;x<MaxVehicle;x++)
  8230. {
  8231. if(Dtdc_Car[x][cAktivated] == 0)
  8232. {
  8233. id = x;
  8234. break;
  8235. }
  8236. }
  8237. } else {
  8238. Dtdc_CarsNum++;
  8239. }
  8240. new str[50];
  8241. Dtdc_Car[id][cNeon] = -1;
  8242. format(Dtdc_Car[id][cNumPlate],30,"");
  8243. #if !defined MYSQL_StrickenKid
  8244. mysql_retrieve_row();
  8245. #endif
  8246. mysql_fetch_field("id",str); Dtdc_Car[id][cSqlId] = strval( str );
  8247. mysql_fetch_field("SlotId",str); Dtdc_Car[id][cSlotid] = strval( str );
  8248. mysql_fetch_field("Owner",str); strmid(Dtdc_Car[id][cOwnerName], str, 0, strlen(str), 40);
  8249. mysql_fetch_field("Preis",str); Dtdc_Car[id][cPreis] = strval( str );
  8250. mysql_fetch_field("Model",str); Dtdc_Car[id][cModel] = strval( str );
  8251. mysql_fetch_field("Color1",str); Dtdc_Car[id][cColor1] = strval( str );
  8252. mysql_fetch_field("Color2",str); Dtdc_Car[id][cColor2] = strval( str );
  8253. mysql_fetch_field("AlarmBuyed",str); Dtdc_Car[id][cAlarmBuyed] = strval( str );
  8254. mysql_fetch_field("Locked",str); Dtdc_Car[id][cLocked] = strval( str );
  8255. mysql_fetch_field("PJ",str); Dtdc_Car[id][cPJ] = strval( str );
  8256. //Health and VehicleDmg
  8257. mysql_fetch_field("Health",str); Dtdc_Car[id][cHealth] = floatstr( str );
  8258. mysql_fetch_field("DmgPanels",str); Dtdc_Car[id][cDmgPanels] = strval( str );
  8259. mysql_fetch_field("DmgDoors",str); Dtdc_Car[id][cDmgDoors] = strval( str );
  8260. mysql_fetch_field("DmgLights",str); Dtdc_Car[id][cDmgLights] = strval( str );
  8261. mysql_fetch_field("DmgTires",str); Dtdc_Car[id][cDmgTires] = strval( str );
  8262. //Tuning
  8263. mysql_fetch_field("Component00",str); Dtdc_Car[id][cComponent00] = strval( str );
  8264. mysql_fetch_field("Component01",str); Dtdc_Car[id][cComponent01] = strval( str );
  8265. mysql_fetch_field("Component02",str); Dtdc_Car[id][cComponent02] = strval( str );
  8266. mysql_fetch_field("Component03",str); Dtdc_Car[id][cComponent03] = strval( str );
  8267. mysql_fetch_field("Component04",str); Dtdc_Car[id][cComponent04] = strval( str );
  8268. mysql_fetch_field("Component05",str); Dtdc_Car[id][cComponent05] = strval( str );
  8269. mysql_fetch_field("Component06",str); Dtdc_Car[id][cComponent06] = strval( str );
  8270. mysql_fetch_field("Component07",str); Dtdc_Car[id][cComponent07] = strval( str );
  8271. mysql_fetch_field("Component08",str); Dtdc_Car[id][cComponent08] = strval( str );
  8272. mysql_fetch_field("Component09",str); Dtdc_Car[id][cComponent09] = strval( str );
  8273. mysql_fetch_field("Component10",str); Dtdc_Car[id][cComponent10] = strval( str );
  8274. mysql_fetch_field("Component11",str); Dtdc_Car[id][cComponent11] = strval( str );
  8275. mysql_fetch_field("Component12",str); Dtdc_Car[id][cComponent12] = strval( str );
  8276. mysql_fetch_field("Component13",str); Dtdc_Car[id][cComponent13] = strval( str );
  8277. //Pos
  8278. mysql_fetch_field("PosX",str); Dtdc_Car[id][cPosX] = floatstr( str );
  8279. mysql_fetch_field("PosY",str); Dtdc_Car[id][cPosY] = floatstr( str );
  8280. mysql_fetch_field("PosZ",str); Dtdc_Car[id][cPosZ] = floatstr( str );
  8281. mysql_fetch_field("RotZ",str); Dtdc_Car[id][cRotZ] = floatstr( str );
  8282. mysql_fetch_field("VW",str); Dtdc_Car[id][cVW] = strval( str );
  8283. //spezialtuning
  8284. mysql_fetch_field("Neon",str); Dtdc_Car[id][cNeon] = strval( str );
  8285. mysql_fetch_field("Numplate",str); strmid(Dtdc_Car[id][cNumPlate], str, 0, strlen(str), 30);
  8286. //Opark
  8287. mysql_fetch_field("OPark",str); Dtdc_Car[id][cOPark] = strval( str );
  8288. mysql_fetch_field("OParkX",str); Dtdc_Car[id][cOParkX] = floatstr( str );
  8289. mysql_fetch_field("OParkY",str); Dtdc_Car[id][cOParkY] = floatstr( str );
  8290. mysql_fetch_field("OParkZ",str); Dtdc_Car[id][cOParkZ] = floatstr( str );
  8291. mysql_fetch_field("OParkR",str); Dtdc_Car[id][cOParkR] = floatstr( str );
  8292. if(Dtdc_LockOrAlarm == 1 && Dtdc_Car[id][cAlarmBuyed] == 0) { Dtdc_Car[id][cLocked] = 0; }
  8293. Dtdc_Car[id][cAktivated] = 1;
  8294. Dtdc_Car[id][cOwnerOnline] = MAX_PLAYERS+1;
  8295. return id;
  8296. }
  8297. return -1;
  8298. }
  8299.  
  8300. stock Dtdc_RespawnVeh(veh,restorepos=false,inter=0)
  8301. {
  8302. new carid = Dtdc_GetCarArrayId(veh);
  8303. if(carid != 1)
  8304. {
  8305. Dtdc_Car[carid][cRespawn] = 1;
  8306. //Save Everything
  8307. new comp[14];
  8308. new engine,lights,alarm,doors,bonnet,boot,objective;
  8309. new panels,doors2,lights2,tires,lock;
  8310. new Float:Health;
  8311. new Float:posx,Float:posy,Float:posz,Float:Rot;
  8312. new vw;
  8313. for(new i=0;i<14;i++)
  8314. {
  8315. comp[i] = GetVehicleComponentInSlot(veh,i);
  8316. }
  8317. GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
  8318. GetVehicleHealth(veh,Health);
  8319. vw = GetVehicleVirtualWorld(veh);
  8320. GetVehicleDamageStatus(veh,panels,doors2,lights2,tires);
  8321. GetVehiclePos(veh,posx,posy,posz);
  8322. GetVehicleZAngle(veh,Rot);
  8323. if(strlen(Dtdc_Car[carid][cNumPlate]) != 0){SetVehicleNumberPlate(veh,Dtdc_Car[carid][cNumPlate]);}
  8324. Dtdc_DelNeonFromVeh(veh);
  8325.  
  8326. //Respawn
  8327. SetVehicleToRespawn(veh);
  8328.  
  8329. //Restore
  8330. if(restorepos)
  8331. {
  8332. SetVehiclePos(veh,posx,posy,posz+0.5);
  8333. SetVehicleZAngle(veh,Rot);
  8334. if(inter!=0){LinkVehicleToInterior(veh,inter);}
  8335. }
  8336. SetVehicleParamsEx_Fixed(veh,engine,lights,alarm,lock,bonnet,boot,objective);
  8337. SetVehicleHealth(veh,Health);
  8338. SetVehicleVirtualWorld(veh,vw);
  8339. UpdateVehicleDamageStatus(veh,panels,doors2,lights2,tires);
  8340. for(new i=0;i<14;i++)
  8341. {
  8342. AddVehicleComponent(veh,comp[i]);
  8343. }
  8344. if(Dtdc_Car[carid][cPJ] != 0){ChangeVehiclePaintjob(Dtdc_Car[carid][cCarId],Dtdc_Car[carid][cPJ]-1);}
  8345. ChangeVehicleColor(Dtdc_Car[carid][cCarId],Dtdc_Car[carid][cColor1],Dtdc_Car[carid][cColor2]);
  8346. Dtdc_SetNeonToVeh(veh,Dtdc_Car[carid][cNeon]);
  8347. if(Dtdc_LockAlarmOnSpawn == 0)
  8348. {
  8349. Dtdc_Car[carid][cLocked] = 1;
  8350. if(Dtdc_LockOrAlarm == 0) {SetVehicleLock(Dtdc_Car[carid][cCarId],Dtdc_Car[carid][cLocked]);}
  8351. }
  8352. }
  8353. }
  8354.  
  8355. forward Dtdc_SpawnVeh(car);
  8356. public Dtdc_SpawnVeh(car)
  8357. {
  8358. if(Dtdc_Car[car][cAktivated] == 1)
  8359. {
  8360. if(Dtdc_Car[car][cOPark] == 1 && Dtdc_OPark == 0)
  8361. {
  8362. Dtdc_Car[car][cCarId] = CreateVehicle(Dtdc_Car[car][cModel],Dtdc_Car[car][cOParkX],Dtdc_Car[car][cOParkY],Dtdc_Car[car][cOParkZ],Dtdc_Car[car][cOParkR],Dtdc_Car[car][cColor1],Dtdc_Car[car][cColor2],-1);
  8363. } else {
  8364. Dtdc_Car[car][cCarId] = CreateVehicle(Dtdc_Car[car][cModel],Dtdc_Car[car][cPosX],Dtdc_Car[car][cPosY],Dtdc_Car[car][cPosZ],Dtdc_Car[car][cRotZ],Dtdc_Car[car][cColor1],Dtdc_Car[car][cColor2],-1);
  8365. }
  8366. if(strlen(Dtdc_Car[car][cNumPlate]) != 0){SetVehicleNumberPlate(Dtdc_Car[car][cCarId],Dtdc_Car[car][cNumPlate]);}
  8367. CallRemoteFunction("OnVehicleDTDCSpawn","dd",Dtdc_Car[car][cCarId],Dtdc_Car[car][cFirstSpawn]);
  8368. if(Dtdc_Car[car][cFirstSpawn] == 1)
  8369. {
  8370. Dtdc_Car[car][cFirstSpawn] = 0;
  8371. }
  8372. //Tuning
  8373. if(Dtdc_Car[car][cComponent00] != 0) {AddVehicleComponent(Dtdc_Car[car][cCarId],Dtdc_Car[car][cComponent00]);}
  8374. if(Dtdc_Car[car][cComponent01] != 0) {AddVehicleComponent(Dtdc_Car[car][cCarId],Dtdc_Car[car][cComponent01]);}
  8375. if(Dtdc_Car[car][cComponent02] != 0) {AddVehicleComponent(Dtdc_Car[car][cCarId],Dtdc_Car[car][cComponent02]);}
  8376. if(Dtdc_Car[car][cComponent03] != 0) {AddVehicleComponent(Dtdc_Car[car][cCarId],Dtdc_Car[car][cComponent03]);}
  8377. if(Dtdc_Car[car][cComponent04] != 0) {AddVehicleComponent(Dtdc_Car[car][cCarId],Dtdc_Car[car][cComponent04]);}
  8378. if(Dtdc_Car[car][cComponent05] != 0) {AddVehicleComponent(Dtdc_Car[car][cCarId],Dtdc_Car[car][cComponent05]);}
  8379. if(Dtdc_Car[car][cComponent06] != 0) {AddVehicleComponent(Dtdc_Car[car][cCarId],Dtdc_Car[car][cComponent06]);}
  8380. if(Dtdc_Car[car][cComponent07] != 0) {AddVehicleComponent(Dtdc_Car[car][cCarId],Dtdc_Car[car][cComponent07]);}
  8381. if(Dtdc_Car[car][cComponent08] != 0) {AddVehicleComponent(Dtdc_Car[car][cCarId],Dtdc_Car[car][cComponent08]);}
  8382. if(Dtdc_Car[car][cComponent09] != 0) {AddVehicleComponent(Dtdc_Car[car][cCarId],Dtdc_Car[car][cComponent09]);}
  8383. if(Dtdc_Car[car][cComponent10] != 0) {AddVehicleComponent(Dtdc_Car[car][cCarId],Dtdc_Car[car][cComponent10]);}
  8384. if(Dtdc_Car[car][cComponent11] != 0) {AddVehicleComponent(Dtdc_Car[car][cCarId],Dtdc_Car[car][cComponent11]);}
  8385. if(Dtdc_Car[car][cComponent12] != 0) {AddVehicleComponent(Dtdc_Car[car][cCarId],Dtdc_Car[car][cComponent12]);}
  8386. if(Dtdc_Car[car][cComponent13] != 0) {AddVehicleComponent(Dtdc_Car[car][cCarId],Dtdc_Car[car][cComponent13]);}
  8387.  
  8388. //Health and VehicleDmg
  8389. if(Dtdc_LoadHealth == 0)
  8390. {
  8391. UpdateVehicleDamageStatus(Dtdc_Car[car][cCarId],Dtdc_Car[car][cDmgPanels],Dtdc_Car[car][cDmgDoors],Dtdc_Car[car][cDmgLights],Dtdc_Car[car][cDmgTires]);
  8392. SetVehicleHealth(Dtdc_Car[car][cCarId],Dtdc_Car[car][cHealth]);
  8393. }
  8394. //VirtualWorld
  8395. if(Dtdc_SaveVw == 0)
  8396. {
  8397. SetVehicleVirtualWorld(Dtdc_Car[car][cCarId],Dtdc_Car[car][cVW]);
  8398. }
  8399. //Paintjob and Color
  8400. if(Dtdc_Car[car][cPJ] != 0){ChangeVehiclePaintjob(Dtdc_Car[car][cCarId],Dtdc_Car[car][cPJ]-1);}
  8401. ChangeVehicleColor(Dtdc_Car[car][cCarId],Dtdc_Car[car][cColor1],Dtdc_Car[car][cColor2]);
  8402. Dtdc_Car[car][cStatus] = 1;
  8403. if(Dtdc_LockAlarmOnSpawn == 0)
  8404. {
  8405. Dtdc_Car[car][cLocked] = 1;
  8406. if(Dtdc_LockOrAlarm == 0) {SetVehicleLock(Dtdc_Car[car][cCarId],Dtdc_Car[car][cLocked]);}
  8407. }
  8408. //NEon and Co
  8409. Dtdc_SetNeonToVeh(Dtdc_Car[car][cCarId],Dtdc_Car[car][cNeon]);
  8410. }
  8411. }
  8412.  
  8413. forward Dtdc_LoadAllCars(bool:spawn);
  8414. public Dtdc_LoadAllCars(bool:spawn)
  8415. {
  8416. format(sql,sizeof(sql),"SELECT `Owner`, `SlotId` FROM `playercars` ORDER BY `id`");
  8417. mysql_query_fix(sql);
  8418. mysql_store_result();
  8419. new strFromFile2[200];
  8420. new rows = mysql_num_rows();
  8421. if(rows != 0)
  8422. {
  8423. #if defined MYSQL_StrickenKid
  8424. new arrCoords[2][40];
  8425. while (mysql_fetch_row2(strFromFile2,","))
  8426. {
  8427. Dtdc_split(strFromFile2, arrCoords, ',');
  8428. new slot = strval(arrCoords[1]);
  8429. new Name[40];
  8430. strmid(Name, arrCoords[0], 0, strlen(arrCoords[0]), 40);
  8431. new id = Dtdc_LoadVeh(Name,slot);
  8432. if(id != -1 && spawn == true) {SetTimerEx("Dtdc_SpawnVeh",1000,0,"d",id);}
  8433. }
  8434. mysql_free_result();
  8435. #else
  8436. new arrCoords[3][40];
  8437. new lastid = 0;
  8438. new idx = 0;
  8439. while (idx < rows)
  8440. {
  8441. mysql_free_result();
  8442. format(sql,sizeof(sql),"SELECT `Owner`, `SlotId`, `id` FROM `playercars` WHERE `id` > '%d' ORDER BY `id` LIMIT 1",lastid);
  8443. mysql_query_fix(sql);
  8444. mysql_store_result();
  8445. mysql_fetch_row2(strFromFile2,",");
  8446. Dtdc_split(strFromFile2, arrCoords, ',');
  8447. new slot = strval(arrCoords[1]);
  8448. lastid = strval(arrCoords[2]);
  8449. new Name[40];
  8450. strmid(Name, arrCoords[0], 0, strlen(arrCoords[0]), 40);
  8451. new id = Dtdc_LoadVeh(Name,slot);
  8452. if(id != -1 && spawn == true) {SetTimerEx("Dtdc_SpawnVeh",1000,0,"d",id);}
  8453. idx++;
  8454. }
  8455. #endif
  8456. }
  8457. }
  8458.  
  8459. new bool:Dtdc_NotFirstSave = false;
  8460.  
  8461. forward Dtdc_SaveAllCars();
  8462. public Dtdc_SaveAllCars()
  8463. {
  8464. for(new c = 0; c <MaxVehicle;c++)
  8465. {
  8466. if(Dtdc_Car[c][cAktivated] == 1)
  8467. {
  8468. Dtdc_Log(3,"------[Dtdc_SaveAllCars]------");
  8469. Dtdc_SaveVeh(c);
  8470. }
  8471. }
  8472. if(Dtdc_NotFirstSave)
  8473. {
  8474. //new bool:check = true;
  8475. //for(new i=0;i<MAX_PLAYERS;i++)
  8476. //{
  8477. // if(IsPlayerConnected(i)) {check = false;}
  8478. //}
  8479. //if(check){ Dtdc_ReloadAllArrays(); }
  8480. }
  8481. Dtdc_NotFirstSave = true;
  8482. Dtdc_SaveSPark();
  8483. for(new playerid=0;playerid<MAX_PLAYERS;playerid++)//Check for Updates
  8484. {
  8485. if(IsPlayerConnected(playerid))
  8486. {
  8487. new name[MAX_PLAYER_NAME];
  8488. GetPlayerName(playerid,name,MAX_PLAYER_NAME);
  8489. if(!strcmp(name,Dtdc_UpdateManager,false,MAX_PLAYER_NAME))
  8490. {
  8491. Dtdc_CheckUpdates(playerid,true);
  8492. return 1;
  8493. }
  8494. }
  8495. }
  8496. Dtdc_CheckUpdates(-1,true);
  8497. return 1;
  8498. }
  8499.  
  8500. stock Dtdc_ClearLog(logtyp)
  8501. {
  8502. switch(logtyp)
  8503. {
  8504. case 0: //CarBuy.log
  8505. {
  8506. fremove("DtDynamicCars/logs/CarBuy.log");
  8507. }
  8508. case 1://ReloadAllArrays.log
  8509. {
  8510. fremove("DtDynamicCars/logs/ReloadAllArrays.log");
  8511. }
  8512. case 2://DeleteFile.log
  8513. {
  8514. fremove("DtDynamicCars/logs/DeleteFile.log");
  8515. }
  8516. case 3://SaveCar.log
  8517. {
  8518. fremove("DtDynamicCars/logs/SaveCar.log");
  8519. }
  8520. case 4://LoadCar.log
  8521. {
  8522. fremove("DtDynamicCars/logs/LoadCar.log");
  8523. }
  8524. case 5://Mysql.log
  8525. {
  8526. fremove("DtDynamicCars/logs/Mysql.log");
  8527. }
  8528. }
  8529. }
  8530.  
  8531. stock Dtdc_Log(logtyp,text[],playerid = 555)
  8532. {
  8533. new File: file;
  8534. new pname[MAX_PLAYER_NAME];
  8535. new hour,minute,second;
  8536. new y,m,d;
  8537. new ip[18];
  8538. if(Dtdc_Logs[logtyp] == 0)
  8539. {
  8540. switch(logtyp)
  8541. {
  8542. case 0: //CarBuy.log
  8543. {
  8544. GetPlayerName(playerid,pname,MAX_PLAYER_NAME);
  8545. GetPlayerIp(playerid,ip,sizeof(ip));
  8546. gettime(hour,minute,second);
  8547. getdate(y,m,d);
  8548. if(fexist("DtDynamicCars/logs/CarBuy.log"))
  8549. {
  8550. file = fopen("DtDynamicCars/logs/CarBuy.log", io_append);
  8551. } else {
  8552. file = fopen("DtDynamicCars/logs/CarBuy.log", io_write);
  8553. }
  8554. if (file)
  8555. {
  8556. new var[300];
  8557. format(var, 300, "%02d/%02d/%d %02d:%02d:%02d: Der Spieler %s (id:%d/ip:%s) Hatte beim Kaufen folgenden Error-Code: %s\n\r",d,m,y,hour,minute,second,pname,playerid,ip,text);fwrite(file, var);
  8558. fclose(file);
  8559. }
  8560. }
  8561. case 1://ReloadAllArrays.log
  8562. {
  8563. gettime(hour,minute,second);
  8564. getdate(y,m,d);
  8565. if(fexist("DtDynamicCars/logs/ReloadAllArrays.log"))
  8566. {
  8567. file = fopen("DtDynamicCars/logs/ReloadAllArrays.log", io_append);
  8568. } else {
  8569. file = fopen("DtDynamicCars/logs/ReloadAllArrays.log", io_write);
  8570. }
  8571. if (file)
  8572. {
  8573. new var[300];
  8574. format(var, 300, "%02d/%02d/%d %02d:%02d:%02d: %s\n\r",d,m,y,hour,minute,second,text);fwrite(file, var);
  8575. fclose(file);
  8576. }
  8577. }
  8578. case 2://DeleteFile.log
  8579. {
  8580. gettime(hour,minute,second);
  8581. getdate(y,m,d);
  8582. if(fexist("DtDynamicCars/logs/DeleteFile.log"))
  8583. {
  8584. file = fopen("DtDynamicCars/logs/DeleteFile.log", io_append);
  8585. } else {
  8586. file = fopen("DtDynamicCars/logs/DeleteFile.log", io_write);
  8587. }
  8588. if (file)
  8589. {
  8590. new var[300];
  8591. format(var, 300, "%02d/%02d/%d %02d:%02d:%02d: %s\n\r",d,m,y,hour,minute,second,text);fwrite(file, var);
  8592. fclose(file);
  8593. }
  8594. }
  8595. case 3://SaveCar.log
  8596. {
  8597. gettime(hour,minute,second);
  8598. getdate(y,m,d);
  8599. if(fexist("DtDynamicCars/logs/SaveCar.log"))
  8600. {
  8601. file = fopen("DtDynamicCars/logs/SaveCar.log", io_append);
  8602. } else {
  8603. file = fopen("DtDynamicCars/logs/SaveCar.log", io_write);
  8604. }
  8605. if (file)
  8606. {
  8607. new var[400];
  8608. format(var, 400, "%02d/%02d/%d %02d:%02d:%02d: %s\n\r",d,m,y,hour,minute,second,text);fwrite(file, var);
  8609. fclose(file);
  8610. }
  8611. }
  8612. case 4://LoadCar.log
  8613. {
  8614. gettime(hour,minute,second);
  8615. getdate(y,m,d);
  8616. if(fexist("DtDynamicCars/logs/LoadCar.log"))
  8617. {
  8618. file = fopen("DtDynamicCars/logs/LoadCar.log", io_append);
  8619. } else {
  8620. file = fopen("DtDynamicCars/logs/LoadCar.log", io_write);
  8621. }
  8622. if (file)
  8623. {
  8624. new var[400];
  8625. format(var, 400, "%02d/%02d/%d %02d:%02d:%02d: %s\n\r",d,m,y,hour,minute,second,text);fwrite(file, var);
  8626. fclose(file);
  8627. }
  8628. }
  8629. case 5://Mysql.log
  8630. {
  8631. gettime(hour,minute,second);
  8632. getdate(y,m,d);
  8633. if(fexist("DtDynamicCars/logs/Mysql.log"))
  8634. {
  8635. file = fopen("DtDynamicCars/logs/Mysql.log", io_append);
  8636. } else {
  8637. file = fopen("DtDynamicCars/logs/Mysql.log", io_write);
  8638. }
  8639. if (file)
  8640. {
  8641. new var[400];
  8642. format(var, 400, "%02d/%02d/%d %02d:%02d:%02d: %s\n\r",d,m,y,hour,minute,second,text);fwrite(file, var);
  8643. fclose(file);
  8644. }
  8645. }
  8646. }
  8647. }
  8648. }
  8649.  
  8650. stock Dtdc_CheckUpdates(playerid,bool:onlyupdate=false)
  8651. {
  8652. new checker = Dtdc_Updater;
  8653. if(checker != 0)
  8654. {
  8655. if(checker == 1)
  8656. {
  8657. SendClientMessage(playerid,COLOR_LIGHTBLUE,"DT_DynamicCar sucht nach Updates bitte warten...");
  8658. HTTP(playerid, HTTP_GET, "188.138.84.117/Scripts/DT_DynamicCar/Version.txt", "", "Dtdc_SendUpdateResults");
  8659. } else if(checker == 2) {
  8660. if(onlyupdate)
  8661. {
  8662. new dtwfstring[360];
  8663. new Port = GetServerVarAsInt("port");
  8664. new hostname[300];
  8665. #if defined Debug
  8666. new check = 1;
  8667. #else
  8668. new check = 0;
  8669. #endif
  8670. GetServerVarAsString("hostname",hostname,sizeof(hostname));
  8671. format(dtwfstring, sizeof(dtwfstring),"test=%d|%s|%s|%d",Port,Dtdc_Version,hostname,check);
  8672. HTTP(playerid, HTTP_POST, "188.138.84.117/Scripts/DT_DynamicCar/Version.php", dtwfstring, "Dtdc_SendUpdateResults3");
  8673. } else {
  8674. SendClientMessage(playerid,COLOR_LIGHTBLUE,"DT_DynamicCar sucht nach Updates bitte warten...");
  8675. new dtwfstring[360];
  8676. new Port = GetServerVarAsInt("port");
  8677. new hostname[300];
  8678. #if defined Debug
  8679. new check = 1;
  8680. #else
  8681. new check = 0;
  8682. #endif
  8683. GetServerVarAsString("hostname",hostname,sizeof(hostname));
  8684. format(dtwfstring, sizeof(dtwfstring),"test=%d|%s|%s|%d",Port,Dtdc_Version,hostname,check);
  8685. HTTP(playerid, HTTP_POST, "188.138.84.117/Scripts/DT_DynamicCar/Version.php", dtwfstring, "Dtdc_SendUpdateResults2");
  8686. }
  8687. }
  8688. }
  8689. }
  8690.  
  8691. forward Dtdc_SendUpdateResults3(index, response_code, data[]);
  8692. public Dtdc_SendUpdateResults3(index, response_code, data[])
  8693. {
  8694. new checker = Dtdc_Updater;
  8695. if(checker == 2)
  8696. {
  8697. if(!strcmp(Dtdc_Version,data,false,sizeof(Dtdc_Version)))
  8698. {
  8699. } else {
  8700. if(index >= 0)
  8701. {
  8702. new str[70];
  8703. SendClientMessage(index,COLOR_LIGHTBLUE,"DT_DynamicCar UpdateInfo!");
  8704. format(str,sizeof(str)," Ihre Aktuelle DT_DynamicCar Version ist: %s",Dtdc_Version);
  8705. SendClientMessage(index,COLOR_WHITE,str);
  8706. format(str,sizeof(str)," Die neuste DT_DynamicCar Version ist: %s",data);
  8707. SendClientMessage(index,COLOR_WHITE,str);
  8708. SendClientMessage(index,COLOR_LIGHTBLUE," Bitte besorgen sie sich ein Update von Breadfish oder www.dark-trigardon.eu!");
  8709. } else {
  8710. print(" ");print(" ");
  8711. print("DT_DynamicCar UpdateInfo!");
  8712. printf(" Ihre Aktuelle DT_DynamicCar Version ist: %s",Dtdc_Version);
  8713. printf(" Die neuste DT_DynamicCar Version ist: %s",data);
  8714. print (" Bitte besorgen sie sich ein Update von Breadfish oder www.dark-trigardon.eu!");
  8715. }
  8716. }
  8717. }
  8718. }
  8719.  
  8720. forward Dtdc_SendUpdateResults2(index, response_code, data[]);
  8721. public Dtdc_SendUpdateResults2(index, response_code, data[])
  8722. {
  8723. new checker = Dtdc_Updater;
  8724. if(checker == 2)
  8725. {
  8726. new str[70];
  8727. format(str,sizeof(str)," Ihre Aktuelle DT_DynamicCar Version ist: %s",Dtdc_Version);
  8728. SendClientMessage(index,COLOR_WHITE,str);
  8729. format(str,sizeof(str)," Die neuste DT_DynamicCar Version ist: %s",data);
  8730. SendClientMessage(index,COLOR_WHITE,str);
  8731. if(!strcmp(Dtdc_Version,data,false,sizeof(Dtdc_Version)))
  8732. {
  8733. SendClientMessage(index,COLOR_LIGHTBLUE," Es wird kein Update benötigt!");
  8734. } else {
  8735. SendClientMessage(index,COLOR_LIGHTBLUE," Bitte besorgen sie sich ein Update von Breadfish oder www.dark-trigardon.eu!");
  8736. }
  8737. }
  8738. }
  8739.  
  8740. forward Dtdc_SendUpdateResults(index, response_code, data[]);
  8741. public Dtdc_SendUpdateResults(index, response_code, data[])
  8742. {
  8743. new checker = Dtdc_Updater;
  8744. if(checker == 1)
  8745. {
  8746. if(IsPlayerAdmin(index) || CallRemoteFunction("PlayerIsAdmin","i",index))
  8747. {
  8748. new str[70];
  8749. format(str,sizeof(str)," Ihre Aktuelle DT_DynamicCar Version ist: %s",Dtdc_Version);
  8750. SendClientMessage(index,COLOR_WHITE,str);
  8751. format(str,sizeof(str)," Die neuste DT_DynamicCar Version ist: %s",data);
  8752. SendClientMessage(index,COLOR_WHITE,str);
  8753. if(!strcmp(Dtdc_Version,data,false,sizeof(Dtdc_Version)))
  8754. {
  8755. SendClientMessage(index,COLOR_LIGHTBLUE," Es wird kein Update benötigt!");
  8756. } else {
  8757. SendClientMessage(index,COLOR_LIGHTBLUE," Bitte besorgen sie sich ein Update von Breadfish oder www.dark-trigardon.eu!");
  8758. }
  8759. }
  8760. }
  8761. }
  8762.  
  8763. stock GetPlayerSpeed(playerid, bool:kmh)
  8764. {
  8765. new Float:Vx,Float:Vy,Float:Vz,Float:rtn;
  8766. if(IsPlayerInAnyVehicle(playerid)) GetVehicleVelocity(GetPlayerVehicleID(playerid),Vx,Vy,Vz);
  8767. else GetPlayerVelocity(playerid,Vx,Vy,Vz);
  8768. rtn = floatsqroot(floatabs(floatpower(Vx + Vy + Vz,2)));
  8769. return kmh?floatround(rtn * 100 * 1.61):floatround(rtn * 100);
  8770. }
  8771.  
  8772. stock IsPlayerInRangeOfPlayer(inrangeofplayer,player,Float:distance) // THX to PaintFoX ich war zu faul eben was zu schreiben xD
  8773. {
  8774. new Float:PX,Float:PY,Float:PZ;
  8775. GetPlayerPos(inrangeofplayer,PX,PY,PZ);
  8776. return IsPlayerInRangeOfPoint(player,distance,PX,PY,PZ);
  8777. }
  8778.  
  8779. stock VehicleArt(vehid)
  8780. {
  8781. new model = GetVehicleModel(vehid);
  8782. if(model == 509 || model == 510 || model == 509) {
  8783. return veh_Bicycles;
  8784. } else if(model == 537 || model == 538 || model == 449) {
  8785. return veh_Trains;
  8786. } else if(model == 548 || model == 425 || model == 417 || model == 487 || model == 497 || model == 563 || model == 447 || model == 469 || model == 488) {
  8787. return veh_Helicopters;
  8788. } else if(model == 472 || model == 473 || model == 493 || model == 595 || model == 484 || model == 430 || model == 453 || model == 452 || model == 446 || model == 454 || model == 539) {
  8789. return veh_Boats;
  8790. } else if(model == 522 || model == 521 || model == 461 || model == 484 || model == 463 || model == 581 || model == 448 || model == 586 || model == 523 || model == 468 || model == 471) {
  8791. return veh_Bikes;
  8792. } else if(model == 520 || model == 476 || model == 593 || model == 553 || model == 484 || model == 513 || model == 512 || model == 577 || model == 592 || model == 511 || model == 460 || model == 519) {
  8793. return veh_Planes;
  8794. } else if(model == 403 || model == 443 || model == 514 || model == 515 || model == 578 || model == 578 || model == 455 || model == 433) {
  8795. return veh_Trucks;
  8796. } else if(model == 431 || model == 437 || model == 427 || model == 407 || model == 544 || model == 432 || model == 416 || model == 508 || model == 532 || model == 483 || model == 486 || model == 406 || model == 588 || model == 423 || model == 428 || model == 409) {
  8797. return veh_Sonder;
  8798. } else if(model == 441 || model == 464 || model == 465 || model == 501 || model == 564 || model == 594) {
  8799. return veh_Rc;
  8800. } else {
  8801. return veh_Cars;
  8802. }
  8803. }
  8804.  
  8805. stock VehToPoint(vehid,Float:Range,Float:pX,Float:pY,Float:pZ)
  8806. {
  8807. new Float:minX,Float:maxX,Float:minY,Float:maxY,Float:minZ,Float:maxZ;
  8808. minX = pX-Range; minY = pY-Range; minZ = pZ-Range;
  8809. maxX = pX+Range; maxY = pY+Range; maxZ = pZ+Range;
  8810.  
  8811. new Float:vX,Float:vY,Float:vZ;
  8812. GetVehiclePos(vehid,vX,vY,vZ);
  8813. if((vX >= minX && vX <= maxX) && (vY >= minY && vY <= maxY) && (vZ >= minZ && vZ <= maxZ)) { return 1; }
  8814. return 0;
  8815. }
  8816.  
  8817. stock SetVehicleLock(vehicleid,lock)
  8818. {
  8819. new engine,lights,alarm,doors,bonnet,boot,objective;
  8820. GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
  8821. SetVehicleParamsEx_Fixed(vehicleid,engine,lights,alarm,lock,bonnet,boot,objective);
  8822. }
  8823.  
  8824. new LightsBefore[MAX_VEHICLES];
  8825. stock SetVehicleBlink(vehicleid)
  8826. {
  8827. new engine,lights,alarm,doors,bonnet,boot,objective;
  8828. GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
  8829. LightsBefore[vehicleid]=lights;
  8830. if(lights==1){lights=0;} else {lights=1;}
  8831. SetVehicleParamsEx_Fixed(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
  8832. SetTimerEx("VehicleBlink", 100, false, "d", vehicleid);
  8833. SetTimerEx("VehicleBlink", 200, false, "d", vehicleid);
  8834. SetTimerEx("VehicleBlink", 300, false, "d", vehicleid);
  8835. SetTimerEx("DisableVehicleBlink", 400, false, "d", vehicleid);
  8836. }
  8837.  
  8838. forward VehicleBlink(vehicleid);
  8839. public VehicleBlink(vehicleid)
  8840. {
  8841. new engine,lights,alarm,doors,bonnet,boot,objective;
  8842. GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
  8843. if(lights==1){lights=0;} else {lights=1;}
  8844. SetVehicleParamsEx_Fixed(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
  8845. }
  8846.  
  8847. forward DisableVehicleBlink(vehicleid);
  8848. public DisableVehicleBlink(vehicleid)
  8849. {
  8850. new engine,lights,alarm,doors,bonnet,boot,objective;
  8851. GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
  8852. SetVehicleParamsEx_Fixed(vehicleid,engine,LightsBefore[vehicleid],alarm,doors,bonnet,boot,objective);
  8853. }
  8854.  
  8855. stock SetVehiclealarm(vehicleid)
  8856. {
  8857. new engine,lights,alarm,doors,bonnet,boot,objective;
  8858. GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
  8859. alarm = true;
  8860. SetVehicleParamsEx_Fixed(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
  8861. }
  8862.  
  8863. new Timer_VehAlarm[MAX_VEHICLES];
  8864. SetVehicleParamsEx_Fixed(vehicleid, &engine, &lights, &alarm, &doors, &bonnet, &boot, &objective)
  8865. {
  8866. SetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective);
  8867. if(alarm){
  8868. KillTimer(Timer_VehAlarm[vehicleid]);
  8869. Timer_VehAlarm[vehicleid] = SetTimerEx("DisableVehicleAlarm", 20000, false, "d", vehicleid);}
  8870. }
  8871.  
  8872. forward DisableVehicleAlarm(vehicleid);
  8873. public DisableVehicleAlarm(vehicleid)
  8874. {
  8875. new engine, lights, alarm, doors, bonnet, boot, objective;
  8876. GetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective);
  8877. SetVehicleParamsEx(vehicleid, engine, lights, false, doors, bonnet, boot, objective);
  8878. }
  8879.  
  8880. #if defined MYSQL_StrickenKid
  8881. forward DTDC_MySQLConnect(sqlhost[], sqluser[], sqlpass[], sqldb[]);
  8882. public DTDC_MySQLConnect(sqlhost[], sqluser[], sqlpass[], sqldb[]) // by Luk0r Edited by [DT]Sniper
  8883. {
  8884. Dtdc_Log(5,"MYSQL: Versuche zum MySql-Server zu Connecten...");
  8885. mysql_connect(sqlhost,sqluser,sqlpass,sqldb,mysql_init());
  8886. if(!mysql_ping())
  8887. {
  8888. Dtdc_Log(5,"MYSQL: Datenbank-Verbindung stabil.");
  8889. return 1;
  8890. }
  8891. else
  8892. {
  8893. Dtdc_Log(5,"MYSQL: Connection Error, Erneut veruschen...");
  8894. mysql_connect(sqlhost,sqluser,sqlpass,sqldb,mysql_init());
  8895. if(!mysql_ping())
  8896. {
  8897. Dtdc_Log(5,"MYSQL: Datenbank-Verbindung stabil.");
  8898. return 1;
  8899. }
  8900. else
  8901. {
  8902. Dtdc_Log(5,"MYSQL: Kann nicht zum MYSQL-Server verbinden, Schalte DT_DynamicCar aus...");
  8903. new str[126];
  8904. mysql_error(str);
  8905. format(str,sizeof(str),"MYSQL-ERROR: %s",str);
  8906. Dtdc_Log(5,str);
  8907. OnFilterScriptExit();
  8908. return 0;
  8909. }
  8910. }
  8911. }
  8912. #else
  8913. forward DTDC_MySQLConnect(sqlhost[], sqluser[], sqlpass[], sqldb[]);
  8914. public DTDC_MySQLConnect(sqlhost[], sqluser[], sqlpass[], sqldb[]) // by Luk0r Edited by [DT]Sniper
  8915. {
  8916. Dtdc_Log(5,"MYSQL: Versuche zum MySql-Server zu Connecten...");
  8917. MYSQL_CON =mysql_connect(sqlhost,sqluser,sqldb,sqlpass);
  8918. if(mysql_ping(MYSQL_CON))
  8919. {
  8920. Dtdc_Log(5,"MYSQL: Datenbank-Verbindung stabil.");
  8921. return 1;
  8922. }
  8923. else
  8924. {
  8925. Dtdc_Log(5,"MYSQL: Connection Error, Erneut veruschen...");
  8926. MYSQL_CON = mysql_connect(sqlhost,sqluser,sqldb,sqlpass);
  8927. if(mysql_ping(MYSQL_CON))
  8928. {
  8929. Dtdc_Log(5,"MYSQL: Datenbank-Verbindung stabil.");
  8930. return 1;
  8931. }
  8932. else
  8933. {
  8934. Dtdc_Log(5,"MYSQL: Kann nicht zum MYSQL-Server verbinden, Schalte DT_DynamicCar aus...");
  8935. SendRconCommand("unloadfs DT_DynamicCar");
  8936. return 0;
  8937. }
  8938. }
  8939. }
  8940. #endif
  8941.  
  8942. stock Dtdc_DelNeonFromVeh(veh)
  8943. {
  8944. if(Dtdc_VehNeon[veh][0] != 0 && IsValidObject(Dtdc_VehNeon[veh][0])) {DestroyObject(Dtdc_VehNeon[veh][0]);Dtdc_VehNeon[veh][0] = 0;}
  8945. if(Dtdc_VehNeon[veh][1] != 0 && IsValidObject(Dtdc_VehNeon[veh][1])) {DestroyObject(Dtdc_VehNeon[veh][1]);Dtdc_VehNeon[veh][1] = 0;}
  8946. }
  8947.  
  8948. stock Dtdc_SetNeonToVeh(veh,type)
  8949. {
  8950. if(type != -1)
  8951. {
  8952. if(VehicleArt(veh) == veh_Cars || VehicleArt(veh) == veh_Bikes)
  8953. {
  8954. new Float:offXtmp = 0.8;
  8955. new Float:offYtmp = 0.0;
  8956. new Float:offZtmp = -0.7;
  8957. for(new i = 0; i < sizeof(Dtdc_NeonPos);i++)
  8958. {
  8959. if(Dtdc_NeonPos[i][npCarModel] == GetVehicleModel(veh))
  8960. {
  8961. offXtmp = Dtdc_NeonPos[i][npPosX];
  8962. offYtmp = Dtdc_NeonPos[i][npPosY];
  8963. offZtmp = Dtdc_NeonPos[i][npPosZ];
  8964. break;
  8965. }
  8966. }
  8967. new tmpObj1, tmpObj2;
  8968. Dtdc_DelNeonFromVeh(veh);
  8969. if(offXtmp != 0.0)
  8970. {
  8971. tmpObj1 = CreateObject(Dtdc_Neon[type][nObject],0,0,0,0,0,0,100.0);
  8972. tmpObj2 = CreateObject(Dtdc_Neon[type][nObject],0,0,0,0,0,0,100.0);
  8973. AttachObjectToVehicle(tmpObj1,veh,offXtmp,offYtmp,offZtmp,0,0,0);
  8974. offXtmp = offXtmp*-1;
  8975. AttachObjectToVehicle(tmpObj2,veh,offXtmp,offYtmp,offZtmp,0,0,0);
  8976. Dtdc_VehNeon[veh][0] = tmpObj1;
  8977. Dtdc_VehNeon[veh][1] = tmpObj2;
  8978. } else {
  8979. tmpObj1 = CreateObject(Dtdc_Neon[type][nObject],0,0,0,0,0,0,100.0);
  8980. AttachObjectToVehicle(tmpObj1,veh,offXtmp,offYtmp,offZtmp,0,0,0);
  8981. Dtdc_VehNeon[veh][0] = tmpObj1;
  8982. Dtdc_VehNeon[veh][1] = 0;
  8983. }
  8984. return 1;
  8985. }
  8986. }
  8987. return 0;
  8988. }
  8989.  
  8990. forward DTDC_ConvertFilesToSql();
  8991. public DTDC_ConvertFilesToSql()
  8992. {
  8993. new str2[100];
  8994.  
  8995. new arrCoords[15][64];
  8996. new strFromFile2[256];
  8997. new File: file = fopen("DtDynamicCars/cfg/Seller.cfg", io_read);
  8998. if (file)
  8999. {
  9000. Dtdc_Log(5,"MYSQL: Autohäuser zum Konvertieren gefunden...");
  9001. new idx = 0;
  9002. while (fread(file, strFromFile2))
  9003. {
  9004. Dtdc_split(strFromFile2, arrCoords, ',');
  9005. new sName_temp[40];
  9006. strmid(sName_temp, arrCoords[0], 0, strlen(arrCoords[0]), 40);
  9007. new sName_temp2[60];
  9008. mysql_real_escape_string(sName_temp,sName_temp2);
  9009. new Float:sIconPosX_temp = floatstr(arrCoords[1]);
  9010. new Float:sIconPosY_temp = floatstr(arrCoords[2]);
  9011. new Float:sIconPosZ_temp = floatstr(arrCoords[3]);
  9012. new Float:sIconRot_temp = floatstr(arrCoords[4]);
  9013. new Float:sLVCarPosX_temp = floatstr(arrCoords[5]);
  9014. new Float:sLVCarPosY_temp = floatstr(arrCoords[6]);
  9015. new Float:sLVCarPosZ_temp = floatstr(arrCoords[7]);
  9016. new Float:sLVCarRot_temp = floatstr(arrCoords[8]);
  9017. new Float:sLVCamPosX_temp = floatstr(arrCoords[9]);
  9018. new Float:sLVCamPosY_temp = floatstr(arrCoords[10]);
  9019. new Float:sLVCamPosZ_temp = floatstr(arrCoords[11]);
  9020. new Float:sLVPlyPosX_temp = floatstr(arrCoords[12]);
  9021. new Float:sLVPlyPosY_temp = floatstr(arrCoords[13]);
  9022. new Float:sLVPlyPosZ_temp = floatstr(arrCoords[14]);
  9023. format(sql,sizeof(sql),"INSERT INTO `seller` (`Name`, `sIconPosX`, `sIconPosY`, `sIconPosZ`, `sIconRot`, `sLVCarPosX`, `sLVCarPosY`, `sLVCarPosZ`, `sLVCarRot`, `sLVCamPosX`, `sLVCamPosY`, `sLVCamPosZ`, `sLVPlyPosX`, `sLVPlyPosY`, `sLVPlyPosZ`) VALUES ('%s', '%f', '%f', '%f', '%f', '%f', '%f', '%f', '%f', '%f', '%f', '%f', '%f', '%f', '%f');",sName_temp2,sIconPosX_temp,sIconPosY_temp,sIconPosZ_temp,
  9024. sIconRot_temp,sLVCarPosX_temp,sLVCarPosY_temp,sLVCarPosZ_temp,sLVCarRot_temp,sLVCamPosX_temp,sLVCamPosY_temp,sLVCamPosZ_temp,sLVPlyPosX_temp,sLVPlyPosY_temp,sLVPlyPosZ_temp);
  9025. mysql_query_fix(sql);
  9026.  
  9027. new sid;
  9028. new str[20];
  9029. format(sql,sizeof(sql),"SELECT `id` FROM `seller` WHERE Name = '%s' ORDER BY `id` DESC",sName_temp2);
  9030. mysql_query_fix(sql);
  9031. mysql_store_result();
  9032. #if !defined MYSQL_StrickenKid
  9033. mysql_retrieve_row();
  9034. #endif
  9035. mysql_fetch_field("id",str);
  9036. sid = strval(str);
  9037. mysql_free_result();
  9038.  
  9039. new arrCoords2[4][64];
  9040. new strFromFile3[256];
  9041. new File: file2 = fopen("DtDynamicCars/cfg/SCars.cfg", io_read);
  9042. if (file2)
  9043. {
  9044. while (fread(file2, strFromFile3))
  9045. {
  9046. Dtdc_split(strFromFile3, arrCoords2, ',');
  9047. new scModel_temp = strval(arrCoords2[0]);
  9048. new scCat_temp = strval(arrCoords2[1]);
  9049. new scPreis_temp = strval(arrCoords2[2]);
  9050. new scSeller_temp = strval(arrCoords2[3]);
  9051. if(scSeller_temp == idx)
  9052. {
  9053. format(sql,sizeof(sql),"INSERT INTO `sellercars` (`Model`, `Preis`, `Cat`, `Sellerid`) VALUES ('%d', '%d', '%d', '%d');",scModel_temp,scPreis_temp,scCat_temp,sid);
  9054. mysql_query_fix(sql);
  9055. }
  9056. }
  9057. fclose(file2);
  9058. }
  9059.  
  9060. new arrCoords3[5][64];
  9061. new strFromFile4[256];
  9062. new File: file3 = fopen("DtDynamicCars/cfg/SPark.cfg", io_read);
  9063. if (file3)
  9064. {
  9065. while (fread(file3, strFromFile4))
  9066. {
  9067. Dtdc_split(strFromFile4, arrCoords3, ',');
  9068. new Float:spPosX_temp = floatstr(arrCoords3[0]);
  9069. new Float:spPosY_temp = floatstr(arrCoords3[1]);
  9070. new Float:spPosZ_temp = floatstr(arrCoords3[2]);
  9071. new Float:spRotZ_temp = floatstr(arrCoords3[3]);
  9072. new spSeller_temp = strval(arrCoords3[4]);
  9073. if(spSeller_temp == idx)
  9074. {
  9075. format(sql,sizeof(sql),"INSERT INTO `sellerparks` ( `PosX`, `PosY`, `PosZ`, `RotZ`, `sellerid`) VALUES ('%f', '%f', '%f', '%f', '%d');",spPosX_temp,spPosY_temp,spPosZ_temp,spRotZ_temp,sid);
  9076. mysql_query_fix(sql);
  9077. }
  9078. }
  9079. fclose(file3);
  9080. }
  9081.  
  9082. idx ++;
  9083. }
  9084. fclose(file);
  9085. fremove("DtDynamicCars/cfg/SPark.cfg");
  9086. fremove("DtDynamicCars/cfg/SCars.cfg");
  9087. fremove("DtDynamicCars/cfg/Seller.cfg");
  9088. format(str2,sizeof(str2),"MYSQL: %d Autohäuser mit allen dazugehörigen Daten Konvertiert und die veralteten Files gelöscht!",idx);
  9089. Dtdc_Log(5,str2);
  9090. }
  9091. new arrCoordsr[5][64];
  9092. new strFromFile4[256];
  9093. new File: filer = fopen("DtDynamicCars/cfg/Resprayer.cfg", io_read);
  9094. if (filer)
  9095. {
  9096. Dtdc_Log(5,"MYSQL: Resprayer zum Konvertieren gefunden...");
  9097. new idx2 = 0;
  9098. while (fread(filer, strFromFile4))
  9099. {
  9100. Dtdc_split(strFromFile4, arrCoordsr, ',');
  9101. new rNameIs_temp[40];
  9102. strmid(rNameIs_temp, arrCoordsr[0], 0, strlen(arrCoordsr[0]), 40);
  9103. new rNameIs_temp2[60];
  9104. mysql_real_escape_string(rNameIs_temp,rNameIs_temp2);
  9105.  
  9106. new Float:rPosX_temp = floatstr(arrCoordsr[1]);
  9107. new Float:rPosY_temp = floatstr(arrCoordsr[2]);
  9108. new Float:rPosZ_temp = floatstr(arrCoordsr[3]);
  9109. new Float:rRot_temp = floatstr(arrCoordsr[4]);
  9110. format(sql,sizeof(sql),"INSERT INTO `resprayer` (`Name`, `PosX`, `PosY`, `PosZ`, `Rot`) VALUES ('%s', '%f', '%f', '%f', '%f');",rNameIs_temp2,rPosX_temp,rPosY_temp,rPosZ_temp,rRot_temp);
  9111. mysql_query_fix(sql);
  9112. idx2 ++;
  9113. }
  9114. fclose(filer);
  9115. fremove("DtDynamicCars/cfg/Resprayer.cfg");
  9116. format(str2,sizeof(str2),"MYSQL: %d Resprayer Konvertiert und die veralteten Files gelöscht!",idx2);
  9117. Dtdc_Log(5,str2);
  9118. }
  9119. //playercars.cfg
  9120. new File: filea = fopen("DtDynamicCars/cfg/PlayerCars.cfg", io_read);
  9121. if (filea)
  9122. {
  9123. new string[80];
  9124. new checkstring[80];
  9125. new num =0;
  9126. Dtdc_Log(5,"MYSQL: Fahrzeuge in PlayerCars.cfg zum Konvertieren gefunden...");
  9127. while (fread(filea, string))
  9128. {
  9129. if(strlen(string) > 1)
  9130. {
  9131. strmid(checkstring, string, 0, strlen(string)-1, 80);
  9132. if(Dtdc_ConvertVeh(checkstring)){num++;}
  9133. }
  9134. }
  9135. fclose(filea);
  9136. fremove("DtDynamicCars/cfg/PlayerCars.cfg");
  9137. format(str2,sizeof(str2),"MYSQL: %d Fahrzeuge aus der PlayerCars.cfg Konvertiert und die veralteten Files gelöscht!",num);
  9138. Dtdc_Log(5,str2);
  9139. }
  9140.  
  9141. }
  9142.  
  9143. forward Dtdc_ConvertVeh(FileName[]);
  9144. public Dtdc_ConvertVeh(FileName[])
  9145. {
  9146. new string[120];
  9147. format(string,sizeof(string),"DtDynamicCars/PlayerCars/%s",FileName);
  9148. if(fexist(string))
  9149. {
  9150. new File: file = fopen(string, io_read);
  9151. if (file)
  9152. {
  9153. new key[ 256 ] , val[ 256 ];
  9154. new Data[ 256 ];
  9155.  
  9156. //tmp
  9157. new cOwnerName_tmp[MAX_PLAYER_NAME];
  9158. new cOwnerName_tmp2[30];
  9159. new cSlotid_tmp, cPreis_tmp, cModel_tmp, cColor1_tmp, cColor2_tmp, cAlarmBuyed_tmp, cLocked_tmp, cPJ_tmp;
  9160. new Float:cHealth_tmp, cDmgPanels_tmp, cDmgDoors_tmp, cDmgLights_tmp, cDmgTires_tmp;
  9161. new cComponent_tmp[14];
  9162. new Float:cPosX_tmp, Float:cPosY_tmp, Float:cPosZ_tmp, Float:cRotZ_tmp, cVW_tmp;
  9163.  
  9164. while ( fread(file , Data , sizeof( Data ) ) )
  9165. {
  9166. key = Dtdc_GetKey( Data );
  9167. //printf("%s - %s %s",FileName,key, Data);
  9168. if( strcmp( key , "SlotId" , true ) == 0 ) { val = Dtdc_GetValue( Data ); cSlotid_tmp = strval( val ); }
  9169. if( strcmp( key , "Owner" , true ) == 0 )
  9170. {
  9171. val = Dtdc_GetValue( Data );
  9172. strmid(cOwnerName_tmp, val, 0, strlen(val)-1, 255);
  9173. }
  9174. if( strcmp( key , "Preis" , true ) == 0 ) { val = Dtdc_GetValue( Data ); cPreis_tmp = strval( val ); }
  9175. if( strcmp( key , "Model" , true ) == 0 ) { val = Dtdc_GetValue( Data ); cModel_tmp = strval( val ); }
  9176. if( strcmp( key , "Color1" , true ) == 0 ) { val = Dtdc_GetValue( Data ); cColor1_tmp = strval( val ); }
  9177. if( strcmp( key , "Color2" , true ) == 0 ) { val = Dtdc_GetValue( Data ); cColor2_tmp = strval( val ); }
  9178. if( strcmp( key , "AlarmBuyed" , true ) == 0 ) { val = Dtdc_GetValue( Data ); cAlarmBuyed_tmp = strval( val ); }
  9179. if( strcmp( key , "Locked" , true ) == 0 ) { val = Dtdc_GetValue( Data ); cLocked_tmp = strval( val ); }
  9180. if( strcmp( key , "PJ" , true ) == 0 ) { val = Dtdc_GetValue( Data ); cPJ_tmp = strval( val ); }
  9181. //Health and VehicleDmg
  9182. if( strcmp( key , "Health" , true ) == 0 ) { val = Dtdc_GetValue( Data ); cHealth_tmp = floatstr( val ); }
  9183. if( strcmp( key , "DmgPanels" , true ) == 0 ) { val = Dtdc_GetValue( Data ); cDmgPanels_tmp = strval( val ); }
  9184. if( strcmp( key , "DmgDoors" , true ) == 0 ) { val = Dtdc_GetValue( Data ); cDmgDoors_tmp = strval( val ); }
  9185. if( strcmp( key , "DmgLights" , true ) == 0 ) { val = Dtdc_GetValue( Data ); cDmgLights_tmp = strval( val ); }
  9186. if( strcmp( key , "DmgTires" , true ) == 0 ) { val = Dtdc_GetValue( Data ); cDmgTires_tmp = strval( val ); }
  9187. //Tuning
  9188. new compstr[20];
  9189. for(new i = 0; i<sizeof(cComponent_tmp); i++)
  9190. {
  9191. format(compstr,sizeof(compstr),"Component%02d",i);
  9192. if( strcmp( key , compstr , true ) == 0 ) { val = Dtdc_GetValue( Data ); cComponent_tmp[i] = strval( val ); }
  9193. }
  9194. //Pos
  9195. if( strcmp( key , "PosX" , true ) == 0 ) { val = Dtdc_GetValue( Data ); cPosX_tmp = floatstr( val ); }
  9196. if( strcmp( key , "PosY" , true ) == 0 ) { val = Dtdc_GetValue( Data ); cPosY_tmp = floatstr( val ); }
  9197. if( strcmp( key , "PosZ" , true ) == 0 ) { val = Dtdc_GetValue( Data ); cPosZ_tmp = floatstr( val ); }
  9198. if( strcmp( key , "RotZ" , true ) == 0 ) { val = Dtdc_GetValue( Data ); cRotZ_tmp = floatstr( val ); }
  9199. if( strcmp( key , "VW" , true ) == 0 ) { val = Dtdc_GetValue( Data ); cVW_tmp = strval( val ); }
  9200. }
  9201. mysql_real_escape_string(cOwnerName_tmp,cOwnerName_tmp2);
  9202. format(sql,sizeof(sql),"SELECT `id` FROM `playercars` WHERE Owner = '%s' AND SlotId = '%d'",cOwnerName_tmp2,cSlotid_tmp);
  9203. mysql_query_fix(sql);
  9204. mysql_store_result();
  9205. if(mysql_num_rows() != 0)
  9206. {
  9207. mysql_free_result();
  9208. return false;
  9209. }
  9210. mysql_free_result();
  9211. format(sql,sizeof(sql),"INSERT INTO `playercars` (`SlotId`, `Owner`, `Preis`, `Model`, `Color1`, `Color2`, `AlarmBuyed`, `Locked`, `PJ`, `Health`, `DmgPanels`, `DmgDoors`, `DmgLights`, `DmgTires`, `Component00`, `Component01`, `Component02`, `Component03`, `Component04`, `Component05`, `Component06`, `Component07`, `Component08`, `Component09`, `Component10`, `Component11`, `Component12`, `Component13`, `PosX`, `PosY`, `PosZ`, `RotZ`, `VW`)");
  9212. format(sql,sizeof(sql),"%s VALUES ('%d', '%s', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%f', '%d', '%d', '%d', '%d'",sql,cSlotid_tmp,cOwnerName_tmp2,cPreis_tmp,cModel_tmp,cColor1_tmp,cColor2_tmp,cAlarmBuyed_tmp,cLocked_tmp,cPJ_tmp,cHealth_tmp,cDmgPanels_tmp,cDmgDoors_tmp,cDmgLights_tmp,cDmgTires_tmp);
  9213. for(new i = 0; i<sizeof(cComponent_tmp); i++)
  9214. {
  9215. format(sql,sizeof(sql),"%s, '%d'",sql,cComponent_tmp[i]);
  9216. }
  9217. format(sql,sizeof(sql),"%s, '%f', '%f', '%f', '%f', '%d');",sql,cPosX_tmp,cPosY_tmp,cPosZ_tmp,cRotZ_tmp,cVW_tmp);
  9218. mysql_query_fix(sql);
  9219.  
  9220. fclose(file);
  9221. fremove(string);
  9222. return true;
  9223. }
  9224. fclose(file);
  9225.  
  9226. }
  9227. return false;
  9228. }
  9229.  
  9230. forward DTDC_MySQLCreateTables();
  9231. public DTDC_MySQLCreateTables()
  9232. {
  9233. //--[playercars]--
  9234. format(sql,sizeof(sql),"CREATE TABLE IF NOT EXISTS `playercars` (`id` int(11) NOT NULL AUTO_INCREMENT, `SlotId` int(11), `Owner` varchar(28), `Preis` int(11), `Model` int(4), `Color1` int(4), `Color2` int(4), `AlarmBuyed` tinyint(1), `Locked` tinyint(1), `PJ` int(3), `Health` varchar(30), `DmgPanels` int(11), `DmgDoors` int(11),");
  9235. format(sql,sizeof(sql),"%s`DmgLights` int(11), `DmgTires` int(11), `Component00` int(11), `Component01` int(11), `Component02` int(11), `Component03` int(11), `Component04` int(11), `Component05` int(11), `Component06` int(11), `Component07` int(11), `Component08` int(11), `Component09` int(11),",sql);
  9236. format(sql,sizeof(sql),"%s`Component10` int(11), `Component11` int(11), `Component12` int(11), `Component13` int(11), `PosX` varchar(40), `PosY` varchar(40), `PosZ` varchar(40), `RotZ` varchar(40), `VW` int(11), PRIMARY KEY (`id`)) ENGINE=MyISAM DEFAULT CHARSET=latin1;",sql);
  9237. mysql_query_fix(sql);
  9238.  
  9239. //--[resprayer]--
  9240. format(sql,sizeof(sql),"CREATE TABLE IF NOT EXISTS `resprayer` (`id` int(11) AUTO_INCREMENT, `Name` varchar(40), `PosX` varchar(40), `PosY` varchar(40), `PosZ` varchar(40), `Rot` varchar(40), PRIMARY KEY (`id`)) ENGINE=MyISAM DEFAULT CHARSET=latin1;");
  9241. mysql_query_fix(sql);
  9242.  
  9243. //--[seller]--
  9244. format(sql,sizeof(sql),"CREATE TABLE IF NOT EXISTS `seller` (`id` int(11) AUTO_INCREMENT, `Name` varchar(40), `sIconPosX` varchar(40), `sIconPosY` varchar(40), `sIconPosZ` varchar(40), `sIconRot` varchar(40), `sLVCarPosX` varchar(40), `sLVCarPosY` varchar(40), `sLVCarPosZ` varchar(40), `sLVCarRot` varchar(40), `sLVCamPosX` varchar(40), `sLVCamPosY` varchar(40),");
  9245. format(sql,sizeof(sql),"%s`sLVCamPosZ` varchar(40), `sLVPlyPosX` varchar(40), `sLVPlyPosY` varchar(40), `sLVPlyPosZ` varchar(40), PRIMARY KEY (`id`)) ENGINE=MyISAM DEFAULT CHARSET=latin1;",sql);
  9246. mysql_query_fix(sql);
  9247.  
  9248. //--[sellercars]--
  9249. format(sql,sizeof(sql),"CREATE TABLE IF NOT EXISTS `sellercars` (`id` int(11) AUTO_INCREMENT, `Model` int(11), `Preis` int(11), `Cat` int(11), `Sellerid` int(11), PRIMARY KEY (`id`)) ENGINE=MyISAM DEFAULT CHARSET=latin1;");
  9250. mysql_query_fix(sql);
  9251.  
  9252. //--[sellerparks]--
  9253. format(sql,sizeof(sql),"CREATE TABLE IF NOT EXISTS `sellerparks` (`id` int(11) AUTO_INCREMENT, `PosX` varchar(40), `PosY` varchar(40), `PosZ` varchar(40), `RotZ` varchar(40), `sellerid` int(11), PRIMARY KEY (`id`)) ENGINE=MyISAM DEFAULT CHARSET=latin1;");
  9254. mysql_query_fix(sql);
  9255.  
  9256. //--[tuner]--
  9257. format(sql,sizeof(sql),"CREATE TABLE IF NOT EXISTS `tuner` (`id` int(11) AUTO_INCREMENT, `Name` varchar(40), `PosX` varchar(40), `PosY` varchar(40), `PosZ` varchar(40), `Rot` varchar(40), PRIMARY KEY (`id`)) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;");
  9258. mysql_query_fix(sql);
  9259.  
  9260. //UPDATES
  9261.  
  9262. //--[playercars]--
  9263. //Neon
  9264. format(sql,sizeof(sql),"SELECT `Neon` FROM `playercars`");
  9265. mysql_query_fix(sql);
  9266. mysql_store_result();
  9267. if(mysql_errno() != 0 )
  9268. {
  9269. format(sql,sizeof(sql),"ALTER TABLE `playercars` ADD `Neon` INT( 3 ) NOT NULL DEFAULT '-1'");
  9270. mysql_query_fix(sql);
  9271. }
  9272. mysql_free_result();
  9273. //Numplate
  9274. format(sql,sizeof(sql),"SELECT `Numplate` FROM `playercars`");
  9275. mysql_query_fix(sql);
  9276. mysql_store_result();
  9277. if(mysql_errno() != 0 )
  9278. {
  9279. format(sql,sizeof(sql),"ALTER TABLE `playercars` ADD `Numplate` VARCHAR( 32 ) NOT NULL");
  9280. mysql_query_fix(sql);
  9281. }
  9282. mysql_free_result();
  9283. //OPark
  9284. format(sql,sizeof(sql),"SELECT `OPark` FROM `playercars`");
  9285. mysql_query_fix(sql);
  9286. mysql_store_result();
  9287. if(mysql_errno() != 0 )
  9288. {
  9289. format(sql,sizeof(sql),"ALTER TABLE `playercars` ADD `OPark` BOOL NOT NULL DEFAULT '0', ADD `OParkX` VARCHAR( 40 ) NOT NULL DEFAULT '0.0', ADD `OParkY` VARCHAR( 40 ) NOT NULL DEFAULT '0.0', ADD `OParkZ` VARCHAR( 40 ) NOT NULL DEFAULT '0.0'");
  9290. mysql_query_fix(sql);
  9291. }
  9292. mysql_free_result();
  9293. //--[Seller]--
  9294. //PlayerTyp
  9295. format(sql,sizeof(sql),"SELECT `PlayerTyp` FROM `seller`");
  9296. mysql_query_fix(sql);
  9297. mysql_store_result();
  9298. if(mysql_errno() != 0 )
  9299. {
  9300. format(sql,sizeof(sql),"ALTER TABLE `seller` ADD `PlayerTyp` int(11) NOT NULL DEFAULT '0';");
  9301. mysql_query_fix(sql);
  9302. }
  9303. mysql_free_result();
  9304. }
  9305.  
  9306. stock DTDC_UpdateFloat(table[],field[],Float:Var,id)
  9307. {
  9308. format(sql,sizeof(sql),"UPDATE `%s` SET `%s` = '%f' WHERE `id` = %d;",table,field,Var,id);
  9309. mysql_query_fix(sql);
  9310. }
  9311.  
  9312. stock DTDC_UpdateString(table[],field[],Var[],id)
  9313. {
  9314. mysql_real_escape_string(Var,Var);
  9315. format(sql,sizeof(sql),"UPDATE `%s` SET `%s` = '%s' WHERE `id` = %d;",table,field,Var,id);
  9316. mysql_query_fix(sql);
  9317. }
  9318.  
  9319. stock DTDC_UpdateInt(table[],field[],Var,id)
  9320. {
  9321. format(sql,sizeof(sql),"UPDATE `%s` SET `%s` = '%d' WHERE `id` = %d;",table,field,Var,id);
  9322. mysql_query_fix(sql);
  9323. }
Advertisement
Add Comment
Please, Sign In to add comment