TheRudolf

Untitled

Nov 20th, 2011
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. //Includs
  2. #include <a_samp>
  3. #include <dini>
  4. #include <ocmd>
  5. //Dialoge
  6. #define DIALOG_REGISTER 1
  7. #define DIALOG_LOGIN 2
  8. #define DIALOG_WAFFENLIST 3
  9. //Farben
  10. #define ROT 0xCA0000FF
  11. #define GRUN 0x00FF00FF
  12. #define GELB 0xFFFF00FF
  13. #define GRUNHELL 0xB7FF7DFF
  14. #define BLAU 0x0000FFFF
  15. #define ROTDUNKEL 0xC10000FF
  16. #define WEISS 0xFFFFFFFF
  17. //Fraktionsnamen
  18. //Stadtfraks
  19. #define fraktname1 "LSPD"
  20. #define fraktname2 "Army"
  21. #define fraktname3 "FBI"
  22. #define fraktname4 "President"
  23. #define fraktname5 "Bodyguard"
  24. #define fraktname6 "Medic"
  25. #define fraktname7 "Feuerwehr"
  26. #define fraktname8 "Ordnungsamt"
  27. #define fraktname9 "Taxi"
  28. #define fraktname10 "San Andreas Medien AG"
  29. //LSPD
  30. #define lspdspawn 255.4752,66.8106,1003.6406
  31. //Gangs und Mafien
  32. #define fraktname11 "Grove Street"
  33. #define fraktname12 "Front Yard Ballas"
  34. #define fraktname13 "Las Santos Vagos"
  35. #define fraktname14 "La Cosa Nostra"
  36. #define fraktname15 "Yakuza"
  37. #define fraktname16 "Los Aztecas"
  38. #define fraktname17 "Terroristen"
  39. #define fraktname18 "Russische Mafia"
  40. #define fraktname19 "Red Soldiers"
  41. #define fraktname20 "Los Santos Bikerklub"
  42. //Variablen
  43. new waffen_kauf;
  44. new bsnenter;
  45. new tor;
  46. new AMUenter;
  47. new AMUexit;
  48. new LSPDenter;
  49. new LSPDexit;
  50.  
  51. main()
  52. {
  53.     print("\n----------------------------------");
  54.     print(" GermanDayLife");
  55.     print("----------------------------------\n");
  56. }
  57.  
  58. public OnGameModeInit()
  59. {
  60.     DisableInteriorEnterExits();
  61.     //Pickups
  62.     AMUenter=CreatePickup(1318,1,1368.3853,-1279.7742,13.5469);
  63.     AMUexit=CreatePickup(1318,1,316.4271,-169.6953,999.6010);
  64.     waffen_kauf=CreatePickup(1314,2,312.3146,-166.1411,999.6010);
  65.     bsnenter=CreatePickup(1318,1,1199.2341,-918.6306,43.1197);
  66.     LSPDenter=CreatePickup(1318,1,1554.7645,-1675.7560,16.1953);
  67.     LSPDexit=CreatePickup(1218,1,246.7480,62.3232,1003.6406,6);
  68.     //Gamemodename und Spawn
  69.     SetGameModeText("GDL v 0.4");
  70.     AddPlayerClass(0, 1715.2509,-1911.7201,13.5665, 269.1425, 0, 0, 0, 0, 0, 0);
  71.     //Objects
  72.     //Extras
  73.     CreateObject(1359, 1703.5999755859, -1917.1999511719, 13.300000190735, 0, 0, 0);
  74.     CreateObject(1235, 1712.6999511719, -1908.8000488281, 13.10000038147, 0, 0, 0);
  75.     CreateObject(2744, 1711.1999511719, -1890.0999755859, 14.699999809265, 0, 0, 0);
  76.     CreateObject(1775, 1703.0999755859, -1898.4000244141, 13.699999809265, 0, 0, 92);
  77.     CreateObject(1366, 1727.5999755859, -1860.4000244141, 13.199999809265, 0, 0, 0);
  78.     CreateObject(1346, 1734.1999511719, -1860.8000488281, 13.89999961853, 0, 0, 176);
  79.     CreateObject(1319, 1699.9000244141, -1860.8000488281, 13.10000038147, 0, 0, 0);
  80.     CreateObject(1319, 1700.0999755859, -1862.5, 13.10000038147, 0, 0, 0);
  81.     CreateObject(1319, 1700.4000244141, -1864.4000244141, 13.10000038147, 0, 0, 0);
  82.     CreateObject(1319, 1700.5999755859, -1866.5, 13.10000038147, 0, 0, 0);
  83.     CreateObject(1319, 1700.8000488281, -1869, 13.10000038147, 0, 0, 0);
  84.     CreateObject(1257, 1474.6999511719, -1724.5999755859, 13.800000190735, 0, 0, 90);
  85.     CreateObject(3934, 1563.5999755859, -1705, 27.39999961853, 0, 0, 0);
  86.     CreateObject(3934, 1562.9000244141, -1645.0999755859, 27.39999961853, 0, 0, 0);
  87.     CreateObject(1349, 1103.6999511719, -1436.9000244141, 15.39999961853, 0, 0, 0);
  88.     CreateObject(1349, 1103.6999511719, -1435.8000488281, 15.39999961853, 0, 0, 0);
  89.     CreateObject(1349, 1103.6999511719, -1434.5999755859, 15.39999961853, 0, 0, 0);
  90.     CreateObject(1359, 1102.8000488281, -1448.6999511719, 15.5, 0, 0, 0);
  91.     CreateObject(1776, 1102, -1463.4000244141, 15.89999961853, 0, 0, 70);
  92.     CreateObject(1292, 2462.3000488281, -1689.6999511719, 13.10000038147, 0, 0, 188);
  93.     CreateObject(1265, 2458.1999511719, -1683.1999511719, 13, 0, 0, 0);
  94.     CreateObject(1265, 2459.8000488281, -1680.9000244141, 13, 0, 0, 0);
  95.     CreateObject(1220, 2448.6999511719, -1688.4000244141, 12.89999961853, 0, 0, 0);
  96.     CreateObject(1227, 2511.3999023438, -1682.5, 13.39999961853, 0, 0, 220);
  97.     CreateObject(13011, 2525.6999511719, -1669.6999511719, 14.89999961853, 0, 0, 272);
  98.     //LSPD Base
  99.     CreateObject(8674, 1544.9000244141, -1602.4000244141, 17.39999961853, 0, 0, 0);
  100.     CreateObject(8674, 1539.5999755859, -1612.5999755859, 17.39999961853, 0, 0, 90);
  101.     CreateObject(8674, 1539.8000488281, -1607.5, 17.39999961853, 0, 0, 90);
  102.     CreateObject(8674, 1565.4000244141, -1602.4000244141, 17.39999961853, 0, 0, 0);
  103.     CreateObject(8674, 1555.0999755859, -1602.5, 17.39999961853, 0, 0, 0);
  104.     CreateObject(8674, 1575.6999511719, -1602.3000488281, 17.39999961853, 0, 0, 0);
  105.     CreateObject(8674, 1585.8000488281, -1602.4000244141, 17.39999961853, 0, 0, 0);
  106.     CreateObject(8674, 1596, -1602.4000244141, 17.39999961853, 0, 0, 0);
  107.     CreateObject(8674, 1603.1999511719, -1638.0999755859, 17.39999961853, 0, 0, 0);
  108.     CreateObject(8674, 1608.0999755859, -1607.5999755859, 17.39999961853, 0, 0, 90);
  109.     CreateObject(8674, 1608.0999755859, -1617.8000488281, 17.39999961853, 0, 0, 90);
  110.     CreateObject(8674, 1608.0999755859, -1627.8000488281, 17.39999961853, 0, 0, 90);
  111.     CreateObject(8674, 1608.0999755859, -1632.8000488281, 17.39999961853, 0, 0, 90);
  112.     CreateObject(8674, 1602.7998046875, -1602.3994140625, 17.39999961853, 0, 0, 0);
  113.     tor=CreateObject(2990, 1539.4000244141, -1628, 16.299999237061, 0, 0, 270);
  114.     CreateObject(974, 1539.6999511719, -1619.5999755859, 15.300000190735, 0, 0, 90);
  115.     CreateObject(974, 1539.4000244141, -1636.4000244141, 15.300000190735, 0, 0, 90);
  116.     CreateObject(974, 1539.3000488281, -1642.6999511719, 15.300000190735, 0, 0, 90);
  117.     CreateObject(974, 1541.9000244141, -1647.8000488281, 15.800000190735, 0, 0, 144);
  118.     //Fahrzeuge
  119.     //Spawn
  120.     AddStaticVehicle(481,1704.8000488281,-1930.3000488281,13.199999809265,268,1,1);
  121.     AddStaticVehicle(481,1704.8000488281,-1916.6999511719,13.199999809265,268,1,1);
  122.     AddStaticVehicle(481,1704.8000488281,-1931.0999755859,13.199999809265,268,1,1);
  123.     AddStaticVehicle(481,1704.8000488281,-1916,13.199999809265,268,1,1);
  124.     AddStaticVehicle(481,1704.8000488281,-1917.5,13.199999809265,268,1,1);
  125.     AddStaticVehicle(481,1704.8000488281,-1919,13.199999809265,268,1,1);
  126.     AddStaticVehicle(481,1704.8000488281,-1920.3000488281,13.199999809265,268,1,1);
  127.     AddStaticVehicle(481,1704.8000488281,-1921.3000488281,13.199999809265,268,1,1);
  128.     AddStaticVehicle(481,1704.8000488281,-1922.5,13.199999809265,268,1,1);
  129.     AddStaticVehicle(481,1704.8000488281,-1923.8000488281,13.199999809265,268,1,1);
  130.     AddStaticVehicle(481,1704.8000488281,-1925.1999511719,13.199999809265,268,1,1);
  131.     AddStaticVehicle(481,1704.8000488281,-1926.3000488281,13.199999809265,268,1,1);
  132.     AddStaticVehicle(481,1704.8000488281,-1927.3994140625,13.199999809265,268,1,1);
  133.     AddStaticVehicle(481,1704.8000488281,-1928.1999511719,13.199999809265,268,1,1);
  134.     AddStaticVehicle(481,1704.8000488281,-1929.0999755859,13.199999809265,268,1,1);
  135.     //LSPD
  136.     AddStaticVehicle(427,1526.3196,-1647.6541,6.0225,178.9572,0,1); // LSPDCar1
  137.     AddStaticVehicle(427,1530.3049,-1645.7202,6.0221,178.9984,0,1); // LSPDCar2
  138.     AddStaticVehicle(427,1534.5930,-1646.8679,6.0225,179.7012,0,1); // LSPDCar3
  139.     AddStaticVehicle(427,1538.9760,-1645.6367,6.0223,180.9586,0,1); // LSPDCar4
  140.     AddStaticVehicle(523,1558.7963,-1709.1243,5.4631,0.2629,0,0); // LSPDCar5
  141.     AddStaticVehicle(523,1562.4943,-1709.6666,5.4618,1.8270,0,0); // LSPDCar6
  142.     AddStaticVehicle(523,1567.0380,-1709.7822,5.4628,359.5711,0,0); // LSPDCar7
  143.     AddStaticVehicle(523,1570.5226,-1709.5018,5.4630,0.2231,0,0); // LSPDCar8
  144.     AddStaticVehicle(523,1574.4706,-1709.4990,5.4631,2.7739,0,0); // LSPDCar9
  145.     AddStaticVehicle(523,1578.5623,-1708.9825,5.4637,1.0170,0,0); // LSPDCar10
  146.     AddStaticVehicle(523,1583.3236,-1709.2498,5.4627,0.5957,0,0); // LSPDCar11
  147.     AddStaticVehicle(523,1587.3689,-1708.5403,5.4640,1.2149,0,0); // LSPDCar12
  148.     AddStaticVehicle(523,1591.4569,-1709.1667,5.4631,357.1451,0,0); // LSPDCar13
  149.     AddStaticVehicle(523,1595.3225,-1708.8187,5.4630,359.7963,0,0); // LSPDCar14
  150.     AddStaticVehicle(596,1543.7648,-1651.0701,5.6110,89.0582,0,1); // LSPDCar15
  151.     AddStaticVehicle(596,1543.8955,-1655.1593,5.6112,89.9894,0,1); // LSPDCar16
  152.     AddStaticVehicle(596,1544.7544,-1659.1458,5.6127,91.9720,0,1); // LSPDCar17
  153.     AddStaticVehicle(596,1543.8933,-1663.0269,5.6107,91.5590,0,1); // LSPDCar18
  154.     AddStaticVehicle(596,1544.3802,-1668.3225,5.6122,91.5724,0,1); // LSPDCar19
  155.     AddStaticVehicle(596,1545.1771,-1671.8517,5.6110,89.8180,0,1); // LSPDCar20
  156.     AddStaticVehicle(596,1544.4210,-1675.9332,5.6126,91.2491,0,1); // LSPDCar21
  157.     AddStaticVehicle(596,1544.6296,-1680.2563,5.6124,87.6297,0,1); // LSPDCar22
  158.     AddStaticVehicle(596,1544.8156,-1684.1040,5.6122,90.5950,0,1); // LSPDCar23
  159.     AddStaticVehicle(596,1544.7532,-1690.7930,5.6148,89.5658,0,1); // LSPDCar24
  160.     AddStaticVehicle(599,1585.7335,-1671.5511,6.0791,271.4576,0,1); // LSPDCar25
  161.     AddStaticVehicle(599,1585.9315,-1667.5302,6.0767,268.4925,0,1); // LSPDCar26
  162.     AddStaticVehicle(601,1531.0563,-1687.5808,5.6522,272.4738,1,1); // LSPDCar27
  163.     AddStaticVehicle(601,1529.5619,-1683.8572,5.6495,268.0426,1,1); // LSPDCar28
  164.     AddStaticVehicle(497,1566.7086,-1696.3584,28.5723,90.9417,0,1); // LSPDCar29
  165.     AddStaticVehicle(497,1564.5278,-1654.2399,28.5445,88.1333,0,1); // LSPDCar30
  166. }
  167. public OnGameModeExit()
  168. {
  169.     return 1;
  170. }
  171. public OnPlayerRequestClass(playerid, classid)
  172. {
  173.     SetPlayerVirtualWorld(playerid,1+playerid);
  174.     SetPlayerPos(playerid, 1715.2509,-1911.7201,13.5665);
  175.     SetPlayerCameraPos(playerid, 1715.0929,-1910.2992,13.5665);
  176.     SetPlayerCameraLookAt(playerid, 1715.2509,-1911.7201,13.5665);
  177.     return 1;
  178. }
  179.  
  180. public OnPlayerConnect(playerid)
  181. {
  182.     SendClientMessage(playerid,GELB,"Wilkommen auf GDL[GermanDayLife] viel Spaß");
  183.     new Spielerdatei[64];
  184.     new name[MAX_PLAYER_NAME];
  185.     GetPlayerName(playerid,name,sizeof(name));
  186.     format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
  187.     if(dini_Exists(Spielerdatei))
  188.     {
  189.         ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Account gefunden Gib bitte dein Passwort ein","Einlogen","Abbruch");
  190.     }
  191.     else
  192.     {
  193.         ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Register","Gib bitte das gewünschte Passwort ein","Registrieren","Abbruch");
  194.     }
  195.     return 1;
  196. }
  197.  
  198. public OnPlayerDisconnect(playerid, reason)
  199. {
  200.     if(GetPVarInt(playerid,"loggedin")==1)
  201.     {
  202.         SpielerSpeichern(playerid);
  203.     }
  204.     return 1;
  205. }
  206.  
  207. public OnPlayerSpawn(playerid)
  208. {
  209.     switch(GetPVarInt(playerid,"Fraktion"))
  210.     {
  211.         case 0:{SetPlayerPos(playerid);}
  212.         case 1:{SetPlayerInterior(playerid,6);SetPlayerPos(playerid,lspdspawn);SetPlayerSkin(playerid,267);SetPlayerColor(playerid,BLAU);GivePlayerWeapon(playerid,24,200);GivePlayerWeapon(playerid,30,200);GivePlayerWeapon(playerid,41,500);GivePlayerWeapon(playerid,3,1);}
  213.     }
  214.     return 1;
  215. }
  216. public OnPlayerDeath(playerid, killerid, reason)
  217. {
  218.     return 1;
  219. }
  220.  
  221. public OnVehicleSpawn(vehicleid)
  222. {
  223.     return 1;
  224. }
  225.  
  226. public OnVehicleDeath(vehicleid, killerid)
  227. {
  228.     return 1;
  229. }
  230.  
  231. public OnPlayerText(playerid, text[])
  232. {
  233.     return 1;
  234. }
  235.  
  236. public OnPlayerCommandText(playerid, cmdtext[])
  237. {
  238.     if(strcmp("/help",cmdtext,true)==0)
  239.     {
  240.         SendClientMessage(playerid,WEISS,"Account:/stats");
  241.         SendClientMessage(playerid,WEISS,"Algemein:/selbstmord");
  242.         SendClientMessage(playerid,WEISS,"Adminlvl 1:/gotolowrider /gotobsn /gotoamu /gotopd /heal");
  243.         SendClientMessage(playerid,WEISS,"Adminlvl 2:");
  244.         SendClientMessage(playerid,WEISS,"Adminlvl 3:");
  245.         SendClientMessage(playerid,WEISS,"Adminlvl 4:");
  246.         SendClientMessage(playerid,WEISS,"Adminlvl 5:/restart");
  247.     }
  248.     if(strcmp("/gotoLowrider",cmdtext,true)==0)
  249.     {
  250.         if(isPlayerAnAdmin(playerid,1))
  251.         {
  252.             SetPlayerPos(playerid,2129.2546,-1119.9949,25.3736);
  253.             SendClientMessage(playerid,GRUN,"Du hast dich erfolgreich teleportiert.");
  254.             return 1;
  255.         }
  256.         SendClientMessage(playerid,ROT,"Du bist kein Admin!");
  257.     }
  258.     if(strcmp("/gotoBSN", cmdtext, true) == 0)
  259.     {
  260.         if(isPlayerAnAdmin(playerid,1))
  261.         {
  262.             SetPlayerPos(playerid,1200.6033,-923.7955,43.0128);
  263.             SendClientMessage(playerid,GRUN,"Du hast dich erfolgreich teleportiert.");
  264.             return 1;
  265.         }
  266.         SendClientMessage(playerid,ROT,"Du bist kein Admin!");
  267.     }
  268.     if(strcmp("/gotoPD", cmdtext, true) ==0)
  269.     {
  270.         if(isPlayerAnAdmin(playerid,1))
  271.         {
  272.             SetPlayerPos(playerid,1542.1548,-1675.6178,13.5539);
  273.             SendClientMessage(playerid,GRUN, "Du hast dich erfolgreich teleportiert.");
  274.             return 1;
  275.         }
  276.         SendClientMessage(playerid,ROT,"Du bist kein Admin!");
  277.     }
  278.     if(strcmp("/gotoAMU",cmdtext,true)==0)
  279.     {
  280.         if(isPlayerAnAdmin(playerid,1))
  281.         {
  282.             SetPlayerPos(playerid,1364.4803,-1284.7002,13.5469);
  283.             SendClientMessage(playerid,GRUN,"Du hast dich erfolgreich teleportiert.");
  284.             return 1;
  285.         }
  286.         SendClientMessage(playerid,ROT,"Du bist kein Admin!");
  287.     }
  288.     if(strcmp(cmdtext,"/stats",true)==0)
  289.     {
  290.         new string[128];
  291.         new fraktname[64];
  292.         switch(GetPVarInt(playerid,"Fraktion"))
  293.         {
  294.             case 0:{fraktname="Zivilist";}
  295.             case 1:{fraktname=fraktname1;}
  296.             case 2:{fraktname=fraktname2;}
  297.             case 3:{fraktname=fraktname3;}
  298.             case 4:{fraktname=fraktname4;}
  299.             case 5:{fraktname=fraktname5;}
  300.             case 6:{fraktname=fraktname6;}
  301.             case 7:{fraktname=fraktname7;}
  302.             case 8:{fraktname=fraktname8;}
  303.             case 9:{fraktname=fraktname9;}
  304.             case 10:{fraktname=fraktname10;}
  305.             case 11:{fraktname=fraktname11;}
  306.             case 12:{fraktname=fraktname12;}
  307.             case 13:{fraktname=fraktname13;}
  308.             case 14:{fraktname=fraktname14;}
  309.             case 15:{fraktname=fraktname15;}
  310.             case 16:{fraktname=fraktname16;}
  311.             case 17:{fraktname=fraktname17;}
  312.             case 18:{fraktname=fraktname18;}
  313.             case 19:{fraktname=fraktname19;}
  314.             case 20:{fraktname=fraktname20;}
  315.         }
  316.         //Reihe 1
  317.         format(string,sizeof(string),"[Name: %s] [Level: %i] [Adminlevel: %i] [Fraktion: %s]",SpielerName(playerid),GetPlayerScore(playerid),GetPVarInt(playerid,"Adminlevel"),fraktname);
  318.         SendClientMessage(playerid,GRUNHELL,string);
  319.     }
  320.     if(strcmp(cmdtext,"/heal",true)==0)
  321.     {
  322.         if(isPlayerAnAdmin(playerid,1))
  323.         {
  324.             SetPlayerHealth(playerid,100);
  325.             SendClientMessage(playerid,GRUN,"Du hast dich geheilt.");
  326.             return 1;
  327.         }
  328.         SendClientMessage(playerid,ROT,"Du bist kein Admin!");
  329.         return 1;
  330.     }
  331.  
  332.     if(strcmp(cmdtext,"/selbstmord",true)==0)
  333.     {
  334.         SetPlayerHealth(playerid,0);
  335.         return 1;
  336.     }
  337.     if(strcmp(cmdtext,"/restart",true)==0)
  338.     {
  339.         if(isPlayerAnAdmin(playerid,5))
  340.         {
  341.             SendRconCommand("gmx");
  342.             return 1;
  343.         }
  344.         SendClientMessage(playerid,ROT,"Du bist kein Admin!");
  345.         return 1;
  346.     }
  347.     return 1;
  348. }
  349. /*OCMDS*/
  350. ocmd:pd1auf(playerid,params[])
  351. {
  352.     if(isPlayerInFrak(playerid,2))
  353.     {
  354.         if(IsPlayerInRangeOfPoint(playerid,10,1539.4000244141, -1628, 16.299999237061))return SendClientMessage(playerid,ROT,"Du bist nicht in der nähe vom Tor");
  355.         MoveObject(tor,1539.4000244141, -1628, 16.299999237061-10,3);
  356.         return 1;
  357.     }
  358.     SendClientMessage(playerid,ROT,"Du bist nicht berechtigt das zu machen!");
  359.     return 1;
  360. }
  361. ocmd:pd1zu(playerid,params[])
  362. {
  363.     if(isPlayerInFrak(playerid,2))
  364.     {
  365.         if(IsPlayerInRangeOfPoint(playerid,10,1539.4000244141, -1628, 16.299999237061))return SendClientMessage(playerid,ROT,"Du bist nicht in der nähe vom Tor");
  366.         MoveObject(tor,1539.4000244141, -1628, 16.299999237061,3);
  367.         return 1;
  368.     }
  369.     SendClientMessage(playerid,ROT,"Du bist nicht berechtigt das zu machen!");
  370.     return 1;
  371. }
  372. ocmd:makeadmin(playerid,params[])
  373. {
  374.     if(!isPlayerAnAdmin(playerid,5))return SendClientMessage(playerid,ROT,"Du bist kein Admin!");
  375.     new pID, rank;
  376.     if(sscanf(params,"ui",pID,rank))return SendClientMessage(playerid,BLAU,"/makeadmin [ID] [Adminlevel]");
  377.     if(rank<1||rank>5)return SendClientMessage(playerid,ROT,"Bitte gültiges Adminlevel angeben.");
  378.     SetPVarInt(pID,"Adminlevel",rank);
  379.     SpielerSpeichern(pID);
  380.     SendClientMessageToAll(GRUN,".:[Es wurde jemand zum Admin gemacht.]:.");
  381.     return 1;
  382. }
  383.  
  384. ocmd:ban(playerid,params[])
  385. {
  386.     if(!isPlayerAnAdmin(playerid,2))return SendClientMessage(playerid,ROT,"Du bist kein Admin!");
  387.     new pID, reason[128],string[128];
  388.     if(sscanf(params,"us",pID,reason))return SendClientMessage(playerid,BLAU,"/ban [ID oder voller Name] [Grund]");
  389.     format(string,sizeof(string),"AdmCmd: %s wurde von %s gebannt. Grund: %s",SpielerName(pID),SpielerName(playerid),reason);
  390.     SendClientMessageToAll(ROTDUNKEL,string);
  391.     SetPVarInt(pID,"baned",1);
  392.     Kick(pID);
  393.     return 1;
  394. }
  395.  
  396. ocmd:kick(playerid,params[])
  397. {
  398.     if(!isPlayerAnAdmin(playerid,1))return SendClientMessage(playerid,ROT,"Du bist kein Admin!");
  399.     new pID, reason[128],string[128];
  400.     if(sscanf(params,"us",pID,reason))return SendClientMessage(playerid,BLAU,"/kick [ID oder voller Name] [Grund]");
  401.     format(string,sizeof(string),"AdmCmd: %s wurde von %s gekickt. Grund: %s",SpielerName(pID),SpielerName(playerid),reason);
  402.     SendClientMessageToAll(ROTDUNKEL,string);
  403.     Kick(pID);
  404.     return 1;
  405. }
  406.  
  407. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  408. {
  409.     return 1;
  410. }
  411.  
  412. public OnPlayerExitVehicle(playerid, vehicleid)
  413. {
  414.     return 1;
  415. }
  416.  
  417. public OnPlayerStateChange(playerid, newstate, oldstate)
  418. {
  419.     return 1;
  420. }
  421.  
  422. public OnPlayerEnterCheckpoint(playerid)
  423. {
  424.     return 1;
  425. }
  426.  
  427. public OnPlayerLeaveCheckpoint(playerid)
  428. {
  429.     return 1;
  430. }
  431.  
  432. public OnPlayerEnterRaceCheckpoint(playerid)
  433. {
  434.     return 1;
  435. }
  436.  
  437. public OnPlayerLeaveRaceCheckpoint(playerid)
  438. {
  439.     return 1;
  440. }
  441.  
  442. public OnRconCommand(cmd[])
  443. {
  444.     return 1;
  445. }
  446.  
  447. public OnPlayerRequestSpawn(playerid)
  448. {
  449.     return 1;
  450. }
  451.  
  452. public OnObjectMoved(objectid)
  453. {
  454.     return 1;
  455. }
  456.  
  457. public OnPlayerObjectMoved(playerid, objectid)
  458. {
  459.     return 1;
  460. }
  461.  
  462. public OnPlayerPickUpPickup(playerid, pickupid)
  463. {
  464.     if(pickupid==AMUenter)
  465.     {
  466.         SetPlayerPos(playerid,316.524993,-167.706985,999.593750);
  467.         SetPlayerFacingAngle(playerid,84.1296);
  468.         SetPlayerInterior(playerid,6);
  469.         GameTextForPlayer(playerid,"Willkommen im ~n~~y~Ammunation",3000,5);
  470.  
  471.     }
  472.     if(pickupid==AMUexit)
  473.     {
  474.         SetPlayerPos(playerid,1366.1970,-1279.7380,13.5469);
  475.         SetPlayerFacingAngle(playerid,90);
  476.         SetPlayerInterior(playerid,0);
  477.     }
  478.  
  479.  
  480.     if(pickupid==bsnenter)
  481.     {
  482.         SetPlayerPos(playerid,375.962463,-65.816848,1001.507812);
  483.         SetPlayerFacingAngle(playerid,90);
  484.         SetPlayerInterior(playerid,10);
  485.     }
  486.     if(pickupid==waffen_kauf)
  487.     {
  488.         ShowPlayerDialog(playerid,DIALOG_WAFFENLIST,DIALOG_STYLE_LIST,"Was möchtest du kaufen?","Messer\nSchlagring\nSchaufel\nGolfschläger\nDesert Eagle\nSchalldämpferpistole\nMP5\nM4\nAK47","Kaufen","Abbrechen");
  489.     }
  490.  
  491.     if(pickupid==LSPDenter)
  492.     {
  493.     SetPlayerPos(playerid,246.783996,63.900199,1003.640625);
  494.     SetPlayerFacingAngle(playerid,90);
  495.     SetPlayerInterior(playerid,6);
  496.     GameTextForPlayer(playerid,"Willkommen im ~n~~y~LS Police Department",3000,5);
  497.     }
  498.  
  499.     if(pickupid==LSPDexit)
  500.     {
  501.     SetPlayerPos(playerid,255.4752,66.8106,1003.6406);
  502.     SetPlayerFacingAngle(playerid,90);
  503.     SetPlayerInterior(playerid,0);
  504.     GameTextForPlayer(playerid,"Willkommen im ~n~~y~LS Police Department",3000,5);
  505.     }
  506.     return 1;
  507. }
  508.  
  509. public OnVehicleMod(playerid, vehicleid, componentid)
  510. {
  511.     return 1;
  512. }
  513.  
  514. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  515. {
  516.     return 1;
  517. }
  518.  
  519. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  520. {
  521.     return 1;
  522. }
  523.  
  524. public OnPlayerSelectedMenuRow(playerid, row)
  525. {
  526.     return 1;
  527. }
  528.  
  529. public OnPlayerExitedMenu(playerid)
  530. {
  531.     return 1;
  532. }
  533.  
  534. public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
  535. {
  536.     return 1;
  537. }
  538.  
  539. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  540. {
  541.     return 1;
  542. }
  543.  
  544. public OnRconLoginAttempt(ip[], password[], success)
  545. {
  546.     return 1;
  547. }
  548.  
  549. public OnPlayerUpdate(playerid)
  550. {
  551.     return 1;
  552. }
  553.  
  554. public OnPlayerStreamIn(playerid, forplayerid)
  555. {
  556.     return 1;
  557. }
  558.  
  559. public OnPlayerStreamOut(playerid, forplayerid)
  560. {
  561.     return 1;
  562. }
  563.  
  564. public OnVehicleStreamIn(vehicleid, forplayerid)
  565. {
  566.     return 1;
  567. }
  568.  
  569. public OnVehicleStreamOut(vehicleid, forplayerid)
  570. {
  571.     return 1;
  572. }
  573.  
  574. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  575. {
  576.  
  577.     if(dialogid==DIALOG_LOGIN)
  578.     {
  579.         if(response==0)
  580.         {
  581.             SendClientMessage(playerid,ROT,"Du hast den Vorgang abgebrochen /n und wurdest deshalb gekickt");
  582.             Kick(playerid);
  583.             return 1;
  584.         }
  585.         if(response==1)
  586.         {
  587.             if(!strlen(inputtext))
  588.             {
  589.                 SendClientMessage(playerid,ROT,"Das Passwort war nicht lang genug");
  590.                 ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Account gefunden \n Gib bitte dein Passwort ein","Einlogen","Abbruch");
  591.                 return 1;
  592.             }
  593.             else
  594.             {
  595.                 Login(playerid,inputtext);
  596.                 return 1;
  597.             }
  598.         }
  599.     }
  600.     if(dialogid==DIALOG_REGISTER)
  601.     {
  602.         if(response==0)
  603.         {
  604.             SendClientMessage(playerid,ROT,"Du hast den Vorgang abgebrochen /n und wurdest deshalb gekickt");
  605.             Kick(playerid);
  606.             return 1;
  607.         }
  608.         if(response==1)
  609.         {
  610.             if(!strlen(inputtext))
  611.             {
  612.                 SendClientMessage(playerid,ROT,"Das Passwort war nicht lang genug");
  613.                 ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Register","Gib bitte das gewünschte Passwort ein","Registrieren","Abbruch");
  614.                 return 1;
  615.             }
  616.             else
  617.             {
  618.                 Register(playerid,inputtext);
  619.                 return 1;
  620.             }
  621.         }
  622.     }
  623.     if(dialogid==DIALOG_WAFFENLIST)
  624.     {
  625.             if(response==0)
  626.             switch(listitem)
  627.         {
  628.             case 0:
  629.             {
  630.                     GivePlayerWeapon(playerid,4,1);
  631.                     GivePlayerMoney(playerid,-100);
  632.                     SendClientMessage(playerid,BLAU,"Du hast dir ein Messer gekauft (Kosten:100$)");
  633.             }
  634.             case 1:
  635.             {
  636.                     GivePlayerWeapon(playerid,1,1);
  637.                     GivePlayerMoney(playerid,-50);
  638.                     SendClientMessage(playerid,BLAU,"Du hast dir ein Schlagring gekauft (Kosten:50$)");
  639.             }
  640.             case 2:
  641.             {
  642.                     GivePlayerWeapon(playerid,6,1);
  643.                     GivePlayerMoney(playerid,-100);
  644.                     SendClientMessage(playerid,BLAU,"Du hast dir eine Schaufel gekauft (Kosten:100$)");
  645.             }
  646.             case 3:
  647.             {
  648.                     GivePlayerWeapon(playerid,2,1);
  649.                     GivePlayerMoney(playerid,-100);
  650.                     SendClientMessage(playerid,BLAU,"Du hast dir einen Golfschläger gekauft (Kosten:100$)");
  651.             }
  652.             case 4:
  653.             {
  654.                     GivePlayerWeapon(playerid,24,50);
  655.                     GivePlayerMoney(playerid,-250);
  656.                     SendClientMessage(playerid,BLAU,"Du hast dir eine Deagle gekauft (Kosten:250$)");
  657.             }
  658.             case 5:
  659.             {
  660.                     GivePlayerWeapon(playerid,23,100);
  661.                     GivePlayerMoney(playerid,-150);
  662.                     SendClientMessage(playerid,BLAU,"Du hast dir eine SchalldämpferPistole gekauft (Kosten:250$)");
  663.             }
  664.             case 6:
  665.             {
  666.                     GivePlayerWeapon(playerid,29,300);
  667.                     GivePlayerMoney(playerid,-350);
  668.                     SendClientMessage(playerid,BLAU,"Du hast dir eine MP5 gekauft(Kosten:350$)");
  669.             }
  670.             case 7:
  671.             {
  672.                     GivePlayerWeapon(playerid,31,250);
  673.                     GivePlayerMoney(playerid,-550);
  674.                     SendClientMessage(playerid,BLAU,"Du hast dir eine M4 gekauft(Kosten:550$)");
  675.             }
  676.             case 8:
  677.             {
  678.                     GivePlayerWeapon(playerid,30,260);
  679.                     GivePlayerMoney(playerid,-550);
  680.                     SendClientMessage(playerid,BLAU,"Du hast dir eine AK47 gekauft(Kosten:550$) ");
  681.             }
  682.         }
  683.     }
  684.     return 1;
  685. }
  686.  
  687. stock SpielerName(playerid)
  688. {
  689.     new name[MAX_PLAYER_NAME];
  690.     GetPlayerName(playerid,name,sizeof(name));
  691.     return name;
  692. }
  693.  
  694. stock Register(playerid,key[])
  695. {
  696.     new Spielerdatei[64];
  697.     new name[MAX_PLAYER_NAME];
  698.     GetPlayerName(playerid,name,sizeof(name));
  699.     format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
  700.     dini_Create(Spielerdatei);
  701.     dini_Set(Spielerdatei,"Passwort",key);
  702.     SendClientMessage(playerid,GRUN,"Erfolgreich registriert");
  703.     SetPlayerScore(playerid,0);
  704.     SetPVarInt(playerid,"loggedin",1);
  705.     return 1;
  706. }
  707.  
  708. stock Login(playerid,key[])
  709. {
  710.     new Spielerdatei[64];
  711.     new name[MAX_PLAYER_NAME];
  712.     GetPlayerName(playerid,name,sizeof(name));
  713.     format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
  714.     if(!strcmp(key,dini_Get(Spielerdatei,"Passwort"),false))
  715.     {
  716.         LoadAccount(playerid);
  717.         SendClientMessage(playerid,GRUN,"Erfolgreich eingeloggt.");
  718.         return 1;
  719.     }
  720.     else
  721.     {
  722.         SendClientMessage(playerid,ROT,"Falsches Passwort.");
  723.         ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Dein Account wurde gefunden. Gib bitte das Passwort ein.","Login","Abbrechen");
  724.         return 1;
  725.     }
  726. }
  727.  
  728. stock LoadAccount(playerid)
  729. {
  730.     new Spielerdatei[64];
  731.     new name[MAX_PLAYER_NAME];
  732.     GetPlayerName(playerid,name,sizeof(name));
  733.     format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
  734.     SetPlayerScore(playerid,dini_Int(Spielerdatei,"Level"));
  735.     GivePlayerMoney(playerid,dini_Int(Spielerdatei,"Geld"));
  736.     SetPVarInt(playerid,"Adminlevel",dini_Int(Spielerdatei,"Adminlevel"));
  737.     SetPVarInt(playerid,"Fraktion",dini_Int(Spielerdatei,"Fraktion"));
  738.     SetPVarInt(playerid,"baned",dini_Int(Spielerdatei,"baned"));
  739.     SetPVarInt(playerid,"loggedin",1);
  740.     //SpielerInfo[playerid][Adminlevel]=dini_Int(Spielerdatei,"Adminlevel");
  741.     //SpielerInfo[playerid][Fraktion]=dini_Int(Spielerdatei,"Fraktion");
  742.     if(GetPVarInt(playerid,"baned")==1)
  743.     {
  744.         SendClientMessage(playerid,ROT,"Du bist vom Server gebannt! :p");
  745.         Kick(playerid);
  746.     }
  747.     return 1;
  748. }
  749.  
  750. stock SpielerSpeichern(playerid)
  751. {
  752.     if(GetPVarInt(playerid,"loggedin")==1)
  753.     {
  754.         new Spielerdatei[64];
  755.         new name[MAX_PLAYER_NAME];
  756.         GetPlayerName(playerid,name,sizeof(name));
  757.         format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
  758.         dini_IntSet(Spielerdatei,"Level",GetPlayerScore(playerid));
  759.         dini_IntSet(Spielerdatei,"Geld",GetPlayerMoney(playerid));
  760.         dini_IntSet(Spielerdatei,"Adminlevel",GetPVarInt(playerid,"Adminlevel"));
  761.         dini_IntSet(Spielerdatei,"Fraktion",GetPVarInt(playerid,"Fraktion"));
  762.         dini_IntSet(Spielerdatei,"baned",GetPVarInt(playerid,"baned"));
  763.     }
  764.     return 1;
  765. }
  766.  
  767. stock isPlayerAnAdmin(playerid,rang)
  768. {
  769.     if(GetPVarInt(playerid,"Adminlevel")>=rang)return 1;
  770.     return 0;
  771.  
  772. }
  773.  
  774. stock isPlayerInFrak(playerid,fraktid)
  775. {
  776.     if(GetPVarInt(playerid,"fraktion")==fraktid)return 1;
  777.     return 0;
  778. }
  779.  
  780. stock sscanf(sstring[], format[], {Float,_}:...)
  781. {
  782.     #if defined isnull
  783.         if (isnull(sstring))
  784.     #else
  785.         if (sstring[0] == 0 || (sstring[0] == 1 && sstring[1] == 0))
  786.     #endif
  787.         {
  788.             return format[0];
  789.         }
  790.     #pragma tabsize 4
  791.     new
  792.         formatPos = 0,
  793.         sstringPos = 0,
  794.         paramPos = 2,
  795.         paramCount = numargs(),
  796.         delim = ' ';
  797.     while (sstring[sstringPos] && sstring[sstringPos] <= ' ')
  798.     {
  799.         sstringPos++;
  800.     }
  801.     while (paramPos < paramCount && sstring[sstringPos])
  802.     {
  803.         switch (format[formatPos++])
  804.         {
  805.             case '\0':
  806.             {
  807.                 return 0;
  808.             }
  809.             case 'i', 'd':
  810.             {
  811.                 new
  812.                     neg = 1,
  813.                     num = 0,
  814.                     ch = sstring[sstringPos];
  815.                 if (ch == '-')
  816.                 {
  817.                     neg = -1;
  818.                     ch = sstring[++sstringPos];
  819.                 }
  820.                 do
  821.                 {
  822.                     sstringPos++;
  823.                     if ('0' <= ch <= '9')
  824.                     {
  825.                         num = (num * 10) + (ch - '0');
  826.                     }
  827.                     else
  828.                     {
  829.                         return -1;
  830.                     }
  831.                 }
  832.                 while ((ch = sstring[sstringPos]) > ' ' && ch != delim);
  833.                 setarg(paramPos, 0, num * neg);
  834.             }
  835.             case 'h', 'x':
  836.             {
  837.                 new
  838.                     num = 0,
  839.                     ch = sstring[sstringPos];
  840.                 do
  841.                 {
  842.                     sstringPos++;
  843.                     switch (ch)
  844.                     {
  845.                         case 'x', 'X':
  846.                         {
  847.                             num = 0;
  848.                             continue;
  849.                         }
  850.                         case '0' .. '9':
  851.                         {
  852.                             num = (num << 4) | (ch - '0');
  853.                         }
  854.                         case 'a' .. 'f':
  855.                         {
  856.                             num = (num << 4) | (ch - ('a' - 10));
  857.                         }
  858.                         case 'A' .. 'F':
  859.                         {
  860.                             num = (num << 4) | (ch - ('A' - 10));
  861.                         }
  862.                         default:
  863.                         {
  864.                             return -1;
  865.                         }
  866.                     }
  867.                 }
  868.                 while ((ch = sstring[sstringPos]) > ' ' && ch != delim);
  869.                 setarg(paramPos, 0, num);
  870.             }
  871.             case 'c':
  872.             {
  873.                 setarg(paramPos, 0, sstring[sstringPos++]);
  874.             }
  875.             case 'f':
  876.             {
  877.  
  878.                 new changestr[16], changepos = 0, strpos = sstringPos;
  879.                 while(changepos < 16 && sstring[strpos] && sstring[strpos] != delim)
  880.                 {
  881.                     changestr[changepos++] = sstring[strpos++];
  882.                     }
  883.                 changestr[changepos] = '\0';
  884.                 setarg(paramPos,0,_:floatstr(changestr));
  885.             }
  886.             case 'p':
  887.             {
  888.                 delim = format[formatPos++];
  889.                 continue;
  890.             }
  891.             case '\'':
  892.             {
  893.                 new
  894.                     end = formatPos - 1,
  895.                     ch;
  896.                 while ((ch = format[++end]) && ch != '\'') {}
  897.                 if (!ch)
  898.                 {
  899.                     return -1;
  900.                 }
  901.                 format[end] = '\0';
  902.                 if ((ch = strfind(sstring, format[formatPos], false, sstringPos)) == -1)
  903.                 {
  904.                     if (format[end + 1])
  905.                     {
  906.                         return -1;
  907.                     }
  908.                     return 0;
  909.                 }
  910.                 format[end] = '\'';
  911.                 sstringPos = ch + (end - formatPos);
  912.                 formatPos = end + 1;
  913.             }
  914.             case 'u':
  915.             {
  916.                 new
  917.                     end = sstringPos - 1,
  918.                     id = 0,
  919.                     bool:num = true,
  920.                     ch;
  921.                 while ((ch = sstring[++end]) && ch != delim)
  922.                 {
  923.                     if (num)
  924.                     {
  925.                         if ('0' <= ch <= '9')
  926.                         {
  927.                             id = (id * 10) + (ch - '0');
  928.                         }
  929.                         else
  930.                         {
  931.                             num = false;
  932.                         }
  933.                     }
  934.                 }
  935.                 if (num && IsPlayerConnected(id))
  936.                 {
  937.                     setarg(paramPos, 0, id);
  938.                 }
  939.                 else
  940.                 {
  941.                     #if !defined foreach
  942.                         #define foreach(%1,%2) for (new %2 = 0; %2 < MAX_PLAYERS; %2++) if (IsPlayerConnected(%2))
  943.                         #define __SSCANF_FOREACH__
  944.                     #endif
  945.                     sstring[end] = '\0';
  946.                     num = false;
  947.                     new
  948.                         name[MAX_PLAYER_NAME];
  949.                     id = end - sstringPos;
  950.                     foreach (Player, playerid)
  951.                     {
  952.                         GetPlayerName(playerid, name, sizeof (name));
  953.                         if (!strcmp(name, sstring[sstringPos], true, id))
  954.                         {
  955.                             setarg(paramPos, 0, playerid);
  956.                             num = true;
  957.                             break;
  958.                         }
  959.                     }
  960.                     if (!num)
  961.                     {
  962.                         setarg(paramPos, 0, INVALID_PLAYER_ID);
  963.                     }
  964.                     sstring[end] = ch;
  965.                     #if defined __SSCANF_FOREACH__
  966.                         #undef foreach
  967.                         #undef __SSCANF_FOREACH__
  968.                     #endif
  969.                 }
  970.                 sstringPos = end;
  971.             }
  972.             case 's', 'z':
  973.             {
  974.                 new
  975.                     i = 0,
  976.                     ch;
  977.                 if (format[formatPos])
  978.                 {
  979.                     while ((ch = sstring[sstringPos++]) && ch != delim)
  980.                     {
  981.                         setarg(paramPos, i++, ch);
  982.                     }
  983.                     if (!i)
  984.                     {
  985.                         return -1;
  986.                     }
  987.                 }
  988.                 else
  989.                 {
  990.                     while ((ch = sstring[sstringPos++]))
  991.                     {
  992.                         setarg(paramPos, i++, ch);
  993.                     }
  994.                 }
  995.                 sstringPos--;
  996.                 setarg(paramPos, i, '\0');
  997.             }
  998.             default:
  999.             {
  1000.                 continue;
  1001.             }
  1002.         }
  1003.         while (sstring[sstringPos] && sstring[sstringPos] != delim && sstring[sstringPos] > ' ')
  1004.         {
  1005.             sstringPos++;
  1006.         }
  1007.         while (sstring[sstringPos] && (sstring[sstringPos] == delim || sstring[sstringPos] <= ' '))
  1008.         {
  1009.             sstringPos++;
  1010.         }
  1011.         paramPos++;
  1012.     }
  1013.     do
  1014.     {
  1015.         if ((delim = format[formatPos++]) > ' ')
  1016.         {
  1017.             if (delim == '\'')
  1018.             {
  1019.                 while ((delim = format[formatPos++]) && delim != '\'') {}
  1020.             }
  1021.             else if (delim != 'z')
  1022.             {
  1023.                 return delim;
  1024.             }
  1025.         }
  1026.     }
  1027.     while (delim > ' ');
  1028.     return 0;
  1029. }
  1030.  
Advertisement
Add Comment
Please, Sign In to add comment