Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Created by GGRoleplay AKA Brandon from the SA:MP forums.
- #include <a_samp>
- #define FILTERSCRIPT
- #define LIGHTRED 0xF77979FF
- #define GREY 0x9C9595FF
- #define DIALOG_BASEADMIN 1
- /*
- #define DIALOG_AKICK 2
- #define DIALOG_ABAN 3
- */
- #define DIALOG_ASTATS 4
- #define DIALOG_ADMIN 5
- #define VERSION 2
- new ChosenPlayerID[MAX_PLAYERS];
- enum PlayerStatistics
- {
- Warnings,
- SecondsConnected,
- MinutesConnected,
- HoursConnected,
- };
- new Player[MAX_PLAYERS][PlayerStatistics];
- new PlayerName[MAX_PLAYER_NAME+1], nameString[24+MAX_PLAYER_NAME+1];
- new APlayerName[MAX_PLAYER_NAME+1];
- public OnFilterScriptInit()
- {
- SetTimer("TTP", 1000, true);
- print("[system][INFO] BaseAdmin is loading");
- printf("[system][INFO] You're currently running v%d", VERSION);
- return 1;
- }
- forward TTP();
- forward KickTimer(playerid);
- forward BanTimer(playerid);
- forward RestartTimer();
- public RestartTimer()
- {
- SendRconCommand("gmx");
- }
- public KickTimer(playerid)
- {
- Kick(ChosenPlayerID[playerid]);
- ChosenPlayerID[playerid] = 0;
- }
- public BanTimer(playerid)
- {
- Ban(ChosenPlayerID[playerid]);
- ChosenPlayerID[playerid] = 0;
- }
- public TTP()
- {
- for(new i=0; i < MAX_PLAYERS; i++)
- {
- if(Player[i][SecondsConnected] < 60)
- {
- Player[i][SecondsConnected] += 1;
- }
- else if(Player[i][SecondsConnected] == 60)
- {
- Player[i][SecondsConnected] = 0;
- Player[i][MinutesConnected] += 1;
- }
- else if(Player[i][MinutesConnected] == 60)
- {
- Player[i][MinutesConnected] = 0;
- Player[i][HoursConnected] += 1;
- }
- }
- }
- public OnFilterScriptExit()
- {
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- Player[playerid][Warnings] = 0;
- }
- main()
- {
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- if(response)
- {
- switch(dialogid)
- {
- case 5:
- {
- switch(listitem)
- {
- case 0:
- {
- ShowPlayerDialog(playerid, 10, DIALOG_STYLE_LIST, "Administrative", "Restart", "Choose", "Cancel");
- }
- case 1:
- {
- ShowPlayerDialog(playerid, 11, DIALOG_STYLE_LIST, "Weaponary", "Minigun\nDesert Eagle\nRocket Launcher\nM4", "Choose", "Cancel");
- }
- case 2:
- {
- ShowPlayerDialog(playerid, 12, DIALOG_STYLE_LIST, "Money", "$10,000\n$25,000\n$50,000", "Choose", "Cancel");
- }
- }
- }
- case 10:
- {
- switch(listitem)
- {
- case 0:
- {
- new string[255];
- GetPlayerName(playerid, PlayerName, sizeof(PlayerName));
- format(string, sizeof(string), "ADMIN %s: The server will restart in 15 seconds.");
- SetTimer("RestartTimer", 15000, false);
- }
- }
- }
- case 11:
- {
- switch(listitem)
- {
- case 0:
- {
- SendClientMessage(playerid, -1, "You've given yourself a {E8253C}Minigun{FFFFFF}.");
- GivePlayerWeapon(playerid, 38, 9999);
- }
- case 1:
- {
- SendClientMessage(playerid, -1, "You've given yourself a {E8253C}Desert Eagle{FFFFFF}.");
- GivePlayerWeapon(playerid, 24, 9999);
- }
- case 2:
- {
- SendClientMessage(playerid, -1, "You've given yourself a {E8253C}Minigun{FFFFFF}.");
- GivePlayerWeapon(playerid, 35, 9999);
- }
- case 3:
- {
- SendClientMessage(playerid, -1, "You've given yourself an {E8253C}M4{FFFFFF}.");
- GivePlayerWeapon(playerid, 31, 9999);
- }
- }
- }
- case 12:
- {
- switch(listitem)
- {
- case 0:
- {
- GivePlayerMoney(playerid, 10000);
- SendClientMessage(playerid, GREY, "You have given yourself $10,000");
- }
- case 1:
- {
- GivePlayerMoney(playerid, 25000);
- SendClientMessage(playerid, GREY, "You have given yourself $25,000");
- }
- case 2:
- {
- GivePlayerMoney(playerid, 50000);
- SendClientMessage(playerid, GREY, "You have given yourself $50,000");
- }
- }
- }
- case 1:
- {
- switch(listitem)
- {
- case 0:
- {
- for(new i=0; i < MAX_PLAYERS; i++)
- {
- GetPlayerName(ChosenPlayerID[playerid], PlayerName, sizeof(PlayerName));
- GetPlayerName(playerid, APlayerName, sizeof(APlayerName));
- format(nameString, sizeof(nameString), "ADMIN %s: has kicked %s off the server.", APlayerName, PlayerName);
- SendClientMessage(i, LIGHTRED, nameString);
- SetTimerEx("KickTimer", 1000, false, "i", playerid);
- }
- }
- case 1:
- {
- for(new i=0; i < MAX_PLAYERS; i++)
- {
- GetPlayerName(ChosenPlayerID[playerid], PlayerName, sizeof(PlayerName));
- GetPlayerName(playerid, APlayerName, sizeof(APlayerName));
- format(nameString, sizeof(nameString), "ADMIN %s: has banned %s off the server.", APlayerName, PlayerName);
- SendClientMessage(i, LIGHTRED, nameString);
- SetTimerEx("KickTimer", 1000, false, "i", playerid);
- }
- }
- case 2:
- {
- new string[255];
- format(string, sizeof(string), "Total time played: %d hours, %d minutes, %d seconds\nMoney: $%d\nScore: %d\nPing: %d", Player[ChosenPlayerID[playerid]][HoursConnected], Player[ChosenPlayerID[playerid]][MinutesConnected], Player[ChosenPlayerID[playerid]][SecondsConnected], GetPlayerMoney(ChosenPlayerID[playerid]), GetPlayerScore(ChosenPlayerID[playerid]), GetPlayerPing(ChosenPlayerID[playerid]));
- ShowPlayerDialog(playerid, DIALOG_ASTATS, DIALOG_STYLE_MSGBOX, "Statistics", string, "Close", "Close");
- }
- case 3:
- {
- if(Player[ChosenPlayerID[playerid]][Warnings] < 2)
- {
- new string[255];
- GetPlayerName(ChosenPlayerID[playerid], PlayerName, sizeof(PlayerName));
- GetPlayerName(playerid, APlayerName, sizeof(APlayerName));
- Player[ChosenPlayerID[playerid]][Warnings] += 1;
- format(string, sizeof(string), "You have warned %s", PlayerName);
- SendClientMessage(ChosenPlayerID[playerid], LIGHTRED, string);
- format(string, sizeof(string), "You have been warned by admin %s", APlayerName);
- SendClientMessage(playerid, LIGHTRED, string);
- ChosenPlayerID[playerid] = 0;
- }
- if(Player[ChosenPlayerID[playerid]][Warnings] == 3)
- {
- new string[255];
- GetPlayerName(ChosenPlayerID[playerid], PlayerName, sizeof(PlayerName));
- GetPlayerName(playerid, APlayerName, sizeof(APlayerName));
- Player[ChosenPlayerID[playerid]][Warnings] += 1;
- format(string, sizeof(string), "You have warned %s, this is their third warn. They'll be kicked.", PlayerName);
- SendClientMessage(ChosenPlayerID[playerid], LIGHTRED, string);
- format(string, sizeof(string), "You have been warned by admin %s, this is your third warn, you'll be kicked.", APlayerName);
- SendClientMessage(playerid, LIGHTRED, string);
- SetTimerEx("KickTimer", 1000, false, "i", playerid);
- }
- }
- }
- }
- }
- }
- return 1;
- }
- public OnPlayerClickPlayer(playerid, clickedplayerid, source)
- {
- if(IsPlayerAdmin(playerid))
- {
- ShowPlayerDialog(playerid, DIALOG_BASEADMIN, DIALOG_STYLE_LIST, "Options", "Kick\nBan\nView statistics\nWarn", "Choose", "Cancel");
- ChosenPlayerID[playerid] = clickedplayerid;
- }
- if(clickedplayerid == playerid)
- {
- ShowPlayerDialog(playerid, DIALOG_ADMIN, DIALOG_STYLE_LIST, "Admin Commands", "Admininstrative\nWeapons\nMoney", "Choose", "Cancel");
- }
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment