Advertisement
Guest User

Untitled

a guest
Oct 22nd, 2011
3,937
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 96.46 KB | None | 0 0
  1. /*
  2. Rollenspiel Gamemode by Sebihunter
  3. Copyright Sebihunter
  4. --------------------------------------------------------------------------------
  5. Public Release Version "ProjectRealLife v1 Classic"
  6. --------------------------------------------------------------------------------
  7. Danke an Tjong, Neon und einigen anderen dessen Namen ich gerade vergessen habe ;)
  8. */
  9.  
  10. #include <a_samp>
  11. #include <dudb>
  12. #include <Dini>
  13. #include <dutils>
  14. #include <dmap>
  15. #include <djson>
  16. #include <seif_text>
  17. #pragma tabsize 0
  18. #define COLOR_GREY 0xAFAFAFAA
  19. #define COLOR_GREEN 0x33AA33AA
  20. #define COLOR_RED 0xAA3333AA
  21. #define COLOR_YELLOW 0xFFFF00AA
  22. #define COLOR_WHITE 0xFFFFFFAA
  23. #define COLOR_DARKRED 0x660000AA
  24. #define COLOR_BLUE 0x0000BBAA
  25. #define COLOR_ORANGE 0xFF9900AA
  26. #define COLOR_PINK 0xFF66FFAA
  27. #define COLOR_LIGHTBLUE 0x33CCFFAA
  28. #define COLOR_CYAN 0x00BFF3AA
  29. #define COLOR_BLACK 0x000000AA
  30. #define COLOR_BROWN 0XA52A2AAA
  31. #define COLOR_GOLD 0xB8860BAA
  32. #define COLOR_INDIGO 0x4B00B0AA
  33. #define COLOR_LAWNGREEN 0x7CFC00AA
  34. #define COLOR_LIMEGREEN 0x32CD32AA
  35. #define COLOR_OLIVE 0x808000AA
  36. #define COLOR_SEAGREEN 0x2E8B57AA
  37. #define COLOR_TOMATO 0xFF6347AA
  38. #define COLOR_YELLOWGREEN 0x9ACD32AA
  39. #define COLOR_MEDIUMAQUA 0x83BFBFAA
  40. #define COLOR_FLBLUE 0x6495EDAA
  41. #define COLOR_MAGENTA 0xFF00FFFF
  42. #define COLOR_PURPLE 0x800080AA
  43.  
  44. #define TEAM_TUTORIAL 1
  45. #define TEAM_TUTORIAL2 2
  46. #define TEAM_TUTORIAL3 3
  47. #define TEAM_TUTORIAL4 4
  48. #define TEAM_ARBEITSLOS 5
  49. #define TEAM_POLIZIST 6
  50. #define TEAM_ADAC 7
  51. #define TEAM_FAHRSCHULE 8
  52. #define TEAM_AUTOHAUS 9
  53. #define TEAM_SPEDITION 10
  54. #define TEAM_KELLNER 11
  55. #define TEAM_GEBRAUCHT 12
  56. #define TEAM_SANI 13
  57.  
  58. #define MAX_POINTS 24
  59.  
  60. #define CP_STATION1 0
  61. #define CP_STATION2 1
  62. #define CP_STATION3 2
  63. #define CP_STATION4 3
  64. #define CP_STATION5 4
  65. #define CP_STATION6 5
  66. #define CP_STATION7 6
  67. #define CP_STATION8 7
  68. #define CP_STATION9 8
  69. #define CP_STATION10 9
  70. #define CP_STATION11 10
  71. #define CP_STATION12 11
  72. #define CP_STATION13 12
  73. #define CP_STATION14 13
  74. #define CP_STATION15 14
  75. #define CP_STATION16 15
  76. #define CP_REP 16
  77. #define CP_GANTMAUT1 17
  78. #define CP_GANTMAUT2 18
  79. #define CP_GANTMAUT3 19
  80. #define CP_GANTMAUT4 20
  81. #define CP_FLEISCHBERG 21
  82. #define CP_RAFFINERIE 22
  83. #define CP_KAAC 23
  84.  
  85. //Speedometer
  86. #define SLOTS 200
  87.  
  88. //Benzin
  89. #define TIME 8000
  90. #define AMOUNT 100
  91. #define MAX_CARS 1000
  92. #define MAX_AUTOS 255
  93.  
  94. #define MAX_BERUFE 9
  95. #define MAX_PAPIERE 2
  96. #define MAX_FSCHEIN 2
  97. #define MAX_FSCHEINWEG 2
  98.  
  99. #define MAX_CLASSES 250
  100.  
  101.  
  102.  
  103. enum SavePlayerPosEnum{
  104. Float:LastX,
  105. Float:LastY,
  106. Float:LastZ
  107. }
  108.  
  109. stock Float:GetDistanceBetweenPlayers(p1,p2){
  110. new Float:x1,Float:y1,Float:z1,Float:x2,Float:y2,Float:z2;
  111. if (!IsPlayerConnected(p1) || !IsPlayerConnected(p2)){
  112. return -1.00;
  113. }
  114. GetPlayerPos(p1,x1,y1,z1);
  115. GetPlayerPos(p2,x2,y2,z2);
  116. return floatsqroot(floatpower(floatabs(floatsub(x2,x1)),2)+floatpower(floatabs(floatsub(y2,y1)),2)+floatpower(floatabs(floatsub(z2,z1)),2));
  117.  
  118. }
  119.  
  120. new playerCheckpoint[MAX_PLAYERS];
  121. new Petrol[MAX_CARS];
  122. new logged[MAX_PLAYERS];
  123. new Float:health;
  124. new Float:armour;
  125. new UpdateSeconds = 1;
  126. new SavePlayerPos[SLOTS][SavePlayerPosEnum];
  127. new beruf[MAX_PLAYERS];
  128. new papiere[MAX_PLAYERS];
  129. new fschein[MAX_PLAYERS];
  130. new tmpstring[256];
  131. new gTeam[MAX_PLAYERS];
  132. new Menu:warehouse;
  133. new Menu:job;
  134. new Menu:autokaufen;
  135. new Menu:minitkn;
  136. new stest[MAX_PLAYERS];
  137. new Kilometer[MAX_CARS];
  138. new Text:AutoStarten;
  139. new Vehicle[MAX_PLAYERS];
  140. new gdebug = 0;
  141. new Float:kmstand[MAX_CARS];
  142. new Text:Tspawn1;
  143. new Text:Tspawn2;
  144. new Text:Tspawn3;
  145. new Text:Tspawn4;
  146. new Text:Tunreg;
  147.  
  148. forward PutAtPos(playerid);
  149. forward UpdateSpeed();
  150. forward checkit();
  151. forward Tutorial(playerid);
  152. forward Tutorial1(playerid);
  153. forward Tutorial2(playerid);
  154. forward CheckVehicle(playerid);
  155. forward NewPos(playerid);
  156. forward Servernamen();
  157. forward Servernamen1();
  158. forward Whitelist(playerid);
  159. forward Reparieren(playerid);
  160. forward Betrunken(playerid);
  161. forward Betrunkenwerd(playerid);
  162. forward Betrunkenaus(playerid);
  163. forward Betrunkenaus1(playerid);
  164. forward SetPos(vehicleid);
  165. forward PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z);
  166. forward getCheckpointType(playerID);
  167. forward FuelRefill(playerid);
  168. forward checkpointUpdate();
  169. forward CheckFuel(playerid);
  170. forward isPlayerInArea(playerID, Float:data[4]);
  171.  
  172.  
  173. new Float:checkCoords[MAX_POINTS][4] = {
  174. {2098.1316,901.7380,2137.7456,963.0146},
  175. {2617.5967,1062.8710,2656.6526,1142.5109},
  176. {501.7475,1626.7821,653.2095,1774.1093},
  177. {-1351.2833,2638.8943,-1265.1661,2738.6450},
  178. {-2450.3767,949.5080,-2400.8530,1069.8329},
  179. {-1715.5112,349.5567,-1658.8451,458.3686},
  180. {-2265.3027,-2586.3762,-2219.1868,-2558.2539},
  181. {-1657.4102,-2763.3518,-1501.5303,-2666.7454},
  182. {1903.7450,-1795.7990,1955.5667,-1759.5187},
  183. {-135.2077,-1199.8291,-43.7008,-1134.7999},
  184. {1336.7378,454.7961,1430.0760,483.9776},
  185. {648.2494,-592.9003,670.9278,-540.8264},
  186. {-1494.2593,1854.1290,-1449.4076,1885.2032},
  187. {2097.0452,2708.1218,2172.7161,2762.7495},
  188. {2187.6587,2462.8057,2215.5042,2495.0332},
  189. {1577.7729,2182.5112,1616.5842,2242.3628},
  190. {-2152.2078,-149.1937,-2139.3696,-126.9266},//REP
  191. {-2670.8076,1265.9419,-2664.5745,1285.0740},//Maut Gant-Bridge 1
  192. {-2680.2283,1265.3031,-2674.1848,1283.6689},//Maut Gant-Bridge 2
  193. {-2689.0056,1265.6200,-2683.4087,1284.8154},//Maut Gant-Bridge 3
  194. {-2697.9836,1266.0608,-2692.3513,1284.0071},//Maut Gant-Bridge 4
  195. {-162.3537,-316.5848,-154.4193,-299.4437},//Fleischberg
  196. {272.7797,1401.5176,287.4156,1421.5332},//Raffinerie
  197. {2486.6616,2764.8381,2496.3757,2780.5212}//KAAC
  198. };
  199.  
  200.  
  201. new Float:checkpoints[MAX_POINTS][4] = {
  202. {2109.2126,917.5845,10.8203,5.0},
  203. {2640.1831,1103.9224,10.8203,5.0},
  204. {611.8934,1694.7921,6.7193,5.0},
  205. {-1327.5398,2682.9771,49.7896,5.0},
  206. {-2413.7427,975.9317,45.0031,5.0},
  207. {-1672.3597,414.2950,6.8866,5.0},
  208. {-2244.1365,-2560.6294,31.6276,5.0},
  209. {-1603.0166,-2709.3589,48.2419,5.0},
  210. {1939.3275,-1767.6813,13.2787,5.0},
  211. {-94.7651,-1174.8079,1.9979,5.0},
  212. {1381.6699,462.6467,19.8540,5.0},
  213. {657.8167,-559.6507,16.0630,5.0},
  214. {-1478.2916,1862.8318,32.3617,5.0},
  215. {2147.3054,2744.9377,10.5263,5.0},
  216. {2204.9602,2480.3494,10.5278,5.0},
  217. {1590.9493,2202.2637,10.5247,5.0},
  218. {-2145.1917,-137.4999,36.5228,5.0},//REP
  219. {-2667.9875,1275.6462,55.4297,5.0},//Maut Gant-Bridge 1
  220. {-2677.0127,1275.9338,55.4297,5.0},//Maut Gant-Bridge 2
  221. {-2685.9631,1274.7479,55.4297,5.0},//Maut Gant-Bridge 3
  222. {-2694.6104,1274.1815,55.4297,5.0},//Maut Gant-Bridge 4
  223. {-158.5363,-303.8827,1.4297,5.0},//Fleischberg
  224. {279.8180,1412.8967,10.4225,5.0},//Raffinerie
  225. {2491.6357,2772.6772,10.8000,5.0}//KAAC
  226. };
  227.  
  228.  
  229. new lastKm[MAX_VEHICLES] = {0, ...};
  230.  
  231. new checkpointType[MAX_POINTS] = {
  232. CP_STATION1,
  233. CP_STATION2,
  234. CP_STATION3,
  235. CP_STATION4,
  236. CP_STATION5,
  237. CP_STATION6,
  238. CP_STATION7,
  239. CP_STATION8,
  240. CP_STATION9,
  241. CP_STATION10,
  242. CP_STATION11,
  243. CP_STATION12,
  244. CP_STATION13,
  245. CP_STATION14,
  246. CP_STATION15,
  247. CP_STATION16,
  248. CP_REP,
  249. CP_GANTMAUT1,
  250. CP_GANTMAUT2,
  251. CP_GANTMAUT3,
  252. CP_GANTMAUT4,
  253. CP_FLEISCHBERG,
  254. CP_RAFFINERIE,
  255. CP_KAAC
  256. };
  257.  
  258. new berufe[MAX_BERUFE][256] = {
  259. {"Arbeitslos"},
  260. {"Polizist"},
  261. {"Mechaniker"},
  262. {"Fahrschullehrer"},
  263. {"Autoverkäufer"},
  264. {"Spediteur"},
  265. {"Kellner"},
  266. {"Gebrauchtwagenhändler"},
  267. {"Sanitäter"}
  268. };
  269.  
  270. new playerClass[MAX_CLASSES] = {
  271. 7,9,10,11,12,13,14,15,16,17,18,19,
  272. 20,21,22,23,24,25,26,27,28,29,30,31,
  273. 32,33,34,35,36,37,38,39,40,41,43,44,
  274. 45,46,47,48,49,51,52,53,54,55,56,
  275. 57,58,59,60,61,62,63,64,66,67,68,69,
  276. 70,71,72,73,75,76,77,78,79,80,81,82,
  277. 83,84,85,87,88,89,90,91,92,93,94,95,
  278. 96,97,98,99,100,101,102,103,104,105,
  279. 106,107,108,109,110,111,112,113,114,
  280. 115,116,117,118,120,121,122,123,124,
  281. 125,126,127,128,129,130,131,132,133,
  282. 134,135,136,137,138,139,140,141,142,
  283. 143,144,145,146,147,148,150,151,152,
  284. 153,154,155,156,157,158,159,160,161,
  285. 162,163,164,165,166,167,168,169,170,
  286. 171,172,173,174,175,176,177,178,179,
  287. 180,181,182,183,184,185,186,187,188,
  288. 189,190,191,192,193,194,195,196,197,
  289. 198,199,200,201,202,203,204,205,206,
  290. 207,209,210,211,212,213,214,215,216,
  291. 217,218,219,220,221,222,223,224,225,
  292. 226,227,228,229,230,231,232,233,234,
  293. 235,236,237,238,239,240,241,242,243,
  294. 244,245,246,247,248,249,250,251,252,
  295. 253,254,255,290,291,292,293,294,295,
  296. 296,297,298,299
  297. };
  298.  
  299.  
  300. main()
  301. {
  302. print("----------------------------------");
  303. print(" Rollenspiel Script");
  304. print(" By Sebihunter | Copright Sebihunter");
  305. print(" ************************************");
  306. print(" Public Release Version 'ProjectRealLife v1 Classic'");
  307. print(" ************************************");
  308. print(" Mit dem Betrieb dieses Scripts akzeptieren");
  309. print(" Sie die Lizenz. Missachten Sie diese");
  310. print(" machen Sie sich strafbar!");
  311. print("----------------------------------");
  312. }
  313.  
  314.  
  315. public OnGameModeInit()
  316. {
  317.  
  318. dmap_GameModeInit();
  319.  
  320. for(new c=0;c<MAX_CARS;c++)
  321. {
  322. Petrol[c] = AMOUNT;
  323. }
  324. SetTimer("CheckFuel", TIME, 1);
  325. SetTimer("checkpointUpdate", 1100, 1);
  326. SetTimer("UpdateSpeed", UpdateSeconds*1000, 1);
  327.  
  328. SetGameModeText("ProjectRealLife v1 Classic");
  329. SetDisabledWeapons(43,44,45);
  330. EnableTirePopping(1);
  331. EnableZoneNames(0);
  332. AllowInteriorWeapons(1);
  333. EnableStuntBonusForAll(0);
  334. AllowAdminTeleport(1);
  335. //DisableInteriorEnterExits();
  336. !UsePlayerPedAnims();
  337.  
  338. warehouse = CreateMenu("Lagerhaus", 1, 50.0, 180.0, 200.0, 200.0);
  339. AddMenuItem(warehouse, 0, "Schutzweste");
  340. AddMenuItem(warehouse, 0, "Erste-Hilfe Set");
  341. AddMenuItem(warehouse, 0, "Pistole");
  342. AddMenuItem(warehouse, 0, "Komplettpaket");
  343. AddMenuItem(warehouse, 0, "Abbrechen");
  344.  
  345. job = CreateMenu("Dienst", 1, 50.0, 180.0, 200.0, 200.0);
  346. AddMenuItem(job, 0, "Dienst beginnen");
  347. AddMenuItem(job, 0, "Dienst beenden");
  348. AddMenuItem(job, 0, "Abbrechen");
  349.  
  350. minitkn = CreateMenu("Minigames", 1, 50.0, 180.0, 200.0, 200.0);
  351. AddMenuItem(minitkn, 0, "Lieferung 1");
  352. AddMenuItem(minitkn, 0, "Abbrechen");
  353.  
  354. CreatePickup ( 1239, 23, 1091.2158,2120.1648,15.3504 ); //Lagerhaus Menu
  355. CreatePickup ( 1559, 23, 1062.3185,2075.2961,10.8203 ); //Lagerhaus Rein
  356. CreatePickup ( 1559, 23, 1062.1703,2077.5857,10.8203 ); //Lagerhaus Raus
  357. CreatePickup ( 1275, 23, -1594.0677,716.2131,-4.9063 ); //Polizei
  358. CreatePickup ( 1275, 23, -2106.8904,-194.7132,35.3203 ); //ADAC
  359. CreatePickup ( 1275, 23, -2035.4167,-118.8337,1035.1719 ); //Fahrschule
  360. CreatePickup ( 1275, 23, -1936.0942,277.3317,41.0469 ); //Autohaus
  361. CreatePickup ( 1275, 23, -1737.7518,-7.5964,3.5547 ); //Spedition
  362. CreatePickup ( 1275, 23, -2658.5615,1407.1691,906.2734 ); //Kellner
  363. CreatePickup ( 1275, 23, -2032.9717,161.4949,29.0461 ); //Gebrauchtwagen
  364. CreatePickup ( 1275, 23, -2664.8015,640.1572,14.4531 ); //Hospital
  365. CreatePickup ( 1239, 23, -1549.1708,124.0538,3.5547 ); //Minimission TKN
  366.  
  367. Tspawn1 = TextDrawCreate(5.000000, 120.000000, "Dieser Username ist bereits registert, nutze ~n~/login [Passwort] um dich einzuloggen!");
  368. TextDrawLetterSize(Tspawn1, 0.300000, 0.899999);
  369. TextDrawTextSize(Tspawn1, 300.000000, 150.000000);
  370. TextDrawUseBox(Tspawn1, 1);
  371. TextDrawBoxColor(Tspawn1, 0x90);
  372. TextDrawSetOutline(Tspawn1, 0);
  373.  
  374. Tunreg = TextDrawCreate(5.000000, 120.000000, "Du bist unregistriert! Willst du mitspielen?~n~Bewirb dich auf: www.NeoN-RpG.de");
  375. TextDrawLetterSize(Tunreg, 0.300000, 0.899999);
  376. TextDrawTextSize(Tunreg, 300.000000, 150.000000);
  377. TextDrawUseBox(Tunreg, 1);
  378. TextDrawBoxColor(Tunreg, 0x90);
  379. TextDrawSetOutline(Tunreg, 0);
  380.  
  381. Tspawn2 = TextDrawCreate(5.000000, 90.000000, "ProjectRealLife");
  382. TextDrawLetterSize(Tspawn2, 1.000000, 3.000000);
  383. TextDrawTextSize(Tspawn2, 300.000000, 50.000000);
  384. TextDrawUseBox(Tspawn2, 1);
  385. TextDrawBoxColor(Tspawn2, 0x0);
  386. TextDrawSetOutline(Tspawn2, 2);
  387. TextDrawFont(Tspawn2, 0);
  388.  
  389. Tspawn3 = TextDrawCreate(5.000000, 140.000000, "News:~n~Script ueberarbeitet~n~Mehr infos siehe:~n~www.NeoN-RpG.de");
  390. TextDrawLetterSize(Tspawn3, 0.200000, 0.800000);
  391. TextDrawTextSize(Tspawn3, 300.000000, 200.000000);
  392. TextDrawUseBox(Tspawn3, 1);
  393. TextDrawBoxColor(Tspawn3, 0x90);
  394.  
  395. Tspawn4 = TextDrawCreate(152.500000, 172.000000, "Aktuelle Scriptversion:~n~1.0.2~n~Copyright - Sebihunter (/lizenz)");
  396. TextDrawLetterSize(Tspawn4, 0.300000, 0.800000);
  397. TextDrawTextSize(Tspawn4, 301.000000, 295.000000);
  398. TextDrawAlignment(Tspawn4, 2);
  399. TextDrawUseBox(Tspawn4, 1);
  400. TextDrawBoxColor(Tspawn4, 0x90);
  401.  
  402.  
  403. /*
  404. Hier sollten die Objekte sein, welche jedoch wegen Copyrightproblemen herausgenommen werden mussten
  405. Naja, schade drum ;)
  406. */
  407.  
  408. for(new i=0;i<MAX_CLASSES;i++)
  409. {
  410. AddPlayerClass(playerClass[i], 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 4, 0);
  411. }
  412.  
  413.  
  414.  
  415.  
  416.  
  417. new string[256];
  418. new tmp[256];
  419. for(new count;count<MAX_VEHICLES;count++){
  420. format(string, sizeof(string),"vehicle_%d.sav",count);
  421. if(dini_Exists(string)){
  422. new Float:x,Float:y,Float:z,Float:a,model,color1,color2;
  423. tmp = dini_Get(string,"model");
  424. model = strval(tmp);
  425. tmp = dini_Get(string,"x");
  426. x = strval(tmp);
  427. tmp = dini_Get(string,"y");
  428. y = strval(tmp);
  429. tmp = dini_Get(string,"z");
  430. z = strval(tmp);
  431. tmp = dini_Get(string,"a");
  432. a = strval(tmp);
  433. tmp = dini_Get(string,"color1");
  434. color1 = strval(tmp);
  435. tmp = dini_Get(string,"color2");
  436. color2 = strval(tmp);
  437. tmp = dini_Get(string,"kmstand");
  438. kmstand[count]=strval(tmp);
  439. if (dini_Int(string,"eingepackt")==0) {
  440. CreateVehicle(model,x,y,z,a,color1,color2,300000);
  441. }else{
  442. CreateVehicle(591,x,y,z,a,0,0,300000);
  443. }
  444. }
  445. }
  446.  
  447.  
  448. AutoStarten = TextDrawCreate(20.0, 350.0,"Starte dein Auto mit ~b~~k~~PED_SPRINT~");
  449. TextDrawUseBox(AutoStarten , 0);
  450. TextDrawFont(AutoStarten , 2);
  451. TextDrawSetShadow(AutoStarten ,0);
  452. TextDrawSetOutline(AutoStarten ,1);
  453. TextDrawBackgroundColor(AutoStarten ,0x000000FF);
  454. TextDrawColor(AutoStarten ,0xFFFFFFFF);
  455.  
  456.  
  457. return 1;
  458. }
  459.  
  460. public OnGameModeExit()
  461. {
  462. dmap_GameModeExit();
  463. return 1;
  464. }
  465.  
  466. public OnPlayerRequestClass(playerid, classid)
  467. {
  468.  
  469. if (udb_Exists(PlayerName(playerid)))
  470. {
  471. SetPlayerVirtualWorld(playerid,10);
  472. SetPlayerColor(playerid, COLOR_GREY);
  473. if (dUserINT(PlayerName(playerid)).("password")==12345) {
  474. SetPlayerPos(playerid, 1472.2893,-1627.4072,14.0469);
  475. ApplyAnimation(playerid, "PED", "SEAT_idle", 10000.0,0,0,0,1,0);
  476. SetPlayerFacingAngle(playerid,32);
  477. SetPlayerCameraPos(playerid, 1471.1930,-1624.6537,14.0469);
  478. SetPlayerCameraLookAt(playerid, 1472.7893,-1627.0072,14.0469);
  479. dUserSetINT(PlayerName(playerid)).("skin", GetPlayerSkin(playerid));
  480. }else{
  481. SetSpawnInfo( playerid, TEAM_ARBEITSLOS, 0, 1958.33, 1343.12, 15.36, 269.15, 0, 0, 0, 0, 0, 0 );
  482. SpawnPlayer( playerid );
  483. }
  484. return 1;
  485. }
  486. return 1;
  487.  
  488. }
  489.  
  490.  
  491.  
  492. public OnPlayerRequestSpawn(playerid)
  493. {
  494. if (logged[playerid] != 1 && udb_Exists(PlayerName(playerid)))
  495. {
  496. if (dUserINT(PlayerName(playerid)).("password")==12345) {
  497.  
  498. SendClientMessage(playerid, COLOR_GREEN, "Du kannst noch nicht spawnen da du nicht eingeloggt bist!");
  499. return 0;
  500. }else{
  501.  
  502. }
  503. }
  504.  
  505. return 1;
  506. }
  507.  
  508. public OnPlayerConnect(playerid)
  509. {
  510.  
  511.  
  512.  
  513. if (!udb_Exists(PlayerName(playerid)))
  514. {
  515.  
  516.  
  517. SetPlayerPos(playerid, 1472.2893,-1627.4072,14.0469);
  518. ApplyAnimation(playerid, "PED", "SEAT_idle", 10000.0,0,0,0,1,0);
  519. SetPlayerFacingAngle(playerid,32);
  520. SetPlayerCameraPos(playerid, 1471.1930,-1624.6537,14.0469);
  521. SetPlayerCameraLookAt(playerid, 1472.7893,-1627.0072,14.0469);
  522. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  523. SendClientMessage(playerid, 0xFF0000AA, "Du wurdest gekickt!");
  524. SendClientMessage(playerid, 0xFF0000AA, "Grund: Du wurdest nicht registriert! Wenn du mitspielen");
  525. SendClientMessage(playerid, 0xFF0000AA, "willst musst du dich bei www.NeoN-RpG.de bewerben");
  526. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  527. TextDrawShowForPlayer(playerid, Tunreg);
  528. TextDrawShowForPlayer(playerid, Tspawn2);
  529. Kick(playerid);
  530.  
  531. return 1;
  532. }
  533. if (dUserINT(PlayerName(playerid)).("password")==12345) {
  534. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  535. SendClientMessage(playerid, COLOR_RED, "Willkommen bei ProjectRealLife v1 Classic");
  536. SendClientMessage(playerid,COLOR_RED,"Um die neuesten Befehle zu sehen gib /befehle ein");
  537. SendClientMessage(playerid,COLOR_ORANGE,"Gamemode by Sebihunter, Copyright Sebihunter");
  538. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  539. SendClientMessage(playerid,COLOR_RED,"Achtung! Den Skin den du nun wählst wirst du für immer haben!");
  540. TextDrawShowForPlayer(playerid, Tspawn1);
  541. TextDrawShowForPlayer(playerid, Tspawn2);
  542. TextDrawShowForPlayer(playerid, Tspawn3);
  543. TextDrawShowForPlayer(playerid, Tspawn4);
  544. return 1;
  545. }
  546.  
  547. return 1;
  548. }
  549. public OnPlayerDisconnect(playerid, reason)
  550. {
  551.  
  552.  
  553. if (logged[playerid] == 1) dUserSetINT(PlayerName(playerid)).("money", GetPlayerMoney(playerid));
  554. new Float:x,Float:y,Float:z;
  555. GetPlayerPos(playerid,x,y,z);
  556. dUserSetINT(PlayerName(playerid)).("x",floatround(x));
  557. dUserSetINT(PlayerName(playerid)).("y",floatround(y));
  558. dUserSetINT(PlayerName(playerid)).("z",floatround(z));
  559. GetPlayerHealth(playerid,health);
  560. dUserSetINT(PlayerName(playerid)).("health",floatround(health));
  561. GetPlayerArmour(playerid, armour);
  562. dUserSetINT(PlayerName(playerid)).("armour",floatround(armour));
  563. logged[playerid] = 0;
  564.  
  565. new pName[MAX_PLAYER_NAME];
  566. new string[56];
  567. GetPlayerName(playerid, pName, sizeof(pName));
  568.  
  569. switch(reason)
  570. {
  571. case 0: format(string, sizeof(string), "%s hat den Server verlassen. (Timeout)", pName);
  572. case 1: format(string, sizeof(string), "%s hat den Server verlassen. (Verlassen)", pName);
  573. case 2: format(string, sizeof(string), "%s hat den Server verlassen. (Kicked)", pName);
  574. }
  575.  
  576. SendClientMessageToAll(0xAAAAAAAA, string);
  577. return 1;
  578.  
  579.  
  580. }
  581.  
  582. public OnPlayerSpawn(playerid)
  583. {
  584. SetPlayerInterior(playerid,0);
  585.  
  586. if (logged[playerid] != 1 && udb_Exists(PlayerName(playerid)))
  587. {
  588. SendClientMessage(playerid, COLOR_GREEN, "Bitte logge dich ein um fortzufahren!");
  589. SetPlayerPos(playerid, 1472.2893,-1627.4072,14.0469);
  590. ApplyAnimation(playerid, "PED", "SEAT_idle", 10000.0,0,0,0,1,0);
  591. SetPlayerFacingAngle(playerid,32);
  592. SetPlayerCameraPos(playerid, 1471.1930,-1624.6537,14.0469);
  593. SetPlayerCameraLookAt(playerid, 1472.7893,-1627.0072,14.0469);
  594. TextDrawShowForPlayer(playerid, Tspawn1);
  595. TextDrawShowForPlayer(playerid, Tspawn2);
  596. TextDrawShowForPlayer(playerid, Tspawn3);
  597. TextDrawShowForPlayer(playerid, Tspawn4);
  598.  
  599. return 1;
  600. }
  601.  
  602. if (logged[playerid] == 1 && udb_Exists(PlayerName(playerid)))
  603. {
  604. if (dUserINT(PlayerName(playerid)).("papiere")==0) {
  605. }
  606. if (dUserINT(PlayerName(playerid)).("x")!=0) {
  607. SetPlayerPos(playerid,
  608. float(dUserINT(PlayerName(playerid)).("x")),
  609. float(dUserINT(PlayerName(playerid)).("y")),
  610. float(dUserINT(PlayerName(playerid)).("z")));
  611. }
  612. if (dUserINT(PlayerName(playerid)).("health")!=0) {
  613. SetPlayerHealth(playerid,
  614. float(dUserINT(PlayerName(playerid)).("health")));
  615. }
  616. if (dUserINT(PlayerName(playerid)).("armour")!=0) {
  617. SetPlayerArmour(playerid,
  618. float(dUserINT(PlayerName(playerid)).("armour")));
  619. }
  620. SetPlayerSkin(playerid, dUserINT(PlayerName(playerid)).("skin"));
  621. SetVehicleParamsForPlayer(dUserINT(PlayerName(playerid)).("autoid"),playerid,1,0);
  622.  
  623. return 1;
  624. }
  625. return 1;
  626. }
  627.  
  628. public OnPlayerDeath(playerid, killerid, reason)
  629. {
  630. SendDeathMessage(killerid,playerid,reason);
  631. new Float:x,Float:y,Float:z;
  632.  
  633. if (logged[playerid] == 1)
  634. GetPlayerPos(playerid,x,y,z);
  635. dUserSetINT(PlayerName(playerid)).("x",floatround(x));
  636. dUserSetINT(PlayerName(playerid)).("y",floatround(y));
  637. dUserSetINT(PlayerName(playerid)).("z",floatround(z));
  638. dUserSetINT(PlayerName(playerid)).("health",(1));
  639. dUserSetINT(PlayerName(playerid)).("armour",(0));
  640.  
  641. GameTextForPlayer(playerid,"~r~Gestorben",2000,2);
  642.  
  643. gTeam[playerid] = TEAM_ARBEITSLOS;
  644. SetPlayerColor(playerid, COLOR_GREY);
  645.  
  646. KillTimer(Vehicle[playerid]);
  647.  
  648.  
  649.  
  650. return 1;
  651. }
  652.  
  653. public OnVehicleSpawn(vehicleid)
  654. {
  655. new string[256];
  656. SetTimerEx("SetPos", 1000, false, "i", vehicleid);
  657. format(string, sizeof(string),"vehicle_%d.sav",vehicleid); //nennt die datei wie die vehicleid
  658. if (dini_Int(string,"hydraulik")==1)
  659. {
  660. AddVehicleComponent(vehicleid,1087);
  661.  
  662. }
  663. return 1;
  664. }
  665.  
  666. public OnVehicleDeath(vehicleid, killerid)
  667. {
  668. new string[256];
  669. format(string, sizeof(string), "vehicle_%d.sav",vehicleid); // Put the location of the file inside the (" ").
  670. dini_IntSet(string,"panne",(1));
  671. return 1;
  672. }
  673.  
  674. public OnPlayerText(playerid, text[])
  675. {
  676. return 1;
  677. }
  678.  
  679. public OnPlayerPrivmsg(playerid, recieverid, text[])
  680. {
  681. return 1;
  682. }
  683.  
  684. public OnPlayerCommandText(playerid, cmdtext[])
  685. {
  686. new string[256];
  687. new playermoney;
  688. new sendername[MAX_PLAYER_NAME];
  689. new giveplayer[MAX_PLAYER_NAME];
  690. new cmd[256];
  691. new giveplayerid, moneys, idx;
  692.  
  693.  
  694. cmd = strtok(cmdtext, idx);
  695. //-------------------------------------------------("Transport Service")-------------------------------------------------
  696. if(strcmp(cmd, "/auspacken", true)==0 && gTeam[playerid] == TEAM_SPEDITION){
  697. if(IsPlayerInAnyVehicle(playerid)){
  698. if(PlayerToPoint(5.0, playerid, -1928.7926,277.4234,41.0469)){
  699. new Float:x,Float:y,Float:z,Float:a,model,vehicleid,color1,color2;
  700. new tmp[256];
  701. new TID = GetVehicleTrailer(GetPlayerVehicleID(playerid));
  702. vehicleid = GetPlayerVehicleID(playerid);
  703. GetVehiclePos(vehicleid,x,y,z);
  704. GetVehicleZAngle(vehicleid,a);
  705. format(string, sizeof(string), "vehicle_%d.sav", TID); // Put the location of the file inside the (" ").
  706. if (dini_Int(string,"eingepackt")==1) {
  707. dini_IntSet(string,"eingepackt",0);
  708. dini_FloatSet(string,"x",x);
  709. dini_FloatSet(string,"y",y);
  710. dini_FloatSet(string,"z",z);
  711. dini_FloatSet(string,"a",a);
  712. tmp = dini_Get(string,"model");
  713. model = strval(tmp);
  714. tmp = dini_Get(string,"x");
  715. x = strval(tmp);
  716. tmp = dini_Get(string,"y");
  717. y = strval(tmp);
  718. tmp = dini_Get(string,"z");
  719. z = strval(tmp);
  720. tmp = dini_Get(string,"a");
  721. a = strval(tmp);
  722. tmp = dini_Get(string,"color1");
  723. color1 = strval(tmp);
  724. tmp = dini_Get(string,"color2");
  725. color2 = strval(tmp);
  726. DestroyVehicle(TID);
  727. SendClientMessage(playerid,COLOR_RED,"Auto ausgepackt!");
  728. CreateVehicle(model,x,y,z,a,color1,color2,300000);
  729. GivePlayerMoney(playerid,500);
  730.  
  731. }
  732. }
  733. }
  734. return 1;
  735. }
  736. //-------------------------------------------------("Mechaniker")-------------------------------------------------
  737. if(strcmp(cmd, "/abschleppen", true)==0){
  738. if(IsPlayerInAnyVehicle(playerid)){
  739. new vehid = GetPlayerVehicleID(playerid);
  740. if(!IsTrailerAttachedToVehicle(vehid)){
  741. new Float:x, Float:y, Float:z;
  742. GetVehiclePos(vehid, x, y, z );
  743. new vehiclet;
  744. GetVehicleWithinDistance(playerid, x, y, z, 100.0, vehiclet);
  745. AttachTrailerToVehicle(vehiclet, vehid);
  746. }
  747. else{
  748. DetachTrailerFromVehicle(vehid);
  749. }
  750. }
  751. return 1;
  752. }
  753.  
  754.  
  755. if(strcmp(cmd, "/reparieren", true)==0 && gTeam[playerid] == TEAM_ADAC){
  756. if(IsPlayerInAnyVehicle(playerid)){
  757. if(playerCheckpoint[playerid]==CP_REP){
  758. SendClientMessage(playerid,COLOR_RED,"Auto wird repariert - Dies dauert eine Minute");
  759. TogglePlayerControllable(playerid,0);
  760. SetTimerEx("Reparieren", 60000, false, "i", playerid);
  761.  
  762. }
  763. }
  764. return 1;
  765. }
  766.  
  767. //-------------------------------------------------("Polizei Commands")-------------------------------------------------
  768.  
  769. if(strcmp(cmd, "/jail", true) == 0 && gTeam[playerid] == TEAM_POLIZIST) {
  770. new tmp[256];
  771. tmp = strtok(cmdtext, idx);
  772. if(!strlen(tmp)) {
  773. SendClientMessage(playerid, COLOR_ORANGE, "Benutzung: /jail [Player ID]");
  774. return 1;
  775. }
  776. giveplayerid = strval(tmp);
  777. if(GetDistanceBetweenPlayers(playerid,giveplayerid)<11) {
  778. if (IsPlayerConnected(giveplayerid))
  779. {
  780. SendClientMessage(playerid,COLOR_RED,"Du hast sie/ihn erfolgreich gejailt!");
  781. Jail(giveplayerid);
  782. }else{
  783. SendClientMessage(playerid,COLOR_RED,"Spieler existiert nicht oder ist zu weit entfernt");
  784. }
  785. return 1;
  786. }
  787. }
  788.  
  789. if(strcmp(cmd, "/unjail", true) == 0 && gTeam[playerid] == TEAM_POLIZIST) {
  790. new tmp[256];
  791. tmp = strtok(cmdtext, idx);
  792. if(!strlen(tmp)) {
  793. SendClientMessage(playerid, COLOR_ORANGE, "Benutzung: /unjail [Player ID]");
  794. }
  795. giveplayerid = strval(tmp);
  796. if (IsPlayerConnected(giveplayerid))
  797. if (IsPlayerConnected(giveplayerid))
  798. {
  799. SendClientMessage(playerid,COLOR_RED,"Du hast sie/ihn erfolgreich unjailt!");
  800. Unjail(giveplayerid);
  801. }else{
  802. SendClientMessage(playerid,COLOR_RED,"Spieler existiert nicht oder ist zu weit entfernt");
  803. }
  804. return 1;
  805. }
  806.  
  807.  
  808. if(strcmp(cmd, "/rechtspd", true) == 0 && gTeam[playerid] == TEAM_POLIZIST) {
  809. new tmp[256];
  810. tmp = strtok(cmdtext, idx);
  811. if(!strlen(tmp)) {
  812. SendClientMessage(playerid, COLOR_ORANGE, "Benutzung: /rechtspd [Player ID]");
  813. return 1;
  814. }
  815. giveplayerid = strval(tmp);
  816. if (IsPlayerConnected(giveplayerid))
  817. {
  818. SendClientMessage(playerid,COLOR_RED,"Aufforderung wurde versendet!");
  819. DisplayTextForPlayer(playerid,"Polizei. Sofort rechts ranfahren!", 8, 1, 2);
  820. return 1;
  821. }
  822. }
  823.  
  824.  
  825.  
  826. if (strcmp(cmd, "/fscheinweg", true)==0 && gTeam[playerid] == TEAM_POLIZIST )
  827. {
  828.  
  829. new tmp[256];
  830. new zielplayer;
  831. tmp = strtok(cmdtext, idx);
  832. if(!strlen(tmp)) {
  833. SendClientMessage(playerid, COLOR_WHITE, "Benutze: /fscheinweg [ID]");
  834. return 1;
  835. }
  836. zielplayer = strval(tmp);
  837.  
  838. if(IsPlayerConnected(zielplayer))
  839. {
  840. dUserSetINT(PlayerName(zielplayer)).("fschein",0);
  841. SendClientMessage(zielplayer,COLOR_SEAGREEN,"=================================================");
  842. SendClientMessage(zielplayer, COLOR_WHITE, "Dein Führerschein wurde abgenommen!");
  843. SendClientMessage(zielplayer,COLOR_SEAGREEN,"=================================================");
  844.  
  845. } else {
  846. SendClientMessage(playerid,COLOR_RED,"Ungültige SpielerID");
  847. }
  848.  
  849. return 1;
  850. }
  851.  
  852.  
  853. if (strcmp(cmd, "/papiere", true)==0 && gTeam[playerid] == TEAM_POLIZIST )
  854. {
  855.  
  856. new tmp[256];
  857. new zielplayer,papierid;
  858. tmp = strtok(cmdtext, idx);
  859. if(!strlen(tmp)) {
  860. SendClientMessage(playerid, COLOR_WHITE, "Benutze: /papiere [ID] [0/1]");
  861. return 1;
  862. }
  863. zielplayer = strval(tmp);
  864.  
  865. tmp = strtok(cmdtext, idx);
  866. if(!strlen(tmp)) {
  867. SendClientMessage(playerid, COLOR_WHITE, "Benutze: /papiere [ID] [0/1]");
  868. return 1;
  869. }
  870. papierid = strval(tmp);
  871.  
  872.  
  873. if(IsPlayerConnected(zielplayer))
  874. {
  875.  
  876. papiere[zielplayer] = papierid;
  877.  
  878. dUserSetINT(PlayerName(zielplayer)).("papiere",papierid);
  879. SendClientMessage(zielplayer,COLOR_SEAGREEN,"=================================================");
  880. SendClientMessage(zielplayer, COLOR_WHITE, "Du hast einen Personalausweiß bekommen!");
  881. SendClientMessage(zielplayer, COLOR_WHITE, "Du kannst nun das Startgebiet verlassen");
  882. SendClientMessage(zielplayer,COLOR_SEAGREEN,"=================================================");
  883. SetPlayerWorldBounds(zielplayer, 9999.999, -9999.9991, 9999.999, -9999.9991);
  884.  
  885.  
  886. } else {
  887. SendClientMessage(playerid,COLOR_RED,"Ungültige SpielerID");
  888. }
  889.  
  890. return 1;
  891. }
  892.  
  893. //-------------------------------------------------("Sanitäter")-------------------------------------------------
  894.  
  895. if (strcmp(cmd, "/heilen", true)==0 && gTeam[playerid] == TEAM_SANI )
  896. {
  897.  
  898. new tmp[256];
  899. new zielplayer;
  900. tmp = strtok(cmdtext, idx);
  901. if(!strlen(tmp)) {
  902. SendClientMessage(playerid, COLOR_WHITE, "Benutze: /heilen [ID]");
  903. return 1;
  904. }
  905. zielplayer = strval(tmp);
  906.  
  907. if(IsPlayerConnected(zielplayer))
  908. {
  909. if(GetDistanceBetweenPlayers(playerid,zielplayer)<11) {
  910. dUserSetINT(PlayerName(zielplayer)).("health",100);
  911. SendClientMessage(zielplayer,COLOR_RED,"Du hast den Spieler geheilt!");
  912. SendClientMessage(zielplayer,COLOR_SEAGREEN,"=================================================");
  913. SendClientMessage(zielplayer, COLOR_WHITE, "Du wurdest geheilt");
  914. SendClientMessage(zielplayer,COLOR_SEAGREEN,"=================================================");
  915. SetPlayerHealth(zielplayer,100);
  916. } else {
  917. SendClientMessage(playerid,COLOR_RED,"Du bist zu weit vom Spieler entfernt!");
  918. }
  919. } else {
  920. SendClientMessage(playerid,COLOR_RED,"Ungültige SpielerID");
  921. }
  922.  
  923. return 1;
  924. }
  925.  
  926. //-------------------------------------------------("Fahrschul Commands")-------------------------------------------------
  927.  
  928.  
  929.  
  930. if (strcmp(cmd, "/fschein", true)==0 && gTeam[playerid] == TEAM_FAHRSCHULE )
  931. {
  932.  
  933. new tmp[256];
  934. new zielplayer,fscheinid;
  935. tmp = strtok(cmdtext, idx);
  936. if(!strlen(tmp)) {
  937. SendClientMessage(playerid, COLOR_WHITE, "Benutze: /fschein [ID] [0/1]");
  938. return 1;
  939. }
  940. zielplayer = strval(tmp);
  941.  
  942. tmp = strtok(cmdtext, idx);
  943. if(!strlen(tmp)) {
  944. SendClientMessage(playerid, COLOR_WHITE, "Benutze: /fschein [ID] [0/1]");
  945. return 1;
  946. }
  947. fscheinid = strval(tmp);
  948.  
  949.  
  950. if(IsPlayerConnected(zielplayer))
  951. {
  952.  
  953. fschein[zielplayer] = fscheinid;
  954.  
  955. dUserSetINT(PlayerName(zielplayer)).("fschein",fscheinid);
  956. SendClientMessage(playerid,COLOR_RED,"Du hast einen Führerschein vergeben/weggenommen");
  957. SendClientMessage(zielplayer,COLOR_SEAGREEN,"=================================================");
  958. SendClientMessage(zielplayer, COLOR_WHITE, "Du hast den Führerschein bekommen/verloren!");
  959. SendClientMessage(zielplayer,COLOR_SEAGREEN,"=================================================");
  960.  
  961.  
  962. } else {
  963. SendClientMessage(playerid,COLOR_RED,"Ungültige SpielerID");
  964. }
  965.  
  966. return 1;
  967. }
  968. //-------------------------------------------------("Autoverkäufer")-------------------------------------------------
  969.  
  970.  
  971. if(strcmp(cmd, "/verkaufeauto", true)==0 && gTeam[playerid] == TEAM_AUTOHAUS){
  972. if(IsPlayerInAnyVehicle(playerid)){
  973. new tmp[256];
  974. new preis;
  975.  
  976. tmp = strtok(cmdtext, idx);
  977. if(!strlen(tmp)) {
  978. SendClientMessage(playerid, COLOR_WHITE, "Benutze: /verkaufeauto [Preis]");
  979. return 1;
  980. }
  981. preis = strval(tmp);
  982.  
  983. format(string, sizeof(string), "vehicle_%d.sav", GetPlayerVehicleID(playerid)); // Put the location of the file inside the (" ").
  984. if (dini_Int(string,"verkauf")==0) {
  985. dini_IntSet(string,"verkauf",(1));
  986. dini_IntSet(string,"Preis",preis);
  987. SendClientMessage(playerid,COLOR_RED,"Fahrzeug zum Verkauf gestellt!");
  988. GivePlayerMoney(playerid,500);
  989. RemovePlayerFromVehicle(playerid);
  990. }
  991. }
  992. return 1;
  993. }
  994.  
  995. if (strcmp(cmd, "/lackierung", true)==0 && gTeam[playerid] == TEAM_AUTOHAUS)
  996. {
  997. new tmp[256];
  998. new farbe1,farbe2;
  999. tmp = strtok(cmdtext, idx);
  1000.  
  1001. if(!strlen(tmp)) {
  1002. SendClientMessage(playerid, 0xFFFFFFAA, "Benutze: /lackierung [farbe1] [farbe2]");
  1003. return 1;
  1004. }
  1005. farbe1 = strval(tmp);
  1006. tmp = strtok(cmdtext, idx);
  1007.  
  1008. if(!strlen(tmp)) {
  1009. SendClientMessage(playerid, 0xFFFFFFAA, "Benutze: /lackierung [farbe1] [farbe2]");
  1010. return 1;
  1011. }
  1012. farbe2 = strval(tmp);
  1013.  
  1014. if(PlayerToPoint(5.0, playerid, -1928.7926,277.4234,41.0469)){
  1015. new vhid=GetPlayerVehicleID(playerid);
  1016. new string1[256];
  1017. format(string1, sizeof(string1),"vehicle_%d.sav",GetPlayerVehicleID(playerid)); //nennt die datei wie die vehicleid
  1018. dini_IntSet(string1,"color1",farbe1);
  1019. dini_IntSet(string1,"color2",farbe2);
  1020. ChangeVehicleColor(vhid,farbe1,farbe2);
  1021. SetVehicleHealth(vhid,1000.0);
  1022.  
  1023. return 1;
  1024. }
  1025.  
  1026.  
  1027.  
  1028. }
  1029.  
  1030. if (strcmp(cmd, "/hydraulik", true)==0 && gTeam[playerid] == TEAM_AUTOHAUS)
  1031. {
  1032. new tmp[256];
  1033. new hyd;
  1034. tmp = strtok(cmdtext, idx);
  1035.  
  1036. if(!strlen(tmp)) {
  1037. SendClientMessage(playerid, 0xFFFFFFAA, "Benutze: /hydraulik [0/1]");
  1038. return 1;
  1039. }
  1040. hyd = strval(tmp);
  1041.  
  1042. if(PlayerToPoint(5.0, playerid, -1928.7926,277.4234,41.0469)){
  1043. new vhid=GetPlayerVehicleID(playerid);
  1044. new string1[256];
  1045. format(string1, sizeof(string1),"vehicle_%d.sav",GetPlayerVehicleID(playerid)); //nennt die datei wie die vehicleid
  1046. if(hyd==0)
  1047. {
  1048. RemoveVehicleComponent(vhid,1087);
  1049. format(string,sizeof(string),"0");
  1050. dini_Set(string1,"hydraulik",string);
  1051. }
  1052. else if(hyd==1)
  1053. {
  1054. AddVehicleComponent(vhid,1087);
  1055. format(string,sizeof(string),"1");
  1056. dini_Set(string1,"hydraulik",string);
  1057. }
  1058.  
  1059. else
  1060. {
  1061. SendClientMessage(playerid, 0xFFFFFFAA, "Benutze: /hydraulik [0/1]");
  1062. }
  1063.  
  1064. return 1;
  1065. }
  1066. }
  1067.  
  1068. if(strcmp(cmd, "/bestellen", true)==0 && gTeam[playerid] == TEAM_AUTOHAUS){
  1069.  
  1070. new tmp[256];
  1071. new modelid;
  1072.  
  1073. tmp = strtok(cmdtext, idx);
  1074. if(!strlen(tmp)) {
  1075. SendClientMessage(playerid, COLOR_WHITE, "Benutze: /bestellung [modelid]");
  1076. return 1;
  1077. }
  1078. modelid = strval(tmp);
  1079.  
  1080. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  1081. SendClientMessage(playerid,0xFFFFFFFF,"Auto Bestellt.");
  1082. SendClientMessage(playerid,0xFFFFFFFF,"Der Transportservice wird dir das Auto liefern!");
  1083. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  1084. for(new count=1;count<MAX_VEHICLES;count++){
  1085. format(string, sizeof(string),"vehicle_%d.sav",count); //Läuft von 1-***, nicth nach vehicleid
  1086. if(!dini_Exists(string)){
  1087. dini_Create(string);
  1088. dini_IntSet(string,"model",modelid);
  1089. dini_IntSet(string,"eingepackt",1);
  1090. dini_FloatSet(string,"x",(2778.2478));
  1091. dini_FloatSet(string,"y",(-2437.1582));
  1092. dini_FloatSet(string,"z",(13.3631));
  1093. dini_FloatSet(string,"a",(91.5577));
  1094. dini_IntSet(string,"color1",0);
  1095. dini_IntSet(string,"color2",0);
  1096. dini_IntSet(string,"verkauf",0);
  1097. dini_IntSet(string,"Preis",0);
  1098. dini_IntSet(string,"kmstand",0);
  1099. dini_IntSet(string,"zu",0);
  1100. dini_Set(string,"Besitzer","Niemand");
  1101. dini_Set(string,"Schluessel","Niemand");
  1102. count = MAX_VEHICLES;
  1103. CreateVehicle(591,2778.2478,-2437.1582,13.3631,91.5577,0,0,300000);
  1104. }
  1105. }
  1106. return 1;
  1107. }
  1108. //-------------------------------------------------("Gebrauchtwagenhändler")-------------------------------------------------
  1109. if(strcmp(cmd, "/gebrauchtwagen", true)==0 && gTeam[playerid] == TEAM_GEBRAUCHT){
  1110. if(IsPlayerInAnyVehicle(playerid)){
  1111. new tmp[256];
  1112. new preis;
  1113.  
  1114. tmp = strtok(cmdtext, idx);
  1115. if(!strlen(tmp)) {
  1116. SendClientMessage(playerid, COLOR_WHITE, "Benutze: /gebrauchtwagen [Preis]");
  1117. return 1;
  1118. }
  1119. preis = strval(tmp);
  1120.  
  1121. format(string, sizeof(string), "vehicle_%d.sav", GetPlayerVehicleID(playerid)); // Put the location of the file inside the (" ").
  1122. dini_IntSet(string,"verkauf",(1));
  1123. dini_IntSet(string,"Preis",preis);
  1124. dini_IntSet(string,"zu",0);
  1125. dini_Set(string,"Besitzer","Niemand");
  1126. dini_Set(string,"Schluessel","Niemand");
  1127. SendClientMessage(playerid,COLOR_RED,"Fahrzeug zum Verkauf gestellt!");
  1128. GivePlayerMoney(playerid,preis);
  1129. RemovePlayerFromVehicle(playerid);
  1130. TogglePlayerControllable(playerid,1);
  1131. }
  1132. return 1;
  1133. }
  1134. //-------------------------------------------------("Palm Beach Club")-------------------------------------------------
  1135. if (strcmp(cmd, "/ausschenken", true)==0 && gTeam[playerid] == TEAM_KELLNER )
  1136. {
  1137.  
  1138. new tmp[256];
  1139. new zielplayer;
  1140. tmp = strtok(cmdtext, idx);
  1141. if(!strlen(tmp)) {
  1142. SendClientMessage(playerid, COLOR_WHITE, "Benutze: /ausschenken [ID]");
  1143. return 1;
  1144. }
  1145. zielplayer = strval(tmp);
  1146.  
  1147. if(IsPlayerConnected(zielplayer))
  1148. {
  1149. if(GetDistanceBetweenPlayers(playerid,zielplayer)<11) {
  1150.  
  1151. SendClientMessage(zielplayer, COLOR_WHITE, "Du hast ein Getränk getrunken!");
  1152. SendClientMessage(playerid, COLOR_WHITE, "Du hast jemanden ein Getränk ausgeschenkt!");
  1153. dUserSetINT(PlayerName(zielplayer)).("betrunken",1);
  1154. SetTimerEx("Betrunkenwerd",20000,false,"i",zielplayer);
  1155. } else {
  1156. SendClientMessage(playerid,COLOR_RED,"Du bist zu weit vom Spieler entfernt!");
  1157. }
  1158. } else {
  1159. SendClientMessage(playerid,COLOR_RED,"Ungültige SpielerID");
  1160. }
  1161.  
  1162. return 1;
  1163. }
  1164. //-------------------------------------------------("Allgemeine")-------------------------------------------------
  1165. if (strcmp(cmd, "/adminreg", true)==0)
  1166. {
  1167. new pname[256];
  1168. new tmp[256];
  1169. new fname[256];
  1170.  
  1171. if(IsPlayerAdmin(playerid))
  1172. {
  1173.  
  1174. tmp = strtok(cmdtext, idx);
  1175. if(!strlen(tmp)) {
  1176. SendClientMessage(playerid, COLOR_WHITE, "Benutze: /adminreg [Name]");
  1177. return 1;
  1178. }
  1179. pname = tmp;
  1180. if (!dini_Exists(pname))
  1181. {
  1182. format(fname,sizeof(fname),"%s.dudb.sav",pname);
  1183. dini_Create(fname);
  1184. SendClientMessage(playerid, COLOR_WHITE, "Der Spieler zurde zur Registrierung freigeschalten!");
  1185. format(string,sizeof(string),"12345");
  1186. dUserSet(pname).("password",string);
  1187. format(string,sizeof(string),"0");
  1188. dUserSet(pname).("autoid",string);
  1189. format(string,sizeof(string),"0");
  1190. dUserSet(pname).("skin",string);
  1191. format(string,sizeof(string),"15000");
  1192. dUserSet(pname).("money",string);
  1193. format(string,sizeof(string),"-1413.7273");
  1194. dUserSet(pname).("x",string);
  1195. format(string,sizeof(string),"-294.2459");
  1196. dUserSet(pname).("y",string);
  1197. format(string,sizeof(string),"14.1484");
  1198. dUserSet(pname).("z",string);
  1199. }
  1200. else
  1201. {
  1202. SendClientMessage(playerid, COLOR_WHITE, "Der Spieler wurde bereits zur registration freigeschalten!");
  1203. }
  1204. return 1;
  1205.  
  1206. }
  1207.  
  1208. }
  1209.  
  1210. if (strcmp(cmd, "/tp", true)==0)
  1211. {
  1212.  
  1213. new tmp[256];
  1214.  
  1215.  
  1216. if(IsPlayerAdmin(playerid))
  1217. {
  1218.  
  1219. tmp = strtok(cmdtext, idx);
  1220. if(!strlen(tmp)) {
  1221. SendClientMessage(playerid, COLOR_WHITE, "Benutze: /tp [Wen?] [Wohin?]");
  1222. return 1;
  1223. }
  1224. new pid = strval(tmp);
  1225.  
  1226. tmp = strtok(cmdtext, idx);
  1227.  
  1228. if(!strlen(tmp)) {
  1229. SendClientMessage(playerid, COLOR_WHITE, "Benutze: /tp [Wen?] [Wohin?]");
  1230. return 1;
  1231. }
  1232. new pidto = strval(tmp);
  1233.  
  1234. new Float:x,Float:y,Float:z;
  1235. GetPlayerPos(pidto,x,y,z);
  1236. SetPlayerPos(pid,x,y,z+2);
  1237.  
  1238. format(tmpstring,sizeof(tmpstring),"Du wurdest von %s zu %s teleportiert",PlayerName(playerid),PlayerName(pidto));
  1239. SendClientMessage(pid,COLOR_GREEN,tmpstring);
  1240. format(tmpstring,sizeof(tmpstring),"Du hast %s zu %s teleportiert",PlayerName(pid),PlayerName(pidto));
  1241. SendClientMessage(playerid,COLOR_GREEN,tmpstring);
  1242. format(tmpstring,sizeof(tmpstring),"%s wurde von %s zu dir teleportiert",PlayerName(pid),PlayerName(playerid));
  1243. SendClientMessage(pidto,COLOR_GREEN,tmpstring);
  1244. }
  1245. return 1;
  1246. }
  1247.  
  1248. if (strcmp(cmd, "/freeze", true)==0)
  1249. {
  1250. new tmp[256];
  1251. if(IsPlayerAdmin(playerid))
  1252. {
  1253. tmp = strtok(cmdtext, idx);
  1254. if(!strlen(tmp)) {
  1255. SendClientMessage(playerid, COLOR_WHITE, "Benutze: /freeze [ID]");
  1256. return 1;
  1257. }
  1258. new pid = strval(tmp);
  1259. TogglePlayerControllable(pid,0);
  1260. format(tmpstring,sizeof(tmpstring),"%s wurde von %s eingefroren",PlayerName(pid),PlayerName(playerid));
  1261. SendClientMessageToAll(COLOR_LIGHTBLUE,tmpstring);
  1262. }
  1263. return 1;
  1264. }
  1265.  
  1266. if (strcmp(cmd, "/unfreeze", true)==0)
  1267. {
  1268. new tmp[256];
  1269. if(IsPlayerAdmin(playerid))
  1270. {
  1271. tmp = strtok(cmdtext, idx);
  1272. if(!strlen(tmp)) {
  1273. SendClientMessage(playerid, COLOR_WHITE, "Benutze: /unfreeze [ID]");
  1274. return 1;
  1275. }
  1276. new pid = strval(tmp);
  1277. TogglePlayerControllable(pid,1);
  1278. format(tmpstring,sizeof(tmpstring),"%s wurde von %s aufgetaut",PlayerName(pid),PlayerName(playerid));
  1279. SendClientMessageToAll(COLOR_LIGHTBLUE,tmpstring);
  1280. }
  1281. return 1;
  1282. }
  1283.  
  1284. if(strcmp(cmd, "/auto", true)==0 && IsPlayerAdmin(playerid)){
  1285.  
  1286. new tmp[256];
  1287. new modelid;
  1288. new Float:x,Float:y,Float:z;
  1289. tmp = strtok(cmdtext, idx);
  1290. if(!strlen(tmp)) {
  1291. SendClientMessage(playerid, COLOR_WHITE, "Benutze: /auto [modelid]");
  1292. return 1;
  1293. }
  1294. modelid = strval(tmp);
  1295.  
  1296. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  1297. SendClientMessage(playerid,0xFFFFFFFF,"Auto erstellt");
  1298. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  1299. for(new count=1;count<MAX_VEHICLES;count++){
  1300. format(string, sizeof(string),"vehicle_%d.sav",count); //Läuft von 1-***, nicth nach vehicleid
  1301. if(!dini_Exists(string)){
  1302. GetPlayerPos(playerid,Float:x,Float:y,Float:z);
  1303. dini_Create(string);
  1304. dini_IntSet(string,"model",modelid);
  1305. dini_IntSet(string,"eingepackt",0);
  1306. dini_FloatSet(string,"x",Float:x);
  1307. dini_FloatSet(string,"y",Float:y);
  1308. dini_FloatSet(string,"z",Float:z);
  1309. dini_FloatSet(string,"a",0);
  1310. dini_IntSet(string,"color1",0);
  1311. dini_IntSet(string,"color2",0);
  1312. dini_IntSet(string,"verkauf",0);
  1313. dini_IntSet(string,"Preis",0);
  1314. dini_IntSet(string,"kmstand",0);
  1315. dini_IntSet(string,"zu",0);
  1316. dini_Set(string,"Besitzer","Niemand");
  1317. dini_Set(string,"Schluessel","Niemand");
  1318. count = MAX_VEHICLES;
  1319. CreateVehicle(modelid,Float:x,Float:y,Float:z,0,-1,-1,300000);
  1320. }
  1321. }
  1322. return 1;
  1323. }
  1324.  
  1325.  
  1326. if (strcmp(cmd, "/job", true)==0)
  1327. {
  1328. if(IsPlayerAdmin(playerid))
  1329. {
  1330. new tmp[256];
  1331. new zielplayer,jobid;
  1332. tmp = strtok(cmdtext, idx);
  1333. if(!strlen(tmp)) {
  1334. SendClientMessage(playerid, COLOR_WHITE, "Benutze: /job [ID] [JobID]");
  1335. return 1;
  1336. }
  1337. zielplayer = strval(tmp);
  1338.  
  1339. tmp = strtok(cmdtext, idx);
  1340. if(!strlen(tmp)) {
  1341. SendClientMessage(playerid, COLOR_WHITE, "Benutze: /job [ID] [JobID]");
  1342. return 1;
  1343. }
  1344. jobid = strval(tmp);
  1345.  
  1346.  
  1347. if(IsPlayerConnected(zielplayer))
  1348. {
  1349.  
  1350. beruf[zielplayer] = jobid;
  1351.  
  1352. dUserSetINT(PlayerName(zielplayer)).("job",jobid);
  1353.  
  1354. format(tmpstring,sizeof(tmpstring),"Der neue Job von %s ist %s",PlayerName(zielplayer),berufe[jobid]);
  1355. SendClientMessage(playerid,COLOR_GREEN,tmpstring);
  1356. format(tmpstring,sizeof(tmpstring),"Dein neuer Job ist %s",berufe[jobid]);
  1357. SendClientMessage(zielplayer,COLOR_GREEN,tmpstring);
  1358.  
  1359. } else {
  1360. SendClientMessage(playerid,COLOR_RED,"Ungültige SpielerID");
  1361. }
  1362. }
  1363. return 1;
  1364. }
  1365. //-------------------------------------------------("Money Commands")-------------------------------------------------
  1366.  
  1367. if(strcmp(cmd, "/sende", true) == 0) {
  1368. new tmp[256];
  1369. tmp = strtok(cmdtext, idx);
  1370.  
  1371. if(!strlen(tmp)) {
  1372. SendClientMessage(playerid, COLOR_WHITE, "Verwendung: /sende [playerid] [Geldmenge]");
  1373. return 1;
  1374. }
  1375. giveplayerid = strval(tmp);
  1376.  
  1377. tmp = strtok(cmdtext, idx);
  1378. if(!strlen(tmp)) {
  1379. SendClientMessage(playerid, COLOR_WHITE, "Verwendung: /sende [playerid] [Geldmenge]");
  1380. return 1;
  1381. }
  1382. moneys = strval(tmp);
  1383.  
  1384.  
  1385.  
  1386. if (IsPlayerConnected(giveplayerid)) {
  1387. GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
  1388. GetPlayerName(playerid, sendername, sizeof(sendername));
  1389. playermoney = GetPlayerMoney(playerid);
  1390. if (moneys > 0 && playermoney >= moneys) {
  1391. GivePlayerMoney(playerid, (0 - moneys));
  1392. GivePlayerMoney(giveplayerid, moneys);
  1393. format(string, sizeof(string), "Du hast %s(player: %d) $%d gesendet.", giveplayer,giveplayerid, moneys);
  1394. SendClientMessage(playerid, COLOR_YELLOW, string);
  1395. format(string, sizeof(string), "Du hast $%d von %s(player: %d) bekommen.", moneys, sendername, playerid);
  1396. SendClientMessage(giveplayerid, COLOR_YELLOW, string);
  1397. printf("%s(playerid:%d) hat %d an %s(playerid:%d) gegeben!",sendername, playerid, moneys, giveplayer, giveplayerid);
  1398. }
  1399. else {
  1400. SendClientMessage(playerid, COLOR_YELLOW, "Falscher Betrag!");
  1401. }
  1402. }
  1403. else
  1404. {
  1405. format(string, sizeof(string), "%d ist nicht am Server!", giveplayerid);
  1406. SendClientMessage(playerid, COLOR_YELLOW, string);
  1407. }
  1408. return 1;
  1409. }
  1410. //-------------------------------------------------("Need something commands")-------------------------------------------------
  1411. if(strcmp(cmdtext, "/adac", true)==0)
  1412. {
  1413. new name[MAX_PLAYER_NAME];
  1414. GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  1415. format(string, 256, "%s benötigt einen Mechaniker!", name);
  1416. SendClientMessageToAll(0xFF00FFAA, string);
  1417. return 1;
  1418. }
  1419.  
  1420. if(strcmp(cmdtext, "/bus", true)==0)
  1421. {
  1422. new name[MAX_PLAYER_NAME];
  1423. GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  1424. format(string, 256, "%s benötigt einen Bus!", name);
  1425. SendClientMessageToAll(0xFF00FFAA, string);
  1426. return 1;
  1427. }
  1428.  
  1429. if(strcmp(cmdtext, "/start", true)==0)
  1430. {
  1431. new name[MAX_PLAYER_NAME];
  1432. GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  1433. format(string, 256, "%s benötigt Starterlaubnis!", name);
  1434. SendClientMessageToAll(0xFF00FFAA, string);
  1435. return 1;
  1436. }
  1437.  
  1438. if(strcmp(cmdtext, "/land", true)==0)
  1439. {
  1440. new name[MAX_PLAYER_NAME];
  1441. GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  1442. format(string, 256, "%s benötigt Landungserlaubnis!", name);
  1443. SendClientMessageToAll(0xFF00FFAA, string);
  1444. return 1;
  1445. }
  1446.  
  1447. if(strcmp(cmdtext, "/mayday", true)==0)
  1448. {
  1449. new name[MAX_PLAYER_NAME];
  1450. GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  1451. format(string, 256, "%s benötigt dringenst Landungserlaubnis!", name);
  1452. SendClientMessageToAll(0xFF00FFAA, string);
  1453. return 1;
  1454. }
  1455.  
  1456. if(strcmp(cmdtext, "/taxi", true)==0)
  1457. {
  1458. new name[MAX_PLAYER_NAME];
  1459. GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  1460. format(string, 256, "%s braucht ein Taxi!", name);
  1461. SendClientMessageToAll(0xFF00FFAA, string);
  1462. return 1;
  1463. }
  1464.  
  1465. if(strcmp(cmdtext, "/911", true)==0)
  1466. {
  1467. new name[MAX_PLAYER_NAME];
  1468. GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  1469. format(string, 256, "%s benötigt die Polizei!", name);
  1470. SendClientMessageToAll(0xFF00FFAA, string);
  1471. return 1;
  1472. }
  1473.  
  1474. if(strcmp(cmdtext, "/adminhelp", true)==0)
  1475. {
  1476. new name[MAX_PLAYER_NAME];
  1477. GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  1478. format(string, 256, "%s benötigt Adminhilfe!", name);
  1479. SendClientMessageToAll(0xFF00FFAA, string);
  1480. return 1;
  1481. }
  1482. //-------------------------------------------------("DUDB")-------------------------------------------------
  1483.  
  1484.  
  1485. if(strcmp(cmd, "/kaufeauto", true)==0){
  1486. if(IsPlayerInAnyVehicle(playerid)){
  1487. if (dUserINT(PlayerName(playerid)).("autoid")==0) {
  1488. new kosten;
  1489. format(string, sizeof(string), "vehicle_%d.sav", GetPlayerVehicleID(playerid)); // Put the location of the file inside the (" ").
  1490. if (dini_Int(string,"verkauf")==1) {
  1491. dini_IntSet(string,"verkauf",(2));
  1492. kosten=dini_Int(string,"preis");
  1493. GivePlayerMoney(playerid,-kosten);
  1494. dini_Set(string,"Besitzer",PlayerName(playerid));
  1495. dini_Set(string,"Schluessel",PlayerName(playerid));
  1496. SendClientMessage(playerid,COLOR_RED,"Auto gekauft!");
  1497. TogglePlayerControllable(playerid,1);
  1498. }
  1499. }
  1500. }
  1501. return 1;
  1502. }
  1503.  
  1504.  
  1505. if (strcmp(cmd, "/login", true) == 0)
  1506. {
  1507. if (logged[playerid] != 1 && udb_Exists(PlayerName(playerid)))
  1508. {
  1509. new dir[256];
  1510. dir = strtok(cmdtext, idx);
  1511. if (strlen(dir) && strcmp(dir, dUser(PlayerName(playerid)).("password"), true) == 0)
  1512. {
  1513. logged[playerid] = 1;
  1514. DisplayTextForPlayer(playerid,"~g~Eingeloggt!", 5, 1, 2);
  1515. if (dUserINT(PlayerName(playerid)).("password")==12345) {
  1516. SetPlayerVirtualWorld(playerid,0);
  1517. SendClientMessage(playerid,COLOR_WHITE,"Bitte ändere nach dem Spawnen dein Passwort!");
  1518. GivePlayerMoney(playerid, dUserINT(PlayerName(playerid)).("money"));
  1519. TextDrawHideForPlayer(playerid, Tspawn1);
  1520. TextDrawHideForPlayer(playerid, Tspawn2);
  1521. TextDrawHideForPlayer(playerid, Tspawn3);
  1522. TextDrawHideForPlayer(playerid, Tspawn4);
  1523. new pName[MAX_PLAYER_NAME];
  1524. GetPlayerName(playerid, pName, sizeof(pName));
  1525. format(string, sizeof(string), "%s hat den Server betreten!", pName);
  1526. SendClientMessageToAll(0xAAAAAAAA, string);
  1527. }else{
  1528. GivePlayerMoney(playerid, dUserINT(PlayerName(playerid)).("money"));
  1529. SetPlayerSkin(playerid, dUserINT(PlayerName(playerid)).("skin"));
  1530.  
  1531. new pName[MAX_PLAYER_NAME];
  1532. GetPlayerName(playerid, pName, sizeof(pName));
  1533. format(string, sizeof(string), "%s hat den Server betreten!", pName);
  1534. SendClientMessageToAll(0xAAAAAAAA, string);
  1535. TogglePlayerControllable(playerid,1);
  1536. SetPlayerVirtualWorld(playerid,0);
  1537. SetCameraBehindPlayer(playerid);
  1538. TextDrawHideForPlayer(playerid, Tspawn1);
  1539. TextDrawHideForPlayer(playerid, Tspawn2);
  1540. TextDrawHideForPlayer(playerid, Tspawn3);
  1541. TextDrawHideForPlayer(playerid, Tspawn4);
  1542.  
  1543.  
  1544. if (dUserINT(PlayerName(playerid)).("betrunken")==1) {
  1545. SetTimerEx("Betrunken",100,false,"i",playerid);
  1546. SetTimerEx("Betrunkenaus",300000,false,"i",playerid);
  1547. }
  1548.  
  1549.  
  1550. if (dUserINT(PlayerName(playerid)).("x")!=0) {
  1551. SetPlayerPos(playerid,
  1552. float(dUserINT(PlayerName(playerid)).("x")),
  1553. float(dUserINT(PlayerName(playerid)).("y")),
  1554. float(dUserINT(PlayerName(playerid)).("z")));
  1555. }
  1556.  
  1557. if (dUserINT(PlayerName(playerid)).("health")!=0) {
  1558. SetPlayerHealth(playerid,
  1559. float(dUserINT(PlayerName(playerid)).("health")));
  1560. }
  1561. if (dUserINT(PlayerName(playerid)).("armour")!=0) {
  1562. SetPlayerArmour(playerid,
  1563. float(dUserINT(PlayerName(playerid)).("armour")));
  1564. }
  1565.  
  1566. SetVehicleParamsForPlayer(dUserINT(PlayerName(playerid)).("autoid"),playerid,1,0);
  1567.  
  1568. }
  1569. }
  1570. }
  1571. else{
  1572. DisplayTextForPlayer(playerid,"~r~ERROR", 5, 1, 2);
  1573. }
  1574. return 1;
  1575. }
  1576.  
  1577. if (strcmp(cmd, "/register", true) == 0)
  1578. {
  1579. if (logged[playerid] != 1 && !udb_Exists(PlayerName(playerid)) && gTeam[playerid] == TEAM_ARBEITSLOS)
  1580. {
  1581. new dir[256];
  1582. dir = strtok(cmdtext, idx);
  1583. if (strlen(dir))
  1584. {
  1585. new pName[MAX_PLAYER_NAME];
  1586. new fname[MAX_STRING];
  1587. format(fname,sizeof(fname),"%s.dudb.sav",udb_encode(PlayerName(playerid)));
  1588. dini_Create(fname);
  1589. dUserSet(PlayerName(playerid)).("password", dir);
  1590. logged[playerid] = 1;
  1591. SetPlayerPos(playerid, -1413.7273,-294.2459,14.1484);
  1592. TogglePlayerControllable(playerid,1);
  1593. SetPlayerFacingAngle( playerid, 175.0427 );
  1594. GetPlayerName(playerid, pName, sizeof(pName));
  1595. format(string, sizeof(string), "%s hat den Server betreten!", pName);
  1596. SendClientMessageToAll(0xAAAAAAAA, string);
  1597. DisplayTextForPlayer(playerid,"~g~Registriert und eingeloggt", 5, 1, 2);
  1598. GivePlayerMoney(playerid,15000);
  1599. if (logged[playerid] == 1) dUserSetINT(PlayerName(playerid)).("skin", GetPlayerSkin(playerid));
  1600. SetPlayerVirtualWorld(playerid,0);
  1601. SetCameraBehindPlayer(playerid);
  1602. dUserSetINT(PlayerName(playerid)).("autoid",0);
  1603.  
  1604.  
  1605. }
  1606. }
  1607.  
  1608. else{
  1609. DisplayTextForPlayer(playerid,"~r~ERROR", 5, 1, 2);
  1610. }
  1611. return 1;
  1612. }
  1613.  
  1614. if (strcmp(cmd, "/passwort", true) == 0)
  1615. {
  1616. if (logged[playerid] == 1)
  1617. {
  1618. new dir[256];
  1619. dir = strtok(cmdtext, idx);
  1620. if (strlen(dir))
  1621. {
  1622. new fname[MAX_STRING];
  1623. format(fname,sizeof(fname),"%s.dudb.sav",udb_encode(PlayerName(playerid)));
  1624. dUserSet(PlayerName(playerid)).("password", dir);
  1625. SendClientMessage(playerid,COLOR_WHITE,"Du hast dein Passwort geändert!");
  1626.  
  1627.  
  1628. }
  1629. }
  1630.  
  1631. return 1;
  1632. }
  1633. //-------------------------------------------------("Others")-------------------------------------------------
  1634.  
  1635. if (strcmp(cmd, "/perso", true)==0)
  1636. {
  1637.  
  1638. new tmp[256];
  1639. new zielplayer;
  1640. tmp = strtok(cmdtext, idx);
  1641. if(!strlen(tmp)) {
  1642. SendClientMessage(playerid, COLOR_WHITE, "Benutze: /perso [ID]");
  1643. return 1;
  1644. }
  1645. zielplayer = strval(tmp);
  1646.  
  1647. if(IsPlayerConnected(zielplayer))
  1648. {
  1649. SendClientMessage(playerid,COLOR_RED,"Du hast jemanden deinen Personalausweis gegeben!");
  1650. SendClientMessage(zielplayer,COLOR_SEAGREEN,"=================================================");
  1651. format(string, sizeof(string), "Personalausweis von: %s", PlayerName(playerid));
  1652. SendClientMessage(zielplayer, COLOR_GREEN, string);
  1653. format(string, sizeof(string),"Führerschein: %d",dUserINT(PlayerName(playerid)).("fschein"));
  1654. SendClientMessage(zielplayer, COLOR_WHITE, string);
  1655. SendClientMessage(zielplayer,COLOR_SEAGREEN,"=================================================");
  1656.  
  1657. } else {
  1658. SendClientMessage(playerid,COLOR_RED,"Ungültige SpielerID");
  1659. }
  1660.  
  1661. return 1;
  1662. }
  1663.  
  1664. if (strcmp(cmd, "/autoinfos", true)==0)
  1665. {
  1666.  
  1667.  
  1668. if(IsPlayerInAnyVehicle(playerid))
  1669. {
  1670. format(string, sizeof(string), "vehicle_%d.sav", GetPlayerVehicleID(playerid)); // Put the location of the file inside the (" ").
  1671. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  1672. format(tmpstring, sizeof(tmpstring), "Eigentum von: %s", dini_Get(string,"Besitzer"));
  1673. SendClientMessage(playerid, COLOR_GREEN, tmpstring);
  1674. format(tmpstring, sizeof(tmpstring), "Schluesselbesitzer: %s", dini_Get(string,"Schluessel"));
  1675. SendClientMessage(playerid, COLOR_WHITE, tmpstring);
  1676. format(tmpstring, sizeof(tmpstring), "Auto ID: %d", GetPlayerVehicleID(playerid));
  1677. SendClientMessage(playerid, COLOR_WHITE, tmpstring);
  1678. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  1679.  
  1680. } else {
  1681. SendClientMessage(playerid,COLOR_RED,"Du bist in keinem Auto");
  1682. }
  1683.  
  1684. return 1;
  1685. }
  1686.  
  1687. if(strcmp(cmdtext, "/kill", true)==0)
  1688. {
  1689. SetPlayerHealth(playerid,0);
  1690. return 1;
  1691. }
  1692.  
  1693. if(strcmp(cmdtext, "/me", true, 3)==0)
  1694. {
  1695. new str[256], pname[256]; GetPlayerName(playerid, pname, 256);
  1696. format(str, 256, "%s %s", pname, cmdtext[4]);
  1697. SendClientMessageToAll(COLOR_TOMATO, str);
  1698. return 1;
  1699. }
  1700.  
  1701. if(strcmp(cmdtext, "/afk", true)==0)
  1702. {
  1703. new name[MAX_PLAYER_NAME];
  1704. GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  1705. format(string, 256, "%s ist afk!", name);
  1706. SendClientMessageToAll(0xFF9900AA, string);
  1707. return 1;
  1708. }
  1709.  
  1710. if(strcmp(cmdtext, "/re", true)==0)
  1711. {
  1712. new name[MAX_PLAYER_NAME];
  1713. GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  1714. format(string, 256, "%s ist wieder da!", name);
  1715. SendClientMessageToAll(0xFF9900AA, string);
  1716. return 1;
  1717. }
  1718.  
  1719. if (strcmp(cmdtext, "/zu", true)==0)
  1720. {
  1721. if(IsPlayerInAnyVehicle(playerid))
  1722. {
  1723. format(string, sizeof(string),"vehicle_%d.sav",GetPlayerVehicleID(playerid)); //nennt die datei wie die vehicleid
  1724. if(!strcmp(PlayerName(playerid), dini_Get(string, "Schluessel")))
  1725. {
  1726. dini_IntSet(string,"zu",(1));
  1727. SendClientMessage(playerid, COLOR_GREEN, "***Auto abgeschlossen!");
  1728. new Float:pX, Float:pY, Float:pZ;
  1729. GetPlayerPos(playerid,pX,pY,pZ);
  1730. PlayerPlaySound(playerid,1056,pX,pY,pZ);
  1731. }
  1732. else
  1733. {
  1734. SendClientMessage(playerid, COLOR_RED, "Dieses Fahrzeug gehört dir nicht!");
  1735. return 1;
  1736. }
  1737. }
  1738. else
  1739. {
  1740. SendClientMessage(playerid, COLOR_RED, "Du bist in keinem Auto!");
  1741. }
  1742. return 1;
  1743. }
  1744.  
  1745. if (strcmp(cmdtext, "/auf", true)==0)
  1746. {
  1747. if(IsPlayerInAnyVehicle(playerid))
  1748. {
  1749. format(string, sizeof(string),"vehicle_%d.sav",GetPlayerVehicleID(playerid)); //nennt die datei wie die vehicleid
  1750. if(!strcmp(PlayerName(playerid), dini_Get(string, "Schluessel")))
  1751. {
  1752. SendClientMessage(playerid, COLOR_GREEN, "***Auto aufgeschlossen!");
  1753. new Float:pX, Float:pY, Float:pZ;
  1754. GetPlayerPos(playerid,pX,pY,pZ);
  1755. PlayerPlaySound(playerid,1057,pX,pY,pZ);
  1756. dini_IntSet(string,"zu",(0));
  1757. }
  1758. else
  1759. {
  1760. SendClientMessage(playerid, COLOR_RED, "Dieses Fahrzeug gehört dir nicht!");
  1761. return 1;
  1762. }
  1763. }
  1764. else
  1765. {
  1766. SendClientMessage(playerid, COLOR_RED, "Du bist in keinem Auto!");
  1767. }
  1768. return 1;
  1769. }
  1770. if (strcmp(cmdtext, "/schluesselabgeben", true)==0)
  1771. {
  1772. new tmp[256];
  1773. new zielplayer;
  1774. tmp = strtok(cmdtext, idx);
  1775. if(!strlen(tmp)) {
  1776. SendClientMessage(playerid, COLOR_WHITE, "Benutze: /schluesselabgeben [ID]");
  1777. return 1;
  1778. }
  1779. zielplayer = strval(tmp);
  1780.  
  1781. if(IsPlayerInAnyVehicle(playerid))
  1782. {
  1783. format(string, sizeof(string),"vehicle_%d.sav",GetPlayerVehicleID(playerid)); //nennt die datei wie die vehicleid
  1784. if(!strcmp(PlayerName(playerid), dini_Get(string, "Besitzer")))
  1785. {
  1786. dini_Set(string,"Schluessel",PlayerName(zielplayer));
  1787. SendClientMessage(playerid, COLOR_RED, "Schlüssel abgegeben!");
  1788. }
  1789. else
  1790. {
  1791. SendClientMessage(playerid, COLOR_RED, "Dieses Fahrzeug gehört dir nicht!");
  1792. }
  1793. }
  1794. else
  1795. {
  1796. SendClientMessage(playerid, COLOR_RED, "Du bist in keinem Auto!");
  1797. }
  1798. return 1;
  1799. }
  1800. //-------------------------------------------------("Help and Rules and Infos")-------------------------------------------------
  1801.  
  1802. if(strcmp(cmdtext, "/lizenz", true)==0)
  1803. {
  1804. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  1805. SendClientMessage(playerid, COLOR_WHITE, "ProjectRealLife gemacht von Sebihunter - Public Release Version");
  1806. SendClientMessage(playerid, COLOR_WHITE, "Danke an:");
  1807. SendClientMessage(playerid, COLOR_WHITE, "Firzen, k.o.e.i.g2, Tjong und flash2go");
  1808. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  1809. return 1;
  1810. }
  1811.  
  1812. if(strcmp(cmdtext, "/befehle", true)==0)
  1813. {
  1814. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  1815. SendClientMessage(playerid, COLOR_WHITE, "/kill - Selbstmord");
  1816. SendClientMessage(playerid, COLOR_WHITE, "/911 - Rufe die Polizei");
  1817. SendClientMessage(playerid, COLOR_WHITE, "/adminhelp - Rufe einen Admin");
  1818. SendClientMessage(playerid, COLOR_WHITE, "/taxi - Rufe ein Taxi");
  1819. SendClientMessage(playerid, COLOR_WHITE, "/adac - Rufe einen Mechaniker");
  1820. SendClientMessage(playerid, COLOR_WHITE, "/bus - Rufe einen Bus");
  1821. SendClientMessage(playerid, COLOR_WHITE, "/autoinfos - Rufe die Autoinfos ab!");
  1822. SendClientMessage(playerid, COLOR_WHITE, "/passwort - Ändere dein Passwort");
  1823. SendClientMessage(playerid, COLOR_RED, "Mehr befehle: /befehle1");
  1824. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  1825. return 1;
  1826. }
  1827.  
  1828. if(strcmp(cmdtext, "/befehle1", true)==0)
  1829. {
  1830. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  1831. SendClientMessage(playerid, COLOR_WHITE, "/sende - Gib jemanden Geld");
  1832. SendClientMessage(playerid, COLOR_WHITE, "/afk - Du kommst in den AFK Mode");
  1833. SendClientMessage(playerid, COLOR_WHITE, "/re - Bringt dich wieder von AFK Mode zurück");
  1834. SendClientMessage(playerid, COLOR_WHITE, "/zu - Schließe dein Auto");
  1835. SendClientMessage(playerid, COLOR_WHITE, "/auf - Öffne dein Auto");
  1836. SendClientMessage(playerid, COLOR_WHITE, "/schluesselabgeben - Gib jemanden deinen Autoschlüssel");
  1837. SendClientMessage(playerid, COLOR_WHITE, "/perso - Gib jemanden deinen Personalausweis");
  1838. SendClientMessage(playerid, COLOR_WHITE, "/jobbefehle - Um deine Jobbefehle abzurufen");
  1839. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  1840. return 1;
  1841. }
  1842. if(strcmp(cmdtext, "/abefehle", true)==0)
  1843. {
  1844. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  1845. SendClientMessage(playerid, COLOR_WHITE, "/adminreg - Jemanden registrieren");
  1846. SendClientMessage(playerid, COLOR_WHITE, "/auto - Eine neue Autodatei erstellen");
  1847. SendClientMessage(playerid, COLOR_WHITE, "/tp - Jemanden teleportieren");
  1848. SendClientMessage(playerid, COLOR_WHITE, "/job - Jemanden einen Job zuweisen");
  1849. SendClientMessage(playerid, COLOR_WHITE, "/freeze - Jemanden unfreezen");
  1850. SendClientMessage(playerid, COLOR_WHITE, "/unfreeze - Jemanden freezen");
  1851. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  1852. return 1;
  1853. }
  1854.  
  1855. if(strcmp(cmdtext, "/jobbefehle", true)==0)
  1856. {
  1857. if (gTeam[playerid] == TEAM_AUTOHAUS){
  1858.  
  1859. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  1860. SendClientMessage(playerid, COLOR_WHITE, "Ein Auto bestellen - /bestellen");
  1861. SendClientMessage(playerid, COLOR_WHITE, "Ein Auto verkaufen - /verkaufen");
  1862. SendClientMessage(playerid, COLOR_WHITE, "Ein Auto lackieren - /lackierung");
  1863. SendClientMessage(playerid, COLOR_WHITE, "Hydraulik einbauen/ausbauen - /hydraulik");
  1864. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  1865. }
  1866. if (gTeam[playerid] == TEAM_ADAC){
  1867. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  1868. SendClientMessage(playerid, COLOR_WHITE, "Ein Auto abschleppen - /abschleppen");
  1869. SendClientMessage(playerid, COLOR_WHITE, "Ein Auto reparieren - /reparieren");
  1870. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  1871. }
  1872. if (gTeam[playerid] == TEAM_FAHRSCHULE){
  1873. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  1874. SendClientMessage(playerid, COLOR_WHITE, "Einen Führerschein vergeben - /fschein");
  1875. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  1876. }
  1877. if (gTeam[playerid] == TEAM_POLIZIST){
  1878. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  1879. SendClientMessage(playerid, COLOR_WHITE, "Einen Führerschein entziehen - /fscheinweg");
  1880. SendClientMessage(playerid, COLOR_WHITE, "Jemanden stoppen - /rechtspd");
  1881. SendClientMessage(playerid, COLOR_WHITE, "Jemanden aus dem Knast befreien - /jail");
  1882. SendClientMessage(playerid, COLOR_WHITE, "Jemanden in den Knast stecken - /unjail");
  1883. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  1884. }
  1885. if (gTeam[playerid] == TEAM_SPEDITION){
  1886. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  1887. SendClientMessage(playerid, COLOR_WHITE, "Einen Anhänger entpacken - /auspacken");
  1888. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  1889.  
  1890. }
  1891. if (gTeam[playerid] == TEAM_KELLNER){
  1892. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  1893. SendClientMessage(playerid, COLOR_WHITE, "Ein Getränk ausschenken - /ausschenken");
  1894. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  1895.  
  1896. }
  1897. if (gTeam[playerid] == TEAM_GEBRAUCHT){
  1898. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  1899. SendClientMessage(playerid, COLOR_WHITE, "Ein Auto verkaufen - /gebrauchtwagen");
  1900. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  1901.  
  1902. }
  1903. if (gTeam[playerid] == TEAM_SANI){
  1904. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  1905. SendClientMessage(playerid, COLOR_WHITE, "Jemanden heilen - /heilen");
  1906. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  1907.  
  1908. }
  1909. if (gTeam[playerid] == TEAM_ARBEITSLOS){
  1910. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  1911. SendClientMessage(playerid, COLOR_WHITE, "Du musst im Dienst sein um die Jobbefehle aufzurufen!");
  1912. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  1913.  
  1914. }
  1915.  
  1916. return 1;
  1917. }
  1918.  
  1919.  
  1920.  
  1921.  
  1922. return 0;
  1923. }
  1924.  
  1925. public OnPlayerInfoChange(playerid)
  1926. {
  1927. return 1;
  1928. }
  1929.  
  1930. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  1931. {
  1932.  
  1933.  
  1934.  
  1935. return 1;
  1936. }
  1937.  
  1938. public OnPlayerExitVehicle(playerid, vehicleid)
  1939. {
  1940. new string[256];
  1941. new kmsav[256];
  1942. new Float:x,Float:y,Float:z,Float:a;
  1943. GetVehiclePos(vehicleid,x,y,z);
  1944. GetVehicleZAngle(vehicleid,a);
  1945. format(string, sizeof(string),"vehicle_%d.sav",vehicleid);
  1946. if(dini_Exists(string)){
  1947. dini_FloatSet(string,"x",x);
  1948. dini_FloatSet(string,"y",y);
  1949. dini_FloatSet(string,"z",z);
  1950. dini_FloatSet(string,"a",a);
  1951. format(kmsav,sizeof(kmsav),"%f",kmstand[vehicleid]);
  1952. dini_Set(string,"kmstand",kmsav);
  1953. }
  1954. return 1;
  1955. }
  1956.  
  1957.  
  1958. public OnPlayerStateChange(playerid, newstate, oldstate)
  1959. {
  1960.  
  1961. if((newstate==PLAYER_STATE_DRIVER))
  1962. {
  1963. Vehicle[playerid] = SetTimerEx("CheckVehicle",1000,true,"i",playerid);
  1964. }
  1965.  
  1966. if((newstate==PLAYER_STATE_DRIVER)&&dUserINT(PlayerName(playerid)).("fschein")==0){
  1967.  
  1968.  
  1969. }
  1970. new string[256];
  1971. new vehicleid;
  1972. vehicleid = GetPlayerVehicleID(playerid);
  1973. format(string, sizeof(string),"vehicle_%d.sav",vehicleid);
  1974.  
  1975. if (dini_Int(string,"zu")==1) {
  1976. SendClientMessage(playerid,COLOR_RED,"Dieses Auto ist zugesperrt!");
  1977. TogglePlayerControllable(playerid,0);
  1978.  
  1979. }
  1980. if((newstate==PLAYER_STATE_DRIVER))
  1981. {
  1982. new kosten;
  1983. format(string, sizeof(string),"vehicle_%d.sav",vehicleid);
  1984. if (dini_Int(string,"verkauf")==1) {
  1985. kosten=dini_Int(string,"preis");
  1986. format(string, sizeof(string), "Kaufpreis: %d", kosten);
  1987.  
  1988. autokaufen = CreateMenu("Autokauf", 1, 50.0, 180.0, 200.0, 200.0);
  1989. SetMenuColumnHeader(autokaufen, 0, string);
  1990. AddMenuItem(autokaufen, 0, "Fahrzeug Kaufen");
  1991. AddMenuItem(autokaufen, 0, "Fahrzeug Verlassen");
  1992.  
  1993. TogglePlayerControllable(playerid,0);
  1994. ShowMenuForPlayer(autokaufen, playerid);
  1995.  
  1996. }else if (dini_Int(string,"verkauf")==0) {
  1997. if (gTeam[playerid] == TEAM_AUTOHAUS) {
  1998. }else{
  1999. SendClientMessage(playerid,COLOR_RED,"Dieses Auto ist noch nicht zum Verkauf gestellt worden!");
  2000. TogglePlayerControllable(playerid,0);
  2001. }
  2002. }else if (dini_Int(string,"panne")==1) {
  2003. SendClientMessage(playerid,COLOR_RED,"Dein Wagen hat eine Autopanne");
  2004. TogglePlayerControllable(playerid,0);
  2005.  
  2006. }
  2007. }
  2008.  
  2009. if(newstate == PLAYER_STATE_ONFOOT)
  2010. {
  2011. KillTimer(Vehicle[playerid]);
  2012. TextDrawHideForPlayer(playerid, AutoStarten);
  2013.  
  2014. }
  2015.  
  2016. return 1;
  2017. }
  2018.  
  2019. public OnPlayerLeaveCheckpoint(playerid)
  2020. {
  2021. return 1;
  2022. }
  2023.  
  2024. public OnPlayerEnterRaceCheckpoint(playerid)
  2025. {
  2026. return 1;
  2027. }
  2028.  
  2029. public OnPlayerLeaveRaceCheckpoint(playerid)
  2030. {
  2031. return 1;
  2032. }
  2033.  
  2034. public OnRconCommand(cmd[])
  2035. {
  2036. return 1;
  2037. }
  2038.  
  2039. public OnObjectMoved(objectid)
  2040. {
  2041. return 1;
  2042. }
  2043.  
  2044. public OnPlayerObjectMoved(playerid, objectid)
  2045. {
  2046. return 1;
  2047. }
  2048.  
  2049. public OnPlayerPickUpPickup(playerid, pickupid)
  2050. {
  2051. if ( pickupid == 0 ){
  2052. ShowMenuForPlayer(warehouse, playerid);
  2053. TogglePlayerControllable(playerid, 0);
  2054. }
  2055. if ( pickupid == 1 ){
  2056. SetPlayerPos(playerid,1062.2139,2080.0471,10.8203);
  2057. }
  2058. if ( pickupid == 2 ){
  2059. SetPlayerPos(playerid,1062.6241,2071.0715,10.8203);
  2060. }
  2061. if ( pickupid == 3 ){
  2062. if (dUserINT(PlayerName(playerid)).("job")==1){
  2063. ShowMenuForPlayer(job, playerid);
  2064. TogglePlayerControllable(playerid, 0);
  2065. }
  2066. }
  2067. if ( pickupid == 4 ){
  2068. if (dUserINT(PlayerName(playerid)).("job")==2){
  2069. ShowMenuForPlayer(job, playerid);
  2070. TogglePlayerControllable(playerid, 0);
  2071. }
  2072. }if ( pickupid == 5 ){
  2073. if (dUserINT(PlayerName(playerid)).("job")==3){
  2074. ShowMenuForPlayer(job, playerid);
  2075. TogglePlayerControllable(playerid, 0);
  2076. }
  2077. }
  2078. if ( pickupid == 6 ){
  2079. if (dUserINT(PlayerName(playerid)).("job")==4){
  2080. ShowMenuForPlayer(job, playerid);
  2081. TogglePlayerControllable(playerid, 0);
  2082. }
  2083. }
  2084. if ( pickupid == 7 ){
  2085. if (dUserINT(PlayerName(playerid)).("job")==5){
  2086. ShowMenuForPlayer(job, playerid);
  2087. TogglePlayerControllable(playerid, 0);
  2088. }
  2089. }
  2090. if ( pickupid == 8 ){
  2091. if (dUserINT(PlayerName(playerid)).("job")==6){
  2092. ShowMenuForPlayer(job, playerid);
  2093. TogglePlayerControllable(playerid, 0);
  2094. }
  2095. }
  2096. if ( pickupid == 9 ){
  2097. if (dUserINT(PlayerName(playerid)).("job")==7){
  2098. ShowMenuForPlayer(job, playerid);
  2099. TogglePlayerControllable(playerid, 0);
  2100. }
  2101. }
  2102. if ( pickupid == 10 ){
  2103. if (dUserINT(PlayerName(playerid)).("job")==8){
  2104. ShowMenuForPlayer(job, playerid);
  2105. TogglePlayerControllable(playerid, 0);
  2106. }
  2107. }
  2108. if ( pickupid == 11 ){
  2109. if (dUserINT(PlayerName(playerid)).("job")==5){
  2110. ShowMenuForPlayer(minitkn, playerid);
  2111. TogglePlayerControllable(playerid, 0);
  2112. }
  2113. }
  2114. return 1;
  2115. }
  2116.  
  2117. public OnPlayerSelectedMenuRow(playerid, row)
  2118. {
  2119. new Menu:current;
  2120. new string[256];
  2121. current = GetPlayerMenu(playerid);
  2122. if(current == warehouse)
  2123. {
  2124. switch(row)
  2125. {
  2126. case 0:{
  2127. SetPlayerArmour(playerid,100);
  2128. GivePlayerMoney(playerid,-200);
  2129. ShowMenuForPlayer(warehouse, playerid);
  2130. }
  2131. case 1:{
  2132. SetPlayerHealth(playerid,100);
  2133. GivePlayerMoney(playerid,-100);
  2134. ShowMenuForPlayer(warehouse, playerid);
  2135. }
  2136. case 2:{
  2137. GivePlayerWeapon(playerid,22,50);
  2138. GivePlayerMoney(playerid,-500);
  2139. ShowMenuForPlayer(warehouse, playerid);
  2140. }
  2141. case 3:{
  2142. SetPlayerArmour(playerid,100);
  2143. SetPlayerHealth(playerid,100);
  2144. GivePlayerWeapon(playerid,22,50);
  2145. GivePlayerMoney(playerid,-700);
  2146. ShowMenuForPlayer(warehouse, playerid);
  2147. }
  2148. case 4:{
  2149. HideMenuForPlayer(warehouse, playerid);
  2150. TogglePlayerControllable(playerid, 1);
  2151. }
  2152. }
  2153.  
  2154. }
  2155. if(current == job)
  2156. {
  2157. switch(row)
  2158. {
  2159. case 0:{
  2160. if (dUserINT(PlayerName(playerid)).("job")==1){
  2161. gTeam[playerid] = TEAM_POLIZIST;
  2162. SetPlayerColor(playerid, COLOR_GREEN);
  2163. SetPlayerSkin(playerid, 283);
  2164. ResetPlayerWeapons(playerid);
  2165. GivePlayerWeapon(playerid, 33, 500);
  2166. GivePlayerWeapon(playerid, 3, 500);
  2167. new name[MAX_PLAYER_NAME];
  2168. GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  2169. format(string, 256, "%s beginnt seinen Dienst als Polizist!", name);
  2170. SendClientMessageToAll(COLOR_FLBLUE, string);
  2171. ShowMenuForPlayer(job, playerid);
  2172.  
  2173. return 1;
  2174. }
  2175. if (dUserINT(PlayerName(playerid)).("job")==2){
  2176. gTeam[playerid] = TEAM_ADAC;
  2177. SetPlayerColor(playerid, COLOR_ORANGE);
  2178. SetPlayerSkin(playerid, 34);
  2179. new name[MAX_PLAYER_NAME];
  2180. GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  2181. format(string, 256, "%s beginnt seinen Dienst als Mechaniker!", name);
  2182. SendClientMessageToAll(COLOR_FLBLUE, string);
  2183. ShowMenuForPlayer(job, playerid);
  2184.  
  2185.  
  2186. return 1;
  2187. }
  2188. if (dUserINT(PlayerName(playerid)).("job")==3){
  2189. gTeam[playerid] = TEAM_FAHRSCHULE;
  2190. SetPlayerColor(playerid, COLOR_RED);
  2191. SetPlayerSkin(playerid, 147);
  2192. new name[MAX_PLAYER_NAME];
  2193. GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  2194. format(string, 256, "%s beginnt seinen Dienst als Fahrschullehrer!", name);
  2195. SendClientMessageToAll(COLOR_FLBLUE, string);
  2196. ShowMenuForPlayer(job, playerid);
  2197.  
  2198. return 1;
  2199. }
  2200. if (dUserINT(PlayerName(playerid)).("job")==4){
  2201. gTeam[playerid] = TEAM_AUTOHAUS;
  2202. SetPlayerColor(playerid, COLOR_PINK);
  2203. SetPlayerSkin(playerid, 187);
  2204. new name[MAX_PLAYER_NAME];
  2205. GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  2206. format(string, 256, "%s beginnt seinen Dienst als Autoverkäufer!", name);
  2207. SendClientMessageToAll(COLOR_FLBLUE, string);
  2208. ShowMenuForPlayer(job, playerid);
  2209.  
  2210. return 1;
  2211. }
  2212. if (dUserINT(PlayerName(playerid)).("job")==5){
  2213. gTeam[playerid] = TEAM_SPEDITION;
  2214. SetPlayerColor(playerid, COLOR_BLACK);
  2215. SetPlayerSkin(playerid, 261);
  2216. new name[MAX_PLAYER_NAME];
  2217. GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  2218. format(string, 256, "%s beginnt seinen Dienst als Spediteur!", name);
  2219. SendClientMessageToAll(COLOR_FLBLUE, string);
  2220. ShowMenuForPlayer(job, playerid);
  2221.  
  2222. return 1;
  2223. }
  2224. if (dUserINT(PlayerName(playerid)).("job")==6){
  2225. gTeam[playerid] = TEAM_KELLNER;
  2226. SetPlayerColor(playerid, COLOR_INDIGO);
  2227. SetPlayerSkin(playerid, 171);
  2228. new name[MAX_PLAYER_NAME];
  2229. GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  2230. format(string, 256, "%s beginnt seinen Dienst als Kellner!", name);
  2231. SendClientMessageToAll(COLOR_FLBLUE, string);
  2232. ShowMenuForPlayer(job, playerid);
  2233.  
  2234. return 1;
  2235. }
  2236. if (dUserINT(PlayerName(playerid)).("job")==7){
  2237. gTeam[playerid] = TEAM_GEBRAUCHT;
  2238. SetPlayerColor(playerid, COLOR_GOLD);
  2239. SetPlayerSkin(playerid, 123);
  2240. new name[MAX_PLAYER_NAME];
  2241. GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  2242. format(string, 256, "%s beginnt seinen Dienst als Gebrauchtwagenhändler!", name);
  2243. SendClientMessageToAll(COLOR_FLBLUE, string);
  2244. ShowMenuForPlayer(job, playerid);
  2245.  
  2246. return 1;
  2247. }
  2248. if (dUserINT(PlayerName(playerid)).("job")==8){
  2249. gTeam[playerid] = TEAM_SANI;
  2250. SetPlayerColor(playerid, COLOR_LIGHTBLUE);
  2251. SetPlayerSkin(playerid, 276);
  2252. new name[MAX_PLAYER_NAME];
  2253. GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  2254. format(string, 256, "%s beginnt seinen Dienst als Sanitäter", name);
  2255. SendClientMessageToAll(COLOR_FLBLUE, string);
  2256. ShowMenuForPlayer(job, playerid);
  2257.  
  2258. return 1;
  2259. }
  2260. }
  2261. case 1:{
  2262. if (dUserINT(PlayerName(playerid)).("job")==1){
  2263. SetPlayerSkin(playerid, dUserINT(PlayerName(playerid)).("skin"));
  2264. ResetPlayerWeapons(playerid);
  2265. gTeam[playerid] = TEAM_ARBEITSLOS;
  2266. SetPlayerColor(playerid, COLOR_GREY);
  2267. new name[MAX_PLAYER_NAME];
  2268. GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  2269. format(string, 256, "%s beendet seinen Dienst als Polizist!", name);
  2270. SendClientMessageToAll(COLOR_FLBLUE, string);
  2271. ShowMenuForPlayer(job, playerid);
  2272.  
  2273. return 1;
  2274. }
  2275. if (dUserINT(PlayerName(playerid)).("job")==2){
  2276. SetPlayerSkin(playerid, dUserINT(PlayerName(playerid)).("skin"));
  2277. gTeam[playerid] = TEAM_ARBEITSLOS;
  2278. SetPlayerColor(playerid, COLOR_GREY);
  2279. new name[MAX_PLAYER_NAME];
  2280. GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  2281. format(string, 256, "%s beendet seinen Dienst als Mechaniker!", name);
  2282. SendClientMessageToAll(COLOR_FLBLUE, string);
  2283. ShowMenuForPlayer(job, playerid);
  2284.  
  2285. return 1;
  2286. }
  2287. if (dUserINT(PlayerName(playerid)).("job")==3){
  2288.  
  2289. SetPlayerSkin(playerid, dUserINT(PlayerName(playerid)).("skin"));
  2290. gTeam[playerid] = TEAM_ARBEITSLOS;
  2291. SetPlayerColor(playerid, COLOR_GREY);
  2292. new name[MAX_PLAYER_NAME];
  2293. GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  2294. format(string, 256, "%s beendet seinen Dienst als Fahrschullehrer!", name);
  2295. SendClientMessageToAll(COLOR_FLBLUE, string);
  2296. ShowMenuForPlayer(job, playerid);
  2297.  
  2298. return 1;
  2299. }
  2300. if (dUserINT(PlayerName(playerid)).("job")==4){
  2301.  
  2302. SetPlayerSkin(playerid, dUserINT(PlayerName(playerid)).("skin"));
  2303. gTeam[playerid] = TEAM_ARBEITSLOS;
  2304. SetPlayerColor(playerid, COLOR_GREY);
  2305. new name[MAX_PLAYER_NAME];
  2306. GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  2307. format(string, 256, "%s beendet seinen Dienst als Autoverkäufer!", name);
  2308. SendClientMessageToAll(COLOR_FLBLUE, string);
  2309. ShowMenuForPlayer(job, playerid);
  2310.  
  2311. return 1;
  2312. }
  2313. if (dUserINT(PlayerName(playerid)).("job")==5){
  2314.  
  2315. SetPlayerSkin(playerid, dUserINT(PlayerName(playerid)).("skin"));
  2316. gTeam[playerid] = TEAM_ARBEITSLOS;
  2317. SetPlayerColor(playerid, COLOR_GREY);
  2318. new name[MAX_PLAYER_NAME];
  2319. GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  2320. format(string, 256, "%s beendet seinen Dienst als Spediteur!", name);
  2321. SendClientMessageToAll(COLOR_FLBLUE, string);
  2322. ShowMenuForPlayer(job, playerid);
  2323.  
  2324. return 1;
  2325. }
  2326. if (dUserINT(PlayerName(playerid)).("job")==6){
  2327.  
  2328. SetPlayerSkin(playerid, dUserINT(PlayerName(playerid)).("skin"));
  2329. gTeam[playerid] = TEAM_ARBEITSLOS;
  2330. SetPlayerColor(playerid, COLOR_GREY);
  2331. new name[MAX_PLAYER_NAME];
  2332. GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  2333. format(string, 256, "%s beendet seinen Dienst als Kellner!", name);
  2334. SendClientMessageToAll(COLOR_FLBLUE, string);
  2335. ShowMenuForPlayer(job, playerid);
  2336.  
  2337. return 1;
  2338. }
  2339. if (dUserINT(PlayerName(playerid)).("job")==7){
  2340.  
  2341. SetPlayerSkin(playerid, dUserINT(PlayerName(playerid)).("skin"));
  2342. gTeam[playerid] = TEAM_ARBEITSLOS;
  2343. SetPlayerColor(playerid, COLOR_GREY);
  2344. new name[MAX_PLAYER_NAME];
  2345. GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  2346. format(string, 256, "%s beendet seinen Dienst als Gebrauchtwagenhändler!", name);
  2347. SendClientMessageToAll(COLOR_FLBLUE, string);
  2348. ShowMenuForPlayer(job, playerid);
  2349.  
  2350. return 1;
  2351. }
  2352. if (dUserINT(PlayerName(playerid)).("job")==8){
  2353.  
  2354. SetPlayerSkin(playerid, dUserINT(PlayerName(playerid)).("skin"));
  2355. gTeam[playerid] = TEAM_ARBEITSLOS;
  2356. SetPlayerColor(playerid, COLOR_GREY);
  2357. new name[MAX_PLAYER_NAME];
  2358. GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  2359. format(string, 256, "%s beendet seinen Dienst als Sanitäter!", name);
  2360. SendClientMessageToAll(COLOR_FLBLUE, string);
  2361. ShowMenuForPlayer(job, playerid);
  2362.  
  2363. return 1;
  2364. }
  2365. }
  2366. case 2:{
  2367. HideMenuForPlayer(job, playerid);
  2368. TogglePlayerControllable(playerid, 1);
  2369. }
  2370. }
  2371. }
  2372. if(current == autokaufen)
  2373. {
  2374. switch(row)
  2375. {
  2376. case 0:{
  2377. if(IsPlayerInAnyVehicle(playerid)){
  2378. new kosten;
  2379. format(string, sizeof(string), "vehicle_%d.sav", GetPlayerVehicleID(playerid)); // Put the location of the file inside the (" ").
  2380. if (dini_Int(string,"verkauf")==1) {
  2381. dini_IntSet(string,"verkauf",(2));
  2382. kosten=dini_Int(string,"preis");
  2383. GivePlayerMoney(playerid,-kosten);
  2384. dini_Set(string,"Besitzer",PlayerName(playerid));
  2385. dini_Set(string,"Schluessel",PlayerName(playerid));
  2386. SendClientMessage(playerid,COLOR_RED,"Auto gekauft!");
  2387. TogglePlayerControllable(playerid,1);
  2388. }
  2389. }
  2390. }
  2391. case 1:{
  2392. HideMenuForPlayer(autokaufen, playerid);
  2393. RemovePlayerFromVehicle(playerid);
  2394. TogglePlayerControllable(playerid, 1);
  2395. }
  2396. }
  2397. }
  2398. if(current == minitkn)
  2399. {
  2400. switch(row)
  2401. {
  2402. case 0:{
  2403. DisplayTextForPlayer(playerid,"Steige in einen ~b~ Benson ~w~ und~n~hole die ~g~Oelfaesser~w~ von ~r~Fleischbergs", 5, 1, 2);
  2404. dUserSetINT(PlayerName(playerid)).("mini", 1);
  2405. TogglePlayerControllable(playerid, 1);
  2406. SetPlayerMapIcon( playerid, 1, -158.5363,-303.8827,1.4297, 51, 0 );
  2407.  
  2408. }
  2409. case 2:{
  2410. HideMenuForPlayer(warehouse, playerid);
  2411. TogglePlayerControllable(playerid, 1);
  2412. }
  2413. }
  2414.  
  2415. }
  2416. return 1;
  2417. }
  2418.  
  2419.  
  2420. public OnPlayerExitedMenu(playerid)
  2421. {
  2422. if(warehouse)
  2423. {
  2424. ShowMenuForPlayer(warehouse, playerid);
  2425. }
  2426. if(job)
  2427. {
  2428. ShowMenuForPlayer(job, playerid);
  2429. }
  2430. if(autokaufen)
  2431. {
  2432.  
  2433. }
  2434. if(minitkn)
  2435. {
  2436. ShowMenuForPlayer(minitkn, playerid);
  2437. }
  2438. return 1;
  2439. }
  2440.  
  2441.  
  2442.  
  2443. public checkit()
  2444. {
  2445. for(new i=0;i<GetMaxPlayers();i++)
  2446. {
  2447. if(IsPlayerConnected(i))
  2448. {
  2449. SetPlayerScore(i,GetPlayerMoney(i));
  2450. }
  2451. }
  2452. }
  2453.  
  2454.  
  2455.  
  2456. stock PlayerName(playerid)
  2457. {
  2458. new name[MAX_PLAYER_NAME];
  2459. GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  2460. return name;
  2461. }
  2462.  
  2463. //Check point type function
  2464. public getCheckpointType(playerID) {
  2465. return checkpointType[playerCheckpoint[playerID]];
  2466. }
  2467.  
  2468. //IsPlayerInArea function
  2469. public isPlayerInArea(playerID, Float:data[4])
  2470. {
  2471. new Float:X, Float:Y, Float:Z;
  2472. GetPlayerPos(playerID, X, Y, Z);
  2473. if(X >= data[0] && X <= data[2] && Y >= data[1] && Y <= data[3])
  2474. {
  2475. return 1;
  2476. }
  2477. return 0;
  2478. }
  2479.  
  2480. //Update the players checkpoint function
  2481. public checkpointUpdate()
  2482. {
  2483. for(new i=0; i<MAX_PLAYERS; i++)
  2484. {
  2485. if(IsPlayerConnected(i))
  2486. {
  2487. for(new j=0; j < MAX_POINTS; j++)
  2488. {
  2489. if(isPlayerInArea(i, checkCoords[j]))
  2490. {
  2491. if(playerCheckpoint[i]!=j)
  2492. {
  2493. DisablePlayerCheckpoint(i);
  2494. SetPlayerCheckpoint(i, checkpoints[j][0],checkpoints[j][1],checkpoints[j][2],checkpoints[j][3]);
  2495. playerCheckpoint[i] = j;
  2496. /*
  2497. Tankstellen = Blau
  2498. JobCP´s = Grün
  2499. Mautstellen = Rot
  2500. */
  2501. if(j>= 0 && j<= 15){
  2502. GameTextForPlayer(i,"~b~Tankstelle",10000,1);
  2503. }else if(j==16){
  2504. GameTextForPlayer(i,"~g~ADAC Werkstatt",10000,1);
  2505. }else if(j>= 17 && j<= 20){
  2506. GameTextForPlayer(i,"~r~Mautstelle",10000,1);
  2507. }else if(j==21){
  2508. GameTextForPlayer(i,"~g~Fleischberg",10000,1);
  2509. }
  2510. }
  2511. }
  2512. else
  2513. {
  2514. if(playerCheckpoint[i]==j)
  2515. {
  2516. DisablePlayerCheckpoint(i);
  2517. playerCheckpoint[i] = 999;
  2518. }
  2519. }
  2520. }
  2521. }
  2522. }
  2523. }
  2524.  
  2525. //Fuel check function
  2526. public CheckFuel(playerid)
  2527. {
  2528. for(new i=0;i<MAX_PLAYERS;i++)
  2529. {
  2530. if(IsPlayerConnected(i) == 1 && IsPlayerInAnyVehicle(i) == 1)
  2531. {
  2532. if(GetPlayerState(i) == 2)
  2533. {
  2534. new Vi;
  2535. Vi = GetPlayerVehicleID(i);
  2536. //Petrol[Vi]--;
  2537.  
  2538. if(Petrol[Vi] >= 1)
  2539. {
  2540. }
  2541. else
  2542. {
  2543. TogglePlayerControllable(i,0);
  2544. DisplayTextForPlayer(i,"~r~Tank leer!", 5, 1, 2);
  2545. if(Petrol[Vi] < 0)
  2546. {
  2547. Petrol[Vi] = 0;
  2548. }
  2549. }
  2550.  
  2551.  
  2552. }
  2553. }
  2554. }
  2555. }
  2556.  
  2557. //Refill fuel function
  2558. public FuelRefill(playerid)
  2559. {
  2560. new VID;
  2561. VID = GetPlayerVehicleID(playerid);
  2562. if(Petrol[VID] < AMOUNT)
  2563. {
  2564. new FillUp;
  2565. FillUp = AMOUNT - Petrol[VID];
  2566. if(GetPlayerMoney(playerid) >= FillUp)
  2567. {
  2568. Petrol[VID] +=FillUp;
  2569. new mess[64];
  2570. format(mess, sizeof(mess), "Du hast dein Auto nachgefüllt! (Prozent Nachgefüllt: %d )", FillUp);
  2571. SendClientMessage(playerid, COLOR_WHITE, mess);
  2572. GivePlayerMoney(playerid, -FillUp);
  2573. return 1;
  2574. }
  2575. else
  2576. {
  2577. SendClientMessage(playerid, COLOR_RED, "Du hast nicht genug Geld um dein Auto nachzufüllen!");
  2578. return 1;
  2579. }
  2580. }
  2581. else
  2582. {
  2583. SendClientMessage(playerid, COLOR_RED, "Dein Auto ist schon voll. Du musst es nicht nachfüllen!");
  2584. return 1;
  2585. }
  2586. }
  2587.  
  2588.  
  2589. public OnPlayerEnterCheckpoint(playerid)
  2590. {
  2591. printf("OnPlayerEnterCheckpoint(%d)", playerid);
  2592.  
  2593. if(playerCheckpoint[playerid]>=CP_STATION1 && playerCheckpoint[playerid]<=CP_STATION16)
  2594. {
  2595. if(IsPlayerInAnyVehicle(playerid))
  2596. {
  2597. DisplayTextForPlayer(playerid,"~b~Auto nachgetankt", 5, 1, 2);
  2598. FuelRefill(playerid);
  2599. }
  2600. else
  2601. {
  2602. SendClientMessage(playerid, COLOR_RED, "Benzin trinken macht Spaß oder?");
  2603. }
  2604. return 1;
  2605. }
  2606. if(playerCheckpoint[playerid]==CP_GANTMAUT1)
  2607. {
  2608. if(IsPlayerInAnyVehicle(playerid))
  2609. {
  2610. SendClientMessage(playerid, COLOR_GREEN, "------------Maut------------");
  2611. SendClientMessage(playerid, COLOR_YELLOW, "Ihnen wurden 10$ abgezogen!");
  2612. SendClientMessage(playerid, COLOR_GREEN, "------------Maut------------");
  2613. GivePlayerMoney(playerid,-10);
  2614. }
  2615. else
  2616. {
  2617. }
  2618. return 1;
  2619. }
  2620. if(playerCheckpoint[playerid]==CP_GANTMAUT2)
  2621. {
  2622. if(IsPlayerInAnyVehicle(playerid))
  2623. {
  2624. SendClientMessage(playerid, COLOR_GREEN, "------------Maut------------");
  2625. SendClientMessage(playerid, COLOR_YELLOW, "Ihnen wurden 10$ abgezogen!");
  2626. SendClientMessage(playerid, COLOR_GREEN, "------------Maut------------");
  2627. GivePlayerMoney(playerid,-10);
  2628. }
  2629. else
  2630. {
  2631. }
  2632. return 1;
  2633. }
  2634. if(playerCheckpoint[playerid]==CP_GANTMAUT3)
  2635. {
  2636. if(IsPlayerInAnyVehicle(playerid))
  2637. {
  2638. SendClientMessage(playerid, COLOR_GREEN, "------------Maut------------");
  2639. SendClientMessage(playerid, COLOR_YELLOW, "Ihnen wurden 10$ abgezogen!");
  2640. SendClientMessage(playerid, COLOR_GREEN, "------------Maut------------");
  2641. GivePlayerMoney(playerid,-10);
  2642. }
  2643. else
  2644. {
  2645. }
  2646. return 1;
  2647. }
  2648. if(playerCheckpoint[playerid]==CP_GANTMAUT4)
  2649. {
  2650. if(IsPlayerInAnyVehicle(playerid))
  2651. {
  2652. SendClientMessage(playerid, COLOR_GREEN, "------------Maut------------");
  2653. SendClientMessage(playerid, COLOR_YELLOW, "Ihnen wurden 10$ abgezogen!");
  2654. SendClientMessage(playerid, COLOR_GREEN, "------------Maut------------");
  2655. GivePlayerMoney(playerid,-10);
  2656. }
  2657. else
  2658. {
  2659. }
  2660. return 1;
  2661. }
  2662.  
  2663. if(playerCheckpoint[playerid] == CP_FLEISCHBERG)
  2664. {
  2665. if (dUserINT(PlayerName(playerid)).("mini")==1) {
  2666. if (GetVehicleModel(GetPlayerVehicleID(playerid))==499){
  2667. DisplayTextForPlayer(playerid,"Befuelle die ~g~Oelfaesser~w~~n~bei der ~r~Raffinerie", 5, 1, 2);
  2668. dUserSetINT(PlayerName(playerid)).("mini", 2);
  2669. RemovePlayerMapIcon( playerid, 1 );
  2670. SetPlayerMapIcon( playerid, 1, 279.8180,1412.8967,10.4225, 51, 0 );
  2671. }
  2672. }
  2673. if (dUserINT(PlayerName(playerid)).("mini")==4) {
  2674. if (GetVehicleModel(GetPlayerVehicleID(playerid))==499){
  2675. DisplayTextForPlayer(playerid,"Mission geschafft - ~r~ +500$", 5, 1, 2);
  2676. GivePlayerMoney(playerid,500);
  2677. dUserSetINT(PlayerName(playerid)).("mini", 0);
  2678. RemovePlayerMapIcon( playerid, 1 );
  2679. }
  2680. }
  2681. return 1;
  2682. }
  2683. if(playerCheckpoint[playerid] == CP_RAFFINERIE)
  2684. {
  2685. if (dUserINT(PlayerName(playerid)).("mini")==2) {
  2686. if (GetVehicleModel(GetPlayerVehicleID(playerid))==499){
  2687. DisplayTextForPlayer(playerid,"Bringe ~g~Oelfaesser~w~ zum ~r~Kraftwerk", 5, 1, 2);
  2688. dUserSetINT(PlayerName(playerid)).("mini", 3);
  2689. RemovePlayerMapIcon( playerid, 1 );
  2690. SetPlayerMapIcon( playerid, 1, 2491.6357,2772.6772,10.8000, 51, 0 );
  2691. }
  2692. }
  2693. return 1;
  2694. }
  2695. if(playerCheckpoint[playerid] == CP_KAAC)
  2696. {
  2697. if (dUserINT(PlayerName(playerid)).("mini")==3) {
  2698. if (GetVehicleModel(GetPlayerVehicleID(playerid))==499){
  2699. DisplayTextForPlayer(playerid,"Bringe die ~g~leerem Oelfaesser~w~~n~zurueck nach~r~Flschberg", 5, 1, 2);
  2700. dUserSetINT(PlayerName(playerid)).("mini", 4);
  2701. RemovePlayerMapIcon( playerid, 1 );
  2702. SetPlayerMapIcon( playerid, 1, -158.5363,-303.8827,1.4297, 51, 0 );
  2703. }
  2704. }
  2705. return 1;
  2706. }
  2707. return 1;
  2708. }
  2709.  
  2710.  
  2711. public UpdateSpeed(){
  2712. new Float:x,Float:y,Float:z;
  2713. new Float:distance,value,string[256];
  2714. for(new i=0; i<SLOTS; i++){
  2715. if(IsPlayerConnected(i)){
  2716. if(IsPlayerInAnyVehicle(i)){
  2717. new Vi;
  2718. Vi=GetPlayerVehicleID(i);
  2719. GetPlayerPos(i, x, y, z);
  2720. distance = floatsqroot(floatpower(floatabs(floatsub(x,SavePlayerPos[i][LastX])),2)+floatpower(floatabs(floatsub(y,SavePlayerPos[i][LastY])),2)+floatpower(floatabs(floatsub(z,SavePlayerPos[i][LastZ])),2));
  2721. value = floatround(distance * 3600);
  2722. kmstand[Vi]+=(distance/450); //früher 900
  2723. if (lastKm[Vi]*450.0+450.0 < kmstand[Vi]) {
  2724. lastKm[Vi]++;
  2725. Petrol[Vi]--;
  2726. }
  2727.  
  2728. new kmstandstring[256];
  2729. format(kmstandstring,sizeof(kmstandstring),"~g~%d",floatround(kmstand[Vi]));
  2730. if(UpdateSeconds > 1){
  2731. value = floatround(value / UpdateSeconds);
  2732. }
  2733.  
  2734.  
  2735. if(Petrol[Vi]<1){
  2736. format(string,sizeof(string),"~n~~n~~n~~n~~n~~n~",Petrol[Vi],floatround(value/1100));
  2737.  
  2738. }
  2739. if(Petrol[Vi] >= 1)
  2740. {
  2741. format(string,sizeof(string),"~n~~n~~n~~n~~n~~n~~y~ Tank: ~b~I~g~IIIIIIIII~n~~w~Tacho: %s KM~n~~r~%d Km/h~n~~n~",Kilometer[Vi],floatround(value/1100));
  2742. }
  2743.  
  2744. if(Petrol[Vi] >= 10)
  2745. {
  2746. format(string,sizeof(string),"~n~~n~~n~~n~~n~~n~~y~ Tank: ~g~I~b~I~g~IIIIIIII~n~~w~Tacho: %s KM~n~~r~%d Km/h~n~~n~",kmstandstring,floatround(value/1100));
  2747. }
  2748. if(Petrol[Vi] >= 20)
  2749. {
  2750. format(string,sizeof(string),"~n~~n~~n~~n~~n~~n~~y~ Tank: ~g~II~b~I~g~IIIIIII~n~~w~Tacho: %s KM~n~~r~%d Km/h~n~~n~",kmstandstring,floatround(value/1100));
  2751. }
  2752. if(Petrol[Vi] >= 30)
  2753. {
  2754. format(string,sizeof(string),"~n~~n~~n~~n~~n~~n~~y~ Tank: ~g~III~b~I~g~IIIIII~n~~w~Tacho: %s KM~n~~r~%d Km/h~n~~n~",kmstandstring,floatround(value/1100));
  2755. }
  2756. if(Petrol[Vi] >= 40)
  2757. {
  2758. format(string,sizeof(string),"~n~~n~~n~~n~~n~~n~~y~ Tank: ~g~IIII~b~I~g~IIIII~n~~w~Tacho: %s KM~n~~r~%d Km/h~n~~n~",kmstandstring,floatround(value/1100));
  2759. }
  2760. if(Petrol[Vi] >= 50)
  2761. {
  2762. format(string,sizeof(string),"~n~~n~~n~~n~~n~~n~~y~ Tank: ~g~IIIII~b~I~g~IIII~n~~w~Tacho: %s KM~n~~r~%d Km/h~n~~n~",kmstandstring,floatround(value/1100));
  2763. }
  2764.  
  2765. if(Petrol[Vi] >= 60)
  2766. {
  2767. format(string,sizeof(string),"~n~~n~~n~~n~~n~~n~~y~ Tank: ~g~IIIIII~b~I~g~III~n~~w~Tacho: %s KM~n~~r~%d Km/h~n~~n~",kmstandstring,floatround(value/1100));
  2768. }
  2769. if(Petrol[Vi] >= 70)
  2770. {
  2771. format(string,sizeof(string),"~n~~n~~n~~n~~n~~n~~y~ Tank: ~g~IIIIIII~b~I~g~II~n~~w~Tacho: %s KM~n~~r~%d Km/h~n~~n~",kmstandstring,floatround(value/1100));
  2772. }
  2773. if(Petrol[Vi] >= 80)
  2774. {
  2775. format(string,sizeof(string),"~n~~n~~n~~n~~n~~n~~y~ Tank: ~g~IIIIIIII~b~I~g~I~n~~w~Tacho: %s KM~n~~r~%d Km/h~n~~n~",kmstandstring,floatround(value/1100));
  2776. }
  2777. if(Petrol[Vi] >= 90)
  2778. {
  2779. format(string,sizeof(string),"~n~~n~~n~~n~~n~~n~~y~ Tank: ~g~IIIIIIIII~b~I~n~~w~Tacho: %s KM~n~~r~%d Km/h~n~~n~",kmstandstring,floatround(value/1100));
  2780. }
  2781.  
  2782. GameTextForPlayer(i, string, 1100, 5);
  2783. stest[i] = floatround(value/1600);
  2784.  
  2785. SavePlayerPos[i][LastX] = x;
  2786. SavePlayerPos[i][LastY] = y;
  2787. SavePlayerPos[i][LastZ] = z;
  2788. }
  2789. }
  2790. }
  2791. }
  2792. stock Jail(jailid)
  2793. {
  2794. SetPlayerInterior(jailid,10);
  2795. SetPlayerPos(jailid,223.2217,111.1841,999.0156);
  2796. }
  2797.  
  2798. stock Unjail(unjailid)
  2799. {
  2800. SetPlayerInterior(unjailid,0);
  2801. SetPlayerPos(unjailid,2287.1262,2429.4392,10.8203);
  2802. }
  2803.  
  2804. IsKeyJustDown(key, newkeys, oldkeys)
  2805. {
  2806. if((newkeys & key) && !(oldkeys & key)) return 1;
  2807. return 0;
  2808. }
  2809.  
  2810. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  2811. {
  2812. if(IsKeyJustDown(KEY_SECONDARY_ATTACK,newkeys,oldkeys)) {
  2813. if(IsPlayerInAnyVehicle(playerid)){
  2814. RemovePlayerFromVehicle(playerid);
  2815. TogglePlayerControllable(playerid,1);
  2816. }
  2817. }
  2818. }
  2819.  
  2820. // Abschlepp
  2821. GetVehicleWithinDistance( playerid, Float:x1, Float:y1, Float:z1, Float:dist, &vehic){
  2822. for(new i = 1; i < MAX_VEHICLES; i++){
  2823. if(GetVehicleModel(i) > 0){
  2824. if(GetPlayerVehicleID(playerid) != i ){
  2825. new Float:x, Float:y, Float:z;
  2826. new Float:x2, Float:y2, Float:z2;
  2827. GetVehiclePos(i, x, y, z);
  2828. x2 = x1 - x; y2 = y1 - y; z2 = z1 - z;
  2829. new Float:iDist = (x2*x2+y2*y2+z2*z2);
  2830. printf("Vehicle %d is %f", i, iDist);
  2831.  
  2832. if( iDist < dist){
  2833. vehic = i;
  2834. }
  2835. }
  2836. }
  2837. }
  2838. }
  2839.  
  2840.  
  2841. public Tutorial(playerid)
  2842. {
  2843. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  2844. SendClientMessage(playerid,COLOR_GREEN,"Autohaus:");
  2845. SendClientMessage(playerid,COLOR_GREY,"Im Autohaus kannst du Autos kaufen.");
  2846. SendClientMessage(playerid,COLOR_GREY,"Der Autoverkäufer bestellt Autos und stellt sie hier zum Verkauf");
  2847. SendClientMessage(playerid,COLOR_GREY,"wenn diese angekommen sind! Fahr zum Autohaus wenn du ein Auto benötigst");
  2848. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  2849. SetPlayerPos(playerid, 2200.2273,1392.1062,0.0);
  2850. SetPlayerCameraPos(playerid, 2173.7065,1332.3605,25.8203);
  2851. SetPlayerCameraLookAt(playerid, 2200.2273,1392.1062,10.8203);
  2852. SetTimerEx("Tutorial1", 15000, false, "i", playerid);
  2853. }
  2854.  
  2855. public Tutorial1(playerid)
  2856. {
  2857. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  2858. SendClientMessage(playerid,COLOR_GREEN,"Fahrschule:");
  2859. SendClientMessage(playerid,COLOR_GREY,"Ohne Führerschein kommst du nicht weit!");
  2860. SendClientMessage(playerid,COLOR_GREY,"Wenn du einen benötigst, dann frag einfach mal einen Fahrlehrer");
  2861. SendClientMessage(playerid,COLOR_GREY,"ob er für dich Zeit hat. Wenn du ohne Führerschein fährst, dann");
  2862. SendClientMessage(playerid,COLOR_GREY,"musst du wahrscheinlich ein Busgeld zahlen oder du kommst in den Knast!");
  2863. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  2864. SetPlayerCameraPos(playerid, 1141.6786,1403.6503,15.8203);
  2865. SetPlayerCameraLookAt(playerid, 1144.8002,1365.1594,10.7295);
  2866. SetPlayerPos(playerid, 1144.8002,1365.1594,0.0);
  2867. SetTimerEx("Tutorial2", 15000, false, "i", playerid);
  2868. }
  2869.  
  2870. public Tutorial2(playerid)
  2871. {
  2872. gTeam[playerid] = TEAM_ARBEITSLOS;
  2873. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  2874. SendClientMessage(playerid,COLOR_GREEN,"Flughafen:");
  2875. SendClientMessage(playerid,COLOR_GREY,"Du bist nur noch einen Schritt vorm neuen Leben entfernt!");
  2876. SendClientMessage(playerid,COLOR_GREY,"Registriere dich bitte mit /register [passwort]");
  2877. SendClientMessage(playerid,COLOR_RED,"Achtung: Die Admins können dein Passwort sehen! Wähle es also mit Bedacht");
  2878. SendClientMessage(playerid,COLOR_GREY,"Vielen Dank für das Interresse. Die Admins");
  2879. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  2880. SetPlayerCameraPos(playerid, 1678.5652,-2285.2195,2.9024);
  2881. SetPlayerCameraLookAt(playerid, 1643.5865,-2286.4431,-1.1976);
  2882. SetPlayerPos(playerid, 1643.5865,-2286.4431,-10.0);
  2883. }
  2884.  
  2885. stock PlayerPlaySoundEx(playerid,soundid) //By Sacky
  2886. {
  2887. new Float:x;
  2888. new Float:y;
  2889. new Float:z;
  2890. GetPlayerPos(playerid,x,y,z);
  2891. PlayerPlaySound(playerid,soundid,x,y,z);
  2892. }
  2893.  
  2894.  
  2895. public CheckVehicle(playerid)
  2896. {
  2897. if(IsPlayerInAnyVehicle(playerid))
  2898. {
  2899. new vehicle = GetPlayerVehicleID(playerid);
  2900. new Float:vHealth;
  2901. GetVehicleHealth(vehicle, vHealth);
  2902. if(vHealth >= 0 && vHealth < 300)
  2903. {
  2904. SendClientMessage(playerid,COLOR_RED,"Dein Wagen hat eine Autopanne");
  2905. TogglePlayerControllable(playerid,0);
  2906.  
  2907. new string[256];
  2908. format(string, sizeof(string), "vehicle_%d.sav", GetPlayerVehicleID(playerid)); // Put the location of the file inside the (" ").
  2909. if(dini_Exists(string))
  2910. {
  2911. dini_IntSet(string,"panne",1);
  2912. }
  2913. KillTimer(Vehicle[playerid]);
  2914. for(new i=0;i<MAX_PLAYERS;i++)
  2915. {
  2916. if(IsPlayerConnected(i))
  2917. {
  2918. PlayerPlaySoundEx(playerid,1140);
  2919. PlayerPlaySoundEx(playerid,1134);
  2920. }
  2921. }
  2922. return 1;
  2923. }
  2924. }
  2925. return 1;
  2926. }
  2927. public NewPos(playerid)
  2928. {
  2929. if(IsPlayerInAnyVehicle(playerid))
  2930. {
  2931. //Possaving
  2932. new vehicleid = GetPlayerVehicleID(playerid);
  2933. new string[256];
  2934. new kmsav[256];
  2935. new Float:x,Float:y,Float:z,Float:a;
  2936. GetVehiclePos(vehicleid,x,y,z);
  2937. GetVehicleZAngle(vehicleid,a);
  2938. format(string, sizeof(string),"vehicle_%d.sav",vehicleid);
  2939. if(dini_Exists(string)){
  2940. dini_FloatSet(string,"x",x);
  2941. dini_FloatSet(string,"y",y);
  2942. dini_FloatSet(string,"z",z);
  2943. dini_FloatSet(string,"a",a);
  2944. format(kmsav,sizeof(kmsav),"%f",kmstand[vehicleid]);
  2945. dini_Set(string,"kmstand",kmsav);
  2946. }
  2947. //Possaving
  2948. }
  2949. return 1;
  2950. }
  2951.  
  2952. public Betrunkenwerd(playerid)
  2953. {
  2954. SetTimerEx("Betrunken",100,false,"i",playerid);
  2955. SetTimerEx("Betrunkenaus",300000,false,"i",playerid);
  2956. return 1;
  2957. }
  2958. public Betrunken(playerid)
  2959. {
  2960. if (dUserINT(PlayerName(playerid)).("betrunken")==1){
  2961. ApplyAnimation(playerid,"PED","WALK_DRUNK",4.1,1,1,1,1,1);
  2962. SetTimerEx("Betrunken",100,false,"i",playerid);
  2963. }
  2964. return 1;
  2965. }
  2966. public Betrunkenaus(playerid)
  2967. {
  2968. ClearAnimations(playerid);
  2969. dUserSetINT(PlayerName(playerid)).("betrunken",0);
  2970. SetTimerEx("Betrunkenaus1",1000,false,"i",playerid);
  2971. return 1;
  2972. }
  2973. public Betrunkenaus1(playerid)
  2974. {
  2975. ClearAnimations(playerid);
  2976. return 1;
  2977. }
  2978.  
  2979. public Reparieren(playerid)
  2980. {
  2981. new string[256];
  2982. new vehicleid;
  2983. vehicleid = GetPlayerVehicleID(playerid);
  2984. format(string, sizeof(string), "vehicle_%d.sav", GetPlayerVehicleID(playerid)); // Put the location of the file inside the (" ").
  2985. dini_IntSet(string,"panne",(0));
  2986. SetVehicleHealth(vehicleid,1000.0);
  2987. SendClientMessage(playerid,COLOR_RED,"Auto repariert");
  2988. TogglePlayerControllable(playerid,1);
  2989. }
  2990.  
  2991. public SetPos(vehicleid)
  2992. {
  2993. new string[256];
  2994. new tmp[256];
  2995. format(string, sizeof(string),"vehicle_%d.sav",vehicleid);
  2996. new Float:x,Float:y,Float:z,Float:a;
  2997. tmp = dini_Get(string,"x");
  2998. x = strval(tmp);
  2999. tmp = dini_Get(string,"y");
  3000. y = strval(tmp);
  3001. tmp = dini_Get(string,"z");
  3002. z = strval(tmp);
  3003. tmp = dini_Get(string,"a");
  3004. a = strval(tmp);
  3005. SetVehiclePos(vehicleid, x, y, z);
  3006. SetVehicleZAngle(vehicleid, a);
  3007. }
  3008.  
  3009. public Whitelist(playerid)
  3010. {
  3011. if (gdebug >= 1){printf("DEBUG Whitelist Check(%d) (%s)", playerid);}
  3012. new playername2[MAX_PLAYER_NAME];
  3013. new storedcopname[64];
  3014. GetPlayerName(playerid, playername2, sizeof(playername2));
  3015. new File: file = fopen("Whitelist.cfg", io_read);
  3016. if (file)
  3017. {
  3018. new valtmp[MAX_PLAYER_NAME];
  3019. while (fread(file, valtmp) > 0)
  3020. {
  3021. strmid(storedcopname, valtmp, 0, strlen(playername2), 255);
  3022. if ((strcmp(storedcopname, playername2, true, strlen(playername2)) == 0) && (strlen(playername2) == strlen(storedcopname)))
  3023. {
  3024. fclose(file);
  3025. return 1;
  3026. }
  3027. }
  3028. }
  3029. fclose(file);
  3030. return 0;
  3031. }
  3032.  
  3033. public PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z)
  3034. {
  3035. if(IsPlayerConnected(playerid))
  3036. {
  3037. new Float:oldposx, Float:oldposy, Float:oldposz;
  3038. new Float:tempposx, Float:tempposy, Float:tempposz;
  3039. GetPlayerPos(playerid, oldposx, oldposy, oldposz);
  3040. tempposx = (oldposx -x);
  3041. tempposy = (oldposy -y);
  3042. tempposz = (oldposz -z);
  3043. if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
  3044. {
  3045. return 1;
  3046. }
  3047. }
  3048. return 0;
  3049. }
  3050.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement