Advertisement
Logan_Adams

Easy-To-Handle Adminsystem by Logan Adams aka. McBastard112

May 25th, 2012
288
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 9.51 KB | None | 0 0
  1. /**** EASY-TO-HANDLE Adminsystem ****/
  2. /**** created & written by Logan Adams at 25th/26th May 2012 ****/
  3. /**** Version 1.0 ****/
  4. /**** For SAMP 0.3X Version ****/
  5. /*********************** *************/
  6.  
  7.  
  8. /**** Includes ****/
  9. #include <a_samp>
  10. #include <ocmd>
  11. /**** ************/
  12.  
  13. /**** Farben/colors ****/
  14. #define ROT 0xF50000FF
  15. #define BLAU 0x1400FFFF
  16. #define GELB 0xFFFF00FF
  17. #define GRÜN 0x19FF00FF
  18. #define TÜRKIS 0x00FFFFFF
  19. #define SCHWARZ 0x000000FF
  20. #define WEISS 0xFEFEFEFF
  21. #define GOLD 0xFFC800FF
  22. #define PINK 0xFF0055FF
  23. #define LILA 0xC800FFFF
  24. #define GRAU 0xAAAAAAFF
  25. /********** *******/
  26.  
  27. /**** Variablen ****/
  28. new targetid[MAX_PLAYERS];
  29. /**** Timer Forwars **************/
  30.  
  31. forward Restarttimer();
  32. forward Shuttimer();
  33.  
  34. /**** Dialog ID's ****/
  35. #define fs_CONTROL 100
  36. #define fs_PLAYER 101
  37. #define fs_CONTROL_HOST 102
  38. #define fs_CONTROL_MODE 103
  39. #define fs_CONTROL_MAP 104
  40. #define fs_PLAYER_KICK 105
  41. #define fs_PLAYER_BAN 106
  42. /**** *****************/
  43.  
  44. public OnFilterScriptInit()
  45. {
  46.     print("\n--------------------------------------");
  47.     print(" Easy to handle Admin System successfully loaded.");
  48.     print(" Version 1.0");
  49.     print(" by Logan Adams aka. McBastard112");
  50.     print(" For SAMP 0.3");
  51.     print("--------------------------------------\n");
  52.     return 1;
  53. }
  54.  
  55. public OnFilterScriptExit()
  56. {
  57.     print("\n--------------------------------------");
  58.     print(" Easy to handle Admin System successfully unloaded.");
  59.     print(" Version 1.0");
  60.     print(" by Logan Adams aka. McBastard112");
  61.     print(" For SAMP 0.3");
  62.     print("--------------------------------------\n");
  63.     return 1;
  64. }
  65.  
  66. public OnPlayerSpawn(playerid)
  67. {
  68.     return 1;
  69. }
  70.  
  71. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  72. {
  73.     switch(dialogid)
  74.     {
  75.         case fs_CONTROL:
  76.         {
  77.             switch(listitem)
  78.             {
  79.                 case 0:
  80.                 {
  81.                     ShowPlayerDialog(playerid,fs_CONTROL_HOST,DIALOG_STYLE_INPUT,"Change Hostname","Insert new Hostname below ...","OK","Quit");
  82.                     return 1;
  83.                 }
  84.                 case 1:
  85.                 {
  86.                     ShowPlayerDialog(playerid,fs_CONTROL_MODE,DIALOG_STYLE_INPUT,"Change Mode","Insert new Mode below ...","OK","Quit");
  87.                     return 1;
  88.                 }
  89.                 case 2:
  90.                 {
  91.                     ShowPlayerDialog(playerid,fs_CONTROL_MAP,DIALOG_STYLE_INPUT,"Change Mapname","Insert new Mapname below ...","OK","Quit");
  92.                     return 1;
  93.                 }
  94.                 case 3:
  95.                 {
  96.                     GameTextForAll("The Server will be restarted in 10 seconds",10000,4);
  97.                     SetTimer("Restarttimer",10000,false);
  98.                     return 1;
  99.                 }
  100.                 case 4:
  101.                 {  
  102.                     GameTextForAll("The Server will be shutten down in 10 seconds",10000,4);
  103.                     SetTimer("Shuttimer",10000,false);
  104.                     return 1;
  105.                 }
  106.             }
  107.         }
  108.         case fs_CONTROL_HOST:
  109.         {
  110.             new str[128],str2[128];
  111.             format(str,sizeof str,"hostname %s",inputtext);
  112.             format(str2,sizeof str2,"Admin %s has changed the hostname to %s",PlayerName(playerid),inputtext);
  113.             SendRconCommand(str);
  114.             SendClientMessageToAll(GRÜN,str2);
  115.             return 1;
  116.         }
  117.         case fs_CONTROL_MODE:
  118.         {
  119.             new str[128];
  120.             format(str,sizeof str,"Admin %s has changed the GameModeMode to %s",PlayerName(playerid),inputtext);
  121.             SetGameModeText(inputtext);
  122.             SendClientMessageToAll(GRÜN,str);
  123.             return 1;
  124.         }
  125.         case fs_CONTROL_MAP:
  126.         {
  127.             new str[128],str2[128];
  128.             format(str,sizeof str,"mapname %s",inputtext);
  129.             format(str2,sizeof str2,"Admin %s has changed the Mapname to %s",PlayerName(playerid),inputtext);
  130.             SendRconCommand(str);
  131.             SendClientMessageToAll(GRÜN,str2);
  132.             return 1;
  133.         }      
  134.         case fs_PLAYER_KICK:
  135.         {
  136.             new str[128];
  137.             format(str,sizeof str,"[AdmCmd] %s has been kicked by %s. Reason: %s",PlayerName(targetid[playerid]),PlayerName(playerid),inputtext);
  138.             SendClientMessageToAll(ROT,str);
  139.             Kick(targetid[playerid]);
  140.         }
  141.         case fs_PLAYER:
  142.         {
  143.             switch(listitem)
  144.             {
  145.                 case 0:
  146.                 {
  147.                     new string1[128],string2[128];
  148.                     SetPlayerArmour(targetid[playerid], 100);
  149.                     format(string1, sizeof(string1), "[AdmCmd] Admin %s has given you a protective vest", PlayerName(playerid));
  150.                     format(string2, sizeof(string2), "[AdmCmd] You have given %s a protective  vest",PlayerName(targetid[playerid]));
  151.                     SendClientMessage(playerid, GRÜN, string2);
  152.                     SendClientMessage(targetid[playerid], GRÜN, string1);
  153.                 }
  154.                 case 1:
  155.                 {
  156.                     new string1[128],string2[128];
  157.                     SetPlayerArmour(targetid[playerid], 0);
  158.                     format(string1, sizeof(string1), "[AdmCmd] Admin %s has deleted your protective vest", PlayerName(playerid));
  159.                     format(string2, sizeof(string2), "[AdmCmd] You have deleted %s's protective vest",PlayerName(targetid[playerid]));
  160.                     SendClientMessage(playerid, GRÜN, string2);
  161.                     SendClientMessage(targetid[playerid], GRÜN, string1);
  162.                 }
  163.                 case 2:
  164.                 {
  165.                     new string1[128],string2[128];
  166.                     SetPlayerHealth(targetid[playerid], 100);
  167.                     format(string1, sizeof(string1), "[AdmCmd] Admin %s has given you Full HP", PlayerName(playerid));
  168.                     format(string2, sizeof(string2), "[AdmCmd] You have given %s Full HP",PlayerName(targetid[playerid]));
  169.                     SendClientMessage(playerid, GRÜN, string2);
  170.                     SendClientMessage(targetid[playerid], GRÜN, string1);
  171.                 }
  172.                 case 3:
  173.                 {
  174.                     new string1[128],string2[128];
  175.                     SetPlayerHealth(targetid[playerid], 0);
  176.                     format(string1, sizeof(string1), "[AdmCmd] Admin %s has killed you", PlayerName(playerid));
  177.                     format(string2, sizeof(string2), "[AdmCmd] You have killed %s",PlayerName(targetid[playerid]));
  178.                     SendClientMessage(playerid, GRÜN, string2);
  179.                     SendClientMessage(targetid[playerid], GRÜN, string1);
  180.                 }
  181.                 case 4:
  182.                 {
  183.                     new str[128];
  184.                     format(str,sizeof str,"[AdmCmd] You are now spectating %s",PlayerName(targetid[playerid]));
  185.                     PlayerSpectatePlayer(playerid, targetid[playerid]);
  186.                     TogglePlayerSpectating(playerid, 1);
  187.                     SendClientMessage(playerid,GRÜN,str);
  188.                 }
  189.                 case 5:
  190.                 {
  191.                     TogglePlayerSpectating(playerid, 0);
  192.                     SetPlayerInterior(playerid, 0);
  193.                     SpawnPlayer(playerid);
  194.                     SetCameraBehindPlayer(playerid);
  195.                     SendClientMessage(playerid,GRÜN,"Spectating stopped");
  196.                 }
  197.                 case 6:
  198.                 {
  199.                     new str[128],str2[128];
  200.                     format(str,sizeof str,"[AdmCmd] You have ported yourself to %s",PlayerName(targetid[playerid]));
  201.                     format(str2,sizeof str2,"[AdmCmd] Admin %s has ported himself to you",PlayerName(playerid));
  202.                     SendClientMessage(playerid,GRÜN,str);
  203.                     SendClientMessage(targetid[playerid],GRÜN,str2);
  204.                     new Float:X,Float:Y,Float:Z;
  205.                     GetPlayerPos(targetid[playerid],X,Y,Z);
  206.                     SetPlayerPos(playerid,X,Y+2,Z);
  207.                     SetPlayerInterior(playerid,GetPlayerInterior(targetid[playerid]));
  208.                 }
  209.                 case 7:
  210.                 {
  211.                     new str[128],str2[128];
  212.                     format(str,sizeof str,"[AdmCmd] You have ported %s to yourself",PlayerName(targetid[playerid]));
  213.                     format(str2,sizeof str2,"[AdmCmd] Admin %s has ported you to himself",PlayerName(playerid));
  214.                     new Float:X,Float:Y,Float:Z;
  215.                     GetPlayerPos(playerid,X,Y,Z);
  216.                     SetPlayerPos(targetid[playerid],X,Y+2,Z);
  217.                     SetPlayerInterior(targetid[playerid],GetPlayerInterior(playerid));
  218.                     SendClientMessage(playerid,GRÜN,str);
  219.                     SendClientMessage(playerid,GRÜN,str2);
  220.                 }
  221.                 case 8:
  222.                 {
  223.                     new str[128],str2[128];
  224.                     format(str,sizeof str,"[AdmCmd] You have slapped %s",PlayerName(targetid[playerid]));
  225.                     format(str2,sizeof str2,"[AdmCmd] Admin %s has slapped you",PlayerName(playerid));
  226.                     new Float:X,Float:Y,Float:Z;
  227.                     GetPlayerPos(targetid[playerid],X,Y,Z);
  228.                     SetPlayerPos(targetid[playerid],X,Y,Z+10);
  229.                     SendClientMessage(playerid,GRÜN,str);
  230.                     SendClientMessage(playerid,GRÜN,str2);
  231.                 }
  232.                 case 9:
  233.                 {
  234.                     ShowPlayerDialog(playerid,fs_PLAYER_KICK,DIALOG_STYLE_INPUT,"Kick Player","Insert the reason for kicking the Player below ...","OK","");
  235.                 }
  236.                 case 10:
  237.                 {
  238.                     ShowPlayerDialog(playerid,fs_PLAYER_BAN,DIALOG_STYLE_INPUT,"Ban Player","Insert the reason for banning the Player below ...","OK","");
  239.                 }
  240.             }
  241.         }
  242.     }  
  243.     return 0;
  244. }
  245.  
  246. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  247. {
  248.     new str[128],str2[320];
  249.     if(IsPlayerAdmin(playerid))
  250.     {
  251.         targetid[playerid] = clickedplayerid;
  252.         format(str,sizeof str,"What do U wanna do with %s ?",PlayerName(clickedplayerid));
  253.         format(str2,sizeof str2,"Give Armour\nDelete Armour\nHeal Player\nKill Player\nSpectate Player\nSpec off\nGoto Player\nGethere Player\nSlap Player\nKick Player\nBan Player");
  254.         ShowPlayerDialog(playerid,fs_PLAYER,DIALOG_STYLE_LIST,str,str2,"OK","");
  255.     }  
  256.     else
  257.     {
  258.         SendClientMessage(playerid,ROT,"You have to be logged in as RCON-Admin, to manage this player!");
  259.     }  
  260.     return 1;
  261. }
  262.  
  263. /**** OCMD Commands ****/
  264. ocmd:controlpanel(playerid,params[])
  265. {
  266.     #pragma unused params
  267.     if(IsPlayerAdmin(playerid))
  268.         ShowPlayerDialog(playerid,fs_CONTROL,DIALOG_STYLE_LIST,"Server Control Panel","Change Hostname\nChange Gamemodemode\nChange Mapname\nRestart Server\nShut Server down","OK","Quit");
  269.     return 1;
  270. }
  271. /**** ******************/
  272.  
  273. /**** Stock to get one's Player Name ****/
  274. stock PlayerName(playerid)
  275. {
  276.         new GetName[MAX_PLAYER_NAME];
  277.         GetPlayerName(playerid,GetName,sizeof(GetName));
  278.         return GetName;
  279. }
  280.  
  281. /**** ************************************/
  282.  
  283. public Restarttimer()
  284. {
  285.     SendRconCommand("gmx");
  286.     return 1;
  287. }
  288.  
  289. public Shuttimer()
  290. {
  291.     SendRconCommand("exit");
  292. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement