0% found this document useful (0 votes)
12 views6 pages

TabAdmin v2

Uploaded by

hakernayan12
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
12 views6 pages

TabAdmin v2

Uploaded by

hakernayan12
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 6

// 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;
}

You might also like