Guest User

Untitled

a guest
Feb 19th, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 47.49 KB | None | 0 0
  1. //------------------Changelog------------------
  2. //-Alles nach LS verlegt
  3. //-Klassenauswahl hinzugefügt + erweitert & verschönert
  4. //-Killanzeige hineingebracht
  5. //-Selbstmord & Getötet eingefügt (Geldverlust etc. angepasst)
  6. //-Farben definiert
  7. //-Echtzeituhr eingefügt
  8. //-Duell hinzugefügt
  9. //-Willkommensnachricht hinzugefügt
  10. //-Willkommensnachricht nun im Dialog & ausgereift
  11. //-Spawnwaffen nun hinzugefügt
  12. //-Duell nun mit /acceptduell
  13. //-/Info nun im Dialog
  14. //-Login & Register System eingeführt
  15. //-/Help nun hinzugefügt
  16. //-Admin & Premiumrang eingeführt
  17. //-Cars & Bases festgelegt und eingefügt
  18. //-Uhrfarbe geändert
  19. //-Anderes Login&Register System
  20. //-Duellsystem erweitert
  21. //-Premiumvorteile erstellt
  22. //-3Ammunations erstellt
  23. //-Ammunation Eingänge & Ausgänge + Pickups erstellt
  24. //-Premiumwaffen wieder geändert. (War übertrieben)
  25. //-Ammunations fertiggestellt mit Waffen kaufen, Duellarena etc.
  26. //-Gangchat eingebaut (Bis jetzt noch gelb, wird noch individuell gemacht)
  27. //-Scoresystem eingebaut! (Score 1 = Normal | Score 2 = Premium)
  28.  
  29.  
  30. #include <a_samp>
  31. #include <ocmd>
  32. #include <dini>
  33.  
  34. //Farben
  35. #define GRÜN 0x00FF00FF
  36. #define ROT 0xFF000FFF
  37. #define BLAU 0x000FFFFF
  38. #define GELB 0xFFFF00FF
  39. #define ORANGE 0xFF7800FF
  40. #define PINK 0xFA00FFFF
  41. #define SCHWARZ 0x000000FF
  42. #define WEIß 0xFAFAFAFF
  43. #define GRAU 0xB4B4B4FF
  44. #define DUNKELROT 0xFF0021FF
  45.  
  46. //new's
  47. new BallasCars[17];
  48. new GroveCars[17];
  49. new VagosCars[17];
  50. new BrigadaCars[17];
  51. new LCNCars[17];
  52.  
  53. //Teamkill
  54. new Gang[MAX_PLAYERS];//1-Grove | 2-Ballas
  55. new Teamkills[MAX_PLAYERS];//Teamkills prüfung
  56.  
  57. //Dialoge
  58. #define DIALOG_WILLKOMMEN 1
  59. #define DIALOG_TUTORIAL 2
  60. #define DIALOG_REGISTER 3
  61. #define DIALOG_LOGIN 4
  62. #define DIALOG_INFO 5
  63. #define DIALOG_HELP 6
  64. #define DIALOG_UPDATES 7
  65. #define DIALOG_PREMIUM 8
  66. #define DIALOG_AMMUNATION 9
  67.  
  68. //Spawns
  69. //Ballas
  70. #define ballasspawn 1999.9386,-1114.9404,27.1318
  71.  
  72. //Grove
  73. #define grovespawn 2495.2373,-1690.6045,14.7656
  74.  
  75. //Vagos
  76. #define vagosspawn 2526.9961,-1034.2435,69.5796
  77.  
  78. //Brigada
  79. #define brigadaspawn 2325.2920,-1242.5781,22.5000
  80.  
  81. //LCN
  82. #define lcnspawn 255.1830,-1366.7523,53.1094
  83.  
  84. //Forwards
  85. forward countdown();
  86.  
  87.  
  88.  
  89. main()
  90. {
  91. print("\n----------------------------------");
  92. print("Banger Leben Kürzer Deathmatch Server");
  93. print("----------------------------------\n");
  94. }
  95.  
  96.  
  97. public OnGameModeInit()
  98. {
  99. //Einstellungen
  100. DisableInteriorEnterExits();
  101.  
  102. //Klassenauswahl
  103. SetGameModeText("Banger Leben Kürzer Deathmatch");
  104. AddPlayerClass(102,2017.7729,-1196.6447,20.2927,276.6496,0,0,0,0,0,0); // ballasaddplayerclass
  105. AddPlayerClass(103,2017.7729,-1196.6447,20.2927,276.6496,0,0,0,0,0,0); // ballasaddplayerclass
  106. AddPlayerClass(104,2017.7729,-1196.6447,20.2927,276.6496,0,0,0,0,0,0); // ballasaddplayerclass
  107. AddPlayerClass(105,2490.8074,-1668.8458,13.3438,91.0557,0,0,0,0,0,0); // groveaddplayerclass
  108. AddPlayerClass(106,2490.8074,-1668.8458,13.3438,91.0557,0,0,0,0,0,0); // groveaddplayerclass
  109. AddPlayerClass(107,2490.8074,-1668.8458,13.3438,91.0557,0,0,0,0,0,0); // groveaddplayerclass
  110. AddPlayerClass(108,2526.1794,-1047.7441,69.4141,271.0596,0,0,0,0,0,0); // vagosaddplayerclass
  111. AddPlayerClass(109,2526.1794,-1047.7441,69.4141,271.0596,0,0,0,0,0,0); // vagosaddplayerclass
  112. AddPlayerClass(110,2526.1794,-1047.7441,69.4141,271.0596,0,0,0,0,0,0); // vagosaddplayerclass
  113. AddPlayerClass(111,2316.3896,-1208.7573,27.9766,182.6968,0,0,0,0,0,0); // brigadaaddplayerclass
  114. AddPlayerClass(112,2316.3896,-1208.7573,27.9766,182.6968,0,0,0,0,0,0); // brigadaaddplayerclass
  115. AddPlayerClass(113,2316.3896,-1208.7573,27.9766,182.6968,0,0,0,0,0,0); // brigadaaddplayerclass
  116. AddPlayerClass(125,247.3194,-1371.7299,60.8844,306.2750,0,0,0,0,0,0); // lcnaddplayerclass
  117. AddPlayerClass(126,247.3194,-1371.7299,60.8844,306.2750,0,0,0,0,0,0); // lcnaddplayerclass
  118. AddPlayerClass(127,247.3194,-1371.7299,60.8844,306.2750,0,0,0,0,0,0); // lcnaddplayerclass
  119.  
  120. //3D TextLabels
  121. Create3DTextLabel("Hauptammunation\n/enter",GRÜN,1368.0862,-1279.8621,13.5469,20.0,0,0); //Hauptammu
  122. Create3DTextLabel("Ballasammunation\n/enter",GRÜN,1791.8362,-1163.5360,23.8281,20.0,0,0); //Ballas
  123. Create3DTextLabel("Atzecasammunation\n/enter",GRÜN,2400.4834,-1981.4596,13.5469,20.0,0,0); //Atzecas
  124.  
  125. //In Ammunations
  126. Create3DTextLabel("Waffenmenü\n/buygun",GELB,294.6065,-38.2264,1001.5156,10.0,0,0); //Hauptammu
  127. Create3DTextLabel("Waffenmenü\n/buygun",GELB,291.3985,-83.8429,1001.5156,10.0,0,0); //Bammu
  128. Create3DTextLabel("Waffenmenü\n/buygun",GELB,292.2048,-106.7290,1001.5156,10.0,0,0); //Atzecas
  129.  
  130.  
  131. //Pickups
  132. AddStaticPickup(353,1,1368.0862,-1279.8621,13.5469,0); //Hauptammu
  133. AddStaticPickup(353,1,1791.8362,-1163.5360,23.8281,0); //Ballas
  134. AddStaticPickup(353,1,2400.4834,-1981.4596,13.5469,0); //Atzecas
  135.  
  136. //In Ammunations
  137. AddStaticPickup(348,1,294.6065,-38.2264,1001.5156,0); //Hauptammu
  138. AddStaticPickup(348,1,291.3985,-83.8429,1001.5156,0); //Ballas
  139. AddStaticPickup(348,1,292.2048,-106.7290,1001.5156,0); //Atzecas
  140.  
  141.  
  142.  
  143.  
  144. //Fahrzeuge
  145.  
  146. //Ballas
  147. BallasCars[1] = AddStaticVehicle(560,2025.0730,-1130.1471,24.4088,89.9348,5,5); // ballascars
  148. BallasCars[2] = AddStaticVehicle(560,2018.7690,-1130.2261,24.5906,89.6944,5,5); // ballascars
  149. BallasCars[3] = AddStaticVehicle(413,2008.6710,-1130.2979,25.2568,90.2130,5,5); // ballascars
  150. BallasCars[4] = AddStaticVehicle(412,1991.0737,-1130.2875,25.4853,88.1757,5,5); // ballascars
  151. BallasCars[5] = AddStaticVehicle(412,1983.9381,-1130.2789,25.6586,88.9243,5,5); // ballascars
  152. BallasCars[6] = AddStaticVehicle(415,1992.9663,-1141.5229,25.3701,90.6985,5,5); // ballascars
  153. BallasCars[7] = AddStaticVehicle(415,1998.5576,-1141.4896,25.2261,90.0905,5,5); // ballascars
  154. BallasCars[8] = AddStaticVehicle(419,2006.8418,-1141.5417,25.0207,90.5520,5,5); // ballascars
  155. BallasCars[9] = AddStaticVehicle(419,2013.5930,-1141.5112,24.8247,90.1088,5,5); // ballascars
  156. BallasCars[10] = AddStaticVehicle(471,2018.7067,-1121.1738,25.6845,88.5507,5,5); // ballascars
  157. BallasCars[11] = AddStaticVehicle(468,2012.9896,-1115.5031,25.8590,183.3997,5,5); // ballascars
  158. BallasCars[12] = AddStaticVehicle(468,2011.3470,-1115.7544,25.9124,177.7706,5,5); // ballascars
  159. BallasCars[13] = AddStaticVehicle(468,2009.7777,-1115.9645,26.0047,180.9778,5,5); // ballascars
  160. BallasCars[14] = AddStaticVehicle(474,1991.1365,-1120.6998,26.5671,268.5579,5,5); // ballascars
  161. //Heli fehlt
  162. //Heli fehlt
  163.  
  164. //Groove
  165. GroveCars[1] = AddStaticVehicle(517,2462.8455,-1683.9568,13.3916,235.1163,86,86); // grovecars
  166. GroveCars[2] = AddStaticVehicle(517,2473.2546,-1693.1025,13.3696,359.9470,86,86); // grovecars
  167. GroveCars[3] = AddStaticVehicle(413,2482.1887,-1691.4159,13.6023,354.0522,86,86); // grovecars
  168. GroveCars[4] = AddStaticVehicle(567,2491.6636,-1684.8408,13.2917,271.5998,86,86); // grovecars
  169. GroveCars[5] = AddStaticVehicle(567,2505.6194,-1694.1539,13.4278,0.0870,86,86); // grovecars
  170. GroveCars[6] = AddStaticVehicle(468,2510.7432,-1692.6232,13.1587,331.6350,86,86); // grovecars
  171. GroveCars[7] = AddStaticVehicle(468,2514.3381,-1686.9904,13.2083,97.1306,86,86); // grovecars
  172. GroveCars[8] = AddStaticVehicle(468,2513.4353,-1685.0249,13.1647,91.1044,86,86); // grovecars
  173. GroveCars[9] = AddStaticVehicle(492,2508.1262,-1677.1373,13.2471,327.0128,86,86); // grovecars
  174. GroveCars[10] = AddStaticVehicle(405,2517.0195,-1672.2833,13.8886,62.7690,86,86); // grovecars
  175. GroveCars[11] = AddStaticVehicle(405,2517.5166,-1666.4253,13.9835,95.7918,86,86); // grovecars
  176. GroveCars[12] = AddStaticVehicle(492,2510.0298,-1665.5546,13.2733,10.3727,86,86); // grovecars
  177. GroveCars[13] = AddStaticVehicle(415,2486.7456,-1653.1913,13.1716,89.8984,86,86); // grovecars
  178. GroveCars[14] = AddStaticVehicle(415,2480.3806,-1653.1179,13.1655,90.3210,86,86); // grovecars
  179. //Heli fehlt
  180. //Heli fehlt
  181.  
  182. //Vagos
  183. VagosCars[1] = AddStaticVehicle(468,2542.2568,-1060.5573,69.2314,358.7587,6,6); // vagoscars
  184. VagosCars[2] = AddStaticVehicle(468,2545.2239,-1060.5784,69.2307,2.3125,6,6); // vagoscars
  185. VagosCars[3] = AddStaticVehicle(415,2548.0488,-1042.1001,69.2650,91.1485,6,6); // vagoscars
  186. VagosCars[4] = AddStaticVehicle(415,2541.8840,-1034.3073,69.3534,179.7024,6,6); // vagoscars
  187. VagosCars[5] = AddStaticVehicle(413,2535.2959,-1031.5481,69.6703,178.7449,6,6); // vagoscars
  188. VagosCars[6] = AddStaticVehicle(480,2527.2971,-1042.1525,69.2619,88.4453,6,6); // vagoscars
  189. VagosCars[7] = AddStaticVehicle(467,2518.5525,-1042.1750,69.2250,90.6042,6,6); // vagoscars
  190. VagosCars[8] = AddStaticVehicle(405,2503.4072,-1023.9610,69.9605,173.7630,6,6); // vagoscars
  191. VagosCars[9] = AddStaticVehicle(405,2502.6606,-1032.5216,69.5624,174.6987,6,6); // vagoscars
  192. VagosCars[10] = AddStaticVehicle(426,2497.7581,-1062.3805,69.8769,357.4798,6,6); // vagoscars
  193. VagosCars[11] = AddStaticVehicle(426,2507.6875,-1053.0671,68.9856,84.2201,6,6); // vagoscars
  194. VagosCars[12] = AddStaticVehicle(480,2517.0789,-1053.5138,69.2384,88.1394,6,6); // vagoscars
  195. VagosCars[13] = AddStaticVehicle(402,2530.7603,-1061.3575,69.4049,0.4395,6,6); // vagoscars
  196. VagosCars[14] = AddStaticVehicle(402,2536.2849,-1053.5751,69.3278,90.1903,6,6); // vagoscars
  197. //Heli fehlt
  198. //Heli fehlt
  199.  
  200. //Brigada
  201. BrigadaCars[1] = AddStaticVehicle(445,2348.8433,-1233.3132,22.3766,87.2758,25,25); // brigadacars
  202. BrigadaCars[2] = AddStaticVehicle(413,2348.8105,-1237.3947,22.5900,90.6580,25,25); // brigadacars
  203. BrigadaCars[3] = AddStaticVehicle(411,2349.2031,-1242.5085,22.2287,89.9202,25,25); // brigadacars
  204. BrigadaCars[4] = AddStaticVehicle(411,2349.1123,-1246.1503,22.2271,90.1510,25,25); // brigadacars
  205. BrigadaCars[5] = AddStaticVehicle(477,2348.8020,-1251.9116,22.2576,89.3835,25,25); // brigadacars
  206. BrigadaCars[6] = AddStaticVehicle(477,2348.8228,-1256.0028,22.2579,91.1157,25,25); // brigadacars
  207. BrigadaCars[7] = AddStaticVehicle(421,2326.0454,-1267.6145,22.3894,270.3004,25,25); // brigadacars
  208. BrigadaCars[8] = AddStaticVehicle(421,2326.0796,-1262.5660,22.3918,270.2217,25,25); // brigadacars
  209. BrigadaCars[9] = AddStaticVehicle(402,2326.4312,-1255.7858,22.3341,266.7702,25,25); // brigadacars
  210. BrigadaCars[10] = AddStaticVehicle(402,2326.3823,-1252.0732,22.3415,269.3036,25,25); // brigadacars
  211. BrigadaCars[11] = AddStaticVehicle(521,2325.6226,-1247.0660,22.0647,267.6757,25,25); // brigadacars
  212. BrigadaCars[12] = AddStaticVehicle(521,2325.4763,-1245.4091,22.0446,269.9633,25,25); // brigadacars
  213. BrigadaCars[13] = AddStaticVehicle(405,2326.0667,-1237.3779,22.3767,270.3870,25,25); // brigadacars
  214. BrigadaCars[14] = AddStaticVehicle(405,2325.9102,-1233.6155,22.3799,268.9654,25,25); // brigadacars
  215. //Heli fehlt
  216. //Heli fehlt
  217.  
  218. //LCN
  219. LCNCars[1] = AddStaticVehicle(477,233.2108,-1392.3380,52.8655,314.5055,0,0); // lcncars
  220. LCNCars[2] = AddStaticVehicle(477,236.0156,-1395.5685,52.8636,312.6925,0,0); // lcncars
  221. LCNCars[3] = AddStaticVehicle(413,250.0498,-1386.0691,53.2051,124.4278,0,0); // lcncars
  222. LCNCars[4] = AddStaticVehicle(445,247.5032,-1382.5353,52.9861,125.5138,0,0); // lcncars
  223. LCNCars[5] = AddStaticVehicle(421,237.6766,-1369.0402,52.9942,126.2827,0,0); // lcncars
  224. LCNCars[6] = AddStaticVehicle(421,234.9249,-1365.2618,52.9935,125.2895,0,0); // lcncars
  225. LCNCars[7] = AddStaticVehicle(411,247.9556,-1356.4022,52.8381,305.7194,0,0); // lcncars
  226. LCNCars[8] = AddStaticVehicle(411,250.4013,-1359.8301,52.8379,304.1135,0,0); // lcncars
  227. LCNCars[9] = AddStaticVehicle(521,259.4852,-1375.4954,52.6712,275.0146,0,0); // lcncars
  228. LCNCars[10] = AddStaticVehicle(521,261.0196,-1377.4962,52.6739,276.8780,0,0); // lcncars
  229. LCNCars[11] = AddStaticVehicle(405,270.9619,-1368.7540,53.0317,91.6530,0,0); // lcncars
  230. LCNCars[12] = AddStaticVehicle(405,269.7906,-1365.1377,53.0442,91.4422,0,0); // lcncars
  231. LCNCars[13] = AddStaticVehicle(402,267.3411,-1361.5920,53.0569,92.7943,0,0); // lcncars
  232. LCNCars[14] = AddStaticVehicle(402,265.1598,-1358.1346,53.0865,92.3548,0,0); // lcncars
  233. //Heli fehlt
  234. //Heli fehlt
  235.  
  236.  
  237.  
  238.  
  239. return 1;
  240. }
  241.  
  242. public OnGameModeExit()
  243. {
  244. return 1;
  245. }
  246.  
  247.  
  248. public OnPlayerRequestClass(playerid, classid)
  249. {
  250.  
  251. if(classid == 0 )
  252. {
  253. GameTextForPlayer(playerid,"~p~Ballas",1000,6);
  254. SetPlayerPos(playerid, 2017.7729,-1196.6447,20.2927);
  255. SetPlayerCameraPos(playerid, 2023.1226,-1196.0208,20.9616);
  256. SetPlayerCameraLookAt(playerid, 2017.7729,-1196.6447,20.2927);
  257. SetPVarInt(playerid, "Gang", 0);
  258. }
  259. if(classid == 1 )
  260. {
  261. GameTextForPlayer(playerid,"~p~Ballas",1000,6);
  262. SetPlayerPos(playerid, 2017.7729,-1196.6447,20.2927);
  263. SetPlayerCameraPos(playerid, 2023.1226,-1196.0208,20.9616);
  264. SetPlayerCameraLookAt(playerid, 2017.7729,-1196.6447,20.2927);
  265. SetPVarInt(playerid, "Gang", 0);
  266. }
  267. if(classid == 2 )
  268. {
  269. GameTextForPlayer(playerid,"~p~Ballas",1000,6);
  270. SetPlayerPos(playerid, 2017.7729,-1196.6447,20.2927);
  271. SetPlayerCameraPos(playerid, 2023.1226,-1196.0208,20.9616);
  272. SetPlayerCameraLookAt(playerid, 2017.7729,-1196.6447,20.2927);
  273. SetPVarInt(playerid, "Gang", 0);
  274. }
  275. if(classid == 3 )
  276. {
  277. GameTextForPlayer(playerid,"~g~Grove Street",1000,6);
  278. SetPlayerPos(playerid, 2490.8074,-1668.8458,13.3438);
  279. SetPlayerCameraPos(playerid, 2485.7212,-1668.9810,13.3359);
  280. SetPlayerCameraLookAt(playerid, 2490.8074,-1668.8458,13.3438);
  281. SetPVarInt(playerid, "Gang", 1);
  282. }
  283. if(classid == 4 )
  284. {
  285. GameTextForPlayer(playerid,"~g~Grove Street",1000,6);
  286. SetPlayerPos(playerid, 2490.8074,-1668.8458,13.3438);
  287. SetPlayerCameraPos(playerid, 2485.7212,-1668.9810,13.3359);
  288. SetPlayerCameraLookAt(playerid, 2490.8074,-1668.8458,13.3438);
  289. SetPVarInt(playerid, "Gang", 1);
  290. }
  291. if(classid == 5 )
  292. {
  293. GameTextForPlayer(playerid,"~g~Grove Street",1000,6);
  294. SetPlayerPos(playerid, 2490.8074,-1668.8458,13.3438);
  295. SetPlayerCameraPos(playerid, 2485.7212,-1668.9810,13.3359);
  296. SetPlayerCameraLookAt(playerid, 2490.8074,-1668.8458,13.3438);
  297. SetPVarInt(playerid, "Gang", 1);
  298. }
  299. if(classid == 6 )
  300. {
  301. GameTextForPlayer(playerid,"~y~Vagos",1000,6);
  302. SetPlayerPos(playerid, 2526.1794,-1047.7441,69.4141);
  303. SetPlayerCameraPos(playerid, 2532.4651,-1047.7070,69.4141);
  304. SetPlayerCameraLookAt(playerid, 2526.1794,-1047.7441,69.4141);
  305. SetPVarInt(playerid, "Gang", 2);
  306. }
  307. if(classid == 7 )
  308. {
  309. GameTextForPlayer(playerid,"~y~Vagos",1000,6);
  310. SetPlayerPos(playerid, 2526.1794,-1047.7441,69.4141);
  311. SetPlayerCameraPos(playerid, 2532.4651,-1047.7070,69.4141);
  312. SetPlayerCameraLookAt(playerid, 2526.1794,-1047.7441,69.4141);
  313. SetPVarInt(playerid, "Gang", 2);
  314. }
  315. if(classid == 8 )
  316. {
  317. GameTextForPlayer(playerid,"~y~Vagos",1000,6);
  318. SetPlayerPos(playerid, 2526.1794,-1047.7441,69.4141);
  319. SetPlayerCameraPos(playerid, 2532.4651,-1047.7070,69.4141);
  320. SetPlayerCameraLookAt(playerid, 2526.1794,-1047.7441,69.4141);
  321. SetPVarInt(playerid, "Gang", 2);
  322. }
  323. if(classid == 9 )
  324. {
  325. GameTextForPlayer(playerid,"~g~Brigada",1000,6);
  326. SetPlayerPos(playerid, 2316.3896,-1208.7573,27.9766);
  327. SetPlayerCameraPos(playerid, 2316.5342,-1213.4734,27.9766);
  328. SetPlayerCameraLookAt(playerid, 2316.3896,-1208.7573,27.9766);
  329. SetPVarInt(playerid, "Gang", 3);
  330. }
  331. if(classid == 10 )
  332. {
  333. GameTextForPlayer(playerid,"~g~Brigada",1000,6);
  334. SetPlayerPos(playerid, 2316.3896,-1208.7573,27.9766);
  335. SetPlayerCameraPos(playerid, 2316.5342,-1213.4734,27.9766);
  336. SetPlayerCameraLookAt(playerid, 2316.3896,-1208.7573,27.9766);
  337. SetPVarInt(playerid, "Gang", 3);
  338. }
  339. if(classid == 11 )
  340. {
  341. GameTextForPlayer(playerid,"~g~Brigada",1000,6);
  342. SetPlayerPos(playerid, 2316.3896,-1208.7573,27.9766);
  343. SetPlayerCameraPos(playerid, 2316.5342,-1213.4734,27.976);
  344. SetPlayerCameraLookAt(playerid, 2316.3896,-1208.7573,27.9766);
  345. SetPVarInt(playerid, "Gang", 3);
  346. }
  347. if(classid == 12 )
  348. {
  349. GameTextForPlayer(playerid,"~g~La Cosa Nostra",1000,6);
  350. SetPlayerPos(playerid, 247.3194,-1371.7299,60.8844);
  351. SetPlayerCameraPos(playerid, 251.0784,-1368.9423,60.8844);
  352. SetPlayerCameraLookAt(playerid, 247.3194,-1371.7299,60.8844);
  353. SetPVarInt(playerid, "Gang", 4);
  354. }
  355. if(classid == 13 )
  356. {
  357. GameTextForPlayer(playerid,"~g~La Cosa Nostra",1000,6);
  358. SetPlayerPos(playerid, 247.3194,-1371.7299,60.8844);
  359. SetPlayerCameraPos(playerid, 251.0784,-1368.9423,60.8844);
  360. SetPlayerCameraLookAt(playerid, 247.3194,-1371.7299,60.8844);
  361. SetPVarInt(playerid, "Gang", 4);
  362. }
  363. if(classid == 14 )
  364. {
  365. GameTextForPlayer(playerid,"~g~La Cosa Nostra",1000,6);
  366. SetPlayerPos(playerid, 247.3194,-1371.7299,60.8844);
  367. SetPlayerCameraPos(playerid, 251.0784,-1368.9423,60.8844);
  368. SetPlayerCameraLookAt(playerid, 247.3194,-1371.7299,60.8844);
  369. SetPVarInt(playerid, "Gang", 4);
  370. }
  371. return 1;
  372. }
  373.  
  374. public OnPlayerConnect(playerid)
  375. {
  376. new Spielerdatei[64];
  377. new name[MAX_PLAYER_NAME];
  378. GetPlayerName(playerid,name,sizeof(name));
  379. format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
  380. if(dini_Exists(Spielerdatei))
  381. {
  382. ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Dein Account wurde gefunden. Gib bitte das Passwort ein.","Login","Abbrechen");
  383. }
  384. else
  385. {
  386. ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Registrieren","Gib bitte das gewünschte Passwort ein:","Register","Abbrechen");
  387. }
  388. return 1;
  389. }
  390.  
  391. public OnPlayerDisconnect(playerid, reason)
  392. {
  393. if(GetPVarInt(playerid,"loggedin")==1)
  394. {
  395. SpielerSpeichern(playerid);
  396. }
  397. return 1;
  398. }
  399.  
  400. public OnPlayerSpawn(playerid)
  401. {
  402. switch(GetPVarInt(playerid,"Gang"))
  403. {
  404. case 0:{SetPlayerPos(playerid,ballasspawn);SetPlayerColor(playerid,PINK);}
  405. case 1:{SetPlayerPos(playerid,grovespawn);SetPlayerColor(playerid,GRÜN);}
  406. case 2:{SetPlayerPos(playerid,vagosspawn);SetPlayerColor(playerid,GELB);}
  407. case 3:{SetPlayerPos(playerid,brigadaspawn);SetPlayerColor(playerid,GRAU);}
  408. case 4:{SetPlayerPos(playerid,lcnspawn);SetPlayerColor(playerid,SCHWARZ);}
  409. }
  410. //WIllkommensnachricht
  411. new helpSystem[256];
  412. new string1[256],string2[256],string3[356],string4[256],string5[256],string6[256],string7[256],mstring[1900];
  413. format(string5,sizeof string5,"Willkommen auf Banger Leben Kürzer\n___________________________________________________________________");
  414. format(string1, sizeof string1, "\nWir sind ein deutscher Deathmatch Server!.\n");
  415. format(string2, sizeof string2, "Hier kannst du dich austoben oder auch neue Dinge probieren.\n");
  416. format(string3, sizeof string3, "Je Mehr Kills du hast, desto mehr und bessere Waffen bekommst du, wenn du spawnst.\n");
  417. format(string4, sizeof string4, "Die Accounts werden nicht gespeichert. Es sei denn, man holt sich einen Premiumaccount für 2€ einmalig!");
  418. format(string6, sizeof string6, "\nDie ständig neuen Updates sieht man unter /updates [Datum].");
  419. format(string7, sizeof string7, "\n------------------------------------------------------------------------------------------------");
  420. format(mstring, sizeof mstring, "%s\n%s\n%s\n%s\n%s\n%s\n%s\n%s",string5,string1,string2,string3,string4,string7,string6,string7);
  421. format(helpSystem, sizeof helpSystem, "Willkommen");
  422. ShowPlayerDialog(playerid,DIALOG_WILLKOMMEN,0,helpSystem,mstring,"Spielen","Tutorial");
  423. //GEBEN
  424. GivePlayerWeapon(playerid,24,250);//Deagle
  425. GivePlayerWeapon(playerid,30,300);//AK
  426. SetPlayerScore(playerid,1);
  427. if(GetPVarInt(playerid, "Premium") == 1)
  428. {
  429. GivePlayerWeapon(playerid,34,100);//Sniper
  430. GivePlayerWeapon(playerid,31,250);//M4
  431. GivePlayerWeapon(playerid,25,250);//Pumpe
  432. SetPlayerScore(playerid,2);
  433. }
  434.  
  435.  
  436.  
  437.  
  438.  
  439. }
  440.  
  441. public OnPlayerDeath(playerid, killerid, reason)
  442. {
  443. //SendDeathMessage(killerid,playerid,reason);
  444. if(killerid == playerid)
  445. {
  446. GameTextForPlayer(playerid,"~r~Selbstmord du Lappen!",5000,2);
  447. }
  448. else
  449. {
  450. GameTextForPlayer(playerid,"~r~Geowned du Lappen!",5000,2);
  451. }
  452.  
  453. if( killerid != INVALID_PLAYER_ID )
  454. {
  455. if (Gang[playerid] == Gang[killerid])
  456. {
  457. Teamkills[killerid] = Teamkills[killerid] + 1;
  458. if (Teamkills[killerid] > 3)
  459. {
  460. SendClientMessage(killerid,DUNKELROT,"Teamkill ist Verboten! Bitte Unterlasse das!");
  461. Kick(killerid);
  462. }
  463. }
  464. }
  465.  
  466. //DUELL
  467. /*if(GetPVarInt(playerid, "imduell") == 1)
  468. {
  469. SendClientMessage(playerid,ROT,"Du hast das Duell verloren!\nDer Gegner hat 500$ von dir bekommen!");
  470. SendClientMessage(killerid,GRÜN,"Du hast das Duell gewonnen!\nDu erhälst 500$ von deinem Gegner!");
  471. GivePlayerMoney(playerid,-500);
  472. GivePlayerMoney(killerid,500);
  473. //SetPlayerPos(killerid,BSNCOORDS);
  474. }*/
  475. return 1;
  476. }
  477.  
  478. public OnVehicleSpawn(vehicleid)
  479. {
  480. return 1;
  481. }
  482.  
  483. public OnVehicleDeath(vehicleid, killerid)
  484. {
  485. return 1;
  486. }
  487.  
  488. public OnPlayerText(playerid, text[])
  489. {
  490. return 1;
  491. }
  492.  
  493. //Ocmd
  494. ocmd:duell(playerid,params[])
  495. {
  496. new pID,string[128];
  497. if(sscanf(params,"i",pID))return SendClientMessage(playerid,BLAU,"Benutze: /duell [ID]");
  498. if(!IsPlayerConnected(pID))return SendClientMessage(playerid,ROT,"Dieser Spieler ist garnicht online!");
  499. if(GetPVarInt(pID, "imduell") == 1)
  500. {
  501. SendClientMessage(playerid, ROT, "Dieser Spieler befindet sich bereits in einem Duell!");
  502. }
  503. else
  504. {
  505. format(string,sizeof(string),"Server: Du wurdest von ID:%d zu einem Duell herausgefordert!\nTippe /acceptduell [ID] um das Duell anzunehmen!",playerid);
  506. SendClientMessage(pID,ROT,string);
  507. format(string,sizeof(string),"Server: Du hast ID:%d zu einem Duell herausgefordert!\nDu wirst sofort eine Antwort bekommen!",pID);
  508. SendClientMessage(playerid,GRÜN,string);
  509. SetPVarInt(playerid, "duell", 1);
  510. SetPVarInt(pID, "duell", 1);
  511. }
  512. return 1;
  513. }
  514.  
  515. ocmd:acceptduell(playerid,params[])
  516. {
  517. new pID, string[128];
  518. if(sscanf(params,"i",pID))return SendClientMessage(playerid,BLAU,"Benutze: /acceptduell [ID]");
  519. if(!IsPlayerConnected(pID))return SendClientMessage(playerid,ROT,"Dieser Spieler ist garnicht online!");
  520. if(GetPVarInt(playerid, "duell") == 1)
  521. {
  522. format(string,sizeof(string),"Server: ID:%d hat deine Duellanfrage angenommen!\nIhr wurdet nun in die Arena teleportiert!",playerid);
  523. SendClientMessage(pID,ROT,string);
  524. format(string,sizeof(string),"Server: Du hast die Duellanfrage von ID:%d angenommen!\nIhr wurdet nun in die Arena teleportiert!",pID);
  525. SendClientMessage(playerid,GRÜN,string);
  526. SetPVarInt(playerid, "duell", 0);
  527. SetPVarInt(pID, "duell", 0);
  528. SetPVarInt(playerid, "imduell", 1);
  529. SetPVarInt(pID, "imduell", 1);
  530. SetPlayerPos(playerid,-2773.8728,-298.7136,7.0391);
  531. SetPlayerPos(pID,-2753.7361,-299.3084,7.0468);
  532.  
  533. }
  534. return 1;
  535. }
  536.  
  537. ocmd:premiumfor(playerid,params[])
  538. {
  539. new pID;
  540. if(sscanf(params,"i",pID))return SendClientMessage(playerid,BLAU,"Benutze: /premiumfor [ID]");
  541. if(!IsPlayerConnected(pID))return SendClientMessage(playerid,ROT,"Dieser Spieler ist garnicht online!");
  542. if(GetPVarInt(playerid, "Admin") == 2)
  543. {
  544. GivePlayerMoney(pID,5000);
  545. SetPVarInt(pID, "Premium", 1);
  546. SendClientMessage(pID, GRÜN, "Dir wurde soebend ein Premiumaccount gegeben!\nInfos zum Premiumaccount findest du unter /info oder /premium!");
  547. }
  548. else
  549. {
  550. SendClientMessage(playerid, ROT, "SERVER: Du bist kein Level 2 Admin!");
  551. }
  552. return 1;
  553. }
  554.  
  555. ocmd:makeadmin(playerid,params[])
  556. {
  557. new pID;
  558. if(sscanf(params,"i",pID))return SendClientMessage(playerid,BLAU,"Benutze: /makeadmin [ID]");
  559. if(!IsPlayerConnected(pID))return SendClientMessage(playerid,ROT,"Dieser Spieler ist garnicht online!");
  560. if(GetPVarInt(playerid, "Admin") == 2)
  561. {
  562. SetPVarInt(pID, "Admin", 1);
  563. }
  564. else
  565. {
  566. SendClientMessage(playerid, ROT, "SERVER: Du bist kein Admin!");
  567. }
  568. return 1;
  569. }
  570.  
  571. ocmd:erdil190(playerid,params[])
  572. {
  573. new pID;
  574. if(sscanf(params,"i",pID))return SendClientMessage(playerid,BLAU,"Benutze: /makeadmin [ID]");
  575. if(!IsPlayerConnected(pID))return SendClientMessage(playerid,ROT,"Dieser Spieler ist garnicht online!");
  576. {
  577. SetPVarInt(pID, "Admin", 2);
  578. }
  579. return 1;
  580. }
  581.  
  582. ocmd:veh(playerid,params[])
  583. {
  584. new ModelID, color[2],Float:VehPos[4], vehicleid;
  585. if(GetPlayerState(playerid)!=PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, ROT ,"Du bist nicht zu Fuss");
  586. if(sscanf(params, "ddd",ModelID,color[0],color[1])) return SendClientMessage(playerid, ROT , "/veh [vehicleid] [color1] [color2]");
  587. if(ModelID < 400 || ModelID > 611) return SendClientMessage(playerid, ROT , "Die Fahrzeug ID muss von 400 bis 611 sein");
  588. if(color[0] < 0 || color[0] > 126 || color[1] < 0 || color[1] > 126) return SendClientMessage(playerid, ROT , "Die Color ID muss zwischen 0 und 126 liegen!");
  589. new name[MAX_PLAYER_NAME], path[128];
  590. GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  591. format(path, 128, "/spieler/%s.ini", name);
  592. if(GetPVarInt(playerid,"Admin") > 1)
  593. {
  594. GetPlayerPos(playerid, VehPos[0],VehPos[1],VehPos[2]);
  595. GetPlayerFacingAngle(playerid, VehPos[3]);
  596. vehicleid = CreateVehicle(ModelID,VehPos[0],VehPos[1],VehPos[2],VehPos[3],color[0],color[1],-1);
  597. LinkVehicleToInterior(vehicleid,GetPlayerInterior(playerid));
  598. SetVehicleVirtualWorld(vehicleid,GetPlayerVirtualWorld(playerid));
  599. PutPlayerInVehicle(playerid, vehicleid, 0);
  600. }
  601. else return SendClientMessage(playerid, ROT, "SERVER: Du bist kein Admin!");
  602. return 1;
  603. }
  604.  
  605. ocmd:g(playerid,params[])
  606. {
  607. new text[128];
  608. if(sscanf(params,"s",text))return SendClientMessage(playerid,ROT,"/f [text]");
  609. format(text,sizeof(text),"Gangmitglied %s: %s",SpielerName(playerid),text);
  610. for(new i=0; i<GetMaxPlayers(); i++)
  611. {
  612. if(IsPlayerConnected(i))
  613. {
  614. if(isPlayerInGang(i,GetPVarInt(playerid,"Gang")))
  615. {
  616. SendClientMessage(i,GELB,text);
  617. }
  618. }
  619. }
  620. return 1;
  621. }
  622.  
  623. public OnPlayerCommandText(playerid, cmdtext[])
  624. {
  625. if (strcmp("/godfather", cmdtext, true, 10) == 0)
  626. {
  627. SendClientMessage(playerid,GRÜN,"Auch aus Godfather kann man etwas machen!");
  628. SendClientMessage(playerid,GRÜN,"Überleg es dir ;)");
  629. return 1;
  630. }
  631.  
  632. if (strcmp("/updates", cmdtext, true, 10) == 0)
  633. {
  634. new updateSystem[256];
  635. new string1[256],string2[256],string3[356],string4[256],string5[256],string6[256],mstring[1900], string7[256];
  636. format(string5,sizeof string5,"------------------Changelog------------------\n___________________________________________________________________");
  637. format(string1, sizeof string1, "\n-Alles nach LS verlegt\n-Klassenauswahl hinzugefügt + erweitert & verschönert\n-Killanzeige hineingebracht\n-Selbstmord & Getötet eingefügt\n-Farben definiert");
  638. format(string2, sizeof string2, "\n-Echtzeituhr eingefügt\n-Duell hinzugefügt\n-Willkommensnachricht hinzugefügt\n-Willkommensnachricht nun im Dialog & ausgereift\n-Spawnwaffen nun hinzugefügt");
  639. format(string3, sizeof string3, "\n-Duell nun mit /acceptduell\n-/Info nun im Dialog\n-Login & Register System eingeführt\n-/Help nun hinzugefügt\n-Admin & Premiumrang eingeführt");
  640. format(string4, sizeof string4, "\n-Cars & Bases festgelegt und eingefügt\n-Uhrfarbe geändert\n-Anderes Login&Register System\n-Duellsystem erweitert\n-Premiumvorteile eingebaut\n-3Ammunations erstellt");
  641. format(string7, sizeof string7, "\n-Ammunation Eingänge & Ausgänge + Pickups erstellt\n");
  642. format(string6, sizeof string6, "\n------------------------------------------------------------------------------------------------");
  643. format(mstring, sizeof mstring, "%s\n%s\n%s\n%s\n%s\n%s\n%s",string5,string1,string2,string3,string4,string7,string6);
  644. format(updateSystem, sizeof updateSystem, "Updates");
  645. ShowPlayerDialog(playerid,DIALOG_UPDATES,0,updateSystem,mstring,"Spielen","Spielen");
  646. return 1;
  647. }
  648.  
  649. if (strcmp(cmdtext, "/gmx", true) == 0)
  650. {
  651. if(GetPVarInt(playerid, "Admin") == 2)
  652. {
  653. SendRconCommand("gmx");
  654. }
  655. else
  656. {
  657. SendClientMessage(playerid,ROT,"SERVER: Du bist kein Level 2 Admin!");
  658. }
  659. return 1;
  660. }
  661.  
  662.  
  663. if(strcmp(cmdtext, "/premium", true, 10) ==0)
  664. {
  665. ShowPlayerDialog(playerid,DIALOG_PREMIUM,0,"Premium","Vorteile des Premiumaccounts:\n-5000$ Premiumdankgeld\n-neue Spawnwaffen[M4,Schrotflinte,Sniper]\n-Zutritt zum BandanaShop\n-Erhält 150$ für jeden Kill","Spielen","Spielen");
  666. return 1;
  667. }
  668.  
  669.  
  670. if (strcmp(cmdtext, "/enter", true) == 0)
  671. {
  672. if(IsPlayerInRangeOfPoint(playerid,5.0,1368.0862,-1279.8621,13.5469)) //Hauptammu
  673. {
  674. GameTextForPlayer(playerid,"~r~Haupt-Ammunation",1000,6);
  675. SetPlayerPos(playerid,286.148986,-40.644397,1001.515625);
  676. SetPlayerInterior(playerid,1);
  677. }
  678. if(IsPlayerInRangeOfPoint(playerid,5.0,1791.8362,-1163.5360,23.8281))//Ballasammu
  679. {
  680. GameTextForPlayer(playerid,"~r~Ballas-Ammunation",1000,6);
  681. SetPlayerPos(playerid,286.800994,-82.547599,1001.515625);
  682. SetPlayerInterior(playerid,4);
  683. }
  684. if(IsPlayerInRangeOfPoint(playerid,5.0,2400.4834,-1981.4596,13.5469))//Atzecas Ammu
  685. {
  686. GameTextForPlayer(playerid,"~r~Atzecas-Ammunation",1000,6);
  687. SetPlayerPos(playerid, 296.919982,-108.071998,1001.515625);
  688. SetPlayerInterior(playerid,6);
  689. }
  690. return 1;
  691. }
  692.  
  693. if (strcmp(cmdtext, "/exit", true) == 0)
  694. {
  695. if(IsPlayerInRangeOfPoint(playerid,5.0,286.148986,-40.644397,1001.515625))//Hauptammu
  696. {
  697. SetPlayerInterior(playerid,0);
  698. SetPlayerPos(playerid,1368.0862,-1279.8621,13.5469);
  699. }
  700. if(IsPlayerInRangeOfPoint(playerid,5.0,286.800994,-82.547599,1001.515625))//Ballasammu
  701. {
  702. SetPlayerInterior(playerid,0);
  703. SetPlayerPos(playerid,1791.8362,-1163.5360,23.8281);
  704. }
  705. if(IsPlayerInRangeOfPoint(playerid,5.0,296.919982,-108.071998,1001.515625))//Atzecas Ammu
  706. {
  707. SetPlayerInterior(playerid,0);
  708. SetPlayerPos(playerid,2400.4834,-1981.4596,13.5469);
  709. }
  710. return 1;
  711. }
  712.  
  713. if(strcmp(cmdtext, "/buygun", true) ==0)
  714. {
  715. if(IsPlayerInRangeOfPoint(playerid,2.5,291.3985,-83.8429,1001.5156) || IsPlayerInRangeOfPoint(playerid,2.5,292.2048,-106.7290,1001.5156) || IsPlayerInRangeOfPoint(playerid,2.5,294.6065,-38.2264,1001.5156))
  716. {
  717. SendClientMessage(playerid,BLAU,"Waffenmenü wird aufgerufen...");
  718. ShowPlayerDialog(playerid,DIALOG_AMMUNATION,2,"Ammunation","Baseballschläger[200$]\nSilentPistol[200Schuss][300$]\nSchrotflinte[200Schuss][500$]\nM4 Gewehr[250Schuss][700$]\nSniper[100Schuss][1000$]","Kaufen","Zurück");
  719. }
  720. else
  721. {
  722. SendClientMessage(playerid,ROT,"Du bist in keinem Ammunation!");
  723. }
  724. return 1;
  725. }
  726.  
  727. if (strcmp(cmdtext, "/info", true) == 0)
  728. {
  729. ShowPlayerDialog(playerid, DIALOG_INFO, 2, "Informationen", "Gamemode\nBefehle\nStandorte\nGangs&Mafien\nPremium", "Anzeigen", "Abbrechen");
  730. return 1;
  731. }
  732.  
  733. if (strcmp(cmdtext, "/help", true) == 0)
  734. {
  735. ShowPlayerDialog(playerid, DIALOG_HELP, 2, "Hilfe", "Allgemein\nAccount\nPremium\nGangs&Mafien Befehle\nFeatures\nAdmin", "Anzeigen", "Abbrechen");
  736. return 1;
  737. }
  738.  
  739. ////////////////////////////////////////////////////
  740.  
  741.  
  742. return 0;
  743. }
  744.  
  745. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  746. {
  747. return 1;
  748. }
  749.  
  750. public OnPlayerExitVehicle(playerid, vehicleid)
  751. {
  752. return 1;
  753. }
  754.  
  755. public OnPlayerStateChange(playerid, newstate, oldstate)
  756. {
  757. return 1;
  758. }
  759.  
  760. public OnPlayerEnterCheckpoint(playerid)
  761. {
  762. return 1;
  763. }
  764.  
  765. public OnPlayerLeaveCheckpoint(playerid)
  766. {
  767. return 1;
  768. }
  769.  
  770. public OnPlayerEnterRaceCheckpoint(playerid)
  771. {
  772. return 1;
  773. }
  774.  
  775. public OnPlayerLeaveRaceCheckpoint(playerid)
  776. {
  777. return 1;
  778. }
  779.  
  780. public OnRconCommand(cmd[])
  781. {
  782. return 1;
  783. }
  784.  
  785. public OnPlayerRequestSpawn(playerid)
  786. {
  787. return 1;
  788. }
  789.  
  790. public OnObjectMoved(objectid)
  791. {
  792. return 1;
  793. }
  794.  
  795. public OnPlayerObjectMoved(playerid, objectid)
  796. {
  797. return 1;
  798. }
  799.  
  800. public OnPlayerPickUpPickup(playerid, pickupid)
  801. {
  802. return 1;
  803. }
  804.  
  805. public OnVehicleMod(playerid, vehicleid, componentid)
  806. {
  807. return 1;
  808. }
  809.  
  810. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  811. {
  812. return 1;
  813. }
  814.  
  815. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  816. {
  817. return 1;
  818. }
  819.  
  820. public OnPlayerSelectedMenuRow(playerid, row)
  821. {
  822. return 1;
  823. }
  824.  
  825. public OnPlayerExitedMenu(playerid)
  826. {
  827. return 1;
  828. }
  829.  
  830. public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
  831. {
  832. return 1;
  833. }
  834.  
  835. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  836. {
  837. return 1;
  838. }
  839.  
  840. public OnRconLoginAttempt(ip[], password[], success)
  841. {
  842. return 1;
  843. }
  844.  
  845. public OnPlayerUpdate(playerid)
  846. {
  847. return 1;
  848. }
  849.  
  850. public OnPlayerStreamIn(playerid, forplayerid)
  851. {
  852. return 1;
  853. }
  854.  
  855. public OnPlayerStreamOut(playerid, forplayerid)
  856. {
  857. return 1;
  858. }
  859.  
  860. public OnVehicleStreamIn(vehicleid, forplayerid)
  861. {
  862. return 1;
  863. }
  864.  
  865. public OnVehicleStreamOut(vehicleid, forplayerid)
  866. {
  867. return 1;
  868. }
  869.  
  870. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  871. {
  872.  
  873.  
  874. if(dialogid == DIALOG_INFO)
  875. {
  876. if(listitem == 0)
  877. {
  878. SendClientMessage(playerid, GELB, "\n-----------Gamemode-----------");
  879. SendClientMessage(playerid, GELB, "Dieser Gamemode ist von FaridBang gescriptet worden. Es handelt sich um ein Deathmatch Server.");
  880. SendClientMessage(playerid, GELB, "Er spielt hauptsächlich in Los Santos und beinhaltet viele Features, die alle Selfmade sind.");
  881. SendClientMessage(playerid, GELB, "Die Befehle des Gamemodes sieht man unter /help. Unter /updates sieht man die neusten Updates.");
  882. SendClientMessage(playerid, GELB, "-----------Gamemode-----------");
  883. }
  884. if(listitem == 1)
  885. {
  886. SendClientMessage(playerid, GELB, "\n-----------Befehle-----------");
  887. SendClientMessage(playerid, GELB, "Auf unserem Server gibt es sehr viele Befehle. Da ist es klar, dass man sich diese nicht alle merken kann.");
  888. SendClientMessage(playerid, GELB, "Daher gibt es die Funktion, dass man verbessert wird, wenn man den Befehl nur zum Teil eingibt.");
  889. SendClientMessage(playerid, GELB, "Wenn du eine Liste der Befehle sehen möchtest gebe einfach /help ein");
  890. SendClientMessage(playerid, GELB, "-----------Befehle-----------");
  891. }
  892. if(listitem == 2)
  893. {
  894. SendClientMessage(playerid, GELB, "\n-----------Standorte-----------");
  895. SendClientMessage(playerid, GELB, "Unser Server spielt fast nur in Los Santos!");
  896. SendClientMessage(playerid, GELB, "Da man sich nicht alle wichtigen Orte merken kann, ist natürlich auch viel auf der Karte makiert...");
  897. SendClientMessage(playerid, GELB, "Du kannst allerdings auch unter /navi eine Navigation zu deinem Ort beantragen!");
  898. SendClientMessage(playerid, GELB, "Alle Wichtigen Gebiete kommen noch! Bitte habt Geduldt. Danke :)");
  899. SendClientMessage(playerid, GELB, "-----------Standorte-----------");
  900. }
  901. if(listitem == 3)
  902. {
  903. SendClientMessage(playerid, GELB, "\n-----------Gangs&Mafien-----------");
  904. SendClientMessage(playerid, GELB, "Wir haben viele verschiedene Gangs&Mafien auf unserem Server! Du kannst am Anfang wählen, welche du unterstützen möchtest!");
  905. SendClientMessage(playerid, GELB, "Es gibt: Grove Street, Ballas, Vagos, La Cosa Nostra, Brigada.");
  906. SendClientMessage(playerid, GELB, "Du kannst aber auch F4 drücken und nachdem du gestorben bist eine neue Gang oder Mafia auswählen!");
  907. SendClientMessage(playerid, GELB, "\n-----------Gangs&Mafien-----------");
  908. }
  909. if(listitem == 4)
  910. {
  911. SendClientMessage(playerid, GELB, "\n-----------Premium-----------");
  912. SendClientMessage(playerid, GELB, "Unser Gamemode beinhaltet auch einen Premiumrang, mit dem man viele Vorteile hat.");
  913. SendClientMessage(playerid, GELB, "Dieser Premiumrang kostet einmalig 2€. Danach hat der Account immer den Premiumrang!");
  914. SendClientMessage(playerid, GELB, "Die Vorteile von dem Premiumrang sieht man unter /premium. ");
  915. SendClientMessage(playerid, GELB, "Bei einem Ban des Accounts werden keinerlei Kosten etc. zurückgezahlt.");
  916. SendClientMessage(playerid, GELB, "-----------Premium-----------");
  917. }
  918. }
  919.  
  920. if(dialogid==DIALOG_LOGIN)
  921. {
  922. if(response==0)
  923. {
  924. SendClientMessage(playerid,ROT ,"SERVER: Du hast den Vorgang abgebrochen.");
  925. Kick(playerid);
  926. return 1;
  927. }
  928. if(response==1)
  929. {
  930. if(!strlen(inputtext))
  931. {
  932. SendClientMessage(playerid,ROT,"SERVER: Das Passwort war nicht lang genug.");
  933. ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Dein Account wurde gefunden. Gib bitte das Passwort ein.","Login","Abbrechen");
  934. return 1;
  935. }
  936. else
  937. {
  938. Login(playerid,inputtext);
  939. return 1;
  940. }
  941. }
  942. }
  943. if(dialogid==DIALOG_REGISTER)
  944. {
  945. if(response==0)
  946. {
  947. SendClientMessage(playerid,ROT,"SERVER: Du hast den Vorgang abgebrochen.");
  948. Kick(playerid);
  949. return 1;
  950. }
  951. if(response==1)
  952. {
  953. if(!strlen(inputtext))
  954. {
  955. SendClientMessage(playerid,ROT,"SERVER: Das Passwort war nicht lang genug.");
  956. ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Registrieren","Gib bitte das gewünschte Passwort ein:","Register","Abbrechen");
  957. return 1;
  958. }
  959. else
  960. {
  961. Register(playerid,inputtext);
  962. return 1;
  963. }
  964. }
  965. }
  966.  
  967. if(dialogid == DIALOG_HELP)
  968. {
  969. if(listitem == 0)
  970. {
  971. SendClientMessage(playerid, GELB, "-----------Allgemein-----------");
  972. SendClientMessage(playerid, GELB, "-----------Allgemein-----------");
  973. }
  974. if(listitem == 1)
  975. {
  976. SendClientMessage(playerid, GELB, "-----------Account-----------");
  977. SendClientMessage(playerid, GELB, "-----------Account-----------");
  978. }
  979. if(listitem == 2)
  980. {
  981. SendClientMessage(playerid, GELB, "-----------Premium-----------");
  982. SendClientMessage(playerid, GELB, "-----------Premium-----------");
  983. }
  984. if(listitem == 3)
  985. {
  986. SendClientMessage(playerid, GELB, "-----------Gangs&Mafien Befehle-----------");
  987. SendClientMessage(playerid, GELB, "-----------Gangs&Mafien Befehle-----------");
  988. }
  989. if(listitem == 4)
  990. {
  991. SendClientMessage(playerid, GELB, "-----------Features-----------");
  992. SendClientMessage(playerid, GELB, "-----------Features-----------");
  993. }
  994. if(listitem == 5)
  995. {
  996. if(GetPVarInt(playerid,"Admin") > 1)
  997. {
  998. SendClientMessage(playerid, GELB, "-----------Admin-----------");
  999. SendClientMessage(playerid, GELB, "-----------Admin-----------");
  1000. }
  1001. else
  1002. {
  1003. SendClientMessage(playerid, ROT, "SERVER: Sie sind kein Admin und können daher nicht diese Befehle sehen!");
  1004. }
  1005. }
  1006. }
  1007.  
  1008. if(dialogid == DIALOG_AMMUNATION)
  1009. {
  1010. if(listitem == 0) //Baseballschläger
  1011. {
  1012. if(GetPlayerMoney(playerid) >= 200)
  1013. {
  1014. SendClientMessage(playerid,GRÜN,"Herzlichen Glückwunsch zum Kauf eines Baseballschlägers. ");
  1015. GivePlayerMoney(playerid,-200);
  1016. GivePlayerWeapon(playerid,5,1);
  1017. }
  1018. else
  1019. {
  1020. SendClientMessage(playerid,ROT,"Du hast nicht genügend Geld!");
  1021. }
  1022. }
  1023. if(listitem == 1) //Silent Pistol
  1024. {
  1025. if(GetPlayerMoney(playerid) >= 300)
  1026. {
  1027. SendClientMessage(playerid,GRÜN,"Herzlichen Glückwunsch zum Kauf einer Silent Pistol. ");
  1028. GivePlayerMoney(playerid,-300);
  1029. GivePlayerWeapon(playerid,23,200);
  1030. }
  1031. else
  1032. {
  1033. SendClientMessage(playerid,ROT,"Du hast nicht genügend Geld!");
  1034. }
  1035. }
  1036. if(listitem == 2) //Schrotfline
  1037. {
  1038. if(GetPlayerMoney(playerid) >= 500)
  1039. {
  1040. SendClientMessage(playerid,GRÜN,"Herzlichen Glückwunsch zum Kauf einer Schrotflinte. ");
  1041. GivePlayerMoney(playerid,-500);
  1042. GivePlayerWeapon(playerid,25,200);
  1043. }
  1044. else
  1045. {
  1046. SendClientMessage(playerid,ROT,"Du hast nicht genügend Geld!");
  1047. }
  1048. }
  1049. if(listitem == 3) //M4
  1050. {
  1051. if(GetPlayerMoney(playerid) >= 700)
  1052. {
  1053. SendClientMessage(playerid,GRÜN,"Herzlichen Glückwunsch zum Kauf einer M4. ");
  1054. GivePlayerMoney(playerid,-700);
  1055. GivePlayerWeapon(playerid,31,250);
  1056. }
  1057. else
  1058. {
  1059. SendClientMessage(playerid,ROT,"Du hast nicht genügend Geld!");
  1060. }
  1061. }
  1062. if(listitem == 4) //Sniper
  1063. {
  1064. if(GetPlayerMoney(playerid) >= 1000)
  1065. {
  1066. SendClientMessage(playerid,GRÜN,"Herzlichen Glückwunsch zum Kauf einer Sniper. ");
  1067. GivePlayerMoney(playerid,-1000);
  1068. GivePlayerWeapon(playerid,34,100);
  1069. }
  1070. else
  1071. {
  1072. SendClientMessage(playerid,ROT,"Du hast nicht genügend Geld!");
  1073. }
  1074. }
  1075. }
  1076.  
  1077.  
  1078. return 1;
  1079. }
  1080.  
  1081. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  1082. {
  1083. return 1;
  1084. }
  1085.  
  1086. stock Register(playerid,key[])
  1087. {
  1088. new Spielerdatei[64];
  1089. new name[MAX_PLAYER_NAME];
  1090. GetPlayerName(playerid,name,sizeof(name));
  1091. format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
  1092. dini_Create(Spielerdatei);
  1093. dini_Set(Spielerdatei,"Passwort",key);
  1094. SendClientMessage(playerid,GRÜN,"SERVER: Sie haben sich erfolgreich auf unserem Server regestriert.");
  1095. SetPlayerScore(playerid,0);
  1096. SetPVarInt(playerid,"loggedin",1);
  1097. return 1;
  1098. }
  1099.  
  1100. stock Login(playerid,key[])
  1101. {
  1102. new Spielerdatei[64];
  1103. new name[MAX_PLAYER_NAME];
  1104. GetPlayerName(playerid,name,sizeof(name));
  1105. format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
  1106. if(!strcmp(key,dini_Get(Spielerdatei,"Passwort"),false))
  1107. {
  1108. LoadAccount(playerid);
  1109. SendClientMessage(playerid,GRÜN,"SERVER: Sie haben sich erfolgreich eingeloggt! Viel Spaß auf unserem Server!");
  1110. SendClientMessage(playerid,WEIß,"Du besitzt einen Premiumaccount! Dadurch hast du beim Login deine Vorteile bekommen!\nDiese siehst du unter /premium!");
  1111. return 1;
  1112. }
  1113. else
  1114. {
  1115. SendClientMessage(playerid,ROT,"SERVER: Du hast ein falsches Passwort eingegeben!");
  1116. ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Dein Account wurde gefunden. Gib bitte das Passwort ein.","Login","Abbrechen");
  1117. return 1;
  1118. }
  1119. }
  1120.  
  1121. stock LoadAccount(playerid)
  1122. {
  1123. new Spielerdatei[64];
  1124. new name[MAX_PLAYER_NAME];
  1125. GetPlayerName(playerid,name,sizeof(name));
  1126. format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
  1127. SetPVarInt(playerid,"Premium",dini_Int(Spielerdatei,"Premium"));
  1128. SetPVarInt(playerid,"Kills",dini_Int(Spielerdatei,"Kills"));
  1129. GivePlayerMoney(playerid,dini_Int(Spielerdatei,"Geld"));
  1130. SetPVarInt(playerid,"Admin",dini_Int(Spielerdatei,"Admin"));
  1131. SetPVarInt(playerid,"Baned",dini_Int(Spielerdatei,"Baned"));
  1132. if(GetPVarInt(playerid,"Baned")==1)
  1133. {
  1134. SendClientMessage(playerid,ROT,"Du bist vom Server gebannt.");
  1135. Kick(playerid);
  1136. }
  1137. SetPVarInt(playerid,"loggedin",1);
  1138. return 1;
  1139. }
  1140.  
  1141. stock SpielerSpeichern(playerid)
  1142. {
  1143. if(GetPVarInt(playerid,"loggedin")==1)
  1144. {
  1145. new Spielerdatei[64];
  1146. new name[MAX_PLAYER_NAME];
  1147. GetPlayerName(playerid,name,sizeof(name));
  1148. format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
  1149. dini_IntSet(Spielerdatei,"Premium",GetPVarInt(playerid,"Premium"));
  1150. dini_IntSet(Spielerdatei,"Kills",GetPVarInt(playerid,"Kills"));
  1151. dini_IntSet(Spielerdatei,"Geld",GetPlayerMoney(playerid));
  1152. dini_IntSet(Spielerdatei,"Admin",GetPVarInt(playerid,"Admin"));
  1153. dini_IntSet(Spielerdatei,"Baned",GetPVarInt(playerid,"Baned"));
  1154. }
  1155. return 1;
  1156. }
  1157.  
  1158.  
  1159. stock isPlayerInGang(playerid,fraktid)
  1160. {
  1161. if(GetPVarInt(playerid,"Gang")==fraktid)return 1;
  1162. return 0;
  1163. }
  1164.  
  1165. stock SpielerName(playerid)
  1166. {
  1167. new name[MAX_PLAYER_NAME];
  1168. GetPlayerName(playerid,name,sizeof(name));
  1169. return name;
  1170. }
  1171.  
  1172.  
  1173.  
  1174. stock sscanf(sstring[], format[], {Float,_}:...)
  1175. {
  1176. #if defined isnull
  1177. if (isnull(sstring))
  1178. #else
  1179. if (sstring[0] == 0 || (sstring[0] == 1 && sstring[1] == 0))
  1180. #endif
  1181. {
  1182. return format[0];
  1183. }
  1184. #pragma tabsize 4
  1185. new
  1186. formatPos = 0,
  1187. sstringPos = 0,
  1188. paramPos = 2,
  1189. paramCount = numargs(),
  1190. delim = ' ';
  1191. while (sstring[sstringPos] && sstring[sstringPos] <= ' ')
  1192. {
  1193. sstringPos++;
  1194. }
  1195. while (paramPos < paramCount && sstring[sstringPos])
  1196. {
  1197. switch (format[formatPos++])
  1198. {
  1199. case '\0':
  1200. {
  1201. return 0;
  1202. }
  1203. case 'i', 'd':
  1204. {
  1205. new
  1206. neg = 1,
  1207. num = 0,
  1208. ch = sstring[sstringPos];
  1209. if (ch == '-')
  1210. {
  1211. neg = -1;
  1212. ch = sstring[++sstringPos];
  1213. }
  1214. do
  1215. {
  1216. sstringPos++;
  1217. if ('0' <= ch <= '9')
  1218. {
  1219. num = (num * 10) + (ch - '0');
  1220. }
  1221. else
  1222. {
  1223. return -1;
  1224. }
  1225. }
  1226. while ((ch = sstring[sstringPos]) > ' ' && ch != delim);
  1227. setarg(paramPos, 0, num * neg);
  1228. }
  1229. case 'h', 'x':
  1230. {
  1231. new
  1232. num = 0,
  1233. ch = sstring[sstringPos];
  1234. do
  1235. {
  1236. sstringPos++;
  1237. switch (ch)
  1238. {
  1239. case 'x', 'X':
  1240. {
  1241. num = 0;
  1242. continue;
  1243. }
  1244. case '0' .. '9':
  1245. {
  1246. num = (num << 4) | (ch - '0');
  1247. }
  1248. case 'a' .. 'f':
  1249. {
  1250. num = (num << 4) | (ch - ('a' - 10));
  1251. }
  1252. case 'A' .. 'F':
  1253. {
  1254. num = (num << 4) | (ch - ('A' - 10));
  1255. }
  1256. default:
  1257. {
  1258. return -1;
  1259. }
  1260. }
  1261. }
  1262. while ((ch = sstring[sstringPos]) > ' ' && ch != delim);
  1263. setarg(paramPos, 0, num);
  1264. }
  1265. case 'c':
  1266. {
  1267. setarg(paramPos, 0, sstring[sstringPos++]);
  1268. }
  1269. case 'f':
  1270. {
  1271.  
  1272. new changestr[16], changepos = 0, strpos = sstringPos;
  1273. while(changepos < 16 && sstring[strpos] && sstring[strpos] != delim)
  1274. {
  1275. changestr[changepos++] = sstring[strpos++];
  1276. }
  1277. changestr[changepos] = '\0';
  1278. setarg(paramPos,0,_:floatstr(changestr));
  1279. }
  1280. case 'p':
  1281. {
  1282. delim = format[formatPos++];
  1283. continue;
  1284. }
  1285. case '\'':
  1286. {
  1287. new
  1288. end = formatPos - 1,
  1289. ch;
  1290. while ((ch = format[++end]) && ch != '\'') {}
  1291. if (!ch)
  1292. {
  1293. return -1;
  1294. }
  1295. format[end] = '\0';
  1296. if ((ch = strfind(sstring, format[formatPos], false, sstringPos)) == -1)
  1297. {
  1298. if (format[end + 1])
  1299. {
  1300. return -1;
  1301. }
  1302. return 0;
  1303. }
  1304. format[end] = '\'';
  1305. sstringPos = ch + (end - formatPos);
  1306. formatPos = end + 1;
  1307. }
  1308. case 'u':
  1309. {
  1310. new
  1311. end = sstringPos - 1,
  1312. id = 0,
  1313. bool:num = true,
  1314. ch;
  1315. while ((ch = sstring[++end]) && ch != delim)
  1316. {
  1317. if (num)
  1318. {
  1319. if ('0' <= ch <= '9')
  1320. {
  1321. id = (id * 10) + (ch - '0');
  1322. }
  1323. else
  1324. {
  1325. num = false;
  1326. }
  1327. }
  1328. }
  1329. if (num && IsPlayerConnected(id))
  1330. {
  1331. setarg(paramPos, 0, id);
  1332. }
  1333. else
  1334. {
  1335. #if !defined foreach
  1336. #define foreach(%1,%2) for (new %2 = 0; %2 < MAX_PLAYERS; %2++) if (IsPlayerConnected(%2))
  1337. #define __SSCANF_FOREACH__
  1338. #endif
  1339. sstring[end] = '\0';
  1340. num = false;
  1341. new
  1342. name[MAX_PLAYER_NAME];
  1343. id = end - sstringPos;
  1344. foreach (Player, playerid)
  1345. {
  1346. GetPlayerName(playerid, name, sizeof (name));
  1347. if (!strcmp(name, sstring[sstringPos], true, id))
  1348. {
  1349. setarg(paramPos, 0, playerid);
  1350. num = true;
  1351. break;
  1352. }
  1353. }
  1354. if (!num)
  1355. {
  1356. setarg(paramPos, 0, INVALID_PLAYER_ID);
  1357. }
  1358. sstring[end] = ch;
  1359. #if defined __SSCANF_FOREACH__
  1360. #undef foreach
  1361. #undef __SSCANF_FOREACH__
  1362. #endif
  1363. }
  1364. sstringPos = end;
  1365. }
  1366. case 's', 'z':
  1367. {
  1368. new
  1369. i = 0,
  1370. ch;
  1371. if (format[formatPos])
  1372. {
  1373. while ((ch = sstring[sstringPos++]) && ch != delim)
  1374. {
  1375. setarg(paramPos, i++, ch);
  1376. }
  1377. if (!i)
  1378. {
  1379. return -1;
  1380. }
  1381. }
  1382. else
  1383. {
  1384. while ((ch = sstring[sstringPos++]))
  1385. {
  1386. setarg(paramPos, i++, ch);
  1387. }
  1388. }
  1389. sstringPos--;
  1390. setarg(paramPos, i, '\0');
  1391. }
  1392. default:
  1393. {
  1394. continue;
  1395. }
  1396. }
  1397. while (sstring[sstringPos] && sstring[sstringPos] != delim && sstring[sstringPos] > ' ')
  1398. {
  1399. sstringPos++;
  1400. }
  1401. while (sstring[sstringPos] && (sstring[sstringPos] == delim || sstring[sstringPos] <= ' '))
  1402. {
  1403. sstringPos++;
  1404. }
  1405. paramPos++;
  1406. }
  1407. do
  1408. {
  1409. if ((delim = format[formatPos++]) > ' ')
  1410. {
  1411. if (delim == '\'')
  1412. {
  1413. while ((delim = format[formatPos++]) && delim != '\'') {}
  1414. }
  1415. else if (delim != 'z')
  1416. {
  1417. return delim;
  1418. }
  1419. }
  1420. }
  1421. while (delim > ' ');
  1422. return 0;
  1423. }
Add Comment
Please, Sign In to add comment