Advertisement
Guest User

Untitled

a guest
Jun 1st, 2013
349
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 43.32 KB | None | 0 0
  1. #include <a_samp>
  2. #include <a_mysql>
  3. #include <sscanf2>
  4. #include <ocmd>
  5. #include <banfix>
  6.  
  7. #define SQL_HOST "127.0.0.1"
  8. #define SQL_USER "*****"
  9. #define SQL_PASS "*****"
  10. #define SQL_DATA "samp2569_gta"
  11.  
  12. #define DIALOG_REGISTER (1)
  13. #define DIALOG_LOGIN (2)
  14. //------------CBUG------------//
  15. #define RELEASED(%0) \
  16. (((newkeys & (%0)) != (%0)) && ((oldkeys & (%0)) == (%0))) //CBUG
  17. new PlayerUsingBug[MAX_PLAYERS];
  18. //------------CBUG------------//
  19. enum SpielerDaten
  20. {
  21. pName[MAX_PLAYER_NAME],
  22. pLevel,
  23. pGeld,
  24. pKills,
  25. pAdmin,
  26. pBanned,
  27. pTode,
  28. Float:pHealth
  29. }
  30. new SpielerInfo[MAX_PLAYERS][SpielerDaten];
  31. //---------TEXTDRAWS--------//
  32. new Text:Uhrzeit;
  33. new Text:Datum;
  34. new Text:Punkt;
  35.  
  36. //-------FARBEN--------//
  37. #define GRAU 0xAAAAAAFF
  38. #define ROT 0xD70000FF
  39. #define GRÜN 0x4BFF00FF
  40. #define GELB 0xFFF000FF
  41. #define TURKIS 0x00E4FFFF
  42. #define DUNKELGELB 0xFFBE00FF
  43. //--------DIALOG--------//
  44. #define DIALOG_ARENEN 3
  45. #define DIALOG_ONE 4
  46. //-----DM ARENEN--------//
  47. new one[5];
  48. new dm[8][MAX_PLAYERS];
  49. new dmcount[3];
  50. new Map[MAX_PLAYERS];
  51. new CBug;
  52. new exitHitTime[MAX_PLAYERS]=0;
  53. new ochat;
  54. new aduty[MAX_PLAYERS];
  55. new spam[MAX_PLAYERS];
  56. new spamtime[MAX_PLAYERS][3];
  57. new induell[MAX_PLAYERS];
  58. new duell[MAX_PLAYERS];
  59. new duellaktiv;
  60. new Float: deaglespawn[][] =
  61. {
  62. {1287.6841,-20.1482,1001.0156},
  63. {1253.7836,-59.7205,1002.4992},
  64. {254.7783,-20.6500,1001.0313},
  65. {1260.4913,4.5883,1008.2578}
  66. };
  67. new Float: onespawn[][] =
  68. {
  69. {768.1316,-42.7648,1000.6865},
  70. {768.1667,-31.4542,1000.6865}
  71. };
  72. new Float: dmspawn[][] =
  73. {
  74. {-1031.5803,1024.1006,1342.6691},
  75. {-1031.5469,1061.7961,1344.0907},
  76. {-1066.9907,1095.3293,1343.1355},
  77. {-1081.5830,1043.3613,1343.8267},
  78. {-1130.9723,1029.1573,1345.7253}
  79. };
  80. new Float: cbugspawn[][] =
  81. {
  82. {246.9400,161.8920,1003.0234},
  83. {220.7849,158.0745,1003.0234},
  84. {238.6372,188.6717,1005.0674},
  85. {247.8652,195.6229,1008.1719},
  86. {272.5904,174.6243,1007.6719}
  87. };
  88. //-----------Variabeln------------//
  89. new Adminrang[][] =
  90. {
  91. {"Spieler"},
  92. {"Supporter"},
  93. {"Moderator"},
  94. {"Administrator"},
  95. {"Serverleiter"}
  96. };
  97. main()
  98. {
  99. print("\n----------------------------------");
  100. print(" Blank Gamemode by your name here");
  101. print("----------------------------------\n");
  102. }
  103.  
  104. public OnGameModeInit()
  105. {
  106. ShowPlayerMarkers(0);
  107. DisableInteriorEnterExits();
  108. Connect_To_Database();
  109. SetGameModeText("Blank Script");
  110. AddPlayerClass(1, 2026.6464,1008.2010,10.8203,269.9072, 0, 0, 0, 0, 0, 0);
  111. AddPlayerClass(2, 2026.6464,1008.2010,10.8203,269.9072, 0, 0, 0, 0, 0, 0);
  112. AddPlayerClass(3, 2026.6464,1008.2010,10.8203,269.9072, 0, 0, 0, 0, 0, 0);
  113. AddPlayerClass(4, 2026.6464,1008.2010,10.8203,269.9072, 0, 0, 0, 0, 0, 0);
  114. AddPlayerClass(5, 2026.6464,1008.2010,10.8203,269.9072, 0, 0, 0, 0, 0, 0);
  115. AddPlayerClass(6, 2026.6464,1008.2010,10.8203,269.9072, 0, 0, 0, 0, 0, 0);
  116. AddPlayerClass(8, 2026.6464,1008.2010,10.8203,269.9072, 0, 0, 0, 0, 0, 0);
  117. AddPlayerClass(7, 2026.6464,1008.2010,10.8203,269.9072, 0, 0, 0, 0, 0, 0);
  118. AddPlayerClass(9, 2026.6464,1008.2010,10.8203,269.9072, 0, 0, 0, 0, 0, 0);
  119. AddPlayerClass(10, 2026.6464,1008.2010,10.8203,269.9072, 0, 0, 0, 0, 0, 0);
  120. AddStaticVehicle(411,1958.3783, 1343.1572, 15.3746, 269.1425,0,0);
  121. //---------TIMER-----------------//
  122. SetTimer("Uhrzeittimer",2003,true);
  123. SetTimer("Datumtimer",7004,true);
  124. //---------TEXTDRAWS-------------//
  125. Uhrzeit = TextDrawCreate(559.000000, 37.000000, "00:00");
  126. TextDrawBackgroundColor(Uhrzeit, 255);
  127. TextDrawFont(Uhrzeit, 1);
  128. TextDrawLetterSize(Uhrzeit, 0.339998, 1.100000);
  129. TextDrawColor(Uhrzeit, -1);
  130. TextDrawSetOutline(Uhrzeit, 0);
  131. TextDrawSetProportional(Uhrzeit, 1);
  132. TextDrawSetShadow(Uhrzeit, 1);
  133. TextDrawSetSelectable(Uhrzeit, 0);
  134. TextDrawSetSelectable(Uhrzeit, 0);
  135.  
  136. Datum = TextDrawCreate(556.000000, 25.000000, "23.12.2013");
  137. TextDrawBackgroundColor(Datum, 255);
  138. TextDrawFont(Datum, 1);
  139. TextDrawLetterSize(Datum, 0.229999, 1.200000);
  140. TextDrawColor(Datum, -1);
  141. TextDrawSetOutline(Datum, 0);
  142. TextDrawSetProportional(Datum, 1);
  143. TextDrawSetShadow(Datum, 1);
  144. TextDrawSetSelectable(Datum, 0);
  145.  
  146. Punkt = TextDrawCreate(542.000000, 32.000000, ".");
  147. TextDrawBackgroundColor(Punkt, 255);
  148. TextDrawFont(Punkt, 1);
  149. TextDrawLetterSize(Punkt, 6.809998, 0.799998);
  150. TextDrawColor(Punkt, -1);
  151. TextDrawSetOutline(Punkt, 0);
  152. TextDrawSetProportional(Punkt, 1);
  153. TextDrawSetShadow(Punkt, 1);
  154. TextDrawSetSelectable(Punkt, 0);
  155. return 1;
  156. }
  157.  
  158. public OnGameModeExit()
  159. {
  160. return 1;
  161. }
  162. public OnPlayerRequestClass(playerid, classid)
  163. {
  164. SetPlayerVirtualWorld(playerid,playerid+1);
  165. SetPlayerPos(playerid, 218.3037,-98.4747,1005.2578);
  166. SetPlayerFacingAngle(playerid,118.6603);
  167. SetPlayerInterior(playerid,15);
  168. SetPlayerCameraPos(playerid, 216.3459,-100.0261,1005.5578);
  169. SetPlayerCameraLookAt(playerid, 218.3037,-98.4747,1005.2578);
  170. return 1;
  171. }
  172.  
  173. public OnPlayerConnect(playerid)
  174. {
  175. exitHitTime[playerid] = 0;
  176. duell[playerid] = INVALID_PLAYER_ID;
  177. induell[playerid] = INVALID_PLAYER_ID;
  178. SetPlayerColor(playerid, 0xFFFFFF00);
  179. ResetAccount(playerid);
  180. ResetArenen(playerid);
  181. if(GetPVarInt(playerid,"Eingeloggt") == 0) //Als erstes fragen wir ab ob der Spieler schon eingeloggt ist oder nicht, damit wir nicht bei jeder Skin auswahl uns neu Einloggen müssen.
  182. {
  183. if(mysql_CheckAccount(playerid) == 0)//Wür überprüfen ob der Account Existiert, falls nicht Zeigen wir den Dialog zum Registrieren.
  184. {
  185. SendClientMessage(playerid, 0xFFFFFFFF,"________-> Willkommen auf auf meinem Server <-________");
  186. SendClientMessage(playerid, 0xFFFFFFFF,"Dein Account wurde nicht gefunden, bitte Registriere dich!");
  187. ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Register","Bitte Gib ein Passwort an:","Register","Exit");
  188. }
  189. else if(mysql_CheckAccount(playerid) == 1)//Falls doch zeigen wir den Dialog zum Einloggen.
  190. {
  191. SendClientMessage(playerid, 0xFFFFFFFF,"________-> Willkommen auf auf meinem Server <-________");
  192. SendClientMessage(playerid, 0xFFFFFFFF,"Dein Account wurde gefunden, bitte Log dich nun ein!");
  193. ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Bitte gib dein Passwort ein:","Login","Abbrechen");
  194. }
  195. }
  196. return 1;
  197. }
  198.  
  199. public OnPlayerDisconnect(playerid, reason)
  200. {
  201. SavePlayer(playerid);
  202. DeletePVar(playerid,"Eingeloggt");
  203. return 1;
  204. }
  205.  
  206. public OnPlayerSpawn(playerid)
  207. {
  208. SetPlayerHealth(playerid,100);
  209. SetPlayerInterior(playerid,0);
  210. SetPlayerVirtualWorld(playerid,0);
  211. TextDrawShowForAll(Punkt);
  212. TextDrawShowForAll(Datum);
  213. TextDrawShowForAll(Uhrzeit);
  214. if(dm[0][playerid] == 1)
  215. {
  216. new Random = random(sizeof(deaglespawn));
  217. SetPlayerInterior(playerid,18);
  218. SetPlayerPos(playerid,deaglespawn[Random][0],deaglespawn[Random][1],deaglespawn[Random][2]);
  219. SetPlayerHealth(playerid,100);
  220. ResetPlayerWeapons(playerid);
  221. GivePlayerWeapon(playerid,24,1337);
  222. }
  223. else if(dm[1][playerid] == 1)
  224. {
  225. new Random = random(sizeof(dmspawn));
  226. SetPlayerInterior(playerid,10);
  227. SetPlayerPos(playerid,dmspawn[Random][0],dmspawn[Random][1],dmspawn[Random][2]);
  228. ResetPlayerWeapons(playerid);
  229. GivePlayerWeapon(playerid,24,1337);
  230. GivePlayerWeapon(playerid,25,1337);
  231. GivePlayerWeapon(playerid,34,1337);
  232. }
  233. else if(dm[2][playerid] == 1)
  234. {
  235. new Random = random(sizeof(cbugspawn));
  236. SetPlayerInterior(playerid,3);
  237. SetPlayerPos(playerid,cbugspawn[Random][0],cbugspawn[Random][1],cbugspawn[Random][2]);
  238. ResetPlayerWeapons(playerid);
  239. GivePlayerWeapon(playerid,24,1337);
  240. GivePlayerWeapon(playerid,34,1337);
  241. }
  242. else if(dm[3][playerid] == 1)
  243. {
  244. new Random = random(sizeof(onespawn));
  245. SetPlayerInterior(playerid,6);
  246. SetPlayerPos(playerid,onespawn[Random][0],onespawn[Random][1],onespawn[Random][2]);
  247. SetPlayerVirtualWorld(playerid,2);
  248. ResetPlayerWeapons(playerid);
  249. GivePlayerWeapon(playerid,24,1337);
  250. }
  251. else if(dm[4][playerid] == 1)
  252. {
  253. new Random = random(sizeof(onespawn));
  254. SetPlayerInterior(playerid,6);
  255. SetPlayerPos(playerid,onespawn[Random][0],onespawn[Random][1],onespawn[Random][2]);
  256. SetPlayerVirtualWorld(playerid,3);
  257. ResetPlayerWeapons(playerid);
  258. GivePlayerWeapon(playerid,24,1337);
  259. }
  260. else if(dm[5][playerid] == 1)
  261. {
  262. new Random = random(sizeof(onespawn));
  263. SetPlayerInterior(playerid,6);
  264. SetPlayerPos(playerid,onespawn[Random][0],onespawn[Random][1],onespawn[Random][2]);
  265. SetPlayerVirtualWorld(playerid,4);
  266. ResetPlayerWeapons(playerid);
  267. GivePlayerWeapon(playerid,24,1337);
  268. }
  269. else if(dm[6][playerid] == 1)
  270. {
  271. new Random = random(sizeof(onespawn));
  272. SetPlayerInterior(playerid,6);
  273. SetPlayerPos(playerid,onespawn[Random][0],onespawn[Random][1],onespawn[Random][2]);
  274. SetPlayerVirtualWorld(playerid,5);
  275. ResetPlayerWeapons(playerid);
  276. GivePlayerWeapon(playerid,24,1337);
  277. }
  278. else if(dm[7][playerid] == 1)
  279. {
  280. new Random = random(sizeof(onespawn));
  281. SetPlayerInterior(playerid,6);
  282. SetPlayerPos(playerid,onespawn[Random][0],onespawn[Random][1],onespawn[Random][2]);
  283. SetPlayerVirtualWorld(playerid,6);
  284. ResetPlayerWeapons(playerid);
  285. GivePlayerWeapon(playerid,24,1337);
  286. }
  287. return 1;
  288. }
  289.  
  290. public OnPlayerDeath(playerid, killerid, reason)
  291. {
  292. new str[128];
  293. SendDeathMessage(killerid,playerid,reason);
  294. SetPlayerScore(killerid,SpielerInfo[killerid][pLevel]++);
  295. SpielerInfo[killerid][pGeld] += 250;
  296. GivePlayerMoney(killerid, 250);
  297. ++SpielerInfo[killerid][pKills];
  298. ++SpielerInfo[playerid][pTode];
  299. if(duell[playerid] != INVALID_PLAYER_ID || duell[killerid] != INVALID_PLAYER_ID)
  300. {
  301. format(str,128,"{FFBE00}[DUELL]{FEFEFE} Der Spieler %s hat das Duell gegen %s gewonnen!",PlayerName(killerid),PlayerName(playerid));
  302. SendClientMessageToAll(DUNKELGELB,str);
  303. SpawnPlayer(playerid);
  304. SpawnPlayer(killerid);
  305. induell[playerid] = INVALID_PLAYER_ID;
  306. induell[killerid] = INVALID_PLAYER_ID;
  307. duell[killerid] = INVALID_PLAYER_ID;
  308. duell[playerid] = INVALID_PLAYER_ID;
  309. duellaktiv = 0;
  310. }
  311. return 1;
  312. }
  313.  
  314. public OnVehicleSpawn(vehicleid)
  315. {
  316. return 1;
  317. }
  318.  
  319. public OnVehicleDeath(vehicleid, killerid)
  320. {
  321. return 1;
  322. }
  323. public OnPlayerText(playerid, text[])
  324. {
  325. new string[128],str[128];
  326. if(SpielerInfo[playerid][pAdmin] == 0)
  327. {
  328. if(ochat == 1){
  329. SendClientMessage(playerid,GRAU,"Der OOC Chat ist derzeit aus!");
  330. return 0 ;
  331. }
  332. }
  333. switch(SpielerInfo[playerid][pAdmin])
  334. {
  335. case 1:format(string, 128,"{E600FF}(( {FFFFFF}%s %s: %s {E600FF}))",Adminrang[SpielerInfo[playerid][pAdmin]],PlayerName(playerid),text);
  336. case 2:format(string, 128,"{19CF00}(( {FFFFFF}%s %s: %s {19CF00}))",Adminrang[SpielerInfo[playerid][pAdmin]],PlayerName(playerid),text);
  337. case 3:format(string, 128,"{0085FF}(( {FFFFFF}%s %s: %s {0085FF}))",Adminrang[SpielerInfo[playerid][pAdmin]],PlayerName(playerid),text);
  338. case 4:format(string, 128,"{E1FF00}(( {FFFFFF}%s %s: %s {E1FF00}))",Adminrang[SpielerInfo[playerid][pAdmin]],PlayerName(playerid),text);
  339. default:format(string, 128,"(( %s: %s ))",PlayerName(playerid),text);//wenn er unter 1 ist und über 4
  340. }
  341. SendClientMessageToAll(-1,string);
  342. spam[playerid] ++;
  343. switch (spam[playerid])
  344. {
  345. case 1:
  346. {
  347. spamtime[playerid][0]=gettime();
  348. }
  349. case 2:
  350. {
  351. if((gettime()-spamtime[playerid][0])<4)
  352. {
  353. format(str,128,"{D70000}[ANTISPAM]{FEFEFE} Bitte hoer auf zu spammen! 1/3 Verwarnungen");
  354. SendClientMessage(playerid,ROT,str);
  355. spamtime[playerid][1]=gettime();
  356. }
  357. else spam[playerid]=0;
  358. }
  359. case 3:
  360. {
  361. if((gettime()-spamtime[playerid][1])<4)
  362. {
  363. format(str,128,"{D70000}[ANTISPAM]{FEFEFE} Bitte hoer auf zu spammen! 2/3 Verwarnungen");
  364. SendClientMessage(playerid,ROT,str);
  365. spamtime[playerid][2]=gettime();
  366. }
  367. else spam[playerid]=0;
  368. }
  369. case 4:
  370. {
  371. if((gettime()-spamtime[playerid][2])<4)
  372. {
  373. format(str,128,"{D70000}[ANTISPAM] {FF0A00}%s wurde vom System gekickt, Grund: Spam",PlayerName(playerid));
  374. SendClientMessage(playerid,ROT,str);
  375. Kick(playerid);
  376. }
  377. }
  378. }
  379. return 0;
  380. }
  381. public OnPlayerCommandText(playerid, cmdtext[])
  382. {
  383. return 1;
  384. }
  385. public OnPlayerTakeDamage(playerid, issuerid, Float: amount, weaponid){
  386. new string[128],Float: HP;
  387. if(issuerid == INVALID_PLAYER_ID || playerid == INVALID_PLAYER_ID) return 1;
  388. PlayerPlaySound(issuerid,17802,0.0,0.0,0.0);
  389. format(string,sizeof(string)," -%.0f von %s",amount,PlayerName(issuerid));
  390. SetPlayerChatBubble(playerid, string, GRÜN, 70.0, 1000*3);
  391. exitHitTime[playerid] = gettime();
  392. if(aduty[playerid] == 1){
  393. format(string,128,"{00B9FF}[MELDUNG]{FEFEFE} Der Spieler {00FFD2}%s {FEFEFE}hat sie im Adminmodus angeschossen!",PlayerName(issuerid));
  394. SendClientMessage(playerid,-1,string);
  395. format(string,128,"{00B9FF}[MELDUNG]{FEFEFE}Du hast einen Admin im Dienst angeschossen! -25HP");
  396. SendClientMessage(issuerid,-1,string);
  397. GetPlayerHealth(issuerid,HP);
  398. SetPlayerHealth(issuerid,HP-25);
  399. }
  400. return 1;
  401. }
  402.  
  403. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  404. {
  405. return 1;
  406. }
  407.  
  408. public OnPlayerExitVehicle(playerid, vehicleid)
  409. {
  410. return 1;
  411. }
  412.  
  413. public OnPlayerStateChange(playerid, newstate, oldstate)
  414. {
  415. return 1;
  416. }
  417.  
  418. public OnPlayerEnterCheckpoint(playerid)
  419. {
  420. return 1;
  421. }
  422.  
  423. public OnPlayerLeaveCheckpoint(playerid)
  424. {
  425. return 1;
  426. }
  427.  
  428. public OnPlayerEnterRaceCheckpoint(playerid)
  429. {
  430. return 1;
  431. }
  432.  
  433. public OnPlayerLeaveRaceCheckpoint(playerid)
  434. {
  435. return 1;
  436. }
  437.  
  438. public OnRconCommand(cmd[])
  439. {
  440. return 1;
  441. }
  442.  
  443. public OnPlayerRequestSpawn(playerid)
  444. {
  445. return 1;
  446. }
  447.  
  448. public OnObjectMoved(objectid)
  449. {
  450. return 1;
  451. }
  452.  
  453. public OnPlayerObjectMoved(playerid, objectid)
  454. {
  455. return 1;
  456. }
  457.  
  458. public OnPlayerPickUpPickup(playerid, pickupid)
  459. {
  460. return 1;
  461. }
  462.  
  463. public OnVehicleMod(playerid, vehicleid, componentid)
  464. {
  465. return 1;
  466. }
  467.  
  468. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  469. {
  470. return 1;
  471. }
  472.  
  473. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  474. {
  475. return 1;
  476. }
  477.  
  478. public OnPlayerSelectedMenuRow(playerid, row)
  479. {
  480. return 1;
  481. }
  482.  
  483. public OnPlayerExitedMenu(playerid)
  484. {
  485. return 1;
  486. }
  487.  
  488. public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
  489. {
  490. return 1;
  491. }
  492.  
  493. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  494. {
  495. if(CBug == 0)
  496. {
  497. if(!IsPlayerInAnyVehicle(playerid))
  498. {
  499. if(IsBugWeapon(playerid) && RELEASED(KEY_FIRE)){
  500. PlayerUsingBug[playerid] = 1;
  501. SetTimerEx("BugTimeOut",800,0,"i",playerid);
  502. }
  503. if(PlayerUsingBug[playerid]==1 && newkeys != KEY_FIRE && newkeys & KEY_CROUCH){
  504. ApplyAnimation(playerid,"FAT","IDLE_tired",2.0,0,0,0,0,4000,1);
  505. PlayerUsingBug[playerid] = 0;
  506. SetPlayerChatBubble(playerid, "Verdacht auf C-Bug", 0xFF0000FF, 30.0, 4000);
  507. }
  508. }
  509. }
  510. return 1;
  511. }
  512.  
  513. public OnRconLoginAttempt(ip[], password[], success)
  514. {
  515. return 1;
  516. }
  517.  
  518. public OnPlayerUpdate(playerid)
  519. {
  520. return 1;
  521. }
  522.  
  523. public OnPlayerStreamIn(playerid, forplayerid)
  524. {
  525. return 1;
  526. }
  527.  
  528. public OnPlayerStreamOut(playerid, forplayerid)
  529. {
  530. return 1;
  531. }
  532.  
  533. public OnVehicleStreamIn(vehicleid, forplayerid)
  534. {
  535. return 1;
  536. }
  537.  
  538. public OnVehicleStreamOut(vehicleid, forplayerid)
  539. {
  540. return 1;
  541. }
  542.  
  543. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  544. {
  545. new str[264];
  546. switch(dialogid)
  547. {
  548. case DIALOG_REGISTER:
  549. {
  550. if(response)
  551. {
  552. if(strlen(inputtext) == 0)
  553. {
  554. ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Register","Das angegebene Passwort war zu Kurtz...\nBitte Registrier dich jetzt mit einem Passwort:","Register","Abbrechen");
  555. return 1;
  556. }
  557. else
  558. {
  559. CreateAccount(playerid, inputtext);
  560. SetPVarInt(playerid,"Eingeloggt",1);
  561. SpawnPlayer(playerid);
  562. return 1;
  563. }
  564. }
  565. else
  566. {
  567. Kick(playerid);
  568. }
  569. }
  570. case DIALOG_LOGIN:
  571. {
  572. if(response)
  573. {
  574. if(strlen(inputtext) == 0)
  575. {
  576. ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Das Angegebene Passwort war Falsch.\nBitte log dich jetzt mit dem richtigen Passwort ein:","Login","Abbrechen");
  577. return 1;
  578. }
  579. else
  580. {
  581. new SpielerName[MAX_PLAYER_NAME];
  582. GetPlayerName(playerid, SpielerName, MAX_PLAYER_NAME);
  583. if(!strcmp(inputtext, mysql_ReturnPasswort(SpielerName), true))
  584. {
  585. SetPVarInt(playerid,"Eingeloggt",1);
  586. LoadPlayer(playerid);
  587. SpawnPlayer(playerid);
  588. return 1;
  589. }
  590. else
  591. {
  592. ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Das war das Falsche Passwort.\nBitte log dich jetzt mit dem richtigen Passwort ein:","Login","Abbrechen");
  593. return 1;
  594. }
  595. }
  596. }
  597. else
  598. {
  599. Kick(playerid);
  600. }
  601. }
  602. case DIALOG_ARENEN:
  603. {
  604. if(response)
  605. {
  606. switch(listitem)
  607. {
  608. case 0:
  609. {
  610. new Random = random(sizeof(deaglespawn));
  611. format(str,264,"[INFO] %s hat die Deagle Arena (/arenen) betreten",PlayerName(playerid));
  612. SendClientMessageToAll(GRÜN,str);
  613. SetPlayerInterior(playerid,18);
  614. SetPlayerPos(playerid,deaglespawn[Random][0],deaglespawn[Random][1],deaglespawn[Random][2]);
  615. ResetPlayerWeapons(playerid);
  616. GivePlayerWeapon(playerid,24,1337);
  617. SetPlayerHealth(playerid,100);
  618. Map[playerid] = 1;
  619. dm[0][playerid] = 1;
  620. dmcount[0] += 1;
  621.  
  622. }
  623. case 1:
  624. {
  625. new Random = random(sizeof(dmspawn));
  626. format(str,264,"[INFO] %s hat die DM Arena (/arenen) betreten",PlayerName(playerid));
  627. SendClientMessageToAll(GRÜN,str);
  628. SetPlayerInterior(playerid,10);
  629. SetPlayerPos(playerid,dmspawn[Random][0],dmspawn[Random][1],dmspawn[Random][2]);
  630. ResetPlayerWeapons(playerid);
  631. GivePlayerWeapon(playerid,24,1337);
  632. GivePlayerWeapon(playerid,25,1337);
  633. GivePlayerWeapon(playerid,34,1337);
  634. SetPlayerHealth(playerid,100);
  635. Map[playerid] = 1;
  636. dm[1][playerid] = 1;
  637. dmcount[1] += 1;
  638.  
  639. }
  640. case 2:
  641. {
  642. new Random = random(sizeof(dmspawn));
  643. format(str,264,"[INFO] %s hat die CBug Arena (/arenen) betreten",PlayerName(playerid));
  644. SendClientMessageToAll(GRÜN,str);
  645. SetPlayerInterior(playerid,3);
  646. SetPlayerPos(playerid,cbugspawn[Random][0],cbugspawn[Random][1],cbugspawn[Random][2]);
  647. ResetPlayerWeapons(playerid);
  648. GivePlayerWeapon(playerid,24,1337);
  649. GivePlayerWeapon(playerid,34,1337);
  650. SetPlayerHealth(playerid,100);
  651. Map[playerid] = 1;
  652. dm[2][playerid] = 1;
  653. dmcount[2] += 1;
  654. CBug = 1;
  655.  
  656. }
  657. }
  658. }
  659. }
  660. case DIALOG_ONE:
  661. {
  662. if(response)
  663. {
  664. switch(listitem)
  665. {
  666. case 0:
  667. {
  668. new Random = random(sizeof(onespawn));
  669. if(one[0] == 2) return SendClientMessage(playerid,GELB,"Dieser Raum ist voll!");
  670. format(str,264,"[INFO] %s hat die 1o1 Arena (/1o1) Raum 1 betreten",PlayerName(playerid));
  671. SendClientMessageToAll(GRÜN,str);
  672. SetPlayerInterior(playerid,6);
  673. SetPlayerPos(playerid,onespawn[Random][0],onespawn[Random][1],onespawn[Random][2]);
  674. SetPlayerVirtualWorld(playerid,2);
  675. ResetPlayerWeapons(playerid);
  676. GivePlayerWeapon(playerid,24,1337);
  677. SetPlayerHealth(playerid,100);
  678. one[0] += 1;
  679. dm[3][playerid] = 1;
  680. Map[playerid] = 1;
  681.  
  682. }
  683. case 1:
  684. {
  685. new Random = random(sizeof(onespawn));
  686. if(one[1] == 2) return SendClientMessage(playerid,GELB,"Dieser Raum ist voll!");
  687. format(str,264,"[INFO] %s hat die 1o1 Arena (/1o1) Raum 2 betreten",PlayerName(playerid));
  688. SendClientMessageToAll(GRÜN,str);
  689. SetPlayerInterior(playerid,6);
  690. SetPlayerPos(playerid,onespawn[Random][0],onespawn[Random][1],onespawn[Random][2]);
  691. SetPlayerVirtualWorld(playerid,3);
  692. ResetPlayerWeapons(playerid);
  693. GivePlayerWeapon(playerid,24,1337);
  694. SetPlayerHealth(playerid,100);
  695. one[1] += 1;
  696. dm[4][playerid] = 1;
  697. Map[playerid] = 1;
  698. }
  699. case 2:
  700. {
  701. new Random = random(sizeof(onespawn));
  702. if(one[2] == 2) return SendClientMessage(playerid,GELB,"Dieser Raum ist voll!");
  703. format(str,264,"[INFO] %s hat die 1o1 Arena (/1o1) Raum 3 betreten",PlayerName(playerid));
  704. SendClientMessageToAll(GRÜN,str);
  705. SetPlayerInterior(playerid,6);
  706. SetPlayerPos(playerid,onespawn[Random][0],onespawn[Random][1],onespawn[Random][2]);
  707. SetPlayerVirtualWorld(playerid,4);
  708. ResetPlayerWeapons(playerid);
  709. GivePlayerWeapon(playerid,24,1337);
  710. SetPlayerHealth(playerid,100);
  711. one[2] += 1;
  712. dm[5][playerid] = 1;
  713. Map[playerid] = 1;
  714. }
  715. case 3:
  716. {
  717. new Random = random(sizeof(onespawn));
  718. if(one[3] == 2) return SendClientMessage(playerid,GELB,"Dieser Raum ist voll!");
  719. format(str,264,"[INFO] %s hat die 1o1 Arena (/1o1) Raum 4 betreten",PlayerName(playerid));
  720. SendClientMessageToAll(GRÜN,str);
  721. SetPlayerInterior(playerid,6);
  722. SetPlayerPos(playerid,onespawn[Random][0],onespawn[Random][1],onespawn[Random][2]);
  723. SetPlayerVirtualWorld(playerid,5);
  724. ResetPlayerWeapons(playerid);
  725. GivePlayerWeapon(playerid,24,1337);
  726. SetPlayerHealth(playerid,100);
  727. one[3] += 1;
  728. dm[6][playerid] = 1;
  729. Map[playerid] = 1;
  730. }
  731. case 4:
  732. {
  733. new Random = random(sizeof(onespawn));
  734. if(one[4] == 2) return SendClientMessage(playerid,GELB,"Dieser Raum ist voll!");
  735. format(str,264,"[INFO] %s hat die 1o1 Arena (/1o1) Raum 5 betreten",PlayerName(playerid));
  736. SendClientMessageToAll(GRÜN,str);
  737. SetPlayerInterior(playerid,6);
  738. SetPlayerPos(playerid,onespawn[Random][0],onespawn[Random][1],onespawn[Random][2]);
  739. SetPlayerVirtualWorld(playerid,6);
  740. ResetPlayerWeapons(playerid);
  741. GivePlayerWeapon(playerid,24,1337);
  742. SetPlayerHealth(playerid,100);
  743. one[4] += 1;
  744. dm[7][playerid] = 1;
  745. Map[playerid] = 1;
  746. }
  747. }
  748. }
  749. }
  750. }
  751. return 1;
  752. }
  753.  
  754. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  755. {
  756. return 1;
  757. }
  758. stock Connect_To_Database()
  759. {
  760. mysql_connect(SQL_HOST, SQL_USER, SQL_DATA, SQL_PASS); //Wir versuchen mit den Angaben die wir oben im Script gemacht haben uns mit dem MySQL Server zu verbinden.
  761. if(mysql_ping() == 1) //Es wird überprüft ob die Verbindung steht.
  762. {
  763. //Falls ja wird das in die Console geschrieben und die Funktion wird beendet.
  764. print("<-| [MYSQL] Verbindung zur Datenbank wurde erfolgreich hergestellt!");
  765. return true;
  766. }
  767. else
  768. {
  769. //Falls nicht wird erneut versucht eine verbindung aufzubauen.
  770. print("<-| [MYSQL] Es konnte keine Verbindung zur Datenbank hergestellt werden!");
  771. print("<-| [MYSQL] Es wird erneut versucht eine Verbindung zur Datenbank herzustellen!");
  772. mysql_connect(SQL_HOST, SQL_USER, SQL_DATA, SQL_PASS);
  773. if(mysql_ping() == 1)
  774. {
  775. print("<-| [MYSQL] Es konnte im 2 Versuch eine Verbindung hergestellt werden!");
  776. return true;
  777. }
  778. else
  779. {
  780. //Falls das auch nicht Funktioniert wird der Server zur Sicherheit wieder heruntergefahren.
  781. print("<-| [MYSQL] Es konnte keine Verbindung zur Datenbank hergestellt werden!");
  782. print("<-| [MYSQL] Der Server wird nun beendet!");
  783. SendRconCommand("exit");
  784. return true;
  785. }
  786. }
  787. }
  788. stock mysql_CheckAccount(playerid)
  789. {
  790. new Query[128],Name[MAX_PLAYER_NAME],count;
  791. GetPlayerName(playerid, Name, MAX_PLAYER_NAME);
  792. mysql_real_escape_string(Name, Name);
  793. format(Query, sizeof(Query), "SELECT * FROM `accounts` WHERE `Name` = '%s'", Name);
  794. mysql_query(Query);
  795. mysql_store_result();
  796. count = mysql_num_rows();
  797. mysql_free_result();
  798. return count;
  799. }
  800. stock CreateAccount(playerid, pass[])
  801. {
  802. new query[256],Name[MAX_PLAYER_NAME];
  803. GetPlayerName(playerid, Name, MAX_PLAYER_NAME);
  804. mysql_real_escape_string(Name,Name);
  805. mysql_real_escape_string(pass,pass);
  806. format(query, sizeof(query), "INSERT INTO `accounts` (`Name`, `Passwort`) VALUES ('%s', '%s')", Name, pass);
  807. mysql_query(query);
  808. return true;
  809. }
  810. stock mysql_ReturnPasswort(Name[])
  811. {
  812. new query[130], Get[130];
  813. mysql_real_escape_string(Name, Name);
  814. format(query, 128, "SELECT `passwort` FROM `accounts` WHERE `Name` = '%s'", Name);
  815. mysql_query(query);
  816. mysql_store_result();
  817. mysql_fetch_row(Get);
  818. mysql_free_result();
  819. return Get;
  820. }
  821. /*
  822. stock LoadPlayer(playerid)
  823. {
  824. if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid))
  825. {
  826. GetPlayerName(playerid, SpielerInfo[playerid][pName], MAX_PLAYER_NAME);
  827. SpielerInfo[playerid][pLevel] = mysql_GetInt("accounts", "Level", "Name", SpielerInfo[playerid][pName]);
  828. SpielerInfo[playerid][pGeld] = mysql_GetInt("accounts", "Geld", "Name", SpielerInfo[playerid][pName]);
  829. SpielerInfo[playerid][pKills] = mysql_GetInt("accounts", "Kills", "Name", SpielerInfo[playerid][pName]);
  830. SpielerInfo[playerid][pAdmin] = mysql_GetInt("accounts", "Adminlevel", "Name", SpielerInfo[playerid][pName]);
  831. SpielerInfo[playerid][pBanned] = mysql_GetInt("accounts", "Bann", "Name", SpielerInfo[playerid][pName]);
  832. SpielerInfo[playerid][pTode] = mysql_GetInt("accounts", "Tode", "Name", SpielerInfo[playerid][pName]);
  833. SetPlayerScore(playerid,SpielerInfo[playerid][pLevel]);
  834. GivePlayerMoney(playerid,SpielerInfo[playerid][pGeld]);
  835. new query[500];
  836. format(query,sizeof(query),"SELECT * FROM `accounts` WHERE `Name` = '%s'",PlayerName(playerid));
  837. mysql_store_result();
  838. mysql_query(query);
  839. SetPlayerScore(playerid,SpielerInfo[playerid][pLevel]);
  840. }
  841. if(SpielerInfo[playerid][pBanned] == 1)
  842. {
  843. SendClientMessage(playerid,ROT,"Dein Account ist gebannt!");
  844. Kick(playerid);
  845. }
  846. return 1;
  847. }*/
  848. stock LoadPlayer(playerid)
  849. {
  850. if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid)) // Ob der Spieler InGame ist und kein NPC / Bot
  851. {
  852.  
  853. new query[250],str[500];
  854. format(query,sizeof(query),"SELECT * FROM `accounts` WHERE `Name` = '%s'",PlayerName(playerid));
  855. mysql_query(query);
  856. mysql_store_result();
  857. while(mysql_fetch_row(str))
  858. {
  859. sscanf(str, "e<p<|>{i}s[24]s[128]iif>",SpielerInfo[playerid]);
  860. mysql_free_result();
  861. }
  862. }
  863. return 1;
  864. }
  865.  
  866. /*
  867. stock SavePlayer(playerid)
  868. {
  869. if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid))
  870. {
  871. if(GetPVarInt(playerid,"Eingeloggt") == 1)
  872. {
  873. new query[500];
  874. GetPlayerName(playerid, SpielerInfo[playerid][pName], MAX_PLAYER_NAME);
  875. mysql_SetInt("accounts", "Level", SpielerInfo[playerid][pLevel], "Name", SpielerInfo[playerid][pName]);
  876. mysql_SetInt("accounts", "Geld", SpielerInfo[playerid][pGeld], "Name", SpielerInfo[playerid][pName]);
  877. mysql_SetInt("accounts", "Kills", SpielerInfo[playerid][pKills], "Name", SpielerInfo[playerid][pName]);
  878. mysql_SetInt("accounts", "Tode", SpielerInfo[playerid][pTode], "Name", SpielerInfo[playerid][pName]);
  879. mysql_SetInt("accounts", "Adminlevel", SpielerInfo[playerid][pAdmin], "Name", SpielerInfo[playerid][pName]);
  880. mysql_SetInt("accounts", "Bann", SpielerInfo[playerid][pBanned], "Name", SpielerInfo[playerid][pName]);
  881. mysql_SetFloat("accounts", "Health", SpielerInfo[playerid][pHealth], "Name", SpielerInfo[playerid][pName]);
  882. format(query,sizeof(query),"UPDATE `accounts` SET `Level` = '%d', `Kills`= '%d', `Tode` = '%d', `Geld` = '%d', `Adminlevel`= '%d', `Health` = '%f' WHERE = '%s'",SpielerInfo[playerid][pLevel],SpielerInfo[playerid][pKills],SpielerInfo[playerid][pTode],SpielerInfo[playerid][pGeld],SpielerInfo[playerid][pAdmin],SpielerInfo[playerid][pHealth]);
  883. mysql_query(query);
  884. }
  885. }
  886. return 1;
  887. }*/
  888. stock SavePlayer(playerid)
  889. {
  890. if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid)) // Sofern der Spieler eingelogg ist bzw. im Spielt ist und kein NPC / BOT ist.
  891. {
  892. if(GetPVarInt(playerid,"logged") == 1) // Ob er eingeloggt ist, hätten wir diesen PVar nicht und der Spieler würde währen des Einloggen's Disconnecten wo die Variablen von ihm noch nicht geladen wurden, so wäre danach alles auf 0
  893. {
  894. new query[500]; // Neuer query || TIPP : Die Länge eines Querys lässt sich mit Notepad++ Sehr leicht ermitteln einfach den Input hineinschreiben und ablesen wieviel Zeichen dieser hat.
  895. format(query,sizeof(query),"UPDATE `accounts` SET `Level` = '%d', `Admin` = '%d' WHERE `Name` = '%s'",SpielerInfo[playerid][pLevel],SpielerInfo[playerid][pAdmin]);
  896. // UPDATE `accounts` = Wir erneuern die Tabelle Accounts
  897. // SET `Level` = '%d' .... Wir setzten dort das Level %d als Integer Bei Float's ist dies %f und bei Namen / Strings %s
  898. // WHERE `Name` = '%s' = Wo der Name dem Spieler Namen entspricht.
  899. mysql_query(query); // Wir senden ab
  900. }
  901. }
  902. return 1;
  903. }
  904.  
  905. stock mysql_GetString(Table[], Field[], Where[], Is[])
  906. {
  907. new query[128], Get[128];
  908. mysql_real_escape_string(Table, Table);
  909. mysql_real_escape_string(Field, Field);
  910. mysql_real_escape_string(Where, Where);
  911. mysql_real_escape_string(Is, Is);
  912. format(query, 128, "SELECT `%s` FROM `%s` WHERE `%s` = '%s'", Field, Table, Where, Is);
  913. mysql_query(query);
  914. mysql_store_result();
  915. mysql_fetch_row(Get);
  916. mysql_free_result();
  917. return Get;
  918. }
  919. stock mysql_GetInt(Table[], Field[], Where[], Is[])
  920. {
  921. new query[128];
  922. mysql_real_escape_string(Table, Table);
  923. mysql_real_escape_string(Field, Field);
  924. mysql_real_escape_string(Where, Where);
  925. mysql_real_escape_string(Is, Is);
  926. format(query, 128, "SELECT `%s` FROM `%s` WHERE `%s` = '%s'", Field, Table, Where, Is);
  927. mysql_query(query);
  928. mysql_store_result();
  929. new sqlint = mysql_fetch_int();
  930. mysql_free_result();
  931. return sqlint;
  932. }
  933. stock mysql_GetFloat(Table[], Field[], Where[], Is[])
  934. {
  935. new query[128], Float:sqlfloat;
  936. mysql_real_escape_string(Table, Table);
  937. mysql_real_escape_string(Field, Field);
  938. mysql_real_escape_string(Where, Where);
  939. mysql_real_escape_string(Is, Is);
  940. format(query, 128, "SELECT `%s` FROM `%s` WHERE `%s` = '%s'", Field, Table, Where, Is);
  941. mysql_query(query);
  942. mysql_store_result();
  943. mysql_fetch_float(sqlfloat);
  944. mysql_free_result();
  945. return sqlfloat;
  946. }
  947. stock mysql_SetInt(Table[], Field[], To, Where[], Where2[])
  948. {
  949. new query[128];
  950. mysql_real_escape_string(Table, Table);
  951. mysql_real_escape_string(Field, Field);
  952. mysql_real_escape_string(Where, Where);
  953. mysql_real_escape_string(Where2, Where2);
  954. format(query, 128, "UPDATE `%s` SET `%s` = '%d' WHERE `%s` = '%s'", Table, Field, To, Where, Where2);
  955. mysql_query(query);
  956. return true;
  957. }
  958. stock mysql_SetString(Table[], Field[], To[], Where[], Where2[])
  959. {
  960. new query[128];
  961. mysql_real_escape_string(Table, Table);
  962. mysql_real_escape_string(Field, Field);
  963. mysql_real_escape_string(To, To);
  964. mysql_real_escape_string(Where, Where);
  965. mysql_real_escape_string(Where2, Where2);
  966. format(query, 128, "UPDATE `%s` SET `%s` = '%s' WHERE `%s` = '%s'", Table, Field, To, Where, Where2);
  967. mysql_query(query);
  968. return true;
  969. }
  970. stock mysql_SetFloat(Table[], Field[], Float:To, Where[], Where2[])
  971. {
  972. new query[128];
  973. mysql_real_escape_string(Table, Table);
  974. mysql_real_escape_string(Field, Field);
  975. mysql_real_escape_string(Where, Where);
  976. mysql_real_escape_string(Where2, Where2);
  977. format(query, 128, "UPDATE `%s` SET `%s` = '%f' WHERE `%s` = '%s'", Table, Field, To, Where, Where2);
  978. mysql_query(query);
  979. return true;
  980. }
  981.  
  982. //-----Andere Stocks------//
  983. stock isPlayerAnAdmin(playerid,rang)
  984. {
  985. if(SpielerInfo[playerid][pAdmin] >= rang)return 1;
  986. return 0;
  987. }
  988. stock ResetArenen(playerid)
  989. {
  990. if(dm[0][playerid] == 1)
  991. {
  992. if(dmcount[0] > 0)
  993. {
  994. dmcount[0] --;
  995. }
  996. }
  997. if(dm[1][playerid] == 1)
  998. {
  999. if(dmcount[1] > 0)
  1000. {
  1001. dmcount[1] --;
  1002. }
  1003. }
  1004. if(dm[2][playerid] == 1)
  1005. {
  1006. if(dmcount[2] > 0)
  1007. {
  1008. dmcount[2] --;
  1009. }
  1010. }
  1011. if(dm[3][playerid] == 1)
  1012. {
  1013. if(one[0] > 0)
  1014. {
  1015. one[0] --;
  1016. }
  1017. }
  1018. if(dm[4][playerid] == 1)
  1019. {
  1020. if(one[1] > 0)
  1021. {
  1022. one[1] --;
  1023. }
  1024. }
  1025. if(dm[5][playerid] == 1)
  1026. {
  1027. if(one[2] > 0)
  1028. {
  1029. one[2] --;
  1030. }
  1031. }
  1032. if(dm[6][playerid] == 1)
  1033. {
  1034. if(one[3] > 0)
  1035. {
  1036. one[3] --;
  1037. }
  1038. }
  1039. if(dm[7][playerid] == 1)
  1040. {
  1041. if(one[4] > 0)
  1042. {
  1043. one[4] --;
  1044. }
  1045. }
  1046. for(new i; i != 8; ++i)dm[i][playerid]=0;
  1047. Map[playerid] = 0;
  1048. aduty[playerid] = 0;
  1049. induell[playerid] = 0;
  1050. duell[playerid] = 0;
  1051. CBug = 0;
  1052. }
  1053. forward BugTimeOut(playerid);
  1054. public BugTimeOut(playerid)
  1055. {
  1056. if(PlayerUsingBug[playerid] == 1)
  1057. {
  1058. PlayerUsingBug[playerid]=0;
  1059. }
  1060. }
  1061.  
  1062. stock IsBugWeapon(playerid)
  1063. {
  1064. new weaponid = GetPlayerWeapon(playerid);
  1065. switch(weaponid){
  1066. case 24,25,27,33,34: return true;}
  1067. return false;
  1068. }
  1069. stock ResetAccount(playerid)
  1070. {
  1071. SpielerInfo[playerid][pBanned] = 0;
  1072. SpielerInfo[playerid][pLevel] = 0;
  1073. SpielerInfo[playerid][pKills] = 0;
  1074. SpielerInfo[playerid][pTode] = 0;
  1075. SpielerInfo[playerid][pAdmin] = 0;
  1076. SpielerInfo[playerid][pGeld] = 0;
  1077. spam[playerid] = 0;
  1078. return 1;
  1079. }
  1080.  
  1081. //-------------TIMER PUBLIC----------//
  1082. forward Uhrzeittimer();
  1083. public Uhrzeittimer ()
  1084. {
  1085. new Hour,Minute,Sec,String[6];
  1086. gettime(Hour,Minute,Sec);
  1087. format(String,sizeof(String),"%02d:%02d",Hour,Minute);
  1088. TextDrawSetString(Uhrzeit,String);
  1089. return 1;
  1090. }
  1091. forward Datumtimer();
  1092. public Datumtimer(){
  1093. new Year, Month, Day,String[12];
  1094. getdate(Year, Month, Day);
  1095. format(String,sizeof(String),"%02d.%02d.%d", Day, Month, Year);
  1096. TextDrawSetString(Datum,String);
  1097. return 1;
  1098. }
  1099.  
  1100. stock PlayerName(playerid)
  1101. {
  1102. new name[MAX_PLAYER_NAME];
  1103. GetPlayerName(playerid,name,sizeof(name));
  1104. return name;
  1105.  
  1106. }
  1107.  
  1108. //-----AdminSystem-----//
  1109. ocmd:kick(playerid,params[])
  1110. {
  1111. new pID,grund[24],str[128];
  1112. if(!isPlayerAnAdmin(playerid,1)) return SendClientMessage(playerid,GRAU,"[FEHLER] Du bist kein Admin!");
  1113. if(sscanf(params,"us",pID,grund)) return SendClientMessage(playerid,GRAU,"Benutze: /kick [SpielerName/ID] [Grund]");
  1114. if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,GRAU,"Dieser Spieler ist nicht online!");
  1115. format(str,128,"AdmCmd: %s wurde vom Admin %s gekickt, Grund: %s",PlayerName(pID),PlayerName(playerid),grund);
  1116. SendClientMessageToAll(ROT,str);
  1117. Kick(pID);
  1118. return 1;
  1119. }
  1120. ocmd:ban(playerid,params[])
  1121. {
  1122. new pID,grund[24],str[128];
  1123. if(!isPlayerAnAdmin(playerid,2)) return SendClientMessage(playerid,GRAU,"[FEHLER] Du bist kein Admin!");
  1124. if(sscanf(params,"us",pID,grund)) return SendClientMessage(playerid,GRAU,"Benutze: /ban [SpielerName/ID] [Grund]");
  1125. if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,GRAU,"Dieser Spieler ist nicht online!");
  1126. format(str,128,"AdmCmd: %s wurde vom Admin %s gebannt, Grund: %s",PlayerName(pID),PlayerName(playerid),grund);
  1127. SendClientMessageToAll(ROT,str);
  1128. SpielerInfo[pID][pBanned] = 1;
  1129. Kick(pID);
  1130. return 1;
  1131. }
  1132. ocmd:veh(playerid,params[])
  1133. {
  1134. new ModelID, color[2],Float:VehPos[4], vehicleid;
  1135. if(GetPlayerState(playerid)!=PLAYER_STATE_ONFOOT) return SendClientMessage(playerid,0xB0AFB0FF,"Du bist nicht zu Fuss");
  1136. if(sscanf(params, "ddd",ModelID,color[0],color[1])) return SendClientMessage(playerid,0xB0AFB0FF, "/veh [vehicleid] [color1] [color2]");
  1137. if(ModelID < 400 || ModelID > 611) return SendClientMessage(playerid,0xB0AFB0FF, "Die Fahrzeug Id muss von 400 bis 611 sein");
  1138. if(color[0] < 0 || color[0] > 126 || color[1] < 0 || color[1] > 126) return SendClientMessage(playerid,0xB0AFB0FF, "the colorid must be between 0 - 126");
  1139. if(isPlayerAnAdmin(playerid,1) || CallRemoteFunction("PlayerIsAnAdmin","i",playerid))
  1140. {
  1141. GetPlayerPos(playerid, VehPos[0],VehPos[1],VehPos[2]);
  1142. GetPlayerFacingAngle(playerid, VehPos[3]);
  1143. vehicleid = CreateVehicle(ModelID,VehPos[0],VehPos[1],VehPos[2],VehPos[3],color[0],color[1],-1);
  1144. LinkVehicleToInterior(vehicleid,GetPlayerInterior(playerid));
  1145. SetVehicleVirtualWorld(vehicleid,GetPlayerVirtualWorld(playerid));
  1146. PutPlayerInVehicle(playerid, vehicleid, 0);
  1147. }
  1148. else return SendClientMessage(playerid, 0xB0AFB0FF, "Du bist ein Noob Admin");
  1149. return 1;
  1150. }
  1151. ocmd:delvehall(playerid,params[])
  1152. {
  1153. if(!isPlayerAnAdmin(playerid,2)) return SendClientMessage(playerid,GRAU,"[FEHLER] Du bist kein Admin!");
  1154. for(new i = 0; i <MAX_VEHICLES; i++)
  1155. {
  1156. DestroyVehicle(i);
  1157. }
  1158. return 1;
  1159. }
  1160. ocmd:oclose(playerid,params[])
  1161. {
  1162. new str[64];
  1163. if(!isPlayerAnAdmin(playerid,3)) return SendClientMessage(playerid,GRAU,"[FEHLER] Du bist kein Admin!");
  1164. if(ochat == 1) return SendClientMessage(playerid,GRAU,"Der OOC Chat ist bereits geschlossen!");
  1165. format(str,64,"AdmCmd: Admin %s hat den OOC Chat geschlossen",PlayerName(playerid));
  1166. SendClientMessageToAll(ROT,str);
  1167. ochat = 1;
  1168. return 1;
  1169. }
  1170. ocmd:oopen(playerid,params[])
  1171. {
  1172. new str[64];
  1173. if(!isPlayerAnAdmin(playerid,3)) return SendClientMessage(playerid,GRAU,"[FEHLER] Du bist kein Admin!");
  1174. if(ochat == 0) return SendClientMessage(playerid,GRAU,"Der OOC Chat ist bereits offen!");
  1175. format(str,64,"AdmCmd: Admin %s hat den OOC Chat geöffnet",PlayerName(playerid));
  1176. SendClientMessageToAll(ROT,str);
  1177. ochat = 0;
  1178. return 1;
  1179. }
  1180. ocmd:makeadmin(playerid,params[])
  1181. {
  1182. new pID,str[128],rang;
  1183. if(!isPlayerAnAdmin(playerid,4)) return SendClientMessage(playerid,GRAU,"[FEHLER] Du bist kein Admin!");
  1184. if(sscanf(params,"ui",pID,rang)) return SendClientMessage(playerid,GRAU,"Benutze: /makeadmin [SpielerName/ID] [Rang]");
  1185. if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,GRAU,"Dieser Spieler ist nicht online!");
  1186. format(str,128,"AdmCmd: %s wurde vom Admin %s zum Admin Rang %d ernannt",PlayerName(pID),PlayerName(playerid),rang);
  1187. SendClientMessageToAll(ROT,str);
  1188. SpielerInfo[pID][pAdmin] = rang;
  1189. SavePlayer(playerid);
  1190. return 1;
  1191. }
  1192. new timer;
  1193. forward adutytimer(playerid);
  1194. public adutytimer (playerid)
  1195. {
  1196. SetPlayerHealth(playerid,200);
  1197. SetPlayerArmour(playerid,200);
  1198. return 1;
  1199. }
  1200. ocmd:aduty(playerid,params[])
  1201. {
  1202. new str[128];
  1203. if(!isPlayerAnAdmin(playerid,1)) return SendClientMessage(playerid,GRAU,"[FEHLER] Du bist kein Admin!");
  1204. if(aduty[playerid] == 0)
  1205. {
  1206. switch(SpielerInfo[playerid][pAdmin])
  1207. {
  1208. case 1:format(str, 128,"{E600FF}** %s %s ist nun im Admindienst **",Adminrang[SpielerInfo[playerid][pAdmin]],PlayerName(playerid));
  1209. case 2:format(str, 128,"{19CF00}** %s %s ist nun im Admindienst **",Adminrang[SpielerInfo[playerid][pAdmin]],PlayerName(playerid));
  1210. case 3:format(str, 128,"{0085FF}** %s %s ist nun im Admindienst **",Adminrang[SpielerInfo[playerid][pAdmin]],PlayerName(playerid));
  1211. case 4:format(str, 128,"{E1FF00}** %s %s ist nun im Admindienst **",Adminrang[SpielerInfo[playerid][pAdmin]],PlayerName(playerid));
  1212. }
  1213. SendClientMessageToAll(-1,str);
  1214. aduty[playerid] = 1;
  1215. SetPlayerHealth(playerid,200);
  1216. SetPlayerArmour(playerid,200);
  1217. timer = SetTimerEx("adutytimer", 1000, true,"i",playerid);
  1218. }
  1219. else if(aduty[playerid] == 1)
  1220. {
  1221. switch(SpielerInfo[playerid][pAdmin])
  1222. {
  1223. case 1:format(str, 128,"{E600FF}** %s %s ist nun nicht mehr im Admindienst **",Adminrang[SpielerInfo[playerid][pAdmin]],PlayerName(playerid));
  1224. case 2:format(str, 128,"{19CF00}** %s %s ist nun nicht mehr im Admindienst **",Adminrang[SpielerInfo[playerid][pAdmin]],PlayerName(playerid));
  1225. case 3:format(str, 128,"{0085FF}** %s %s ist nun nicht mehr im Admindienst **",Adminrang[SpielerInfo[playerid][pAdmin]],PlayerName(playerid));
  1226. case 4:format(str, 128,"{E1FF00}** %s %s ist nun nicht mehr im Admindienst **",Adminrang[SpielerInfo[playerid][pAdmin]],PlayerName(playerid));
  1227. }
  1228. SendClientMessageToAll(-1,str);
  1229. aduty[playerid] = 0;
  1230. KillTimer(timer);
  1231. SetPlayerHealth(playerid,100);
  1232. SetPlayerArmour(playerid,0);
  1233. }
  1234. return 1;
  1235. }
  1236. ocmd:restart(playerid,params[])
  1237. {
  1238. new str[64];
  1239. if(!isPlayerAnAdmin(playerid,4)) return SendClientMessage(playerid,GRAU,"[FEHLER] Du bist kein Admin!");
  1240. for(new i = 0; i <MAX_PLAYERS; i++)
  1241. {
  1242. if(IsPlayerConnected(i)) continue;
  1243. {
  1244. SavePlayer(i);
  1245. format(str,64,"{00B9FF}[SERVER]{FEFEFE} Alle Accounts wurden gespeichert!");
  1246. SendRconCommand("gmx");
  1247. }
  1248. }
  1249. SendClientMessageToAll(-1,str);
  1250. return 1;
  1251. }
  1252. ocmd:deagle(playerid,params[])
  1253. {
  1254. GivePlayerWeapon(playerid,24,1337);
  1255. return 1;
  1256. }
  1257. ocmd:duell(playerid,params[])
  1258. {
  1259. new pID,str[128];
  1260. if(sscanf(params,"u",pID)) return SendClientMessage(playerid,GRAU,"Benutze: /duell [SpielerName/ID]");
  1261. if(duellaktiv == 1) return SendClientMessage(playerid,GRAU,"Es ist gerade ein Duell aktiv!");
  1262. if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,GRAU,"Spieler ist nicht online!");
  1263. if(playerid == pID) return SendClientMessage(playerid,GRAU,"[FEHLER] Du kannst dich nicht selbst einladen!");
  1264. /*if(induell[pID] != INVALID_PLAYER_ID) return SendClientMessage(playerid,GRAU,"Ist im Duell!");*/
  1265. format(str,128,"Spieler %s fordert dich zu einem Duell heraus - /accept um das Duell anzunehmen!",PlayerName(playerid));
  1266. SendClientMessage(pID,TURKIS,str);
  1267. format(str,128,"Du hast eine Duell Anfrage an %s gesendet!",PlayerName(pID));
  1268. SendClientMessage(playerid,TURKIS,str);
  1269. duell[pID]=playerid;
  1270. return 1;
  1271. }
  1272. ocmd:accept(playerid,params[])
  1273. {
  1274. new str[128],cmd[30];
  1275. new Random = random(sizeof(onespawn));
  1276. if(sscanf(params,"s[30]",cmd)) return SendClientMessage(playerid,GRAU,"BENUTZE: /accept [duell]");
  1277. if(strcmp(cmd,"duell",true) == 0)
  1278. {
  1279. if(duell[playerid] == 0) return SendClientMessage(playerid,GRAU,"Sie haben keine Einladung erhalten!");
  1280. /*if(duell[playerid] == INVALID_PLAYER_ID) return SendClientMessage(playerid,GRAU,"Keine Einladung bekomme");*/
  1281. SetPlayerInterior(playerid,6);
  1282. SetPlayerInterior(duell[playerid],6);
  1283. SetPlayerPos(duell[playerid],onespawn[Random][0],onespawn[Random][1],onespawn[Random][2]);
  1284. SetPlayerPos(playerid,onespawn[Random][0],onespawn[Random][1],onespawn[Random][2]);
  1285. GivePlayerWeapon(playerid,24,1337);
  1286. GivePlayerWeapon(duell[playerid],24,1337);
  1287. induell[playerid] = duell[playerid];
  1288. induell[duell[playerid]] =playerid;
  1289. format(str,128,"{FFBE00}[DUELL]{FEFEFE} Der Spieler %s hat einen Duell gegen %s gestartet!",PlayerName(playerid),PlayerName(duell[playerid]));
  1290. SendClientMessageToAll(DUNKELGELB,str);
  1291. duellaktiv = 1;
  1292. }
  1293. return 1;
  1294. }
  1295. ocmd:arenen(playerid,params[])
  1296. {
  1297. if(Map[playerid] == 0)
  1298. {
  1299. new str[128];
  1300. format(str,128,"Deagle (Spieler: %d)\nDeathmatch (Spieler: %d)\nCBug(Spieler: %d)\nSniper (Spieler: %d)",dmcount[0],dmcount[1],dmcount[2]);
  1301. ShowPlayerDialog(playerid,DIALOG_ARENEN,DIALOG_STYLE_LIST,"Arenen - Wähle deine Arena",str,"Betreten","Abbrechen");
  1302. }else{
  1303. SendClientMessage(playerid,GELB,"Du bist bereits in einer Arena /l");
  1304. }
  1305. return 1;
  1306. }
  1307. ocmd:1o1(playerid,params[])
  1308. {
  1309. new str[264];
  1310. if(Map[playerid] == 0)
  1311. {
  1312. format(str,264,"1 VS. 1 | %d/2 Spieler\n1 VS. 1 | %d/2 Spieler\n1 VS. 1 | %d/2 Spieler\n1 VS. 1 | %d/2 Spieler\n1 VS. 1 | %d/2 Spieler",one[0],one[1],one[2],one[3],one[4]);
  1313. ShowPlayerDialog(playerid,DIALOG_ONE,DIALOG_STYLE_LIST,"1VS1 - Wähle deinen Raum",str,"Betreten","Abbrechen");
  1314. }else{
  1315. SendClientMessage(playerid,GELB,"Du bist bereits in einer Arena /l");
  1316. }
  1317. return 1;
  1318. }
  1319. ocmd:l(playerid,params[])
  1320. {
  1321. if (gettime() - exitHitTime[playerid] >= 5000) {
  1322. return SendClientMessage(playerid,-1, "Du darfst nicht raus");
  1323. }
  1324. if(Map[playerid] == 1)
  1325. {
  1326. if(dm[0][playerid] == 1)
  1327. {
  1328. if(dmcount[0] > 0)
  1329. {
  1330. dmcount[0] --;
  1331. }
  1332. }
  1333. if(dm[1][playerid] == 1)
  1334. {
  1335. if(dmcount[1] > 0)
  1336. {
  1337. dmcount[1] --;
  1338. }
  1339. }
  1340. if(dm[2][playerid] == 1)
  1341. {
  1342. if(dmcount[2] > 0)
  1343. {
  1344. dmcount[2] --;
  1345. }
  1346. }
  1347. if(dm[3][playerid] == 1)
  1348. {
  1349. if(one[0] > 0)
  1350. {
  1351. one[0] --;
  1352. }
  1353. }
  1354. if(dm[4][playerid] == 1)
  1355. {
  1356. if(one[1] > 0)
  1357. {
  1358. one[1] --;
  1359. }
  1360. }
  1361. if(dm[5][playerid] == 1)
  1362. {
  1363. if(one[2] > 0)
  1364. {
  1365. one[2] --;
  1366. }
  1367. }
  1368. if(dm[6][playerid] == 1)
  1369. {
  1370. if(one[3] > 0)
  1371. {
  1372. one[3] --;
  1373. }
  1374. }
  1375. if(dm[7][playerid] == 1)
  1376. {
  1377. if(one[4] > 0)
  1378. {
  1379. one[4] --;
  1380. }
  1381. }
  1382. for(new i; i != 8; ++i)dm[i][playerid]=0;
  1383. SendClientMessage(playerid,GRÜN,"[INFO] Du hast die Arena verlassen");
  1384. SetPlayerInterior(playerid,0);
  1385. SetPlayerVirtualWorld(playerid,0);
  1386. SetPlayerHealth(playerid,100);
  1387. Map[playerid] = 0;
  1388. CBug = 0;
  1389. SpawnPlayer(playerid);
  1390. }
  1391. return 1;
  1392. }
  1393.  
  1394. //-----UserSystem-----//
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement