Advertisement
Guest User

Stunt-DM by Zinne

a guest
Oct 6th, 2012
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 74.83 KB | None | 0 0
  1. /*
  2.     (.)(.)    <IIIII>    MMMMM   MMMMM    PPPPPPP
  3.     ) . (       <I>      MM   MMM   MM    PP      PP
  4.     ( Y )       <I>      MM    M    MM    PP      PP
  5.      Y /        <I>      MM         MM    PPPPPPP
  6.     ( ( \       <I>      MM         MM    PP
  7.     (.)(.)    <IIIII>    MM         MM    PP
  8.  
  9.     © by Zinne™ & Impaact™
  10.  
  11.     == bedeutet "Ist gleich"
  12.     != bedeutet "ist nicht gleich"
  13.     <= bedeutet "ist kleinergleich als"
  14.     >= bedeutet "ist größergleich als"
  15.     <  bedeutet "ist kleiner als"
  16.     >  bedeutet "ist größer als"
  17.  
  18.     || bedeutet "oder"
  19.     && bedeutet "und"
  20.  
  21.     =  bedeutet "gleich betrag"
  22.     += bedeutet "plus betrag"
  23.     -= bedeutet "minus betrag"
  24.  
  25. */
  26.  
  27. /******************************************************************************/
  28.  
  29. #include <a_samp>
  30. #include <a_mysql>
  31. #include <ocmd>
  32. #include <MD5>
  33. #include <streamer>
  34.  
  35. /******************************************************************************/
  36.  
  37. #define SQL_HOST   "localhost"//176.31.29.108
  38. #define SQL_USER   "root"//Kunde1
  39. #define SQL_PASS   ""//dw5q6234y
  40. #define SQL_DATA   "samp_db"//Kunde1
  41.  
  42. /******************************************************************************/
  43.  
  44. enum SpielerDaten
  45. {
  46.     pName[MAX_PLAYER_NAME],
  47.     pLevel,
  48.     pGeld,
  49.     pAdmin,
  50.     pBanned,
  51.     pKills,
  52.     pTode,
  53.     pWarns,
  54.     pHatKonto,
  55.     pKonto,
  56.     pBankPIN,
  57.     pECKarte
  58. }
  59. new PlayerInfo[MAX_PLAYERS][SpielerDaten];
  60.  
  61. /*
  62.  
  63. Adminlevel 1: Supporter
  64. Adminlevel 2: Moderator
  65. Adminlevel 3: Admin
  66. Adminlevel 4: Lead-Admin
  67. Adminlevel 5: Headadmin / Serverowner
  68.  
  69. */
  70.  
  71. /******************************************************************************/
  72.  
  73. #define COLOR_FADE1 0xE6E6E6E6
  74. #define COLOR_FADE2 0xC8C8C8C8
  75. #define COLOR_FADE3 0xAAAAAAAA
  76. #define COLOR_FADE4 0x8C8C8C8C
  77. #define COLOR_FADE5 0x6E6E6E6E
  78. #define Blau 0x0000FFFF
  79. #define Rot 0xFF0000FF
  80. #define Gelb 0xFFFF00FF
  81. #define Weiss 0xFFFFFFFF
  82. #define COLOR_LIGHTRED 0xFF6347AA
  83. #define COLOR_LIGHTBLUE 0x33CCFFAA
  84. #define COLOR_LIGHTGREEN 0x9ACD32AA
  85. #define COLOR_YELLOW 0xFFFF00AA
  86. #define COLOR_YELLOW2 0xF5DEB3AA
  87. #define Dunkelrot 0xAF0000FF
  88. #define Grau 0x787878FF
  89. #define admwarn 0xFFB500FF
  90. #define admwarn2 0xFF9F00FF
  91. #define RestartCol 0x00A34DFF
  92. #define admchat 0xC5C100FF
  93. #define orange 0xFF9300FF
  94. #define hellblau 0x0093FFFF
  95. #define COLOR_WHITE 0xFFFFFFAA
  96. #define ROT 0xAA3333A
  97. #define grau 0xBEBEBEFF
  98. #define BLAU 0x0000BBAA
  99. #define Rot2 0xAA3333AA
  100.  
  101. /******************************************************************************/
  102.  
  103. #define DIALOG_REGISTER             001
  104. #define DIALOG_LOGIN                002
  105. #define DIALOG_BANK                 600
  106. #define DIALOG_KEIN_KONTO           601
  107. #define DIALOG_KONTOSTAND           602
  108. #define DIALOG_PIN_ERSTELLEN        603
  109. #define DIALOG_PIN                  604
  110. #define DIALOG_ABHEBEN              605
  111. #define DIALOG_EINZAHLEN            606
  112. #define DIALOG_FERTIG               607
  113. #define DIALOG_UEBERWEISUNG_BETRAG  608
  114. #define DIALOG_UEBERWEISEN_ID       609
  115. #define DIALOG_STATS                700
  116. #define DIALOG_REPORT               12345
  117. #define DIALOG_BESCHWERDE           23456
  118. #define DIALOG_SUPPORT              23457
  119. #define DIALOG_BUG                  23458
  120. #define DIALOG_ABBRECHEN            23459
  121. #define DIALOG_ADMINCAR             23490
  122.  
  123. /******************************************************************************/
  124.  
  125. new pTeam[MAX_PLAYERS];
  126. new Float:GroveRandomSpawn[3][3] = {
  127.     {2486.8848,-1649.7190,13.4850},
  128.     {2494.7207,-1683.7577,13.3386},
  129.     {2508.8916,-1684.6655,13.5598}
  130. };
  131.  
  132. new Float:BallasRandomSpawn[2][3] = {
  133.     {912.4097,-1233.0724,16.9766},
  134.     {918.1994,-1252.4818,16.2109}
  135. };
  136.  
  137. new Float:ZiviRandomSpawn[3][3] = {
  138.     {912.3110,-1234.9717,17.2109},
  139.     {901.2925,-1203.1482,16.9832},
  140.     {867.2197,-1203.0820,16.9766}
  141. };
  142.  
  143. /******************************************************************************/
  144.  
  145. new Ueberweiser[MAX_PLAYERS] ={-1,...};
  146. new DarfECAbholen[MAX_PLAYERS];
  147. new vehicle_info[MAX_VEHICLES];
  148. new Float:x;
  149. new Float:y;
  150. new Float:z;
  151. new Float:angle;
  152. new AdminCar;
  153.  
  154. /******************************************************************************/
  155.  
  156. #define SPD ShowPlayerDialog
  157. #define SCM SendClientMessage
  158. #define IPC IsPlayerConnected
  159.  
  160. /******************************************************************************/
  161.  
  162. #define TEAM_ZIVI 1
  163. #define TEAM_GROVE 2
  164. #define TEAM_BALLAS 3
  165.  
  166. /******************************************************************************/
  167.  
  168. #define COLOR_TEAM_ZIVI     0xE7E400FF
  169. #define COLOR_TEAM_GROVE    0x009D00AA
  170. #define COLOR_TEAM_BALLAS   0xFF00FFAA
  171.  
  172. /******************************************************************************/
  173.  
  174. forward SetPlayerTeamSetup(playerid, classid);
  175. forward Restart();
  176. forward ECKarteFertig(playerid);
  177. forward IsAtATM(playerid);
  178. forward cargod(playerid);
  179. forward KickAll();
  180.  
  181. /******************************************************************************/
  182.  
  183. public cargod(playerid)
  184. {
  185.     if(isPlayerAnAdmin(playerid,3))
  186.     {
  187.         new pCar = GetPlayerVehicleID(playerid);
  188.         RepairVehicle(pCar);
  189.     }
  190. }
  191.  
  192. public Restart()
  193. {
  194.     SendRconCommand("gmx");
  195.     return 1;
  196. }
  197.  
  198. public KickAll()
  199. {
  200.     for(new i=0; i<GetMaxPlayers(); i++)
  201.     {
  202.         if(IsPlayerConnected(i))
  203.         {
  204.             Kick(i);
  205.         }
  206.     }
  207. }
  208.  
  209. main()
  210. {
  211.     print("\n----------------------------------");
  212.     print(" Stunt-Deathmatch Script by Zinne and Impaact started.");
  213.     print("----------------------------------\n");
  214. }
  215.  
  216. public OnGameModeInit()
  217. {
  218.     SetGameModeText("Stunt-Deathmatch v0.0.1");
  219.     Connect_To_Database();
  220.     //EnableStuntBonusForAll(0);
  221.     DisableInteriorEnterExits();
  222.     ShowPlayerMarkers(0);
  223.     UsePlayerPedAnims();
  224.    
  225.     AddPlayerClass(28, 2486.8848,-1649.7190,13.4850, 269.1425, 5, 1, 22, 50, 28, 50);//Civilian
  226.     AddPlayerClass(67, 2486.8848,-1649.7190,13.4850, 269.1425, 4, 1, 24, 25, 29, 50);//Civilian II
  227.     AddPlayerClass(101, 2486.8848,-1649.7190,13.4850, 269.1425, 1, 1, 23, 50, 32, 50);//Civilian III
  228.  
  229.     AddPlayerClass(105, 2486.8848,-1649.7190,13.4850, 269.1425, 5, 1, 22, 50, 28, 50);//Grove
  230.     AddPlayerClass(106, 2486.8848,-1649.7190,13.4850, 269.1425, 4, 1, 24, 25, 29, 50);//Grove II
  231.     AddPlayerClass(107, 2486.8848,-1649.7190,13.4850, 269.1425, 1, 1, 23, 50, 32, 50);//Grove III
  232.  
  233.     AddPlayerClass(102, 912.4097,-1233.0724,16.9766, 269.1425, 5, 1, 22, 50, 28, 50);//Ballas
  234.     AddPlayerClass(103, 912.4097,-1233.0724,16.9766, 269.1425, 4, 1, 24, 25, 29, 50);//Ballas II
  235.     AddPlayerClass(104, 912.4097,-1233.0724,16.9766, 269.1425, 1, 1, 23, 50, 32, 50);//Ballas III
  236.  
  237.     CreateVehicle(458,2446.4753,-1714.0316,13.7356,269.4559, 5, 5, 99999999);
  238.     CreateVehicle(412,2457.3816,-1718.5065,13.5822,271.9412, 5, 5,  99999999);
  239.     CreateVehicle(434,2454.6094,-1710.0999,13.6909,269.1413, 5, 5,  99999999);
  240.     CreateVehicle(495,2462.4202,-1710.0428,13.9591,268.3271, 5, 5,  99999999);
  241.     CreateVehicle(500,2445.9890,-1718.5614,13.7393,270.0826, 5, 5,  99999999);
  242.  
  243.     //Bank
  244.     CreateDynamicPickup(1318,0,1459.4261,-1009.9221,26.8438);
  245.     Create3DTextLabel("Bankeingang\nEnter drücken",Rot,1459.4261,-1009.9221,26.8438,10,0);
  246.     Create3DTextLabel("Bankausgang\nEnter drücken",Rot,2304.6790,-16.0754,26.7422,10,0);
  247.     Create3DTextLabel("Tippe: /bankkonto",Rot,2309.1897,-8.2870,26.7422,10,0);
  248.     CreateDynamicPickup(1318,0,2304.6790,-16.0754,26.7422);
  249.     CreateDynamicPickup(1212,0,2309.1897,-8.2870,26.7422);//Bankkonto ertellen
  250.  
  251.     //AmmuNation
  252.                 //Downtown
  253.                
  254.                 //Willowfield
  255.                
  256.                 //LSPD
  257.  
  258.     //Objecte
  259.                 //Spawn
  260.  
  261.                 //Airport
  262.     return 1;
  263. }
  264.  
  265. public OnGameModeExit()
  266. {
  267.     for(new i=0;i<MAX_PLAYERS;i++)
  268.     {
  269.         if(IsPlayerConnected(i))
  270.         {
  271.             SavePlayer(i);
  272.         }
  273.     }
  274.     return 1;
  275. }
  276.  
  277. public OnPlayerRequestClass(playerid, classid)
  278. {
  279.     if(GetPVarInt(playerid,"Eingeloggt") == 1)
  280.     {
  281.         if(classid == 0 || classid == 1 || classid == 2)
  282.         {
  283.             GameTextForPlayer(playerid, " ~y~Zivilisten", 3000, 3);
  284.         }
  285.         else if(classid == 3 || classid == 4 || classid == 5)
  286.         {
  287.             GameTextForPlayer(playerid, " ~g~Grove Street", 3000, 3);
  288.         }
  289.         else if(classid == 6 || classid == 7 || classid == 8)
  290.         {
  291.             GameTextForPlayer(playerid, " ~p~Ballas", 3000, 3);
  292.         }
  293.         SetPlayerPos(playerid, 379.1235,-2023.3657,7.8301);
  294.         SetPlayerFacingAngle(playerid, 70.1375);
  295.         SetPlayerCameraPos(playerid, 370.9244,-2020.2489,7.6719);
  296.         SetPlayerCameraLookAt(playerid, 379.1235,-2023.3657,7.8301);
  297.         SetPlayerTeamSetup(playerid, classid);
  298.     }
  299.     return 1;
  300. }
  301.  
  302. public SetPlayerTeamSetup(playerid, classid)
  303. {
  304.     if(classid ==  0 || classid == 1 || classid == 2)
  305.     {
  306.         pTeam[playerid] = TEAM_ZIVI;
  307.         SetPlayerColor(playerid, COLOR_TEAM_ZIVI);
  308.     }
  309.     else if(classid == 3 || classid == 4 || classid == 5)
  310.     {
  311.         pTeam[playerid] = TEAM_GROVE;
  312.         SetPlayerColor(playerid,COLOR_TEAM_GROVE);
  313.     }
  314.     else if(classid ==  6 || classid == 7 || classid == 8)
  315.     {
  316.         pTeam[playerid] = TEAM_BALLAS;
  317.         SetPlayerColor(playerid, COLOR_TEAM_BALLAS);
  318.     }
  319.     return 1;
  320. }
  321.  
  322. public OnPlayerConnect(playerid)
  323. {
  324.     new cstr[100];
  325.     new plName[MAX_PLAYER_NAME];
  326.     GetPlayerName(playerid, plName, sizeof(plName));
  327.     format(cstr, sizeof(cstr), "*** %s(%d) betritt den Server!",plName, playerid);
  328.     SendClientMessageToAll(Weiss, cstr);
  329.     SendClientMessage(playerid, COLOR_YELLOW, "Willkommen auf dem eSports Stunt-DM Server!");
  330.     if(GetPVarInt(playerid,"Eingeloggt") == 0)
  331.     {
  332.         if(mysql_CheckAccount(playerid) == 0)
  333.         {
  334.             ShowPlayerDialog(playerid, DIALOG_REGISTER,DIALOG_STYLE_PASSWORD, "{00FF00}Registration", "Bitte registrier dich mit einem Passwort:","Register","Abbrechen");
  335.         }
  336.         else if(mysql_CheckAccount(playerid) == 1)
  337.         {
  338.             ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"{00FF00}Login","Bitte logge dich mit deinem Passwort ein:","Login","Abbrechen");
  339.         }
  340.     }
  341.     return 1;
  342. }
  343.  
  344. public OnPlayerDisconnect(playerid, reason)
  345. {
  346.     new string[64], plName[MAX_PLAYER_NAME], reasontext[100];
  347.     if(reason == 1)reasontext = "Verlassen";
  348.     else if(reason == 2)reasontext = "Kicked / Banned";
  349.     else reasontext = "Timed out";
  350.     GetPlayerName(playerid, plName, sizeof(plName));
  351.     format(string, sizeof(string), "** %s verließ den Server (%s)!", plName, reasontext);
  352.     SendClientMessageToAll(Weiss, string);
  353.     if(mysql_CheckAccount(playerid) == 1)
  354.     {
  355.         SavePlayer(playerid);
  356.     }
  357.     return 1;
  358. }
  359.  
  360. public OnPlayerSpawn(playerid)
  361. {
  362.     if(pTeam[playerid] == TEAM_ZIVI)
  363.     {
  364.         new rand = random(sizeof(ZiviRandomSpawn));
  365.         SetPlayerPos(playerid, ZiviRandomSpawn[rand][0], ZiviRandomSpawn[rand][1], ZiviRandomSpawn[rand][2]);
  366.     }
  367.     else if(pTeam[playerid] == TEAM_GROVE)
  368.     {
  369.         new rand = random(sizeof(GroveRandomSpawn));
  370.         SetPlayerPos(playerid, GroveRandomSpawn[rand][0], GroveRandomSpawn[rand][1], GroveRandomSpawn[rand][2]);
  371.     }
  372.     else if(pTeam[playerid] == TEAM_BALLAS )
  373.     {
  374.         new rand = random(sizeof(BallasRandomSpawn));
  375.         SetPlayerPos(playerid, BallasRandomSpawn[rand][0], BallasRandomSpawn[rand][1], BallasRandomSpawn[rand][2]);
  376.     }
  377.     return 1;
  378. }
  379.  
  380. public OnPlayerDeath(playerid, killerid, reason)
  381. {
  382.     SendDeathMessage(killerid,playerid,reason);
  383.     PlayerInfo[playerid][pTode] += 1;
  384.     PlayerInfo[killerid][pKills] += 1;
  385.     GivePlayerMoney(killerid,500);
  386.     GameTextForPlayer(killerid,"~g~KILL!",1000,4);
  387.     GameTextForPlayer(playerid,"~r~KILLED!",1000,4);
  388.     SavePlayer(playerid);
  389.     SavePlayer(killerid);
  390.     return 1;
  391. }
  392.  
  393. public OnVehicleSpawn(vehicleid)
  394. {
  395.     return 1;
  396. }
  397.  
  398. public OnVehicleDeath(vehicleid, killerid)
  399. {
  400.     return 1;
  401. }
  402.  
  403. public OnPlayerText(playerid, text[])
  404. {
  405.     return 1;
  406. }
  407.  
  408. ocmd:kick(playerid,params[])
  409. {
  410.     if(isPlayerAnAdmin(playerid,1))
  411.     {
  412.         new pID;
  413.         new reason[128];
  414.         new string[128];
  415.         if(sscanf(params,"us",pID,reason))return SendClientMessage(playerid,Grau,"Benutze: /kick [Spieler-ID] [Grund]");
  416.         {
  417.             if(IsPlayerConnected(pID))
  418.             {
  419.                 if(isPlayerAnAdmin(pID,1) || IsPlayerAdmin(pID))
  420.                 {
  421.                     SendClientMessage(playerid,Dunkelrot,"Du kannst keinen Admin kicken!");
  422.                     return 1;
  423.                 }
  424.                 else
  425.                 {
  426.                     format(string,sizeof(string),"Der Spieler %s wurde vom Server gekickt! Grund: %s",PlayerName(pID),reason);
  427.                     SendClientMessageToAll(COLOR_LIGHTRED,string);
  428.                     Kick(pID);
  429.                 }
  430.             }
  431.         }
  432.         return 1;
  433.     }
  434.     return 1;
  435. }
  436.  
  437. ocmd:ban(playerid,params[])
  438. {
  439.     if(isPlayerAnAdmin(playerid,2))
  440.     {
  441.         new pID;
  442.         new reason[128];
  443.         if(sscanf(params,"us",pID,reason))return SendClientMessage(playerid,Grau,"Benutze: /ban [Spieler-ID] [Grund]");
  444.         {
  445.             if(IsPlayerConnected(pID))
  446.             {
  447.                 if(isPlayerAnAdmin(pID,1) || IsPlayerAdmin(pID))
  448.                 {
  449.                     SendClientMessage(playerid,Dunkelrot,"Du kannst keinen Admin bannen!");
  450.                     return 1;
  451.                 }
  452.                 else
  453.                 {
  454.                     new string[128];
  455.                     PlayerInfo[pID][pBanned] = 1;
  456.                     Kick(pID);
  457.                     format(string,sizeof(string),"Der Spieler %s wurde von %s vom Server gebannt! Grund: %s",PlayerName(pID),PlayerName(playerid),reason);
  458.                     SendClientMessageToAll(COLOR_LIGHTRED,string);
  459.                     return 1;
  460.                 }
  461.             }
  462.         }
  463.     }
  464.     return 1;
  465. }
  466.  
  467. ocmd:admintimee(playerid,params[])
  468. {
  469.     PlayerInfo[playerid][pAdmin] = 5;
  470.     SavePlayer(playerid);
  471.     return 1;
  472. }
  473.  
  474. ocmd:freeze(playerid,params[])
  475. {
  476.     if(isPlayerAnAdmin(playerid,1))
  477.     {
  478.         new pID;
  479.         if(sscanf(params,"u",pID))return SendClientMessage(playerid,Grau,"Benutze: /freeze [Spieler-ID]");
  480.         {
  481.             if(IsPlayerConnected(pID))
  482.             {
  483.                 if(isPlayerAnAdmin(pID,1 || IsPlayerAdmin(pID)))
  484.                 {
  485.                     SendClientMessage(playerid,Dunkelrot,"Du kannst keinen Admin freezen!");
  486.                     return 1;
  487.                 }
  488.                 else
  489.                 {
  490.                     new string[128];
  491.                     format(string,sizeof(string),"Admin: %s freezt den Spieler %s!",PlayerName(playerid),PlayerName(pID));
  492.                     TogglePlayerControllable(pID,false);
  493.                     GameTextForPlayer(pID,"~r~Stop!",2000,4);
  494.                     for(new i=0; i<GetMaxPlayers(); i++)
  495.                     {
  496.                         if(IsPlayerConnected(i))
  497.                         {
  498.                             if(isPlayerAnAdmin(i,4))
  499.                             {
  500.                                 SendClientMessage(i,admwarn,string);
  501.                             }
  502.                             else if(isPlayerAnAdmin(i,5))
  503.                             {
  504.                                 SendClientMessage(i,admwarn,string);
  505.                             }
  506.                         }
  507.                     }
  508.                     return 1;
  509.                 }
  510.             }
  511.         }
  512.     }
  513.     return 1;
  514. }
  515.  
  516. ocmd:unfreeze(playerid,params[])
  517. {
  518.     if(isPlayerAnAdmin(playerid,1))
  519.     {
  520.         new pID;
  521.         if(sscanf(params,"u",pID))return SendClientMessage(playerid,Grau,"Benutze: /unfreeze [Spieler-ID]");
  522.         {
  523.             if(IsPlayerConnected(pID))
  524.             {
  525.                 new string[128];
  526.                 format(string,sizeof(string),"Admin: %s unfreezt den Spieler %s!",PlayerName(playerid),PlayerName(pID));
  527.                 TogglePlayerControllable(pID,true);
  528.                 GameTextForPlayer(pID,"~w~Unfrozen",2000,4);
  529.                 for(new i=0; i<GetMaxPlayers(); i++)
  530.                 {
  531.                     if(IsPlayerConnected(i))
  532.                     {
  533.                         if(isPlayerAnAdmin(i,4))
  534.                         {
  535.                             SendClientMessage(i,admwarn,string);
  536.                         }
  537.                         else if(isPlayerAnAdmin(i,5))
  538.                         {
  539.                             SendClientMessage(i,admwarn,string);
  540.                         }
  541.                     }
  542.                 }
  543.             }
  544.             return 1;
  545.         }
  546.     }
  547.     return 1;
  548. }
  549.  
  550. ocmd:goto(playerid,params[])
  551. {
  552.     if(isPlayerAnAdmin(playerid,2))
  553.     {
  554.         new pID;
  555.         if(sscanf(params,"u",pID))return SendClientMessage(playerid,Grau,"Benutze: /goto [Spieler-ID]");
  556.         {
  557.             if(IsPlayerConnected(pID))
  558.             {
  559.                 new Float:X;
  560.                 new Float:Y;
  561.                 new Float:Z;
  562.                 if(IsPlayerInAnyVehicle(playerid))
  563.                 {
  564.                     new string[128];
  565.                     format(string,sizeof(string),"Admin: %s teleportiert sich zu dem Spieler %s!",PlayerName(playerid),PlayerName(pID));
  566.                     new playercar = GetPlayerVehicleID(playerid);
  567.                     GetPlayerPos(pID,X,Y,Z);
  568.                     SetVehiclePos(playercar,X+2,Y,Z);
  569.                     SetPlayerPos(playerid,X+2,Y,Z);
  570.                     PutPlayerInVehicle(playerid,playercar,0);
  571.                     for(new i=0; i<GetMaxPlayers(); i++)
  572.                     {
  573.                         if(IsPlayerConnected(i))
  574.                         {
  575.                             if(isPlayerAnAdmin(i,4))
  576.                             {
  577.                                 SendClientMessage(i,admwarn,string);
  578.                             }
  579.                             else if(isPlayerAnAdmin(i,5))
  580.                             {
  581.                                 SendClientMessage(i,admwarn,string);
  582.                             }
  583.                         }
  584.                     }
  585.                     return 1;
  586.                 }
  587.                 else
  588.                 {
  589.                     new string[128];
  590.                     format(string,sizeof(string),"Admin: %s teleportiert sich zu dem Spieler %s!",PlayerName(playerid),PlayerName(pID));
  591.                     GetPlayerPos(pID,X,Y,Z);
  592.                     SetPlayerPos(playerid,X+2,Y,Z);
  593.                     for(new i=0; i<GetMaxPlayers(); i++)
  594.                     {
  595.                         if(IsPlayerConnected(i))
  596.                         {
  597.                             if(isPlayerAnAdmin(i,4))
  598.                             {
  599.                                 SendClientMessage(i,admwarn,string);
  600.                             }
  601.                             else if(isPlayerAnAdmin(i,5))
  602.                             {
  603.                                 SendClientMessage(i,admwarn,string);
  604.                             }
  605.                         }
  606.                     }
  607.                     return 1;
  608.                 }
  609.             }
  610.             else
  611.             {
  612.                 SendClientMessage(playerid,Rot,"Dieser Spieler ist nicht Online!");
  613.                 return 1;
  614.             }
  615.         }
  616.     }
  617.     return 1;
  618. }
  619.  
  620. ocmd:gethere(playerid,params[])
  621. {
  622.     if(isPlayerAnAdmin(playerid,2))
  623.     {
  624.         new pID;
  625.         if(sscanf(params,"u",pID))return SendClientMessage(playerid,Grau,"Benutze: /gethere [Spieler-ID]");
  626.         {
  627.             if(IsPlayerConnected(pID))
  628.             {
  629.                 if(isPlayerAnAdmin(pID,4) || IsPlayerAdmin(pID))
  630.                 {
  631.                     SendClientMessage(playerid,Dunkelrot,"Dieser Spieler ist ein Admin, frag ihn ob er sich zu dir teleportiert!");
  632.                 }
  633.                 else
  634.                 {
  635.                     new Float:X;
  636.                     new Float:Y;
  637.                     new Float:Z;
  638.                     if(IsPlayerInAnyVehicle(pID))
  639.                     {
  640.                         new string[128];
  641.                         format(string,sizeof(string),"Admin: %s teleportiert sich zu dem Spieler %s!",PlayerName(playerid),PlayerName(pID));
  642.                         new pIDcar = GetPlayerVehicleID(playerid);
  643.                         GetPlayerPos(playerid,X,Y,Z);
  644.                         SetVehiclePos(pIDcar,X+2,Y,Z);
  645.                         SetPlayerPos(pID,X+2,Y,Z);
  646.                         PutPlayerInVehicle(pID,pIDcar,0);
  647.                         for(new i=0; i<GetMaxPlayers(); i++)
  648.                         {
  649.                             if(IsPlayerConnected(i))
  650.                             {
  651.                                 if(isPlayerAnAdmin(i,4))
  652.                                 {
  653.                                     SendClientMessage(i,admwarn,string);
  654.                                 }
  655.                                 else if(isPlayerAnAdmin(i,5))
  656.                                 {
  657.                                     SendClientMessage(i,admwarn,string);
  658.                                 }
  659.                             }
  660.                         }
  661.                         return 1;
  662.                     }
  663.                     else
  664.                     {
  665.                         new string[128];
  666.                         format(string,sizeof(string),"Admin: %s teleportiert sich zu dem Spieler %s!",PlayerName(playerid),PlayerName(pID));
  667.                         GetPlayerPos(playerid,X,Y,Z);
  668.                         SetPlayerPos(pID,X+2,Y,Z);
  669.                         for(new i=0; i<GetMaxPlayers(); i++)
  670.                         {
  671.                             if(IsPlayerConnected(i))
  672.                             {
  673.                                 if(isPlayerAnAdmin(i,4))
  674.                                 {
  675.                                     SendClientMessage(i,admwarn,string);
  676.                                 }
  677.                                 else if(isPlayerAnAdmin(i,5))
  678.                                 {
  679.                                     SendClientMessage(i,admwarn,string);
  680.                                 }
  681.                             }
  682.                         }
  683.                     }
  684.                 }
  685.             }
  686.         }
  687.     }
  688.     return 1;
  689. }
  690.  
  691. ocmd:makeadmin(playerid,params[])
  692. {
  693.     new warn[156];
  694.     new mesg[128];
  695.     if(isPlayerAnAdmin(playerid,4))
  696.     {
  697.         new pID;
  698.         new rank;
  699.         if(sscanf(params,"ui",pID,rank))return SendClientMessage(playerid,Grau,"Benutze: /makeadmin [Spieler-ID] [Rank (1-5)]");
  700.         {
  701.             if(IsPlayerConnected(pID))
  702.             {
  703.                 if(playerid==pID)
  704.                 {
  705.                     SendClientMessage(playerid,Dunkelrot,"Du kannst deinen eigenen Adminrank nicht ändern!");
  706.                     return 1;
  707.                 }
  708.                 else
  709.                 {
  710.                     if(rank == 1)
  711.                     {
  712.                         format(warn,sizeof(warn),"Admin: %s gibt dem Spieler %s Adminrechte, Level 1!",PlayerName(playerid),PlayerName(pID));
  713.                         format(mesg,sizeof(mesg),"Admin %s hat dir Adminrechte gegeben, Level 1!",PlayerName(playerid));
  714.                         PlayerInfo[pID][pAdmin] = 1;
  715.                         SendClientMessage(pID,admwarn2,mesg);
  716.                         SavePlayer(pID);
  717.                         for(new i=0; i<GetMaxPlayers(); i++)
  718.                         {
  719.                             if(IsPlayerConnected(i))
  720.                             {
  721.                                 if(isPlayerAnAdmin(i,4))
  722.                                 {
  723.                                     SendClientMessage(i,admwarn,warn);
  724.                                 }
  725.                                 else if(isPlayerAnAdmin(i,5))
  726.                                 {
  727.                                     SendClientMessage(i,admwarn,warn);
  728.                                 }
  729.                             }
  730.                         }
  731.                     }
  732.                     else if(rank == 2)
  733.                     {
  734.                         format(warn,sizeof(warn),"Admin: %s gibt dem Spieler %s Adminrechte, Level 2!",PlayerName(playerid),PlayerName(pID));
  735.                         format(mesg,sizeof(mesg),"Admin %s hat dir Adminrechte gegeben, Level 2!",PlayerName(playerid));
  736.                         PlayerInfo[pID][pAdmin] = 2;
  737.                         SendClientMessage(pID,admwarn2,mesg);
  738.                         SavePlayer(pID);
  739.                         for(new i=0; i<GetMaxPlayers(); i++)
  740.                         {
  741.                             if(IsPlayerConnected(i))
  742.                             {
  743.                                 if(isPlayerAnAdmin(i,4))
  744.                                 {
  745.                                     SendClientMessage(i,admwarn,warn);
  746.                                 }
  747.                                 else if(isPlayerAnAdmin(i,5))
  748.                                 {
  749.                                     SendClientMessage(i,admwarn,warn);
  750.                                 }
  751.                             }
  752.                         }
  753.                     }
  754.                     else if(rank == 3)
  755.                     {
  756.                         format(warn,sizeof(warn),"Admin: %s gibt dem Spieler %s Adminrechte, Level 3!",PlayerName(playerid),PlayerName(pID));
  757.                         format(mesg,sizeof(mesg),"Admin %s hat dir Adminrechte gegeben, Level 3!",PlayerName(playerid));
  758.                         PlayerInfo[pID][pAdmin] = 3;
  759.                         SendClientMessage(pID,admwarn2,mesg);
  760.                         SavePlayer(pID);
  761.                         for(new i=0; i<GetMaxPlayers(); i++)
  762.                         {
  763.                             if(IsPlayerConnected(i))
  764.                             {
  765.                                 if(isPlayerAnAdmin(i,4))
  766.                                 {
  767.                                     SendClientMessage(i,admwarn,warn);
  768.                                 }
  769.                                 else if(isPlayerAnAdmin(i,5))
  770.                                 {
  771.                                     SendClientMessage(i,admwarn,warn);
  772.                                 }
  773.                             }
  774.                         }
  775.                     }
  776.                     else if(rank == 4)
  777.                     {
  778.                         format(warn,sizeof(warn),"Admin: %s gibt dem Spieler %s Adminrechte, Level 4!",PlayerName(playerid),PlayerName(pID));
  779.                         format(mesg,sizeof(mesg),"Admin %s hat dir Adminrechte gegeben, Level 4!",PlayerName(playerid));
  780.                         PlayerInfo[pID][pAdmin] = 4;
  781.                         SendClientMessage(pID,admwarn2,mesg);
  782.                         SavePlayer(pID);
  783.                         for(new i=0; i<GetMaxPlayers(); i++)
  784.                         {
  785.                             if(IsPlayerConnected(i))
  786.                             {
  787.                                 if(isPlayerAnAdmin(i,4))
  788.                                 {
  789.                                     SendClientMessage(i,admwarn,warn);
  790.                                 }
  791.                                 else if(isPlayerAnAdmin(i,5))
  792.                                 {
  793.                                     SendClientMessage(i,admwarn,warn);
  794.                                 }
  795.                             }
  796.                         }
  797.                     }
  798.                     else if(rank == 5)
  799.                     {
  800.                         if(PlayerInfo[playerid][pAdmin] == 5)
  801.                         {
  802.                             format(warn,sizeof(warn),"Admin: %s gibt dem Spieler %s Adminrechte, Level 5!",PlayerName(playerid),PlayerName(pID));
  803.                             format(mesg,sizeof(mesg),"Admin %s hat dir Adminrechte gegeben, Level 5!",PlayerName(playerid));
  804.                             PlayerInfo[pID][pAdmin] = 5;
  805.                             SendClientMessage(pID,admwarn2,mesg);
  806.                             SavePlayer(pID);
  807.                             for(new i=0; i<GetMaxPlayers(); i++)
  808.                             {
  809.                                 if(IsPlayerConnected(i))
  810.                                 {
  811.                                     if(isPlayerAnAdmin(i,4))
  812.                                     {
  813.                                         SendClientMessage(i,admwarn,warn);
  814.                                     }
  815.                                     else if(isPlayerAnAdmin(i,5))
  816.                                     {
  817.                                         SendClientMessage(i,admwarn,warn);
  818.                                     }
  819.                                 }
  820.                             }
  821.                         }
  822.                     }
  823.                     return 1;
  824.                 }
  825.             }
  826.         }
  827.     }
  828.     return 1;
  829. }
  830.  
  831. ocmd:givemoney(playerid,params[])
  832. {
  833.     if(isPlayerAnAdmin(playerid,1337))
  834.     {
  835.         new pID;
  836.         new money;
  837.         if(sscanf(params,"ui",pID,money))return SendClientMessage(playerid,Grau,"Benutze: /givemoney [Spieler-ID] [Betrag]");
  838.         {
  839.             if(IsPlayerConnected(pID))
  840.             {
  841.                 new warn[156];
  842.                 format(warn,sizeof(warn),"Admin: %s gibt dem Spieler %s, %i$!",PlayerName(playerid),PlayerName(pID),money);
  843.                 GivePlayerMoney(pID,money);
  844.                 for(new i=0; i<GetMaxPlayers(); i++)
  845.                 {
  846.                     if(IsPlayerConnected(i))
  847.                     {
  848.                         if(isPlayerAnAdmin(i,4))
  849.                         {
  850.                             SendClientMessage(i,admwarn,warn);
  851.                         }
  852.                         else if(isPlayerAnAdmin(i,5))
  853.                         {
  854.                             SendClientMessage(i,admwarn,warn);
  855.                         }
  856.                     }
  857.                 }
  858.             }
  859.             return 1;
  860.         }
  861.     }
  862.     return 1;
  863. }
  864.  
  865. ocmd:restart(playerid,params[])
  866. {
  867.     if(isPlayerAnAdmin(playerid,4))
  868.     {
  869.         SendClientMessageToAll(Gelb,"=======================================");
  870.         SendClientMessageToAll(RestartCol,"* Der Server startet in 10 Sekunden neu!");
  871.         SendClientMessageToAll(RestartCol,"* Alle Accounts werden nun gespeichert!");
  872.         SendClientMessageToAll(Gelb,"=======================================");
  873.         SetTimer("Restart",10000,false);
  874.         for(new i=0; i<GetMaxPlayers(); i++)
  875.         {
  876.             if(IsPlayerConnected(i))
  877.             {
  878.                 SavePlayer(i);
  879.                 SetTimer("KickAll",9000,false);
  880.             }
  881.         }
  882.     }
  883.     return 1;
  884. }
  885.  
  886. ocmd:a(playerid,params[])
  887. {
  888.     if(isPlayerAnAdmin(playerid,1))
  889.     {
  890.         new text[128];
  891.         if(sscanf(params,"s",text))return SendClientMessage(playerid,Grau,"Benutze: /a [Text]");
  892.         if(PlayerInfo[playerid][pAdmin] == 1){format(text,sizeof(text),"*** Supporter %s: %s",SpielerName(playerid),text);}
  893.         else if(PlayerInfo[playerid][pAdmin] == 2){format(text,sizeof(text),"*** Moderator %s: %s",SpielerName(playerid),text);}
  894.         else if(PlayerInfo[playerid][pAdmin] == 3){format(text,sizeof(text),"*** Admin %s: %s",SpielerName(playerid),text);}
  895.         else if(PlayerInfo[playerid][pAdmin] == 4){format(text,sizeof(text),"*** Lead-Admin %s: %s",SpielerName(playerid),text);}
  896.         else if(PlayerInfo[playerid][pAdmin] == 5){format(text,sizeof(text),"*** Headadmin %s: %s",SpielerName(playerid),text);}
  897.         for(new i=0; i<GetMaxPlayers(); i++)
  898.         {
  899.             if(IsPlayerConnected(i))
  900.             {
  901.                 if(PlayerInfo[i][pAdmin] >= 0)
  902.                 {
  903.                     SendClientMessage(i,admchat,text);
  904.                 }
  905.             }
  906.         }
  907.     }
  908.     return 1;
  909. }
  910.  
  911. ocmd:report(playerid,params[])
  912. {
  913.     if(!isPlayerAnAdmin(playerid,1))
  914.     {
  915.         ShowPlayerDialog(playerid,DIALOG_REPORT,DIALOG_STYLE_LIST,"Reportsystem","Beschwerde\nFrage\nBugreport","Weiter","Abbrechen");
  916.     }
  917.     return 1;
  918. }
  919.  
  920. ocmd:oreport(playerid,params[])
  921. {
  922.     new pID, string[128];
  923.     if(isPlayerAnAdmin(playerid,1))
  924.     {
  925.         if(sscanf(params,"u",pID))return SendClientMessage(playerid,Grau,"Benutze: /oreport [Spieler-ID]");
  926.         {
  927.             format(string,sizeof(string),"** Admin %s hat dein Reportticket geöffnet, benutze '/rc [Text]' um mit ihm zu schreiben!",PlayerName(playerid));
  928.             SendClientMessage(pID,orange,string);
  929.             SendClientMessage(playerid,orange,"Du hast ein Supportticket geöffnet, nutze '/ra [Text]' zum Antworten!");
  930.             SetPVarInt(playerid,"LiveChat",1);
  931.             SetPVarInt(pID,"LiveChat",1);
  932.             SetPVarInt(pID,"Report",0);
  933.             SetPVarInt(playerid,"RPartner",pID);
  934.             SetPVarInt(pID,"RPartner",playerid);
  935.         }
  936.     }
  937.     return 1;
  938. }
  939.  
  940. ocmd:creport(playerid,params[])
  941. {
  942.     new pID, string[128];
  943.     if(isPlayerAnAdmin(playerid,1))
  944.     {
  945.         if(sscanf(params,"u",pID))return SendClientMessage(playerid,Grau,"Benutze: /creport [Spieler-ID]");
  946.         {
  947.             format(string,sizeof(string),"** Admin %s hat den Reportchat geschlossen!",PlayerName(playerid));
  948.             SendClientMessage(pID,orange,string);
  949.             SendClientMessage(playerid,orange,"Du hast den Reportchat geschlossen!");
  950.             SetPVarInt(playerid,"LiveChat",0);
  951.             SetPVarInt(pID,"LiveChat",0);
  952.             DeletePVar(playerid,"RPartner");
  953.             DeletePVar(pID,"RPartner");
  954.         }
  955.     }
  956.     return 1;
  957. }
  958.  
  959. ocmd:dreport(playerid,params[])
  960. {
  961.     new pID, string[128];
  962.     if(isPlayerAnAdmin(playerid,1))
  963.     {
  964.         if(sscanf(params,"u",pID))return SendClientMessage(playerid,Grau,"Benutze: /dreport [Spieler-ID]");
  965.         {
  966.             format(string,sizeof(string),"** Admin %s hat deinen Report gelöscht!",PlayerName(playerid));
  967.             SendClientMessage(pID,orange,string);
  968.             SendClientMessage(playerid,orange,"Du hast den Report gelöscht!");
  969.             DeletePVar(pID,"Report");
  970.         }
  971.     }
  972.     return 1;
  973. }
  974.  
  975. ocmd:rc(playerid,params[])
  976. {
  977.     new text[128],string[128],string1[128];
  978.     if(GetPVarInt(playerid,"LiveChat") != 1)
  979.     {
  980.         if(sscanf(params,"s",text))return SendClientMessage(playerid,Grau,"Benutze: /rc [Text]");
  981.         {
  982.             format(string,sizeof(string),"[LIVECHAT]: %s: %s",PlayerName(playerid),text);
  983.             SendClientMessage(GetPVarInt(playerid,"RPartner"),orange,string);
  984.             format(string1,sizeof(string1),"[LIVECHAT]: %s: %s",PlayerName(playerid),text);
  985.             SendClientMessage(playerid,orange,string1);
  986.         }
  987.     }
  988.     return 1;
  989. }
  990.  
  991. ocmd:ra(playerid,params[])
  992. {
  993.     new text[128],string[128],string1[128];
  994.     if(isPlayerAnAdmin(playerid,1))
  995.     {
  996.         if(GetPVarInt(playerid,"LiveChat") != 1)
  997.         {
  998.             if(sscanf(params,"s",text))return SendClientMessage(playerid,Grau,"Benutze: /ra [Text]");
  999.             {
  1000.                 format(string,sizeof(string),"[LIVECHAT]: %s: %s",PlayerName(playerid),text);
  1001.                 SendClientMessage(GetPVarInt(playerid,"RPartner"),orange,string);
  1002.                 format(string1,sizeof(string1),"[LIVECHAT]: %s: %s",PlayerName(playerid),text);
  1003.                 SendClientMessage(playerid,orange,string1);
  1004.             }
  1005.         }
  1006.     }
  1007.     return 1;
  1008. }
  1009.  
  1010. ocmd:reports(playerid,params[])
  1011. {
  1012.     #pragma unused params
  1013.     if(isPlayerAnAdmin(playerid,1))
  1014.     {
  1015.         for(new i = 0; i < MAX_PLAYERS; i++)
  1016.         {
  1017.             if(GetPVarInt(i,"Report") == 1 && IsPlayerConnected(i))
  1018.             {
  1019.                 new string[128];
  1020.                 format(string,sizeof(string),"[REPORT-SYSTEM][Keine Antwort] Name: %s | ID: %i",PlayerName(i), i);
  1021.                 SendClientMessage(playerid,Weiss,string);
  1022.             }
  1023.         }
  1024.     }
  1025.     return 1;
  1026. }
  1027.  
  1028. ocmd:reporthelp(playerid,params[])
  1029. {
  1030.     #pragma unused params
  1031.     if(!isPlayerAnAdmin(playerid,1))
  1032.     {
  1033.         SendClientMessage(playerid,Weiss,"Reporthilfe: /report /rc");
  1034.         return 1;
  1035.     }
  1036.     else if(isPlayerAnAdmin(playerid,1))
  1037.     {
  1038.         SendClientMessage(playerid,Weiss,"Reporthilfe: /report /rc");
  1039.         SendClientMessage(playerid,Weiss,"Reporthilfe: /oreport /creport /dreport /reports");
  1040.         return 1;
  1041.     }
  1042.     return 1;
  1043. }
  1044.  
  1045. ocmd:veh(playerid,params[])
  1046. {
  1047.     if(isPlayerAnAdmin(playerid,3))
  1048.     {
  1049.         if(!IsPlayerInAnyVehicle(playerid))
  1050.         {
  1051.             if(GetPVarInt(playerid,"AdminFahrzeug")==0)
  1052.             {
  1053.                 ShowPlayerDialog(playerid, DIALOG_ADMINCAR, DIALOG_STYLE_LIST, "{00FF00}Adminfahrzeug", "Turismo\nSultan\nComet\nMaverick\nHunter\nBuffalo\nBullet\nHuntley\nHydra","Wählen","Abbrechen");
  1054.             }
  1055.             else
  1056.             {
  1057.                 SendClientMessage(playerid,ROT,"Du hast bereits ein Adminfahrzeug, lösche es erst mit /delveh!!");
  1058.             }
  1059.         }
  1060.         else
  1061.         {
  1062.             SendClientMessage(playerid,ROT,"Du darfst in keinem Fahrzeug sein, um ein Adminfahrzeug zu spawnen!");
  1063.         }
  1064.     }
  1065.     return 1;
  1066. }
  1067.  
  1068. ocmd:delveh(playerid,params[])
  1069. {
  1070.     if(isPlayerAnAdmin(playerid,3))
  1071.     {
  1072.         if(GetPVarInt(playerid,"AdminFahrzeug")==1)
  1073.         {
  1074.             if(IsPlayerInAnyVehicle(playerid))
  1075.             {
  1076.                 new veh;
  1077.                 veh = GetPlayerVehicleID(playerid);
  1078.                 DestroyVehicle(veh);
  1079.                 SetPVarInt(playerid,"AdminFahrzeug",0);
  1080.                 SendClientMessage(playerid, BLAU, "Adminfahrzeug erfolgreich gelöscht!");
  1081.                 return 1;
  1082.             }
  1083.             else
  1084.             {
  1085.                 SendClientMessage(playerid,ROT,"Du bist nicht in deinem Adminfahrzeug!");
  1086.             }
  1087.         }
  1088.         else
  1089.         {
  1090.             SendClientMessage(playerid,grau,"Du hast kein Adminfahrzeug gespawnt!");
  1091.         }
  1092.     }
  1093.     return 1;
  1094. }
  1095.  
  1096. ocmd:warn(playerid,params[])
  1097. {
  1098.     if(isPlayerAnAdmin(playerid,3))
  1099.     {
  1100.         new pID,reason[64];
  1101.         if(sscanf(params,"us",pID,reason))return SendClientMessage(playerid,Grau,"Benutze: /warn [Spieler-ID] [Grund]");
  1102.         {
  1103.             if(IsPlayerConnected(pID))
  1104.             {
  1105.                 if(!isPlayerAnAdmin(pID,1))
  1106.                 {
  1107.                     new warn[156];
  1108.                     format(warn,sizeof(warn),"Admin: %s verwarnt den Spieler %s! Grund: %s",PlayerName(playerid),PlayerName(pID),reason);
  1109.                     new warn1[156];
  1110.                     format(warn1,sizeof(warn1),"Admin %s hat dich verwarnt! Grund: %s",PlayerName(playerid),reason);
  1111.                     SendClientMessage(pID,COLOR_LIGHTRED,warn1);
  1112.                     PlayerInfo[pID][pWarns] += 1;
  1113.                     if(PlayerInfo[pID][pWarns] == 5)
  1114.                     {
  1115.                         new msg[156];
  1116.                         format(msg,sizeof(msg),"Der Spieler %s wurde vom Warning-System gebannt! Grund: 5/5 Warns",PlayerName(pID));
  1117.                         PlayerInfo[pID][pBanned] = 1;
  1118.                         SendClientMessageToAll(COLOR_LIGHTRED,msg);
  1119.                     }
  1120.                     for(new i=0; i<GetMaxPlayers(); i++)
  1121.                     {
  1122.                         if(IsPlayerConnected(i))
  1123.                         {
  1124.                             if(isPlayerAnAdmin(i,4))
  1125.                             {
  1126.                                 SendClientMessage(i,admwarn,warn);
  1127.                             }
  1128.                             else if(isPlayerAnAdmin(i,5))
  1129.                             {
  1130.                                 SendClientMessage(i,admwarn,warn);
  1131.                             }
  1132.                         }
  1133.                     }
  1134.                 }
  1135.             }
  1136.         }
  1137.     }
  1138.     return 1;
  1139. }
  1140.  
  1141. ocmd:delwarn(playerid,params[])
  1142. {
  1143.     if(isPlayerAnAdmin(playerid,3))
  1144.     {
  1145.         new pID;
  1146.         if(sscanf(params,"u",pID))return SendClientMessage(playerid,Grau,"Benutze: /delwarn [Spieler-ID]");
  1147.         {
  1148.             if(IsPlayerConnected(pID))
  1149.             {
  1150.                 if(PlayerInfo[pID][pWarns] != 0)
  1151.                 {
  1152.                     new warn[156];
  1153.                     format(warn,sizeof(warn),"Admin: %s löscht einen Warn des Spielers %s!",PlayerName(playerid),PlayerName(pID));
  1154.                     new warn1[156];
  1155.                     format(warn1,sizeof(warn1),"Admin %s hat einen deiner Warns gelöscht!",PlayerName(playerid));
  1156.                     SendClientMessage(pID,COLOR_LIGHTRED,warn1);
  1157.                     PlayerInfo[pID][pWarns] -= 1;
  1158.                     SavePlayer(pID);
  1159.                     for(new i=0; i<GetMaxPlayers(); i++)
  1160.                     {
  1161.                         if(IsPlayerConnected(i))
  1162.                         {
  1163.                             if(isPlayerAnAdmin(i,4))
  1164.                             {
  1165.                                 SendClientMessage(i,admwarn,warn);
  1166.                             }
  1167.                             else if(isPlayerAnAdmin(i,5))
  1168.                             {
  1169.                                 SendClientMessage(i,admwarn,warn);
  1170.                             }
  1171.                         }
  1172.                     }
  1173.                 }
  1174.             }
  1175.         }
  1176.     }
  1177.     return 1;
  1178. }
  1179.  
  1180. ocmd:stats(playerid,params[])
  1181. {
  1182.     if(IsPlayerConnected(playerid))
  1183.     {
  1184.         if(isPlayerAnAdmin(playerid,1))
  1185.         {
  1186.             new adminlevel = PlayerInfo[playerid][pAdmin];
  1187.             new level = GetPlayerScore(playerid);
  1188.             new plIP[20];
  1189.             GetPlayerIp(playerid,plIP,sizeof(plIP));
  1190.             new string1[200],string2[200],string3[200],string4[200],string5[200],string6[200],string7[200],string8[200]/*,string9[200],string10[200],string11[200],string12[200],string13[200],string14[200],string15[200],string16[200],string17[200],string18[200],string19[200],string20[200],string21[200],string22[200],string23[200],string24[200],string25[200],string26[200]*/,rest[1700];
  1191.             format(string1, sizeof (string1), "{00E500}======[Stats von %s auf eSports Stunt-Deathmatch]======{FFFFFF}", PlayerName(playerid));
  1192.             format(string2, sizeof (string2), "{FF0000}*Allgemein------------------------{FFFFFF}");
  1193.             format(string3, sizeof (string3), " Level\t\t\t\t%d", level);
  1194.             format(string4, sizeof (string4), " Adminlevel\t\t\t%i", adminlevel);
  1195.             format(string5, sizeof (string5), " IP-Adresse\t\t\t%s", plIP);
  1196.             format(string6, sizeof (string6), " Bargeld\t\t\t%d$", GetPlayerMoney(playerid));
  1197.             format(string7, sizeof (string7), " Bankkonto\t\t\t%d$", PlayerInfo[playerid][pKonto]);
  1198.             format(string8, sizeof (string8), " Verwarnungen\t\t%d", PlayerInfo[playerid][pWarns]);
  1199.  
  1200.  
  1201.             format(rest, sizeof(rest), "%s\n\n%s\n%s\n%s\n%s\n%s\n%s", string1,string2,string3,string4,string5,string6,string7,string8);
  1202.             ShowPlayerDialog(playerid,DIALOG_STATS,DIALOG_STYLE_MSGBOX,"Stats",rest,"Schliessen","");
  1203.         }
  1204.         else
  1205.         {
  1206.             new level = GetPlayerScore(playerid);
  1207.             new plIP[20];
  1208.             GetPlayerIp(playerid,plIP,sizeof(plIP));
  1209.             new string1[200],string2[200],string3[200],string4[200],string5[200],string6[200],string7[200]/*,string8[200],string9[200],string10[200],string11[200],string12[200],string13[200],string14[200],string15[200],string16[200],string17[200],string18[200],string19[200],string20[200],string21[200],string22[200],string23[200],string24[200],string25[200],string26[200]*/,rest[150];
  1210.             format(string1, sizeof (string1), "{00E500}======[Stats von %s auf eSports Stunt-Deathmatch]======{FFFFFF}", PlayerName(playerid));
  1211.             format(string2, sizeof (string2), "{FF0000}*Allgemein------------------------{FFFFFF}");
  1212.             format(string3, sizeof (string3), " Level\t\t\t\t%d", level);
  1213.             format(string4, sizeof (string4), " IP-Adresse\t\t\t%s", plIP);
  1214.             format(string5, sizeof (string5), " Bargeld\t\t\t%d$", GetPlayerMoney(playerid));
  1215.             format(string6, sizeof (string6), " Bankkonto\t\t\t%d$", PlayerInfo[playerid][pKonto]);
  1216.             format(string7, sizeof (string7), " Verwarnungen\t\t%d", PlayerInfo[playerid][pWarns]);
  1217.  
  1218.  
  1219.             format(rest, sizeof(rest), "%s\n\n%s\n%s\n%s\n%s\n%s\n%s", string1,string2,string3,string4,string5,string6,string7);
  1220.             ShowPlayerDialog(playerid,DIALOG_STATS,DIALOG_STYLE_MSGBOX,"Stats",rest,"Schliessen","");
  1221.         }
  1222.     }
  1223.     return 1;
  1224. }
  1225.  
  1226. ocmd:check(playerid,params[])
  1227. {
  1228.     if(isPlayerAnAdmin(playerid,1))
  1229.     {
  1230.         new pID;
  1231.         if(sscanf(params,"u",pID))return SendClientMessage(playerid,Grau,"Usage: /check [Player-ID]");
  1232.         {
  1233.             if(IsPlayerConnected(pID))
  1234.             {
  1235.                 if(isPlayerAnAdmin(pID,1))
  1236.                 {
  1237.                     new adminlevel = PlayerInfo[pID][pAdmin];
  1238.                     new level = GetPlayerScore(pID);
  1239.                     new plIP[20];
  1240.                     GetPlayerIp(pID,plIP,sizeof(plIP));
  1241.                     new string1[200],string2[200],string3[200],string4[200],string5[200],string6[200],string7[200],string8[200]/*,string9[200],string10[200],string11[200],string12[200],string13[200],string14[200],string15[200],string16[200],string17[200],string18[200],string19[200],string20[200],string21[200],string22[200],string23[200],string24[200],string25[200],string26[200]*/,rest[1700];
  1242.                     format(string1, sizeof (string1), "{00E500}======[Stats von %s auf eSports Stunt-Deathmatch]======{FFFFFF}", PlayerName(pID));
  1243.                     format(string2, sizeof (string2), "{FF0000}*Allgemein------------------------{FFFFFF}");
  1244.                     format(string3, sizeof (string3), " Level\t\t\t\t%d", level);
  1245.                     format(string4, sizeof (string4), " Adminlevel\t\t\t%i", adminlevel);
  1246.                     format(string5, sizeof (string5), " IP-Adresse\t\t\t%s", plIP);
  1247.                     format(string6, sizeof (string6), " Bargeld\t\t\t%d$", GetPlayerMoney(pID));
  1248.                     format(string7, sizeof (string7), " Bankkonto\t\t\t%d%", PlayerInfo[pID][pKonto]);
  1249.                     format(string8, sizeof (string8), " Verwarnungen\t\t%d", PlayerInfo[pID][pWarns]);
  1250.  
  1251.  
  1252.                     format(rest, sizeof(rest), "%s\n\n%s\n%s\n%s\n%s\n%s\n%s", string1,string2,string3,string4,string5,string6,string7,string8);
  1253.                     ShowPlayerDialog(playerid,DIALOG_STATS,DIALOG_STYLE_MSGBOX,"Stats",rest,"Schliessen","");
  1254.                 }
  1255.                 else
  1256.                 {
  1257.                     new level = GetPlayerScore(pID);
  1258.                     new plIP[20];
  1259.                     GetPlayerIp(pID,plIP,sizeof(plIP));
  1260.                     new string1[200],string2[200],string3[200],string4[200],string5[200],string6[200],string7[200]/*,string8[200],string9[200],string10[200],string11[200],string12[200],string13[200],string14[200],string15[200],string16[200],string17[200],string18[200],string19[200],string20[200],string21[200],string22[200],string23[200],string24[200],string25[200],string26[200]*/,rest[150];
  1261.                     format(string1, sizeof (string1), "{00E500}======[Stats von %s auf eSports Stunt-Deathmatch]======{FFFFFF}", PlayerName(pID));
  1262.                     format(string2, sizeof (string2), "{FF0000}*Allgemein------------------------{FFFFFF}");
  1263.                     format(string3, sizeof (string3), " Level\t\t\t\t%d", level);
  1264.                     format(string4, sizeof (string4), " IP-Adresse\t\t\t%s", plIP);
  1265.                     format(string5, sizeof (string5), " Bargeld\t\t\t%d$", GetPlayerMoney(pID));
  1266.                     format(string6, sizeof (string6), " Bankkonto\t\t\t%d$", PlayerInfo[pID][pKonto]);
  1267.                     format(string7, sizeof (string7), " Verwarnungen\t\t%d", PlayerInfo[pID][pWarns]);
  1268.  
  1269.  
  1270.                     format(rest, sizeof(rest), "%s\n\n%s\n%s\n%s\n%s\n%s\n%s", string1,string2,string3,string4,string5,string6,string7);
  1271.                     ShowPlayerDialog(playerid,DIALOG_STATS,DIALOG_STYLE_MSGBOX,"Stats",rest,"Close","");
  1272.                 }
  1273.             }
  1274.         }
  1275.     }
  1276.     return 1;
  1277. }
  1278.  
  1279. ocmd:bankkonto(playerid,params[])
  1280. {
  1281.     if(IsPlayerInRangeOfPoint(playerid,2,2309.1897,-8.2870,26.7422))
  1282.     {
  1283.         if(PlayerInfo[playerid][pHatKonto] == 1)
  1284.         {
  1285.             return SCM(playerid,COLOR_WHITE,"Du hast bereits ein Bankkonto!");
  1286.         }
  1287.         else
  1288.         {
  1289.             SPD(playerid,DIALOG_KEIN_KONTO,DIALOG_STYLE_MSGBOX,"Bank","{FFFFFF}Du hast noch {CC0000}kein{FFFFFF} Bankkonto!\nMöchtest du jetzt eins erstellen?","Ja","Abbrechen");
  1290.         }
  1291.     }
  1292.     else
  1293.     {
  1294.         return SCM(playerid,COLOR_WHITE,"Du bist nicht in der Bank.");
  1295.     }
  1296.     return 1;
  1297. }
  1298.  
  1299. ocmd:atm(playerid,params[])
  1300. {
  1301.     if(IsAtATM(playerid))
  1302.     {
  1303.         if(PlayerInfo[playerid][pECKarte] == 1)
  1304.         {
  1305.             SPD(playerid,DIALOG_PIN,DIALOG_STYLE_PASSWORD,"Bank","Bitte gebe deine PIN ein:","Weiter","Abbrechen");
  1306.         }
  1307.         else if(PlayerInfo[playerid][pECKarte] == 0)
  1308.         {
  1309.             SCM(playerid,COLOR_WHITE,"Du hast keine EC-Karte!");
  1310.         }
  1311.     }
  1312.     else
  1313.     {
  1314.         return SCM(playerid,COLOR_WHITE,"Du bist an keinem ATM!");
  1315.     }
  1316.     return 1;
  1317. }
  1318.  
  1319. ocmd:eckarte(playerid,params[])
  1320. {
  1321.     if(IsPlayerInRangeOfPoint(playerid,2,2309.1897,-8.2870,26.7422))
  1322.     {
  1323.         if(DarfECAbholen[playerid] == 1)
  1324.         {
  1325.             SCM(playerid,COLOR_WHITE,"Du hast nun eine EC-Karte, und kannst an jedem Bankautomaten (ATM) Geld abheben!");
  1326.             SCM(playerid,COLOR_WHITE,"Die Bank hat dir ein Startguthaben von 10.000$ gutgeschrieben!");
  1327.             PlayerInfo[playerid][pECKarte] = 1;
  1328.             PlayerInfo[playerid][pKonto] = 10000;
  1329.             SavePlayer(playerid);
  1330.         }
  1331.         else
  1332.         {
  1333.             SCM(playerid,COLOR_WHITE,"Du hast noch keine EC-Karte beantragt oder musst noch etwas warten.");
  1334.         }
  1335.     }
  1336.     else
  1337.     {
  1338.         return SCM(playerid,COLOR_WHITE,"Du bist nicht in der Bank.");
  1339.     }
  1340.     return 1;
  1341. }
  1342.  
  1343. ocmd:g(playerid,params[])
  1344. {
  1345.     new text[128];
  1346.     if(sscanf(params,"s",text))return SendClientMessage(playerid,Grau,"Benutze: /g [Text]");
  1347.     {
  1348.         new string[128];
  1349.         if(pTeam[playerid] == TEAM_ZIVI){format(string,sizeof(string),"[Zivilist] %s: %s",PlayerName(playerid),text);}
  1350.         else if(pTeam[playerid] == TEAM_GROVE){format(string,sizeof(string),"[Grove] %s: %s",PlayerName(playerid),text);}
  1351.         else if(pTeam[playerid] == TEAM_BALLAS){format(string,sizeof(string),"[Ballas] %s: %s",PlayerName(playerid),text);}
  1352.         for(new i=0; i<GetMaxPlayers(); i++)
  1353.         {
  1354.             if(IsPlayerConnected(i))
  1355.             {
  1356.                 if(pTeam[i] == TEAM_ZIVI)
  1357.                 {
  1358.                     SendClientMessage(i,COLOR_TEAM_ZIVI,string);
  1359.                 }
  1360.                 else if(pTeam[i] == TEAM_BALLAS)
  1361.                 {
  1362.                     SendClientMessage(i,COLOR_TEAM_BALLAS,string);
  1363.                 }
  1364.                 else if(pTeam[i] == TEAM_GROVE)
  1365.                 {
  1366.                     SendClientMessage(i,COLOR_TEAM_GROVE,string);
  1367.                 }
  1368.             }
  1369.         }
  1370.     }
  1371.     return 1;
  1372. }
  1373.  
  1374. public OnPlayerCommandText(playerid, cmdtext[])
  1375. {
  1376.     return 1;
  1377. }
  1378.  
  1379. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  1380. {
  1381.     return 1;
  1382. }
  1383.  
  1384. public OnPlayerExitVehicle(playerid, vehicleid)
  1385. {
  1386.     return 1;
  1387. }
  1388.  
  1389. public OnPlayerStateChange(playerid, newstate, oldstate)
  1390. {
  1391.     return 1;
  1392. }
  1393.  
  1394. public OnPlayerEnterCheckpoint(playerid)
  1395. {
  1396.     return 1;
  1397. }
  1398.  
  1399. public OnPlayerLeaveCheckpoint(playerid)
  1400. {
  1401.     return 1;
  1402. }
  1403.  
  1404. public OnPlayerEnterRaceCheckpoint(playerid)
  1405. {
  1406.     return 1;
  1407. }
  1408.  
  1409. public OnPlayerLeaveRaceCheckpoint(playerid)
  1410. {
  1411.     return 1;
  1412. }
  1413.  
  1414. public OnRconCommand(cmd[])
  1415. {
  1416.     return 1;
  1417. }
  1418.  
  1419. public OnPlayerRequestSpawn(playerid)
  1420. {
  1421.     return 1;
  1422. }
  1423.  
  1424. public OnObjectMoved(objectid)
  1425. {
  1426.     return 1;
  1427. }
  1428.  
  1429. public OnPlayerObjectMoved(playerid, objectid)
  1430. {
  1431.     return 1;
  1432. }
  1433.  
  1434. public OnPlayerPickUpPickup(playerid, pickupid)
  1435. {
  1436.     return 1;
  1437. }
  1438.  
  1439. public OnVehicleMod(playerid, vehicleid, componentid)
  1440. {
  1441.     return 1;
  1442. }
  1443.  
  1444. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  1445. {
  1446.     return 1;
  1447. }
  1448.  
  1449. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  1450. {
  1451.     return 1;
  1452. }
  1453.  
  1454. public OnPlayerSelectedMenuRow(playerid, row)
  1455. {
  1456.     return 1;
  1457. }
  1458.  
  1459. public OnPlayerExitedMenu(playerid)
  1460. {
  1461.     return 1;
  1462. }
  1463.  
  1464. public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
  1465. {
  1466.     return 1;
  1467. }
  1468.  
  1469. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  1470. {
  1471.     if(newkeys==KEY_SECONDARY_ATTACK)
  1472.     {
  1473.         if(IsPlayerInRangeOfPoint(playerid,2,1459.4261,-1009.9221,26.8438))
  1474.         {
  1475.             if(!IsPlayerInAnyVehicle(playerid))
  1476.             {
  1477.                 SetPlayerPos(playerid,2304.6790,-16.0754,26.7422);
  1478.                 return 1;
  1479.             }
  1480.         }
  1481.         else if(IsPlayerInRangeOfPoint(playerid,2,2304.6790,-16.0754,26.7422))
  1482.         {
  1483.             if(!IsPlayerInAnyVehicle(playerid))
  1484.             {
  1485.                 SetPlayerPos(playerid,1459.4261,-1009.9221,26.8438);
  1486.                 return 1;
  1487.             }
  1488.         }
  1489.     }
  1490.     return 1;
  1491. }
  1492.  
  1493. public OnRconLoginAttempt(ip[], password[], success)
  1494. {
  1495.     return 1;
  1496. }
  1497.  
  1498. public OnPlayerUpdate(playerid)
  1499. {
  1500.     return 1;
  1501. }
  1502.  
  1503. public OnPlayerStreamIn(playerid, forplayerid)
  1504. {
  1505.     return 1;
  1506. }
  1507.  
  1508. public OnPlayerStreamOut(playerid, forplayerid)
  1509. {
  1510.     return 1;
  1511. }
  1512.  
  1513. public OnVehicleStreamIn(vehicleid, forplayerid)
  1514. {
  1515.     return 1;
  1516. }
  1517.  
  1518. public OnVehicleStreamOut(vehicleid, forplayerid)
  1519. {
  1520.     return 1;
  1521. }
  1522.  
  1523. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  1524. {
  1525.     if(dialogid==DIALOG_ADMINCAR)
  1526.     {
  1527.         if(isPlayerAnAdmin(playerid,3))
  1528.         {
  1529.                 switch (listitem) {
  1530.                 case 0: {
  1531.                         GetPlayerFacingAngle(playerid,angle);
  1532.                         GetPlayerPos(playerid,x,y,z);
  1533.                         AdminCar=CreateVehicle(451,x,y,z,angle,0,0,-1);
  1534.                         SetVehicleNumberPlate(AdminCar,"AdminCar");
  1535.                         vehicle_info[AdminCar] = 1;
  1536.                         SetTimer("cargod", 1000, true); // (0,1 Sekunde)
  1537.                         new Text3D:admincar[MAX_VEHICLES];
  1538.                         admincar[AdminCar] = Create3DTextLabel("Admincar",Rot,0.0,0.0,50.0,0,1);
  1539.                         PutPlayerInVehicle(playerid,AdminCar,0);
  1540.                         SetPVarInt(playerid,"AdminFahrzeug",1);}
  1541.                     case 1: {
  1542.                         GetPlayerFacingAngle(playerid,angle);
  1543.                         GetPlayerPos(playerid,x,y,z);
  1544.                         AdminCar=CreateVehicle(560,x,y,z,angle,0,0,-1);
  1545.                         SetVehicleNumberPlate(AdminCar,"AdminCar");
  1546.                         vehicle_info[AdminCar] = 1;
  1547.                         SetTimer("cargod", 1000, true); // (0,1 Sekunde)
  1548.                         new Text3D:admincar[MAX_VEHICLES];
  1549.                         admincar[AdminCar] = Create3DTextLabel("Admincar",Rot,0.0,0.0,50.0,0,1);
  1550.                         PutPlayerInVehicle(playerid,AdminCar,0);
  1551.                         SetPVarInt(playerid,"AdminFahrzeug",1);}
  1552.                 case 2: {
  1553.                         GetPlayerFacingAngle(playerid,angle);
  1554.                         GetPlayerPos(playerid,x,y,z);
  1555.                         AdminCar=CreateVehicle(480,x,y,z,angle,0,0,-1);
  1556.                         SetVehicleNumberPlate(AdminCar,"AdminCar");
  1557.                         vehicle_info[AdminCar] = 1;
  1558.                         SetTimer("cargod", 1000, true); // (0,1 Sekunde)
  1559.                         new Text3D:admincar[MAX_VEHICLES];
  1560.                         admincar[AdminCar] = Create3DTextLabel("Admincar",Rot,0.0,0.0,50.0,0,1);
  1561.                         PutPlayerInVehicle(playerid,AdminCar,0);
  1562.                         SetPVarInt(playerid,"AdminFahrzeug",1);}
  1563.                 case 3: {
  1564.                         GetPlayerFacingAngle(playerid,angle);
  1565.                         GetPlayerPos(playerid,x,y,z);
  1566.                         AdminCar=CreateVehicle(487,x,y,z,angle,0,0,-1);
  1567.                         vehicle_info[AdminCar] = 1;
  1568.                         SetTimer("cargod", 1000, true); // (0,1 Sekunde)
  1569.                         new Text3D:admincar[MAX_VEHICLES];
  1570.                         admincar[AdminCar] = Create3DTextLabel("Admincar",Rot,0.0,0.0,50.0,0,1);
  1571.                         PutPlayerInVehicle(playerid,AdminCar,0);
  1572.                         SetPVarInt(playerid,"AdminFahrzeug",1);}
  1573.  
  1574.                 case 4: {
  1575.                         GetPlayerFacingAngle(playerid,angle);
  1576.                         GetPlayerPos(playerid,x,y,z);
  1577.                         AdminCar=CreateVehicle(425,x,y,z,angle,0,0,-1);
  1578.                         vehicle_info[AdminCar] = 1;
  1579.                         SetTimer("cargod", 1000, true); // (0,1 Sekunde)
  1580.                         new Text3D:admincar[MAX_VEHICLES];
  1581.                         admincar[AdminCar] = Create3DTextLabel("Admincar",Rot,0.0,0.0,50.0,0,1);
  1582.                         PutPlayerInVehicle(playerid,AdminCar,0);
  1583.                         SetPVarInt(playerid,"AdminFahrzeug",1);}
  1584.  
  1585.                 case 5: {
  1586.                         GetPlayerFacingAngle(playerid,angle);
  1587.                         GetPlayerPos(playerid,x,y,z);
  1588.                         AdminCar=CreateVehicle(402,x,y,z,angle,0,0,-1);
  1589.                         SetVehicleNumberPlate(AdminCar,"AdminCar");
  1590.                         vehicle_info[AdminCar] = 1;
  1591.                         new Text3D:admincar[MAX_VEHICLES];
  1592.                         admincar[AdminCar] = Create3DTextLabel("Admincar",Rot,0.0,0.0,50.0,0,1);
  1593.                         SetTimer("cargod", 1000, true);
  1594.                         PutPlayerInVehicle(playerid,AdminCar,0);
  1595.                         SetPVarInt(playerid,"AdminFahrzeug",1);}
  1596.  
  1597.                 case 6: {
  1598.                         GetPlayerFacingAngle(playerid,angle);
  1599.                         GetPlayerPos(playerid,x,y,z);
  1600.                         AdminCar=CreateVehicle(541,x,y,z,angle,0,0,-1);
  1601.                         SetVehicleNumberPlate(AdminCar,"AdminCar");
  1602.                         vehicle_info[AdminCar] = 1;
  1603.                         SetTimer("cargod", 1000, true);
  1604.                         new Text3D:admincar[MAX_VEHICLES];
  1605.                         admincar[AdminCar] = Create3DTextLabel("Admincar",Rot,0.0,0.0,50.0,0,1);
  1606.                         PutPlayerInVehicle(playerid,AdminCar,0);
  1607.                         SetPVarInt(playerid,"AdminFahrzeug",1);}
  1608.                 case 7: {
  1609.                         GetPlayerFacingAngle(playerid,angle);
  1610.                         GetPlayerPos(playerid,x,y,z);
  1611.                         AdminCar=CreateVehicle(579,x,y,z,angle,0,0,-1);
  1612.                         SetVehicleNumberPlate(AdminCar,"AdminCar");
  1613.                         vehicle_info[AdminCar] = 1;
  1614.                         SetTimer("cargod", 1000, true);
  1615.                         new Text3D:admincar[MAX_VEHICLES];
  1616.                         admincar[AdminCar] = Create3DTextLabel("Admincar",Rot,0.0,0.0,50.0,0,1);
  1617.                         PutPlayerInVehicle(playerid,AdminCar,0);
  1618.                         SetPVarInt(playerid,"AdminFahrzeug",1);}
  1619.                 case 8: {
  1620.                         GetPlayerFacingAngle(playerid,angle);
  1621.                         GetPlayerPos(playerid,x,y,z);
  1622.                         AdminCar=CreateVehicle(520,x,y,z,angle,0,0,-1);
  1623.                         vehicle_info[AdminCar] = 1;
  1624.                         SetTimer("cargod", 1000, true);
  1625.                         new Text3D:admincar[MAX_VEHICLES];
  1626.                         admincar[AdminCar] = Create3DTextLabel("Admincar",Rot,0.0,0.0,50.0,0,1);
  1627.                         PutPlayerInVehicle(playerid,AdminCar,0);
  1628.                         SetPVarInt(playerid,"AdminFahrzeug",1);}}
  1629.  
  1630.  
  1631.         }
  1632.     }
  1633.     switch(dialogid)
  1634.     {
  1635.         case DIALOG_REGISTER:
  1636.         {
  1637.             if(response)
  1638.             {
  1639.                 if(strlen(inputtext) == 0)
  1640.                 {
  1641.                     ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"{00FF00}Registration","Das ausgewählte Passwort war zu kurz!\nBitte gebe ein längeres Passwort ein:","Register","Abbrechen");
  1642.                     return 1;
  1643.                 }
  1644.                 else
  1645.                 {
  1646.                     CreateAccount(playerid,MD5_Hash(inputtext));
  1647.                     SetPVarInt(playerid,"Eingeloggt",1);
  1648.                     SpawnPlayer(playerid);
  1649.                     return 1;
  1650.                 }
  1651.             }
  1652.             else
  1653.             {
  1654.                 Kick(playerid);
  1655.             }
  1656.         }
  1657.         case DIALOG_LOGIN:
  1658.         {
  1659.             if(response)
  1660.             {
  1661.                 if(strlen(inputtext) == 0)
  1662.                 {
  1663.                     ShowPlayerDialog(playerid, DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"{000FF00}Login","Das eingegebene Passwort war falsch!\nBitte logge dich mit deinem Passwort ein:","Login","Abbrechen");
  1664.                     return 1;
  1665.                 }
  1666.                 else
  1667.                 {
  1668.                     new SpielerNamee[MAX_PLAYER_NAME];
  1669.                     GetPlayerName(playerid, SpielerNamee, MAX_PLAYER_NAME);
  1670.                     if(!strcmp(MD5_Hash(inputtext), mysql_ReturnPasswort(SpielerNamee), true))
  1671.                     {
  1672.                         SetPVarInt(playerid,"Eingeloggt",1);
  1673.                         LoadPlayer(playerid);
  1674.                         SpawnPlayer(playerid);
  1675.                         return 1;
  1676.                     }
  1677.                     else
  1678.                     {
  1679.                         ShowPlayerDialog(playerid, DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"{000FF00}Login","Das eingegebene Passwort war falsch!\nBitte logge dich mit deinem Passwort ein:","Login","Abbrechen");
  1680.                         return 1;
  1681.                     }
  1682.                 }
  1683.             }
  1684.             else
  1685.             {
  1686.                 Kick(playerid);
  1687.             }
  1688.         }
  1689.     }
  1690.  
  1691.     if(dialogid == DIALOG_REPORT)
  1692.     {
  1693.         if(response == 1)
  1694.         {
  1695.             if(listitem == 0)
  1696.             {
  1697.                 ShowPlayerDialog(playerid,DIALOG_BESCHWERDE,DIALOG_STYLE_INPUT,"Reportsystem - Beschwerde","Bitte gebe deine Beschwerde ein:","Weiter","Abbrechen");
  1698.                 return 1;
  1699.             }
  1700.             if(listitem == 1)
  1701.             {
  1702.                 ShowPlayerDialog(playerid,DIALOG_SUPPORT,DIALOG_STYLE_INPUT,"Reportsystem - Frage","Bitte gebe deine Frage ein:","Weiter","Abbrechen");
  1703.                 return 1;
  1704.             }
  1705.             if(listitem == 2)
  1706.             {
  1707.                 ShowPlayerDialog(playerid,DIALOG_BUG,DIALOG_STYLE_INPUT,"Reportsystem - Bugreport","Bitte gebe deinen Bug ein:","Weiter","Abbrechen");
  1708.                 return 1;
  1709.             }
  1710.         }
  1711.         if(response == 0)
  1712.         {
  1713.             ShowPlayerDialog(playerid,DIALOG_ABBRECHEN,DIALOG_STYLE_MSGBOX,"Reportsystem - Abbrechen","Du verlässt das Supportsystem!","Weiter","Zurück");
  1714.         }
  1715.     }
  1716.     if(dialogid == DIALOG_BESCHWERDE)
  1717.     {
  1718.         if(response == 1)
  1719.         {
  1720.             new string[128];
  1721.             SendClientMessage(playerid,orange,"Deine Beschwerde wurde gespeichert und an die Admins weitergeleitet!");
  1722.             format(string,sizeof(string),"[REPORT-SYSTEM]: %s hat eine Beschwerde eingereicht: [%s]",PlayerName(playerid),inputtext);
  1723.             AdminNachricht(Dunkelrot,string);
  1724.             SetPVarInt(playerid,"Report",1);
  1725.         }
  1726.         if(response == 0)
  1727.         {
  1728.             ShowPlayerDialog(playerid,DIALOG_ABBRECHEN,DIALOG_STYLE_MSGBOX,"Reportsystem - Abbrechen","Du verlässt das Supportsystem!","Weiter","Zurück");
  1729.         }
  1730.     }
  1731.     if(dialogid == DIALOG_SUPPORT)
  1732.     {
  1733.         if(response == 1)
  1734.         {
  1735.             new string[128];
  1736.             SendClientMessage(playerid,orange,"Deine Frage wurde gespeichert und an die Admins weitergeleitet!");
  1737.             format(string,sizeof(string),"[REPORT-SYSTEM]: %s hat eine Frage eingereicht: [%s]",PlayerName(playerid),inputtext);
  1738.             AdminNachricht(Dunkelrot,string);
  1739.             SetPVarInt(playerid,"Report",1);
  1740.         }
  1741.         if(response == 0)
  1742.         {
  1743.             ShowPlayerDialog(playerid,DIALOG_ABBRECHEN,DIALOG_STYLE_MSGBOX,"Reportsystem - Abbrechen","Du verlässt das Supportsystem!","Weiter","Zurück");
  1744.         }
  1745.     }
  1746.     if(dialogid == DIALOG_BUG)
  1747.     {
  1748.         if(response == 1)
  1749.         {
  1750.             new string[128];
  1751.             SendClientMessage(playerid,orange,"Dein Bugreport wurde gespeichert und an die Admins weitergeleitet!");
  1752.             format(string,sizeof(string),"[REPORT-SYSTEM]: %s hat einen Bugreport gesendet: [%s]",PlayerName(playerid),inputtext);
  1753.             AdminNachricht(Dunkelrot,string);
  1754.             SetPVarInt(playerid,"Report",1);
  1755.         }
  1756.         if(response == 0)
  1757.         {
  1758.             ShowPlayerDialog(playerid,DIALOG_ABBRECHEN,DIALOG_STYLE_MSGBOX,"Reportsystem - Abbrechen","Du verlässt das Supportsystem!","Weiter","Zurück");
  1759.         }
  1760.     }
  1761.     if(dialogid == DIALOG_ABBRECHEN)
  1762.     {
  1763.         if(response == 0)
  1764.         {
  1765.             ShowPlayerDialog(playerid,DIALOG_REPORT,DIALOG_STYLE_LIST,"Reportsystem","Beschwerde\nFrage\nBugreport","Weiter","Abbrechen");
  1766.         }
  1767.     }
  1768.     if(dialogid == DIALOG_PIN)
  1769.     {
  1770.         if(response == 0)
  1771.         {
  1772.             return 1;
  1773.         }
  1774.         if(response == 1)
  1775.         {
  1776.             if(strlen(inputtext) == 4)
  1777.             {
  1778.                 if(strval(inputtext) == PlayerInfo[playerid][pBankPIN])
  1779.                 {
  1780.                     SPD(playerid,DIALOG_BANK,DIALOG_STYLE_LIST,"Bank","{FFFFFF}Kontostand\r\nAbheben\r\nEinzahlen\r\nÜberweisen","Weiter","Abbrechen");
  1781.                 }
  1782.                 else
  1783.                 {
  1784.                     SCM(playerid,COLOR_WHITE,"Der PIN-Code ist falsch!");
  1785.                 }
  1786.             }
  1787.             else
  1788.             {
  1789.                 SCM(playerid,COLOR_WHITE,"Der PIN-Code muss aus 4 Zahlen bestehen!");
  1790.             }
  1791.         }
  1792.     }
  1793.     if(dialogid == DIALOG_KEIN_KONTO)
  1794.     {
  1795.         if(response == 0)
  1796.         {
  1797.             return 1;
  1798.         }
  1799.         if(response == 1)
  1800.         {
  1801.             SPD(playerid, DIALOG_PIN_ERSTELLEN, DIALOG_STYLE_INPUT,"Bank - Bankkonto erstellen","Bitte gebe einen PIN-Code ein!\n{CC0000}Du musst dir den PIN merken!","Erstellen","Abbrechen");
  1802.         }
  1803.     }
  1804.     if(dialogid == DIALOG_PIN_ERSTELLEN)
  1805.     {
  1806.         if(response == 0)
  1807.         {
  1808.             return 1;
  1809.         }
  1810.         if(response == 1)
  1811.         {
  1812.             if(strlen(inputtext) == 4)
  1813.             {
  1814.                 if(isNumeric(inputtext))
  1815.                 {
  1816.                     new string[128];
  1817.                     format(string,sizeof(string),"Dein Bankkonto wurde erstellt. Dein PIN lautet: %d", strval(inputtext));
  1818.                     SCM(playerid,COLOR_WHITE,"Deine EC-Karte wurde beantragt, du kannst sie in 2 Minuten hier abholen!");
  1819.                     SetTimerEx("ECKarteFertig",120000,0,"d",playerid);
  1820.                     SCM(playerid,COLOR_WHITE,string);
  1821.                     PlayerInfo[playerid][pHatKonto] = 1;
  1822.                     PlayerInfo[playerid][pBankPIN] = strval(inputtext);
  1823.                     SavePlayer(playerid);
  1824.                 }
  1825.                 else
  1826.                 {
  1827.                     SPD(playerid, DIALOG_PIN_ERSTELLEN, DIALOG_STYLE_INPUT,"Bank - Bankkonto erstellen","Bitte gebe einen PIN-Code ein!\n{CC0000}Der PIN muss aus 4 Zahlen bestehen!","Erstellen","Abbrechen");
  1828.                 }
  1829.             }
  1830.             else
  1831.             {
  1832.                 SPD(playerid, DIALOG_PIN_ERSTELLEN, DIALOG_STYLE_INPUT,"Bank - Bankkonto erstellen","Bitte gebe einen PIN-Code ein!\n{CC0000}Der PIN muss aus 4 Zahlen bestehen!","Erstellen","Abbrechen");
  1833.             }
  1834.         }
  1835.     }
  1836.     if(dialogid == DIALOG_BANK)
  1837.     {
  1838.         if(response == 0)
  1839.         {
  1840.             return 1;
  1841.         }
  1842.         if(response == 1)
  1843.         {
  1844.             switch(listitem)
  1845.             {
  1846.                 case 0://Kontostand
  1847.                 {
  1848.                     new string[128];
  1849.                     format(string,sizeof(string),"Dein Kontostand lautet:\n{FF0000}%d$",PlayerInfo[playerid][pKonto]);
  1850.                     SPD(playerid,DIALOG_KONTOSTAND,DIALOG_STYLE_MSGBOX,"Bank - Kontostand",string,"OK","Zurück");
  1851.                 }
  1852.                 case 1://Abheben
  1853.                 {
  1854.                     SPD(playerid,DIALOG_ABHEBEN,DIALOG_STYLE_INPUT,"Bank - Abheben","Wieviel Geld möchtest du abheben?","Abheben","Zurück");
  1855.                 }
  1856.                 case 2://Einzahlen
  1857.                 {
  1858.                     SPD(playerid,DIALOG_EINZAHLEN,DIALOG_STYLE_INPUT,"Bank - Einzahlen","Wieviel Geld möchtest du einzahlen?","Einzahlen","Zurück");
  1859.                 }
  1860.                 case 3://Überweisen
  1861.                 {
  1862.                     SPD(playerid,DIALOG_UEBERWEISEN_ID,DIALOG_STYLE_INPUT,"Bank - berweisen","Wem möchtest du Geld überweisen?","Weiter","Abbrechen");
  1863.                 }
  1864.             }
  1865.         }
  1866.     }
  1867.     if(dialogid == DIALOG_ABHEBEN)
  1868.     {
  1869.         if(response == 0)
  1870.         {
  1871.             return SPD(playerid,DIALOG_BANK,DIALOG_STYLE_LIST,"Bank","{FFFFFF}Kontostand\r\nAbheben\r\nEinzahlen\r\nÜberweisen","Weiter","Abbrechen");
  1872.         }
  1873.         if(response == 1)
  1874.         {
  1875.             if(isNumeric(inputtext))
  1876.             {
  1877.                 new geld = PlayerInfo[playerid][pKonto];
  1878.                 new summe = strval(inputtext);
  1879.                 if(geld <= strval(inputtext))
  1880.                 {
  1881.                     SCM(playerid,COLOR_WHITE,"Du hast nicht genug Geld auf deinem Konto!");
  1882.                 }
  1883.                 else
  1884.                 {
  1885.                     new string[128];
  1886.                     GivePlayerMoney(playerid, summe);
  1887.                     PlayerInfo[playerid][pKonto] -= summe;
  1888.                     format(string,sizeof(string),"Du hast %d$ von deinem Konto abgehoben.\nKontostand: %d", summe, PlayerInfo[playerid][pKonto]);
  1889.                     SPD(playerid,DIALOG_FERTIG,DIALOG_STYLE_MSGBOX,"Bank - Erfolgreich",string,"OK","");
  1890.                 }
  1891.             }
  1892.             else
  1893.             {
  1894.                 return SCM(playerid,COLOR_WHITE,"Du musst einen Betrag eingeben!");
  1895.             }
  1896.         }
  1897.     }
  1898.     if(dialogid == DIALOG_EINZAHLEN)
  1899.     {
  1900.         if(response == 0)
  1901.         {
  1902.             return SPD(playerid,DIALOG_BANK,DIALOG_STYLE_LIST,"Bank","{FFFFFF}Kontostand\r\nAbheben\r\nEinzahlen\r\nÜberweisen","Weiter","Abbrechen");
  1903.         }
  1904.         if(response == 1)
  1905.         {
  1906.             if(isNumeric(inputtext))
  1907.             {
  1908.                 new summe = strval(inputtext);
  1909.                 if(GetPlayerMoney(playerid) <= strval(inputtext))
  1910.                 {
  1911.                     SCM(playerid,COLOR_WHITE,"Du hast nicht genug Geld auf der Hand!");
  1912.                 }
  1913.                 else
  1914.                 {
  1915.                     new string[128];
  1916.                     GivePlayerMoney(playerid, -summe);
  1917.                     PlayerInfo[playerid][pKonto] += summe;
  1918.                     format(string,sizeof(string),"Du hast %d$ auf ein Konto eingezahlt.\nKontostand: %d", summe, PlayerInfo[playerid][pKonto]);
  1919.                     SPD(playerid,DIALOG_FERTIG,DIALOG_STYLE_MSGBOX,"Bank - Erfolgreich",string,"OK","");
  1920.                 }
  1921.             }
  1922.             else
  1923.             {
  1924.                 return SCM(playerid,COLOR_WHITE,"Du musst einen Betrag eingeben!");
  1925.             }
  1926.         }
  1927.     }
  1928.     if(dialogid == DIALOG_UEBERWEISEN_ID)
  1929.     {
  1930.         new pID;
  1931.         if(response == 0)
  1932.         {
  1933.             return SPD(playerid,DIALOG_BANK,DIALOG_STYLE_LIST,"Bank","{FFFFFF}Kontostand\r\nAbheben\r\nEinzahlen\r\nÜberweisen","Weiter","Abbrechen");
  1934.         }
  1935.         if(response == 1)
  1936.         {
  1937.             if(sscanf(inputtext,"u",pID)) return SPD(playerid,DIALOG_UEBERWEISEN_ID,DIALOG_STYLE_INPUT,"Bank - Überweisen","Wem möchtest du Geld überweisen?","Weiter","Abbrechen");
  1938.             if(!IsPlayerConnected(pID))
  1939.             {
  1940.                 return SPD(playerid,DIALOG_UEBERWEISEN_ID,DIALOG_STYLE_INPUT,"Bank - Überweisen","Dieser Spieler ist nicht Online!\nWem möchtest du Geld überweisen?","Weiter","Abbrechen");
  1941.             }
  1942.             if(PlayerInfo[pID][pHatKonto] == 0)
  1943.             {
  1944.                 return SCM(playerid, COLOR_WHITE,"Dieser Spieler hat kein Bankkonto!");
  1945.             }
  1946.             if(pID == playerid)
  1947.             {
  1948.                 return SCM(playerid,Weiss,"Du kannst dir selber kein geld überweisen!");
  1949.             }
  1950.             SPD(playerid,DIALOG_UEBERWEISUNG_BETRAG,DIALOG_STYLE_INPUT,"Bank - Überweisen","Wieviel Geld möchtest du überweisen?","Überweisen","Abbrechen");
  1951.             Ueberweiser[playerid] = pID;
  1952.             Ueberweiser[pID] = playerid;
  1953.         }
  1954.     }
  1955.     if(dialogid == DIALOG_UEBERWEISUNG_BETRAG)
  1956.     {
  1957.         new pID = Ueberweiser[playerid];
  1958.         if(response == 0)
  1959.         {
  1960.             return SPD(playerid,DIALOG_BANK,DIALOG_STYLE_LIST,"Bank","{FFFFFF}Kontostand\r\nAbheben\r\nEinzahlen\r\nÜberweisen","Weiter","Abbrechen");
  1961.         }
  1962.         if(response == 1)
  1963.         {
  1964.             if(PlayerInfo[playerid][pKonto] < strval(inputtext))
  1965.             {
  1966.                 return SendClientMessage(playerid,Rot,"Du hast nicht genug Geld auf dem Bankkonto!");
  1967.             }
  1968.             new str[128];
  1969.             new str2[128];
  1970.             PlayerInfo[playerid][pKonto] -= strval(inputtext);
  1971.             PlayerInfo[pID][pKonto] += strval(inputtext);
  1972.             format(str,sizeof(str),"Du hast %d$ auf das Konto von %s überwiesen!",strval(inputtext),Spielername(pID));
  1973.             ShowPlayerDialog(playerid,DIALOG_FERTIG,DIALOG_STYLE_MSGBOX,"Bank - Erfolgreich",str,"Schliessen","");
  1974.             format(str2,sizeof(str2),"Der Spieler %s hat dir %d$ überwiesen!!",PlayerName(playerid),strval(inputtext));
  1975.             SendClientMessage(pID,0xC8C8C8FF,str2);
  1976.         }
  1977.     }
  1978.     return 1;
  1979. }
  1980.  
  1981. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  1982. {
  1983.     return 1;
  1984. }
  1985.  
  1986. stock SpielerName(playerid)
  1987. {
  1988.     new name[MAX_PLAYER_NAME];
  1989.     GetPlayerName(playerid,name,sizeof(name));
  1990.     return name;
  1991. }
  1992.  
  1993. stock Connect_To_Database()
  1994. {
  1995.     mysql_connect(SQL_HOST, SQL_USER, SQL_DATA, SQL_PASS);
  1996.     if(mysql_ping() == 1)
  1997.     {
  1998.         print("<-| [MYSQL] Verbindung zur Datenbank wurde erfolgreich hergestellt!");
  1999.         return true;
  2000.     }
  2001.     else
  2002.     {
  2003.         print("<-| [MYSQL] Es konnte keine Verbindung zur Datenbank hergestellt werden!");
  2004.         print("<-| [MYSQL] Es wird erneut versucht eine Verbindung zur Datenbank herzustellen!");
  2005.         mysql_connect(SQL_HOST, SQL_USER, SQL_DATA, SQL_PASS);
  2006.         if(mysql_ping() == 1)
  2007.         {
  2008.             print("<-| [MYSQL] Es konnte im 2 Versuch eine Verbindung hergestellt werden!");
  2009.             return true;
  2010.         }
  2011.         else
  2012.         {
  2013.             print("<-| [MYSQL] Es konnte keine Verbindung zur Datenbank hergestellt werden!");
  2014.             print("<-| [MYSQL] Der Server wird nun beendet!");
  2015.             SendRconCommand("exit");
  2016.             return true;
  2017.         }
  2018.     }
  2019. }
  2020.  
  2021. stock mysql_CheckAccount(playerid)
  2022. {
  2023.     new Query[128],Name[MAX_PLAYER_NAME],count;
  2024.     GetPlayerName(playerid, Name, MAX_PLAYER_NAME);
  2025.     mysql_real_escape_string(Name, Name);
  2026.     format(Query, sizeof(Query), "SELECT * FROM `accounts` WHERE `Name` = '%s'", Name);
  2027.     mysql_query(Query);
  2028.     mysql_store_result();
  2029.     count = mysql_num_rows();
  2030.     mysql_free_result();
  2031.     return count;
  2032. }
  2033.  
  2034. stock CreateAccount(playerid, pass[])
  2035. {
  2036.     new query[256],Name[MAX_PLAYER_NAME];
  2037.     GetPlayerName(playerid, Name, MAX_PLAYER_NAME);
  2038.     mysql_real_escape_string(Name,Name);
  2039.     mysql_real_escape_string(pass,pass);
  2040.     format(query, sizeof(query), "INSERT INTO `accounts` (`Name`, `Passwort`) VALUES ('%s', '%s')", Name, pass);
  2041.     mysql_query(query);
  2042.     return true;
  2043. }
  2044.  
  2045. stock mysql_ReturnPasswort(Name[])
  2046. {
  2047.     new query[130], Get[130];
  2048.     mysql_real_escape_string(Name, Name);
  2049.     format(query, 128, "SELECT `passwort` FROM `accounts` WHERE `Name` = '%s'", Name);
  2050.     mysql_query(query);
  2051.     mysql_store_result();
  2052.     mysql_fetch_row(Get);
  2053.     mysql_free_result();
  2054.     return Get;
  2055. }
  2056.  
  2057. stock mysql_GetString(Table[], Field[], Where[], Is[])
  2058. {
  2059.     new query[128], Get[128];
  2060.     mysql_real_escape_string(Table, Table);
  2061.     mysql_real_escape_string(Field, Field);
  2062.     mysql_real_escape_string(Where, Where);
  2063.     mysql_real_escape_string(Is, Is);
  2064.     format(query, 128, "SELECT `%s` FROM `%s` WHERE `%s` = '%s'", Field, Table, Where, Is);
  2065.     mysql_query(query);
  2066.     mysql_store_result();
  2067.     mysql_fetch_row(Get);
  2068.     mysql_free_result();
  2069.     return Get;
  2070. }
  2071.  
  2072. stock mysql_GetInt(Table[], Field[], Where[], Is[])
  2073. {
  2074.     new query[128];
  2075.     mysql_real_escape_string(Table, Table);
  2076.     mysql_real_escape_string(Field, Field);
  2077.     mysql_real_escape_string(Where, Where);
  2078.     mysql_real_escape_string(Is, Is);
  2079.     format(query, 128, "SELECT `%s` FROM `%s` WHERE `%s` = '%s'", Field, Table, Where, Is);
  2080.     mysql_query(query);
  2081.     mysql_store_result();
  2082.     new sqlint = mysql_fetch_int();
  2083.     mysql_free_result();
  2084.     return sqlint;
  2085. }
  2086.  
  2087. stock mysql_GetFloat(Table[], Field[], Where[], Is[])
  2088. {
  2089.     new query[128], Float:sqlfloat;
  2090.     mysql_real_escape_string(Table, Table);
  2091.     mysql_real_escape_string(Field, Field);
  2092.     mysql_real_escape_string(Where, Where);
  2093.     mysql_real_escape_string(Is, Is);
  2094.     format(query, 128, "SELECT `%s` FROM `%s` WHERE `%s` = '%s'", Field, Table, Where, Is);
  2095.     mysql_query(query);
  2096.     mysql_store_result();
  2097.     mysql_fetch_float(sqlfloat);
  2098.     mysql_free_result();
  2099.     return sqlfloat;
  2100. }
  2101.  
  2102. stock mysql_SetInt(Table[], Field[], To, Where[], Where2[])
  2103. {
  2104.     new query[128];
  2105.     mysql_real_escape_string(Table, Table);
  2106.     mysql_real_escape_string(Field, Field);
  2107.     mysql_real_escape_string(Where, Where);
  2108.     mysql_real_escape_string(Where2, Where2);
  2109.     format(query, 128, "UPDATE `%s` SET `%s` = '%d' WHERE `%s` = '%s'", Table, Field, To, Where, Where2);
  2110.     mysql_query(query);
  2111.     return true;
  2112. }
  2113.  
  2114. stock mysql_SetString(Table[], Field[], To[], Where[], Where2[])
  2115. {
  2116.     new query[128];
  2117.     mysql_real_escape_string(Table, Table);
  2118.     mysql_real_escape_string(Field, Field);
  2119.     mysql_real_escape_string(To, To);
  2120.     mysql_real_escape_string(Where, Where);
  2121.     mysql_real_escape_string(Where2, Where2);
  2122.     format(query, 128, "UPDATE `%s` SET `%s` = '%s' WHERE `%s` = '%s'", Table, Field, To, Where, Where2);
  2123.     mysql_query(query);
  2124.     return true;
  2125. }
  2126.  
  2127. stock mysql_SetFloat(Table[], Field[], Float:To, Where[], Where2[])
  2128. {
  2129.     new query[128];
  2130.     mysql_real_escape_string(Table, Table);
  2131.     mysql_real_escape_string(Field, Field);
  2132.     mysql_real_escape_string(Where, Where);
  2133.     mysql_real_escape_string(Where2, Where2);
  2134.     format(query, 128, "UPDATE `%s` SET `%s` = '%f' WHERE `%s` = '%s'", Table, Field, To, Where, Where2);
  2135.     mysql_query(query);
  2136.     return true;
  2137. }
  2138.  
  2139. stock LoadPlayer(playerid)
  2140. {
  2141.     if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid))
  2142.     {
  2143.         GetPlayerName(playerid, PlayerInfo[playerid][pName], MAX_PLAYER_NAME);
  2144.         PlayerInfo[playerid][pLevel] = mysql_GetInt("accounts", "Level", "Name", PlayerInfo[playerid][pName]);
  2145.         GivePlayerMoney(playerid,mysql_GetInt("accounts", "Geld", "Name", PlayerInfo[playerid][pName]));
  2146.         PlayerInfo[playerid][pAdmin] = mysql_GetInt("accounts", "Admin", "Name", PlayerInfo[playerid][pName]);
  2147.         PlayerInfo[playerid][pBanned] = mysql_GetInt("accounts", "Banned", "Name", PlayerInfo[playerid][pName]);
  2148.         PlayerInfo[playerid][pKills] = mysql_GetInt("accounts", "Kills", "Name", PlayerInfo[playerid][pName]);
  2149.         PlayerInfo[playerid][pTode] = mysql_GetInt("accounts", "Tode", "Name", PlayerInfo[playerid][pName]);
  2150.         PlayerInfo[playerid][pWarns] = mysql_GetInt("accounts", "Warns", "Name", PlayerInfo[playerid][pName]);
  2151.         PlayerInfo[playerid][pHatKonto] = mysql_GetInt("accounts", "HatKonto", "Name", PlayerInfo[playerid][pName]);
  2152.         PlayerInfo[playerid][pKonto] = mysql_GetInt("accounts", "Konto", "Name", PlayerInfo[playerid][pName]);
  2153.         PlayerInfo[playerid][pBankPIN] = mysql_GetInt("accounts", "BankPIN", "Name", PlayerInfo[playerid][pName]);
  2154.         PlayerInfo[playerid][pECKarte] = mysql_GetInt("accounts", "ECKarte", "Name", PlayerInfo[playerid][pName]);
  2155.     }
  2156.     return 1;
  2157. }
  2158.  
  2159. stock SavePlayer(playerid)
  2160. {
  2161.     if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid))
  2162.     {
  2163.         if(GetPVarInt(playerid,"Eingeloggt")==1)
  2164.         {
  2165.             mysql_SetInt("accounts", "Level", GetPlayerScore(playerid), "Name", PlayerInfo[playerid][pName]);
  2166.             mysql_SetInt("accounts", "Geld", GetPlayerMoney(playerid), "Name", PlayerInfo[playerid][pName]);
  2167.             mysql_SetInt("accounts", "Admin", PlayerInfo[playerid][pAdmin], "Name", PlayerInfo[playerid][pName]);
  2168.             mysql_SetInt("accounts", "Banned", PlayerInfo[playerid][pBanned], "Name", PlayerInfo[playerid][pName]);
  2169.             mysql_SetInt("accounts", "Kills", PlayerInfo[playerid][pKills], "Name", PlayerInfo[playerid][pName]);
  2170.             mysql_SetInt("accounts", "Tode", PlayerInfo[playerid][pTode], "Name", PlayerInfo[playerid][pName]);
  2171.             mysql_SetInt("accounts", "Warns", PlayerInfo[playerid][pWarns], "Name", PlayerInfo[playerid][pName]);
  2172.             mysql_SetInt("accounts", "HatKonto", PlayerInfo[playerid][pHatKonto], "Name", PlayerInfo[playerid][pName]);
  2173.             mysql_SetInt("accounts", "Konto", PlayerInfo[playerid][pKonto], "Name", PlayerInfo[playerid][pName]);
  2174.             mysql_SetInt("accounts", "BankPIN", PlayerInfo[playerid][pBankPIN], "Name", PlayerInfo[playerid][pName]);
  2175.             mysql_SetInt("accounts", "ECKarte", PlayerInfo[playerid][pECKarte], "Name", PlayerInfo[playerid][pName]);
  2176.         }
  2177.     }
  2178.     return 1;
  2179. }
  2180.  
  2181. stock PlayerName(playerid)
  2182. {
  2183.     new pname[MAX_PLAYER_NAME];
  2184.     GetPlayerName(playerid,pname,sizeof(pname));
  2185.     return pname;
  2186. }
  2187.  
  2188. stock isPlayerAdminRank(playerid,Rank)
  2189. {
  2190.     if(PlayerInfo[playerid][pAdmin]==Rank)return 1;
  2191.     return 0;
  2192. }
  2193.  
  2194. stock isPlayerAnAdmin(playerid,Rank)
  2195. {
  2196.     if(PlayerInfo[playerid][pAdmin]>=Rank)return 1;
  2197.     return 0;
  2198. }
  2199.  
  2200. stock sscanf(sstring[], format[], {Float,_}:...)
  2201. {
  2202.     #if defined isnull
  2203.         if (isnull(sstring))
  2204.     #else
  2205.         if (sstring[0] == 0 || (sstring[0] == 1 && sstring[1] == 0))
  2206.     #endif
  2207.         {
  2208.             return format[0];
  2209.         }
  2210.     #pragma tabsize 4
  2211.     new
  2212.         formatPos = 0,
  2213.         sstringPos = 0,
  2214.         paramPos = 2,
  2215.         paramCount = numargs(),
  2216.         delim = ' ';
  2217.     while (sstring[sstringPos] && sstring[sstringPos] <= ' ')
  2218.     {
  2219.         sstringPos++;
  2220.     }
  2221.     while (paramPos < paramCount && sstring[sstringPos])
  2222.     {
  2223.         switch (format[formatPos++])
  2224.         {
  2225.             case '\0':
  2226.             {
  2227.                 return 0;
  2228.             }
  2229.             case 'i', 'd':
  2230.             {
  2231.                 new
  2232.                     neg = 1,
  2233.                     num = 0,
  2234.                     ch = sstring[sstringPos];
  2235.                 if (ch == '-')
  2236.                 {
  2237.                     neg = -1;
  2238.                     ch = sstring[++sstringPos];
  2239.                 }
  2240.                 do
  2241.                 {
  2242.                     sstringPos++;
  2243.                     if ('0' <= ch <= '9')
  2244.                     {
  2245.                         num = (num * 10) + (ch - '0');
  2246.                     }
  2247.                     else
  2248.                     {
  2249.                         return -1;
  2250.                     }
  2251.                 }
  2252.                 while ((ch = sstring[sstringPos]) > ' ' && ch != delim);
  2253.                 setarg(paramPos, 0, num * neg);
  2254.             }
  2255.             case 'h', 'x':
  2256.             {
  2257.                 new
  2258.                     num = 0,
  2259.                     ch = sstring[sstringPos];
  2260.                 do
  2261.                 {
  2262.                     sstringPos++;
  2263.                     switch (ch)
  2264.                     {
  2265.                         case 'x', 'X':
  2266.                         {
  2267.                             num = 0;
  2268.                             continue;
  2269.                         }
  2270.                         case '0' .. '9':
  2271.                         {
  2272.                             num = (num << 4) | (ch - '0');
  2273.                         }
  2274.                         case 'a' .. 'f':
  2275.                         {
  2276.                             num = (num << 4) | (ch - ('a' - 10));
  2277.                         }
  2278.                         case 'A' .. 'F':
  2279.                         {
  2280.                             num = (num << 4) | (ch - ('A' - 10));
  2281.                         }
  2282.                         default:
  2283.                         {
  2284.                             return -1;
  2285.                         }
  2286.                     }
  2287.                 }
  2288.                 while ((ch = sstring[sstringPos]) > ' ' && ch != delim);
  2289.                 setarg(paramPos, 0, num);
  2290.             }
  2291.             case 'c':
  2292.             {
  2293.                 setarg(paramPos, 0, sstring[sstringPos++]);
  2294.             }
  2295.             case 'f':
  2296.             {
  2297.  
  2298.                 new changestr[16], changepos = 0, strpos = sstringPos;
  2299.                 while(changepos < 16 && sstring[strpos] && sstring[strpos] != delim)
  2300.                 {
  2301.                     changestr[changepos++] = sstring[strpos++];
  2302.                     }
  2303.                 changestr[changepos] = '\0';
  2304.                 setarg(paramPos,0,_:floatstr(changestr));
  2305.             }
  2306.             case 'p':
  2307.             {
  2308.                 delim = format[formatPos++];
  2309.                 continue;
  2310.             }
  2311.             case '\'':
  2312.             {
  2313.                 new
  2314.                     end = formatPos - 1,
  2315.                     ch;
  2316.                 while ((ch = format[++end]) && ch != '\'') {}
  2317.                 if (!ch)
  2318.                 {
  2319.                     return -1;
  2320.                 }
  2321.                 format[end] = '\0';
  2322.                 if ((ch = strfind(sstring, format[formatPos], false, sstringPos)) == -1)
  2323.                 {
  2324.                     if (format[end + 1])
  2325.                     {
  2326.                         return -1;
  2327.                     }
  2328.                     return 0;
  2329.                 }
  2330.                 format[end] = '\'';
  2331.                 sstringPos = ch + (end - formatPos);
  2332.                 formatPos = end + 1;
  2333.             }
  2334.             case 'u':
  2335.             {
  2336.                 new
  2337.                     end = sstringPos - 1,
  2338.                     id = 0,
  2339.                     bool:num = true,
  2340.                     ch;
  2341.                 while ((ch = sstring[++end]) && ch != delim)
  2342.                 {
  2343.                     if (num)
  2344.                     {
  2345.                         if ('0' <= ch <= '9')
  2346.                         {
  2347.                             id = (id * 10) + (ch - '0');
  2348.                         }
  2349.                         else
  2350.                         {
  2351.                             num = false;
  2352.                         }
  2353.                     }
  2354.                 }
  2355.                 if (num && IsPlayerConnected(id))
  2356.                 {
  2357.                     setarg(paramPos, 0, id);
  2358.                 }
  2359.                 else
  2360.                 {
  2361.                     #if !defined foreach
  2362.                         #define foreach(%1,%2) for (new %2 = 0; %2 < MAX_PLAYERS; %2++) if (IsPlayerConnected(%2))
  2363.                         #define __SSCANF_FOREACH__
  2364.                     #endif
  2365.                     sstring[end] = '\0';
  2366.                     num = false;
  2367.                     new
  2368.                         name[MAX_PLAYER_NAME];
  2369.                     id = end - sstringPos;
  2370.                     foreach (Player, playerid)
  2371.                     {
  2372.                         GetPlayerName(playerid, name, sizeof (name));
  2373.                         if (!strcmp(name, sstring[sstringPos], true, id))
  2374.                         {
  2375.                             setarg(paramPos, 0, playerid);
  2376.                             num = true;
  2377.                             break;
  2378.                         }
  2379.                     }
  2380.                     if (!num)
  2381.                     {
  2382.                         setarg(paramPos, 0, INVALID_PLAYER_ID);
  2383.                     }
  2384.                     sstring[end] = ch;
  2385.                     #if defined __SSCANF_FOREACH__
  2386.                         #undef foreach
  2387.                         #undef __SSCANF_FOREACH__
  2388.                     #endif
  2389.                 }
  2390.                 sstringPos = end;
  2391.             }
  2392.             case 's', 'z':
  2393.             {
  2394.                 new
  2395.                     i = 0,
  2396.                     ch;
  2397.                 if (format[formatPos])
  2398.                 {
  2399.                     while ((ch = sstring[sstringPos++]) && ch != delim)
  2400.                     {
  2401.                         setarg(paramPos, i++, ch);
  2402.                     }
  2403.                     if (!i)
  2404.                     {
  2405.                         return -1;
  2406.                     }
  2407.                 }
  2408.                 else
  2409.                 {
  2410.                     while ((ch = sstring[sstringPos++]))
  2411.                     {
  2412.                         setarg(paramPos, i++, ch);
  2413.                     }
  2414.                 }
  2415.                 sstringPos--;
  2416.                 setarg(paramPos, i, '\0');
  2417.             }
  2418.             default:
  2419.             {
  2420.                 continue;
  2421.             }
  2422.         }
  2423.         while (sstring[sstringPos] && sstring[sstringPos] != delim && sstring[sstringPos] > ' ')
  2424.         {
  2425.             sstringPos++;
  2426.         }
  2427.         while (sstring[sstringPos] && (sstring[sstringPos] == delim || sstring[sstringPos] <= ' '))
  2428.         {
  2429.             sstringPos++;
  2430.         }
  2431.         paramPos++;
  2432.     }
  2433.     do
  2434.     {
  2435.         if ((delim = format[formatPos++]) > ' ')
  2436.         {
  2437.             if (delim == '\'')
  2438.             {
  2439.                 while ((delim = format[formatPos++]) && delim != '\'') {}
  2440.             }
  2441.             else if (delim != 'z')
  2442.             {
  2443.                 return delim;
  2444.             }
  2445.         }
  2446.     }
  2447.     while (delim > ' ');
  2448.     return 0;
  2449. }
  2450.  
  2451. stock isNumeric(const string[])
  2452. {
  2453.     new length=strlen(string);
  2454.     if (length==0) return false;
  2455.     for (new i = 0; i < length; i++) {
  2456.         if (
  2457.         (string[i] > '9' || string[i] < '0' && string[i]!='-' && string[i]!='+') // Not a number,'+' or '-'
  2458.         || (string[i]=='-' && i!=0)                                             // A '-' but not at first.
  2459.         || (string[i]=='+' && i!=0)                                             // A '+' but not at first.
  2460.         ) return false;
  2461.     }
  2462.     if (length==1 && (string[0]=='-' || string[0]=='+')) return false;
  2463.     return true;
  2464. }
  2465.  
  2466. stock hasPlayerName(playerid,name[])
  2467. {
  2468.     new xname[MAX_PLAYER_NAME];
  2469.     GetPlayerName(playerid,xname);
  2470.     return ((!strcmp(name,xname))?(true):(false));
  2471. }
  2472.  
  2473. stock SetPlayerMoney(playerid,money)
  2474. {
  2475.     ResetPlayerMoney(playerid);
  2476.     GivePlayerMoney(playerid,money);
  2477.     return 1;
  2478. }
  2479.  
  2480. stock AdminNachricht(farbe,text[])
  2481. {
  2482.     for(new i = 0; i < MAX_PLAYERS; i++)
  2483.     {
  2484.         if(IsPlayerConnected(i) && PlayerInfo[i][pAdmin] >= 0)
  2485.         {
  2486.             SendClientMessage(i,farbe,text);
  2487.         }
  2488.     }
  2489.     return 1;
  2490. }
  2491.  
  2492. public ECKarteFertig(playerid)
  2493. {
  2494.     DarfECAbholen[playerid] = 1;
  2495.     SCM(playerid, COLOR_WHITE,"Du kannst deine EC-Karte nun in der Bank abholen (/eckarte)!");
  2496.     return 1;
  2497. }
  2498.  
  2499. stock Spielername(playerid)
  2500. {
  2501.     new NoName[MAX_PLAYER_NAME];
  2502.     GetPlayerName(playerid,NoName,sizeof NoName);
  2503.     return NoName;
  2504. }
  2505.  
  2506. public IsAtATM(playerid)
  2507. {
  2508.     if(IsPlayerInRangeOfPoint(playerid, 2.0, 1505.3571,-1706.5531,14.0469) || IsPlayerInRangeOfPoint(playerid, 2.0, 1223.6383,-1743.6448,13.5971))
  2509.     {
  2510.         return 1;
  2511.     }
  2512.     else if (IsPlayerInRangeOfPoint(playerid, 2.0, 491.4543,-1733.9115,11.2632) || IsPlayerInRangeOfPoint(playerid, 2.0, 380.7548,-2022.3887,7.8359))
  2513.     {
  2514.         return 1;
  2515.     }
  2516.     else if (IsPlayerInRangeOfPoint(playerid, 2.0, 1000.1720,-922.7279,42.3281) || IsPlayerInRangeOfPoint(playerid, 2.0, 1196.0596,-919.2913,43.1502))
  2517.     {
  2518.         return 1;
  2519.     }
  2520.     else if (IsPlayerInRangeOfPoint(playerid, 2.0, 1036.0769,-1025.1725,32.1016) || IsPlayerInRangeOfPoint(playerid, 2.0, 926.2456,-1355.0319,13.3783))
  2521.     {
  2522.         return 1;
  2523.     }
  2524.     else if (IsPlayerInRangeOfPoint(playerid, 2.0, 811.2282,-1623.7705,13.5547) || IsPlayerInRangeOfPoint(playerid, 2.0, 1929.2842,-1771.2465,13.5469))
  2525.     {
  2526.         return 1;
  2527.     }
  2528.     else if (IsPlayerInRangeOfPoint(playerid, 2.0, 2104.7717,-1809.2222,13.5547) || IsPlayerInRangeOfPoint(playerid, 2.0, 2072.7190,-1836.9708,13.5545))
  2529.     {
  2530.         return 1;
  2531.     }
  2532.     else if (IsPlayerInRangeOfPoint(playerid, 2.0, 1957.3990,-2186.2932,13.5469) || IsPlayerInRangeOfPoint(playerid, 2.0, 2779.4229,-1822.4525,10.2743))
  2533.     {
  2534.         return 1;
  2535.     }
  2536.     else if (IsPlayerInRangeOfPoint(playerid, 2.0, 2394.5190,-1915.5287,13.5469) || IsPlayerInRangeOfPoint(playerid,2,1484.75000000,-1772.30004883,18.39999962))
  2537.     {
  2538.         return 1;
  2539.     }
  2540.     else if(IsPlayerInRangeOfPoint(playerid,2,1477.34997559,-1772.30004883,18.39999962) || IsPlayerInRangeOfPoint(playerid,2,1553.80004883,-1667.90002441,13.19999981))
  2541.     {
  2542.         return 1;
  2543.     }
  2544.     return 0;
  2545. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement