Advertisement
Guest User

Anfänger Selfmade

a guest
Feb 5th, 2016
293
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 46.00 KB | None | 0 0
  1. //////////////////////////////////////////////////////////////////////////////////////////////////////////
  2. // ** Selfmade Reallife Grundlage ** ** Created by Jeff_Hardy ** ** Veröffentlicht am 06.02.16 ** //
  3. // //
  4. // Changelog: //
  5. // 1. Register & Login System erstellet (MySQL & Textdraw) //
  6. // 2. Admin Level wird gespeichert und ausgelesen (MySQL) //
  7. // 3. Ein Interface für den Login Bildschirm hinzugefügt (Textdraws) //
  8. // 4. Diverse Adminbefehle hinzugefügt //
  9. // 5. Help Befehl hinzugefügt (Dialog Basierend & leicht erweiterbar( //
  10. // 6. Stats Befehl hinzugefügt (Dialog Basierend und leicht erweiterbar) //
  11. // 7. Enter & Exit Befehl erstellt (Leicht erweiterbar, Taste 'F' oder 'ENTER' | /betreten /verlassen // //
  12. // 8. Speicher Befehl für Admins, um die Accounts zu speichern //
  13. // 9. Kick Befehl mit Kicklog (Der Log basiert auf dini) //
  14. // 10. Neuer Stock - SendClientMessageToAdmins, z.B für Cheat Meldungen o.ä //
  15. //////////////////////////////////////////////////////////////////////////////////////////////////////////
  16.  
  17. //Includes
  18. #include <a_samp>
  19. #include <sscanf2>
  20. #include <a_mysql>
  21. #include <streamer>
  22.  
  23. //Definierung - Farben
  24. #define CHATFARBE 0x30ACBFFF
  25. #define FARBE_ROT 0xF50000FF
  26. #define FARBE_BLAU 0x000FFFFF
  27. #define FARBE_HELLBLAU 0x00CDFFFF
  28. #define FARBE_GELB 0xFFFF00FF
  29. #define FARBE_GRUEN 0x05FF00FF
  30. #define FARBE_DUNKELGRUEN 0x00A000FF
  31. #define FARBE_ORANGE 0xFF8200FF
  32. #define FARBE_WEIS 0xFEFEFEFF
  33. #define FARBE_LILA 0x6400FFFF
  34. #define FARBE_PINK 0xFF00D7FF
  35. #define FARBE_ERFOLG 0x65ABC8FF
  36. #define FARBE_KEINERFOLG 0xAF0000FF
  37. #define FARBE_INFO 0x00FF5AFF
  38.  
  39. #define SendFormatMessage(%0,%1,%2,%3,%4) format(%2, sizeof(%2),%3,%4) && SendClientMessage(%0, %1, %2)
  40.  
  41. //Nicht ändern
  42. #define cmd:%1(%2) forward cmd_%1(%2);\
  43. public cmd_%1(%2)
  44. public OnPlayerCommandText(playerid,cmdtext[])
  45. {
  46. cmdtext[0]='_';
  47. new cmdStr[128],cmdParams[128],bool:cmdAffe,cmdFu;
  48. for(new i;i<128;i++)
  49. {
  50. if(cmdtext[i]=='\0')break;
  51. if((cmdtext[i]==' ')&&(!cmdAffe))
  52. {
  53. cmdAffe=true;
  54. continue;
  55. }
  56. if(!cmdAffe)cmdStr[i]=cmdtext[i];
  57. else
  58. {
  59. cmdParams[cmdFu]=cmdtext[i];
  60. cmdFu++;
  61. }
  62. }
  63. format(cmdStr,128,"cmd%s",cmdStr);
  64. if(!strlen(cmdParams))format(cmdParams,128," ");
  65. new i,cmdStr2[128];
  66. while(cmdStr[++i])
  67. {
  68. if ('A' <= cmdStr[i] <= 'Z') cmdStr[i] |= 0x20;
  69. if(cmdStr[i] == 'ä' || cmdStr[i] == 'Ä')
  70. {
  71. format(cmdStr2,128,"%s",cmdStr);
  72. cmdStr2[i] = 'a';
  73. cmdStr2[i+1] = 'e';
  74. for(new o = i+2; o < 128; o++)
  75. {
  76. cmdStr2[o] = cmdStr[o-1];
  77. }
  78. format(cmdStr,128,"%s",cmdStr2);
  79. }
  80. else if(cmdStr[i] == 'ö' || cmdStr[i] == 'Ö')
  81. {
  82. format(cmdStr2,128,"%s",cmdStr);
  83. cmdStr2[i] = 'o';
  84. cmdStr2[i+1] = 'e';
  85. for(new o = i+2; o < 128; o++)
  86. {
  87. cmdStr2[o] = cmdStr[o-1];
  88. }
  89. format(cmdStr,128,"%s",cmdStr2);
  90. }
  91. else if(cmdStr[i] == 'ü' || cmdStr[i] == 'Ü')
  92. {
  93. format(cmdStr2,128,"%s",cmdStr);
  94. cmdStr2[i] = 'u';
  95. cmdStr2[i+1] = 'e';
  96. for(new o = i+2; o < 128; o++)
  97. {
  98. cmdStr2[o] = cmdStr[o-1];
  99. }
  100. format(cmdStr,128,"%s",cmdStr2);
  101. }
  102. else if(cmdStr[i] == 'ß')
  103. {
  104. format(cmdStr2,128,"%s",cmdStr);
  105. cmdStr2[i] = 's';
  106. cmdStr2[i+1] = 's';
  107. for(new o = i+2; o < 128; o++)
  108. {
  109. cmdStr2[o] = cmdStr[o-1];
  110. }
  111. format(cmdStr,128,"%s",cmdStr2);
  112. }
  113. }
  114. if(CallLocalFunction(cmdStr,"ds",playerid,cmdParams)) return 1;
  115. cmdtext[0]='/';
  116. new string[100];
  117. format(string,sizeof string,"Diesen Befehl gibt es leider nicht! (%s)",cmdtext);
  118. return SendClientMessage(playerid,0xFF0000FF,string);
  119. }
  120. #define OnPlayerCommandText cmdOnPlayerCommandText
  121. #if !defined isnull
  122. #define isnull(%1) ((!(%1[0])) || (((%1[0]) == '\1') && (!(%1[1]))))
  123. #endif
  124.  
  125. //new
  126. new Text:LoginDraw1;
  127. new Text:LoginDraw2;
  128. new Text:LoginDraw3;
  129. new Text:LoginDraw4;
  130. new Text:LoginDraw5;
  131. new Text:LoginDraw6;
  132. new Text:LoginDraw7;
  133. new Text:LoginDraw8;
  134. new Text:LoginDraw9;
  135. new PlayerText:LoginDraw10;
  136. new PlayerText:LoginDraw11;
  137. new PlayerText:LoginDraw12;
  138. new PlayerText:LoginDraw13;
  139. new Text:LoginDraw14;
  140. new Text:LoginDraw15;
  141.  
  142. new MysqlConnection;
  143. new giveplayerid = -1;
  144.  
  145. //DIALOGE
  146. #define DIALOG_REGISTER 1
  147. #define DIALOG_LOGIN 2
  148. #define DIALOG_HELP 3
  149. #define DIALOG_HELPBOX 4
  150. #define DIALOG_CHANGELOG 5
  151. #define DIALOG_SERVERINFO 6
  152. #define DIALOG_SCRIPTINFO 7
  153. #define DIALOG_STADTHALLE 8
  154. #define DIALOG_STADTHALLE_PERSO 9
  155. #define DIALOG_STATS 10
  156.  
  157. //SERVER CONFIG
  158. #define ZEILEN "1131" //Scriptzeilen, kann in den Credits usw gezeigt werden.
  159. #define SERVERNAME "Dein Servername" //Der Name deines Servers
  160. #define GAMEMODE "Scriptname und Version" //Scriptname, z.B German Reallife v1
  161. #define SVERSION "Deine Scriptversion" //Die Version deines Scripts
  162. #define CREATOR "Jeff_Hardy" //Sollte aus Respekt stehen bleiben
  163. #define EDITOR "Dein Name" //Wenn du das Script editierst, gib hier einen Namen ein
  164.  
  165. main()
  166. {
  167. print("\n----------------------------------");
  168. print(" Selfmade Grundlagen Script");
  169. print(" by Jeff_Hardy");
  170. print("-----------------------------------\n");
  171. }
  172.  
  173. enum _sInfo
  174. {
  175. uPasswort[45],
  176. uID,
  177. uNeuling,
  178. uAdmin,
  179. uGeld,
  180. uSkin,
  181. uLevel,
  182. uRegistriert,
  183. }
  184.  
  185. enum enterexitInfo{
  186. Float:ex,
  187. Float:ey,
  188. Float:ez,
  189. eint,
  190. Float:iex,
  191. Float:iey,
  192. Float:iez
  193. }
  194.  
  195. new EnterExit[][enterexitInfo] = {
  196. {1480.8914,-1771.3129,18.7958,3,389.5052,173.8023,1008.3828} //Stadthalle 0
  197. };
  198.  
  199. //news
  200. new SpielerInfo[MAX_PLAYERS][_sInfo];
  201. new licht[MAX_VEHICLES];
  202.  
  203. public OnGameModeInit()
  204. {
  205. ShowPlayerMarkers(PLAYER_MARKERS_MODE_STREAMED);
  206. LimitPlayerMarkerRadius(500);
  207. ManualVehicleEngineAndLights();
  208. DisableInteriorEnterExits();
  209. UsePlayerPedAnims();
  210. MysqlConnection = mysql_connect("127.0.0.1","root","selfmade","");
  211. if(MysqlConnection) print("Die Verbindung zur MySQL-Datenbank wurde erfolgreich hergestellt!");
  212. else print("Verbindung zur MySQL-Datenbank konnte nicht hergestellt werden!");
  213. mysql_log(LOG_ERROR | LOG_WARNING);
  214. SetGameModeText("Selfmade Reallife");
  215. AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
  216.  
  217. for(new i = 0; i < sizeof EnterExit; i++)
  218. {
  219. CreateDynamicPickup(19197, 0, EnterExit[i][ex], EnterExit[i][ey], EnterExit[i][ez]);
  220. Create3DTextLabel("/betreten oder 'ENTER'", CHATFARBE, EnterExit[i][ex], EnterExit[i][ey], EnterExit[i][ez], 10.0, 0, 0);
  221. CreateDynamicPickup(19197, 0, EnterExit[i][iex], EnterExit[i][iey], EnterExit[i][iez], i);
  222. Create3DTextLabel("/verlassen oder 'ENTER'", CHATFARBE, EnterExit[i][iex], EnterExit[i][iey], EnterExit[i][iez], 10.0, i, 0);
  223. }
  224. return 1;
  225. }
  226.  
  227. public OnGameModeExit()
  228. {
  229. return 1;
  230. }
  231.  
  232. public OnPlayerRequestClass(playerid, classid)
  233. {
  234. SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
  235. SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
  236. SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
  237. return 1;
  238. }
  239.  
  240. public OnPlayerConnect(playerid)
  241. {
  242. new string[60];
  243. format(string, sizeof string, "* %s hat den Server betreten.",PlayerName(playerid));
  244. SendClientMessageToAll(FARBE_WEIS, string);
  245. ResetPlayer(playerid);
  246. if(IsPlayerNPC(playerid)) return SpawnPlayer(playerid);
  247. SetPlayerColor(playerid, 0xFEFEFEFF);
  248. SendClientMessage(playerid,CHATFARBE,"Herzlich Willkommen, das Script ist momentan in voller Entwicklung.");
  249.  
  250. LoginDraw1 = TextDrawCreate(652.000000, 2.000000, "_");
  251. TextDrawBackgroundColor(LoginDraw1, 255);
  252. TextDrawFont(LoginDraw1, 1);
  253. TextDrawLetterSize(LoginDraw1, 0.360000, 9.300001);
  254. TextDrawColor(LoginDraw1, -1);
  255. TextDrawSetOutline(LoginDraw1, 0);
  256. TextDrawSetProportional(LoginDraw1, 1);
  257. TextDrawSetShadow(LoginDraw1, 1);
  258. TextDrawUseBox(LoginDraw1, 1);
  259. TextDrawBoxColor(LoginDraw1, 255);
  260. TextDrawTextSize(LoginDraw1, -52.000000, 2.000000);
  261. TextDrawSetSelectable(LoginDraw1, 0);
  262.  
  263. LoginDraw2 = TextDrawCreate(652.000000, 362.000000, "_");
  264. TextDrawBackgroundColor(LoginDraw2, 255);
  265. TextDrawFont(LoginDraw2, 1);
  266. TextDrawLetterSize(LoginDraw2, 0.360000, 9.300001);
  267. TextDrawColor(LoginDraw2, -1);
  268. TextDrawSetOutline(LoginDraw2, 0);
  269. TextDrawSetProportional(LoginDraw2, 1);
  270. TextDrawSetShadow(LoginDraw2, 1);
  271. TextDrawUseBox(LoginDraw2, 1);
  272. TextDrawBoxColor(LoginDraw2, 255);
  273. TextDrawTextSize(LoginDraw2, -52.000000, 2.000000);
  274. TextDrawSetSelectable(LoginDraw2, 0);
  275.  
  276. LoginDraw3 = TextDrawCreate(652.000000, 358.000000, "_");
  277. TextDrawBackgroundColor(LoginDraw3, 255);
  278. TextDrawFont(LoginDraw3, 1);
  279. TextDrawLetterSize(LoginDraw3, 0.360000, 0.100000);
  280. TextDrawColor(LoginDraw3, -16776961);
  281. TextDrawSetOutline(LoginDraw3, 0);
  282. TextDrawSetProportional(LoginDraw3, 1);
  283. TextDrawSetShadow(LoginDraw3, 1);
  284. TextDrawUseBox(LoginDraw3, 1);
  285. TextDrawBoxColor(LoginDraw3, -65281);
  286. TextDrawTextSize(LoginDraw3, -52.000000, 2.000000);
  287. TextDrawSetSelectable(LoginDraw3, 0);
  288.  
  289. LoginDraw4 = TextDrawCreate(652.000000, 86.000000, "_");
  290. TextDrawBackgroundColor(LoginDraw4, 255);
  291. TextDrawFont(LoginDraw4, 1);
  292. TextDrawLetterSize(LoginDraw4, 0.360000, 0.100000);
  293. TextDrawColor(LoginDraw4, -16776961);
  294. TextDrawSetOutline(LoginDraw4, 0);
  295. TextDrawSetProportional(LoginDraw4, 1);
  296. TextDrawSetShadow(LoginDraw4, 1);
  297. TextDrawUseBox(LoginDraw4, 1);
  298. TextDrawBoxColor(LoginDraw4, -65281);
  299. TextDrawTextSize(LoginDraw4, -52.000000, 2.000000);
  300. TextDrawSetSelectable(LoginDraw4, 0);
  301.  
  302. LoginDraw5 = TextDrawCreate(418.000000, 119.000000, "_");
  303. TextDrawBackgroundColor(LoginDraw5, 255);
  304. TextDrawFont(LoginDraw5, 1);
  305. TextDrawLetterSize(LoginDraw5, 1.000000, 22.600002);
  306. TextDrawColor(LoginDraw5, -1);
  307. TextDrawSetOutline(LoginDraw5, 0);
  308. TextDrawSetProportional(LoginDraw5, 1);
  309. TextDrawSetShadow(LoginDraw5, 1);
  310. TextDrawUseBox(LoginDraw5, 1);
  311. TextDrawBoxColor(LoginDraw5, 119);
  312. TextDrawTextSize(LoginDraw5, 207.000000, -40.000000);
  313. TextDrawSetSelectable(LoginDraw5, 0);
  314.  
  315. LoginDraw6 = TextDrawCreate(559.000000, 362.000000, "New Textdraw");
  316. TextDrawBackgroundColor(LoginDraw6, 255);
  317. TextDrawFont(LoginDraw6, 5);
  318. TextDrawLetterSize(LoginDraw6, 0.440000, 1.400000);
  319. TextDrawColor(LoginDraw6, -1);
  320. TextDrawSetOutline(LoginDraw6, 0);
  321. TextDrawSetProportional(LoginDraw6, 1);
  322. TextDrawSetShadow(LoginDraw6, 1);
  323. TextDrawUseBox(LoginDraw6, 1);
  324. TextDrawBoxColor(LoginDraw6, -16776961);
  325. TextDrawTextSize(LoginDraw6, 82.000000, 83.000000);
  326. TextDrawSetPreviewModel(LoginDraw6, 411);
  327. TextDrawSetPreviewRot(LoginDraw6, -16.000000, 0.000000, -55.000000, 1.000000);
  328. TextDrawSetSelectable(LoginDraw6, 0);
  329.  
  330. LoginDraw7 = TextDrawCreate(11.000000, 418.000000, "Script Version: v0.0.1");
  331. TextDrawBackgroundColor(LoginDraw7, 255);
  332. TextDrawFont(LoginDraw7, 3);
  333. TextDrawLetterSize(LoginDraw7, 0.429999, 1.999999);
  334. TextDrawColor(LoginDraw7, -1);
  335. TextDrawSetOutline(LoginDraw7, 0);
  336. TextDrawSetProportional(LoginDraw7, 1);
  337. TextDrawSetShadow(LoginDraw7, 1);
  338. TextDrawSetSelectable(LoginDraw7, 0);
  339.  
  340. LoginDraw8 = TextDrawCreate(208.000000, 16.000000, "Selfmade Reallife");
  341. TextDrawBackgroundColor(LoginDraw8, 255);
  342. TextDrawFont(LoginDraw8, 2);
  343. TextDrawLetterSize(LoginDraw8, 0.410000, 2.799999);
  344. TextDrawColor(LoginDraw8, -1);
  345. TextDrawSetOutline(LoginDraw8, 0);
  346. TextDrawSetProportional(LoginDraw8, 1);
  347. TextDrawSetShadow(LoginDraw8, 1);
  348. TextDrawSetSelectable(LoginDraw8, 0);
  349.  
  350. LoginDraw9 = TextDrawCreate(301.000000, 36.000000, "Erlebe etwas neues");
  351. TextDrawBackgroundColor(LoginDraw9, 255);
  352. TextDrawFont(LoginDraw9, 2);
  353. TextDrawLetterSize(LoginDraw9, 0.250000, 1.999999);
  354. TextDrawColor(LoginDraw9, -1);
  355. TextDrawSetOutline(LoginDraw9, 0);
  356. TextDrawSetProportional(LoginDraw9, 1);
  357. TextDrawSetShadow(LoginDraw9, 1);
  358. TextDrawSetSelectable(LoginDraw9, 0);
  359.  
  360. LoginDraw10 = CreatePlayerTextDraw(playerid,219.000000, 157.000000, "Registrieren");
  361. PlayerTextDrawBackgroundColor(playerid,LoginDraw10, 255);
  362. PlayerTextDrawFont(playerid,LoginDraw10, 3);
  363. PlayerTextDrawLetterSize(playerid,LoginDraw10, 0.500000, 1.400000);
  364. PlayerTextDrawColor(playerid,LoginDraw10, -1);
  365. PlayerTextDrawSetOutline(playerid,LoginDraw10, 1);
  366. PlayerTextDrawSetProportional(playerid,LoginDraw10, 1);
  367. PlayerTextDrawSetSelectable(playerid,LoginDraw10, 1);
  368.  
  369. LoginDraw11 = CreatePlayerTextDraw(playerid,219.000000, 189.000000, "Changelog");
  370. PlayerTextDrawBackgroundColor(playerid,LoginDraw11, 255);
  371. PlayerTextDrawFont(playerid,LoginDraw11, 3);
  372. PlayerTextDrawLetterSize(playerid,LoginDraw11, 0.500000, 1.400000);
  373. PlayerTextDrawColor(playerid,LoginDraw11, -1);
  374. PlayerTextDrawSetOutline(playerid,LoginDraw11, 1);
  375. PlayerTextDrawSetProportional(playerid,LoginDraw11, 1);
  376. PlayerTextDrawSetSelectable(playerid,LoginDraw11, 1);
  377.  
  378. LoginDraw12 = CreatePlayerTextDraw(playerid,219.000000, 221.000000, "Serverinfo");
  379. PlayerTextDrawBackgroundColor(playerid,LoginDraw12, 255);
  380. PlayerTextDrawFont(playerid,LoginDraw12, 3);
  381. PlayerTextDrawLetterSize(playerid,LoginDraw12, 0.500000, 1.400000);
  382. PlayerTextDrawColor(playerid,LoginDraw12, -1);
  383. PlayerTextDrawSetOutline(playerid,LoginDraw12, 1);
  384. PlayerTextDrawSetProportional(playerid,LoginDraw12, 1);
  385. PlayerTextDrawSetSelectable(playerid,LoginDraw12, 1);
  386.  
  387. LoginDraw13 = CreatePlayerTextDraw(playerid,219.000000, 252.000000, "Script");
  388. PlayerTextDrawBackgroundColor(playerid,LoginDraw13, 255);
  389. PlayerTextDrawFont(playerid,LoginDraw13, 3);
  390. PlayerTextDrawLetterSize(playerid,LoginDraw13, 0.500000, 1.400000);
  391. PlayerTextDrawColor(playerid,LoginDraw13, -1);
  392. PlayerTextDrawSetOutline(playerid,LoginDraw13, 1);
  393. PlayerTextDrawSetProportional(playerid,LoginDraw13, 1);
  394. PlayerTextDrawSetSelectable(playerid,LoginDraw13, 1);
  395.  
  396. LoginDraw14 = TextDrawCreate(207.000000, 116.000000, "-");
  397. TextDrawBackgroundColor(LoginDraw14, 255);
  398. TextDrawFont(LoginDraw14, 1);
  399. TextDrawLetterSize(LoginDraw14, 14.900020, 1.000000);
  400. TextDrawColor(LoginDraw14, -1);
  401. TextDrawSetOutline(LoginDraw14, 0);
  402. TextDrawSetProportional(LoginDraw14, 1);
  403. TextDrawSetShadow(LoginDraw14, 1);
  404. TextDrawSetSelectable(LoginDraw14, 0);
  405.  
  406. LoginDraw15 = TextDrawCreate(207.000000, 313.000000, "-");
  407. TextDrawBackgroundColor(LoginDraw15, 255);
  408. TextDrawFont(LoginDraw15, 1);
  409. TextDrawLetterSize(LoginDraw15, 14.900020, 1.000000);
  410. TextDrawColor(LoginDraw15, -1);
  411. TextDrawSetOutline(LoginDraw15, 0);
  412. TextDrawSetProportional(LoginDraw15, 1);
  413. TextDrawSetShadow(LoginDraw15, 1);
  414. TextDrawSetSelectable(LoginDraw15, 0);
  415.  
  416. new query[80],rows, fields;
  417. format(query, sizeof query,"SELECT Passwort FROM accounts WHERE Name='%s';",PlayerName(playerid));
  418. mysql_query(MysqlConnection,query);
  419. cache_get_data(rows, fields);
  420. if(rows)
  421. {
  422. cache_get_field_content(0,"Passwort",SpielerInfo[playerid][uPasswort],MysqlConnection,45);
  423. SpielerInfo[playerid][uRegistriert] = 1;
  424. }
  425. else
  426. {
  427. PlayerTextDrawSetString(playerid, LoginDraw10, "Login");
  428. SpielerInfo[playerid][uRegistriert] = 1;
  429. }
  430. TextDrawShowForAll(LoginDraw1);
  431. TextDrawShowForAll(LoginDraw2);
  432. TextDrawShowForAll(LoginDraw3);
  433. TextDrawShowForAll(LoginDraw4);
  434. TextDrawShowForAll(LoginDraw5);
  435. TextDrawShowForAll(LoginDraw6);
  436. TextDrawShowForAll(LoginDraw7);
  437. TextDrawShowForAll(LoginDraw8);
  438. TextDrawShowForAll(LoginDraw9);
  439. PlayerTextDrawShow(playerid,LoginDraw10);
  440. PlayerTextDrawShow(playerid,LoginDraw11);
  441. PlayerTextDrawShow(playerid,LoginDraw12);
  442. PlayerTextDrawShow(playerid,LoginDraw13);
  443. TextDrawShowForAll(LoginDraw14);
  444. TextDrawShowForAll(LoginDraw15);
  445. SelectTextDraw(playerid, FARBE_WEIS);
  446.  
  447. //OBJECTS / OBJEKTE
  448. //STADTHALLE INTERIOR / CREATEOBJECT
  449. CreateDynamicObject(19322, 1117.58594, -1490.00781, 32.71880, 0.00000, 0.00000, 0.00000);
  450. CreateDynamicObject(19323, 1117.58594, -1490.00781, 32.71880, 0.00000, 0.00000, 0.00000);
  451. CreateDynamicObject(2002, 375.64099, 188.89450, 1007.37500, 356.85840, 0.00000, 3.14159);
  452. CreateDynamicObject(1703, 369.50522, 188.76964, 1007.37500, 356.85840, 0.00000, 0.02159);
  453. CreateDynamicObject(1817, 370.00046, 186.84195, 1007.37500, 356.85840, 0.00000, -0.27841);
  454. CreateDynamicObject(1817, 372.79715, 186.86844, 1007.37500, 356.85840, 0.00000, 0.26159);
  455. CreateDynamicObject(1775, 376.96603, 184.62331, 1008.47510, 0.00000, 0.00000, -89.76000);
  456. CreateDynamicObject(1704, 376.89410, 187.55910, 1007.38538, 0.00000, 0.00000, -90.00000);
  457. CreateDynamicObject(1704, 376.93161, 182.73535, 1007.38538, 0.00000, 0.00000, -90.00000);
  458. CreateDynamicObject(1535, 371.24115, 166.69125, 1007.38147, 0.00000, 0.00000, 0.00000);
  459. CreateDynamicObject(1535, 365.78876, 158.09378, 1007.38147, 0.00000, 0.00000, 0.00000);
  460. CreateDynamicObject(1535, 365.78900, 196.05090, 1007.37817, 0.00000, 0.00000, 0.00000);
  461. CreateDynamicObject(1535, 368.81412, 194.84146, 1007.37817, 0.00000, 0.00000, -89.99996);
  462. CreateDynamicObject(3858, 368.86920, 186.85719, 1007.70300, 0.00000, 0.00000, -45.00000);
  463. CreateDynamicObject(3858, 378.71628, 179.42595, 1007.70300, 0.00000, 0.00000, 45.11999);
  464. CreateDynamicObject(19375, 357.76630, 157.04890, 1015.72357, 0.00000, 0.00000, 0.00000);
  465. CreateDynamicObject(19375, 357.75830, 166.67180, 1015.72357, 0.00000, 0.00000, 0.00000);
  466. CreateDynamicObject(19375, 357.75830, 180.53180, 1015.72357, 0.00000, 0.00000, 0.00000);
  467. CreateDynamicObject(19375, 357.75830, 190.13980, 1015.72357, 0.00000, 0.00000, 0.00000);
  468. CreateDynamicObject(19375, 357.74832, 173.29451, 1015.72357, 0.00000, 0.00000, -0.12000);
  469. CreateDynamicObject(19375, 353.00998, 171.44635, 1007.85602, 0.00000, 0.00000, 89.76000);
  470. CreateDynamicObject(19375, 352.99539, 175.80888, 1007.85602, 0.00000, 0.00000, 89.76000);
  471. CreateDynamicObject(1536, 354.87042, 171.46892, 1007.35577, 0.00000, 0.00000, -0.48000);
  472. CreateDynamicObject(1536, 354.87039, 171.38490, 1007.35577, 0.00000, 0.00000, -0.48000);
  473. CreateDynamicObject(1536, 354.87039, 175.74890, 1007.35577, 0.00000, 0.00000, -0.48000);
  474. CreateDynamicObject(1536, 354.87039, 175.83290, 1007.35577, 0.00000, 0.00000, -0.48000);
  475. CreateDynamicObject(19375, 353.51349, 173.92790, 1007.85602, 0.00000, 0.00000, 0.06000);
  476. CreateDynamicObject(19375, 353.53931, 164.30859, 1007.85602, 0.00000, 0.00000, 0.06000);
  477. CreateDynamicObject(19375, 353.54544, 154.44423, 1007.85602, 0.00000, 0.00000, 0.05999);
  478. CreateDynamicObject(19375, 353.49710, 183.53529, 1007.85602, 0.00000, 0.00000, 0.06000);
  479. CreateDynamicObject(19375, 353.46509, 193.17670, 1007.85602, 0.00000, 0.00000, 0.06000);
  480. CreateDynamicObject(2608, 353.82321, 167.31419, 1007.95831, 0.00000, 0.00000, 90.72000);
  481. CreateDynamicObject(2605, 354.20749, 173.68010, 1007.77222, 0.00000, 0.00000, 88.26000);
  482. CreateDynamicObject(1714, 354.79568, 173.68898, 1007.38281, 3.14159, 0.00000, 268.79813);
  483. CreateDynamicObject(1714, 358.88904, 174.61209, 1007.38281, 3.14159, 0.00000, 121.67824);
  484. CreateDynamicObject(1714, 358.55533, 172.42203, 1007.38281, 3.14159, 0.00000, 57.71823);
  485. CreateDynamicObject(2604, 354.08447, 185.09447, 1007.80963, 0.00000, 0.00000, 91.37997);
  486. CreateDynamicObject(19375, 382.37561, 169.46339, 1007.70422, 0.00000, 0.00000, 90.06000);
  487. CreateDynamicObject(19375, 391.87961, 169.46339, 1007.70422, 0.00000, 0.00000, 90.06000);
  488. CreateDynamicObject(19375, 382.35001, 178.07130, 1007.70422, 0.00000, 0.00000, 90.06000);
  489. CreateDynamicObject(19375, 391.96600, 178.07130, 1007.70422, 0.00000, 0.00000, 90.06000);
  490. CreateDynamicObject(19375, 390.69495, 173.28471, 1007.70422, 0.00000, 0.00000, 0.18001);
  491. CreateDynamicObject(1536, 390.61890, 175.26860, 1007.34418, 0.00000, 0.00000, -89.28000);
  492. CreateDynamicObject(1536, 390.66489, 172.26810, 1007.34418, 0.00000, 0.00000, 90.06010);
  493. CreateDynamicObject(638, 390.24112, 170.88264, 1008.07202, 0.00000, 0.00000, 0.00000);
  494. CreateDynamicObject(638, 390.23160, 176.63141, 1008.07202, 0.00000, 0.00000, 0.00000);
  495. CreateDynamicObject(1775, 362.71005, 158.55952, 1008.49127, 0.00000, 0.00000, 180.65976);
  496. CreateDynamicObject(1775, 361.02835, 188.98401, 1008.49127, 0.00000, 0.00000, 1.13976);
  497. CreateDynamicObject(3858, 357.80090, 183.01378, 1007.70300, 0.00000, 0.00000, 135.11995);
  498. CreateDynamicObject(3858, 357.83472, 164.08839, 1007.70300, 0.00000, 0.00000, 134.93996);
  499. CreateDynamicObject(1703, 372.13443, 188.78094, 1007.37500, 356.85840, 0.00000, 0.02159);
  500. CreateDynamicObject(1704, 376.95386, 181.25540, 1007.38538, 0.00000, 0.00000, -90.00000);
  501. CreateDynamicObject(1704, 359.92679, 158.66048, 1007.36902, 0.00000, 0.00000, -179.40015);
  502. CreateDynamicObject(1704, 361.26682, 158.66170, 1007.36902, 0.00000, 0.00000, -179.52014);
  503. //REMOVEBUILDINGS
  504. //STADTHALLE INTERIOR / REMOVES
  505. RemoveBuildingForPlayer(playerid, 2164, 353.5391, 167.8438, 1007.3750, 0.25);
  506. RemoveBuildingForPlayer(playerid, 2164, 353.5391, 166.0703, 1007.3750, 0.25);
  507. RemoveBuildingForPlayer(playerid, 1806, 355.8516, 163.2422, 1007.3672, 0.25);
  508. RemoveBuildingForPlayer(playerid, 2190, 357.2969, 162.9531, 1008.2813, 0.25);
  509. RemoveBuildingForPlayer(playerid, 2190, 357.2969, 166.0391, 1008.2813, 0.25);
  510. RemoveBuildingForPlayer(playerid, 2163, 353.5391, 175.1641, 1007.3750, 0.25);
  511. RemoveBuildingForPlayer(playerid, 2167, 353.5391, 173.8828, 1007.3750, 0.25);
  512. RemoveBuildingForPlayer(playerid, 1806, 354.9531, 168.5469, 1007.3672, 0.25);
  513. RemoveBuildingForPlayer(playerid, 2190, 357.2969, 168.7734, 1008.2813, 0.25);
  514. RemoveBuildingForPlayer(playerid, 1806, 355.8516, 178.8672, 1007.3672, 0.25);
  515. RemoveBuildingForPlayer(playerid, 2190, 357.2969, 178.4531, 1008.2813, 0.25);
  516. RemoveBuildingForPlayer(playerid, 1806, 355.8516, 182.4063, 1007.3672, 0.25);
  517. RemoveBuildingForPlayer(playerid, 2190, 357.2969, 182.4141, 1008.2813, 0.25);
  518. RemoveBuildingForPlayer(playerid, 2162, 353.5234, 183.6406, 1007.3750, 0.25);
  519. RemoveBuildingForPlayer(playerid, 1806, 355.8516, 186.3125, 1007.3672, 0.25);
  520. RemoveBuildingForPlayer(playerid, 2190, 357.2969, 186.0313, 1008.2813, 0.25);
  521. RemoveBuildingForPlayer(playerid, 1776, 361.5625, 158.6172, 1008.4766, 0.25);
  522. RemoveBuildingForPlayer(playerid, 2001, 359.8672, 158.6875, 1007.3750, 0.25);
  523. RemoveBuildingForPlayer(playerid, 2001, 363.4609, 158.6875, 1007.3750, 0.25);
  524. RemoveBuildingForPlayer(playerid, 1714, 359.0547, 173.5859, 1007.3828, 0.25);
  525. RemoveBuildingForPlayer(playerid, 2001, 364.6016, 170.6484, 1007.3750, 0.25);
  526. RemoveBuildingForPlayer(playerid, 14598, 364.7266, 173.8906, 1022.9375, 0.25);
  527. RemoveBuildingForPlayer(playerid, 2001, 364.6641, 176.9766, 1007.3750, 0.25);
  528. RemoveBuildingForPlayer(playerid, 2001, 374.0078, 170.6406, 1007.3750, 0.25);
  529. RemoveBuildingForPlayer(playerid, 2001, 373.9766, 176.9453, 1007.3750, 0.25);
  530. RemoveBuildingForPlayer(playerid, 2010, 377.0078, 180.1406, 1007.3750, 0.25);
  531. RemoveBuildingForPlayer(playerid, 1703, 373.6641, 182.5703, 1007.3750, 0.25);
  532. RemoveBuildingForPlayer(playerid, 1703, 371.6563, 183.8438, 1007.3750, 0.25);
  533. RemoveBuildingForPlayer(playerid, 1817, 373.0234, 184.2500, 1007.3750, 0.25);
  534. RemoveBuildingForPlayer(playerid, 1703, 372.5234, 186.0781, 1007.3750, 0.25);
  535. RemoveBuildingForPlayer(playerid, 1703, 374.7734, 184.9844, 1007.3750, 0.25);
  536. RemoveBuildingForPlayer(playerid, 2011, 371.0781, 188.9297, 1007.3750, 0.25);
  537. RemoveBuildingForPlayer(playerid, 2002, 373.4688, 188.9375, 1007.3750, 0.25);
  538. RemoveBuildingForPlayer(playerid, 1776, 374.8906, 188.9766, 1008.4766, 0.25);
  539. RemoveBuildingForPlayer(playerid, 1502, 365.7969, 196.2734, 1007.3750, 0.25);
  540. return 1;
  541. }
  542.  
  543. public OnPlayerDisconnect(playerid, reason)
  544. {
  545. ResetPlayer(playerid);
  546. return 1;
  547. }
  548.  
  549. public OnPlayerSpawn(playerid)
  550. {
  551. return 1;
  552. }
  553.  
  554. public OnPlayerDeath(playerid, killerid, reason)
  555. {
  556. return 1;
  557. }
  558.  
  559. public OnVehicleSpawn(vehicleid)
  560. {
  561. return 1;
  562. }
  563.  
  564. public OnVehicleDeath(vehicleid, killerid)
  565. {
  566. return 1;
  567. }
  568.  
  569. public OnPlayerText(playerid, text[])
  570. {
  571. return 1;
  572. }
  573.  
  574. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  575. {
  576. return 1;
  577. }
  578.  
  579. public OnPlayerExitVehicle(playerid, vehicleid)
  580. {
  581. return 1;
  582. }
  583.  
  584. public OnPlayerStateChange(playerid, newstate, oldstate)
  585. {
  586. return 1;
  587. }
  588.  
  589. public OnPlayerEnterCheckpoint(playerid)
  590. {
  591. return 1;
  592. }
  593.  
  594. public OnPlayerLeaveCheckpoint(playerid)
  595. {
  596. return 1;
  597. }
  598.  
  599. public OnPlayerEnterRaceCheckpoint(playerid)
  600. {
  601. return 1;
  602. }
  603.  
  604. public OnPlayerLeaveRaceCheckpoint(playerid)
  605. {
  606. return 1;
  607. }
  608.  
  609. public OnRconCommand(cmd[])
  610. {
  611. return 1;
  612. }
  613.  
  614. public OnPlayerRequestSpawn(playerid)
  615. {
  616. return 1;
  617. }
  618.  
  619. public OnObjectMoved(objectid)
  620. {
  621. return 1;
  622. }
  623.  
  624. public OnPlayerObjectMoved(playerid, objectid)
  625. {
  626. return 1;
  627. }
  628.  
  629. public OnPlayerPickUpPickup(playerid, pickupid)
  630. {
  631. return 1;
  632. }
  633.  
  634. public OnVehicleMod(playerid, vehicleid, componentid)
  635. {
  636. return 1;
  637. }
  638.  
  639. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  640. {
  641. return 1;
  642. }
  643.  
  644. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  645. {
  646. return 1;
  647. }
  648.  
  649. public OnPlayerSelectedMenuRow(playerid, row)
  650. {
  651. return 1;
  652. }
  653.  
  654. public OnPlayerExitedMenu(playerid)
  655. {
  656. return 1;
  657. }
  658.  
  659. public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
  660. {
  661. return 1;
  662. }
  663.  
  664. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  665. {
  666. if(newkeys & KEY_SECONDARY_ATTACK)
  667. {
  668. if(GetPlayerState(playerid) == PLAYER_STATE_ONFOOT)
  669. {
  670. cmd_betreten(playerid, "");
  671. cmd_verlassen(playerid, "");
  672. }
  673. }
  674. return 1;
  675. }
  676.  
  677. public OnRconLoginAttempt(ip[], password[], success)
  678. {
  679. return 1;
  680. }
  681.  
  682. public OnPlayerUpdate(playerid)
  683. {
  684. return 1;
  685. }
  686.  
  687. public OnPlayerStreamIn(playerid, forplayerid)
  688. {
  689. return 1;
  690. }
  691.  
  692. public OnPlayerStreamOut(playerid, forplayerid)
  693. {
  694. return 1;
  695. }
  696.  
  697. public OnVehicleStreamIn(vehicleid, forplayerid)
  698. {
  699. return 1;
  700. }
  701.  
  702. public OnVehicleStreamOut(vehicleid, forplayerid)
  703. {
  704. return 1;
  705. }
  706.  
  707. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  708. {
  709. if(dialogid == DIALOG_REGISTER)
  710. {
  711. if(strlen(inputtext) < 6)
  712. {
  713. SendClientMessage(playerid, CHATFARBE, "Dein Passwort muss mindestens 6 Zeichen lang sein!");
  714. return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT,"{30ACBF}Registrierung","{FFFF00}\nDu kannst jetzt erneut versuchen dich zu registrieren.\nWähle ein sicheres Passwort, mit mindestens 6 Zeichen!","Auswahl","Abbrechen");
  715. }
  716. new query[150];
  717. format(query, sizeof(query), "INSERT INTO `accounts` (Name, Passwort) VALUES (\'%s\', \'%s\')",PlayerName(playerid),inputtext);
  718. mysql_tquery(MysqlConnection, query, "", "");
  719. SendClientMessage(playerid, CHATFARBE, "Du hast dich erfolgreich registriert!");
  720. SetSpawnInfo(playerid, 0, 3, 1545.6979,-1675.7111,13.5609,91.3236,0,0,0,0,0,0);
  721. SpawnPlayer(playerid);
  722. CancelSelectTextDraw(playerid);
  723. PlayerTextDrawHide(playerid, LoginDraw10);
  724. TextDrawHideForPlayer(playerid, LoginDraw1);
  725. TextDrawHideForPlayer(playerid, LoginDraw2);
  726. TextDrawHideForPlayer(playerid, LoginDraw3);
  727. TextDrawHideForPlayer(playerid, LoginDraw4);
  728. TextDrawHideForPlayer(playerid, LoginDraw5);
  729. TextDrawHideForPlayer(playerid, LoginDraw6);
  730. TextDrawHideForPlayer(playerid, LoginDraw7);
  731. TextDrawHideForPlayer(playerid, LoginDraw8);
  732. TextDrawHideForPlayer(playerid, LoginDraw9);
  733. PlayerTextDrawHide(playerid, LoginDraw11);
  734. PlayerTextDrawHide(playerid, LoginDraw12);
  735. PlayerTextDrawHide(playerid, LoginDraw13);
  736. TextDrawHideForPlayer(playerid, LoginDraw14);
  737. TextDrawHideForPlayer(playerid, LoginDraw15);
  738.  
  739. }
  740. else if(dialogid == DIALOG_LOGIN)
  741. {
  742. if(!isnull(inputtext) && strcmp(SpielerInfo[playerid][uPasswort],inputtext,false) == 0)
  743. {
  744. SendClientMessage(playerid, CHATFARBE, "Du hast dich erfolgreich eingeloggt!");
  745. SetSpawnInfo(playerid, 0, 3, 1545.6979,-1675.7111,13.5609,91.3236, 0, 0, 0, 0, 0, 0);
  746. CancelSelectTextDraw(playerid);
  747. PlayerTextDrawHide(playerid, LoginDraw10);
  748. TextDrawHideForPlayer(playerid, LoginDraw1);
  749. TextDrawHideForPlayer(playerid, LoginDraw2);
  750. TextDrawHideForPlayer(playerid, LoginDraw3);
  751. TextDrawHideForPlayer(playerid, LoginDraw4);
  752. TextDrawHideForPlayer(playerid, LoginDraw5);
  753. TextDrawHideForPlayer(playerid, LoginDraw6);
  754. TextDrawHideForPlayer(playerid, LoginDraw7);
  755. TextDrawHideForPlayer(playerid, LoginDraw8);
  756. TextDrawHideForPlayer(playerid, LoginDraw9);
  757. PlayerTextDrawHide(playerid, LoginDraw11);
  758. PlayerTextDrawHide(playerid, LoginDraw12);
  759. PlayerTextDrawHide(playerid, LoginDraw13);
  760. TextDrawHideForPlayer(playerid, LoginDraw14);
  761. TextDrawHideForPlayer(playerid, LoginDraw15);
  762. return SpawnPlayer(playerid);
  763. }
  764. SendClientMessage(playerid, CHATFARBE, "Du hast ein falsches Passwort eingegeben, versuche es erneut!");
  765. ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,"{30ACBF}Einloggen","{FFFF00}\nDu hast ein falsches Passwort eingegeben!\nDu kannst jetzt versuchen dich neu einzuloggen.\nGebe jetzt dein richtiges Passwort ein!","Auswahl","Abbrechen");
  766. }
  767. if(dialogid == DIALOG_HELP)
  768. {
  769. if(response)
  770. {
  771. switch(listitem)
  772. {
  773. case 0: ShowPlayerDialog(playerid, DIALOG_HELPBOX, DIALOG_STYLE_MSGBOX, "Allgemeine Hilfe","{FFFF00}HILFE FOLGT:","Auswahl","");
  774. case 1: ShowPlayerDialog(playerid, DIALOG_HELPBOX, DIALOG_STYLE_MSGBOX, "Handy Hilfe","{FFFF00}HILFE FOLGT:","Auswahl","");
  775. case 2: ShowPlayerDialog(playerid, DIALOG_HELPBOX, DIALOG_STYLE_MSGBOX, "Beruf Hilfe","{FFFF00}HILFE FOLGT:","Auswahl","");
  776. case 3: ShowPlayerDialog(playerid, DIALOG_HELPBOX, DIALOG_STYLE_MSGBOX, "Fraktion Hilfe","{FFFF00}HILFE FOLGT:","Auswahl","");
  777. case 4: ShowPlayerDialog(playerid, DIALOG_HELPBOX, DIALOG_STYLE_MSGBOX, "Haus Hilfe","{FFFF00}HILFE FOLGT:","Auswahl","");
  778. case 5: ShowPlayerDialog(playerid, DIALOG_HELPBOX, DIALOG_STYLE_MSGBOX, "Business Hilfe","{FFFF00}HILFE FOLGT:","Auswahl","");
  779. }
  780. }
  781. }
  782. return 1;
  783. }
  784.  
  785. /*public OnPlayerClickTextDraw(playerid, Text:clickedid)
  786. {
  787. if(playertextid == LoginDraw10)
  788. {
  789. }
  790. return 1;
  791. }*/
  792.  
  793. public OnPlayerClickPlayerTextDraw(playerid, PlayerText:playertextid)
  794. {
  795. if(playertextid == LoginDraw10)
  796. {
  797. if(SpielerInfo[playerid][uRegistriert])
  798. return ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,"{30ACBF}Einloggen","{FFFF00}\nWillkommen zurück! Gebe dein Passwort ein:","Auswahl","Abbrechen");
  799. ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT,"{30ACBF}Registrierung","{FFFF00}\nHerzlich Willkommen, du kannst dir jetzt einen Account erstellen.\nWähle ein sicheres Passwort, mit mindestens 6 Zeichen.","Auswahl","Abbrechen");
  800. }
  801. if(playertextid == LoginDraw11)
  802. {
  803. ShowPlayerDialog(playerid,DIALOG_CHANGELOG, DIALOG_STYLE_MSGBOX,"{30ACBF}Script Changelog","{FFFF00}\n~ Register & Login System erstellt\n~ Textdraws für Loginbildschirm erstellt\n","Gelesen","");
  804. }
  805. if(playertextid == LoginDraw12)
  806. {
  807. ShowPlayerDialog(playerid,DIALOG_CHANGELOG, DIALOG_STYLE_MSGBOX,"{30ACBF}Serverinfo","{FFFF00}\nReallife Server - Selfmade\n\n","Gelesen","");
  808. }
  809. if(playertextid == LoginDraw13)
  810. {
  811. ShowPlayerDialog(playerid,DIALOG_CHANGELOG, DIALOG_STYLE_MSGBOX,"{30ACBF}Script Informatioen","{FFFF00}\nSelfmade Script basierend auf Reallife\n\nVersion: v0.0.1\n\nScripter: Anthony_Lopes\n\nScriptzeilen: "#ZEILEN"","Gelesen","");
  812. }
  813. return 1;
  814. }
  815.  
  816. //ADMIN BEFEHLE
  817. cmd:gmx(playerid,params[]) return cmd_restart(playerid,"");
  818. cmd:restart(playerid,params[])
  819. {
  820. if(SpielerInfo[playerid][uAdmin] < 4) return SendClientMessage(playerid, FARBE_KEINERFOLG, "Du darfst diesen Befehl nicht benutzen!");
  821. SavePlayer(playerid);
  822. return SendRconCommand("gmx");
  823. }
  824. cmd:speichern(playerid,params[])
  825. {
  826. if(SpielerInfo[playerid][uAdmin] < 3)
  827. for(new i = 0; i < MAX_PLAYERS; i++) if(IsPlayerConnected(i) && !IsPlayerNPC(i)) SavePlayer(i);
  828. return SendClientMessage(playerid, FARBE_ERFOLG, "Alle Daten und Statistiken wurden erfolgreich gespeichert.");
  829. }
  830. cmd:makeadmin(playerid,params[])
  831. {
  832. if(!IsPlayerAdmin(playerid) && SpielerInfo[playerid][uAdmin] < 5) return SendClientMessage(playerid, FARBE_KEINERFOLG, "Du darfst diesen Befehl nicht benutzen!");
  833. new rang;
  834. if(sscanf(params,"ud",giveplayerid,rang)) return SendClientMessage(playerid,FARBE_KEINERFOLG,"Verwendung: /makeadmin [Name/ID] [Adminrang]");
  835. if(giveplayerid == INVALID_PLAYER_ID) return SendClientMessage(playerid,FARBE_KEINERFOLG,"Ungültiger Spieler!");
  836. SpielerInfo[giveplayerid][uAdmin] = rang;
  837. new string[80];
  838. SendFormatMessage(giveplayerid,FARBE_ERFOLG,string,"%s hat dir das Adminlevel %d gegeben.",PlayerName(playerid),rang);
  839. SendFormatMessage(playerid,FARBE_ERFOLG,string,"Du hast %s das Adminlevel %d gegeben.",PlayerName(giveplayerid),rang);
  840. return 1;
  841. }
  842. cmd:getxyz(playerid,params[])
  843. {
  844. if(SpielerInfo[playerid][uAdmin] < 2) return SendClientMessage(playerid, FARBE_KEINERFOLG, "Du darfst diesen Befehl nicht benutzen!");
  845. new Float:X,Float:Y,Float:Z,string[100];
  846. GetPlayerPos(playerid,X,Y,Z);
  847. SendFormatMessage(playerid,FARBE_ERFOLG,string,"X: %f, Y: %f, Z: %f",X,Y,Z);
  848. return 1;
  849. }
  850. cmd:gotoxyz(playerid,params[])
  851. {
  852. if(SpielerInfo[playerid][uAdmin] < 3) return SendClientMessage(playerid, FARBE_KEINERFOLG, "Du darfst diesen Befehl nicht benutzen!");
  853. new Float:X,Float:Y,Float:Z,welt = 0;
  854. if(sscanf(params,"p<,>fff", X,Y,Z)) return SendClientMessage(playerid,FARBE_KEINERFOLG,"Verwendung: /gotoxyz [X Y Z]");
  855. sscanf(params,"p<,>fffd", X,Y,Z,welt);
  856. SetPlayerPos(playerid,X,Y,Z);
  857. SetPlayerVirtualWorld(playerid,welt);
  858. return 1;
  859. }
  860. cmd:goto(playerid,params[])
  861. {
  862. if(SpielerInfo[playerid][uAdmin] < 2) return SendClientMessage(playerid, FARBE_KEINERFOLG, "Du darfst diesen Befehl nicht benutzen!");
  863. if(sscanf(params,"u", giveplayerid)) return SendClientMessage(playerid,FARBE_KEINERFOLG,"Verwendung: /goto [Name/ID]");
  864. if(giveplayerid == INVALID_PLAYER_ID) return SendClientMessage(playerid,FARBE_KEINERFOLG,"Ungültiger Spieler!");
  865. new Float:X,Float:Y,Float:Z,veh = GetPlayerVehicleID(playerid);
  866. GetPlayerPos(giveplayerid,X,Y,Z);
  867. SetPlayerPos(playerid,X,Y+1,Z+1);
  868. SetPlayerInterior(playerid,GetPlayerInterior(giveplayerid));
  869. SetPlayerVirtualWorld(playerid,GetPlayerVirtualWorld(giveplayerid));
  870. if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
  871. {
  872. SetVehiclePos(veh, X,Y+1,Z+1);
  873. PutPlayerInVehicle(playerid, veh, 0);
  874. }
  875. new string[100];
  876. SendFormatMessage(playerid,FARBE_ERFOLG,string,"Du hast dich zu %s teleportiert!",PlayerName(giveplayerid));
  877. return 1;
  878. }
  879. cmd:gethere(playerid,params[])
  880. {
  881. if(SpielerInfo[playerid][uAdmin] < 2) return SendClientMessage(playerid, FARBE_KEINERFOLG, "Du darfst diesen Befehl nicht benutzen!");
  882. if(sscanf(params,"r", giveplayerid)) return SendClientMessage(playerid,FARBE_KEINERFOLG,"Verwendung: /gethere [Name/ID]");
  883. if(giveplayerid == INVALID_PLAYER_ID) return SendClientMessage(playerid,FARBE_KEINERFOLG,"Ungültiger Spieler!");
  884. new Float:X,Float:Y,Float:Z;
  885. GetPlayerPos(playerid,X,Y,Z);
  886. SetPlayerPos(giveplayerid,X,Y+1,Z+1);
  887. SetPlayerInterior(giveplayerid,GetPlayerInterior(playerid));
  888. SetPlayerVirtualWorld(giveplayerid,GetPlayerVirtualWorld(playerid));
  889. new string[100];
  890. SendFormatMessage(playerid,FARBE_ERFOLG,string,"Du hast %s zu dir teleportiert!",PlayerName(giveplayerid));
  891. SendFormatMessage(giveplayerid,FARBE_ERFOLG,string,"Du wurdest zu %s teleportiert!",PlayerName(playerid));
  892. return 1;
  893. }
  894. cmd:freeze(playerid,params[])
  895. {
  896. if(SpielerInfo[playerid][uAdmin] < 2) return SendClientMessage(playerid, FARBE_KEINERFOLG, "Du darfst diesen Befehl nicht benutzen!");
  897. if(sscanf(params,"r", giveplayerid)) return SendClientMessage(playerid,FARBE_KEINERFOLG,"Verwendung: /freeze [Name/ID]");
  898. if(giveplayerid == INVALID_PLAYER_ID) return SendClientMessage(playerid,FARBE_KEINERFOLG,"Ungültiger Spieler!");
  899. TogglePlayerControllable(giveplayerid, false);
  900. new string[100];
  901. SendFormatMessage(playerid,FARBE_ERFOLG,string,"Du hast %s gefreezt!",PlayerName(giveplayerid));
  902. SendFormatMessage(giveplayerid,FARBE_ERFOLG,string,"Du wurdest von %s gefreezt!",PlayerName(playerid));
  903. return 1;
  904. }
  905. cmd:unfreeze(playerid,params[])
  906. {
  907. if(SpielerInfo[playerid][uAdmin] < 2) return SendClientMessage(playerid, FARBE_KEINERFOLG, "Du darfst diesen Befehl nicht benutzen!");
  908. if(sscanf(params,"r", giveplayerid)) return SendClientMessage(playerid,FARBE_KEINERFOLG,"Verwendung: /gethere [Name/ID]");
  909. if(giveplayerid == INVALID_PLAYER_ID) return SendClientMessage(playerid,FARBE_KEINERFOLG,"Ungültiger Spieler!");
  910. TogglePlayerControllable(giveplayerid, true);
  911. new string[100];
  912. SendFormatMessage(playerid,FARBE_ERFOLG,string,"Du hast %s entfreezt!",PlayerName(giveplayerid));
  913. SendFormatMessage(giveplayerid,FARBE_ERFOLG,string,"Du wurdest von %s entfreezt!",PlayerName(playerid));
  914. return 1;
  915. }
  916. cmd:fixveh(playerid,params[])
  917. {
  918. if(SpielerInfo[playerid][uAdmin] < 3) return SendClientMessage(playerid, FARBE_KEINERFOLG, "Du darfst diesen Befehl nicht benutzen!");
  919. if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid,FARBE_KEINERFOLG,"Du musst dich in einem Fahrzeug befinden!");
  920. RepairVehicle(GetPlayerVehicleID(playerid));
  921. PlayerPlaySound(playerid,1133,0,0,0);
  922. SendClientMessage(playerid,FARBE_ERFOLG, "Du hast das Fahrzeug repariert!");
  923. return 1;
  924. }
  925. cmd:flipveh(playerid,params[])
  926. {
  927. if(SpielerInfo[playerid][uAdmin] < 3) return SendClientMessage(playerid, FARBE_KEINERFOLG, "Du darfst diesen Befehl nicht benutzen!");
  928. if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid,FARBE_KEINERFOLG,"Du musst dich in einem Fahrzeug befinden!");
  929. new Float:angle;
  930. GetVehicleZAngle(GetPlayerVehicleID(playerid),angle);
  931. SetVehicleZAngle(GetPlayerVehicleID(playerid),angle);
  932. return 1;
  933. }
  934. cmd:givegun(playerid,params[])
  935. {
  936. if(SpielerInfo[playerid][uAdmin] < 3) return SendClientMessage(playerid, FARBE_KEINERFOLG, "Du darfst diesen Befehl nicht benutzen!");
  937. new waffe,muni;
  938. if(sscanf(params,"rii", giveplayerid,waffe,muni)) return SendClientMessage(playerid,FARBE_KEINERFOLG,"Verwendung: /givegun [Name/ID] [Waffe] [Munition]");
  939. if(giveplayerid == INVALID_PLAYER_ID) return SendClientMessage(playerid,FARBE_KEINERFOLG,"Ungültiger Spieler!");
  940. GivePlayerWeapon(giveplayerid,waffe,muni);
  941. return 1;
  942. }
  943. cmd:veh(playerid,params[])
  944. {
  945. if(SpielerInfo[playerid][uAdmin] < 3) return SendClientMessage(playerid, FARBE_KEINERFOLG, "Du darfst diesen Befehl nicht benutzen!");
  946. new veh,color1 = -1,color2 = -1,Float:X,Float:Y,Float:Z,carid;
  947. if(sscanf(params,"d", veh)) return SendClientMessage(playerid,FARBE_KEINERFOLG,"Verwendung: /veh [Modell]");
  948. sscanf(params,"ddd", veh, color1, color2);
  949. GetPlayerPos(playerid,X,Y,Z);
  950. if(veh == 537 || veh == 538) carid = AddStaticVehicleEx(veh,X,Y,Z,-1,color1,color2,-1);
  951. else carid = CreateVehicle(veh,X,Y,Z,-1,color1,color2,-1);
  952. SetVehicleNumberPlate(carid,"Admin");
  953. SetVehicleToRespawn(carid);
  954. PutPlayerInVehicle(playerid,carid,0);
  955. return 1;
  956. }
  957. cmd:delveh(playerid,params[])
  958. {
  959. if(SpielerInfo[playerid][uAdmin] < 3) return SendClientMessage(playerid, FARBE_KEINERFOLG, "Du darfst diesen Befehl nicht benutzen!");
  960. new veh;
  961. if(sscanf(params,"d", veh)) return SendClientMessage(playerid,FARBE_KEINERFOLG,"Verwendung: /desveh [VehID]");
  962. DestroyVehicle(veh);
  963. return 1;
  964. }
  965. cmd:kick(playerid, params[])
  966. {
  967. new pID, reason[64];
  968. if(!sscanf(params, "us", pID, reason))
  969. {
  970. if(!IsPlayerAdmin(playerid) && SpielerInfo[playerid][uAdmin] < 1) return SendClientMessage(playerid, FARBE_KEINERFOLG, "Du darfst diesen Befehl nicht benutzen!");
  971. {
  972. new string[128];
  973. new adminname[MAX_PLAYER_NAME];
  974. new playername[MAX_PLAYER_NAME];
  975.  
  976. GetPlayerName(playerid, adminname, sizeof(adminname));
  977. GetPlayerName(pID, playername, sizeof(playername));
  978.  
  979. format(string, sizeof(string), "[SERVER]: Der Spieler %s wurde von %s gekickt, Grund: %s", playername, adminname, reason);
  980. SendClientMessageToAll(FARBE_ROT, string);
  981. KickLog(string);
  982. Kick(pID);
  983. }
  984. }
  985. else return SendClientMessage(playerid, FARBE_KEINERFOLG, "Verwendung: /kick [ID] [Grund]");
  986. return 1;
  987. }
  988. //BEFEHLE
  989. cmd:engine(playerid,params[]) return cmd_motor(playerid,"");
  990. cmd:motor(playerid,params[])
  991. {
  992. if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return 1;
  993. new engine,lights,alarm,doors,bonnet,boot,objective;
  994. new vid = GetPlayerVehicleID(playerid);
  995. GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
  996. if(vid != INVALID_VEHICLE_ID)
  997. {
  998. if(engine == VEHICLE_PARAMS_ON)
  999. {
  1000. SetVehicleParamsEx(vid,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
  1001. SendClientMessage(playerid, FARBE_INFO ,"Du hast den Motor ausgeschaltet!");
  1002. }
  1003. else
  1004. {
  1005. SetVehicleParamsEx(vid,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
  1006. SendClientMessage(playerid, FARBE_INFO ,"Du hast den Motor angeschaltet!");
  1007. }
  1008. }
  1009. return 1;
  1010. }
  1011. cmd:lights(playerid,params[]) return cmd_licht(playerid,"");
  1012. cmd:licht(playerid,params[])
  1013. {
  1014. new vid = GetPlayerVehicleID(playerid);
  1015. new engine,lights,alarm,doors,bonnet,boot,objective;
  1016. if(licht[vid] == 0)
  1017. {
  1018. GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
  1019. SetVehicleParamsEx(vid,engine,VEHICLE_PARAMS_ON,alarm,doors,bonnet,boot,objective);
  1020. licht[vid] = 1;
  1021. SendClientMessage(playerid, FARBE_INFO ,"Du hast die Scheinwerfer ausgeschaltet!");
  1022. }
  1023. else
  1024. {
  1025. GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
  1026. SetVehicleParamsEx(vid,engine,VEHICLE_PARAMS_OFF,alarm,doors,bonnet,boot,objective);
  1027. licht[vid] = 0;
  1028. SendClientMessage(playerid, FARBE_INFO,"Du hast die Scheinwerfer angeschaltet!");
  1029. }
  1030. return 1;
  1031. }
  1032. cmd:statistik(playerid,params[]) return cmd_stats(playerid,"");
  1033. cmd:stats(playerid,params[])
  1034. {
  1035. new string[250];
  1036. format(string,sizeof(string),"{FF5C00}[Account]\n{FFFFFF}Adminlevel: %d",SpielerInfo[playerid][uAdmin]);
  1037. ShowPlayerDialog(playerid, DIALOG_STATS, DIALOG_STYLE_MSGBOX, "Account Statistik",string,"Fertig","");
  1038. return 1;
  1039. }
  1040. cmd:hilfe(playerid,params[]) return cmd_help(playerid,"");
  1041. cmd:help(playerid,params[])
  1042. {
  1043. ShowPlayerDialog(playerid, DIALOG_HELP, DIALOG_STYLE_LIST,"{30ACBF}Server Hilfe","Allgemeine Hilfe\nHandy Hilfe\nBeruf Hilfe\nFraktion Hilfe\nHaus Hilfe\nBusiness Hilfe","Auswahl","Abbrechen");
  1044. return 1;
  1045. }
  1046. cmd:enter(playerid,params[]) return cmd_betreten(playerid,"");
  1047. cmd:betreten(playerid, params[])
  1048. {
  1049. for(new i = 0; i < sizeof(EnterExit); i++)
  1050. {
  1051. if(IsPlayerInRangeOfPoint(playerid, 1.0, EnterExit[i][ex], EnterExit[i][ey], EnterExit[i][ez]))
  1052. {
  1053. Freeze(playerid), SetTimerEx("Unfreeze",800,0,"d",playerid);
  1054. Streamer_UpdateEx(playerid, EnterExit[i][iex], EnterExit[i][iey], EnterExit[i][iez]);
  1055. SetPlayerPos(playerid, EnterExit[i][iex], EnterExit[i][iey], EnterExit[i][iez]);
  1056. SetPlayerVirtualWorld(playerid, i);
  1057. SetPlayerInterior(playerid,EnterExit[i][eint]);
  1058. return 1;
  1059. }
  1060. }
  1061. return 1;
  1062. }
  1063. cmd:exit(playerid,params[]) return cmd_verlassen(playerid,"");
  1064. cmd:verlassen(playerid, params[])
  1065. {
  1066. for(new i=0; i<sizeof(EnterExit); i++)
  1067. {
  1068. if(IsPlayerInRangeOfPoint(playerid, 1.0, EnterExit[i][iex], EnterExit[i][iey], EnterExit[i][iez]) && GetPlayerInterior(playerid) == EnterExit[i][eint] && GetPlayerVirtualWorld(playerid) == i)
  1069. {
  1070. Freeze(playerid), SetTimerEx("Unfreeze",800,0,"d",playerid);
  1071. Streamer_UpdateEx(playerid,EnterExit[i][ex], EnterExit[i][ey], EnterExit[i][ez]);
  1072. SetPlayerPos(playerid, EnterExit[i][ex], EnterExit[i][ey], EnterExit[i][ez]);
  1073. SetPlayerVirtualWorld(playerid,0);
  1074. SetPlayerInterior(playerid,0);
  1075. return 1;
  1076. }
  1077. }
  1078. return 1;
  1079. }
  1080.  
  1081. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  1082. {
  1083. return 1;
  1084. }
  1085.  
  1086. //LOGS
  1087. forward KickLog(string[]);
  1088. public KickLog(string[])
  1089. {
  1090. new entry[128];
  1091. format(entry, sizeof(entry), "%s\n",string);
  1092. new File:hFile;
  1093. hFile = fopen("kick.log", io_append);
  1094. fwrite(hFile, entry);
  1095. fclose(hFile);
  1096. }
  1097.  
  1098. //PUBLICS
  1099. forward Float:GetDistanceBetweenPlayers(p1,p2);
  1100. public Float:GetDistanceBetweenPlayers(p1,p2)
  1101. {
  1102. new Float:x1,Float:y1,Float:z1,Float:x2,Float:y2,Float:z2;
  1103. if(!IsPlayerConnected(p1) || !IsPlayerConnected(p2)) return -1.00;
  1104. GetPlayerPos(p1,x1,y1,z1);
  1105. GetPlayerPos(p2,x2,y2,z2);
  1106. return floatsqroot(floatpower(floatabs(floatsub(x2,x1)),2)+floatpower(floatabs(floatsub(y2,y1)),2)+floatpower(floatabs(floatsub(z2,z1)),2));
  1107. }
  1108.  
  1109. forward LoadPlayer(playerid);
  1110. public LoadPlayer(playerid)
  1111. {
  1112. if(!IsPlayerConnected(playerid)) return 1;
  1113. SpielerInfo[playerid][uID] = cache_get_field_content_int(0, "ID");
  1114. SpielerInfo[playerid][uAdmin] = cache_get_field_content_int(0, "Adminlevel");
  1115. SpielerInfo[playerid][uLevel] = cache_get_field_content_int(0, "Level");
  1116. SpielerInfo[playerid][uNeuling] = cache_get_field_content_int(0, "Neuling");
  1117. SpielerInfo[playerid][uSkin] = cache_get_field_content_int(0, "Skin");
  1118. return 1;
  1119. }
  1120.  
  1121. forward Freeze(playerid);
  1122. public Freeze(playerid)
  1123. {
  1124. TogglePlayerControllable(playerid,false);
  1125. return 1;
  1126. }
  1127.  
  1128. forward Unfreeze(playerid);
  1129. public Unfreeze(playerid)
  1130. {
  1131. TogglePlayerControllable(playerid,true);
  1132. return 1;
  1133. }
  1134.  
  1135. //STOCKS
  1136. stock ResetPlayer(playerid)
  1137. {
  1138. for(new x; _sInfo:x < _sInfo; ++x) SpielerInfo[playerid][_sInfo:x] = 0;
  1139. }
  1140.  
  1141. stock PlayerName(playerid)
  1142. {
  1143. new playername[MAX_PLAYER_NAME];
  1144. GetPlayerName(playerid, playername, sizeof playername);
  1145. return playername;
  1146. }
  1147.  
  1148. stock SendClientMessageToAdmins(const str[])
  1149. {
  1150. for(new i = 0; i <= GetPlayerPoolSize(); i++)
  1151. {
  1152. if(SpielerInfo[i][uAdmin] > 0)
  1153. {
  1154. SendClientMessage(i, RED, str);
  1155. }
  1156. }
  1157. return true;
  1158. }
  1159.  
  1160. stock SavePlayer(playerid)
  1161. {
  1162. new query[500];
  1163. #define SA SpielerInfo[playerid]
  1164. format(query, sizeof(query), "UPDATE `accounts` SET Adminlevel='%d',Level='%d',Geld='%s',Skin='%d',Neuling='%s'",SA[uAdmin],SA[uLevel],GetPlayerMoney(playerid),GetPlayerSkin(playerid),SA[uNeuling]);
  1165. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement