Код:
CMD:adminlevel(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] < 3&& !IsPlayerAdmin(playerid)) return SendClientMessage(playerid,COLOR_RED,"You are not an admin.");
new targetid,level;
if(sscanf(params,"ui", targetid,level)) return SendClientMessage(playerid, COLOR_RED,"Correct usage: /adminlevel [PlayerID] [Level]");
if(!IsPlayerConnected(targetid)) return SendClientMessage(playerid, COLOR_RED,"That player is not connected to the server!");
if(level <4)
{
PlayerInfo[targetid][pAdmin] = level;
new msg[126],aname[MAX_PLAYER_NAME];
GetPlayerName(playerid,aname,sizeof(aname));
format(msg,sizeof(msg),"Admin ~r~%s ~w~Set You To Admin Level ~b~%i",aname,level);
GameTextForPlayer(playerid, msg, 5000, 5);
}
else
{
SendClientMessage(playerid, COLOR_RED,"Level Must Be Between 1-3");
}
return 1;
}
CMD:kick(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] < 1&& !IsPlayerAdmin(playerid)) return 1;
new targetid,reason[126],pName[MAX_PLAYERS];
if(sscanf(params,"us", targetid,reason)) return SendClientMessage(playerid, -1 , "Correct Usage: /kick [Playerid][Reason]");
if(!IsPlayerConnected(targetid)) return SendClientMessage(playerid,COLOR_RED,"Player not connected.");
GetPlayerName(targetid,pName,sizeof(pName));
new msg[126];
format(msg,sizeof(msg),"[Kick]%s has beed kicked by an admin.Reason : %s",pName,reason);
SendClientMessageToAll(COLOR_RED,msg);
SetTimer("KickPlayer", 10, false);
return 1;
}
CMD:ban(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] < 2&& !IsPlayerAdmin(playerid)) return 1;
new targetid,reason[126],pName[MAX_PLAYERS];
if(sscanf(params,"us", targetid,reason)) return SendClientMessage(playerid, -1 , "Correct Usage: /kick [Playerid][Reason]");
if(!IsPlayerConnected(targetid)) return SendClientMessage(playerid,COLOR_RED,"Player not connected.");
GetPlayerName(targetid,pName,sizeof(pName));
new msg[126];
format(msg,sizeof(msg),"[Ban]%s has beed banned by an admin.Reason : %s",pName,reason);
SendClientMessageToAll(COLOR_RED,msg);
SetTimer("BanPlayer", 10, false);
return 1;
}
CMD:getplayer(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] < 1&& !IsPlayerAdmin(playerid)) return 1;
new targetid,pName[MAX_PLAYERS];
if(sscanf(params,"u", targetid)) return SendClientMessage(playerid, -1 , "Correct Usage: /kick [Playerid][Reason]");
if(!IsPlayerConnected(targetid)) return SendClientMessage(playerid,COLOR_RED,"Player not connected.");
GetPlayerName(playerid,pName,sizeof(pName));
new float:x,float:y,float:z;
GetPlayerPos(playerid,x,y,z);
SetPlayerPos(targetid,x,y,z);
new msg[126];
format(msg,sizeof(msg),"[Teleport]You have been teleported to Admin %s",pName);
SendClientMessage(targetid,COLOR_RED,msg);
return 1;
}
CMD:goto(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] < 1&& !IsPlayerAdmin(playerid)) return 1;
new targetid,pName[MAX_PLAYERS];
if(sscanf(params,"u", targetid)) return SendClientMessage(playerid, -1 , "Correct Usage: /kick [Playerid][Reason]");
if(!IsPlayerConnected(targetid)) return SendClientMessage(playerid,COLOR_RED,"Player not connected.");
GetPlayerName(targetid,pName,sizeof(pName));
new float:x,float:y,float:z;
GetPlayerPos(targetid,x,y,z);
SetPlayerPos(playerid,x,y,z);
new msg[126];
format(msg,sizeof(msg),"[Teleport]You have been teleported to player %s",pName);
SendClientMessage(playerid,COLOR_RED,msg);
return 1;
}
CMD:spec(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] < 1&& !IsPlayerAdmin(playerid)) return 1;
new targetid,pName[MAX_PLAYERS];
if(sscanf(params,"u", targetid)) return SendClientMessage(playerid, -1 , "Correct Usage: /kick [Playerid][Reason]");
if(!IsPlayerConnected(targetid)) return SendClientMessage(playerid,COLOR_RED,"Player not connected.");
GetPlayerName(targetid,pName,sizeof(pName));
TogglePlayerSpectating(targetid, 1);
new msg[126];
format(msg,sizeof(msg),"[Spectate]You are spectating player %s",pName);
SendClientMessage(playerid,COLOR_RED,msg);
return 1;
}
CMD:specoff(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] < 1&& !IsPlayerAdmin(playerid)) return 1;
new targetid,pName[MAX_PLAYERS];
if(sscanf(params,"u", targetid)) return SendClientMessage(playerid, -1 , "Correct Usage: /kick [Playerid][Reason]");
if(!IsPlayerConnected(targetid)) return SendClientMessage(playerid,COLOR_RED,"Player not connected.");
GetPlayerName(targetid,pName,sizeof(pName));
TogglePlayerSpectating(targetid, 0);
new msg[126];
format(msg,sizeof(msg),"[Spectate]You are no more spectating player %s",pName);
SendClientMessage(playerid,COLOR_RED,msg);
return 1;
}
CMD:jail(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] < 1&& !IsPlayerAdmin(playerid)) return 1;
new id,time,reason[100],PlayerName[MAX_PLAYER_NAME],GPlayerName[MAX_PLAYER_NAME],msg[128];
if(sscanf(params,"dds",id,time,reason)) return SendClientMessage(playerid, COLOR_RED, "USAGE: /jail [playerid] [time] [reason]");
if(!IsPlayerConnected(id)) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is not connected.");
if(Jailed[id] == 1) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is already jailed.");
GetPlayerName(id, PlayerName, sizeof(PlayerName));// the jailed person id
GetPlayerName(playerid, GPlayerName, sizeof(GPlayerName));// the admin id
format(msg, sizeof(msg), "[Jail]: %s (ID:%d) has been jailed for %d minutes; Reason: %s", PlayerName, id, time, reason);
SendClientMessageToAll(COLOR_RED, msg);//%s = name . %d = number
SetPlayerInterior(id, 3);//sets player interior
SetPlayerVirtualWorld(id, 10);//sets player vw
SetPlayerFacingAngle(id, 360.0);//player angle
SetPlayerPos(id, 197.5662, 175.4800, 1004.0);//player pos
SetPlayerHealth(id, 9999999999.0);//player cannot be killed
ResetPlayerWeapons(id);//resets his weapons
JailTimer[id] = SetTimerEx("Unjail",time*60000, false, "i", id);//jail timer
return 1;
}
CMD:unjail(playerid,params[]) {
new id;
if(PlayerInfo[playerid][pAdmin] < 1&& !IsPlayerAdmin(playerid)) return 1;
if(sscanf(params,"u",id)) return SendClientMessage(playerid, COLOR_RED, "USAGE: /unjail [playerid]");//sscanf routine
if (!IsPlayerConnected(id)) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is not connected.");//checks if the targetid is connected
if(Jailed[id] == 0) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is not jailed.");//checks if the id is jailed and if he isnt it will send an error.
Jailed[id] = 0;// sets his jail to 0 = unjailed
SetPlayerInterior(id, 0);//normal int
SetPlayerVirtualWorld(id, 0);//normal vw
SpawnPlayer(id);//respawns player
SetPlayerHealth(id, 100);//sets his health back as 100
KillTimer(JailTimer[id]);//kills the timer
return 1;
}
CMD:setpresident(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] < 2&& !IsPlayerAdmin(playerid)) return 1;
new targetid,pName[MAX_PLAYERS];
if(sscanf(params,"u", targetid)) return SendClientMessage(playerid, -1 , "Correct Usage: /setpresident [Playerid]");
if(!IsPlayerConnected(targetid)) return SendClientMessage(playerid,COLOR_RED,"Player not connected.");
GetPlayerName(targetid,pName,sizeof(pName));
new msg[126];
format(msg,sizeof(msg),"[President]You maded player %s as a president.",pName);
PlayerInfo[playerid][pJob] = 1;
SendClientMessage(playerid,COLOR_GREEN,msg);
new msg2[126],msg3[126],admin[MAX_PLAYERS];
GetPlayerName(playerid,admin,sizeof(admin));
format(msg2,sizeof(msg2),"[President]'You are now president of this RP.'-Admin %",admin);
SendClientMessage(targetid,COLOR_GREEN,msg2);
format(msg3,sizeof(msg3),"[President]New president is Mr.%s",pName);
SendClientMessageToAll(COLOR_GREEN,msg3);
return 1;
}