14.06.2012, 21:18
Open your Gamemode
On top of Gamemode add:
Under OnPlayerConnect add:
Under OnPlayerDisconnect add:
Add this where you place your commands in gamemode:
EDIT:
Probably you will need this too
Add it somewhere
On top of Gamemode add:
pawn Code:
#define COLOR_DRED 0xFF0000AA //defines red color
new aDuty[MAX_PLAYERS];
pawn Code:
aDuty[playerid] = 0; //Set player off duty when connects
pawn Code:
aDuty[playerid] = 0; //set player off duty when disconnects
pawn Code:
CMD:aduty(playerid) //Doesnt need params function
{
if(PlayerInfo[playerid][pAdmin] >=1 || IsPlayerAdmin(playerid)) //If you use rcon admin delete (PlayerInfo[playerid][pAdmin] >=1 ||
{
if (aDuty[playerid] == 0) //Check if player is on duty
{
new string[128];
new Float:x,Float:y,Float:z;
new Text3D:label = Create3DTextLabel("Admin On Duty!", COLOR_DRED,x,y,z, 40.0, 0, 0); //Creates 3d text label at player position
GetPlayerPos(playerid,x,y,z); //Looks for players position
SetPlayerHealth(playerid,999999); //makes player godmode
SetPlayerColor(playerid,COLOR_DRED); //set admin colour red
SetPlayerSkin(playerid,294); //set admin skin to 294
format(string,sizeof(string), "%s is now on Duty!",GetPlayerNameEx(playerid)); //here you format string to send to players
SendClientMessageToAll(COLOR_DRED,string); //send string to players
SendClientMessage(playerid,COLOR_DRED,"You are now on duty!"); //Tell admin he is now on duty
Attach3DTextLabelToPlayer(label,playerid,0.0, 0.0, 0.7); //attach 3d text label made before to player
aDuty[playerid] = 1; //Set player on duty
}
else if (aDuty[playerid] == 1) //Check if player is on duty
{
new string[128];
new Float:x,Float:y,Float:z;
new Text3D:label = Create3DTextLabel("Admin On Duty!", COLOR_DRED,x,y,z, 40.0, 0, 0);
Delete3DTextLabel(label); //Delete 3d text label saying "Admin On Duty!"
SetPlayerHealth(playerid,100); //sets player health back to 100
format(string,sizeof(string)," %s is now off Duty!",GetPlayerNameEx(playerid)); //Format string to send to players
SendClientMessageToAll(COLOR_DRED,string); //send players string
SendClientMessage(playerid, COLOR_DRED,"You are now off duty!"); //send admin message he is off duty
aDuty[playerid] = 0; //sets admin off duty
}
}
else
SendClientMessage(playerid,COLOR_DRED,"You are not high level enough!"); //Error message to send to players who arent admins
return 1;
}
Probably you will need this too
Add it somewhere
pawn Code:
stock GetPlayerNameEx(playerid) //This is stock i made to make Getting players name easier
{
new Name[MAX_PLAYER_NAME];
GetPlayerName(playerid, Name, MAX_PLAYER_NAME);
return Name;
}