Advertisement
Guest User

GangWars by FoxHound aka PSPgamer

a guest
Aug 6th, 2010
1,008
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 61.94 KB | None | 0 0
  1. /*
  2.                         ______________________________
  3.                        
  4.                                    Los Santos
  5.                                    Gang Wars
  6.                        |        ---------------       |
  7.                             FoxHound | PSPgamer_10
  8.                         ______________________________                  */
  9.  
  10. //-------: INCLUDEs :-------//
  11.     #include <a_samp>
  12. //--------------------------//
  13.  
  14. //--------------------: DEFINEs :--------------------//
  15.   //GameMode
  16.     #define     SERVER_NAME     "GangWars"
  17.     #define     GMTEXT          "Team Deathmatch"
  18.     #define     MAP_NAME        "Los Santos"
  19.     #define     SAMP_VERSION    "0.3a"
  20.     #define     GM_VERSION      "v0.3"
  21.     #define     PASSWORD        "changeme" //Change this
  22.     #define     WEBSITE         "{-N/A-}"
  23.     #define     GRAVITY         0.008
  24.     #define     NAMETAG_DRAW_DISTANCE 30.0
  25.     #define     userdata        "GW_User/%s.ini" //Where should the UserData's be saved
  26.  
  27.   //Player & Classes
  28.     #define     ClassPos        1958.3783,1343.1572,15.3746
  29.     #define     ClassAngle      269.1425
  30.     #define     ClassCamPos     1970.3783,1353.1572,15.3746
  31.     #define     SpawnHealth     100
  32.     #define     SpawnArmour     0
  33.     #define     SpawnWaitTime   10
  34.     #define     AbuseCost       1000
  35.     #define     ArmourCost      500
  36.  
  37.   //Teams
  38.     #define     TEAM_GROVE      0
  39.     #define     TEAM_BALLAS     1
  40.     #define     TEAM_VAGOS      2
  41.     #define     TEAM_BIKER      3
  42.     #define     TEAM_TRIAD      4
  43.     #define     TEAM_AZTECAS    5
  44.     #define     TEAM_RIFA       6
  45.     #define     TEAM_NANG       7
  46.     #define     TEAM_POLICE     8
  47.    
  48.   //Weapons
  49.     #define     UNARMED     0,0
  50.     #define     KNIFE       4,1
  51.     #define     BASEBAT     5,1
  52.     #define     COLT45      22,150
  53.     #define     DEAGLE      24,50
  54.     #define     SHOTGUN     26,10
  55.     #define     MP5         29,300
  56.     #define     AK47        30,150
  57.     #define     M4          31,200
  58.  
  59.   //FightStyle Costs
  60.     #define     NormalCost      100
  61.     #define     BoxingCost      250
  62.     #define     KungFuCost      1000
  63.     #define     KneeheadCost    750
  64.     #define     GrabkickCost    500
  65.     #define     ElbowCost       500
  66.    
  67.   //Dialogs
  68.     #define     RegisterDialog 999
  69.     #define     LoginDialog 998
  70.     #define     FightDialog 997
  71.     #define     ArmourDialog 996
  72. //---------------------------------------------------//
  73.  
  74. //--------------------: FORWARDs :--------------------//
  75.     forward ShowStats(playerid,targetid);
  76.     forward OnPlayerLogin(playerid,const string[]);
  77. //----------------------------------------------------//
  78.  
  79. //----------------: NEWs :----------------//
  80.   //Options
  81.     new TOGGLE_TEST_MODE = false;
  82.  
  83.   //Other
  84.     static gTeam[MAX_PLAYERS];
  85.     new pTeamkillWarns[MAX_PLAYERS];
  86.     new pDrivebyWarns[MAX_PLAYERS];
  87.     new PlayerMuted[MAX_PLAYERS];
  88.     new vagos[4], biker[5], aztecas[3];
  89.     new triad[5], ballas[3], grove[4];
  90.     new rifa[5], nang[3], cop[5];
  91.     new pHasAdminLabel[MAX_PLAYERS];
  92.     new Text3D:pAdminLabel[MAX_PLAYERS];
  93.     new gPlayerLogged[MAX_PLAYERS];
  94.     new gPlayerAccount[MAX_PLAYERS];
  95.     new hostname;
  96. //----------------------------------------//
  97.  
  98. //---------------: ENUMs :---------------//
  99.     enum pInfo
  100.     {
  101.         pPassword[128],
  102.         pKills,
  103.         pDeaths,
  104.         pCash,
  105.         pScore,
  106.         pAdmin,
  107.         pLanguage
  108.     };
  109.     new PlayerInfo[MAX_PLAYERS][pInfo];
  110. //---------------------------------------//
  111.  
  112. //------------------------------------: MAIN :------------------------------------//
  113.     main()
  114.     {
  115.         print("\n\n                 _____________________________________");
  116.         print("                |");
  117.         printf("                |         %s %s",MAP_NAME,SERVER_NAME);
  118.         print("                |_____________________________________\n\n");
  119.     }
  120. //--------------------------------------------------------------------------------//
  121.  
  122. public OnGameModeInit()
  123. {
  124.     UsePlayerPedAnims();
  125.     DisableInteriorEnterExits();
  126.     ShowPlayerMarkers(true);
  127.     ShowNameTags(true);
  128.     SetNameTagDrawDistance(NAMETAG_DRAW_DISTANCE);
  129.  
  130.     new textsets[128];
  131.     if(TOGGLE_TEST_MODE) {
  132.         format(textsets,sizeof(textsets),"hostname Testing %s %s    Please Wait !",SERVER_NAME,GM_VERSION);
  133.         SendRconCommand(textsets);
  134.         format(textsets,sizeof(textsets),"password %s",PASSWORD);
  135.         SendRconCommand(textsets);
  136.         SetTimer("HostNameChanger",1000,1); }
  137.     else if(!TOGGLE_TEST_MODE) {
  138.         format(textsets,sizeof(textsets),"hostname [%s] %s %s",SAMP_VERSION,SERVER_NAME,GM_VERSION);
  139.         SendRconCommand(textsets); }
  140.     format(textsets,sizeof(textsets),"%s",GMTEXT);
  141.     SetGameModeText(textsets);
  142.     format(textsets,sizeof(textsets),"mapname %s",MAP_NAME);
  143.     SendRconCommand(textsets);
  144.     format(textsets,sizeof(textsets),"weburl %s",WEBSITE);
  145.     SendRconCommand(textsets);
  146.     SetGravity(GRAVITY);
  147.  
  148. //--------------------------------: CLASSES :--------------------------------//
  149.   //GROVE STREET
  150.     AddPlayerClass(105, ClassPos, ClassAngle, 348, 150, 353, 300, 335, 1);
  151.     AddPlayerClass(106, ClassPos, ClassAngle, 348, 150, 353, 300, 335, 1);
  152.     AddPlayerClass(107, ClassPos, ClassAngle, 348, 150, 353, 300, 335, 1);
  153.   //BALLAS
  154.     AddPlayerClass(102, ClassPos, ClassAngle, 348, 150, 353, 300, 336, 1);
  155.     AddPlayerClass(103, ClassPos, ClassAngle, 348, 150, 353, 300, 336, 1);
  156.     AddPlayerClass(104, ClassPos, ClassAngle, 348, 150, 353, 300, 336, 1);
  157.   //VAGOS
  158.     AddPlayerClass(108, ClassPos, ClassAngle, 348, 150, 353, 300, 336, 1);
  159.     AddPlayerClass(109, ClassPos, ClassAngle, 348, 150, 353, 300, 336, 1);
  160.     AddPlayerClass(110, ClassPos, ClassAngle, 348, 150, 353, 300, 336, 1);
  161.   //BIKER
  162.     AddPlayerClass(100, ClassPos, ClassAngle, 348, 150, 353, 300, 335, 1);
  163.     AddPlayerClass(247, ClassPos, ClassAngle, 348, 150, 353, 300, 335, 1);
  164.     AddPlayerClass(248, ClassPos, ClassAngle, 348, 150, 353, 300, 335, 1);
  165.     AddPlayerClass(254, ClassPos, ClassAngle, 348, 150, 353, 300, 335, 1);
  166.   //TRIADS
  167.     AddPlayerClass(117, ClassPos, ClassAngle, 348, 150, 353, 300, 335, 1);
  168.     AddPlayerClass(118, ClassPos, ClassAngle, 348, 150, 353, 300, 335, 1);
  169.     AddPlayerClass(120, ClassPos, ClassAngle, 348, 150, 353, 300, 335, 1);
  170.   //VARIOS LOS AZTECAS
  171.     AddPlayerClass(114, ClassPos, ClassAngle, 348, 150, 353, 300, 336, 1);
  172.     AddPlayerClass(115, ClassPos, ClassAngle, 348, 150, 353, 300, 336, 1);
  173.     AddPlayerClass(126, ClassPos, ClassAngle, 348, 150, 353, 300, 336, 1);
  174.   //SAN FIERRO RIFA
  175.     AddPlayerClass(173, ClassPos, ClassAngle, 348, 150, 353, 300, 336, 1);
  176.     AddPlayerClass(174, ClassPos, ClassAngle, 348, 150, 353, 300, 336, 1);
  177.     AddPlayerClass(175, ClassPos, ClassAngle, 348, 150, 353, 300, 336, 1);
  178.   //DA NANG BOYS
  179.     AddPlayerClass(121, ClassPos, ClassAngle, 348, 150, 353, 300, 336, 1);
  180.     AddPlayerClass(122, ClassPos, ClassAngle, 348, 150, 353, 300, 336, 1);
  181.     AddPlayerClass(123, ClassPos, ClassAngle, 348, 150, 353, 300, 336, 1);
  182.   //POLICE
  183.     AddPlayerClass(280, ClassPos, ClassAngle, 348, 150, 353, 300, 336, 1);
  184.     AddPlayerClass(284, ClassPos, ClassAngle, 348, 150, 353, 300, 336, 1);
  185.     AddPlayerClass(285, ClassPos, ClassAngle, 348, 150, 353, 300, 336, 1);
  186. //--------------------------------: VEHICLES :--------------------------------//
  187.   //GROVE
  188.     grove[0] = AddStaticVehicleEx(482,2504.3350,-1693.3845,13.6809,1.5664,86,86,60000); // grove1
  189.     grove[1] = AddStaticVehicleEx(482,2473.3179,-1696.3000,13.6452,359.3791,86,86,60000); // grove2
  190.     grove[2] = AddStaticVehicleEx(492,2510.2122,-1672.0056,13.1963,346.8490,16,26,60000); // grove3
  191.     grove[3] = AddStaticVehicleEx(492,2507.0718,-1693.4861,13.3381,0.6843,16,26,60000); // grove4
  192.   //BALLAS
  193.     ballas[0] = AddStaticVehicleEx(567,992.9389,-1254.2483,14.9014,178.7973,5,5,60000); // ballas1
  194.     ballas[1] = AddStaticVehicleEx(567,979.2394,-1261.9778,16.0646,179.4369,5,5,60000); // ballas2
  195.     ballas[2] = AddStaticVehicleEx(567,972.9879,-1261.7026,16.1114,180.0926,5,5,60000); // ballas3
  196.   //VAGOS
  197.     vagos[0] = AddStaticVehicleEx(463,2821.9673,-1562.3831,10.4679,89.6436,6,6,60000); // vagos1
  198.     vagos[1] = AddStaticVehicleEx(463,2821.5049,-1553.8507,10.4635,89.7179,6,6,60000); // vagos2
  199.     vagos[2] = AddStaticVehicleEx(535,2816.0969,-1539.9172,10.7536,180.5641,6,6,60000); // vagos3
  200.     vagos[3] = AddStaticVehicleEx(535,2807.3835,-1540.7947,10.7536,179.9854,6,6,60000); // vagos4
  201.   //BIKER
  202.     biker[0] = AddStaticVehicleEx(463,1073.4894,-934.9927,42.4634,276.4203,123,123,60000); // bike1
  203.     biker[1] = AddStaticVehicleEx(463,1072.0469,-927.7988,42.7223,279.8918,123,123,60000); // bike2
  204.     biker[2] = AddStaticVehicleEx(463,1089.9794,-935.7706,42.4999,2.5764,123,123,60000); // bike3
  205.     biker[3] = AddStaticVehicleEx(463,1097.4269,-935.3810,42.6034,1.4425,123,123,60000); // bike4
  206.     biker[4] = AddStaticVehicleEx(463,1106.9486,-935.1186,42.7247,1.9666,123,123,60000); // bike5
  207.   //AZTECAS
  208.     aztecas[0] = AddStaticVehicleEx(576,1625.6556,-1550.8290,13.5004,1.0433,7,7,60000); // aztecas1
  209.     aztecas[1] = AddStaticVehicleEx(576,1635.1632,-1550.8458,13.4469,359.6790,7,7,60000); // aztecas2
  210.     aztecas[2] = AddStaticVehicleEx(576,1645.0153,-1550.7920,13.3944,0.0320,7,7,60000); // aztecas3
  211.   //TRIADS
  212.     triad[0] = AddStaticVehicleEx(603,741.0161,-1437.6207,13.2545,358.9668,0,0,60000); // triad1
  213.     triad[1] = AddStaticVehicleEx(402,737.2739,-1437.6665,13.2545,359.6241,0,0,60000); // triad2
  214.     triad[2] = AddStaticVehicleEx(603,728.1140,-1437.9872,13.2545,0.7594,0,0,60000); // triad3
  215.     triad[3] = AddStaticVehicleEx(402,721.9779,-1437.5507,13.2508,358.5431,0,0,60000); // triad4
  216.     triad[4] = AddStaticVehicleEx(603,712.4270,-1437.4440,13.2542,359.6120,0,0,60000); // triad5
  217.   //POLICE
  218.     cop[0] = AddStaticVehicleEx(596,1543.7415,-1612.4979,13.2145,270.5873,0,1,60000); // cop0
  219.     cop[1] = AddStaticVehicleEx(596,1543.6045,-1607.0354,13.2144,269.6248,0,1,60000); // cop1
  220.     cop[2] = AddStaticVehicleEx(427,1600.4773,-1633.8517,13.4516,359.4800,0,1,60000); // cop2(truck)
  221.     cop[3] = AddStaticVehicleEx(523,1569.1306,-1635.2169,13.0868,89.4283,0,1,60000); // cop3
  222.     cop[4] = AddStaticVehicleEx(523,1557.9647,-1635.0861,13.0972,86.8012,0,1,60000); // cop4
  223.   //DA NANG BOYS
  224.     nang[0] = AddStaticVehicleEx(576,2162.4590,-1692.7802,14.9176,1.1470,73,73,60000); // nang0
  225.     nang[1] = AddStaticVehicleEx(576,2161.4910,-1679.6934,14.9174,315.1481,73,73,60000); // nang1
  226.     nang[2] = AddStaticVehicleEx(576,2176.7451,-1677.7788,14.4375,347.6519,73,73,60000); // nang2
  227.   //SAN FIERRO RIFA
  228.     rifa[0] = AddStaticVehicleEx(575,1242.4399,-1810.7325,13.2596,292.2271,2,2,60000); // rifa0
  229.     rifa[1] = AddStaticVehicleEx(575,1252.1815,-1805.1577,13.2538,306.5024,2,2,60000); // rifa1
  230.     rifa[2] = AddStaticVehicleEx(575,1264.1206,-1794.7792,13.2539,269.1181,2,2,60000); // rifa2
  231.     rifa[3] = AddStaticVehicleEx(575,1252.4609,-1835.8413,13.2197,268.8998,2,2,60000); // rifa3
  232.     rifa[4] = AddStaticVehicleEx(575,1238.8246,-1835.8630,13.2198,270.1116,2,2,60000); // rifa4
  233.     return 1;
  234. }
  235.  
  236. public OnPlayerRequestClass(playerid, classid)
  237. {
  238.     SetPlayerPos(playerid, ClassPos);
  239.     SetPlayerFacingAngle(playerid, ClassAngle);
  240.     SetPlayerCameraPos(playerid, ClassCamPos);
  241.     SetPlayerCameraLookAt(playerid, ClassPos);
  242.     if(classid == 0 || classid == 1 || classid == 2)
  243.     {
  244.         SetupPlayerTeam(playerid, TEAM_GROVE, "~g~Grove Street");
  245.         SetPlayerColor(playerid,0x00CC33FF);
  246.     }
  247.     if(classid == 3 || classid == 4 || classid == 5)
  248.     {
  249.         SetupPlayerTeam(playerid, TEAM_BALLAS, "~p~Ballas");
  250.         SetPlayerColor(playerid,0xE036E0FF);
  251.     }
  252.     if(classid == 6 || classid == 7 || classid == 8)
  253.     {
  254.         SetupPlayerTeam(playerid, TEAM_VAGOS, "~y~Los Santos Vagos");
  255.         SetPlayerColor(playerid,0xE8E800FF);
  256.     }
  257.     if(classid == 9 || classid == 10 || classid == 11 || classid == 12)
  258.     {
  259.         SetupPlayerTeam(playerid, TEAM_BIKER, "~w~Biker");
  260.         SetPlayerColor(playerid,0x884444FF);
  261.     }
  262.     if(classid == 13 || classid == 14 || classid == 15)
  263.     {
  264.         SetupPlayerTeam(playerid, TEAM_TRIAD, "~l~Triads");
  265.         SetPlayerColor(playerid,0x3A3A3AFF);
  266.     }
  267.     if(classid == 16 || classid == 17 || classid == 18)
  268.     {
  269.         SetupPlayerTeam(playerid, TEAM_AZTECAS, "~b~~h~Varios Los Aztecas");
  270.         SetPlayerColor(playerid,0x0909FFFF);
  271.     }
  272.     if(classid == 19 || classid == 20 || classid == 21)
  273.     {
  274.         SetupPlayerTeam(playerid, TEAM_RIFA, "~b~San Fierro Rifa");
  275.         SetPlayerColor(playerid,0x0909FFFF);
  276.     }
  277.     if(classid == 22 || classid == 23 || classid == 24)
  278.     {
  279.         SetupPlayerTeam(playerid, TEAM_NANG, "~w~Da Nang Boys");
  280.         SetPlayerColor(playerid,0x0909FFFF);
  281.     }
  282.     if(classid == 25 || classid == 26 || classid == 27)
  283.     {
  284.         SetupPlayerTeam(playerid, TEAM_POLICE, "~b~Police");
  285.         SetPlayerColor(playerid,0x0909FFFF);
  286.     }
  287.     return 1;
  288. }
  289.  
  290. public OnPlayerConnect(playerid)
  291. {
  292.     new string[64];
  293.     new pname[MAX_PLAYER_NAME];
  294.     GetPlayerName(playerid,pname,sizeof(pname));
  295.     format(string, sizeof(string), userdata, pname);
  296.     if(fexist(string))
  297.     {
  298.         new servname[32];
  299.         gPlayerAccount[playerid] = 1;
  300.         format(servname, sizeof(servname), "%s", SERVER_NAME);
  301.         format(string, sizeof(string), "Welcome back, %s!\nPlease type your password to login !",pname);
  302.         ShowPlayerDialog(playerid,LoginDialog,DIALOG_STYLE_INPUT,servname,string,"Enter","Cancel");
  303.         return 1;
  304.     }
  305.     else
  306.     {
  307.         new servname[32];
  308.         gPlayerAccount[playerid] = 0;
  309.         format(servname, sizeof(servname), "%s", SERVER_NAME);
  310.         format(string, sizeof(string), "Welcome, %s!\nPlease type a password to register.",pname);
  311.         ShowPlayerDialog(playerid,RegisterDialog,DIALOG_STYLE_INPUT,servname,string,"Enter","Cancel");
  312.     }
  313.     if(PlayerInfo[playerid][pLanguage] == 0) {
  314.         format(string,sizeof(string),"Welcome to %s.",SERVER_NAME); }
  315.     else if(PlayerInfo[playerid][pLanguage] == 1) {
  316.         format(string,sizeof(string),"Willkommen zum %s.",SERVER_NAME); }
  317.     else if(PlayerInfo[playerid][pLanguage] == 2) {
  318.         format(string,sizeof(string),"%s adlı sunucumuza hoşgeldiniz.",SERVER_NAME); }
  319.     SendClientMessage(playerid, 0xFFFFFFAA, string);
  320.     for(new i = 0; i < MAX_PLAYERS; i++) {
  321.         if(i != playerid) {
  322.             if(PlayerInfo[i][pLanguage] == 0) {
  323.                 format(string,sizeof(string),"[join] %s has joined the server.",pname); }
  324.             else if(PlayerInfo[i][pLanguage] == 1) {
  325.                 format(string,sizeof(string),"[join] %s hat den server betreten.",pname); }
  326.             else if(PlayerInfo[i][pLanguage] == 2) {
  327.                 format(string,sizeof(string),"[giriş] %s sunucuya giriş yaptı.",pname); }
  328.             SendClientMessage(i,0xFFFFFFAA,string); } }
  329.     SendDeathMessage(INVALID_PLAYER_ID,playerid,200);
  330.     return 1;
  331. }
  332.  
  333. public OnPlayerLogin(playerid,const string[])
  334. {
  335.     new pname2[MAX_PLAYER_NAME];
  336.     new pname3[MAX_PLAYER_NAME];
  337.     new string2[64];
  338.     new string3[128];
  339.     GetPlayerName(playerid, pname2, sizeof(pname2));
  340.     format(string2, sizeof(string2), userdata, pname2);
  341.     new File: UserFile = fopen(string2, io_read);
  342.  
  343.     if (UserFile)
  344.     {
  345.         new valtmp[128];
  346.         fread(UserFile, valtmp);strmid(PlayerInfo[playerid][pPassword], valtmp, 0, strlen(valtmp)-1, 255);
  347.  
  348.         if ((strcmp(PlayerInfo[playerid][pPassword], string, true, strlen(valtmp)-1) == 0))
  349.         {
  350.             new key[128],val[128];
  351.             new Data[128];
  352.             while(fread(UserFile,Data,sizeof(Data)))
  353.             {
  354.                 key = ini_GetKey(Data);
  355.                 if( strcmp( key , "Kills" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pKills] = strval( val ); }
  356.                 if( strcmp( key , "Deaths" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pDeaths] = strval( val ); }
  357.                 if( strcmp( key , "Money" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pCash] = strval( val ); }
  358.                 if( strcmp( key , "Score" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pScore] = strval( val ); }
  359.                 if( strcmp( key , "AdmLvl" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pAdmin] = strval( val ); }
  360.                 if( strcmp( key , "Language" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pLanguage] = strval( val ); }
  361.                 GivePlayerMoney(playerid,PlayerInfo[playerid][pCash]);
  362.             }
  363.             fclose(UserFile);
  364.             gPlayerLogged[playerid] = 1;
  365.             gPlayerAccount[playerid] = 1;
  366.             new kills = PlayerInfo[playerid][pKills];
  367.             SetPlayerScore(playerid, kills);
  368.             GetPlayerName(playerid, pname3, sizeof(pname3));
  369.             format(string3, sizeof(string3), "Welcome, %s !", pname3);
  370.             SendClientMessage(playerid, 0xFFFFFFAA, string3);
  371.         }
  372.         else
  373.         {
  374.             SendClientMessage(playerid, 0xBEBEBEAA, "Wrong password.");
  375.             fclose(UserFile);
  376.             Kick(playerid);
  377.         }
  378.     }
  379.     return 1;
  380. }
  381.  
  382. public OnPlayerDisconnect(playerid, reason)
  383. {
  384.     OnPlayerUpdate(playerid);
  385.     if(pHasAdminLabel[playerid] == 1) {
  386.         Delete3DTextLabel(pAdminLabel[playerid]);
  387.         pHasAdminLabel[playerid] = 0; }
  388.     gPlayerLogged[playerid] = 0;
  389.     new string[64];
  390.     GetPlayerName(playerid,string,sizeof(string));
  391.     for(new i = 0; i < MAX_PLAYERS; i++) {
  392.     if(PlayerInfo[i][pLanguage] == 0) {
  393.         format(string,sizeof(string),"[leave] %s has left the server.",string); }
  394.     else if(PlayerInfo[i][pLanguage] == 1) {
  395.         format(string,sizeof(string),"[leave] %s hat den server verlassen.",string); }
  396.     else if(PlayerInfo[i][pLanguage] == 2) {
  397.         format(string,sizeof(string),"[çıkış] %s adlı oyuncu sunucudan çıktı.",string); }
  398.     SendClientMessage(i,0xFFFFFFAA,string); }
  399.     SendDeathMessage(INVALID_PLAYER_ID,playerid,200);
  400.     return 1;
  401. }
  402.  
  403. public OnPlayerUpdate(playerid)
  404. {
  405.     if(gPlayerLogged[playerid])
  406.     {
  407.         if(PlayerInfo[playerid][pAdmin] > 1 && !IsPlayerAdmin(playerid) && pHasAdminLabel[playerid] == 0) {
  408.             pHasAdminLabel[playerid] = 1;
  409.             pAdminLabel[playerid] = Create3DTextLabel("Admin",GetPlayerColor(playerid),0.0,0.0,0.0,NAMETAG_DRAW_DISTANCE,-1,0);
  410.             Attach3DTextLabelToPlayer(pAdminLabel[playerid],playerid,0.0,0.0,0.75);
  411.         } else if(IsPlayerAdmin(playerid)) {
  412.             pHasAdminLabel[playerid] = 1;
  413.             pAdminLabel[playerid] = Create3DTextLabel("RCON Admin",GetPlayerColor(playerid),0.0,0.0,0.0,NAMETAG_DRAW_DISTANCE,-1,0);
  414.             Attach3DTextLabelToPlayer(pAdminLabel[playerid],playerid,0.0,0.0,0.75); }
  415.         new string3[32];
  416.         new pname3[MAX_PLAYER_NAME];
  417.         GetPlayerName(playerid, pname3, sizeof(pname3));
  418.         format(string3, sizeof(string3), userdata, pname3);
  419.         new File: pFile = fopen(string3, io_write);
  420.         if (pFile)
  421.         {
  422.             new var[32];
  423.             format(var, 32, "%s\n", PlayerInfo[playerid][pPassword]);fwrite(pFile, var);
  424.             fclose(pFile);
  425.             new File: hFile = fopen(string3, io_append);
  426.             PlayerInfo[playerid][pCash] = GetPlayerMoney(playerid);
  427.             format(var, 32, "Kills=%d\n",PlayerInfo[playerid][pKills]);fwrite(hFile, var);
  428.             format(var, 32, "Deaths=%d\n",PlayerInfo[playerid][pDeaths]);fwrite(hFile, var);
  429.             format(var, 32, "Money=%d\n",PlayerInfo[playerid][pCash]);fwrite(hFile, var);
  430.             format(var, 32, "Score=%d\n",PlayerInfo[playerid][pScore]);fwrite(hFile, var);
  431.             format(var, 32, "AdmLvl=%d\n",PlayerInfo[playerid][pAdmin]);fwrite(hFile, var);
  432.             format(var, 32, "Language=%d\n",PlayerInfo[playerid][pLanguage]);fwrite(hFile, var);
  433.             fclose(hFile);
  434.         }
  435.     }
  436. //--------------------------------------------: ANTI-WEAPON-HACK :--------------------------------------------//
  437.     new gun = GetPlayerWeapon(playerid);
  438.     if(gun != 0 && gun != 4 && gun != 5 && gun != 22 && gun != 24 && gun != 26 && gun != 29 && gun != 30 && gun != 31)
  439.     {
  440.         new string[64];
  441.         new pName[MAX_PLAYER_NAME];
  442.         GetPlayerName(playerid, pName, sizeof(pName));
  443.         format(string,sizeof(string),"%s got kicked for Weapon-Hacks. (weaponid: %d)",pName,gun);
  444.         SendClientMessageToAll(0xFF6347AA, string);
  445.         if(PlayerInfo[playerid][pLanguage] == 0) {
  446.             SendClientMessage(playerid, 0xFFFFFFAA, "You got kicked for Weapon-Hacks."); }
  447.         else if(PlayerInfo[playerid][pLanguage] == 1) {
  448.             SendClientMessage(playerid, 0xFFFFFFAA, "Du wurdest wegen Waffen-Hacks gekickt."); }
  449.         else if(PlayerInfo[playerid][pLanguage] == 2) {
  450.             SendClientMessage(playerid, 0xFFFFFFAA, "Silah-Hileleri kullandığından dolayı kicklendin."); }
  451.         Kick(playerid);
  452.     }
  453. //------------------------------------------------------------------------------------------------------------//
  454.     return 1;
  455. }
  456.  
  457. public OnPlayerSpawn(playerid)
  458. {
  459.     if(gTeam[playerid] == TEAM_GROVE) {
  460.         ResetPlayerWeapons(playerid);
  461.         GivePlayerWeapon(playerid, COLT45);
  462.         GivePlayerWeapon(playerid, MP5);
  463.         GivePlayerWeapon(playerid, AK47);
  464.         GivePlayerWeapon(playerid, KNIFE);
  465.         SetPlayerPos(playerid,2495.3311,-1690.2502,14.7656);
  466.         SetPlayerFacingAngle(playerid, 0.0); }
  467.     else if(gTeam[playerid] == TEAM_BALLAS) {
  468.         ResetPlayerWeapons(playerid);
  469.         GivePlayerWeapon(playerid, COLT45);
  470.         GivePlayerWeapon(playerid, MP5);
  471.         GivePlayerWeapon(playerid, AK47);
  472.         GivePlayerWeapon(playerid, BASEBAT);
  473.         SetPlayerPos(playerid,963.8362,-1252.9634,16.9844);
  474.         SetPlayerFacingAngle(playerid, 214.1911); }
  475.     else if(gTeam[playerid] == TEAM_VAGOS) {
  476.         ResetPlayerWeapons(playerid);
  477.         GivePlayerWeapon(playerid, COLT45);
  478.         GivePlayerWeapon(playerid, MP5);
  479.         GivePlayerWeapon(playerid, AK47);
  480.         GivePlayerWeapon(playerid, BASEBAT);
  481.         SetPlayerPos(playerid,2792.2800,-1535.9351,11.0938);
  482.         SetPlayerFacingAngle(playerid, 222.3104); }
  483.     else if(gTeam[playerid] == TEAM_TRIAD) {
  484.         ResetPlayerWeapons(playerid);
  485.         GivePlayerWeapon(playerid, COLT45);
  486.         GivePlayerWeapon(playerid, MP5);
  487.         GivePlayerWeapon(playerid, AK47);
  488.         GivePlayerWeapon(playerid, KNIFE);
  489.         SetPlayerPos(playerid,738.5606,-1429.9231,13.5234);
  490.         SetPlayerFacingAngle(playerid, 176.0814); }
  491.     else if(gTeam[playerid] == TEAM_BIKER) {
  492.         ResetPlayerWeapons(playerid);
  493.         GivePlayerWeapon(playerid, COLT45);
  494.         GivePlayerWeapon(playerid, MP5);
  495.         GivePlayerWeapon(playerid, AK47);
  496.         GivePlayerWeapon(playerid, BASEBAT);
  497.         SetPlayerPos(playerid,1087.6837,-923.2156,43.3906);
  498.         SetPlayerFacingAngle(playerid, 177.3865); }
  499.     else if(gTeam[playerid] == TEAM_AZTECAS) {
  500.         ResetPlayerWeapons(playerid);
  501.         GivePlayerWeapon(playerid, COLT45);
  502.         GivePlayerWeapon(playerid, MP5);
  503.         GivePlayerWeapon(playerid, AK47);
  504.         GivePlayerWeapon(playerid, BASEBAT);
  505.         SetPlayerPos(playerid,1629.7850,-1538.6174,13.6297);
  506.         SetPlayerFacingAngle(playerid, 265.0455); }
  507.     else if(gTeam[playerid] == TEAM_RIFA) {
  508.         ResetPlayerWeapons(playerid);
  509.         GivePlayerWeapon(playerid, DEAGLE);
  510.         GivePlayerWeapon(playerid, MP5);
  511.         GivePlayerWeapon(playerid, AK47);
  512.         GivePlayerWeapon(playerid, KNIFE);
  513.         SetPlayerPos(playerid,1226.7360,-1816.3315,16.5938);
  514.         SetPlayerFacingAngle(playerid, 226.2960); }
  515.     else if(gTeam[playerid] == TEAM_NANG) {
  516.         ResetPlayerWeapons(playerid);
  517.         GivePlayerWeapon(playerid, COLT45);
  518.         GivePlayerWeapon(playerid, MP5);
  519.         GivePlayerWeapon(playerid, AK47);
  520.         GivePlayerWeapon(playerid, BASEBAT);
  521.         SetPlayerPos(playerid,2166.5549,-1671.9791,15.0745);
  522.         SetPlayerFacingAngle(playerid, 219.7148); }
  523.     else if(gTeam[playerid] == TEAM_POLICE) {
  524.         ResetPlayerWeapons(playerid);
  525.         GivePlayerWeapon(playerid, DEAGLE);
  526.         GivePlayerWeapon(playerid, MP5);
  527.         GivePlayerWeapon(playerid, SHOTGUN);
  528.         GivePlayerWeapon(playerid, M4);
  529.         GivePlayerWeapon(playerid, KNIFE);
  530.         SetPlayerPos(playerid,1553.3854,-1675.6641,16.1953);
  531.         SetPlayerFacingAngle(playerid, 89.7458); }
  532.     SetPlayerWorldBounds(playerid,3059.603,-198.5239,175.1681,-1950.205);
  533.     return 1;
  534. }
  535.  
  536. public OnPlayerDeath(playerid, killerid, reason)
  537. {
  538.     new rand = random(4);
  539.     SendDeathMessage(killerid,playerid,reason);
  540.     PlayerInfo[playerid][pDeaths] += 1;
  541.     if(killerid != INVALID_PLAYER_ID)
  542.     {
  543.         if(rand != 3) {
  544.             GameTextForPlayer(killerid, "~g~+1 ~w~Score~n~~g~+250$", 5000, 5);
  545.             SetPlayerScore(killerid, GetPlayerScore(killerid)+1);
  546.             GivePlayerMoney(killerid, 250);
  547.         } else {
  548.             GameTextForPlayer(killerid, "~g~HEADSHOT~n~~g~+2 ~w~Score~n~~g~+500$", 5000, 5);
  549.             SetPlayerScore(killerid, GetPlayerScore(killerid)+2);
  550.             GivePlayerMoney(killerid, 500); }
  551.         PlayerInfo[killerid][pKills] += 1;
  552.         if(IsPlayerInAnyVehicle(killerid))
  553.         {
  554.             if(pDrivebyWarns[killerid] <= 2)
  555.             {
  556.                 new string[32];
  557.                 GameTextForPlayer(killerid, "~r~DRIVE-BY~n~~w~+1 ~r~Drive-by Warn~n~~r~-2 ~w~Score~n~~r~-250$",5000,5);
  558.                 SetPlayerScore(killerid, GetPlayerScore(killerid)-2);
  559.                 pDrivebyWarns[killerid] += 1;
  560.                 if(PlayerInfo[killerid][pLanguage] == 0) {
  561.                     SendClientMessage(killerid, 0xDF000000, "You got warned for Drive-By kill. If you do it again, you got kicked.");
  562.                     format(string,sizeof(string),"Current Drive-By Warns: %d",pDrivebyWarns[killerid]); }
  563.                 else if(PlayerInfo[killerid][pLanguage] == 1) {
  564.                     SendClientMessage(killerid, 0xDF000000, "Du hast +1 DriveBy warn bekommen. Wenn du es nochmal machst, wirst du gekickt.");
  565.                     format(string,sizeof(string),"Jetztige Drive-By Warns: %d",pDrivebyWarns[killerid]); }
  566.                 else if(PlayerInfo[killerid][pLanguage] == 2) {
  567.                     SendClientMessage(killerid, 0xDF000000, "+1 DriveBy Uyarısı aldın. Eğer birdaha yaparsan, kicklenirsin.");
  568.                     format(string,sizeof(string),"Şuanki Drive-By uyarıların: %d",pDrivebyWarns[killerid]); }
  569.                 SendClientMessage(killerid, 0xDF000000, string);
  570.                 GivePlayerMoney(killerid, -250);
  571.                 SetPlayerScore(killerid, GetPlayerScore(killerid)-2);
  572.             }
  573.             else
  574.             {
  575.                 new string[64];
  576.                 new pName[MAX_PLAYER_NAME];
  577.                 if(PlayerInfo[killerid][pLanguage] == 0) {
  578.                     SendClientMessage(killerid, 0xDF000000, "You got kicked for Drive-By kill."); }
  579.                 else if(PlayerInfo[killerid][pLanguage] == 1) {
  580.                     SendClientMessage(killerid, 0xDF000000, "Du wurdest wegen DriveBy gekickt."); }
  581.                 else if(PlayerInfo[killerid][pLanguage] == 2) {
  582.                     SendClientMessage(killerid, 0xDF000000, "DriveBy yüzünden kicklendin."); }
  583.                 Kick(killerid);
  584.                 GetPlayerName(killerid, pName, sizeof(pName));
  585.                 for(new i = 0; i < MAX_PLAYERS; i++) {
  586.                     if(PlayerInfo[i][pLanguage] == 0) {
  587.                         format(string,sizeof(string),"%s got kicked for Drive-By kill. (%d Driveby-Warns)",pName,pDrivebyWarns[playerid]); }
  588.                     else if(PlayerInfo[i][pLanguage] == 1) {
  589.                         format(string,sizeof(string),"%s wurde wegen DriveBy gekickt. (%d Driveby-Warns)",pName,pDrivebyWarns[playerid]); }
  590.                     else if(PlayerInfo[i][pLanguage] == 2) {
  591.                         format(string,sizeof(string),"%s adlı oyuncu DriveBy yüzünden kicklendi. (%d Driveby-Uyarısı)",pName,pDrivebyWarns[playerid]); }
  592.                     SendClientMessage(i, 0xDF000000, string); }
  593.             }
  594.         }
  595.     }
  596.     if(gTeam[killerid] == gTeam[playerid])
  597.     {
  598.         if(pTeamkillWarns[killerid] <= 2)
  599.         {
  600.             new string[32];
  601.             GameTextForPlayer(killerid, "~r~TEAMKILL~n~~w~+1 ~r~Teamkill Warn~n~~r~-2 ~w~Score~n~~r~-500$",5000,5);
  602.             SetPlayerScore(killerid, GetPlayerScore(killerid)-2);
  603.             pTeamkillWarns[killerid] += 1;
  604.             SendClientMessage(killerid, 0xDF000000, "You got warned for Teamkilling. If you do it again, you got kicked.");
  605.             format(string,sizeof(string),"Teamkill Warns: %d",pTeamkillWarns[killerid]);
  606.             SendClientMessage(killerid, 0xDF000000, string);
  607.             GivePlayerMoney(killerid, -500);
  608.             SetPlayerScore(killerid, GetPlayerScore(killerid)-2);
  609.         }
  610.         else
  611.         {
  612.             new string[64];
  613.             new pName[MAX_PLAYER_NAME];
  614.             if(PlayerInfo[killerid][pLanguage] == 0) {
  615.                 SendClientMessage(killerid, 0xDF000000, "You got kicked for Teamkilling."); }
  616.             else if(PlayerInfo[killerid][pLanguage] == 1) {
  617.                 SendClientMessage(killerid, 0xDF000000, "Du wurdest wegen Teamkill gekickt."); }
  618.             else if(PlayerInfo[killerid][pLanguage] == 2) {
  619.                 SendClientMessage(killerid, 0xDF000000, "Teamkill yüzünden kicklendin."); }
  620.             Kick(killerid);
  621.             GetPlayerName(killerid, pName, sizeof(pName));
  622.             for(new i = 0; i < MAX_PLAYERS; i++) {
  623.                 if(PlayerInfo[i][pLanguage] == 0) {
  624.                     format(string,sizeof(string),"%s got kicked for Teamkilling. (%d Teamkill-Warns)",pName,pTeamkillWarns[playerid]); }
  625.                 else if(PlayerInfo[i][pLanguage] == 1) {
  626.                     format(string,sizeof(string),"%s wurde wegen Teamkill gekickt. (%d Teamkill-Warns)",pName,pTeamkillWarns[playerid]); }
  627.                 else if(PlayerInfo[i][pLanguage] == 2) {
  628.                     format(string,sizeof(string),"%s adlı oyuncu Teamkill yüzünden kicklendi. (%d Teamkill-Uyarısı)",pName,pTeamkillWarns[playerid]); }
  629.                 SendClientMessage(i, 0xDF000000, string); }
  630.         }
  631.     }
  632.     if(rand != 3 || killerid == INVALID_PLAYER_ID) {
  633.         GameTextForPlayer(playerid, "~r~-1 ~w~Score~n~~r~-250$", 5000, 5);
  634.         SetPlayerScore(playerid, GetPlayerScore(playerid)-1);
  635.         GivePlayerMoney(playerid, -250);
  636.     } else if(rand == 3 && killerid != INVALID_PLAYER_ID) {
  637.         GameTextForPlayer(playerid, "~r~HEADSHOT~n~~r~-2 ~w~Score~n~~r~-500$", 5000, 5);
  638.         SetPlayerScore(playerid, GetPlayerScore(playerid)-2);
  639.         GivePlayerMoney(playerid, -500); }
  640.     return 1;
  641. }
  642.  
  643. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  644. {
  645.     new tmp[128],idx,string[256],pname[MAX_PLAYER_NAME];
  646.     if(dialogid == FightDialog)
  647.     {
  648.         if(response == 0) { return 1; }
  649.         if(response == 1) { }
  650.         if(listitem == 0) {
  651.             if(GetPlayerMoney(playerid) >= NormalCost) {
  652.                 SetPlayerFightingStyle(playerid, FIGHT_STYLE_NORMAL);
  653.                 GivePlayerMoney(playerid, NormalCost); } }
  654.         if(listitem == 1) {
  655.             if(GetPlayerMoney(playerid) >= BoxingCost) {
  656.                 SetPlayerFightingStyle(playerid, FIGHT_STYLE_BOXING);
  657.                 GivePlayerMoney(playerid, BoxingCost); } }
  658.         if(listitem == 2) {
  659.             if(GetPlayerMoney(playerid) >= KungFuCost) {
  660.                 SetPlayerFightingStyle(playerid, FIGHT_STYLE_KUNGFU);
  661.                 GivePlayerMoney(playerid, KungFuCost); } }
  662.         if(listitem == 3) {
  663.             if(GetPlayerMoney(playerid) >= KneeheadCost) {
  664.                 SetPlayerFightingStyle(playerid, FIGHT_STYLE_KNEEHEAD);
  665.                 GivePlayerMoney(playerid, KneeheadCost); } }
  666.         if(listitem == 4) {
  667.             if(GetPlayerMoney(playerid) >= GrabkickCost) {
  668.                 SetPlayerFightingStyle(playerid, FIGHT_STYLE_GRABKICK);
  669.                 GivePlayerMoney(playerid, GrabkickCost); } }
  670.         if(listitem == 5) {
  671.             if(GetPlayerMoney(playerid) >= ElbowCost) {
  672.                 SetPlayerFightingStyle(playerid, FIGHT_STYLE_ELBOW);
  673.                 GivePlayerMoney(playerid, ElbowCost); } }
  674.     }
  675.     if(dialogid == ArmourDialog)
  676.     {
  677.         if(response == 0) { return 1; }
  678.         if(response == 1) {
  679.             SetPlayerArmour(playerid, 100);
  680.             GivePlayerMoney(playerid, -ArmourCost); }
  681.     }
  682.     if(dialogid == LoginDialog)
  683.     {
  684.         if(response == 0)
  685.         {
  686.             Kick(playerid);
  687.             return 1;
  688.         }
  689.         if(response == 1)
  690.         {
  691.             if(IsPlayerConnected(playerid))
  692.             {
  693.                 new tmppass[64];
  694.                 if(gPlayerLogged[playerid] == 1)
  695.                 {
  696.                     SendClientMessage(playerid, 0xBEBEBEAA, "You are already logged in !");
  697.                     return 1;
  698.                 }
  699.                 tmp = strtok(inputtext, idx);
  700.                 if(!strlen(tmp))
  701.                 {
  702.                     new servname[32];
  703.                     format(servname, sizeof(servname), "%s", SERVER_NAME);
  704.                     format(string, sizeof(string), "Welcome back, %s!\nPlease type your password to login !",pname);
  705.                     ShowPlayerDialog(playerid,LoginDialog,DIALOG_STYLE_INPUT,servname,string,"Enter","Cancel");
  706.                     return 1;
  707.                 }
  708.                 strmid(tmppass, tmp, 0, strlen(inputtext), 255);
  709.                 OnPlayerLogin(playerid,tmppass);
  710.             }
  711.             return 1;
  712.         }
  713.     }
  714.     if(dialogid == RegisterDialog)
  715.     {
  716.         if(response == 0)
  717.         {
  718.             SendClientMessage(playerid,0xFFFFFFAA,"You must register before you can play on this server !");
  719.             Kick(playerid);
  720.             return 1;
  721.         }
  722.         else if(response == 1)
  723.         {
  724.             tmp = strtok(inputtext, idx);
  725.             if(!strlen(tmp))
  726.             {
  727.                 new servname[32];
  728.                 format(servname, sizeof(servname), "%s", SERVER_NAME);
  729.                 format(string, sizeof(string), "Welcome, %s!\nPlease type a password to register.",pname);
  730.                 ShowPlayerDialog(playerid,RegisterDialog,DIALOG_STYLE_INPUT,servname,string,"Enter","Cancel");
  731.                 return 1;
  732.             }
  733.             if (gPlayerAccount[playerid] == 1)
  734.             {
  735.                 SendClientMessage(playerid, 0xBEBEBEAA, "This name is already registered. Please take another name !");
  736.                 Kick(playerid);
  737.                 return 1;
  738.             }
  739.             new playername[MAX_PLAYER_NAME];
  740.             strmid(PlayerInfo[playerid][pPassword], tmp, 0, strlen(inputtext), 255);
  741.             GetPlayerName(playerid, playername, sizeof(playername));
  742.             format(string, sizeof(string), userdata, playername);
  743.             new File: file = fopen(string, io_read);
  744.             if (file)
  745.             {
  746.                 SendClientMessage(playerid, 0xBEBEBEAA, "This name is already registered. Please take another name !");
  747.                 fclose(file);
  748.                 return 1;
  749.             }
  750.             new File:hFile;
  751.             hFile = fopen(string, io_append);
  752.             new var[32];//
  753.             format(var, 32, "%s\n", PlayerInfo[playerid][pPassword]);fwrite(hFile, var);
  754.             format(var, 32, "Kills=%d\n",PlayerInfo[playerid][pKills]);fwrite(hFile, var);
  755.             format(var, 32, "Deaths=%d\n",PlayerInfo[playerid][pDeaths]);fwrite(hFile, var);
  756.             PlayerInfo[playerid][pScore] = GetPlayerScore(playerid);
  757.             format(var, 32, "Score=%d\n",PlayerInfo[playerid][pScore]);fwrite(hFile, var);
  758.             PlayerInfo[playerid][pCash] = GetPlayerMoney(playerid);
  759.             format(var, 32, "Money=%d\n",PlayerInfo[playerid][pCash]);fwrite(hFile, var);
  760.             format(var, 32, "AdmLvl=%d\n",PlayerInfo[playerid][pAdmin]);fwrite(hFile, var);
  761.             format(var, 32, "Language=%d\n",PlayerInfo[playerid][pLanguage]);fwrite(hFile, var);
  762.             fclose(hFile);
  763.             OnPlayerLogin(playerid,PlayerInfo[playerid][pPassword]);
  764.             return 1;
  765.         }
  766.     }
  767.     return 1;
  768. }
  769.  
  770. public OnPlayerCommandText(playerid, cmdtext[])
  771. {
  772.     new cmd[32],idx,string[256],tmp[256],giveplayerid;
  773.     cmd = strtok(cmdtext,idx);
  774.     if(strcmp(cmd, "/buyfstyle", true) == 0)
  775.     {
  776.         format(string, sizeof(string), "Normal = %d$\nBoxing = %d$\nKungFu = %d$\nKneehead = %d$\nGrabkick = %d$\nElbow = %d$",NormalCost,BoxingCost,KungFuCost,KneeheadCost,GrabkickCost,ElbowCost);
  777.         ShowPlayerDialog(playerid, FightDialog, DIALOG_STYLE_LIST, "ARMOUR",string,"Buy","Close");
  778.         return 1;
  779.     }
  780.     if(strcmp(cmd, "/buyarmour", true) == 0 || strcmp(cmd, "/kaufarmour", true) == 0 || strcmp(cmd, "/yelekal", true) == 0)
  781.     {
  782.         new button1string[8],button2string[8];
  783.         if(GetPlayerMoney(playerid) >= ArmourCost) {
  784.             if(PlayerInfo[playerid][pLanguage] == 0) {
  785.                 format(string,sizeof(string),"Do you want to buy armour for %d$ ?",ArmourCost);
  786.                 format(button1string,sizeof(button1string),"Buy");
  787.                 format(button2string,sizeof(button2string),"Close"); }
  788.             else if(PlayerInfo[playerid][pLanguage] == 1) {
  789.                 format(string,sizeof(string),"Möchtest du wirklich armour für %d$ kaufen ?",ArmourCost);
  790.                 format(button1string,sizeof(button1string),"Kaufen");
  791.                 format(button2string,sizeof(button2string),"Schließen"); }
  792.             else if(PlayerInfo[playerid][pLanguage] == 2) {
  793.                 format(string,sizeof(string),"Yeleğin ücreti %d$'dır.\nYelek almak istediğinizden emin misiniz ?",ArmourCost);
  794.                 format(button1string,sizeof(button1string),"Satın al");
  795.                 format(button2string,sizeof(button2string),"Kapat"); }
  796.             ShowPlayerDialog(playerid, ArmourDialog, DIALOG_STYLE_MSGBOX, "ARMOUR",string,button1string,button2string); }
  797.         return 1;
  798.     }
  799.     if(strcmp(cmd, "/help", true) == 0 || strcmp(cmd, "/hilfe", true) == 0 || strcmp(cmd, "/yardim", true) == 0)
  800.     {
  801.         SendClientMessage(playerid, 0xFFFFFF00, "________________ CMDs ________________");
  802.         if(PlayerInfo[playerid][pLanguage] == 0) {
  803.             SendClientMessage(playerid, 0xFFFFFF00, " /report - /kill - /admins");
  804.             SendClientMessage(playerid, 0xFFFFFF00, " /language - /buyarmour - /buyfstyle");
  805.             if(IsPlayerAdmin(playerid) || PlayerInfo[playerid][pAdmin] == 1)
  806.             {
  807.                 SendClientMessage(playerid, 0xAFAFAFAA, "----------------------------");
  808.                 if(IsPlayerAdmin(playerid)) {
  809.                     SendClientMessage(playerid, 0xFFFFFF00, " /makeadmin - /kick - /ban"); }
  810.                 else {
  811.                     SendClientMessage(playerid, 0xFFFFFF00, "/kick"); }
  812.                 SendClientMessage(playerid, 0xFFFFFF00, " /abuse - /mute"); } }
  813.  
  814.         else if(PlayerInfo[playerid][pLanguage] == 1) {
  815.             SendClientMessage(playerid, 0xFFFFFF00, " /melden - /selbstmord - /admins");
  816.             SendClientMessage(playerid, 0xFFFFFF00, " /sprache - /kaufarmour - /buyfstyle");
  817.             if(IsPlayerAdmin(playerid) || PlayerInfo[playerid][pAdmin] == 1)
  818.             {
  819.                 SendClientMessage(playerid, 0xAFAFAFAA, "----------------------------");
  820.                 if(IsPlayerAdmin(playerid)) {
  821.                     SendClientMessage(playerid, 0xFFFFFF00, " /makeadmin - /kick - /ban"); }
  822.                 else {
  823.                     SendClientMessage(playerid, 0xFFFFFF00, "/kick"); }
  824.                 SendClientMessage(playerid, 0xFFFFFF00, " /geldstrafe - /stumm"); } }
  825.  
  826.         else if(PlayerInfo[playerid][pLanguage] == 2) {
  827.             SendClientMessage(playerid, 0xFFFFFF00, " /rapor - /intihar - /adminler");
  828.             SendClientMessage(playerid, 0xFFFFFF00, " /dil - /yelekAl - /buyfstyle");
  829.             if(IsPlayerAdmin(playerid) || PlayerInfo[playerid][pAdmin] == 1)
  830.             {
  831.                 SendClientMessage(playerid, 0xAFAFAFAA, "----------------------------");
  832.                 if(IsPlayerAdmin(playerid)) {
  833.                     SendClientMessage(playerid, 0xFFFFFF00, " /makeadmin - /kick - /ban"); }
  834.                 else {
  835.                     SendClientMessage(playerid, 0xFFFFFF00, "/kick"); }
  836.                 SendClientMessage(playerid, 0xFFFFFF00, " /paracezasi - /sustur"); } }
  837.         SendClientMessage(playerid, 0xFFFFFF00, "______________________________________");
  838.         return 1;
  839.     }
  840.     if (strcmp(cmd, "/stats", true) == 0)
  841.     {
  842.         if(IsPlayerConnected(playerid))
  843.         {
  844.             if (gPlayerLogged[playerid] != 0)
  845.             {
  846.                 ShowStats(playerid,playerid);
  847.             }
  848.             else
  849.             {
  850.                 SendClientMessage(playerid, 0xB4B5B7FF, "You are not logged in ! !");
  851.             }
  852.         }
  853.         return 1;
  854.     }
  855.     if(strcmp(cmd, "/language", true) == 0 || strcmp(cmd, "/sprache", true) == 0 || strcmp(cmd, "/dil", true) == 0)
  856.     {
  857.         if(IsPlayerConnected(playerid))
  858.         {
  859.             if(PlayerInfo[playerid][pLanguage] == 0) {
  860.                 SendClientMessage(playerid, 0xFFFFFFAA, "Sprache: Deutsch");
  861.                 PlayerInfo[playerid][pLanguage] = 1; }
  862.             else if(PlayerInfo[playerid][pLanguage] == 1) {
  863.                 SendClientMessage(playerid, 0xFFFFFFAA, "Dil: Türkçe");
  864.                 PlayerInfo[playerid][pLanguage] = 2; }
  865.             else if(PlayerInfo[playerid][pLanguage] == 2) {
  866.                 SendClientMessage(playerid, 0xFFFFFFAA, "Language: English");
  867.                 PlayerInfo[playerid][pLanguage] = 0; }
  868.         }
  869.         return 1;
  870.     }
  871.     if(strcmp(cmdtext, "/admins", true,11) == 0)
  872.     {
  873.         SendClientMessage(playerid, 0x0000D2FF, "|__________ ONLINE ADMINS __________|");
  874.         new name[MAX_PLAYER_NAME], adminstring[128], c;
  875.         for(new i,j=GetMaxPlayers();i<j;i++)
  876.         {
  877.             if(IsPlayerConnected(i))
  878.             {
  879.                 if(IsPlayerAdmin(i))
  880.                 {
  881.                     c++;
  882.                     GetPlayerName(i,name,MAX_PLAYER_NAME);
  883.                     if(c==1)
  884.                     {
  885.                         format(adminstring,128,"  Rcon Admin: %s",name);
  886.                     }
  887.                     else
  888.                     {
  889.                         format(adminstring,128,"%s , %s",adminstring,name);
  890.                     }
  891.                 }
  892.                 if(PlayerInfo[i][pAdmin] == 1 && !IsPlayerAdmin(i))
  893.                 {
  894.                     c++;
  895.                     GetPlayerName(i,name,MAX_PLAYER_NAME);
  896.                     if(c==1)
  897.                     {
  898.                         format(adminstring,128,"  Admin: %s",name);
  899.                     }
  900.                     else
  901.                     {
  902.                         format(adminstring,128,"%s , %s",adminstring,name);
  903.                     }
  904.                 }
  905.             }
  906.         }
  907.         if(c==0)
  908.         {
  909.             SendClientMessage(playerid,0xFF0000FF,"No Admins Online!");
  910.         }
  911.         else
  912.         {
  913.             SendClientMessage(playerid,0x00D700FF,adminstring);
  914.         }
  915.         SendClientMessage(playerid, 0x0000D2FF, "|___________________________________|");
  916.         return 1;
  917.     }
  918.     if(strcmp(cmd, "/report", true) == 0 || strcmp(cmd, "/melden", true) == 0 || strcmp(cmd, "/rapor", true) == 0)
  919.     {
  920.         if(IsPlayerConnected(playerid))
  921.         {
  922.             for(new i=0; i<MAX_PLAYERS; i++)
  923.             {
  924.                 new sendername[MAX_PLAYER_NAME];
  925.                 GetPlayerName(playerid, sendername, sizeof(sendername));
  926.                 new length = strlen(cmdtext);
  927.                 while ((idx < length) && (cmdtext[idx] <= ' '))
  928.                 {
  929.                     idx++;
  930.                 }
  931.                 new offset = idx;
  932.                 new result[64];
  933.                 while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
  934.                 {
  935.                     result[idx - offset] = cmdtext[idx];
  936.                     idx++;
  937.                 }
  938.                 result[idx - offset] = EOS;
  939.                 if(!strlen(result))
  940.                 {
  941.                     if(PlayerInfo[playerid][pLanguage] == 0) {
  942.                         SendClientMessage(playerid, 0xA6A6A600, "/report [message]"); }
  943.                     else if(PlayerInfo[playerid][pLanguage] == 1) {
  944.                         SendClientMessage(playerid, 0xA6A6A600, "/melden [nachricht]"); }
  945.                     else if(PlayerInfo[playerid][pLanguage] == 2) {
  946.                         SendClientMessage(playerid, 0xA6A6A600, "/rapor [mesaj]"); }
  947.                     return 1;
  948.                 }
  949.                 if(IsPlayerAdmin(i) || PlayerInfo[i][pAdmin] == 1)
  950.                 {
  951.                     format(string, sizeof(string), "[REPORT] %s(%d): %s", sendername, playerid, (result));
  952.                     SendClientMessage(i, 0xFFFF0000, string);
  953.                     if(PlayerInfo[playerid][pLanguage] == 0) {
  954.                         SendClientMessage(playerid, 0xFFFF0000, "Report sended."); }
  955.                     else if(PlayerInfo[playerid][pLanguage] == 1) {
  956.                         SendClientMessage(playerid, 0xFFFF0000, "Meldung gesendet."); }
  957.                     else if(PlayerInfo[playerid][pLanguage] == 2) {
  958.                         SendClientMessage(playerid, 0xFFFF0000, "Rapor gönderildi."); }
  959.                 }
  960.             }
  961.         }
  962.         return 1;
  963.     }
  964.     if(strcmp(cmd, "/kill", true) == 0 || strcmp(cmd, "/selbstmord", true) == 0 || strcmp(cmd, "/intihar", true) == 0)
  965.     {
  966.         SetPlayerHealth(playerid, 0);
  967.         return 1;
  968.     }
  969.     if(strcmp(cmd, "/makeadmin", true) == 0)
  970.     {
  971.         if(IsPlayerConnected(playerid))
  972.         {
  973.             if(IsPlayerAdmin(playerid))
  974.             {
  975.                 for(new i = 0; i < MAX_PLAYERS; i++)
  976.                 {
  977.                     tmp = strtok(cmdtext, idx);
  978.                     if(!strlen(tmp))
  979.                     {
  980.                         SendClientMessage(playerid, 0xA6A6A600, "/makeadmin [playerid]");
  981.                         return 1;
  982.                     }
  983.                     new playa;
  984.                     playa = ReturnUser(tmp);
  985.                     if(IsPlayerConnected(playa))
  986.                     {
  987.                         if(playa != INVALID_PLAYER_ID)
  988.                         {
  989.                             new sendername[MAX_PLAYER_NAME];
  990.                             new giveplayer[MAX_PLAYER_NAME];
  991.                             if(PlayerInfo[giveplayerid][pAdmin] == 0)
  992.                             {
  993.                                 GetPlayerName(playa, giveplayer, sizeof(giveplayer));
  994.                                 GetPlayerName(playerid, sendername, sizeof(sendername));
  995.                                 if(PlayerInfo[i][pLanguage] == 0) {
  996.                                     format(string, sizeof(string), "[ADM] %s is now an Admin by %s.", giveplayer, sendername); }
  997.                                 else if(PlayerInfo[i][pLanguage] == 1) {
  998.                                     format(string, sizeof(string), "[ADM] %s ist nun ein admin von %s.", giveplayer, sendername); }
  999.                                 else if(PlayerInfo[i][pLanguage] == 2) {
  1000.                                     format(string, sizeof(string), "[ADM] %s adlı oyuncu %s tarafından admin yapıldı.", giveplayer, sendername); }
  1001.                                 SendClientMessage(i, 0xFF6347AA, string);
  1002.                                 if(PlayerInfo[giveplayerid][pLanguage] == 0) {
  1003.                                     SendClientMessage(giveplayerid, 0xFFFF0000, "You are now an Admin !"); }
  1004.                                 else if(PlayerInfo[giveplayerid][pLanguage] == 1) {
  1005.                                     SendClientMessage(giveplayerid, 0xFFFF0000, "Du bist nun ein Admin !"); }
  1006.                                 else if(PlayerInfo[giveplayerid][pLanguage] == 2) {
  1007.                                     SendClientMessage(giveplayerid, 0xFFFF0000, "Artık sen bir adminsin !"); }
  1008.                                 PlayerInfo[giveplayerid][pAdmin] = 1;
  1009.                                 return 1;
  1010.                             }
  1011.                             else if(PlayerInfo[giveplayerid][pAdmin] == 1)
  1012.                             {
  1013.                                 GetPlayerName(playa, giveplayer, sizeof(giveplayer));
  1014.                                 GetPlayerName(playerid, sendername, sizeof(sendername));
  1015.                                 if(PlayerInfo[i][pLanguage] == 0) {
  1016.                                     format(string, sizeof(string), "[ADM] %s is no longer an Admin.", giveplayer); }
  1017.                                 else if(PlayerInfo[i][pLanguage] == 1) {
  1018.                                     format(string, sizeof(string), "[ADM] %s ist nun nicht mehr ein admin.", giveplayer); }
  1019.                                 else if(PlayerInfo[i][pLanguage] == 2) {
  1020.                                     format(string, sizeof(string), "[ADM] %s adlı oyuncu artık bir admin değil.", giveplayer); }
  1021.                                 SendClientMessage(i, 0xFF6347AA, string);
  1022.                                 if(PlayerInfo[giveplayerid][pLanguage] == 0) {
  1023.                                     SendClientMessage(giveplayerid, 0xFFFF0000, "You are no longer an Admin !"); }
  1024.                                 else if(PlayerInfo[giveplayerid][pLanguage] == 1) {
  1025.                                     SendClientMessage(giveplayerid, 0xFFFF0000, "Du bist nun nicht mehr ein Admin !"); }
  1026.                                 else if(PlayerInfo[giveplayerid][pLanguage] == 2) {
  1027.                                     SendClientMessage(giveplayerid, 0xFFFF0000, "Artık sen bir admin değilsin !"); }
  1028.                                 PlayerInfo[giveplayerid][pAdmin] = 0;
  1029.                                 return 1;
  1030.                             }
  1031.                         }
  1032.                     }
  1033.                 }
  1034.             }
  1035.         }
  1036.         return 1;
  1037.     }
  1038.     if(strcmp(cmd, "/mute", true) == 0 || strcmp(cmd, "/stumm", true) == 0 || strcmp(cmd, "/sustur", true) == 0)
  1039.     {
  1040.         if(IsPlayerConnected(playerid))
  1041.         {
  1042.             if(IsPlayerAdmin(playerid) || PlayerInfo[playerid][pAdmin] == 1)
  1043.             {
  1044.                 for(new i = 0; i < MAX_PLAYERS; i++)
  1045.                 {
  1046.                     tmp = strtok(cmdtext, idx);
  1047.                     if(!strlen(tmp))
  1048.                     {
  1049.                         if(PlayerInfo[playerid][pLanguage] == 0) {
  1050.                             SendClientMessage(playerid, 0xA6A6A600, "/mute [playerid]"); }
  1051.                         else if(PlayerInfo[playerid][pLanguage] == 1) {
  1052.                             SendClientMessage(playerid, 0xA6A6A600, "/stumm [spielerid]"); }
  1053.                         else if(PlayerInfo[playerid][pLanguage] == 2) {
  1054.                             SendClientMessage(playerid, 0xA6A6A600, "/sustur [oyuncuid]"); }
  1055.                         return 1;
  1056.                     }
  1057.                     new playa;
  1058.                     playa = ReturnUser(tmp);
  1059.                     if(IsPlayerConnected(playa))
  1060.                     {
  1061.                         if(playa != INVALID_PLAYER_ID)
  1062.                         {
  1063.                             if(PlayerMuted[giveplayerid] == 0)
  1064.                             {
  1065.                                 new sendername[MAX_PLAYER_NAME];
  1066.                                 new giveplayer[MAX_PLAYER_NAME];
  1067.                                 GetPlayerName(playa, giveplayer, sizeof(giveplayer));
  1068.                                 GetPlayerName(playerid, sendername, sizeof(sendername));
  1069.                                 if(PlayerInfo[i][pLanguage] == 0) {
  1070.                                     format(string, sizeof(string), "[MUTE] %s is now muted by %s.", giveplayer, sendername); }
  1071.                                 else if(PlayerInfo[i][pLanguage] == 1) {
  1072.                                     format(string, sizeof(string), "[STUMM] %s wurde von %s stummgeschaltet.", giveplayer, sendername); }
  1073.                                 else if(PlayerInfo[i][pLanguage] == 2) {
  1074.                                     format(string, sizeof(string), "[SUSTUR] %s adlı oyuncu %s tarafından susturuldu.", giveplayer, sendername); }
  1075.                                 SendClientMessage(i, 0xFF6347AA, string);
  1076.                                 if(PlayerInfo[giveplayerid][pLanguage] == 0) {
  1077.                                     SendClientMessage(giveplayerid, 0xFFFF0000, "You are muted !"); }
  1078.                                 else if(PlayerInfo[giveplayerid][pLanguage] == 1) {
  1079.                                     SendClientMessage(giveplayerid, 0xFFFF0000, "Du bist stummgeschaltet !"); }
  1080.                                 else if(PlayerInfo[giveplayerid][pLanguage] == 2) {
  1081.                                     SendClientMessage(giveplayerid, 0xFFFF0000, "Susturuldun !"); }
  1082.                                 PlayerMuted[giveplayerid] = 1;
  1083.                                 return 1;
  1084.                             }
  1085.                             else if(PlayerMuted[giveplayerid] == 1)
  1086.                             {
  1087.                                 new sendername[MAX_PLAYER_NAME];
  1088.                                 new giveplayer[MAX_PLAYER_NAME];
  1089.                                 GetPlayerName(playa, giveplayer, sizeof(giveplayer));
  1090.                                 GetPlayerName(playerid, sendername, sizeof(sendername));
  1091.                                 if(PlayerInfo[i][pLanguage] == 0) {
  1092.                                     format(string, sizeof(string), "[UNMUTE] %s is now unmuted by %s.", giveplayer, sendername); }
  1093.                                 else if(PlayerInfo[i][pLanguage] == 1) {
  1094.                                     format(string, sizeof(string), "[STUMM] Das schreiben wurde %s von %s erlaubt.", giveplayer, sendername); }
  1095.                                 else if(PlayerInfo[i][pLanguage] == 2) {
  1096.                                     format(string, sizeof(string), "[SUSTUR] %s adlı oyuncunun konuşmasına %s tarafından izin verildi.", giveplayer, sendername); }
  1097.                                 SendClientMessage(i, 0xFF6347AA, string);
  1098.                                 if(PlayerInfo[giveplayerid][pLanguage] == 0) {
  1099.                                     SendClientMessage(giveplayerid, 0xFFFF0000, "You are unmuted !"); }
  1100.                                 else if(PlayerInfo[giveplayerid][pLanguage] == 1) {
  1101.                                     SendClientMessage(giveplayerid, 0xFFFF0000, "Du bist nicht mehr stummgeschaltet !"); }
  1102.                                 else if(PlayerInfo[giveplayerid][pLanguage] == 2) {
  1103.                                     SendClientMessage(giveplayerid, 0xFFFF0000, "Konuşmana izin verildi !"); }
  1104.                                 PlayerMuted[giveplayerid] = 0;
  1105.                                 return 1;
  1106.                             }
  1107.                         }
  1108.                     }
  1109.                 }
  1110.             }
  1111.         }
  1112.         return 1;
  1113.     }
  1114.     if(strcmp(cmd, "/kick", true) == 0)
  1115.     {
  1116.         if(IsPlayerConnected(playerid))
  1117.         {
  1118.             new giveplayer[MAX_PLAYER_NAME];
  1119.             tmp = strtok(cmdtext, idx);
  1120.             if(!strlen(tmp))
  1121.             {
  1122.                 if(PlayerInfo[playerid][pLanguage] == 0) {
  1123.                     SendClientMessage(playerid, 0xA6A6A600, "/kick [playerid] [reason]"); }
  1124.                 else if(PlayerInfo[playerid][pLanguage] == 1) {
  1125.                     SendClientMessage(playerid, 0xA6A6A600, "/kick [spielerid] [grund]"); }
  1126.                 else if(PlayerInfo[playerid][pLanguage] == 2) {
  1127.                     SendClientMessage(playerid, 0xA6A6A600, "/kick [oyuncuid] [sebep]"); }
  1128.                 return 1;
  1129.             }
  1130.             giveplayerid = ReturnUser(tmp);
  1131.             if(IsPlayerAdmin(playerid) || PlayerInfo[playerid][pAdmin] == 1)
  1132.             {
  1133.                 if(IsPlayerConnected(giveplayerid))
  1134.                 {
  1135.                     if(giveplayerid != INVALID_PLAYER_ID)
  1136.                     {
  1137.                         for(new i = 0; i < MAX_PLAYERS; i++)
  1138.                         {
  1139.                             GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
  1140.                             new length = strlen(cmdtext);
  1141.                             while ((idx < length) && (cmdtext[idx] <= ' '))
  1142.                             {
  1143.                                 idx++;
  1144.                             }
  1145.                             new offset = idx;
  1146.                             new result[64];
  1147.                             while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
  1148.                             {
  1149.                                 result[idx - offset] = cmdtext[idx];
  1150.                                 idx++;
  1151.                             }
  1152.                             result[idx - offset] = EOS;
  1153.                             if(!strlen(result))
  1154.                             {
  1155.                                 if(PlayerInfo[playerid][pLanguage] == 0) {
  1156.                                     SendClientMessage(playerid, 0xA6A6A600, "/kick [playerid] [reason]"); }
  1157.                                 else if(PlayerInfo[playerid][pLanguage] == 1) {
  1158.                                     SendClientMessage(playerid, 0xA6A6A600, "/kick [spielerid] [grund]"); }
  1159.                                 else if(PlayerInfo[playerid][pLanguage] == 2) {
  1160.                                     SendClientMessage(playerid, 0xA6A6A600, "/kick [oyuncuid] [sebep]"); }
  1161.                                 return 1;
  1162.                             }
  1163.                             if(PlayerInfo[i][pLanguage] == 0) {
  1164.                                 format(string, sizeof(string), "[KiCK] %s got kicked by an Admin, Reason: %s", giveplayer, (result)); }
  1165.                             else if(PlayerInfo[i][pLanguage] == 1) {
  1166.                                 format(string, sizeof(string), "[KiCK] %s wurde von einem Admin gekickt, Grund: %s", giveplayer, (result)); }
  1167.                             else if(PlayerInfo[i][pLanguage] == 2) {
  1168.                                 format(string, sizeof(string), "[KiCK] %s adlı oyuncu bir Admin tarafından kicklendi, Sebep: %s", giveplayer, (result)); }
  1169.                             SendClientMessage(i,0xFF6347AA, string);
  1170.                             Kick(giveplayerid);
  1171.                             return 1;
  1172.                         }
  1173.                     }
  1174.                 }
  1175.             }
  1176.         }
  1177.         return 1;
  1178.     }
  1179.     if(strcmp(cmd, "/ban", true) == 0)
  1180.     {
  1181.         if(IsPlayerConnected(playerid))
  1182.         {
  1183.             new giveplayer[MAX_PLAYER_NAME];
  1184.             tmp = strtok(cmdtext, idx);
  1185.             if(!strlen(tmp))
  1186.             {
  1187.                 if(PlayerInfo[playerid][pLanguage] == 0) {
  1188.                     SendClientMessage(playerid, 0xA6A6A600, "/ban [playerid] [reason]"); }
  1189.                 else if(PlayerInfo[playerid][pLanguage] == 1) {
  1190.                     SendClientMessage(playerid, 0xA6A6A600, "/ban [spielerid] [grund]"); }
  1191.                 else if(PlayerInfo[playerid][pLanguage] == 2) {
  1192.                     SendClientMessage(playerid, 0xA6A6A600, "/ban [oyuncuid] [sebep]"); }
  1193.                 return 1;
  1194.             }
  1195.             giveplayerid = ReturnUser(tmp);
  1196.             if(IsPlayerAdmin(playerid))
  1197.             {
  1198.                 if(IsPlayerConnected(giveplayerid))
  1199.                 {
  1200.                     if(giveplayerid != INVALID_PLAYER_ID)
  1201.                     {
  1202.                         for(new i = 0; i < MAX_PLAYERS; i++)
  1203.                         {
  1204.                             GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
  1205.                             new length = strlen(cmdtext);
  1206.                             while ((idx < length) && (cmdtext[idx] <= ' '))
  1207.                             {
  1208.                                 idx++;
  1209.                             }
  1210.                             new offset = idx;
  1211.                             new result[64];
  1212.                             while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
  1213.                             {
  1214.                                 result[idx - offset] = cmdtext[idx];
  1215.                                 idx++;
  1216.                             }
  1217.                             result[idx - offset] = EOS;
  1218.                             if(!strlen(result))
  1219.                             {
  1220.                                 if(PlayerInfo[playerid][pLanguage] == 0) {
  1221.                                     SendClientMessage(playerid, 0xA6A6A600, "/kick [playerid] [reason]"); }
  1222.                                 else if(PlayerInfo[playerid][pLanguage] == 1) {
  1223.                                     SendClientMessage(playerid, 0xA6A6A600, "/kick [spielerid] [grund]"); }
  1224.                                 else if(PlayerInfo[playerid][pLanguage] == 2) {
  1225.                                     SendClientMessage(playerid, 0xA6A6A600, "/kick [oyuncuid] [sebep]"); }
  1226.                                 return 1;
  1227.                             }
  1228.                             if(PlayerInfo[i][pLanguage] == 0) {
  1229.                                 format(string, sizeof(string), "[BAN] %s got banned by an Admin, Reason: %s", giveplayer, (result)); }
  1230.                             else if(PlayerInfo[i][pLanguage] == 1) {
  1231.                                 format(string, sizeof(string), "[BAN] %s wurde von einem Admin gebannt, Grund: %s", giveplayer, (result)); }
  1232.                             else if(PlayerInfo[i][pLanguage] == 2) {
  1233.                                 format(string, sizeof(string), "[BAN] %s adlı oyuncu bir Admin tarafından banlandı, Sebep: %s", giveplayer, (result)); }
  1234.                             SendClientMessage(i, 0xFF6347AA, string);
  1235.                             Ban(giveplayerid);
  1236.                             return 1;
  1237.                         }
  1238.                     }
  1239.                 }
  1240.             }
  1241.         }
  1242.         return 1;
  1243.     }
  1244.     if(strcmp(cmd, "/abuse", true) == 0 || strcmp(cmd, "/geldstrafe", true) == 0 || strcmp(cmd, "/paracezasi", true) == 0)
  1245.     {
  1246.         if(IsPlayerConnected(playerid))
  1247.         {
  1248.             new giveplayer[MAX_PLAYER_NAME];
  1249.             new sendername[MAX_PLAYER_NAME];
  1250.             GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
  1251.             GetPlayerName(playerid, sendername, sizeof(sendername));
  1252.             tmp = strtok(cmdtext, idx);
  1253.             new length = strlen(cmdtext);
  1254.             while ((idx < length) && (cmdtext[idx] <= ' '))
  1255.             {
  1256.                 idx++;
  1257.             }
  1258.             if(!strlen(tmp))
  1259.             {
  1260.                 SendClientMessage(playerid, 0xA6A6A600, "/abuse [playerid] [reason]");
  1261.                 return 1;
  1262.             }
  1263.             new offset = idx;
  1264.             new result[64];
  1265.             while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
  1266.             {
  1267.                 result[idx - offset] = cmdtext[idx];
  1268.                 idx++;
  1269.             }
  1270.             result[idx - offset] = EOS;
  1271.             if(!strlen(result))
  1272.             {
  1273.                 SendClientMessage(playerid, 0xA6A6A600, "/abuse [playerid] [reason]");
  1274.                 return 1;
  1275.             }
  1276.             playerid = ReturnUser(tmp);
  1277.             if(IsPlayerAdmin(playerid) || PlayerInfo[playerid][pAdmin] == 1)
  1278.             {
  1279.                 GivePlayerMoney(giveplayerid, -AbuseCost);
  1280.                 if(PlayerInfo[giveplayerid][pLanguage] == 0) {
  1281.                     format(string, sizeof(string), "~n~~r~ABUSED!~n~~r~-%d$",AbuseCost); }
  1282.                 else if(PlayerInfo[giveplayerid][pLanguage] == 1) {
  1283.                     format(string, sizeof(string), "~n~~r~GELDSTRAFE!~n~~r~-%d$",AbuseCost); }
  1284.                 else if(PlayerInfo[giveplayerid][pLanguage] == 2) {
  1285.                     format(string, sizeof(string), "~n~~r~PARA CEZASI!~n~~r~-%d$",AbuseCost); }
  1286.                 GameTextForPlayer(giveplayerid, string, 3000, 5);
  1287.                 for(new i = 0; i < MAX_PLAYERS; i++) {
  1288.                     if(PlayerInfo[i][pLanguage] == 0) {
  1289.                         format(string, sizeof(string), "Admin %s has abused %s. Reason: %s", sendername, giveplayer, result); }
  1290.                     else if(PlayerInfo[i][pLanguage] == 1) {
  1291.                         format(string, sizeof(string), "Admin %s hat %s eine geldstrafe gegeben. Grund: %s", sendername, giveplayer, result); }
  1292.                     else if(PlayerInfo[i][pLanguage] == 2) {
  1293.                         format(string, sizeof(string), "Admin %s, %s adlı oyuncuya para cezası verdi. Sebep: %s", sendername, giveplayer, result); }
  1294.                     SendClientMessage(i, 0xFF6347AA, string); }
  1295.                 if(PlayerInfo[playerid][pLanguage] == 0) {
  1296.                     format(string, sizeof(string), "You abused %s. Reason: %s", sendername, result); }
  1297.                 else if(PlayerInfo[playerid][pLanguage] == 1) {
  1298.                     format(string, sizeof(string), "Du hast %s eine geldstrafe gegeben. Grund: %s", sendername, result); }
  1299.                 else if(PlayerInfo[playerid][pLanguage] == 2) {
  1300.                     format(string, sizeof(string), "%s adlı oyuncuya para cezası verdin. Sebep: %s", sendername, result); }
  1301.                 SendClientMessage(playerid, 0xFFFFFFAA, string);
  1302.             }
  1303.         }
  1304.         return 1;
  1305.     }
  1306.     return 0;
  1307. }
  1308.  
  1309. public OnPlayerText(playerid, text[])
  1310. {
  1311.     if(PlayerMuted[playerid] == 1)
  1312.     {
  1313.         return 0;
  1314.     }
  1315.     if(text[0] == '#')
  1316.     {
  1317.         for(new i = 0; i < MAX_PLAYERS; i++)
  1318.         {
  1319.             if(gTeam[i] == gTeam[playerid])
  1320.             {
  1321.                 new string[64];
  1322.                 text[0] = ' ';
  1323.                 GetPlayerName(playerid, string, sizeof(string));
  1324.                 format(string,sizeof(string),"[TEAMCHAT] %s:%s",string,text);
  1325.                 SendClientMessage(i,0x21DD00FF,string);
  1326.             }
  1327.         }
  1328.         return 0;
  1329.     }
  1330.     else
  1331.     {
  1332.         SetPlayerChatBubble(playerid, text, GetPlayerColor(playerid), NAMETAG_DRAW_DISTANCE, 5000);
  1333.         return 1;
  1334.     }
  1335. }
  1336.  
  1337. public OnPlayerStateChange(playerid, newstate, oldstate)
  1338. {
  1339.     if(newstate == PLAYER_STATE_DRIVER)
  1340.     {
  1341.         new vehicleid = GetPlayerVehicleID(playerid);
  1342.         if(IsAGroveCar(vehicleid) && gTeam[playerid] != TEAM_GROVE) return RemovePlayerFromVehicle(playerid);
  1343.         if(IsABallasCar(vehicleid) && gTeam[playerid] != TEAM_BALLAS) return RemovePlayerFromVehicle(playerid);
  1344.         if(IsAVagosCar(vehicleid) && gTeam[playerid] != TEAM_VAGOS) return RemovePlayerFromVehicle(playerid);
  1345.         if(IsABikerCar(vehicleid) && gTeam[playerid] != TEAM_BIKER) return RemovePlayerFromVehicle(playerid);
  1346.         if(IsATriadCar(vehicleid) && gTeam[playerid] != TEAM_TRIAD) return RemovePlayerFromVehicle(playerid);
  1347.         if(IsAnAztecasCar(vehicleid) && gTeam[playerid] != TEAM_AZTECAS) return RemovePlayerFromVehicle(playerid);
  1348.         if(IsARifaCar(vehicleid) && gTeam[playerid] != TEAM_RIFA) return RemovePlayerFromVehicle(playerid);
  1349.         if(IsANangCar(vehicleid) && gTeam[playerid] != TEAM_NANG) return RemovePlayerFromVehicle(playerid);
  1350.         if(IsACopCar(vehicleid) && gTeam[playerid] != TEAM_POLICE) return RemovePlayerFromVehicle(playerid);
  1351.     }
  1352.     return 1;
  1353. }
  1354.  
  1355. public OnPlayerRequestSpawn(playerid)
  1356. {
  1357.     OnPlayerSpawn(playerid);
  1358.     return 1;
  1359. }
  1360.  
  1361. forward HostNameChanger();
  1362. public HostNameChanger()
  1363. {
  1364.     new string[128];
  1365.     if(hostname == 0)
  1366.     {
  1367.         format(string,sizeof(string),"hostname Testing %s %s.   Please Wait !",SERVER_NAME,GM_VERSION);
  1368.         SendRconCommand(string);
  1369.         hostname = 1;
  1370.     }
  1371.     else if(hostname == 1)
  1372.     {
  1373.         format(string,sizeof(string),"hostname Testing %s %s..  Please Wait !",SERVER_NAME,GM_VERSION);
  1374.         SendRconCommand(string);
  1375.         hostname = 2;
  1376.     }
  1377.     else if(hostname == 2)
  1378.     {
  1379.         format(string,sizeof(string),"hostname Testing %s %s... Please Wait !",SERVER_NAME,GM_VERSION);
  1380.         SendRconCommand(string);
  1381.         hostname = 3;
  1382.     }
  1383.     else if(hostname == 3)
  1384.     {
  1385.         format(string,sizeof(string),"hostname Testing %s %s    Please Wait !",SERVER_NAME,GM_VERSION);
  1386.         SendRconCommand(string);
  1387.         hostname = 0;
  1388.     }
  1389.     return 1;
  1390. }
  1391.  
  1392. public ShowStats(playerid,targetid)
  1393. {
  1394.     if(IsPlayerConnected(playerid)&&IsPlayerConnected(targetid))
  1395.     {
  1396.         new cash =  GetPlayerMoney(targetid);
  1397.         new deaths = PlayerInfo[targetid][pDeaths];
  1398.         new kills = PlayerInfo[targetid][pKills];
  1399.         new name[MAX_PLAYER_NAME];
  1400.         GetPlayerName(targetid, name, sizeof(name));
  1401.         new Float:px,Float:py,Float:pz;
  1402.         GetPlayerPos(targetid, px, py, pz);
  1403.         new coordsstring[256];
  1404.         SendClientMessage(playerid, 0x33AA33AA,"_______________________________________");
  1405.         format(coordsstring, sizeof(coordsstring),"*** %s ***",name);
  1406.         SendClientMessage(playerid, 0xFFFFFFAA,coordsstring);
  1407.         format(coordsstring, sizeof(coordsstring), "Kills:[%d] Deaths:[%d] Cash:[$%d]",kills,deaths,cash);
  1408.         SendClientMessage(playerid, 0xE3E3E3FF,coordsstring);
  1409.         SendClientMessage(playerid, 0x33AA33AA,"_______________________________________");
  1410.     }
  1411. }
  1412.  
  1413. //--------------------------------------------------------->
  1414.     forward SetupPlayerTeam(playerid, gteam, gametext[]);
  1415.     public SetupPlayerTeam(playerid, gteam, gametext[]) {
  1416.         gTeam[playerid] = gteam;
  1417.         GameTextForPlayer(playerid, gametext, 4000, 5);
  1418.         return 1; }
  1419. //--------------------------------------------------------->
  1420.  
  1421. //------------------------------------------------------------------------>
  1422.     forward IsAVagosCar(carid);
  1423.     forward IsABikerCar(carid);
  1424.     forward IsAnAztecasCar(carid);
  1425.     forward IsATriadCar(carid);
  1426.     forward IsABallasCar(carid);
  1427.     forward IsAGroveCar(carid);
  1428.     forward IsARifaCar(carid);
  1429.     forward IsANangCar(carid);
  1430.     forward IsACopCar(carid);
  1431.  
  1432.     public IsAVagosCar(carid) {
  1433.         if(carid == vagos[0] || carid == vagos[1] || carid == vagos[2] || carid == vagos[3]) {
  1434.             return 1; }
  1435.         return 0; }
  1436.     public IsABikerCar(carid) {
  1437.         if(carid == biker[0] || carid == biker[1] || carid == biker[2] || carid == biker[3] || carid == biker[4]) {
  1438.             return 1; }
  1439.         return 0; }
  1440.     public IsAnAztecasCar(carid) {
  1441.         if(carid == aztecas[0] || carid == aztecas[1] || carid == aztecas[2]) {
  1442.             return 1; }
  1443.         return 0; }
  1444.     public IsATriadCar(carid) {
  1445.         if(carid == triad[0] || carid == triad[1] || carid == triad[2] || carid == triad[3] || carid == triad[4]) {
  1446.             return 1; }
  1447.         return 0; }
  1448.     public IsABallasCar(carid) {
  1449.         if(carid == ballas[0] || carid == ballas[1] || carid == ballas[2]) {
  1450.             return 1; }
  1451.         return 0; }
  1452.     public IsAGroveCar(carid) {
  1453.         if(carid == grove[0] || carid == grove[1] || carid == grove[2] || carid == grove[3]) {
  1454.             return 1; }
  1455.         return 0; }
  1456.     public IsARifaCar(carid) {
  1457.         if(carid == rifa[0] || carid == rifa[1] || carid == rifa[2] || carid == rifa[3] || carid == rifa[4]) {
  1458.             return 1; }
  1459.         return 0; }
  1460.     public IsANangCar(carid) {
  1461.         if(carid == nang[0] || carid == nang[1] || carid == nang[2]) {
  1462.             return 1; }
  1463.         return 0; }
  1464.     public IsACopCar(carid) {
  1465.         if(carid == cop[0] || carid == cop[1] || carid == cop[2] || carid == cop[3] || carid == cop[4]) {
  1466.             return 1; }
  1467.         return 0; }
  1468. //------------------------------------------------------------------------>
  1469.  
  1470. strtok(const string[], &index)
  1471. {
  1472.     new length = strlen(string);
  1473.     while ((index < length) && (string[index] <= ' '))
  1474.     {
  1475.         index++;
  1476.     }
  1477.     new offset = index;
  1478.     new result[20];
  1479.     while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
  1480.     {
  1481.         result[index - offset] = string[index];
  1482.         index++;
  1483.     }
  1484.     result[index - offset] = EOS;
  1485.     return result;
  1486. }
  1487.  
  1488. ReturnUser(text[], playerid = INVALID_PLAYER_ID)
  1489. {
  1490.     new pos = 0;
  1491.     while (text[pos] < 0x21)
  1492.     {
  1493.         if (text[pos] == 0) return INVALID_PLAYER_ID;
  1494.         pos++;
  1495.     }
  1496.     new userid = INVALID_PLAYER_ID;
  1497.     if (IsNumeric(text[pos]))
  1498.     {
  1499.         userid = strval(text[pos]);
  1500.         if (userid >=0 && userid < MAX_PLAYERS)
  1501.         {
  1502.             if(!IsPlayerConnected(userid))
  1503.             {
  1504.                 userid = INVALID_PLAYER_ID;
  1505.             }
  1506.             else
  1507.             {
  1508.                 return userid;
  1509.             }
  1510.         }
  1511.     }
  1512.     new len = strlen(text[pos]);
  1513.     new count = 0;
  1514.     new name[MAX_PLAYER_NAME];
  1515.     for (new i = 0; i < MAX_PLAYERS; i++)
  1516.     {
  1517.         if (IsPlayerConnected(i))
  1518.         {
  1519.             GetPlayerName(i, name, sizeof (name));
  1520.             if (strcmp(name, text[pos], true, len) == 0)
  1521.             {
  1522.                 if (len == strlen(name))
  1523.                 {
  1524.                     return i;
  1525.                 }
  1526.                 else
  1527.                 {
  1528.                     count++;
  1529.                     userid = i;
  1530.                 }
  1531.             }
  1532.         }
  1533.     }
  1534.     if (count != 1)
  1535.     {
  1536.         if (playerid != INVALID_PLAYER_ID)
  1537.         {
  1538.             if (count)
  1539.             {
  1540.                 SendClientMessage(playerid, 0xFF0000AA, "Multiple users found, please narrow earch");
  1541.             }
  1542.             else
  1543.             {
  1544.                 SendClientMessage(playerid, 0xFF0000AA, "No matching user found");
  1545.             }
  1546.         }
  1547.         userid = INVALID_PLAYER_ID;
  1548.     }
  1549.     return userid;
  1550. }
  1551.  
  1552. IsNumeric(const string[])
  1553. {
  1554.     for (new i = 0, j = strlen(string); i < j; i++)
  1555.     {
  1556.         if (string[i] > '9' || string[i] < '0') return 0;
  1557.     }
  1558.     return 1;
  1559. }
  1560.  
  1561. stock ini_GetKey( line[] )
  1562. {
  1563.     new keyRes[128];
  1564.     keyRes[0] = 0;
  1565.     if ( strfind( line , "=" , true ) == -1 ) return keyRes;
  1566.     strmid( keyRes , line , 0 , strfind( line , "=" , true ) , sizeof( keyRes) );
  1567.     return keyRes;
  1568. }
  1569.  
  1570. stock ini_GetValue( line[] )
  1571. {
  1572.     new valRes[128];
  1573.     valRes[0]=0;
  1574.     if ( strfind( line , "=" , true ) == -1 ) return valRes;
  1575.     strmid( valRes , line , strfind( line , "=" , true )+1 , strlen( line ) , sizeof( valRes ) );
  1576.     return valRes;
  1577. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement