Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // This is a comment
- // uncomment the line below if you want to write a filterscript
- #define FILTERSCRIPT
- #include <a_samp>
- #include <sscanf2>
- #include <zcmd>
- #include <YSI\y_ini>
- //========================Enum====================//
- enum pInfo
- {
- pPolice
- };
- new PlayerInfo[MAX_PLAYERS][pInfo];
- //====================Defines===================//
- #define PATH "/police/%s.ini"
- #define COLOR_RED 0xFF0000AA
- #define COLOR_WHITE 0xFFFFFFAA
- #define COLOR_YELLOW 0xFFFF00AA
- #define COLOR_GREEN 0x00FF00CE
- new JailTimer[MAX_PLAYERS];
- new bool:inJail[MAX_PLAYERS];
- //============================================//
- #if defined FILTERSCRIPT
- public OnFilterScriptInit()
- {
- print("\n--------------------------------------");
- print(" Police System By Ahmed_Nezoo ");
- print("--------------------------------------\n");
- return 1;
- }
- stock UserPath(targetid)
- {
- new string[128],playername[MAX_PLAYER_NAME];
- GetPlayerName(targetid,playername,sizeof(playername));
- format(string,sizeof(string),PATH,playername);
- return string;
- }
- stock LoadLevel(name[],value[],playerid)
- {
- new file[60];
- format(file,sizeof(file),"/police/%s.ini",playerid);
- INI_Open(file);
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- LoadLevel("Police",PlayerInfo[playerid][pPolice],playerid);
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- new INI:File = INI_Open(UserPath(playerid));
- INI_SetTag(File,"data");
- INI_WriteInt(File,"Police",PlayerInfo[playerid][pPolice]);
- INI_Close(File);
- return 1;
- }
- stock PlayerName(id)
- {
- new name[MAX_PLAYER_NAME];
- GetPlayerName(id, name, MAX_PLAYER_NAME);
- return name;
- }
- CMD:makepolice(playerid, params[])
- {
- new targetid, level, string[128];
- if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, COLOR_RED, "You aren't the RCON admin !");
- if(!IsPlayerConnected(targetid)) return SendClientMessage(playerid, COLOR_RED, "This player is not connected");
- if(sscanf(params,"ui",targetid, level)) return SendClientMessage(playerid, -1, "Make a police officer: /makepolice [ID] (level)");
- PlayerInfo[targetid][pPolice] = level;
- new INI:File = INI_Open(UserPath(playerid));
- INI_SetTag(File,"data");
- INI_WriteInt(File,"Police",PlayerInfo[playerid][pPolice]);
- INI_Close(File);
- if(level > 8 || level < 0) return SendClientMessage(playerid, COLOR_RED, "Police level can't be less than 0 or more than 8");
- if(level == 0)
- {
- format(string,sizeof(string),"%s has set %s police level to: None", PlayerName(playerid), PlayerName(targetid));
- SendClientMessageToAll(COLOR_RED,string);
- SetPlayerSkin(targetid, 0);
- }
- else if(level == 1)
- {
- format(string,sizeof(string),"%s has employed %s as a: Police Officer", PlayerName(playerid), PlayerName(targetid));
- SendClientMessageToAll(COLOR_RED,string);
- SetPlayerSkin(targetid, 280);
- }
- else if(level == 2)
- {
- format(string,sizeof(string),"%s has employed %s as an: Investigator", PlayerName(playerid), PlayerName(targetid));
- SendClientMessageToAll(COLOR_RED,string);
- SetPlayerSkin(targetid, 284);
- }
- else if(level == 3)
- {
- format(string,sizeof(string),"%s has employed %s as a: Sergeant", PlayerName(playerid), PlayerName(targetid));
- SendClientMessageToAll(COLOR_RED,string);
- SetPlayerSkin(targetid, 165);
- }
- else if(level == 4)
- {
- format(string,sizeof(string),"%s has employed %s as a: Lieutenant", PlayerName(playerid), PlayerName(targetid));
- SendClientMessageToAll(COLOR_RED,string);
- SetPlayerSkin(targetid, 166);
- }
- else if(level == 5)
- {
- format(string,sizeof(string),"%s has employed %s as a: Major", PlayerName(playerid), PlayerName(targetid));
- SendClientMessageToAll(COLOR_RED,string);
- SetPlayerSkin(targetid, 282);
- }
- else if(level == 6)
- {
- format(string,sizeof(string),"%s has employed %s as a: Captain", PlayerName(playerid), PlayerName(targetid));
- SendClientMessageToAll(COLOR_RED,string);
- SetPlayerSkin(targetid, 286);
- }
- else if(level == 7)
- {
- format(string,sizeof(string),"%s has employed %s as a: Commander", PlayerName(playerid), PlayerName(targetid));
- SendClientMessageToAll(COLOR_RED,string);
- SetPlayerSkin(targetid, 287);
- }
- else if(level == 8)
- {
- format(string,sizeof(string),"%s has employed %s as a: Commissioner", PlayerName(playerid), PlayerName(targetid));
- SendClientMessageToAll(COLOR_RED,string);
- SetPlayerSkin(targetid, 285);
- }
- return 1;
- }
- CMD:cuff(playerid, params[])
- {
- new targetid;
- if(PlayerInfo[playerid][pPolice] == 0) return SendClientMessage(playerid, COLOR_RED, "You can't use this command");
- if(sscanf(params, "u", targetid)) return SendClientMessage(playerid, COLOR_WHITE, "Usage: /cuff [id]");
- if(!IsPlayerConnected(targetid)) return SendClientMessage(playerid, COLOR_RED, "This player is not connected");
- if(IsPlayerInAnyVehicle(targetid)) return SendClientMessage(playerid, COLOR_RED, "This player is inside a vehicle you can't cuff him");
- new Float:x, Float:y, Float:z;
- GetPlayerPos(targetid, x, y, z);
- if(IsPlayerInRangeOfPoint(targetid, 5.0, x, y, z))
- {
- SetPlayerAttachedObject(targetid, 0, 19418, 6, -0.011000, 0.028000, -0.022000, -15.600012, -33.699977,-81.700035, 0.891999, 1.000000, 1.168000);
- SetPlayerSpecialAction(targetid, SPECIAL_ACTION_CUFFED);
- SendClientMessage(targetid, COLOR_YELLOW, "You get cuffed by a police officer");
- }
- else
- {
- SendClientMessage(playerid, COLOR_RED, "This player is too far away !");
- }
- return 1;
- }
- CMD:uncuff(playerid, params[])
- {
- new targetid;
- if(PlayerInfo[playerid][pPolice] == 0) return SendClientMessage(playerid, COLOR_RED, "You can't use this command");
- if(sscanf(params, "u", targetid)) return SendClientMessage(playerid, COLOR_WHITE, "Usage: /uncuff [id]");
- if(!IsPlayerConnected(targetid)) return SendClientMessage(playerid, COLOR_RED, "Thhis player is not connected");
- if(IsPlayerInAnyVehicle(targetid)) return SendClientMessage(playerid, COLOR_RED, "This player is inside a vehicle you can't uncuff him");
- new Float:x, Float:y, Float:z;
- GetPlayerPos(targetid, x, y, z);
- if(IsPlayerInRangeOfPoint(targetid, 5.0, x, y, z))
- {
- if(!IsPlayerAttachedObjectSlotUsed(targetid, 0))return SendClientMessage(playerid, COLOR_RED,"This player is not cuffed");
- SetPlayerSpecialAction(targetid,SPECIAL_ACTION_NONE);
- SendClientMessage(targetid, COLOR_YELLOW, "You get uncuffed by a police officer");
- RemovePlayerAttachedObject(targetid, 0);
- }
- else
- {
- SendClientMessage(playerid, COLOR_RED, "This player is too far away !");
- }
- return 1;
- }
- CMD:pfreeze(playerid, params[])
- {
- new targetid;
- if(PlayerInfo[playerid][pPolice] < 1) return SendClientMessage(playerid, COLOR_RED, "You can't use this command");
- if(sscanf(params, "u", targetid)) return SendClientMessage(playerid, COLOR_WHITE, "Usage: /freeze [id]");
- if(!IsPlayerConnected(targetid)) return SendClientMessage(playerid, COLOR_RED, "Thhis player is not connected");
- if(!IsPlayerAttachedObjectSlotUsed(targetid, 0))return SendClientMessage(playerid, COLOR_RED,"This player is not cuffed");
- if(IsPlayerInAnyVehicle(targetid)) return SendClientMessage(playerid, COLOR_RED, "This player is inside a vehicle you can't freeze him");
- new Float:x, Float:y, Float:z;
- GetPlayerPos(targetid, x, y, z);
- if(!IsPlayerInRangeOfPoint(playerid, 5, x, y, z)) return SendClientMessage(playerid, COLOR_RED, "This player is too far away");
- TogglePlayerControllable(targetid,0);
- return 1;
- }
- CMD:punfreeze(playerid, params[])
- {
- new targetid;
- if(PlayerInfo[playerid][pPolice] < 1) return SendClientMessage(playerid, COLOR_RED, "You can't use this command");
- if(sscanf(params, "u", targetid)) return SendClientMessage(playerid, COLOR_WHITE, "Usage: /freeze [id]");
- if(!IsPlayerConnected(targetid)) return SendClientMessage(playerid, COLOR_RED, "Thhis player is not connected");
- if(!IsPlayerAttachedObjectSlotUsed(targetid, 0))return SendClientMessage(playerid, COLOR_RED,"This player is not cuffed");
- if(IsPlayerInAnyVehicle(targetid)) return SendClientMessage(playerid, COLOR_RED, "This player is inside a vehicle you can't unfreeze him");
- new Float:x, Float:y, Float:z;
- GetPlayerPos(targetid, x, y, z);
- if(!IsPlayerInRangeOfPoint(playerid, 5, x, y, z)) return SendClientMessage(playerid, COLOR_RED, "This player is too far away");
- TogglePlayerControllable(targetid,1);
- return 1;
- }
- CMD:jail(playerid, params[])
- {
- if(PlayerInfo[playerid][pPolice] >= 1)
- {
- new targetid, minutes;
- if(sscanf(params, "ri", targetid, minutes)) return SendClientMessage(playerid, COLOR_WHITE, "Usage: /jail [playerid] (Time)");
- if(minutes <= 0 || minutes >= 16) return SendClientMessage(playerid, COLOR_RED, "Minutes can't be less than 0 or more than 15");
- new Float:x, Float:y, Float:z;
- GetPlayerPos(targetid, x, y, z);
- if(!IsPlayerInRangeOfPoint(playerid, 5, x, y, z)) return SendClientMessage(playerid, COLOR_RED, "This player is too far away");
- if(IsPlayerInAnyVehicle(targetid)) return SendClientMessage(playerid, COLOR_RED, "This player is inside a vehicle you can't jail him");
- if(!IsPlayerAttachedObjectSlotUsed(targetid, 0))return SendClientMessage(playerid, COLOR_RED,"This player is not cuffed");
- else
- {
- new str[128];
- format(str, sizeof(str), "%s jailed by %s for %d minutes", PlayerName(targetid), PlayerName(playerid), minutes);
- SendClientMessageToAll(COLOR_RED, str);
- SetPlayerInterior(targetid, 6);
- SetPlayerVirtualWorld(targetid, 10);
- SetPlayerFacingAngle(targetid, 360.0);
- SetPlayerPos(targetid, 264.5485,77.8464,1001.3657);
- SetPlayerHealth(targetid, 9999999999.0);
- ResetPlayerWeapons(targetid);
- JailTimer[targetid] = SetTimerEx("Unjail",minutes*60000, false, "i", targetid);//jail timer
- TogglePlayerControllable(targetid,1);
- RemovePlayerAttachedObject(targetid, 0);
- SetPlayerScore(playerid, GetPlayerScore(playerid)+2);
- }
- }
- else
- {
- SendClientMessage(playerid, COLOR_RED, "You can't use this command");
- }
- return 1;
- }
- forward Unjail(playerid);
- public Unjail(playerid)
- {
- SetPlayerInterior(playerid, 0);
- SetPlayerVirtualWorld(playerid, 0);
- SetPlayerPos(playerid,1545.7330,-1675.2095,13.5609);
- SetPlayerHealth(playerid, 100);
- GameTextForPlayer(playerid, "~p~Unjailed", 10000, 6);
- }
- public OnPlayerSpawn(playerid)
- {
- INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
- if(PlayerInfo[playerid][pPolice] == 1)
- {
- SetPlayerSkin(playerid, 280);
- GivePlayerWeapon(playerid, 26, 100);
- SetPlayerArmour(playerid, 20);
- GivePlayerWeapon(playerid, 22, 100);
- GivePlayerWeapon(playerid, 28, 1000);
- GivePlayerWeapon(playerid, 31, 1000);
- GivePlayerWeapon(playerid, 34, 30);
- }
- else if(PlayerInfo[playerid][pPolice] == 2)
- {
- SetPlayerSkin(playerid, 284);
- GivePlayerWeapon(playerid, 26, 500);
- SetPlayerArmour(playerid, 40);
- GivePlayerWeapon(playerid, 22, 500);
- GivePlayerWeapon(playerid, 28, 2000);
- GivePlayerWeapon(playerid, 31, 2000);
- GivePlayerWeapon(playerid, 34, 50);
- }
- else if(PlayerInfo[playerid][pPolice] == 3)
- {
- SetPlayerSkin(playerid, 165);
- GivePlayerWeapon(playerid, 26, 700);
- SetPlayerArmour(playerid, 20);
- GivePlayerWeapon(playerid, 22, 700);
- GivePlayerWeapon(playerid, 28, 3000);
- GivePlayerWeapon(playerid, 31, 3000);
- GivePlayerWeapon(playerid, 34, 50);
- }
- else if(PlayerInfo[playerid][pPolice] == 4)
- {
- SetPlayerSkin(playerid, 166);
- GivePlayerWeapon(playerid, 26, 900);
- SetPlayerArmour(playerid, 20);
- GivePlayerWeapon(playerid, 22, 900);
- GivePlayerWeapon(playerid, 28, 5000);
- GivePlayerWeapon(playerid, 31, 5000);
- GivePlayerWeapon(playerid, 34, 50);
- }
- else if(PlayerInfo[playerid][pPolice] == 5)
- {
- SetPlayerSkin(playerid, 282);
- GivePlayerWeapon(playerid, 26, 1100);
- SetPlayerArmour(playerid, 20);
- GivePlayerWeapon(playerid, 22, 1100);
- GivePlayerWeapon(playerid, 28, 7000);
- GivePlayerWeapon(playerid, 31, 7000);
- GivePlayerWeapon(playerid, 34, 70);
- }
- else if(PlayerInfo[playerid][pPolice] == 6)
- {
- SetPlayerSkin(playerid, 286);
- GivePlayerWeapon(playerid, 26, 1300);
- SetPlayerArmour(playerid, 20);
- GivePlayerWeapon(playerid, 22, 1300);
- GivePlayerWeapon(playerid, 28, 9000);
- GivePlayerWeapon(playerid, 31, 9000);
- GivePlayerWeapon(playerid, 34, 90);
- }
- else if(PlayerInfo[playerid][pPolice] == 7)
- {
- SetPlayerSkin(playerid, 287);
- GivePlayerWeapon(playerid, 26, 1500);
- SetPlayerArmour(playerid, 20);
- GivePlayerWeapon(playerid, 22, 1500);
- GivePlayerWeapon(playerid, 28, 11000);
- GivePlayerWeapon(playerid, 31, 11000);
- GivePlayerWeapon(playerid, 34, 95);
- }
- else if(PlayerInfo[playerid][pPolice] == 8)
- {
- SetPlayerSkin(playerid, 285);
- GivePlayerWeapon(playerid, 26, 1700);
- SetPlayerArmour(playerid, 20);
- GivePlayerWeapon(playerid, 22, 1700);
- GivePlayerWeapon(playerid, 28, 13000);
- GivePlayerWeapon(playerid, 31, 13000);
- GivePlayerWeapon(playerid, 34, 100);
- }
- return 1;
- }
- public OnFilterScriptExit()
- {
- return 1;
- }
- #endif
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement