Код:
if(strcmp(cmd, "/duty", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pWanted] == 1) return SendClientMessage(playerid, COLOR_GREY, "* Criminals can not go on duty!");
if(PlayerInfo[playerid][pMember] == 1 || PlayerInfo[playerid][pLeader] == 1 || PlayerInfo[playerid][pMember] == 2 || PlayerInfo[playerid][pLeader] == 2 || PlayerInfo[playerid][pLeader] == 3 || PlayerInfo[playerid][pMember] == 3 || IsAFreecop(playerid))
{
if(PlayerInfo[playerid][pDBanned] == 1)
{
SendClientMessage(playerid, COLOR_GREY, "* You are Banned from Cop Duty!");
return 1;
}
if (IsPlayerInRangeOfPoint(playerid, 6,255.3,77.4,1003.6) || IsPlayerInRangeOfPoint(playerid, 6,223.6328,186.8251,1003.0313) || IsPlayerInRangeOfPoint(playerid, 6, 233.4989,123.6518,1003.2188) || PlayerInfo[playerid][pLocal] != 255)
{
if(PlayerInfo[playerid][pDuty] == 0)
{
if(IsAFreecop(playerid))
{
format(string, sizeof(string), "* Voluntary Officer %s took a Badge and a Gun from his locker.", sendername);
ProxDetector(30.0, playerid, string, COLOR_CHAT1,COLOR_CHAT2,COLOR_CHAT3,COLOR_CHAT4,COLOR_CHAT5);
SafeResetPlayerWeapons(playerid);
SafeGivePlayerWeapon(playerid, 41, 150);
SafeGivePlayerWeapon(playerid, 24, 200);
SafeGivePlayerWeapon(playerid, 3, 0);
SetPlayerColor(playerid,0xa9c4e400);
PlayerInfo[playerid][pDuty] = 1;
PlayerInfo[playerid][pChar] = 71;
new factionskin = PlayerInfo[playerid][pChar];
SetPlayerSkin(playerid, factionskin);
SaveGuns(playerid);
return 1;
}
if(PlayerInfo[playerid][pMember] == 1 || PlayerInfo[playerid][pLeader] == 1)
{
format(string, sizeof(string), "* Officer %s took a Badge and a Gun from his locker.", sendername);
SendClientMessage(playerid, COLOR_WHITE, "Type /equip for equipments // Type /undercover to see UC Skins!");
}
else if(PlayerInfo[playerid][pMember] == 2 || PlayerInfo[playerid][pLeader] == 2)
{
format(string, sizeof(string), "* Agent %s took a Badge and a Gun from his locker.", sendername);
SendClientMessage(playerid, COLOR_WHITE, "Type /equip, /agent and /undercover for equipments & Skins!");
}
else if(PlayerInfo[playerid][pMember] == 3 || PlayerInfo[playerid][pLeader] == 3)
{
format(string, sizeof(string), "* Soldier %s took a Badge and a Gun from his locker.", sendername);
SendClientMessage(playerid, COLOR_WHITE, "Type /equip and /soldier for equipments & Skins!");
}
SendClientMessage(playerid, COLOR_WHITE,"* If you wish to use your tazer type /tazer");
ProxDetector(30.0, playerid, string, COLOR_CHAT1,COLOR_CHAT2,COLOR_CHAT3,COLOR_CHAT4,COLOR_CHAT5);
SafeResetPlayerWeapons(playerid);
SafeGivePlayerWeapon(playerid, 24, 200);
SafeGivePlayerWeapon(playerid, 3, 0);
PlayerInfo[playerid][pTazerBullets] = 20;
PlayerInfo[playerid][pDuty] = 1;
SetPlayerToTeamColor(playerid);
new factionskin = PlayerInfo[playerid][pChar];
SetPlayerSkin(playerid, factionskin);
AttachWeaponCorrectly(playerid, 23);
}
else if(PlayerInfo[playerid][pDuty] == 1)
{
if(IsAFreecop(playerid))
{
format(string, sizeof(string), "* Voluntary Officer %s places his Badge and Gun in his locker.", sendername);
ProxDetector(30.0, playerid, string, COLOR_CHAT1,COLOR_CHAT2,COLOR_CHAT3,COLOR_CHAT4,COLOR_CHAT5);
SafeResetPlayerWeapons(playerid);
PlayerInfo[playerid][pDuty] = 0;
SetPlayerColor(playerid, TEAM_HIT_COLOR);
new originalskin = PlayerInfo[playerid][pModel];
SetPlayerSkin(playerid, originalskin);
PlayerInfo[playerid][pChar] = 0;
SetPlayerWeapons(playerid);
return 1;
}
if(PlayerInfo[playerid][pMember] == 1 || PlayerInfo[playerid][pLeader] == 1)
{
OnSwatDuty[playerid] = 0;
format(string, sizeof(string), "* Officer %s places his Badge and Gun in his locker.", sendername);
}
else if(PlayerInfo[playerid][pMember] == 2 || PlayerInfo[playerid][pLeader] == 2)
{
OnTacticalDuty[playerid] = 0;
format(string, sizeof(string), "* Agent %s places his Badge and Gun in his locker.", sendername);
}
else if(PlayerInfo[playerid][pMember] == 3 || PlayerInfo[playerid][pLeader] == 3)
{
OnSpecialFDuty[playerid] = 0;
format(string, sizeof(string), "* Soldier %s places his Badge and Gun in his locker.", sendername);
}
ProxDetector(30.0, playerid, string, COLOR_CHAT1,COLOR_CHAT2,COLOR_CHAT3,COLOR_CHAT4,COLOR_CHAT5);
SafeResetPlayerWeapons(playerid);
SafeSetPlayerArmour(playerid, 100);
SafeGivePlayerWeapon(playerid, 41, 500);
PlayerInfo[playerid][pDuty] = 0;
PlayerInfo[playerid][pChar] = 0;
SetPlayerColor(playerid, TEAM_HIT_COLOR);
new originalskin = PlayerInfo[playerid][pModel];
SetPlayerSkin(playerid, originalskin);
AttachWeaponCorrectly(playerid, 99);
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD2, "** You are not in a locker room !");
return 1;
}
}
else if(PlayerInfo[playerid][pMember] == 4||PlayerInfo[playerid][pLeader] == 4)
{
if(!IsPlayerInRangeOfPoint(playerid, 3.0, 1222.1793,-1246.3489,1287.8243))
{
SendClientMessage(playerid, COLOR_GRAD1, "You are not at the Medic Lockers!");
return 1;
}
if(JobDuty[playerid] == 1)
{
SendClientMessage(playerid, COLOR_WHITE, "* You are now Off Duty from your Medic Job and will not receive calls anymore.");
JobDuty[playerid] = 0;
Medics -= 1;
SetPlayerColor(playerid, TEAM_HIT_COLOR);
}
else
{
SendClientMessage(playerid, COLOR_WHITE, "* You are now On Duty with your Medic Job and will receive calls from people in need.");
JobDuty[playerid] = 1;
Medics += 1;
SetPlayerColor(playerid, 0xFF828200);
}
}
else if(PlayerInfo[playerid][pMember] == 12||PlayerInfo[playerid][pLeader] == 12)
{
if(!IsPlayerInRangeOfPoint(playerid, 3.0, 2811.7837,-1167.3248,1025.5703))
{
SendClientMessage(playerid, COLOR_GRAD1, "You are not at the Firemen Lockers!");
return 1;
}
if(JobDuty[playerid] == 1)
{
SendClientMessage(playerid, COLOR_WHITE, "* You are now Off Duty from your Firemen Job and will not receive calls anymore.");
JobDuty[playerid] = 0;
SetPlayerColor(playerid, TEAM_HIT_COLOR);
SafeResetPlayerWeapons(playerid);
}
else
{
SendClientMessage(playerid, COLOR_WHITE, "* You are now On Duty with your Firemen Job and will receive calls from people in need.");
JobDuty[playerid] = 1;
SetPlayerColor(playerid, 0xAA333300);
SafeGivePlayerWeapon(playerid, 42, 2500);
SafeGivePlayerWeapon(playerid, 6, 1);
}
}
else if(PlayerInfo[playerid][pJob] == 17)
{
if(JobDuty[playerid] == 1)
{
SendClientMessage(playerid, COLOR_WHITE, "* You are now Off Duty from your Pizza Delivery Job and will not receive calls anymore.");
JobDuty[playerid] = 0;
PizzaBoys -= 1;
}
else
{
SendClientMessage(playerid, COLOR_WHITE, "* You are now On Duty with your Pizza Delivery Job and will receive calls from people in need.");
JobDuty[playerid] = 1;
PizzaBoys += 1;
GetPlayerName(playerid,sendername,sizeof(sendername));
format(string, sizeof(string), "[Advert] Well stacked pizza worker %s is now On Duty, /call 111 to order a pizza.", sendername);
OOCNews(0xFF7E00AA,string);
}
}
else if(PlayerInfo[playerid][pJob] == 7)
{
if(JobDuty[playerid] == 1)
{
SendClientMessage(playerid, COLOR_WHITE, "* You are now Off Duty from your Car Mechanic Job and will not receive calls anymore.");
JobDuty[playerid] = 0;
Mechanics -= 1;
}
else
{
SendClientMessage(playerid, COLOR_WHITE, "* You are now On Duty with your Car Mechanic Job and will receive calls from people in need.");
JobDuty[playerid] = 1;
Mechanics += 1;
GetPlayerName(playerid,sendername,sizeof(sendername));
format(string, sizeof(string), "[Advert] Car mechanic %s is now On Duty, /call 555 to call a mechanic.", sendername);
OOCNews(0x2993EDAA,string);
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " You are not a Cop !");
}
new y, m, d;
new h,mi,s;
getdate(y,m,d);
gettime(h,mi,s);
format(string,sizeof(string), "(%d/%d/%d)[%d:%d:%d] %s [CMD] -> /duty",d,m,y,h,mi,s,sendername);
CommandLog(string);
}
return 1;
}