Advertisement
TheRudolf

Untitled

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