Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <a_samp>
- #define SPEC_TYPE_NONE 0
- #define SPEC_TYPE_PLAYER 1
- #define SPEC_TYPE_VEHICLE 2
- #define COLOR_RED 0xAA3333AA
- #define COLOR_WHITE 0xFFFFFFAA
- #define COLOR_BLUE 0x33AAFFAA
- enum pInfo
- {
- Muted,
- Jailed,
- SpecID[MAX_PLAYERS],
- SpecType[MAX_PLAYERS],
- Freeze,
- Zhertva,
- }
- new Player[MAX_PLAYERS][pInfo];
- public OnFilterScriptInit()
- {
- print("\n ======-_-===== Russian Federation, Tatarstan Respublika, Chelny City");
- print(" Simple RCON-Admin FilterScript");
- print(" by GhostTT (ICQ: 434-895-342)\n");
- return 1;
- }
- public OnPlayerDisconnect(playerid,reason)
- {
- Player[playerid][Muted] = 0;
- Player[playerid][Jailed] = 0;
- Player[playerid][SpecID] = 0;
- Player[playerid][SpecType] = 0;
- Player[playerid][Freeze] = 0;
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- if(dialogid == 1)
- {
- if(response)
- {
- new zherid = Player[playerid][Zhertva];
- new Float:X,Float:Y,Float:Z,pname[40],gname[40],string[256];
- GetPlayerName(playerid,pname,sizeof(pname));
- GetPlayerName(zherid,gname,sizeof(gname));
- if(listitem == 0)
- {
- GetPlayerPos(zherid,X,Y,Z);
- CreateExplosion(X,Y,Z,10,0);
- CreateExplosion(X,Y,Z,10,0);
- CreateExplosion(X,Y,Z,10,0);
- format(string,sizeof(string),"* Administrator %s killed %s",pname,playerid,gname,zherid);
- SendClientMessageToAll(COLOR_BLUE,string);
- }
- if(listitem == 1)
- {
- if(Player[zherid][Muted] == 0)
- {
- Player[zherid][Muted] = 1;
- format(string,sizeof(string),"* %s has been wired by Administrator",gname,pname);
- SendClientMessageToAll(COLOR_BLUE,string);
- }
- else
- {
- Player[zherid][Muted] = 0;
- format(string,sizeof(string),"* %s has been unwired by Administrator %s",gname,pname);
- SendClientMessageToAll(COLOR_BLUE,string);
- }
- }
- if(listitem == 2)
- {
- format(string,sizeof(string),"* %s has been Kicked from the game by Administrator %s",gname,pname);
- SendClientMessageToAll(COLOR_BLUE,string);
- Kick(zherid);
- }
- if(listitem == 3)
- {
- format(string,sizeof(string),"* %s has been Banned by Administrator %s",gname,pname);
- SendClientMessageToAll(COLOR_BLUE,string);
- Ban(zherid);
- }
- if(listitem == 4)
- {
- if(playerid != zherid)
- {
- GetPlayerPos(zherid,X,Y,Z);
- if(IsPlayerInAnyVehicle(playerid))
- {
- SetVehiclePos(GetPlayerVehicleID(playerid),X+1,Y,Z);
- }
- else
- {
- SetPlayerPos(playerid,X+1,Y,Z);
- }
- SetPlayerInterior(playerid,GetPlayerInterior(zherid));
- format(string,sizeof(string),"* You have teleported to %s",gname);
- SendClientMessage(playerid,COLOR_BLUE,string);
- format(string,sizeof(string),"* Admin %s has teleported to your location",pname);
- SendClientMessage(zherid,COLOR_BLUE,string);
- }
- else
- {
- SendClientMessage(playerid,COLOR_RED,"You can't teleport");
- }
- }
- if(listitem == 5)
- {
- if(playerid != zherid)
- {
- GetPlayerPos(playerid,X,Y,Z);
- if(IsPlayerInAnyVehicle(zherid))
- {
- SetVehiclePos(GetPlayerVehicleID(zherid),X+1,Y,Z);
- }
- else
- {
- SetPlayerPos(zherid,X+1,Y,Z);
- }
- SetPlayerInterior(zherid,GetPlayerInterior(playerid));
- format(string,sizeof(string),"* You have teleported %s to your location",gname);
- SendClientMessage(playerid,COLOR_BLUE,string);
- format(string,sizeof(string),"* You have been teleported to %s's location",pname);
- SendClientMessage(zherid,COLOR_BLUE,string);
- }
- else
- {
- SendClientMessage(playerid,COLOR_RED,"You can't teleport");
- }
- }
- if(listitem == 6)
- {
- if(playerid != zherid)
- {
- if(Player[zherid][Jailed] == 0)
- {
- Player[zherid][Jailed] = 1;
- SetPlayerInterior(zherid,3);
- SetPlayerPos(zherid,197.6661,173.8179,1003.0234);
- format(string,sizeof(string),"* Administrator %s has jailed %s",pname,gname);
- SendClientMessageToAll(COLOR_BLUE,string);
- }
- else
- {
- Player[zherid][Jailed] = 0;
- SetPlayerInterior(zherid,0);
- SpawnPlayer(zherid);
- format(string,sizeof(string),"* Administrator %s has unjailed %s",pname,gname);
- SendClientMessageToAll(COLOR_BLUE,string);
- }
- }
- else
- {
- SendClientMessage(playerid,COLOR_RED,"You can't jail");
- }
- }
- if(listitem == 7)
- {
- if(playerid != zherid)
- {
- TogglePlayerSpectating(playerid,1);
- PlayerSpectatePlayer(playerid,zherid);
- SetPlayerInterior(playerid,GetPlayerInterior(zherid));
- Player[playerid][SpecID] = zherid;
- Player[playerid][SpecType] = SPEC_TYPE_PLAYER;
- format(string,sizeof(string),"* You are now spectating player %s.",gname);
- SendClientMessage(playerid,COLOR_BLUE,string);
- SendClientMessage(playerid,COLOR_BLUE,"For stop the spectating type: \"/spec-off\"");
- }
- }
- if(listitem == 8)
- {
- if(playerid != zherid)
- {
- if(Player[zherid][Freeze] == 0)
- {
- TogglePlayerControllable(zherid,0);
- format(string,sizeof(string),"* Admnistrator %s has frozen %s",pname,gname);
- SendClientMessageToAll(COLOR_BLUE,string);
- Player[zherid][Freeze] = 1;
- }
- else
- {
- TogglePlayerControllable(zherid,1);
- format(string,sizeof(string),"* Admnistrator %s has unfrozen %s",pname,gname);
- SendClientMessageToAll(COLOR_BLUE,string);
- Player[zherid][Freeze] = 0;
- }
- }
- }
- }
- else
- {
- }
- }
- return 1;
- }
- public OnPlayerClickPlayer(playerid, clickedplayerid, source)
- {
- new message[128],gname[40];
- GetPlayerName(clickedplayerid,gname,40);
- format(message, 128, "You clicked on player %s (ID: %d)",gname,clickedplayerid);
- SendClientMessage(playerid, 0xFFFFFFFF, message);
- if(IsPlayerAdmin(playerid))
- {
- ShowPlayerDialog(playerid,1,DIALOG_STYLE_LIST,"Select the command:","Akill\nMute\nKick\nBan\nGoto\nGetHere\nJail\nSpec\nFreeze\n","Select","Cancel");
- Player[playerid][Zhertva] = clickedplayerid;
- }
- return 1;
- }
- public OnPlayerDeath(playerid,killerid,reason)
- {
- for(new i=0;i<MAX_PLAYERS;i++)
- {
- if(Player[i][SpecID] == playerid)
- {
- TogglePlayerSpectating(i,0);
- Player[i][SpecID] = INVALID_PLAYER_ID;
- Player[i][SpecType] = SPEC_TYPE_NONE;
- }
- }
- return 1;
- }
- public OnVehicleDeath(vehicleid, killerid)
- {
- for(new i=0;i<MAX_PLAYERS;i++)
- {
- if(Player[i][SpecID] == vehicleid)
- {
- TogglePlayerSpectating(i,0);
- Player[i][SpecID] = INVALID_PLAYER_ID;
- Player[i][SpecType] = SPEC_TYPE_NONE;
- }
- }
- return 1;
- }
- public OnPlayerText(playerid, text[])
- {
- if(Player[playerid][Muted] == 1)
- {
- SendClientMessage(playerid,COLOR_RED,"��� �������� ����� � ���!");
- return 0;
- }
- return 1;
- }
- public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
- {
- for(new i=0;i<MAX_PLAYERS;i++)
- {
- if(Player[i][SpecID] == playerid)
- {
- PlayerSpectateVehicle(i,vehicleid);
- Player[i][SpecID] = vehicleid;
- Player[i][SpecType] = SPEC_TYPE_VEHICLE;
- }
- }
- return 1;
- }
- public OnPlayerExitVehicle(playerid, vehicleid)
- {
- for(new i=0;i<MAX_PLAYERS;i++)
- {
- if(Player[i][SpecID] == vehicleid)
- {
- PlayerSpectatePlayer(i,playerid);
- SetPlayerInterior(i,GetPlayerInterior(playerid));
- Player[i][SpecID] = playerid;
- Player[i][SpecType] = SPEC_TYPE_PLAYER;
- }
- }
- return 1;
- }
- public OnPlayerInteriorChange(playerid,newinteriorid,oldinteriorid)
- {
- new x = 0;
- while(x!=MAX_PLAYERS)
- {
- if(IsPlayerConnected(x) && GetPlayerState(x) == PLAYER_STATE_SPECTATING && Player[x][SpecID] == playerid && Player[x][SpecType] == SPEC_TYPE_PLAYER)
- {
- SetPlayerInterior(x,newinteriorid);
- }
- x++;
- }
- }
- public OnRconLoginAttempt(ip[], password[], success)
- {
- if(!success)
- {
- new pip[16],str[256],gname[40];
- for(new i=0;i<MAX_PLAYERS;i++)
- {
- GetPlayerIp(i,pip,sizeof(pip));
- if(!strcmp(ip,pip,true))
- {
- GetPlayerName(i,gname,40);
- format(str,sizeof(str),"%s trying to crack RCON!",gname);
- SendClientMessageToAll(0xFFFFFFFF,str);
- Kick(i);
- }
- }
- format(str,sizeof(str),"FAILED RCON LOGIN BY IP %s USING PASSWORD %s",ip,password);
- printf(str);
- format(str,sizeof(str),"banip %d",ip);
- SendRconCommand(str);
- }
- return 1;
- }
- public OnPlayerUpdate(playerid)
- {
- if(GetPlayerWeapon(playerid) == WEAPON_MINIGUN)
- {
- SendClientMessage(playerid,COLOR_RED,"Minigun - is bad weapon!xD");
- Kick(playerid);
- return 0;
- }
- if(GetPlayerSpecialAction(playerid) == SPECIAL_ACTION_USEJETPACK)
- {
- SendClientMessage(playerid,COLOR_RED,"It is not good - for using the jetpack!");
- Kick(playerid);
- return 0;
- }
- if(Player[playerid][Jailed] == 1 && !IsPlayerInRangeOfPoint(playerid,10,197.6661,173.8179,1003.0234))
- {
- SetPlayerInterior(playerid,3);
- SetPlayerPos(playerid,197.6661,173.8179,1003.0234);
- SendClientMessage(playerid,COLOR_RED,"Jail is your home!");
- }
- return 1;
- }
- public OnPlayerCommandText(playerid,cmdtext[])
- {
- if(strcmp(cmdtext,"/spec-off",true) == 0)
- {
- TogglePlayerSpectating(playerid, 0);
- Player[playerid][SpecID] = INVALID_PLAYER_ID;
- Player[playerid][SpecType] = SPEC_TYPE_NONE;
- SendClientMessage(playerid,COLOR_BLUE,"Spectating has stoped");
- return 1;
- }
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment