All pastes #989508 Raw Edit

Tec9 lsrpg GM

public text v1 · immutable
#989508 ·published 2008-04-19 13:01 UTC
rendered paste body
////////////////////////////////////////////////////////////////////////////////
//////////////////// LSRPG 2.0 /////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
#include <a_samp>
#include <core>
#include <float>
#include <dini>
#include <dudb>
#define COLOR_BRIGHTRED 0xFF000096
#define COLOR_SYSTEM 0xF5FF9FAA
#define COLOR_ADMINISTRATOR 0xa0d3ffAA
#define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
#define KICKPORTAL "KickedNames.txt"
#define ADMIN_SPEC_TYPE_NONE 0
#define ADMIN_SPEC_TYPE_PLAYER 1
#define ADMIN_SPEC_TYPE_VEHICLE 2
forward Restart();
new IsPlayerMuted[MAX_PLAYERS];
new tmp[MAX_STRING];
new giveplayerid;
new bool:IsServerLocked;
new gSpectateID[MAX_PLAYERS];
new gSpectateType[MAX_PLAYERS];
stock IsVehicleConnected(vehicleid) //By Sacky (edited by Gabriel "Larcius" Cordes)
{
	new Float:x1,Float:y1,Float:z1;
	GetVehiclePos(vehicleid,x1,y1,z1);
	if(x1==0.0 && y1==0.0 && z1==0.0)
	{
		return 0;
	}
	return 1;
}
// ADMIN COMMANDS
dcmd_kick(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(tmp))
	{
	SystemMessage(playerid, "Correct usage: '/kick [playername] [reason]'");
	return 1;
	}
	new string[MAX_STRING];
	new second, minute, hour, day, month, year;
    giveplayerid = ReturnUser(tmp);
	if (IsPlayerConnected(giveplayerid))
	{
    format(string, sizeof(string), "You have been kicked by Administrator %s. (Reason: '%s')", PlayerName(playerid), params);
    SystemMessage(giveplayerid, string);
    format(string, sizeof(string), "Player %s has been kicked by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
    SystemMessageToAll(string);
	format(string, sizeof(string), "%s has been kicked by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
	print(string);
	gettime(hour, minute, second);
	getdate(year, month, day);
	format(string, sizeof(string), "Player %s kicked player %s on %d/%d/%d at %d:%d:%d. (Reason: '%s')", PlayerName(playerid), PlayerName(giveplayerid), month, day, year, hour, minute, second, params);
	ServerLog(string);
	KickPlayer(giveplayerid, "");
    }
   	else
    {
	format(string, sizeof(string), "That player is not active.");
	SystemMessage(playerid, string);
	}
    return 1;
}



dcmd_ban(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(tmp))
	{
	SystemMessage(playerid, "Correct usage: '/ban [playername] [reason]'");
	return 1;
	}
	new string[MAX_STRING];
	new second, minute, hour, day, month, year;
    giveplayerid = ReturnUser(tmp);
	if (IsPlayerConnected(giveplayerid))
	{
	format(string, sizeof(string), "You have been banned by Administrator %s. (Reason: '%s')", PlayerName(playerid), params);
	SystemMessage(giveplayerid, string);
    if(dini_Exists(KICKPORTAL))
    {
    new File:fhandle;
    new temp[256];
    fhandle = fopen(KICKPORTAL, io_append);
    format(temp, sizeof(temp), "\n%s", PlayerName(giveplayerid));
    fwrite(fhandle, temp);
    fclose(fhandle);
    }
	format(string, sizeof(string), "Player %s has been banned by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
	SystemMessageToAll(string);
	format(string, sizeof(string), "%s has been banned by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
	print(string);
	gettime(hour, minute, second);
	getdate(year, month, day);
	format(string, sizeof(string), "Player %s banned player %s on %d/%d/%d at %d:%d:%d. (Reason: '%s')", PlayerName(playerid), PlayerName(giveplayerid), month, day, year, hour, minute, second, params);
	ServerLog(string);
	KickPlayer(giveplayerid, "");
    }
   	else
    {
	format(string, sizeof(string), "That player is not active.");
	SystemMessage(playerid, string);
	}
    return 1;
}



dcmd_say(playerid, params[])
{
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
	new string[MAX_STRING];
    strmid(tmp, params, 4, strlen(params));
	if(!strlen(tmp))
	SendClientMessage(playerid, COLOR_SYSTEM, "Correct usage: '/say [text]'");
    else
	{
    format(string, sizeof(string), "%s: %s", PlayerName(playerid), tmp);
    printf(string);
    SendClientMessageToAll(COLOR_ADMINISTRATOR, string);
	}
    return 1;
}



dcmd_banip(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(tmp))
	{
	SystemMessage(playerid, "Correct usage: '/banip [playername] [reason]'");
	return 1;
	}
	new string[MAX_STRING];
	new second, minute, hour, day, month, year;
	giveplayerid = ReturnUser(tmp);
	if (IsPlayerConnected(giveplayerid))
	{
	format(string, sizeof(string), "You have been IP banned by Administrator %s. (Reason: '%s')", PlayerName(playerid), params);
	SendClientMessage(giveplayerid, COLOR_SYSTEM, string);
	format(string, sizeof(string), "Player %s has been IP banned by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
	SendClientMessageToAll(COLOR_SYSTEM, string);
	format(string, sizeof(string), "%s has been IP banned by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
	print(string);
	gettime(hour, minute, second);
	getdate(year, month, day);
	format(string,sizeof(string),"Player %s IP banned player %s on %d/%d/%d at %d:%d:%d. (Reason: '%s')", PlayerName(playerid), PlayerName(giveplayerid), month, day, year, hour, minute, second, params);
	ServerLog(string);
	BanPlayer(giveplayerid, "");
    }
   	else
    {
	format(string, sizeof(string), "That player is not active.");
	SendClientMessage(playerid, COLOR_SYSTEM, string);
	}
    return 1;
}



dcmd_unbanip(playerid, params[])
{
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(params)) return SystemMessage(playerid, "Correct usage: '/unbanip [ip]'");
    new string[MAX_STRING];
	format(string, sizeof(string), "IP %s unbanned.", params);
    SystemMessage(playerid, string);
    format(string, sizeof(string), "unbanip %s", params);
	SendRconCommandEx(0, string);
	return 1;
}



dcmd_freeze(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(tmp))
	{
	SystemMessage(playerid, "Correct usage: '/freeze [playername] [reason]'");
	return 1;
	}
	new string[MAX_STRING];
	new second, minute, hour, day, month, year;
    giveplayerid = ReturnUser(tmp);
	if (IsPlayerConnected(giveplayerid))
	{
    format(string, sizeof(string), "You have been freezed by Administrator %s. (Reason: '%s')", PlayerName(playerid), params);
    SystemMessage(giveplayerid, string);
	FreezePlayer(giveplayerid, "");
    format(string, sizeof(string), "Player %s has been freezed by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
    SystemMessageToAll(string);
	format(string, sizeof(string), "%s has been freezed by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
	print(string);
	gettime(hour, minute, second);
	getdate(year, month, day);
	format(string, sizeof(string), "Player %s freezed player %s on %d/%d/%d at %d:%d:%d. (Reason: '%s')", PlayerName(playerid), PlayerName(giveplayerid), month, day, year, hour, minute, second, params);
	ServerLog(string);
    }
   	else
    {
	format(string, sizeof(string), "That player is not active.");
	SystemMessage(playerid, string);
	}
    return 1;
}



dcmd_unfreeze(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(tmp))
	{
	SystemMessage(playerid, "Correct usage: '/unfreeze [playername] [reason]'");
	return 1;
	}
	new string[MAX_STRING];
	new second, minute, hour, day, month, year;
    giveplayerid = ReturnUser(tmp);
	if (IsPlayerConnected(giveplayerid))
	{
    format(string, sizeof(string), "You have been unfreezed by Administrator %s. (Reason: '%s')", PlayerName(playerid), params);
    SystemMessage(giveplayerid, string);
	UnfreezePlayer(giveplayerid, "");
    format(string, sizeof(string), "Player %s has been unfreezed by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
    SystemMessageToAll(string);
	format(string, sizeof(string), "%s has been unfreezed by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
	print(string);
	gettime(hour, minute, second);
	getdate(year, month, day);
	format(string, sizeof(string), "Player %s unfreezed player %s on %d/%d/%d at %d:%d:%d. (Reason: '%s')", PlayerName(playerid), PlayerName(giveplayerid), month, day, year, hour, minute, second, params);
	ServerLog(string);
    }
   	else
    {
	format(string, sizeof(string), "That player is not active.");
	SystemMessage(playerid, string);
	}
    return 1;
}



dcmd_killplayer(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(tmp))
	{
	SystemMessage(playerid, "Correct usage: '/killplayer [playername] [reason]'");
	return 1;
	}
	new string[MAX_STRING];
	new second, minute, hour, day, month, year;
    giveplayerid = ReturnUser(tmp);
	if (IsPlayerConnected(giveplayerid))
	{
    format(string, sizeof(string), "You have been killed by Administrator %s. (Reason: '%s')", PlayerName(playerid), params);
    SystemMessage(giveplayerid, string);
	KillPlayer(giveplayerid, "");
    format(string, sizeof(string), "Player %s has been killed by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
    SystemMessageToAll(string);
	format(string, sizeof(string), "%s has been killed by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
	print(string);
	gettime(hour, minute, second);
	getdate(year, month, day);
	format(string, sizeof(string), "Player %s killed player %s on %d/%d/%d at %d:%d:%d. (Reason: '%s')", PlayerName(playerid), PlayerName(giveplayerid), month, day, year, hour, minute, second, params);
	ServerLog(string);
    }
   	else
    {
	format(string, sizeof(string), "That player is not active.");
	SystemMessage(playerid, string);
	}
    return 1;
}



dcmd_jail(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(tmp))
	{
	SystemMessage(playerid, "Correct usage: '/jail [playername] [reason]'");
	return 1;
	}
	new string[MAX_STRING];
	new second, minute, hour, day, month, year;
    giveplayerid = ReturnUser(tmp);
	if (IsPlayerConnected(giveplayerid))
	{
    format(string, sizeof(string), "You have been jailed by Administrator %s. (Reason: '%s')", PlayerName(playerid), params);
    SystemMessage(giveplayerid, string);
	JailPlayer(giveplayerid, "");
    format(string, sizeof(string), "Player %s has been jailed by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
    SystemMessageToAll(string);
	format(string, sizeof(string), "%s has been jailed by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
	print(string);
	gettime(hour, minute, second);
	getdate(year, month, day);
	format(string, sizeof(string), "Player %s jailed player %s on %d/%d/%d at %d:%d:%d. (Reason: '%s')", PlayerName(playerid), PlayerName(giveplayerid), month, day, year, hour, minute, second, params);
	ServerLog(string);
    }
   	else
    {
	format(string, sizeof(string), "That player is not active.");
	SystemMessage(playerid, string);
	}
    return 1;
}



dcmd_unjail(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(tmp))
	{
	SystemMessage(playerid, "Correct usage: '/unjail [playername] [reason]'");
	return 1;
	}
	new string[MAX_STRING];
	new second, minute, hour, day, month, year;
    giveplayerid = ReturnUser(tmp);
	if (IsPlayerConnected(giveplayerid))
	{
    format(string, sizeof(string), "You have been unjailed by Administrator %s. (Reason: '%s')", PlayerName(playerid), params);
    SystemMessage(giveplayerid, string);
	UnjailPlayer(giveplayerid, "");
    format(string, sizeof(string), "Player %s has been unjailed by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
    SystemMessageToAll(string);
	format(string, sizeof(string), "%s has been unjailed by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
	print(string);
	gettime(hour, minute, second);
	getdate(year, month, day);
	format(string, sizeof(string), "Player %s unjailed player %s on %d/%d/%d at %d:%d:%d. (Reason: '%s')", PlayerName(playerid), PlayerName(giveplayerid), month, day, year, hour, minute, second, params);
	ServerLog(string);
    }
   	else
    {
	format(string, sizeof(string), "That player is not active.");
	SystemMessage(playerid, string);
	}
    return 1;
}



dcmd_slap(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(tmp))
	{
	SystemMessage(playerid, "Correct usage: '/slap [playername] [reason]'");
	return 1;
	}
	new string[MAX_STRING];
	new second, minute, hour, day, month, year;
    giveplayerid = ReturnUser(tmp);
	if (IsPlayerConnected(giveplayerid))
	{
    format(string, sizeof(string), "You have been slapped by Administrator %s. (Reason: '%s')", PlayerName(playerid), params);
    SystemMessage(giveplayerid, string);
	SlapPlayer(giveplayerid, "");
    format(string, sizeof(string), "Player %s has been slapped by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
    SystemMessageToAll(string);
	format(string, sizeof(string), "%s has been slapped by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
	print(string);
	gettime(hour, minute, second);
	getdate(year, month, day);
	format(string, sizeof(string), "Player %s slapped player %s on %d/%d/%d at %d:%d:%d. (Reason: '%s')", PlayerName(playerid), PlayerName(giveplayerid), month, day, year, hour, minute, second, params);
	ServerLog(string);
    }
   	else
    {
	format(string, sizeof(string), "That player is not active.");
	SystemMessage(playerid, string);
	}
    return 1;
}



dcmd_mute(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(tmp))
	{
	SystemMessage(playerid, "Correct usage: '/mute [playername] [reason]'");
	return 1;
	}
	new string[MAX_STRING];
	new second, minute, hour, day, month, year;
    giveplayerid = ReturnUser(tmp);
	if (IsPlayerConnected(giveplayerid))
	{
    format(string, sizeof(string), "You have been muted by Administrator %s. (Reason: '%s')", PlayerName(playerid), params);
    SystemMessage(giveplayerid, string);
	MutePlayer(giveplayerid, "");
    format(string, sizeof(string), "Player %s has been muted by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
    SystemMessageToAll(string);
	format(string, sizeof(string), "%s has been muted by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
	print(string);
	gettime(hour, minute, second);
	getdate(year, month, day);
	format(string, sizeof(string), "Player %s muted player %s on %d/%d/%d at %d:%d:%d. (Reason: '%s')", PlayerName(playerid), PlayerName(giveplayerid), month, day, year, hour, minute, second, params);
	ServerLog(string);
    }
   	else
    {
	format(string, sizeof(string), "That player is not active.");
	SystemMessage(playerid, string);
	}
    return 1;
}



dcmd_unmute(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(tmp))
	{
	SystemMessage(playerid, "Correct usage: '/unmute [playername] [reason]'");
	return 1;
	}
	new string[MAX_STRING];
	new second, minute, hour, day, month, year;
    giveplayerid = ReturnUser(tmp);
	if (IsPlayerConnected(giveplayerid))
	{
    format(string, sizeof(string), "You have been unmuted by Administrator %s. (Reason: '%s')", PlayerName(playerid), params);
    SystemMessage(giveplayerid, string);
	UnmutePlayer(giveplayerid, "");
    format(string, sizeof(string), "Player %s has been unmuted by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
    SystemMessageToAll(string);
	format(string, sizeof(string), "%s has been unmuted by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
	print(string);
	gettime(hour, minute, second);
	getdate(year, month, day);
	format(string, sizeof(string), "Player %s unmuted player %s on %d/%d/%d at %d:%d:%d. (Reason: '%s')", PlayerName(playerid), PlayerName(giveplayerid), month, day, year, hour, minute, second, params);
	ServerLog(string);
    }
   	else
    {
	format(string, sizeof(string), "That player is not active.");
	SystemMessage(playerid, string);
	}
    return 1;
}



dcmd_explodeplayer(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(tmp))
	{
	SystemMessage(playerid, "Correct usage: '/explodeplayer [playername] [reason]'");
	return 1;
	}
	new string[MAX_STRING];
	new second, minute, hour, day, month, year;
    giveplayerid = ReturnUser(tmp);
	if (IsPlayerConnected(giveplayerid))
	{
    format(string, sizeof(string), "You have been exploded by Administrator %s. (Reason: '%s')", PlayerName(playerid), params);
    SystemMessage(giveplayerid, string);
	ExplodePlayer(giveplayerid, "");
    format(string, sizeof(string), "Player %s has been exploded by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
    SystemMessageToAll(string);
	format(string, sizeof(string), "%s has been exploded by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
	print(string);
	gettime(hour, minute, second);
	getdate(year, month, day);
	format(string, sizeof(string), "Player %s exploded player %s on %d/%d/%d at %d:%d:%d. (Reason: '%s')", PlayerName(playerid), PlayerName(giveplayerid), month, day, year, hour, minute, second, params);
	ServerLog(string);
    }
   	else
    {
	format(string, sizeof(string), "That player is not active.");
	SystemMessage(playerid, string);
	}
    return 1;
}



dcmd_resetweapons(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(tmp))
	{
	SystemMessage(playerid, "Correct usage: '/resetweapons [playername] [reason]'");
	return 1;
	}
	new string[MAX_STRING];
	new second, minute, hour, day, month, year;
    giveplayerid = ReturnUser(tmp);
	if (IsPlayerConnected(giveplayerid))
	{
    format(string, sizeof(string), "Your all weapons have been reseted by Administrator %s. (Reason: '%s')", PlayerName(playerid), params);
    SystemMessage(giveplayerid, string);
	ResetPlayerWeapons(giveplayerid);
    format(string, sizeof(string), "Administrator %s reseted all weapons on player %s. (Reason: '%s')", PlayerName(playerid), PlayerName(giveplayerid), params);
    SystemMessageToAll(string);
	format(string, sizeof(string), "Administrator %s reseted all weapons on player %s. (Reason: '%s')", PlayerName(playerid), PlayerName(giveplayerid), params);
	print(string);
	gettime(hour, minute, second);
	getdate(year, month, day);
	format(string, sizeof(string), "Player %s reseted all weapons to player %s on %d/%d/%d at %d:%d:%d. (Reason: '%s')", PlayerName(playerid), PlayerName(giveplayerid), month, day, year, hour, minute, second, params);
	ServerLog(string);
    }
   	else
    {
	format(string, sizeof(string), "That player is not active.");
	SystemMessage(playerid, string);
	}
    return 1;
}



dcmd_restart(playerid, params[])
{
	#pragma unused params
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
	SystemMessageToAll("Current gamemode will restart in 5 seconds.");
	SetTimer("Restart", 5000, 0);
    return 1;
}



dcmd_lockserver(playerid, params[])
{
	#pragma unused params
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
	new string[MAX_STRING];
    IsServerLocked = true;
    format(string, sizeof(string), "Server has been locked by Administrator %s.", PlayerName(playerid));
   	SystemMessageToAll(string);
	print(string);
    return 1;
}



dcmd_unlockserver(playerid, params[])
{
	#pragma unused params
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
	new string[MAX_STRING];
	IsServerLocked = false;
    format(string, sizeof(string), "Server has been unlocked by Administrator %s.", PlayerName(playerid));
   	SystemMessageToAll(string);
	print(string);
    return 1;
}



dcmd_specplayer(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(tmp))
	{
	SystemMessage(playerid, "Correct usage: '/specplayer [playername]'");
	return 1;
	}
	new string[MAX_STRING];
	new second, minute, hour, day, month, year;
	giveplayerid = ReturnUser(tmp);
	if(IsPlayerConnected(giveplayerid))
	{
	TogglePlayerSpectating(playerid, 1);
	PlayerSpectatePlayer(playerid, giveplayerid);
	SetPlayerInterior(playerid, GetPlayerInterior(giveplayerid));
	gSpectateID[playerid] = giveplayerid;
	gSpectateType[playerid] = ADMIN_SPEC_TYPE_PLAYER;
	gettime(hour, minute, second);
	getdate(year, month, day);
	format(string, sizeof(string), "Player %s started spectating player %s on %d/%d/%d at %d:%d:%d.", PlayerName(playerid), PlayerName(giveplayerid), month, day, year, hour, minute, second);
	ServerLog(string);
	printf(string);
	}
   	else
    {
	format(string, sizeof(string), "That player is not active.");
	SystemMessage(playerid, string);
	}
	return 1;
}



dcmd_specvehicle(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
    new specvehicleid;
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
	if(!strlen(tmp))
	{
	SystemMessage(playerid, "Correct usage: '/specvehicle [vehicleid]'");
	return 1;
	}
	specvehicleid = strval(tmp);
	if(specvehicleid < MAX_VEHICLES)
	{
	TogglePlayerSpectating(playerid, 1);
	PlayerSpectateVehicle(playerid, specvehicleid);
	gSpectateID[playerid] = specvehicleid;
	gSpectateType[playerid] = ADMIN_SPEC_TYPE_VEHICLE;
	}
	else
	{
	SystemMessage(playerid, "Correct usage: '/specvehicle [vehicleid]'");
	}
	return 1;
}



dcmd_specoff(playerid, params[])
{
	#pragma unused params
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    TogglePlayerSpectating(playerid, 0);
    gSpectateID[playerid] = INVALID_PLAYER_ID;
    gSpectateType[playerid] = ADMIN_SPEC_TYPE_NONE;
	return 1;
}



dcmd_settime(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
    new time;
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
	if(!strlen(tmp) || !IsNumeric(tmp))
	{
	SendClientMessage(playerid, COLOR_SYSTEM, "Correct usage: '/settime [hour]'");
	return 1;
	}
	time = strval(tmp);
	SetWorldTime(time);
	SystemMessage(playerid, "New time setted.");
	return 1;
}



dcmd_cs(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
    new skin;
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
	if(!strlen(tmp) || !IsNumeric(tmp) || IsInvalidSkin(skin))
	{
	SystemMessage(playerid, "Correct usage: '/cs [skinid]'");
	return 1;
	}
	if(skin > 299 || skin < 0)
	{
	SystemMessage(playerid, "Pick a skin from 0-299.");
	return 1;
	}
	skin = strval(tmp);
	SetPlayerSkin(playerid, skin);
	SystemMessage(playerid, "Skin changed.");
	return 1;
}



dcmd_setweather(playerid, params[])
{
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(params)) return SystemMessage(playerid, "Correct usage: '/setweather [weatherid]'");
    new string[MAX_STRING];
    new index = 0;
    tmp = strtok(params, index);
    new toweatherid = strval(tmp);
    if(toweatherid < 41 && toweatherid > -1)
    {
	format(string, sizeof(string), "Setted new weather. (%d)", toweatherid);
    SystemMessage(playerid, string);
    format(string, sizeof(string), "weather %d", toweatherid);
	SendRconCommandEx(0, string);
	}
	else
	{
	SystemMessage(playerid, "Enter weather id from 0 to 40.");
	}
	return 1;
}



dcmd_setgravity(playerid, params[])
{
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(params)) return SystemMessage(playerid, "Correct usage: '/setgravity [gravity]'");
    new string[MAX_STRING];
    new index = 0;
    tmp = strtok(params, index);
    new Float:togravityid = floatstr(tmp);
    if(togravityid < 41 && togravityid > -1)
    {
	format(string, sizeof(string), "Setted new gravity. (%f)", togravityid);
    SystemMessage(playerid, string);
    format(string, sizeof(string), "gravity %f", togravityid);
	SendRconCommandEx(0, string);
	}
	else
	{
	SystemMessage(playerid, "Enter gravity id from 0 to 40.");
	}
	return 1;
}



dcmd_whois(playerid, params[])
{
    new index = 0;
	new playermoney;
    tmp = strtok(params, index);
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(tmp))
	{
	SystemMessage(playerid, "Correct usage: '/whois [playername]'");
	return 1;
	}
	new string[MAX_STRING];
	giveplayerid = ReturnUser(tmp);
	if (IsPlayerConnected(giveplayerid))
	{
	playermoney = GetPlayerMoney(giveplayerid);
	format(string, sizeof(string), "Whois (Name: %s, ID: %d, money: $%d)", PlayerName(giveplayerid), giveplayerid, playermoney);
	SystemMessage(playerid, string);
	}
	else
    {
	format(string, sizeof(string), "That player is not active.");
	SystemMessage(playerid, string);
	}
	return 1;
}



dcmd_skick(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(tmp))
	{
	SystemMessage(playerid, "Correct usage: '/skick [playername] [reason]'");
	return 1;
	}
	new string[MAX_STRING];
	new second, minute, hour, day, month, year;
    giveplayerid = ReturnUser(tmp);
	if (IsPlayerConnected(giveplayerid))
	{
    format(string, sizeof(string), "You have been silently kicked by Administrator %s. (Reason: '%s')", PlayerName(playerid), params);
    SystemMessage(giveplayerid, string);
	format(string, sizeof(string), "%s has been silently kicked by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
	print(string);
	gettime(hour, minute, second);
	getdate(year, month, day);
	format(string, sizeof(string), "Player %s silently kicked player %s on %d/%d/%d at %d:%d:%d. (Reason: '%s')", PlayerName(playerid), PlayerName(giveplayerid), month, day, year, hour, minute, second, params);
	ServerLog(string);
	KickPlayer(giveplayerid, "");
    }
   	else
    {
	format(string, sizeof(string), "That player is not active.");
	SystemMessage(playerid, string);
	}
    return 1;
}



dcmd_sban(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(tmp))
	{
	SystemMessage(playerid, "Correct usage: '/sban [playername] [reason]'");
	return 1;
	}
	new string[MAX_STRING];
	new second, minute, hour, day, month, year;
    giveplayerid = ReturnUser(tmp);
	if (IsPlayerConnected(giveplayerid))
	{
	format(string, sizeof(string), "You have been silently banned by Administrator %s. (Reason: '%s')", PlayerName(playerid), params);
	SystemMessage(giveplayerid, string);
    if(dini_Exists(KICKPORTAL))
    {
    new File:fhandle;
    new temp[256];
    fhandle = fopen(KICKPORTAL, io_append);
    format(temp, sizeof(temp), "\n%s", PlayerName(giveplayerid));
    fwrite(fhandle, temp);
    fclose(fhandle);
    }
	format(string, sizeof(string), "%s has been silently banned by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
	print(string);
	gettime(hour, minute, second);
	getdate(year, month, day);
	format(string, sizeof(string), "Player %s silently banned player %s on %d/%d/%d at %d:%d:%d. (Reason: '%s')", PlayerName(playerid), PlayerName(giveplayerid), month, day, year, hour, minute, second, params);
	ServerLog(string);
	KickPlayer(giveplayerid, "");
    }
   	else
    {
	format(string, sizeof(string), "That player is not active.");
	SystemMessage(playerid, string);
	}
    return 1;
}



dcmd_sbanip(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(tmp))
	{
	SystemMessage(playerid, "Correct usage: '/sbanip [playername] [reason]'");
	return 1;
	}
	new string[MAX_STRING];
	new second, minute, hour, day, month, year;
	giveplayerid = ReturnUser(tmp);
	if (IsPlayerConnected(giveplayerid))
	{
	format(string, sizeof(string), "You have been silently IP banned by Administrator %s. (Reason: '%s')", PlayerName(playerid), params);
	SendClientMessage(giveplayerid, COLOR_SYSTEM, string);
	format(string, sizeof(string), "%s has been silently IP banned by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
	print(string);
	gettime(hour, minute, second);
	getdate(year, month, day);
	format(string,sizeof(string),"Player %s silently IP banned player %s on %d/%d/%d at %d:%d:%d. (Reason: '%s')", PlayerName(playerid), PlayerName(giveplayerid), month, day, year, hour, minute, second, params);
	ServerLog(string);
	BanPlayer(giveplayerid, "");
    }
   	else
    {
	format(string, sizeof(string), "That player is not active.");
	SendClientMessage(playerid, COLOR_SYSTEM, string);
	}
    return 1;
}



dcmd_sfreeze(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(tmp))
	{
	SystemMessage(playerid, "Correct usage: '/sfreeze [playername] [reason]'");
	return 1;
	}
	new string[MAX_STRING];
	new second, minute, hour, day, month, year;
    giveplayerid = ReturnUser(tmp);
	if (IsPlayerConnected(giveplayerid))
	{
    format(string, sizeof(string), "You have been silently freezed by Administrator %s. (Reason: '%s')", PlayerName(playerid), params);
    SystemMessage(giveplayerid, string);
	FreezePlayer(giveplayerid, "");
	format(string, sizeof(string), "%s has been silently freezed by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
	print(string);
	gettime(hour, minute, second);
	getdate(year, month, day);
	format(string, sizeof(string), "Player %s silently freezed player %s on %d/%d/%d at %d:%d:%d. (Reason: '%s')", PlayerName(playerid), PlayerName(giveplayerid), month, day, year, hour, minute, second, params);
	ServerLog(string);
    }
   	else
    {
	format(string, sizeof(string), "That player is not active.");
	SystemMessage(playerid, string);
	}
    return 1;
}



dcmd_sunfreeze(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(tmp))
	{
	SystemMessage(playerid, "Correct usage: '/sunfreeze [playername] [reason]'");
	return 1;
	}
	new string[MAX_STRING];
	new second, minute, hour, day, month, year;
    giveplayerid = ReturnUser(tmp);
	if (IsPlayerConnected(giveplayerid))
	{
    format(string, sizeof(string), "You have been silently unfreezed by Administrator %s. (Reason: '%s')", PlayerName(playerid), params);
    SystemMessage(giveplayerid, string);
	UnfreezePlayer(giveplayerid, "");
	format(string, sizeof(string), "%s has been silently unfreezed by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
	print(string);
	gettime(hour, minute, second);
	getdate(year, month, day);
	format(string, sizeof(string), "Player %s silently unfreezed player %s on %d/%d/%d at %d:%d:%d. (Reason: '%s')", PlayerName(playerid), PlayerName(giveplayerid), month, day, year, hour, minute, second, params);
	ServerLog(string);
    }
   	else
    {
	format(string, sizeof(string), "That player is not active.");
	SystemMessage(playerid, string);
	}
    return 1;
}



dcmd_skillplayer(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(tmp))
	{
	SystemMessage(playerid, "Correct usage: '/skillplayer [playername] [reason]'");
	return 1;
	}
	new string[MAX_STRING];
	new second, minute, hour, day, month, year;
    giveplayerid = ReturnUser(tmp);
	if (IsPlayerConnected(giveplayerid))
	{
    format(string, sizeof(string), "You have been silently killed by Administrator %s. (Reason: '%s')", PlayerName(playerid), params);
    SystemMessage(giveplayerid, string);
	KillPlayer(giveplayerid, "");
	format(string, sizeof(string), "%s has been silently killed by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
	print(string);
	gettime(hour, minute, second);
	getdate(year, month, day);
	format(string, sizeof(string), "Player %s silently killed player %s on %d/%d/%d at %d:%d:%d. (Reason: '%s')", PlayerName(playerid), PlayerName(giveplayerid), month, day, year, hour, minute, second, params);
	ServerLog(string);
    }
   	else
    {
	format(string, sizeof(string), "That player is not active.");
	SystemMessage(playerid, string);
	}
    return 1;
}



dcmd_sjail(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(tmp))
	{
	SystemMessage(playerid, "Correct usage: '/sjail [playername] [reason]'");
	return 1;
	}
	new string[MAX_STRING];
	new second, minute, hour, day, month, year;
    giveplayerid = ReturnUser(tmp);
	if (IsPlayerConnected(giveplayerid))
	{
    format(string, sizeof(string), "You have been silently jailed by Administrator %s. (Reason: '%s')", PlayerName(playerid), params);
    SystemMessage(giveplayerid, string);
	JailPlayer(giveplayerid, "");
	format(string, sizeof(string), "%s has been silently jailed by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
	print(string);
	gettime(hour, minute, second);
	getdate(year, month, day);
	format(string, sizeof(string), "Player %s silently jailed player %s on %d/%d/%d at %d:%d:%d. (Reason: '%s')", PlayerName(playerid), PlayerName(giveplayerid), month, day, year, hour, minute, second, params);
	ServerLog(string);
    }
   	else
    {
	format(string, sizeof(string), "That player is not active.");
	SystemMessage(playerid, string);
	}
    return 1;
}



dcmd_sunjail(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(tmp))
	{
	SystemMessage(playerid, "Correct usage: '/sunjail [playername] [reason]'");
	return 1;
	}
	new string[MAX_STRING];
	new second, minute, hour, day, month, year;
    giveplayerid = ReturnUser(tmp);
	if (IsPlayerConnected(giveplayerid))
	{
    format(string, sizeof(string), "You have been silently unjailed by Administrator %s. (Reason: '%s')", PlayerName(playerid), params);
    SystemMessage(giveplayerid, string);
	UnjailPlayer(giveplayerid, "");
	format(string, sizeof(string), "%s has been silently unjailed by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
	print(string);
	gettime(hour, minute, second);
	getdate(year, month, day);
	format(string, sizeof(string), "Player %s silently unjailed player %s on %d/%d/%d at %d:%d:%d. (Reason: '%s')", PlayerName(playerid), PlayerName(giveplayerid), month, day, year, hour, minute, second, params);
	ServerLog(string);
    }
   	else
    {
	format(string, sizeof(string), "That player is not active.");
	SystemMessage(playerid, string);
	}
    return 1;
}



dcmd_sslap(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(tmp))
	{
	SystemMessage(playerid, "Correct usage: '/sslap [playername] [reason]'");
	return 1;
	}
	new string[MAX_STRING];
	new second, minute, hour, day, month, year;
    giveplayerid = ReturnUser(tmp);
	if (IsPlayerConnected(giveplayerid))
	{
    format(string, sizeof(string), "You have been silently slapped by Administrator %s. (Reason: '%s')", PlayerName(playerid), params);
    SystemMessage(giveplayerid, string);
	SlapPlayer(giveplayerid, "");
	format(string, sizeof(string), "%s has been silently slapped by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
	print(string);
	gettime(hour, minute, second);
	getdate(year, month, day);
	format(string, sizeof(string), "Player %s silently slapped player %s on %d/%d/%d at %d:%d:%d. (Reason: '%s')", PlayerName(playerid), PlayerName(giveplayerid), month, day, year, hour, minute, second, params);
	ServerLog(string);
    }
   	else
    {
	format(string, sizeof(string), "That player is not active.");
	SystemMessage(playerid, string);
	}
    return 1;
}



dcmd_smute(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(tmp))
	{
	SystemMessage(playerid, "Correct usage: '/smute [playername] [reason]'");
	return 1;
	}
	new string[MAX_STRING];
	new second, minute, hour, day, month, year;
    giveplayerid = ReturnUser(tmp);
	if (IsPlayerConnected(giveplayerid))
	{
    format(string, sizeof(string), "You have been silently muted by Administrator %s. (Reason: '%s')", PlayerName(playerid), params);
    SystemMessage(giveplayerid, string);
	MutePlayer(giveplayerid, "");
	format(string, sizeof(string), "%s has been silently muted by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
	print(string);
	gettime(hour, minute, second);
	getdate(year, month, day);
	format(string, sizeof(string), "Player %s silently muted player %s on %d/%d/%d at %d:%d:%d. (Reason: '%s')", PlayerName(playerid), PlayerName(giveplayerid), month, day, year, hour, minute, second, params);
	ServerLog(string);
    }
   	else
    {
	format(string, sizeof(string), "That player is not active.");
	SystemMessage(playerid, string);
	}
    return 1;
}



dcmd_sunmute(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(tmp))
	{
	SystemMessage(playerid, "Correct usage: '/sunmute [playername] [reason]'");
	return 1;
	}
	new string[MAX_STRING];
	new second, minute, hour, day, month, year;
    giveplayerid = ReturnUser(tmp);
	if (IsPlayerConnected(giveplayerid))
	{
    format(string, sizeof(string), "You have been silently unmuted by Administrator %s. (Reason: '%s')", PlayerName(playerid), params);
    SystemMessage(giveplayerid, string);
	UnmutePlayer(giveplayerid, "");
	format(string, sizeof(string), "%s has been silently unmuted by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
	print(string);
	gettime(hour, minute, second);
	getdate(year, month, day);
	format(string, sizeof(string), "Player %s silently unmuted player %s on %d/%d/%d at %d:%d:%d. (Reason: '%s')", PlayerName(playerid), PlayerName(giveplayerid), month, day, year, hour, minute, second, params);
	ServerLog(string);
    }
   	else
    {
	format(string, sizeof(string), "That player is not active.");
	SystemMessage(playerid, string);
	}
    return 1;
}



dcmd_sexplodeplayer(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(tmp))
	{
	SystemMessage(playerid, "Correct usage: '/sexplodeplayer [playername] [reason]'");
	return 1;
	}
	new string[MAX_STRING];
	new second, minute, hour, day, month, year;
    giveplayerid = ReturnUser(tmp);
	if (IsPlayerConnected(giveplayerid))
	{
    format(string, sizeof(string), "You have been silently exploded by Administrator %s. (Reason: '%s')", PlayerName(playerid), params);
    SystemMessage(giveplayerid, string);
	ExplodePlayer(giveplayerid, "");
	format(string, sizeof(string), "%s has been silently exploded by Administrator %s. (Reason: '%s')", PlayerName(giveplayerid), PlayerName(playerid), params);
	print(string);
	gettime(hour, minute, second);
	getdate(year, month, day);
	format(string, sizeof(string), "Player %s silently exploded player %s on %d/%d/%d at %d:%d:%d. (Reason: '%s')", PlayerName(playerid), PlayerName(giveplayerid), month, day, year, hour, minute, second, params);
	ServerLog(string);
    }
   	else
    {
	format(string, sizeof(string), "That player is not active.");
	SystemMessage(playerid, string);
	}
    return 1;
}



dcmd_sresetweapons(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(tmp))
	{
	SystemMessage(playerid, "Correct usage: '/sresetweapons [playername] [reason]'");
	return 1;
	}
	new string[MAX_STRING];
	new second, minute, hour, day, month, year;
    giveplayerid = ReturnUser(tmp);
	if (IsPlayerConnected(giveplayerid))
	{
    format(string, sizeof(string), "Your all weapons have been silently reseted by Administrator %s. (Reason: '%s')", PlayerName(playerid), params);
    SystemMessage(giveplayerid, string);
	ResetPlayerWeapons(giveplayerid);
	format(string, sizeof(string), "Administrator %s silently reseted all weapons on player %s. (Reason: '%s')", PlayerName(playerid), PlayerName(giveplayerid), params);
	print(string);
	gettime(hour, minute, second);
	getdate(year, month, day);
	format(string, sizeof(string), "Player %s silently reseted all weapons to player %s on %d/%d/%d at %d:%d:%d. (Reason: '%s')", PlayerName(playerid), PlayerName(giveplayerid), month, day, year, hour, minute, second, params);
	ServerLog(string);
    }
   	else
    {
	format(string, sizeof(string), "That player is not active.");
	SystemMessage(playerid, string);
	}
    return 1;
}



dcmd_createmoney(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
    new createmoney;
    new string[MAX_STRING];
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
	if(!strlen(params))
	{
	SystemMessage(playerid, "Correct usage: '/createmoney [amount]'");
	return 1;
	}
	if (createmoney < 0)
	{
    SystemMessage(playerid, "Correct usage: '/createmoney [amount]'");
    return 1;
	}
	createmoney = strval(tmp);
    format(string, sizeof(string), "You created $%d.", createmoney);
    SystemMessage(playerid, string);
    GivePlayerMoney(playerid, createmoney);
    return 1;
}



dcmd_deletemoney(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
    new deletemoney;
    new string[MAX_STRING];
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
	if(!strlen(params))
	{
	SystemMessage(playerid, "Correct usage: '/deletemoney [amount]'");
	return 1;
	}
	if (deletemoney < 0)
	{
    SystemMessage(playerid, "Correct usage: '/deletemoney [amount]'");
    return 1;
	}
	if (deletemoney > GetPlayerMoney(playerid))
	{
    SystemMessage(playerid, "You don't have that much money to delete.");
	return 1;
	}
	deletemoney = strval(tmp);
    format(string, sizeof(string), "You deleted $%d.", deletemoney);
    SystemMessage(playerid, string);
    GivePlayerMoney(playerid, -deletemoney);
    return 1;
}



dcmd_srestart(playerid, params[])
{
	#pragma unused params
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
	SystemMessage(playerid, "Current server gamemode will now silently restart in 5 seconds.");
	SetTimer("Restart", 5000, 0);
    return 1;
}



dcmd_slockserver(playerid, params[])
{
	#pragma unused params
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    IsServerLocked = true;
	SystemMessage(playerid, "You have silently locked server.");
    return 1;
}



dcmd_sunlockserver(playerid, params[])
{
	#pragma unused params
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
	IsServerLocked = false;
    SystemMessage(playerid, "You have silently unlocked server.");
    return 1;
}



dcmd_report(playerid, params[])
{
	new index = 0;
    tmp = strtok(params, index);
    if(!strlen(tmp))
	{
	SystemMessage(playerid, "Correct usage: '/report [playername] [reason]'");
	return 1;
	}
	new string[MAX_STRING];
	new second, minute, hour, day, month, year;
    giveplayerid = ReturnUser(tmp);
	if (IsPlayerConnected(giveplayerid))
	{
    format(string, sizeof(string), "Report was sent to currently administrators/moderators online.");
    SystemMessage(giveplayerid, string);
	format(string, sizeof(string), "Report: %s has reported %s. (Reason: '%s')", PlayerName(playerid), PlayerName(giveplayerid), params);
    SendMessageToAdministrators(string);
	print(string);
	gettime(hour, minute, second);
	getdate(year, month, day);
	format(string, sizeof(string), "Player %s reported player %s on %d/%d/%d at %d:%d:%d. (Reason: '%s')", PlayerName(playerid), PlayerName(giveplayerid), month, day, year, hour, minute, second, params);
	ServerLog(string);
    }
   	else
    {
	format(string, sizeof(string), "That player is not active.");
	SystemMessage(playerid, string);
	}
    return 1;
}



dcmd_changemode(playerid, params[])
{
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
	if(!strlen(params)) return SystemMessage(playerid, "Correct usage: '/changemode [gamemodename]'");
    new string[MAX_STRING];
    format(string, sizeof(string), "Changing gamemode to %s.amx", params);
    SystemMessage(playerid, string);
    format(string, sizeof(string), "changemode %s", params);
	SendRconCommandEx(2000, string);
	return 1;
}



dcmd_reloadbans(playerid, params[])
{
    #pragma unused params
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    new string[MAX_STRING];
    format(string, sizeof(string), "samp.ban log reseted.");
    SystemMessage(playerid, string);
    format(string, sizeof(string), "reloadbans");
	SendRconCommandEx(0, string);
	return 1;
}



dcmd_reloadlog(playerid, params[])
{
    #pragma unused params
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    new string[MAX_STRING];
    format(string, sizeof(string), "server_log.txt log reseted.");
    SystemMessage(playerid, string);
    format(string, sizeof(string), "reloadlog");
	SendRconCommandEx(0, string);
	return 1;
}



dcmd_players(playerid, params[])
{
    #pragma unused params
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    new string[MAX_STRING];
	SendRconCommand("players");
	for(new i = 0; i < MAX_PLAYERS; i++)
	{
	if(IsPlayerConnected(i))
    {
	SystemMessageEx(playerid, 0, "     ID     Name   Ping   IP");
	format(string, sizeof(string), "     %d     %s     %d     %s", i, PlayerName(i), PlayerPing(i), PlayerIp(i));
	SystemMessageEx(playerid, 2000, string);
	}
	}
	return 1;
}



dcmd_loadfs(playerid, params[])
{
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(params)) return SystemMessage(playerid, "Correct usage: '/loadfs [filterscriptname]'");
    new string[MAX_STRING];
	format(string, sizeof(string), "Filterscript %s.amx loaded.", params);
    SystemMessage(playerid, string);
    format(string, sizeof(string), "loadfs %s", params);
	SendRconCommandEx(0, string);
	return 1;
}



dcmd_unloadfs(playerid, params[])
{
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
	if(!strlen(params)) return SystemMessage(playerid, "Correct usage: '/unloadfs [filterscriptname]'");
    new string[MAX_STRING];
    format(string, sizeof(string), "Filterscript %s.amx unloaded.", params);
    SystemMessage(playerid, string);
    format(string, sizeof(string), "unloadfs %s", params);
	SendRconCommandEx(0, string);
	return 1;
}



dcmd_reloadfs(playerid, params[])
{
	if (!IsPlayerAdmin(playerid))
	{
	SystemMessage(playerid, "You are not Administrator.");
	return 1;
	}
    if(!strlen(params)) return SystemMessage(playerid, "Correct usage: '/reloadfs [filterscriptname]'");
    new string[MAX_STRING];
    format(string, sizeof(string), "Filterscript %s.amx reloaded.", params);
    SystemMessage(playerid, string);
    format(string, sizeof(string), "reloadfs %s", params);
	SendRconCommandEx(0, string);
	return 1;
}



public Restart()
{
    GameModeExit();
}



stock SystemMessage(playerid, message[])
{
    if ((IsPlayerConnected(playerid)) && (strlen(message) > 0))
	{
    SendClientMessage(playerid, COLOR_SYSTEM, message);
    }
    return 1;
}



stock SystemMessageEx(playerid, time, message[])
{
    if ((IsPlayerConnected(playerid)) && (strlen(message) > 0))
	{
	Wait(time);
    SystemMessage(playerid, message);
    }
    return 1;
}



stock SystemMessageToAll(message[])
{
    for(new i=0; i<MAX_PLAYERS; i++)
	{
    if ((IsPlayerConnected(i)) && (strlen(message) > 0))
	{
    SendClientMessage(i, COLOR_SYSTEM, message);
    }
    }
    return 1;
}



stock SendMessageToAdministrators(string[])
{
   	for (new i = 0; i < MAX_PLAYERS; i++)
	{
	if (IsPlayerConnected(i))
	{
    if (IsPlayerAdmin(i))
	{
	SystemMessage(i, string);
	}
	}
	}
	return 1;
}



stock PlayerName(playerid)
{
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid, name, MAX_PLAYER_NAME);
    return name;
}



stock PlayerIp(playerid)
{
   	new ip[16];
	GetPlayerIp(playerid, ip, sizeof(ip));
	return ip;
}



stock PlayerPing(playerid)
{
    if (!IsPlayerConnected(playerid)) return 0;
	new ping = GetPlayerPing(playerid);
	return ping;
}



stock ServerLog(message[])
{
    new File:fhnd;
    if (fexist("ServerLog.log.txt"))
	fhnd = fopen("ServerLog.log.txt", io_append);
	else
    fhnd = fopen("ServerLog.log.txt", io_write);
    fwrite(fhnd, message);
    fputchar(fhnd, 13);
    fputchar(fhnd, 10);
    fclose(fhnd);
}



stock KickPlayer(playerid, reason[])
{
    if (IsPlayerConnected(playerid))
	{
    SystemMessage(playerid, reason);
    TogglePlayerControllable(playerid, 0);
    Kick(playerid);
    }
	return 1;
}



stock BanPlayer(playerid, reason[])
{
    if (IsPlayerConnected(playerid))
	{
    SystemMessage(playerid, reason);
    TogglePlayerControllable(playerid, 0);
    Ban(playerid);
    }
	return 1;
}



stock FreezePlayer(playerid, reason[])
{
    if (IsPlayerConnected(playerid))
	{
    SystemMessage(playerid, reason);
    TogglePlayerControllable(playerid, 0);
    }
	return 1;
}



stock UnfreezePlayer(playerid, reason[])
{
    if (IsPlayerConnected(playerid))
	{
    SystemMessage(playerid, reason);
    TogglePlayerControllable(playerid, 1);
    }
	return 1;
}



stock KillPlayer(playerid, reason[])
{
    if (IsPlayerConnected(playerid))
	{
    SystemMessage(playerid, reason);
    SetPlayerHealth(playerid, 0.0);
    }
	return 1;
}



stock JailPlayer(playerid, reason[])
{
    if (IsPlayerConnected(playerid))
	{
	SystemMessage(playerid, reason);
	SetPlayerFacingAngle(playerid, 177.0350);
	SetCameraBehindPlayer(playerid);
	SetPlayerInterior(playerid, 3);
	SetPlayerPos(playerid, 197.7029,174.8801,1003.0234);
    }
	return 1;
}



stock UnjailPlayer(playerid, reason[])
{
    if (IsPlayerConnected(playerid))
	{
	SystemMessage(playerid, reason);
	SpawnPlayer(playerid);
    }
	return 1;
}



stock SlapPlayer(playerid, reason[])
{
    if (IsPlayerConnected(playerid))
	{
	SystemMessage(playerid, reason);
	new Float:phealth;
	GetPlayerHealth(playerid, phealth);
	SetPlayerHealth(playerid, phealth-20);
    }
	return 1;
}



stock MutePlayer(playerid, reason[])
{
    if (IsPlayerConnected(playerid))
	{
	SystemMessage(playerid, reason);
	IsPlayerMuted[playerid] = true;
    }
	return 1;
}



stock UnmutePlayer(playerid, reason[])
{
    if (IsPlayerConnected(playerid))
	{
	SystemMessage(playerid, reason);
	IsPlayerMuted[playerid] = false;
    }
	return 1;
}



stock ExplodePlayer(playerid, reason[])
{
    if (IsPlayerConnected(playerid))
	{
	SystemMessage(playerid, reason);
	new Float:XPOS;
	new Float:YPOS;
	new Float:ZPOS;
	GetPlayerPos(playerid, XPOS, YPOS, ZPOS);
	CreateExplosion(XPOS, YPOS, ZPOS, 3, 5);
    }
	return 1;
}



stock fsearch(filename[], search[], bool:caps = false)
{
    new File:fhandle = fopen(filename, io_read);
	new temp[255];
	while(fread(fhandle, temp))
	{
	StripNewLine(temp);
	if(equal(temp, search, caps)) return true;
	}
	return false;
}



stock IsNumeric(const string[])
{
	for (new i = 0, j = strlen(string); i < j; i++)
	if (string[i] > '9' || string[i] < '0')
    return 0;
	return 1;
}



ReturnUser(text[], playerid = INVALID_PLAYER_ID)
{
	new pos = 0;
	while (text[pos] < 0x21)
	{
	if (text[pos] == 0) return INVALID_PLAYER_ID;
	pos++;
	}
	new userid = INVALID_PLAYER_ID;
	if (IsNumeric(text[pos]))
	{
	userid = strval(text[pos]);
	if (userid >=0 && userid < MAX_PLAYERS)
	{
	if(!IsPlayerConnected(userid))
	{
	userid = INVALID_PLAYER_ID;
	}
	else
	{
	return userid;
	}
	}
	}
	new len = strlen(text[pos]);
	new count = 0;
	new name[MAX_PLAYER_NAME];
	for (new i = 0; i < MAX_PLAYERS; i++)
	{
	if (IsPlayerConnected(i))
	{
	GetPlayerName(i, name, sizeof (name));
	if (strcmp(name, text[pos], true, len) == 0)
	{
	if (len == strlen(name))
	{
	return i;
	}
	else
	{
	count++;
	userid = i;
	}
	}
	}
	}
	if (count != 1)
	{
	if (playerid != INVALID_PLAYER_ID)
	{
	if (count)
	{
	SendClientMessage(playerid, COLOR_SYSTEM, "There are multiple users, enter full playername.");
	}
	else
	{
	SendClientMessage(playerid, COLOR_SYSTEM, "Playername not found.");
	}
	}
	userid = INVALID_PLAYER_ID;
	}
	return userid;
}



stock IsInvalidSkin(skinid)
{
	#define	MAX_BAD_SKINS   22
	new badSkins[MAX_BAD_SKINS] =
	{
	3, 4, 5, 6, 8, 42, 65, 74, 86,
	119, 149, 208, 265, 266, 267,
	268, 269, 270, 271, 272, 273, 289
	};
	for (new i = 0; i < MAX_BAD_SKINS; i++)
	{
    if (skinid == badSkins[i]) return true;
	}
	return false;
}



stock Wait(time)
{
    new stamp = tickcount();
    while (tickcount() - stamp < time){}
    return 1;
}



stock SendRconCommandEx(time, command[])
{
	Wait(time);
    SendRconCommand(command);
	return 1;
}
////////////////////////////////////////////////////////////////////////////////
///////////////////////////[DEFINES]////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
//------------------NEW STUFFS---------//////////////////////////////////////////
static gTeam[MAX_PLAYERS]; // Tracks the team assignment for each player
//new name[MAX_PLAYER_NAME];
new gPlayerClass[MAX_PLAYERS];
new offerweed[MAX_PLAYERS];
new haveweed[MAX_PLAYERS];
new jailed[MAX_PLAYERS];
new gPlayerUsingLoopingAnim[MAX_PLAYERS];
new gPlayerAnimLibsPreloaded[MAX_PLAYERS];
new Text:txtAnimHelper;
//-------------------------------------------------

// ********** INTERNAL FUNCTIONS **********

IsKeyJustDown(key, newkeys, oldkeys)
{
	if((newkeys & key) && !(oldkeys & key)) return 1;
	return 0;
}

//-------------------------------------------------

OnePlayAnim(playerid,animlib[],animname[], Float:Speed, looping, lockx, locky, lockz, lp)
{
	ApplyAnimation(playerid, animlib, animname, Speed, looping, lockx, locky, lockz, lp);
}

//-------------------------------------------------

LoopingAnim(playerid,animlib[],animname[], Float:Speed, looping, lockx, locky, lockz, lp)
{
    gPlayerUsingLoopingAnim[playerid] = 1;
    ApplyAnimation(playerid, animlib, animname, Speed, looping, lockx, locky, lockz, lp);
    TextDrawShowForPlayer(playerid,txtAnimHelper);
}

//-------------------------------------------------

StopLoopingAnim(playerid)
{
	gPlayerUsingLoopingAnim[playerid] = 0;
    ApplyAnimation(playerid, "CARRY", "crry_prtial", 4.0, 0, 0, 0, 0, 0);
}

//-------------------------------------------------

PreloadAnimLib(playerid, animlib[])
{
	ApplyAnimation(playerid,animlib,"null",0.0,0,0,0,0,0);
}

//-------------------------------------------------

//GANG ZONES//////////////////
enum GangZone
{
	gzID,
	Float: gzPos[4],
	gzColor
}
new GangZones[][ GangZone ] = {
	{ INVALID_GANG_ZONE, {2215.0, -1888.0, 2647.0, -1613.0}, 0x7FFF00AA },
	{ INVALID_GANG_ZONE, {2216.0, -2155.0, 2842.0, -1895.0}, 0x228B22AA },
	{ INVALID_GANG_ZONE, {1930.0, -1895.0, 2373.0, -1143.0}, 0x9400D3BE },
	{ INVALID_GANG_ZONE, {1936.0, -1750.0, 2210.0, -1612.0}, 0x9400D3BE },
	{ INVALID_GANG_ZONE, {1854.0, -1612.0, 1930.0, -1146.0}, 0x9400D3BE },
	{ INVALID_GANG_ZONE, {2379.0, -1611.0, 2914.0, -1155.0}, 0xFFD700BE },
	{ INVALID_GANG_ZONE, {2640.0, -1891.0, 2917.0, -1606.0}, 0x7FFF00AA },
	{ INVALID_GANG_ZONE, {1643.0, -2191.0, 2210.0, -1916.0}, 0x00FFFFAA },
	{ INVALID_GANG_ZONE, {1689.0, -1930.0, 1917.0, -1726.0}, 0x00FFFFAA },
	{ INVALID_GANG_ZONE, {1378.0, -1884.0, 1682.0, -1593.0}, 0xF8F8FFAA },
	{ INVALID_GANG_ZONE, {1059.0, -2362.0, 1622.0, -1880.0}, 0xB2180EAA },
	{ INVALID_GANG_ZONE, {800.0, -1316.0, 1164.0, -948.0}, 0x006400AA }
};

////////////////------------FINISH-------------------///////////////////////////
#define PayDay_Amount 1050
//Color Defines
#define COLOR_GREY 0xAFAFAFAA
#define COLOR_GREEN 0x33AA33AA
#define COLOR_MARON 0x80800096
#define COLOR_BLACK 0x00000000
#define COLOR_PURPLE 0xC2A2DAAA
#define COLOR_CYAN 0xFF8282AA
#define COLOR_RED 0xAA3333AA
#define COLOR_YELLOW 0xFFFF00AA
#define COLOR_PINK 0xFF66FFAA
#define COLOR_BLUE 0x0000BBAA
#define COLOR_WHITE 0xFFFFFFAA
#define COLOR_LIGHTBLUE 0x33CCFFAA
#define COLOR_DARKRED 0x660000AA
#define COLOR_ORANGE 0xFF9900AA
#define COLOR_AZTECA 0x00FFFFFF
#define COLOR_MAFIA 0x790000FF
#define COLOR_DEALERS 0x717100FF
#define COLOR_TAXI 0xFF8000FF
#define COLOR_AGENTS 0x000075FF
#define COLOR_ME[DIC 0xFF3C3CFF
#define COLOR_FIREMAN 0x804040FF
#define COLOR_TRIADS 0xFFFFFFFF
#define COLOR_CIVS 0x2B2BFFFF
////////////////////////////////////////////////////////////////////////////////
//-------------------[TEAM DEFINES]-------------------------------------------//
#define TEAM_GSF 1
#define TEAM_SBF 2
#define TEAM_TDF 3
#define TEAM_IB 4
#define TEAM_JB 5
#define TEAM_GPB 6
#define TEAM_VAGOS 7
#define TEAM_VLA 8
#define TEAM_MAFIA 9
#define TEAM_DEALERS 10
#define TEAM_TAXI 11
#define TEAM_AGENT 12
#define TEAM_MEDICS 13
#define TEAM_FIREMAN 14
#define TEAM_CIVS 15
#define TEAM_TRIADS 16
////////////////////////////////////////////////////////////////////////////////
#define COLOR_GSF 0x00EA00FF
#define COLOR_SBF 0x008040FF
#define COLOR_TDF 0x004F00FF
#define COLOR_IB 0xD700D7FF
#define COLOR_JB 0xA600A6FF
#define COLOR_GPB 0x5B005BFF
#define COLOR_VAGOS 0xF9F900FF
#define COLOR_VLA 0x06FFFFFF
#define COLOR_MAFIAs 0x910000FF
#define COLOR_DEALER 0x808040FF
#define COLOR_TAXIs 0xFF8040FF
#define COLOR_AGENTs 0x0000A0FF
#define COLOR_MEDIC 0xFF0000FF
#define COLOR_FIREMANs 0xFF0000FF
#define COLOR_CIV 0x2B2BFFFF
#define COLOR_TRIAD 0xFFFFFFFF
////////////////////////////////////////////////////////////////////////////////
////////////////--------PRAFMA CONTENTS-----------/////////////////////
#pragma tabsize 0
#pragma unused strtok
#pragma unused ret_memcpy
#define PayDay_Amount 3000
///////////////-----------FINSIH-----------------///////////////////////////////
//////////////--------FORWARD STUFFs-------------///////////////////////////////
forward MoneyGrubScoreUpdate();
forward Givecashdelaytimer(playerid);
forward PayDay(playerid);
////////////////////////////////////////////////////////////////////////////////

// This is a comment
// uncomment the line below if you want to write a filterscript
//#define FILTERSCRIPT

#if defined FILTERSCRIPT

public OnFilterScriptInit()
{
	print("\n--------------------------------------");
	print(" lsrpg 2.0 by ryder");
	print("--------------------------------------\n");
	return 1;
}

public OnFilterScriptExit()
{
	return 1;
}

#else

main()
{
	print("\n----------------------------------");
	print(" lsrpg 2.0");
	print("----------------------------------\n");
}

#endif

public OnGameModeInit()
{

for( new gz = 0; gz < sizeof( GangZones ); gz ++ )
GangZones[ gz ][ gzID ] = GangZoneCreate( GangZones[ gz ][ gzPos ][ 0 ], GangZones[ gz ][ gzPos ][ 1 ], GangZones[ gz ][ gzPos ][ 2 ], GangZones[ gz ][ gzPos ][ 3 ]);
AllowInteriorWeapons(1);
ShowNameTags(1);
ShowPlayerMarkers(1);
LimitGlobalChatRadius(20);
SetGameModeText("™Los Santos RPG™ ");
/////////--------------------------------------- PLAYERS AND VEHICLES ---------------------------------------
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
//GSF
AddPlayerClassEx(TEAM_GSF,107,2504.8635,-1681.5569,13.5469,43.6004,5,1,22,1000,0,0); // GROVE 1         0
AddPlayerClassEx(TEAM_GSF,105,2507.7454,-1656.2866,13.5938,140.7148,5,1,22,1000,0,0); // GROVE 2        1
AddPlayerClassEx(TEAM_GSF,106,2471.9355,-1686.7643,13.5078,318.0416,5,1,22,1000,0,0); // GROVE 3         2
AddPlayerClassEx(TEAM_GSF,195,2402.1687,-1720.7233,13.6129,173.4200,5,1,22,1000,0,0); // GROVE denise      3
AddPlayerClassEx(TEAM_GSF,269,2520.0242,-1678.6260,14.9160,89.9041,5,1,22,1000,0,0); // smoke             4
AddPlayerClassEx(TEAM_GSF,270,2521.0171,-1660.8926,14.5228,89.5674,5,1,22,1000,0,0); // sweet            5
AddPlayerClassEx(TEAM_GSF,271,2486.7397,-1648.8441,13.7364,182.6049,5,1,22,1000,0,0); // ryder             6
// SBF
AddPlayerClassEx(TEAM_SBF,105,2757.3625,-1973.6833,13.5491,249.2766,5,1,22,1000,0,0); // SBF             7
AddPlayerClassEx(TEAM_SBF,106,2781.1648,-1969.7759,13.5469,95.1883,5,1,22,1000,0,0); // SBF            8
//TDF
AddPlayerClassEx(TEAM_TDF,107,816.9675,-1102.7007,25.7918,270.0667,5,1,22,1000,0,0); // TDF           9
AddPlayerClassEx(TEAM_TDF,106,816.9675,-1102.7007,25.7918,270.0667,5,1,22,1000,0,0); // TDF          10
//IB
AddPlayerClassEx(TEAM_IB,102,2148.9341,-1590.6155,14.3516,229.8826,5,1,22,1000,0,0); // IB           11
AddPlayerClassEx(TEAM_IB,104,2154.8113,-1590.1639,14.3404,211.3958,5,1,22,1000,0,0); // IB           12
AddPlayerClassEx(TEAM_IB,25,2154.8113,-1590.1639,14.3404,211.3958,5,1,22,1000,0,0); // IB leader       13
//JB
AddPlayerClassEx(TEAM_JB,103,2222.3970,-1162.3694,25.7331,0.6266,5,1,22,1000,0,0); // JB         14
AddPlayerClassEx(TEAM_JB,104,2222.3857,-1161.3032,25.7331,0.6266,5,1,22,1000,0,0); // JB       15
AddPlayerClassEx(TEAM_JB,21,2222.3857,-1161.3032,25.7331,0.6266,5,1,22,1000,0,0); // JB leader         16
//GPB
AddPlayerClassEx(TEAM_GPB,104,1893.6083,-1267.6418,13.5483,301.6991,5,1,22,1000,0,0); // GPB         17
AddPlayerClassEx(TEAM_GPB,102,1896.9882,-1245.1707,14.6015,332.4061,5,1,22,1000,0,0); // GPB        18
AddPlayerClassEx(TEAM_GPB,22,1896.9882,-1245.1707,14.6015,332.4061,5,1,22,1000,0,0); // GPB leader          19
//VAGOS
AddPlayerClassEx(TEAM_VAGOS,108,2812.9231,-1181.1145,25.2773,261.4674,5,1,22,1000,0,0); // VA{GOS        20
AddPlayerClassEx(TEAM_VAGOS,109,2828.1106,-1176.8861,24.9823,176.8666,5,1,22,1000,0,0); // VA{GOS        21
AddPlayerClassEx(TEAM_VAGOS,110,2808.3313,-1186.7542,25.3492,283.0876,5,1,22,1000,0,0); // VA{GOS        22
AddPlayerClassEx(TEAM_VAGOS,67,2808.3313,-1186.7542,25.3492,283.0876,5,1,22,1000,0,0); // VA{GOS leader        23
//VLA
AddPlayerClassEx(TEAM_VLA,114,1875.2196,-2032.3409,13.5469,262.6701,5,1,22,1000,0,0); // VLA         24
AddPlayerClassEx(TEAM_VLA,115,1882.6469,-2015.7955,13.5469,172.7425,5,1,22,1000,0,0); // VLA      25
AddPlayerClassEx(TEAM_VLA,116,1891.2505,-2028.2875,13.5469,77.7291,5,1,22,1000,0,0); // VLA       26
AddPlayerClassEx(TEAM_VLA,292,1803.9237,-2120.7065,13.5543,348.7318,4,1,22,1000,0,0); // VLA caesar        27
//MAFIA
AddPlayerClassEx(TEAM_MAFIA,112,1133.0685,-2036.7955,69.0078,271.8445,5,1,22,1000,0,0); // MAFIA        28
AddPlayerClassEx(TEAM_MAFIA,125,1128.4366,-2030.7986,69.5522,229.9180,5,1,22,1000,0,0); // MAFIA      29
AddPlayerClassEx(TEAM_MAFIA,127,1142.0017,-2034.1729,69.3950,219.2188,5,1,22,1000,0,0); // MAFIA       30
AddPlayerClassEx(TEAM_MAFIA,113,1142.0017,-2034.1729,69.3950,219.2188,5,1,22,1000,0,0); // MAFIA leader      31
//DEALERS
AddPlayerClassEx(TEAM_DEALERS,28,2072.7671,-1706.9442,13.5547,276.8531,5,1,22,1110,0,0); // DEALERS       32
AddPlayerClassEx(TEAM_DEALERS,30,2070.4534,-1698.4158,13.5469,217.8966,5,1,22,1110,0,0); // DEALERS      33
AddPlayerClassEx(TEAM_DEALERS,29,2070.7581,-1698.2499,13.5469,258.0262,5,1,22,2220,0,0); // DEALERS       34
//TAXI DRIVERS
AddPlayerClassEx(TEAM_TAXI,47,1771.1969,-1896.0669,13.5553,271.7669,0,0,0,0,0,0); // taxi driver         35
AddPlayerClassEx(TEAM_TAXI,48,1765.3810,-1895.2075,13.5623,274.0575,0,0,0,0,0,0); // {{TAXI DRIVER     36
//AGENTS
AddPlayerClassEx(TEAM_AGENT,280,1548.6659,-1675.5718,14.6243,92.1933,0,0,0,0,0,0); // cop          37
AddPlayerClassEx(TEAM_AGENT,286,1539.7017,-1685.0393,5.8906,225.5384,0,0,0,0,0,0); // fbi        38
AddPlayerClassEx(TEAM_AGENT,285,1542.0367,-1707.9775,5.8906,5.9933,0,0,0,0,0,0); // swat       39
AddPlayerClassEx(TEAM_AGENT,265,1541.4971,-1675.7941,13.5527,88.7466,0,0,0,0,0,0); // tempenny....-cop leader...       40
AddPlayerClassEx(TEAM_AGENT,266,1541.4971,-1675.7941,13.5527,88.7466,0,0,0,0,0,0); // pulaski fbi leader       41
AddPlayerClassEx(TEAM_AGENT,267,1541.4971,-1675.7941,13.5527,88.7466,0,0,0,0,0,0); // hernandez swat leader      42
//MEDIC
AddPlayerClassEx(TEAM_MEDICS,274,2028.3730,-1420.7222,16.9922,180.0000,22,11111110,0,0,0,0); // medic       43
//FIREMAN
AddPlayerClassEx(TEAM_FIREMAN,277,1754.3419,-1456.8888,13.5469,0.0215,22,1111110,0,0,0,0); // fireman      44
//Civil
AddPlayerClass(19,1022.0859,-1131.8976,23.8281,182.7467,0,0,0,0,0,0); // civ         45
AddPlayerClass(21,1022.0859,-1131.8976,23.8281,182.7467,0,0,0,0,0,0); // civ       46
AddPlayerClass(23,1022.0859,-1131.8976,23.8281,182.7467,0,0,0,0,0,0); // civ        47
AddPlayerClass(56,1022.0859,-1131.8976,23.8281,182.7467,0,0,0,0,0,0); // civ        48
AddPlayerClass(67,1022.0977,-1132.1409,23.8281,182.7467,0,0,0,0,0,0); // civ         49
AddPlayerClass(93,1022.0977,-1132.1409,23.8281,182.7467,0,0,0,0,0,0); // civ      50
AddPlayerClass(100,1022.0977,-1132.1409,23.8281,182.7467,0,0,0,0,0,0); // civ       51
AddPlayerClass(293,1022.0977,-1132.1409,23.8281,182.7467,0,0,0,0,0,0); // civ         52
AddPlayerClass(296,1022.0977,-1132.1409,23.8281,182.7467,0,0,0,0,0,0); // civ        53
//TRIADS
AddPlayerClassEx(TEAM_TRIADS,117,1283.0187,-831.2125,83.1406,167.5786,5,1,22,1000,0,0); // triad skin 54
AddPlayerClassEx(TEAM_TRIADS,120,1283.0187,-831.2125,83.1406,167.5786,5,1,22,1000,0,0); // triad skin 55
AddPlayerClassEx(TEAM_TRIADS,121,1283.0187,-831.2125,83.1406,167.5786,5,1,22,1000,0,0); // triad skin 56
AddPlayerClassEx(TEAM_TRIADS,122,1283.0187,-831.2125,83.1406,167.5786,5,1,22,1000,0,0); // triad skin 57
AddPlayerClassEx(TEAM_TRIADS,123,1283.0187,-831.2125,83.1406,167.5786,5,1,22,1000,0,0); // triad skin 58

//Vehicle
AddStaticVehicle(492,2396.5425,-1718.5740,13.3933,178.2665,77,26); // denise car
AddStaticVehicle(492,2390.0869,-1717.4995,13.3846,0.5289,77,26); // denise car
AddStaticVehicle(402,2433.9395,-1223.2955,24.9976,179.7309,22,22); // Unknow
AddStaticVehicle(402,2426.0176,-1223.6011,25.1504,356.1075,22,22); // Unknow
AddStaticVehicle(402,2413.3420,-1222.7642,24.7995,175.6471,22,22); // Unknow
AddStaticVehicle(402,2417.9009,-1223.3092,24.9240,355.1198,22,22); // Unknow
AddStaticVehicle(507,1010.0806,-1122.1390,23.7243,182.7661,53,53); // Unknow
AddStaticVehicle(507,1033.4128,-1124.7350,23.7150,173.3834,53,53); // Unknow
AddStaticVehicle(522,1015.4860,-1137.7081,23.1892,181.6760,39,106); // Unknow
AddStaticVehicle(522,1019.7894,-1137.4663,23.2168,238.5446,39,106); // Unknow
AddStaticVehicle(522,1014.0588,-1137.1908,23.1564,122.5976,39,106); // Unknow
AddStaticVehicle(558,1255.5413,-1567.0249,13.0989,266.1339,117,1); // Unknow
AddStaticVehicle(536,2769.4087,-2409.0215,13.3403,91.1774,86,86); // CU car
AddStaticVehicle(536,2770.1533,-2427.1802,13.3790,91.4486,86,86); // CU car
AddStaticVehicle(536,2767.2708,-2387.6130,13.3442,177.8063,86,86); // CU car
AddStaticVehicle(536,2763.1218,-2386.2783,13.3703,182.1283,86,86); // CU car
AddStaticVehicle(484,2758.6570,-2585.1941,0.3876,88.3847,86,86); // CU boat
AddStaticVehicle(493,2735.1343,-2584.2954,0.0245,95.3313,1,86); // CU jetmax
AddStaticVehicle(558,1237.3530,-1567.5299,13.0968,268.7478,117,1); // Unknow
AddStaticVehicle(560,2758.6001,-2385.3948,13.3382,181.0967,86,86); // CU sultan
AddStaticVehicle(560,2751.2654,-2386.8269,13.3524,91.5089,86,86); // CU sultan
AddStaticVehicle(560,2735.6169,-2385.2646,13.3382,84.2530,86,86); // CU sultan
AddStaticVehicle(493,2717.9583,-2575.3406,0.2102,182.4455,1,86); // CU jetmax 2
AddStaticVehicle(558,1350.2471,-1592.1581,13.1136,345.2943,117,1); // Unknow
AddStaticVehicle(492,2509.4736,-1671.9489,13.2100,346.2102,77,26); // Unknow
AddStaticVehicle(492,2503.2410,-1680.4686,13.2341,304.1318,77,26); // Unknow
AddStaticVehicle(452,-647.4509,865.9659,-0.4840,222.2812,0,1); // my house boat
AddStaticVehicle(473,-661.7325,876.4396,-0.2208,225.0287,0,5); // my houses boat
AddStaticVehicle(506,-710.6799,940.0555,12.1172,86.9393,6,6); // my houses car
AddStaticVehicle(487,-671.2629,950.9543,12.3103,87.4203,26,57); // my houses helicopter
AddStaticVehicle(581,-704.9951,943.3447,12.0115,87.2701,58,1); // my houses bike
AddStaticVehicle(560,-699.5308,971.2503,12.0022,89.1755,1,1); // my houses car
AddStaticVehicle(603,-699.8239,960.4799,12.1732,88.2002,18,1); // my houses car phoex
AddStaticVehicle(600,2473.2542,-1694.8076,13.2268,0.2611,32,8); // Unknow
AddStaticVehicle(492,2481.7488,-1749.6366,13.3679,179.6749,24,55); // Unknow
AddStaticVehicle(412,2185.0552,-1672.4351,14.2248,346.6241,9,1); // Unknow
AddStaticVehicle(522,2065.2112,-1919.8438,13.1082,359.3012,8,82); // Unknow
AddStaticVehicle(522,2061.6035,-1919.6749,13.1381,358.7743,36,105); // Unknow
AddStaticVehicle(522,2059.1333,-1904.5369,13.1141,180.0664,7,79); // Unknow
AddStaticVehicle(522,2056.1875,-1904.6534,13.1137,180.0014,6,25); // Unknow
AddStaticVehicle(522,2052.7546,-1903.9202,13.1176,190.0316,6,25); // Unknow
AddStaticVehicle(463,1778.2463,-1933.3545,12.9001,17.1633,22,22); // Unknow
AddStaticVehicle(463,1783.5579,-1933.9890,12.9072,340.6100,19,19); // Unknow
AddStaticVehicle(463,1789.3726,-1933.9818,12.9160,344.1854,11,11); // Unknow
AddStaticVehicle(463,1799.7192,-1933.9382,12.9143,14.3657,7,7); // Unknow
AddStaticVehicle(463,1804.2371,-1933.9073,12.9352,2.9981,84,84); // Unknow
AddStaticVehicle(420,1777.1263,-1914.5627,13.1761,268.5413,6,1); // Unknow
AddStaticVehicle(420,1777.4238,-1908.3613,13.1669,270.4548,6,1); // Unknow
AddStaticVehicle(420,1790.6564,-1887.4019,13.1806,185.3167,6,1); // Unknow
AddStaticVehicle(522,1362.1049,-1299.4346,12.9229,1.9685,6,25); // Unknow
AddStaticVehicle(522,1362.3126,-1287.4401,12.9433,1.0249,6,25); // Unknow
AddStaticVehicle(522,1361.9771,-1268.7168,12.9518,1.0270,6,25); // Unknow
AddStaticVehicle(411,2095.2598,-1816.8915,13.1099,91.3783,64,1); // Unknow
AddStaticVehicle(411,2096.0801,-1796.5238,13.1130,92.0036,64,1); // Unknow
AddStaticVehicle(411,2306.8801,-1672.6086,13.9234,1.9341,64,1); // Unknow
AddStaticVehicle(411,1041.0049,-1053.4695,31.4302,358.1641,86,1); // Unknow
AddStaticVehicle(411,2480.1567,-1654.2008,13.1171,89.4203,86,1); // Unknow
AddStaticVehicle(411,2468.2600,-1654.0465,13.1213,90.2590,86,1); // Unknow
AddStaticVehicle(507,1467.0616,-1737.8209,13.2867,270.4333,0,53); // Unknow
AddStaticVehicle(507,1500.4504,-1737.3063,13.2875,268.7834,0,53); // Unknow
AddStaticVehicle(507,1245.6056,-2042.4135,59.6631,271.6053,0,53); // Unknow
AddStaticVehicle(507,1245.6853,-2030.7070,59.6608,272.1241,0,53); // Unknow
AddStaticVehicle(412,2730.4990,-1969.2571,13.3845,93.4275,25,8); // Unknow
AddStaticVehicle(412,2685.3926,-2018.1790,13.3799,358.6017,25,8); // Unknow
AddStaticVehicle(412,2684.9404,-1991.0355,13.3905,176.1313,25,8); // Unknow
AddStaticVehicle(412,2645.1685,-1988.8271,13.3907,181.1885,25,8); // Unknow
AddStaticVehicle(507,1245.7789,-2025.7737,59.6573,267.9813,0,53); // Unknow
AddStaticVehicle(507,1245.5681,-2019.7970,59.6630,274.6642,0,53); // Unknow
AddStaticVehicle(507,1245.7529,-2014.3885,59.6585,268.1952,0,53); // Unknow
AddStaticVehicle(507,1245.6136,-2009.4916,59.6568,268.4240,0,53); // Unknow
AddStaticVehicle(507,1278.0127,-2012.9108,58.7351,177.2117,0,53); // Unknow
AddStaticVehicle(507,1277.8994,-2025.5847,58.7770,180.2386,0,53); // Unknow
AddStaticVehicle(507,1277.9633,-2041.8345,58.8394,180.0902,0,53); // Unknow
AddStaticVehicle(507,1421.8026,-1897.3334,13.5966,267.6123,0,53); // Unknow
AddStaticVehicle(507,1431.0376,-1894.8718,13.5871,93.9105,0,53); // Unknow
AddStaticVehicle(507,1154.5386,-2020.0546,68.8249,274.4378,0,53); // Unknow
AddStaticVehicle(507,1196.3558,-2019.3011,68.8300,270.8478,0,53); // Unknow
AddStaticVehicle(507,1150.2074,-2052.5823,68.8237,271.4042,0,53); // Unknow
AddStaticVehicle(507,1193.3081,-2054.4944,68.8292,267.4916,0,53); // Unknow
AddStaticVehicle(507,1303.4390,-1871.3048,13.3749,3.3129,0,53); // Unknow
AddStaticVehicle(522,1230.6094,-1285.5740,13.0157,86.1650,6,25); // Unknow
AddStaticVehicle(522,1190.9436,-1136.7208,23.2766,89.7687,6,25); // Unknow
AddStaticVehicle(522,2158.7854,-1804.0933,12.9477,269.6484,6,25); // Unknow
AddStaticVehicle(522,2158.0198,-1798.3594,12.9267,271.3267,6,25); // Unknow
AddStaticVehicle(522,2156.4324,-1792.8213,12.9618,124.7061,6,25); // Unknow
AddStaticVehicle(522,1972.0088,-2261.6963,13.1163,166.6745,1,1); // airport stunter bike
AddStaticVehicle(522,1969.0459,-2263.5039,13.1167,171.1957,1,1); // airport stunter bike
AddStaticVehicle(522,1976.6311,-2264.7188,13.1148,151.7469,1,1); // airport stunter bike
AddStaticVehicle(522,2298.4800,-1771.1615,13.1212,2.8443,6,25); // Unknow
AddStaticVehicle(492,1784.3458,-1888.2610,13.1742,180.1388,77,26); // Unknow
AddStaticVehicle(492,1777.1033,-1903.8136,13.1689,270.7585,77,26); // Unknow
AddStaticVehicle(492,1354.0901,-1753.8790,13.1407,358.5203,77,26); // Unknow
AddStaticVehicle(507,1347.5269,-1753.9019,13.1817,358.6396,118,53); // Unknow
AddStaticVehicle(439,1862.0162,-1615.9841,13.3213,90.8054,65,79); // Unknow
AddStaticVehicle(439,1833.0117,-1616.1946,13.2829,88.2063,65,79); // Unknow
AddStaticVehicle(439,1742.1029,-1628.1204,13.4472,270.7336,65,79); // Unknow
AddStaticVehicle(439,1766.6711,-1692.0347,13.3305,90.1919,43,21); // Unknow
AddStaticVehicle(567,1764.9250,-1700.7059,13.2951,89.3460,97,1); // Unknow
AddStaticVehicle(567,1673.9342,-1596.3551,13.2845,268.6042,97,1); // Unknow
AddStaticVehicle(439,1585.2043,-1596.4220,13.3877,90.5294,43,21); // Unknow
AddStaticVehicle(439,1553.4742,-1596.0156,13.2789,91.5402,43,21); // Unknow
AddStaticVehicle(497,1556.8464,-1609.8888,13.5745,89.4261,0,1); // Unknow
AddStaticVehicle(497,1576.9924,-1610.0094,13.5555,90.1014,0,0); // Unknow
AddStaticVehicle(497,1593.9246,-1609.9436,13.5794,88.1628,0,0); // Unknow
AddStaticVehicle(461,1413.3169,-1648.1896,12.9372,264.1776,32,1); // Unknow
AddStaticVehicle(461,1408.0234,-1647.6500,12.9641,264.1797,32,1); // Unknow
AddStaticVehicle(461,1402.5439,-1647.0920,12.9617,264.1815,32,1); // Unknow
AddStaticVehicle(461,1228.0603,-1707.9194,12.9794,93.5091,32,1); // Unknow
AddStaticVehicle(461,1137.4686,-1621.5248,13.4971,267.2563,32,1); // Unknow
AddStaticVehicle(462,1136.7219,-1625.3635,13.4650,268.9567,1,3); // Unknow
AddStaticVehicle(462,1135.3617,-1627.1108,13.4646,265.3320,1,3); // Unknow
AddStaticVehicle(462,1135.3783,-1628.7764,13.4290,271.9916,1,3); // Unknow
AddStaticVehicle(507,1560.2490,-1575.7097,13.3727,177.2830,118,53); // Unknow
AddStaticVehicle(507,2092.8877,-2501.8928,13.3635,79.1115,118,53); // Unknow
AddStaticVehicle(507,2099.2581,-2510.1284,13.3654,125.1275,118,53); // Unknow
AddStaticVehicle(507,2116.1768,-2532.8899,13.3737,103.9700,118,53); // Unknow
AddStaticVehicle(507,2098.4409,-2562.0129,13.3725,110.0523,118,53); // Unknow
AddStaticVehicle(507,2107.9873,-2574.6924,13.3700,127.1739,118,53); // Unknow
AddStaticVehicle(481,2051.7856,-1112.9802,24.9489,179.8708,14,1); // Unknow
AddStaticVehicle(412,2148.9551,-1138.5386,25.3207,267.7213,25,8); // Unknow
AddStaticVehicle(412,2495.1807,-1996.6882,13.3633,176.8587,25,8); // Unknow
AddStaticVehicle(412,2451.0613,-2022.8345,13.3840,357.1911,25,8); // Unknow
AddStaticVehicle(412,2485.6880,-2005.8859,13.1186,90.0161,25,8); // Unknow
AddStaticVehicle(466,2352.1001,-1159.5697,27.0686,269.6566,68,76); // Unknow
AddStaticVehicle(466,2469.2915,-1191.9403,37.5264,260.0082,68,76); // Unknow
AddStaticVehicle(466,2426.1243,-1224.0791,25.0348,358.2866,68,76); // Unknow
AddStaticVehicle(466,2414.6230,-1223.3635,24.6759,173.1727,68,76); // Unknow
AddStaticVehicle(404,2429.8784,-1224.2936,25.0696,358.9781,95,105); // Unknow
AddStaticVehicle(404,2410.7813,-1222.7010,24.6721,169.8056,95,105); // Unknow
AddStaticVehicle(492,2229.4092,-1341.9756,23.7973,269.5313,71,107); // Unknow
AddStaticVehicle(492,2229.7498,-1359.5009,23.7702,89.9992,52,69); // Unknow
AddStaticVehicle(412,2148.5063,-1295.7987,23.7404,87.8968,11,1); // Unknow
AddStaticVehicle(416,2034.0922,-1447.9608,17.3628,89.9608,1,3); // Unknow
AddStaticVehicle(481,1945.7159,-1382.5726,18.0875,165.5971,3,3); // Unknow
AddStaticVehicle(560,1826.8835,-2530.6458,13.2511,109.7617,3,3); // airport
AddStaticVehicle(560,1806.9398,-2537.4626,13.2526,20.9488,7,7); // airport
AddStaticVehicle(560,1819.5140,-2557.1023,13.2519,263.1807,37,37); // airport
AddStaticVehicle(560,1829.4414,-2568.2219,13.2517,127.6986,86,86); // airport
AddStaticVehicle(560,1806.6211,-2577.6548,13.2518,230.3935,96,96); // airport
AddStaticVehicle(481,1947.5398,-1382.7998,18.0832,185.9267,3,3); // Unknow
AddStaticVehicle(412,2166.7234,-1680.1931,14.9226,314.8347,9,1); // dealers car
AddStaticVehicle(522,1882.4030,-2543.1396,16.7993,270.1660,86,86); // airport nrg
AddStaticVehicle(522,1884.8586,-2552.6150,16.8139,84.3065,86,86); // airport nrg
AddStaticVehicle(522,1884.9199,-2533.3982,16.8002,90.3405,86,86); // airport nrg
AddStaticVehicle(522,1811.6781,-2559.0090,13.1167,149.2181,86,86); // airport nrg
AddStaticVehicle(522,1805.9447,-2541.4580,13.1246,330.3124,86,86); // airport nrg
AddStaticVehicle(522,1821.1311,-2517.8376,13.1112,54.1908,86,86); // airport nrg
AddStaticVehicle(522,1483.2770,-2485.9548,13.1116,207.6182,86,86); // airport nrg
AddStaticVehicle(522,1484.2854,-2496.8987,13.1059,184.4272,86,86); // airport nrg
AddStaticVehicle(522,1485.2468,-2509.3357,13.2598,184.4222,86,86); // airport nrg
AddStaticVehicle(522,1490.9606,-2507.4924,13.1048,12.0836,86,86); // airport nrg
AddStaticVehicle(522,1489.4154,-2500.2517,13.1127,12.0281,86,86); // airport nrg
AddStaticVehicle(522,1486.7013,-2487.5178,13.2167,12.0357,86,86); // airport nrg
AddStaticVehicle(522,1490.6407,-2481.3140,13.0942,267.9429,86,86); // airport nrg
AddStaticVehicle(489,1928.4427,-2141.6973,13.7055,181.1695,8,8); // Unknow
AddStaticVehicle(489,1932.1703,-2141.9907,13.7053,179.5412,37,37); // rancher outside airport
AddStaticVehicle(489,1938.0876,-2142.6365,13.7046,177.5321,46,46); // rancher outside airport
AddStaticVehicle(489,1942.0961,-2141.7178,13.6993,177.4282,85,85); // rancher outside airport
AddStaticVehicle(481,1950.5659,-1384.9231,18.0747,261.2366,3,3); // Unknow
AddStaticVehicle(481,1953.6101,-1384.8289,18.0911,273.3566,3,3); // Unknow
AddStaticVehicle(481,1957.3654,-1384.6088,18.0925,273.3641,3,3); // Unknow
AddStaticVehicle(481,1960.4899,-1387.2046,17.7313,180.7917,3,3); // Unknow
AddStaticVehicle(481,1957.3607,-1409.8252,13.1248,168.1332,3,3); // Unknow
AddStaticVehicle(481,1955.4321,-1409.3096,13.1178,184.9360,3,3); // Unknow
AddStaticVehicle(481,1953.9037,-1408.5774,13.0952,159.4593,3,3); // Unknow
AddStaticVehicle(462,550.5469,-1738.1912,12.0809,79.4933,1,3); // scuter
AddStaticVehicle(462,525.7677,-1734.8905,11.5800,79.7393,1,3); // scuter
AddStaticVehicle(462,510.0741,-1733.0361,11.2473,81.2849,1,3); // scuter
AddStaticVehicle(462,426.5062,-1816.3809,6.2538,269.2956,1,3); // scuter
AddStaticVehicle(462,426.4825,-1813.5914,6.2610,320.4734,1,3); // scuter
AddStaticVehicle(462,424.0016,-1813.7693,6.2650,8.0237,1,3); // scuter
AddStaticVehicle(462,321.1784,-1809.3850,4.0779,355.8589,1,3); // scuter
AddStaticVehicle(462,324.4482,-1809.4653,4.0742,356.5863,1,3); // scuter
AddStaticVehicle(462,327.6695,-1808.8711,4.0888,357.5052,1,3); // scuter
AddStaticVehicle(462,321.4203,-1789.0562,4.3289,344.2658,1,3); // scuter
AddStaticVehicle(462,318.0989,-1788.6653,4.2658,171.8823,1,3); // scuter
AddStaticVehicle(462,328.2059,-1788.8815,4.4380,14.8443,1,3); // scuter
AddStaticVehicle(462,311.4467,-1808.6483,4.0786,191.3276,1,3); // scuter
AddStaticVehicle(462,309.7997,-1808.7791,4.0549,358.3889,1,3); // scuter
AddStaticVehicle(462,147.7900,-1878.0256,3.3719,178.7906,1,3); // scuter
AddStaticVehicle(462,147.7845,-1884.4702,3.3712,179.3619,1,3); // scuter
AddStaticVehicle(466,2066.0945,-1694.4648,13.2637,270.0697,16,76); // Unknow
AddStaticVehicle(466,2051.4482,-1694.8894,13.2966,271.3654,16,76); // Unknow
AddStaticVehicle(466,2120.4861,-1780.2268,13.1314,87.3046,16,76); // Unknow
AddStaticVehicle(466,2120.5957,-1772.4337,13.1337,87.7341,16,76); // Unknow
AddStaticVehicle(466,2049.3582,-1804.3816,14.5916,87.1614,16,76); // Unknow
AddStaticVehicle(596,1535.9639,-1675.2435,13.1193,359.6750,0,1); // Unknow
AddStaticVehicle(427,1585.5477,-1671.9486,6.0148,270.2343,0,1); // Unknow
AddStaticVehicle(481,1357.5211,-1745.0040,13.0648,348.0356,46,46); // Unknow
AddStaticVehicle(426,1359.5228,-1748.6891,13.2159,87.3609,7,7); // Unknow
AddStaticVehicle(426,1280.6613,-1811.0928,13.1269,268.3046,7,7); // Unknow
AddStaticVehicle(426,1279.6100,-1830.2267,13.1297,89.8411,53,53); // Unknow
AddStaticVehicle(426,1239.2275,-1817.7532,13.1441,90.0021,62,62); // Unknow
AddStaticVehicle(437,1158.5135,-1752.7218,13.7490,269.8571,87,7); // Unknow
AddStaticVehicle(483,1099.0107,-1766.6277,13.3403,270.0108,1,31); // Unknow
AddStaticVehicle(560,2818.5754,-1182.4656,24.9477,270.7102,6,6); // vago id 3 car
AddStaticVehicle(560,2829.2053,-1200.4393,24.3722,4.0435,6,6); // vago id 3 car
AddStaticVehicle(560,2828.2378,-1172.5742,24.6939,180.3555,6,6); // vago id 3 car
AddStaticVehicle(483,1078.3622,-1760.8436,13.3706,90.8944,1,31); // Unknow
AddStaticVehicle(542,1077.7792,-1757.8734,13.1441,90.4139,31,93); // Unknow
AddStaticVehicle(404,1061.9918,-1760.8813,13.1265,90.0074,119,50); // Unknow
AddStaticVehicle(404,1062.2050,-1746.1315,13.1761,270.0762,123,92); // Unknow
AddStaticVehicle(558,2500.4966,-1954.1791,13.0501,0.0543,117,1); // near azteca
AddStaticVehicle(405,2495.6917,-1953.2698,13.2866,358.9286,25,72); // near azteca
AddStaticVehicle(492,2388.9890,-1967.8282,13.2202,271.1953,24,55); // ammunation
AddStaticVehicle(561,2366.8191,-1968.5431,13.1147,269.4003,65,79); // ammunation
AddStaticVehicle(542,711.8798,-1773.3021,13.3976,72.3889,45,92); // Unknow
AddStaticVehicle(542,706.5467,-1745.3523,13.7680,70.3432,45,92); // Unknow
AddStaticVehicle(542,324.9895,-1787.9264,4.5356,359.1671,113,92); // Unknow
AddStaticVehicle(559,331.1252,-1789.5177,4.5173,180.5318,60,1); // Unknow
AddStaticVehicle(559,317.9511,-1809.5297,4.1421,359.7718,58,8); // Unknow
AddStaticVehicle(404,314.5824,-1809.5354,4.2071,359.2963,101,101); // Unknow
AddStaticVehicle(507,888.9601,-1246.4001,15.4791,275.0970,1,53); // Unknow
AddStaticVehicle(507,903.5284,-1245.4373,15.4683,273.3017,1,53); // Unknow
AddStaticVehicle(507,915.5472,-1199.0972,16.8050,171.6797,1,53); // Unknow
AddStaticVehicle(507,905.6637,-1205.2205,16.8023,89.9397,1,53); // Unknow
AddStaticVehicle(507,882.9848,-1199.8579,16.8013,177.4649,1,53); // Unknow
AddStaticVehicle(507,864.3351,-1236.1747,14.6984,342.6369,1,53); // Unknow
AddStaticVehicle(507,782.9418,-1630.1167,13.2088,272.9499,1,53); // Unknow
AddStaticVehicle(507,782.6135,-1619.4047,13.2248,270.0449,1,53); // Unknow
AddStaticVehicle(507,782.7982,-1605.2480,13.2016,271.1443,1,53); // Unknow
AddStaticVehicle(507,757.0347,-1663.3534,3.9713,178.5611,1,53); // Unknow
AddStaticVehicle(507,760.2742,-1688.4005,4.0857,80.0338,1,53); // Unknow
AddStaticVehicle(507,1239.4059,-1813.3901,13.2520,267.7943,1,53); // Unknow
AddStaticVehicle(507,1289.8888,-1872.0663,13.3708,359.2238,1,53); // Unknow
AddStaticVehicle(507,1484.4293,-1737.3303,13.2865,269.0813,1,53); // Unknow
AddStaticVehicle(596,1536.0176,-1665.8423,13.1140,359.6756,0,1); // Unknow
AddStaticVehicle(596,1604.0659,-1613.2446,13.2296,89.5921,0,1); // Unknow
AddStaticVehicle(596,1603.5742,-1620.0659,13.2258,87.7646,0,1); // Unknow
AddStaticVehicle(596,1603.6655,-1627.3278,13.2263,90.3116,0,1); // Unknow
AddStaticVehicle(596,1585.5762,-1679.2623,5.6193,267.6518,0,1); // Unknow
AddStaticVehicle(596,1601.1292,-1688.0186,5.6121,86.7144,0,1); // Unknow
AddStaticVehicle(596,1600.6542,-1696.3505,5.6099,92.2041,0,1); // Unknow
AddStaticVehicle(596,1595.5790,-1710.2955,5.6096,180.9388,0,1); // Unknow
AddStaticVehicle(596,1587.1731,-1710.4810,5.6116,177.3497,0,1); // Unknow
AddStaticVehicle(596,1578.9629,-1710.3514,5.6104,174.0417,0,1); // Unknow
AddStaticVehicle(427,1559.1625,-1709.8892,6.0225,357.7537,0,1); // Unknow
AddStaticVehicle(427,1530.4419,-1645.2693,6.0232,180.0288,0,1); // Unknow
AddStaticVehicle(427,1539.1390,-1645.5629,6.0220,182.4922,0,1); // Unknow
AddStaticVehicle(427,1534.8289,-1644.7675,6.0223,181.3313,0,1); // Unknow
AddStaticVehicle(427,1543.9906,-1668.1088,6.0221,90.7110,0,1); // Unknow
AddStaticVehicle(427,1529.3927,-1685.3884,6.0222,269.2911,0,1); // Unknow
AddStaticVehicle(420,2360.8904,2169.6528,10.4575,182.1987,79,1); // Unknow
AddStaticVehicle(420,2360.7083,2161.3828,10.5179,175.5907,79,1); // Unknow
AddStaticVehicle(567,2008.7622,-1068.0752,24.4060,242.9323,5,5); // balla low rider
AddStaticVehicle(567,2108.1760,-1099.7430,25.0423,249.7168,5,5); // balla low rider
AddStaticVehicle(567,2148.6335,-1148.0773,24.3112,274.0414,5,5); // balla low rider
AddStaticVehicle(567,2161.2881,-1152.8759,23.8064,88.3823,5,5); // balla low rider
AddStaticVehicle(567,2227.8545,-1166.3199,25.6134,95.0130,5,5); // balla low rider
AddStaticVehicle(567,2205.9688,-1164.7510,25.5969,87.2466,5,5); // balla low rider
AddStaticVehicle(567,2217.0632,-1170.7185,25.5976,268.4218,5,5); // balla low rider
AddStaticVehicle(567,2228.9595,-1173.7795,25.6086,268.9460,5,5); // balla low rider
AddStaticVehicle(567,2206.0583,-1156.7537,25.6044,268.7458,5,5); // balla low rider
AddStaticVehicle(522,-2350.3613,-1604.4323,483.1694,231.8369,0,0); // mt chilliad nrg
AddStaticVehicle(522,-2348.9321,-1601.9147,483.1988,254.6339,0,0); // mt chilliad nrg
AddStaticVehicle(522,-2347.9502,-1598.6038,483.1813,256.3156,0,0); // mt chilliad nrg
AddStaticVehicle(522,-2350.1851,-1611.4749,483.2116,259.7856,0,0); // mt chilliad nrg
AddStaticVehicle(522,-2352.3562,-1617.2560,483.2226,265.5250,0,0); // mt chilliad nrg
AddStaticVehicle(411,-2343.8997,-1590.8428,483.2981,245.4282,0,0); // mt chilliad infernus
AddStaticVehicle(411,-2335.9224,-1581.2151,483.2964,205.9012,0,0); // mt chilliad infernus
AddStaticVehicle(411,-2324.7410,-1580.7118,482.9924,159.4174,0,0); // mt chilliad infernus
AddStaticVehicle(411,-2320.3435,-1592.3385,483.5248,198.8322,0,0); // mt chilliad infernus
AddStaticVehicle(411,-2329.6162,-1671.4810,482.7892,292.6478,0,0); // mt chilliad infernus
AddStaticVehicle(411,-2332.5559,-1664.0887,483.2543,295.2818,0,0); // mt chilliad infernus
AddStaticVehicle(411,-2319.5718,-1679.9288,482.1171,304.8152,0,0); // mt chilliad infernus
AddStaticVehicle(522,1242.2294,-802.8764,83.7129,182.8960,1,1); // triad bike
AddStaticVehicle(522,1246.2797,-801.9937,83.7096,168.9569,1,1); // triad bike
AddStaticVehicle(522,1251.7448,-803.7132,83.7108,173.9864,1,1); // triad bike
AddStaticVehicle(522,1251.9094,-803.4573,83.7135,174.7175,1,1); // triad bike
AddStaticVehicle(522,1254.8685,-802.1474,83.7090,179.1199,1,1); // triad bike
AddStaticVehicle(448,2106.9031,-1789.3190,13.1519,358.2150,3,6); // pizza
AddStaticVehicle(448,2105.0227,-1789.0607,13.1570,358.0796,3,6); // pizza
AddStaticVehicle(448,2103.2197,-1789.8490,13.1460,0.0408,3,6); // pizza
AddStaticVehicle(593,-1312.7688,-351.5457,14.6150,3.2626,0,1); // plane
AddStaticVehicle(513,-1296.6776,-346.6859,14.6893,316.8463,21,36); // plane
AddStaticVehicle(513,-1278.4210,-344.4956,14.6868,356.3266,21,34); // plane
AddStaticVehicle(592,-1209.9679,-365.7631,15.3583,324.9923,1,1); // plane
AddStaticVehicle(577,-1330.4445,-237.2720,14.0721,301.0864,8,7); // plane
AddStaticVehicle(511,-1507.0541,-210.2058,15.5268,28.3184,4,90); // plane
AddStaticVehicle(553,-1301.1248,-13.8756,15.4515,130.0032,61,74); // plane
AddStaticVehicle(425,-1185.4777,25.8169,14.7275,40.8217,43,0); // helicopter
AddStaticVehicle(563,-1223.2317,-12.2888,14.8536,42.9915,1,6); // helicopter
AddStaticVehicle(488,-1247.3689,-30.1994,14.3259,44.6666,2,26); // helicopter
AddStaticVehicle(407,1707.1375,-1880.4851,13.8030,358.7370,0,1); // Fireman
AddStaticVehicle(407,1715.1674,-1880.6558,13.8042,0.4868,0,1); // Fireman
AddStaticVehicle(407,1723.1316,-1880.9922,13.7983,358.3455,0,1); // Fireman
AddStaticVehicle(416,2002.0166,-1415.9475,17.1415,178.8373,1,3); // Medic car pos
AddStaticVehicle(416,1999.5286,-1447.6718,13.7099,180.8121,1,3); // Medic Car Pos
////////////////////////////////////////////////////////////////////////////////////////
AddStaticVehicle(405,2749.9055,-1944.3514,13.4192,270.2492,25,72); // SBF CARS
AddStaticVehicle(405,2789.0710,-1944.6254,13.4192,89.8124,25,72); // SBF CARS
AddStaticVehicle(405,2774.6714,-1958.2850,13.2790,358.6135,25,72); // SBF CARS
AddStaticVehicle(405,2774.3635,-1974.8141,13.3172,358.8106,25,72); // SBF CARS
AddStaticVehicle(405,2764.7920,-1960.2313,13.2851,180.1022,25,72); // SBF CARS
AddStaticVehicle(405,2764.6377,-1973.3301,13.3134,180.7366,25,72); // SBF CARS
AddStaticVehicle(492,841.7800,-1107.9669,24.0409,268.1334,52,51); // TDF cars
AddStaticVehicle(492,826.7529,-1116.1721,23.8404,269.6248,52,69); // TDF cars
AddStaticVehicle(412,826.4153,-1119.9208,23.8269,266.8371,51,51); // TDF cars
AddStaticVehicle(492,826.7070,-1090.5864,24.0371,268.5440,52,69); // TDF cars
AddStaticVehicle(492,846.4177,-1090.5952,24.0822,267.9980,52,69); // TDF cars
AddStaticVehicle(412,859.0115,-1108.2073,24.0989,269.2705,51,69); // TDF cars
AddStaticVehicle(412,879.3654,-1108.4360,24.0625,269.4043,51,69); // TDF cars
AddStaticVehicle(492,929.3876,-1082.3567,24.0959,90.3149,52,69); // TDF cars
AddStaticVehicle(412,929.0203,-1074.5577,24.1521,89.8061,52,51); // TDF cars
AddStaticVehicle(492,930.2562,-1066.9530,24.0977,90.6516,51,69); // TDF cars
AddStaticVehicle(412,930.5954,-1112.5671,24.0239,358.7614,52,69); // TDF cars
AddStaticVehicle(412,935.6783,-1124.4586,23.8290,359.9500,52,51); // TDF cars
AddStaticVehicle(492,925.2986,-1124.6670,23.7689,359.9592,52,69); // TDF cars
AddStaticVehicle(517,2140.2898,-1296.8726,23.6994,270.0907,37,36); // GPB car
AddStaticVehicle(517,2096.0037,-1320.4563,25.0015,0.1556,47,41); // GPB car
AddStaticVehicle(517,2003.5481,-1265.9197,23.7531,93.3413,47,41); // GPB car
AddStaticVehicle(517,1890.5645,-1255.5747,13.3223,90.4237,47,41); // GPB car
AddStaticVehicle(517,1925.9803,-1130.5183,24.8973,87.8764,51,72); // GPB car
AddStaticVehicle(517,1920.2222,-1202.6964,19.8059,183.6786,51,72); // GPB car
AddStaticVehicle(535,1886.6602,-2021.4132,13.1650,179.4555,97,1); // VLA Car
AddStaticVehicle(567,1887.3606,-2034.3295,13.3389,176.9685,118,118); // VLA Car
AddStaticVehicle(536,1879.2140,-2021.3356,13.1374,180.2649,97,1); // VLA Car
AddStaticVehicle(536,1826.7422,-2021.6102,13.1237,180.1522,71,96); // VLA Car
AddStaticVehicle(535,1819.3323,-2021.0568,13.1577,180.6327,97,1); // VLA Car
AddStaticVehicle(567,1793.5605,-2129.0671,13.3034,1.6550,3,3); // VLA Car
AddStaticVehicle(510,1318.0968,1571.5688,10.4061,264.2781,39,106); // MTB
AddStaticVehicle(510,1313.4844,1572.0309,10.4127,264.2781,39,106); // MTB
AddStaticVehicle(510,1308.8375,1572.4960,10.4129,264.2781,39,106); // MTB
AddStaticVehicle(510,1320.4626,1574.2860,10.4105,270.2254,39,106); // MTB
AddStaticVehicle(510,1316.3022,1574.4329,10.4129,260.0628,39,106); // MTB
AddStaticVehicle(510,1309.9208,1575.5518,10.4126,260.0607,39,106); // MTB
AddStaticVehicle(510,1321.1290,1578.6682,10.4109,264.0579,39,106); // MTB
AddStaticVehicle(510,1318.1262,1578.9803,10.4121,264.0570,39,106); // MTB
AddStaticVehicle(510,1313.2716,1579.4849,10.4127,264.0570,39,106); // MTB
AddStaticVehicle(510,1321.7632,1583.7825,10.3984,288.8374,39,106); // MTB
AddStaticVehicle(510,1314.3760,1584.6433,10.4124,259.6135,39,106); // MTB
AddStaticVehicle(510,1308.0930,1585.6625,10.4127,262.4604,39,106); // MTB
AddStaticVehicle(510,1959.5135,-1398.9009,13.9662,120.1702,3,3); // MTB
AddStaticVehicle(510,1954.2911,-1396.7449,13.9739,56.8054,3,3); // MTB
AddStaticVehicle(510,1949.2919,-1394.3101,14.3596,68.4576,3,3); // MTB
AddStaticVehicle(510,1943.9386,-1382.3313,18.1121,150.4486,3,3); // MTB
AddStaticVehicle(510,1943.7755,-1377.9335,18.1209,180.8729,3,3); // MTB
AddStaticVehicle(510,1952.6382,-1381.5995,18.1140,229.7330,3,3); // MTB
AddStaticVehicle(510,1961.2625,-1383.1212,18.1004,212.2775,3,3); // MTB
/////////////////////////----------PICKUPS------------------////////////////////////////
AddStaticPickup(1239,2,2486.2549,-1645.6023,14.0772);//GS GANG HOUSE!
AddStaticPickup(1239,2,228.1979,1024.0778,1084.0078);//GS GANG HOUSE EXIT!
AddStaticPickup(1239,2,1894.8296,-2020.7561,13.5469);//AZTECA GANG HOUSE ENTER PICKUP
AddStaticPickup(1239,2,234.3373,1064.5544,1084.2111); // AZTECAS GANG HOUSE EXIT PICKUP
AddStaticPickup(1239,2,2149.8740,-1585.2020,14.3438);//BALLAS GANGHOUSE PICKUP ENTER
AddStaticPickup(1239,2,965.4288,-53.0039,1001.1246); // BALLAS GANG HOUSE EXIT PICKUP
AddStaticPickup(1239,2,2521.0132,-1323.5347,33.6023); // VAGOS ENTER PICKUP
AddStaticPickup(1239,2,140.0936,1369.3534,1083.8644); // VAGOS EXIT PICKUP
AddStaticPickup(1271,2,241.9594,1019.6509,1084.0177); // GSF HOUSE PICKUP
AddStaticPickup(1239,2,1498.6069,-1580.9783,13.5498);//TRIADS CASINO ENTER PICKUP
AddStaticPickup(1239,2,2007.8716,1018.0707,994.4688);//TRIADS CASINO EXIT PICKUP
AddStaticPickup(1239,2,2523.1733,-1679.1488,15.4970); // SWEE{T enter PICKUP
AddStaticPickup(1239,2,2524.4021,-1679.4211,1015.4986);//SWEET EXIT PICKUP
AddStaticPickup(1239,2,2459.5112,-1690.1550,13.5439); // ryder house [enter pickup
AddStaticPickup(1239,2,2464.4436,-1698.2927,1013.5078); // ryder house exit pickup
AddStaticPickup(1239,2,2402.3733,-1716.4259,13.7037); // DENISE HOUSE ENTER PICKUP
AddStaticPickup(1239,2,243.8228,306.6342,999.1558); // DENISE HOUSE EXIT PICKUP
AddStaticPickup(1239,2,1942.1545,-2061.5940,13.5469); // VLA BAR enter pickup
AddStaticPickup(1239,2,1211.8986,-27.8601,1000.9531);// VLA BAR exit pickup
AddStaticPickup(1239,2,2751.9456,-1962.5953,13.5469);//SBF chillin place enter pickup
AddStaticPickup(1239,2,-100.5115,-23.6495,1000.7188);//SBF chillin place exit pickup
AddStaticPickup(1239,2,1884.0795,-1271.2534,13.5469); // GPB enter pickup
AddStaticPickup(1239,2,1205.1818,-11.6377,1000.9219); // GPB place exit pickup
AddStaticPickup(1239,2,2101.0144,-1360.9211,23.9844);//GPB bar
AddStaticPickup(1239,2,2865.4785,-1457.8939,10.9566);//Vagos Bar
AddStaticPickup(1239,2,1804.1438,-2124.2046,13.9424); // CV enter pickup
AddStaticPickup(1239,2,2324.4163,-1148.9089,1050.7101); // VLA exit pickup
AddStaticPickup(1239,2,2065.4148,-1703.6320,14.1484); // BS enter pickup
AddStaticPickup(1239,2,328.0313,1477.9677,1084.4375); // BS exit pickup
AddStaticPickup(1239,2,1038.3016,-1340.7271,13.7412); // CRASH enter pickup
AddStaticPickup(1239,2,377.2334,-192.4911,1000.6328); // CRASH exit pickup
AddStaticPickup(1239,2,1481.0181,-1770.8140,18.7958); // BANK ICON
AddStaticPickup(1239,2,390.5215,173.8381,1008.3828); // BANK EXIT PICKUP
///////////////////////////-----------------FINISH---------------///////////////////////////////////
SetTimer("PayDay", 3600000, 1);
SetTimer("MoneyGrubScoreUpdate", 1000, 1);
SetTimer("UpdateScores", 10000, 1);
return 1;
}

public OnGameModeExit()
{
	return 1;
}



public OnPlayerRequestSpawn(playerid)
{

if(GetPlayerSkin(playerid) == 23) {
GameTextForPlayer(playerid, "~r~Ryder only!-Server Owner",2500, 3);
new pname[MAX_PLAYER_NAME];
GetPlayerName(playerid,pname,MAX_PLAYER_NAME);
if(!strcmp("ryder",pname)) return 1;
else return 0; }
if(GetPlayerSkin(playerid) == 292) {
GameTextForPlayer(playerid, "~r~VLA leader only ~n~ ~r~ [VLA]Francis only!",2500, 3);
new pname[MAX_PLAYER_NAME];
GetPlayerName(playerid,pname,MAX_PLAYER_NAME);
if(!strcmp("[VLA]Francis",pname)) return 1;
else return 0; }
if(GetPlayerSkin(playerid) == 269) {
GameTextForPlayer(playerid, "~r~[GSF]Cripty only!",2500, 3);
new pname[MAX_PLAYER_NAME];
GetPlayerName(playerid,pname,MAX_PLAYER_NAME);
if(!strcmp("[GSF]Cripty",pname)) return 1;
else return 0; }
if(GetPlayerSkin(playerid) == 270) {
GameTextForPlayer(playerid, "~r~[GSF]TheGame only!",2500, 3);
new pname[MAX_PLAYER_NAME];
GetPlayerName(playerid,pname,MAX_PLAYER_NAME);
if(!strcmp("[GSF]TheGame",pname)) return 1;
else return 0; }
if(GetPlayerSkin(playerid) == 113) {
GameTextForPlayer(playerid, "~r~[Mafia]John_Doe only!Respected Godfather of Tec9",2500, 3);
new pname[MAX_PLAYER_NAME];
GetPlayerName(playerid,pname,MAX_PLAYER_NAME);
if(!strcmp("[Mafia]John_Doe",pname)) return 1;
else return 0; }
return 1;
}

public OnPlayerConnect(playerid)
{
GameTextForPlayer(playerid, "~w~ Welcome to ™..:..Tec9 LS-RolePlaying..:..™",3500, 3);
SendClientMessage(playerid,COLOR_YELLOW,"Welcome to ™..:..Tec9 LS-RolePlaying..:..™. ");
SendClientMessage(playerid,COLOR_YELLOW,"If you are new check /modhelp /about and /rules");
SendClientMessage(playerid,COLOR_YELLOW,"If you want to join official Gangs post on GANGS sections on forum");
SendClientMessage(playerid,COLOR_YELLOW,"If you dont have an account please /register.If you have just /login");
SendClientMessage(playerid,COLOR_YELLOW,"You better check forum at www.createforum.com/tec9clanlsrpg");
SetPlayerColor(playerid,COLOR_GREY);
/////////MAP ICON////////
SetPlayerMapIcon( playerid, 31, 2486.2549,-1645.6023,14.0772, 62, 0 );//GROVE FAMILLIES
SetPlayerMapIcon( playerid, 30, 1552.0612,-1674.5983,16.1183, 30, 0 );//POLICE HQ
SetPlayerMapIcon( playerid, 29, 1042.5638,-1028.8495,32.1016, 27, 0 );//MOD SHOP
SetPlayerMapIcon( playerid, 27, 1874.1501,-2026.7532,13.5469, 58, 0 );//AZTECAS HQ
SetPlayerMapIcon( playerid, 28, 2149.8740,-1585.2020,14.3438, 59, 0 );//BALLAS
SetPlayerMapIcon( playerid, 26, 2521.0132,-1323.5347,33.6023, 60, 0 );//VAGOS HQ
SetPlayerMapIcon( playerid, 25, 2523.2705,-1679.2445,15.4970, 38, 0 );//sweet house icon
SetPlayerMapIcon( playerid, 24, 2459.6199,-1691.6606,13.5433, 34, 0 );//ryder house icon
SetPlayerMapIcon( playerid, 23, 2402.5566,-1714.2225,14.1328, 21, 0 );//Girlfriend house icon
SetPlayerMapIcon( playerid, 22, 2315.5122,-1645.7513,14.8270, 49, 0 );//GSF bar icon
SetPlayerMapIcon( playerid, 21, 2247.5034,-1666.3179,15.4766, 45, 0 );//binco map icon
SetPlayerMapIcon( playerid, 20, 1834.0580,-1681.6860,13.4474, 48, 0 );//alhambra map icon
SetPlayerMapIcon( playerid, 19, 1498.1639,-1580.7520,13.5498, 44, 0 );//triads casino
SetPlayerMapIcon( playerid, 18, 1133.0685,-2036.7955,69.0078, 25, 0 );//mafia map icon
SetPlayerMapIcon( playerid, 17, 2065.1052,-1703.3047,14.1484, 8 , 0 );//BIG SMOKE MAP ICON
SetPlayerMapIcon( playerid, 16, 2494.2561,-1690.2721,21.8193, 15, 0 );//CJ HOUSE MAP ICON
SetPlayerMapIcon( playerid, 15, 1884.1925,-1271.5706,13.5469, 59, 0 );//BALLAS
SetPlayerMapIcon( playerid, 14, 2222.4700,-1167.6641,25.7331, 59, 0 );//BALLAS
SetPlayerMapIcon( playerid, 13, 2752.6179,-1963.0188,13.5469, 62, 0 );//GROVE FAMILLIES
SetPlayerMapIcon( playerid, 12, 816.9675,-1102.7007,25.7918, 62, 0  );//TDF FAMILLIES
SetPlayerMapIcon( playerid, 11, 1942.1545,-2061.5940,13.5469, 49, 0  );//vla bar
SetPlayerMapIcon( playerid, 10, 1801.2740,-2124.8215,13.5469, 13, 0 );//AZTECAS HQ
SetPlayerMapIcon( playerid, 9 , 2101.0425,-1360.4677,23.9844, 49, 0 );//GPB bar
SetPlayerMapIcon( playerid, 8, 2809.8613,-1183.5681,25.3167, 60, 0  );//VAGOS HQ 2
SetPlayerMapIcon( playerid, 7, 2865.4785,-1457.8939,10.9566, 49, 0  );//vagos bar
SetPlayerMapIcon( playerid, 6, 1038.3016,-1340.7271,13.7412, 16, 0  );//CRASH map icon
SetPlayerMapIcon( playerid, 5, 1481.0181,-1770.8140,18.7958, 52, 0  );//CRASH map icon
gPlayerUsingLoopingAnim[playerid] = 0;
gPlayerAnimLibsPreloaded[playerid] = 0;
///////////////////////////
new pName[30], string[256];
GetPlayerName(playerid, pName, 30);
format(string, 256,"*** %s has joined ™..:..Tec9 LS-RolePlaying..:..™ ***.", pName);
SendClientMessageToAll(COLOR_WHITE,string);

    new second, minute, hour, day, month, year;
    IsPlayerMuted[playerid] = 0;

   	if(fsearch("KickedNames.txt", PlayerName(playerid), true))
    {
    SystemMessage(playerid, "Your name has been banned on this server.");
	gettime(hour, minute, second);
	getdate(year, month, day);
	format(string, sizeof(string), "Player %s tried to join server with banned name on %d/%d/%d at %d:%d:%d.", PlayerName(playerid), month, day, year, hour, minute, second);
    KickPlayer(playerid, "");
	}

	else if(IsServerLocked == true)
    {
    SystemMessage(playerid, "    Server is currently locked down by Administrator.");
    SystemMessage(playerid, "    Please try connecting later.");
    KickPlayer(playerid, "");
    }
	return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
	switch(reason)
		{
			case 0:
					{
                        new pName[30], string[256];
                        GetPlayerName(playerid, pName, 30);
                        format(string, 256,"*** %s has left ™..:..Tec9 LS-RolePlaying..:..™ (Timeout)***", pName);
                        SendClientMessageToAll(COLOR_WHITE, string);
                	}
			case 1:
                	{
                        new pName[30], string[256];
                        GetPlayerName(playerid, pName, 30);
                        format(string, 256, "*** %s has left ™..:..Tec9 LS-RolePlaying..:..™ (Quit)***", pName);
                        SendClientMessageToAll(COLOR_WHITE, string);
                	}
			case 2:
                	{
                        new pName[30], string[256];
                        GetPlayerName(playerid, pName, 30);
                        format(string, 256,"*** %s has left ™..:..Tec9 LS-RolePlaying..:..™ (Kicked)***", pName);
                        SendClientMessageToAll(COLOR_WHITE, string);
                	}
		}
	IsPlayerMuted[playerid] = 0;
	return 1;
}

SetPlayerToTeamColor(playerid) {
	switch(gTeam[playerid]) {
		case TEAM_GSF: SetPlayerColor(playerid,COLOR_GSF);
		case TEAM_SBF: SetPlayerColor(playerid,COLOR_SBF);
		case TEAM_TDF: SetPlayerColor(playerid,COLOR_TDF);
		case TEAM_IB: SetPlayerColor(playerid,COLOR_IB);
		case TEAM_JB: SetPlayerColor(playerid,COLOR_JB);
		case TEAM_GPB: SetPlayerColor(playerid,COLOR_GPB);
		case TEAM_VAGOS: SetPlayerColor(playerid,COLOR_VAGOS);
		case TEAM_VLA: SetPlayerColor(playerid,COLOR_VLA);
		case TEAM_MAFIA: SetPlayerColor(playerid,COLOR_MAFIA);
		case TEAM_DEALERS: SetPlayerColor(playerid,COLOR_DEALER);
		case TEAM_TAXI:SetPlayerColor(playerid,COLOR_TAXI);
		case TEAM_AGENT: SetPlayerColor(playerid,COLOR_AGENTS);
		case TEAM_MEDICS: SetPlayerColor(playerid,COLOR_ME[DIC);
		case TEAM_FIREMAN: SetPlayerColor(playerid,COLOR_FIREMANs);
		case TEAM_CIVS: SetPlayerColor(playerid,COLOR_CIV);
		case TEAM_TRIADS: SetPlayerColor(playerid,COLOR_TRIAD);

		}
}

public OnPlayerSpawn(playerid)
{
SendClientMessage(playerid,COLOR_YELLOW,"You're spawned.Try to dont get back to the hospital bed");
for( new gz = 0; gz < sizeof( GangZones ); gz ++ )
GangZoneShowForPlayer( playerid, GangZones[ gz ][ gzID ], GangZones[ gz ][ gzColor ]);
///////////////-------------SKIN PASSWORD-------------------------------------//////////////
new Float:x,Float:y,Float:z;
GetPlayerPos(playerid,x,y,z);
PlayerPlaySound(playerid,1063,floatround(x),floatround(y),floatround(z));
SetPlayerToTeamColor(playerid);
SetPlayerInterior(playerid,0);
////////////////////////////////////////////////////////////////////////////////////////////////
	if(!gPlayerAnimLibsPreloaded[playerid]) {
   		PreloadAnimLib(playerid,"BOMBER");
   		PreloadAnimLib(playerid,"RAPPING");
    	PreloadAnimLib(playerid,"SHOP");
   		PreloadAnimLib(playerid,"BEACH");
   		PreloadAnimLib(playerid,"SMOKING");
    	PreloadAnimLib(playerid,"FOOD");
    	PreloadAnimLib(playerid,"ON_LOOKERS");
    	PreloadAnimLib(playerid,"DEALER");
		PreloadAnimLib(playerid,"CRACK");
		PreloadAnimLib(playerid,"CARRY");
		PreloadAnimLib(playerid,"COP_AMBIENT");
		PreloadAnimLib(playerid,"PARK");
		PreloadAnimLib(playerid,"INT_HOUSE");
		PreloadAnimLib(playerid,"FOOD");
		gPlayerAnimLibsPreloaded[playerid] = 1;
	}
	return 1;
	}

public OnPlayerDeath(playerid, killerid, reason)
{
// if they die whilst performing a looping anim, we should reset the state
	if(gPlayerUsingLoopingAnim[playerid]) {
        gPlayerUsingLoopingAnim[playerid] = 0;
        TextDrawHideForPlayer(playerid,txtAnimHelper);
	}
	GameTextForPlayer(playerid, "~w~ Wasted", 2600, 3);
	if(killerid == INVALID_PLAYER_ID) {
        SendDeathMessage(INVALID_PLAYER_ID,playerid,reason);
	} else {
        if(gTeam[killerid] != gTeam[playerid]) {
			// Valid kill
	    	SendDeathMessage(killerid,playerid,reason);
			SetPlayerScore(killerid,GetPlayerScore(killerid)+1);
			GivePlayerMoney(killerid, 3500);
		} else {
			//Team Killer!
			new warning[256];
			format(warning, sizeof(warning), "Be careful! You have been punished for teamkilling.");
			SendClientMessage(killerid, 0xFFFF00AA, warning);
			SendDeathMessage(killerid,playerid,reason);
			GivePlayerMoney(killerid, -1000);
			SetPlayerScore(killerid, GetPlayerScore(killerid) - 1);
		}
	}
	SetPlayerColor(playerid,COLOR_GREY);
 	return 1;
}

public OnVehicleSpawn(vehicleid)
{
	return 1;
}

public OnVehicleDeath(vehicleid, killerid)
{
	return 1;
}

public OnPlayerText(playerid, text[])
{
	ApplyAnimation(playerid,"PED","IDLE_CHAT",4.0,0,1,1,1,1);
	if (IsPlayerMuted[playerid] == 1)
	{
	SystemMessage(playerid, "You can't speak while you are muted!");
	return 0;
	}
	return 1;
}


public OnPlayerPrivmsg(playerid, recieverid, text[])
{

return 1;
}

public OnPlayerCommandText(playerid, cmdtext[])
{
new tmp[256];
new string[256];
new sendername[MAX_PLAYER_NAME];
new giveplayer[MAX_PLAYER_NAME];
new cmd[256];
new playermoney;
new giver;
new giveplayerid, moneys, idx;
cmd = strtok(cmdtext, idx);
	new dancestyle;
//--------------------[GIVECASH]------------------------------------------------
if(strcmp(cmd, "/pay", true) == 0) {
	    tmp = strtok(cmdtext, idx);
		if(!strlen(tmp)) {
			SendClientMessage(playerid, COLOR_WHITE, "USAGE: /pay [playerid] [amount]");
			return 1;
		}
		giveplayerid = strval(tmp);
		tmp = strtok(cmdtext, idx);
		if(!strlen(tmp)) {
			SendClientMessage(playerid, COLOR_WHITE, "USAGE: /pay [playerid] [amount]");
			return 1;
		}
 		moneys = strval(tmp);
		//printf("givecash_command: %d %d",giveplayerid,moneys);
		if (IsPlayerConnected(giveplayerid)) {
			GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
			GetPlayerName(playerid, sendername, sizeof(sendername));
			playermoney = GetPlayerMoney(playerid);
			if (moneys > 0 && playermoney >= moneys) {
				GivePlayerMoney(playerid, (0 - moneys));
				GivePlayerMoney(giveplayerid, moneys);
				format(string, sizeof(string), "You have sent %s(player: %d), $%d.", giveplayer,giveplayerid, moneys);
				SendClientMessage(playerid, COLOR_YELLOW, string);
				format(string, sizeof(string), "You have recieved $%d from %s(player: %d).", moneys, sendername, playerid);
				SendClientMessage(giveplayerid, COLOR_YELLOW, string);
				printf("%s(playerid:%d) has transfered %d to %s(playerid:%d)",sendername, playerid, moneys, giveplayer, giveplayerid);
			} else { SendClientMessage(playerid, COLOR_YELLOW, "Invalid transaction amount."); }
		} else {
		format(string, sizeof(string), "%d is not an active player.", giveplayerid);
		SendClientMessage(playerid, COLOR_YELLOW, string); }
		return 1;
}

//------------------------------------------------------------------------------
// LEVELS COMMANDS

// FINNISH
if(strcmp(cmdtext, "/po", true) == 0) { //Displays the text: "This is the PolicE!!, Pullover Immedietly" to all players
	if(gTeam[playerid] == TEAM_AGENT )
		SendClientMessageToAll(COLOR_WHITE, "This Is The LAW!!, Pull Over Now or You will Be Jailed!!");
	else
		SendClientMessage(playerid, COLOR_RED, "You Are NOT official AGENT!!");
	return 1;
}

if(strcmp(cmdtext,"/duty")==0) {
if(gTeam[playerid] == TEAM_AGENT) {
SendClientMessage(playerid, COLOR_YELLOW,"Good to see you officer");
SendClientMessage(playerid, COLOR_YELLOW,"Your commands as AGENT are:/jail /unjail /suspect /unsuspect /crimlock /crimunlock /po");
GivePlayerWeapon(playerid, 24, 10001);
GivePlayerWeapon(playerid, 3, 1);
GivePlayerWeapon(playerid, 25, 10001);
GivePlayerWeapon(playerid, 29, 10001);
GivePlayerWeapon(playerid,31,10001);
return 1;
} else {
SendClientMessage(playerid, COLOR_YELLOW,"You aren't a AGENT");
return 1; }}
if(strcmp(cmdtext,"/modhelp")== 0) {
SendClientMessage(playerid, COLOR_WHITE,"Welcome to ™..:..Tec9 LS-RolePlaying..:..™");
SendClientMessage(playerid, COLOR_WHITE,"Server is using on LS-RPG GM coded by ryder");
SendClientMessage(playerid, COLOR_WHITE,"If you are new let's take some tutorial");
SendClientMessage(playerid, COLOR_WHITE,"This server use local chat ( this means you can only talk to players near you)");
SendClientMessage(playerid, COLOR_WHITE,"If you want to talk to other people type /ooc");
SendClientMessage(playerid, COLOR_WHITE,"You can join a gang.Buy a house.Order a car for your house.");
SendClientMessage(playerid, COLOR_WHITE,"Be a taxi driver.Earn some money.Or just be a dealer(sell some weed).");
SendClientMessage(playerid, COLOR_WHITE,"Civilian: get a job or organise some stunts competition.");
SendClientMessage(playerid, COLOR_WHITE,"Be a medic.Search the city for injured people and heal them ( /heal ).");
SendClientMessage(playerid, COLOR_WHITE,"Be a fireman.Search the city for fire emergency.");
SendClientMessage(playerid, COLOR_WHITE,"Be a mafia member.Protect local gangs for paytax.");
SendClientMessage(playerid, COLOR_WHITE,"Be a agent:Arrest people.Hunt them down.Get bribed and let them escape.You decide");
SendClientMessage(playerid, COLOR_WHITE,"This is Tec9 LS-RolePlaying server.You decide what you want to do");
return 1; }
if(strcmp(cmdtext,"/rules")== 0) {
SendClientMessage(playerid, COLOR_WHITE,"Welcome to ™..:..Tec9 LS-RolePlaying..:..™");
SendClientMessage(playerid, COLOR_WHITE,"1.Dont DM. It will teleport you into a kick");
SendClientMessage(playerid, COLOR_WHITE,"2.Dont evade death.This means if you get killed dont close the game and rejoin.This will teleport you into a 3 days ban");
SendClientMessage(playerid, COLOR_WHITE,"3.Dont swear");
SendClientMessage(playerid, COLOR_WHITE,"4.Dont TK.TK = Team killing. Dont kill your team players.You will receive kick for this");
SendClientMessage(playerid, COLOR_WHITE,"5.Dont ignore admins.This means you must do what admins say. And dont use restricted skins");
SendClientMessage(playerid, COLOR_WHITE,"6.The most important,dont use hacks,cheats,camhacks,etc.This will give you a warning kick");
SendClientMessage(playerid, COLOR_WHITE,"7.Dont Drive by as Driver(only as passanger).");
SendClientMessage(playerid, COLOR_WHITE,"8.Talk english on /ooc.If you dont you get kicked");
return 1; }

if(strcmp(cmdtext,"/commands")== 0 ) {
SendClientMessage(playerid, COLOR_WHITE,"Registration:/register /login");
SendClientMessage(playerid, COLOR_WHITE,"Admin commands: not yet added");
SendClientMessage(playerid, COLOR_WHITE,"Admin commands: not yet added");
SendClientMessage(playerid, COLOR_WHITE,"Agents commands:/duty /jail /unjail /suspect /unsuspect /crimlock /crimunlock /po(pull over)");
SendClientMessage(playerid, COLOR_WHITE,"Cell phone commands:use /SMS to sms to your friend in private");
SendClientMessage(playerid, COLOR_WHITE,"Cell phone commands:use /pb or /phonebook to see the phonenumbers of the online players");
SendClientMessage(playerid, COLOR_WHITE,"Cell phone commands:use /mpn or /myphonenumber to see your own phonenumber");
SendClientMessage(playerid, COLOR_WHITE,"Cell phone commands:use /pc or /phonecredits to see the credits");
SendClientMessage(playerid, COLOR_WHITE,"type /commands2 for next page");
return 1; }

if(strcmp(cmdtext,"/commands2")== 0 ) {
SendClientMessage(playerid,COLOR_WHITE,"Others:/handsup /drunk /bomb /getarrested /laugh /lookout /robman");
SendClientMessage(playerid,COLOR_WHITE,"Others:/crossarms /lay /hide /vomit /eat /wave /taichi");
SendClientMessage(playerid,COLOR_WHITE,"Others:/deal /crack /smokem /smokef /groundsit /chat /dance /fuckku");
SendClientMessage(playerid,COLOR_WHITE,"House commands:/buyhouse /sellhouse /lockhouse /unlockhouse /ordercar");
SendClientMessage(playerid,COLOR_WHITE,"Car commands:/lock /unlock /purchase /sellmycar /callmycar /eject /ejectall ");
SendClientMessage(playerid,COLOR_WHITE,"Weed Commands /sellweed /useweed /refuseweed /acceptweed ");
SendClientMessage(playerid,COLOR_WHITE,"Medic commands: /heal ");
SendClientMessage(playerid,COLOR_WHITE,"Money transfer:/pay");
return 1; }

// ________________________________________________________________
//COP commands
if(strcmp(cmd, "/jail", true) == 0) {//UPDATED JAIL CMD ONlY JAILS IF THE SPECIFIED PERSON ISNT JAILED!
	tmp = strtok(cmdtext, idx);
	if(!strlen(tmp)) {
		SendClientMessage(playerid, COLOR_GREEN, "Usage: /jail [Player ID]");
		return 1;
		}
	giveplayerid = strval(tmp);
	if(jailed[giveplayerid]==0) {
        if (gTeam[playerid] == TEAM_AGENT) {
            if (IsPlayerConnected(giveplayerid)) {
				GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
				GetPlayerName(playerid, sendername, sizeof(sendername));
				format(string, sizeof(string), "You have been jailed by %s!", sendername, playerid);
   				SendClientMessage(giveplayerid, COLOR_RED, string);
				format(string, sizeof(string), "%s has been jailed by %s!", giveplayer, giveplayerid, sendername, playerid);
                SendClientMessageToAll(COLOR_RED, string);
                printf(string);
                SetPlayerInterior(giveplayerid,6);
				jailed[giveplayerid] = 1;
 				SetPlayerPos(giveplayerid,264.7763,77.9077,1001.0391);
     			SetPlayerScore(giver, GetPlayerScore(giver) + 5);
        		GivePlayerMoney(giver,1000);
				PlayerPlaySound(giveplayerid,1082,198.3797,160.8905,1003.0300);
  				TogglePlayerControllable(giveplayerid,0);   //So the player that is jailed can't use /suicide
    			return 1;
			 } else {
        	format(string, sizeof(string), "id %d is not an active player.", giveplayerid);
			SendClientMessage(playerid, COLOR_YELLOW, string); }
		 } else {
        format(string, sizeof(string), "You are not a cop why are you trying to jail", giveplayerid);
        SendClientMessage(playerid, COLOR_YELLOW, string); }
	} else {
	format(string, sizeof(string), "Someone already jailed that player", giveplayerid);
	SendClientMessage(playerid, COLOR_YELLOW, string); }
	return 1;
}

if(strcmp(cmd, "/unjail", true) == 0) {//UPDATED UNJAIL CMD ONly UNJAILS IF THE SPECIFIED PERSON IS JAILED!
	tmp = strtok(cmdtext, idx);
	if(!strlen(tmp)) {
		SendClientMessage(playerid, COLOR_GREEN, "Usage: /unjail [Player ID]");
		return 1;
		}
	giveplayerid = strval(tmp);
	if(jailed[giveplayerid]==1) {
        if (gTeam[playerid] == TEAM_AGENT) {
            if (IsPlayerConnected(giveplayerid)) {
				GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
				GetPlayerName(playerid, sendername, sizeof(sendername));
				format(string, sizeof(string), "You have been unjailed by %s (ID:%d)!", sendername, playerid);
				SendClientMessage(giveplayerid, COLOR_GREEN, string);
				format(string, sizeof(string), "%s (ID:%d) has been unjailed by %s (ID:%d)", giveplayer, giveplayerid, sendername, playerid);
				SendClientMessageToAll(COLOR_GREEN, string);
				printf(string);
				jailed[giveplayerid] = 0;
				SetPlayerInterior(giveplayerid,0);
				SetPlayerPos(giveplayerid,1541.5916,-1676.3271,13.5528);
				SetPlayerFacingAngle(giveplayerid,177.0350);
				SetCameraBehindPlayer(giveplayerid);
				TogglePlayerControllable(giveplayerid,1);
				return 1;
			} else {
        format(string, sizeof(string), "id %d Is not even online Dumbass!!", giveplayerid);
		SendClientMessage(playerid, COLOR_YELLOW, string); }
		} else {
        format(string, sizeof(string), "You Can't unjail when your not a cop", giveplayerid);
        SendClientMessage(playerid, COLOR_WHITE, string); }
	} else {
	format(string, sizeof(string), "This person Is already unjailed", giveplayerid);
	SendClientMessage(playerid, COLOR_WHITE, string); }
	return 1;
}

if(strcmp(cmd, "/crimlock", true) == 0) {//UPDATED JAIL CMD ONlY JAILS IF THE SPECIFIED PERSON ISNT JAILED!
	tmp = strtok(cmdtext, idx);
	if(!strlen(tmp)) {
		SendClientMessage(playerid, COLOR_GREEN, "Usage: /crimlock [Player ID]");
		return 1;
		}
	giveplayerid = strval(tmp);
	if(jailed[giveplayerid]==0) {
        if (gTeam[playerid] == TEAM_AGENT) {
            if (IsPlayerInAnyVehicle(giveplayerid)) {
				GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
				GetPlayerName(playerid, sendername, sizeof(sendername));
				format(string, sizeof(string), "You have been locked in the car by %s!", sendername, playerid);
   				SendClientMessage(giveplayerid, COLOR_RED, string);
                format(string, sizeof(string), "%s has been locked in the car by %s!", giveplayer, giveplayerid, sendername, playerid);
                SendClientMessageToAll(COLOR_RED, string);
                printf(string);
                TogglePlayerControllable(giveplayerid,0);   //So the player that is jailed can't use /kill
               	return 1;
			} else {
			format(string, sizeof(string), "id %d is not an active player.", giveplayerid);
			SendClientMessage(playerid, COLOR_YELLOW, string); }
		 } else {
        format(string, sizeof(string), "You are not a cop why are you trying to lock someone in your car", giveplayerid);
        SendClientMessage(playerid, COLOR_YELLOW, string); }
	} else {
	format(string, sizeof(string), "You have already locked him in the car", giveplayerid);
	SendClientMessage(playerid, COLOR_YELLOW, string); }
	return 1;
}

if(strcmp(cmd, "/suspect", true) == 0) {
	tmp = strtok(cmdtext, idx);
	if(!strlen(tmp)) {
		SendClientMessage(playerid, COLOR_GREEN, "Usage: /suspect [Player ID]");
		return 1;
		}
	giveplayerid = strval(tmp);
	if(jailed[giveplayerid]==0) {
		if (gTeam[playerid] == TEAM_AGENT) {
			if (IsPlayerConnected(giveplayerid)) {
				GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
				GetPlayerName(playerid, sendername, sizeof(sendername));
				format(string, sizeof(string), "You have been Suspected by the Cop Member %s!", sendername, playerid);
				SendClientMessage(giveplayerid, COLOR_RED, string);
				format(string, sizeof(string), "%s has been Suspected by the Cop Member %s!", giveplayer, giveplayerid, sendername, playerid);
				SendClientMessageToAll(COLOR_GREEN, string);
				printf(string);
				SetPlayerColor(giveplayerid, COLOR_ORANGE);
				SetPlayerWantedLevel(giveplayerid, 6); //Put here the wantedlevel 1-6
				return 1;
			} else {
        format(string, sizeof(string), "id %d is not an active player.", giveplayerid);
      	SendClientMessage(playerid, COLOR_YELLOW, string); }
		} else {
        format(string, sizeof(string), "You are not a cop why are you trying to Suspect this player", giveplayerid);
        SendClientMessage(playerid, COLOR_YELLOW, string); }
	} else {
	format(string, sizeof(string), "This person isn't even Suspected in a car", giveplayerid);
	SendClientMessage(playerid, COLOR_YELLOW, string); }
	return 1;
}

if(strcmp(cmd, "/unsuspect", true) == 0) {
	tmp = strtok(cmdtext, idx);
	if(!strlen(tmp)) {
		SendClientMessage(playerid, COLOR_GREEN, "Usage: /unsuspect [Player ID]");
		return 1;
		}
	giveplayerid = strval(tmp);
	if(jailed[giveplayerid]==0) {
		if (gTeam[playerid] == TEAM_AGENT) {
			if (IsPlayerConnected(giveplayerid)) {
				GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
				GetPlayerName(playerid, sendername, sizeof(sendername));
				format(string, sizeof(string), "You have been UnSupected by the Cop Member %s!", sendername, playerid);
				SendClientMessage(giveplayerid, COLOR_RED, string);
				format(string, sizeof(string), "%s has been UnSuspected by the Cop Member %s!", giveplayer, giveplayerid, sendername, playerid);
				SendClientMessageToAll(COLOR_GREEN, string);
				printf(string);
				SetPlayerColor(giveplayerid, COLOR_GREY);
				SetPlayerWantedLevel(giveplayerid, 0);
				return 1;
			} else {
        	format(string, sizeof(string), "id %d is not an active player.", giveplayerid);
      		SendClientMessage(playerid, COLOR_YELLOW, string); }
		} else {
        format(string, sizeof(string), "You are not a cop why are you trying to UnSuspect this player", giveplayerid);
        SendClientMessage(playerid, COLOR_YELLOW, string); }
	} else {
	format(string, sizeof(string), "This person isn't even Suspected in a car", giveplayerid);
	SendClientMessage(playerid, COLOR_YELLOW, string); }
	return 1;
}

if(strcmp(cmd, "/crimunlock", true) == 0) {//UPDATED JAIL CMD ONlY JAILS IF THE SPECIFIED PERSON ISNT JAILED!
	tmp = strtok(cmdtext, idx);
	if(!strlen(tmp)) {
		SendClientMessage(playerid, COLOR_GREEN, "Usage: /crimunlock [Player ID]");
		return 1;
		}
	giveplayerid = strval(tmp);
	if(jailed[giveplayerid]==0) {
		if (gTeam[playerid] == TEAM_AGENT) {
			if (IsPlayerInAnyVehicle(giveplayerid)) {
					GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
					GetPlayerName(playerid, sendername, sizeof(sendername));
					format(string, sizeof(string), "You have been unlocked by %s!", sendername, playerid);
     				SendClientMessage(giveplayerid, COLOR_RED, string);
                    format(string, sizeof(string), "%s has been unlocked and let out the car by %s!", giveplayer, giveplayerid, sendername, playerid);
                    SendClientMessageToAll(COLOR_GREEN, string);
                    printf(string);
                    TogglePlayerControllable(giveplayerid,1);   //So the player that is jailed can't use /kill
                 	return 1;
			} else {
   			format(string, sizeof(string), "id %d is not an active player.", giveplayerid);
			SendClientMessage(playerid, COLOR_YELLOW, string); }
		} else {
        format(string, sizeof(string), "You are not a cop why are you trying to unlock this player", giveplayerid);
        SendClientMessage(playerid, COLOR_YELLOW, string); }
	} else {
	format(string, sizeof(string), "This person isn't even locked in a car", giveplayerid);
	SendClientMessage(playerid, COLOR_YELLOW, string); }
	return 1;
}

if(strcmp(cmd,"/announce",true) == 0) {
    tmp = strtok(cmdtext, idx);
	if(!strlen(tmp)) {
		SendClientMessage(playerid,COLOR_WHITE,"SERVER: /announce [message]");
		return 1;
		}
	format(string,sizeof(string),"~w~%s",tmp);
	GameTextForAll(string,2000,5);
	return 1;
	}


// _________________________________________________________________


// _____________________________________________________________
// medics commands
if(strcmp(cmdtext, "/heal", true, 3)==0) {
	if (gTeam[playerid] == TEAM_MEDICS) {
        tmp = strtok(cmdtext, idx);
		if(!strlen(tmp)) {
         	SendClientMessage(playerid, COLOR_WHITE, "USAGE: /heal [ID]");
         	return 1;
     		}
 		new pid = strval(tmp);
		if (IsPlayerConnected(pid)) {
         	SetPlayerHealth(pid,100);
         	SetPlayerScore(giver, GetPlayerScore(giver) + 5);
         	GivePlayerMoney(giver,500);
         	SendClientMessage(playerid, COLOR_LIGHTBLUE,"You got 500$ Good Job!");
			}
	}
	return 1;
}



// ___________________________________________________________

// ___________________________________________________________
//_____________________________________________________________
// ___________________________________________DEALERS commands
if(strcmp(cmd, "/sellweed", true) == 0) {
	if (gTeam[playerid] != TEAM_DEALERS) {
		SendClientMessage(playerid,COLOR_WHITE,"SERVER: You don't have permission to use this command.");
		return 1;
		}
	tmp = strtok(cmdtext, idx);
	giver = playerid;
	if(!strlen(tmp)) {
		SendClientMessage(playerid, COLOR_WHITE, "USAGE: /sellweed [playerid].");
		return 1;
		}
	giveplayerid = strval(tmp);
	if (!IsPlayerConnected(giveplayerid)) {
		SendClientMessage(playerid, COLOR_WHITE, "SERVER: Invalid playerid.");
		return 1;
		}
	if (GetDistanceBetweenPlayers(playerid,giveplayerid) >5) {
		SendClientMessage(playerid, COLOR_WHITE, "SERVER: You are to far away from a player.");
		return 1;
		}
	offerweed[giveplayerid] = 1;
	GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
	GetPlayerName(playerid, sendername, sizeof(sendername));
	format(string, sizeof(string), "|__________________Offered Weed__________________|");
	SendClientMessage(playerid, COLOR_MARON, string);
	format(string, sizeof(string), "SERVER: You have offered 1 gram of weed to %s.", giveplayer, giveplayerid);
	SendClientMessage(playerid, COLOR_MARON, string);
	format(string, sizeof(string), "|__________________Offered Weed__________________|");
	SendClientMessage(giveplayerid, COLOR_MARON, string);
	format(string, sizeof(string), "SERVER: You have been offered weed by %s, type /acceptweed or /refuseweed, $1000.", sendername, giver);
	SendClientMessage(giveplayerid, COLOR_MARON, string);
	format(string, sizeof(string), "SERVER: You have 15 seconds to accept or refuse the weed.");
	SendClientMessage(giveplayerid, COLOR_MARON, string);
	SetTimer("removeweedoffer",15000,0);
	return 1;
}

if (!strcmp(cmdtext, "/acceptweed", true)) {
	if (offerweed[playerid] == 0) {
		SendClientMessage(playerid,COLOR_WHITE,"SERVER: Nobody has offered you any weed.");
		return 1;
		}
	GetPlayerName(playerid, sendername, sizeof(sendername));
	SetPlayerScore(giver, GetPlayerScore(giver) + 5);
	GivePlayerMoney(giver,1000);
	GivePlayerMoney(playerid,-1000);
	SendClientMessage(playerid, COLOR_MARON, "|__________________Bought Weed__________________|");
	SendClientMessage(playerid, COLOR_MARON, "SERVER: You have bought 1 gram of weed for $1000.");
	SendClientMessage(playerid, COLOR_MARON, "SERVER: You can smoke it by typing /useweed.");
	SendClientMessage(playerid, COLOR_MARON, "SERVER: Type /weedstats to see how much weed you have.");
	SendClientMessage(giver, COLOR_MARON, "|__________________Sold Weed__________________|");
	SendClientMessage(giver, COLOR_MARON, "SERVER: You have sold 1 gram of weed for $1000.");
	format(string, sizeof(string), "%s has bought 1 gram of weed from the West Side Gang.", sendername);
	SendClientMessageToAll(COLOR_YELLOW, string);
	offerweed[playerid] = 0;
	haveweed[playerid] = 1;
	return 1;
}

if (!strcmp(cmdtext, "/refuseweed", true)) {
	if (offerweed[playerid] == 0) {
		SendClientMessage(playerid,COLOR_WHITE,"SERVER: Nobody has offered you any weed.");
		return 1;
		}
	GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
	SendClientMessage(playerid, COLOR_MARON, "|__________________Refused Weed__________________|");
	SendClientMessage(playerid, COLOR_MARON, "SERVER: You have refused the weed.");
	SendClientMessage(giver, COLOR_MARON, "|__________________Refused Weed__________________|");
	format(string, sizeof(string), "SERVER: %s has refused the weed.", giveplayer, giveplayerid);
	SendClientMessage(playerid, COLOR_MARON, string);
	offerweed[playerid] = 0;
	return 1;
}

if (!strcmp(cmdtext, "/useweed", true)) {
	if (haveweed[playerid] == 0) {
		SendClientMessage(playerid,COLOR_WHITE,"SERVER: You don't have any weed.");
		return 1;
		}
	if (haveweed[playerid] == 1) {
		SetPlayerHealth(playerid,100);
		GetPlayerName(playerid, sendername, sizeof(sendername));
		GameTextForPlayer(playerid, "You are~n~~g~stoned!", 5000, 5);
		SendClientMessage(playerid,COLOR_MARON, "|__________________Smoked Weed__________________|");
		SendClientMessage(playerid, COLOR_MARON, "SERVER: You smoked weed, health restored.");
		format(string, sizeof(string), "%s has smoked 1 gram of weed and is very stoned.", sendername);
		SendClientMessageToAll(COLOR_YELLOW, string);
		haveweed[playerid] = 0;
		}
	return 1;
}
//// -------------------------------[CASINO]------------------------------------

else if(strcmp(cmd,"/about",true)==0)
	{
		SendClientMessage(playerid,COLOR_WHITE,"GameMode Made by ryder.");
		SendClientMessage(playerid,COLOR_WHITE,"The objective of this mod depends on what you are:");
		SendClientMessage(playerid,COLOR_WHITE,"If you're a cop, S.W.A.T. or F.B.I., you need to hunt criminals down and put the in jail.");
		SendClientMessage(playerid,COLOR_WHITE,"If you're a medic, you need to heal people when they are hurt.");
		SendClientMessage(playerid,COLOR_WHITE,"Talking to all players on this mod is disabled.");
		SendClientMessage(playerid,COLOR_WHITE,"If you just say something, the players that are");
		SendClientMessage(playerid,COLOR_WHITE,"close enough to you will only recieve that message.");
		SendClientMessage(playerid,COLOR_WHITE,"But don't worry you can still call or just use /ooc");
		SendClientMessage(playerid,COLOR_WHITE,"people on their cellphone, send an sms or advertise.");

	}




////////////////////////////////////////////////////////////////////////////////

// _____________________________________________________________
if( !strcmp(cmdtext, "/me", true, 3) ) // 3 is the length of /me
{
	new str[256], pname[256];
	GetPlayerName(playerid, pname, 256);
	format(str, 256, "%s %s", pname, cmdtext[4]);
	SendClientMessageToAll(0xFFFF00AA, str);
	return 1;
}

if( !strcmp(cmdtext, "/ooc", true, 3) ) // 3 is the length of /me
{
	new str[256], pname[256];
	GetPlayerName(playerid, pname, 256);
	format(str, 256, "((OOC  %s:%s ))", pname, cmdtext[4]);
	SendClientMessageToAll(COLOR_WHITE, str);
	return 1;
}

//=========================END OF THE JOBS=========================
	if(strcmp(cmd,"/animlist",true)==0)
	{
		SendClientMessage(playerid,0xAFAFAFAA,"Available Animations:");
	    SendClientMessage(playerid,0xAFAFAFAA,"/handsup /drunk /bomb /getarrested /laugh /lookout /robman");
        SendClientMessage(playerid,0xAFAFAFAA,"/crossarms /lay /hide /vomit /eat /wave /taichi");
        SendClientMessage(playerid,0xAFAFAFAA,"/deal /crack /smokem /smokef /groundsit /chat /dance /f**ku");
	}

	if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) {
        // We don't handle anything here that can be used InVehicle
        return 0;
	}

	// HANDSUP
 	if(strcmp(cmd, "/handsup", true) == 0) {
		SetPlayerSpecialAction(playerid,SPECIAL_ACTION_HANDSUP);
        return 1;
    }

    // CELLPHONE IN
 	if(strcmp(cmd, "/cellin", true) == 0) {
		SetPlayerSpecialAction(playerid,SPECIAL_ACTION_USECELLPHONE);
        return 1;
    }

    // CELLPHONE OUT
 	if(strcmp(cmd, "/cellout", true) == 0) {
		SetPlayerSpecialAction(playerid,SPECIAL_ACTION_STOPUSECELLPHONE);
        return 1;
    }

    // Drunk
    if(strcmp(cmd, "/drunk", true) == 0) {
		LoopingAnim(playerid,"PED","WALK_DRUNK",4.0,1,1,1,1,0);
		return 1;
    }

	// Place a Bomb
    if (strcmp("/bomb", cmdtext, true) == 0) {
		ClearAnimations(playerid);
		OnePlayAnim(playerid, "BOMBER", "BOM_Plant", 4.0, 0, 0, 0, 0, 0); // Place Bomb
		return 1;
	}
	// Police Arrest
    if (strcmp("/getarrested", cmdtext, true, 7) == 0) {
	      LoopingAnim(playerid,"ped", "ARRESTgun", 4.0, 0, 1, 1, 1, -1); // Gun Arrest
		  return 1;
    }
	// Laugh
    if (strcmp("/laugh", cmdtext, true) == 0) {
          OnePlayAnim(playerid, "RAPPING", "Laugh_01", 4.0, 0, 0, 0, 0, 0); // Laugh
		  return 1;
	}
	// Rob Lookout
    if (strcmp("/lookout", cmdtext, true) == 0) {
          OnePlayAnim(playerid, "SHOP", "ROB_Shifty", 4.0, 0, 0, 0, 0, 0); // Rob Lookout
		  return 1;
	}
	// Rob Threat
    if (strcmp("/robman", cmdtext, true) == 0) {
          LoopingAnim(playerid, "SHOP", "ROB_Loop_Threat", 4.0, 1, 0, 0, 0, 0); // Rob
		  return 1;
	}
	// Arms crossed
    if (strcmp("/crossarms", cmdtext, true) == 0) {
          LoopingAnim(playerid, "COP_AMBIENT", "Coplook_loop", 4.0, 0, 1, 1, 1, -1); // Arms crossed
		  return 1;
	}
	// Lay Down
    if (strcmp("/lay", cmdtext, true, 6) == 0) {
          LoopingAnim(playerid,"BEACH", "bather", 4.0, 1, 0, 0, 0, 0); // Lay down
		  return 1;
    }
	// Take Cover
    if (strcmp("/hide", cmdtext, true, 3) == 0) {
          LoopingAnim(playerid, "ped", "cower", 3.0, 1, 0, 0, 0, 0); // Taking Cover
		  return 1;
	}
	// Vomit
    if (strcmp("/vomit", cmdtext, true) == 0) {
	      OnePlayAnim(playerid, "FOOD", "EAT_Vomit_P", 3.0, 0, 0, 0, 0, 0); // Vomit BAH!
		  return 1;
	}
	// Eat Burger
    if (strcmp("/eat", cmdtext, true) == 0) {
	      OnePlayAnim(playerid, "FOOD", "EAT_Burger", 3.0, 0, 0, 0, 0, 0); // Eat Burger
		  return 1;
	}
	// Wave
    if (strcmp("/wave", cmdtext, true) == 0) {
	      LoopingAnim(playerid, "ON_LOOKERS", "wave_loop", 4.0, 1, 0, 0, 0, 0); // Wave
		  return 1;
	}
	// Slap Ass
    if (strcmp("/slapass", cmdtext, true) == 0) {
         OnePlayAnim(playerid, "SWEET", "sweet_ass_slap", 4.0, 0, 0, 0, 0, 0); // Ass Slapping
		  return 1;
	}
	// Dealer
    if (strcmp("/deal", cmdtext, true) == 0) {
          OnePlayAnim(playerid, "DEALER", "DEALER_DEAL", 4.0, 0, 0, 0, 0, 0); // Deal Drugs
		  return 1;
	}
	// Crack Dieing
    if (strcmp("/crack", cmdtext, true, 6) == 0) {
          LoopingAnim(playerid, "CRACK", "crckdeth2", 4.0, 1, 0, 0, 0, 0); // Dieing of Crack
		  return 1;
	}
	// Male Smoking
    if (strcmp("/smokem", cmdtext, true, 4) == 0) {
          LoopingAnim(playerid,"SMOKING", "M_smklean_loop", 4.0, 1, 0, 0, 0, 0); // Smoke
		  return 1;
	}
	// Female Smoking
    if (strcmp("/smokef", cmdtext, true) == 0) {
          LoopingAnim(playerid, "SMOKING", "F_smklean_loop", 4.0, 1, 0, 0, 0, 0); // Female Smoking
		  return 1;
	}
	// Sit
    if (strcmp("/groundsit", cmdtext, true, 4) == 0) {
          LoopingAnim(playerid,"BEACH", "ParkSit_M_loop", 4.0, 1, 0, 0, 0, 0); // Sit
		  return 1;
    }
    	// KISS
    if (strcmp("/kiss", cmdtext, true, 100) == 0) {
ApplyAnimation(playerid, "KISSING", "Playa_Kiss_02", 100.0, 0, 0, 0, 0, 0); // Kiss
SendClientMessage(playerid, 0xFF0000FF, "You are kissing someone");
return 1;
}
    	// SUICIDE COMMAND
    if(strcmp(cmd, "/suicide",true) == 0){
        SetPlayerHealth(playerid,0.0);
		return 1;

 	}
    // Idle Chat
    if(strcmp(cmd, "/chat", true) == 0) {
		 OnePlayAnim(playerid,"PED","IDLE_CHAT",4.0,0,0,0,0,0);
         return 1;
    }
    // Fucku
    if(strcmp(cmd, "/fucku", true) == 0) {
		 OnePlayAnim(playerid,"PED","fucku",4.0,0,0,0,0,0);
         return 1;
    }
    // TaiChi
    if(strcmp(cmd, "/taichi", true) == 0) {
		 LoopingAnim(playerid,"PARK","Tai_Chi_Loop",4.0,1,0,0,0,0);
         return 1;
    }

    // ChairSit
    if(strcmp(cmd, "/chairsit", true) == 0) {
		 LoopingAnim(playerid,"BAR","dnk_stndF_loop",4.0,1,0,0,0,0);
         return 1;
    }

    /* Would allow people to troll... but would be cool as a script
	   controlled function
    // Bed Sleep R
    if(strcmp(cmd, "/inbedright", true) == 0) {
		 LoopingAnim(playerid,"INT_HOUSE","BED_Loop_R",4.0,1,0,0,0,0);
         return 1;
    }
    // Bed Sleep L
    if(strcmp(cmd, "/inbedleft", true) == 0) {
		 LoopingAnim(playerid,"INT_HOUSE","BED_Loop_L",4.0,1,0,0,0,0);
         return 1;
    }*/


	// START DANCING
 	if(strcmp(cmd, "/dance", true) == 0) {


			// Get the dance style param
      		tmp = strtok(cmdtext, idx);
			if(!strlen(tmp)) {
				SendClientMessage(playerid,0xFF0000FF,"USAGE: /dance [style 1-4]");
				return 1;
			}

			dancestyle = strval(tmp);
			if(dancestyle < 1 || dancestyle > 4) {
			    SendClientMessage(playerid,0xFF0000FF,"USAGE: /dance [style 1-4]");
			    return 1;
			}

			if(dancestyle == 1) {
			    SetPlayerSpecialAction(playerid,SPECIAL_ACTION_DANCE1);
			} else if(dancestyle == 2) {
			    SetPlayerSpecialAction(playerid,SPECIAL_ACTION_DANCE2);
			} else if(dancestyle == 3) {
			    SetPlayerSpecialAction(playerid,SPECIAL_ACTION_DANCE3);
			} else if(dancestyle == 4) {
			    SetPlayerSpecialAction(playerid,SPECIAL_ACTION_DANCE4);
			}
 	  		return 1;
	}
dcmd(kick, 4, cmdtext);
    dcmd(ban, 3, cmdtext);
    dcmd(say, 3, cmdtext);
    dcmd(banip, 5, cmdtext);
    dcmd(unbanip, 7, cmdtext);
    dcmd(freeze, 6, cmdtext);
    dcmd(unfreeze, 8, cmdtext);
    dcmd(killplayer, 10, cmdtext);
    dcmd(jail, 4, cmdtext);
    dcmd(unjail, 6, cmdtext);
    dcmd(slap, 4, cmdtext);
    dcmd(mute, 4, cmdtext);
    dcmd(unmute, 6, cmdtext);
    dcmd(explodeplayer, 13, cmdtext);
    dcmd(resetweapons, 12, cmdtext);
    dcmd(restart, 7, cmdtext);
    dcmd(lockserver, 10, cmdtext);
    dcmd(unlockserver, 12, cmdtext);
    dcmd(specplayer, 10, cmdtext);
    dcmd(specvehicle, 11, cmdtext);
    dcmd(specoff, 7, cmdtext);
    dcmd(settime, 7, cmdtext);
    dcmd(cs, 2, cmdtext);
    dcmd(setweather, 10, cmdtext);
    dcmd(setgravity, 10, cmdtext);
    dcmd(whois, 5, cmdtext);
    dcmd(skick, 5, cmdtext);
    dcmd(sban, 4, cmdtext);
    dcmd(sbanip, 6, cmdtext);
    dcmd(sfreeze, 7, cmdtext);
    dcmd(sunfreeze, 9, cmdtext);
    dcmd(skillplayer, 11, cmdtext);
    dcmd(sjail, 5, cmdtext);
    dcmd(sunjail, 7, cmdtext);
    dcmd(sslap, 5, cmdtext);
    dcmd(smute, 5, cmdtext);
    dcmd(sunmute, 7, cmdtext);
    dcmd(sexplodeplayer, 14, cmdtext);
    dcmd(sresetweapons, 13, cmdtext);
    dcmd(createmoney, 11, cmdtext);
    dcmd(deletemoney, 11, cmdtext);
    dcmd(srestart, 8, cmdtext);
    dcmd(slockserver, 11, cmdtext);
    dcmd(sunlockserver, 13, cmdtext);
    dcmd(report, 6, cmdtext);
    dcmd(changemode, 10, cmdtext);
    dcmd(reloadbans, 10, cmdtext);
    dcmd(reloadlog, 9, cmdtext);
    dcmd(players, 7, cmdtext);
    dcmd(loadfs, 6, cmdtext);
    dcmd(unloadfs, 8, cmdtext);
    dcmd(reloadfs, 8, cmdtext);
	return 0;
}
//-------------------------------------------------
// EOF


public OnPlayerInfoChange(playerid)
{
	return 1;
}

public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
	return 1;
}

public OnPlayerExitVehicle(playerid, vehicleid)
{
	return 1;
}

public OnPlayerStateChange(playerid, newstate, oldstate)
{
	return 1;
}

public OnPlayerEnterCheckpoint(playerid)
{
	return 1;
}

public OnPlayerLeaveCheckpoint(playerid)
{
	return 1;
}

public OnPlayerEnterRaceCheckpoint(playerid)
{
	return 1;
}

public OnPlayerLeaveRaceCheckpoint(playerid)
{
	return 1;
}

public OnRconCommand(cmd[])
{
	return 1;
}

public OnObjectMoved(objectid)
{
	return 1;
}

public OnPlayerObjectMoved(playerid, objectid)
{
	return 1;
}

public OnPlayerPickUpPickup(playerid, pickupid)
{
///////[--------------------GANG HOUSES-----------------------------------------
////////////////////////////////////////////////////////////////////////////////
	switch(pickupid) {
	    case 0:	{
				GameTextForPlayer(playerid, "~g~ GROVE STREET GANG HOUSE", 3500, 3);
				SetPlayerInterior(playerid,7);
				SetPlayerPos(playerid,225.8888,1028.3981,1084.0132);
				return 1;
				}
		case 1: {
				SetPlayerInterior(playerid,0);
				SetPlayerPos(playerid,2486.5610,-1651.7820,13.4831);
				return 1;
				}
		case 2: {
				GameTextForPlayer(playerid, "~b~ VARRIOS LOS AZTECAS GANG HOUSE", 3500, 3);
				SetPlayerInterior(playerid,6);
				SetPlayerPos(playerid,234.5062,1069.1062,1084.1932);
				return 1;
				}
		case 3: {
				SetPlayerInterior(playerid,0);
				SetPlayerPos(playerid,1889.8258,-2023.7972,13.5391);
				return 1;
				}
		case 4: {
				if (gTeam[playerid] != TEAM_DEALERS) {
					SetPlayerInterior(playerid,3);
					SetPlayerPos(playerid,962.2022,-53.3769,1001.1246);
					GameTextForPlayer(playerid, "~p~ BALLAS GANG HOUSE", 3500, 3);
					}
				return 1;
				}
		case 5: {
		        SetPlayerInterior(playerid,0);
				SetPlayerPos(playerid,965.4288,-53.0039,1001.1246);
				return 1;
				}
		case 6: {
				SetPlayerInterior(playerid,5);
				SetPlayerPos(playerid,140.0996,1375.2472,1086.6292);
				GameTextForPlayer(playerid, "~y~ VAGOS GANG HOUSE", 3500, 3);
				return 1;
				}
		case 7: {
				SetPlayerInterior(playerid,0);
				SetPlayerPos(playerid,2519.7959,-1324.1169,33.4679);
				return 1;
				}
		case 9: {
				SetPlayerInterior(playerid,10);
				SetPlayerPos(playerid,1992.8822,1017.4771,994.8906);
				GameTextForPlayer(playerid, "~y~ Welcome to ~w~ Triads ~r~ CASINO", 3500, 3);
				return 1;
				}
		case 10: {
				SetPlayerInterior(playerid,0);
				SetPlayerPos(playerid,1498.3578,-1584.8083,13.5469);
				return 1;
				}
		case 11: {
				SetPlayerInterior(playerid,1);
				SetPlayerPos(playerid,2527.4158,-1679.6664,1015.4986);
				GameTextForPlayer(playerid, "~g~ GSF leader house ~n~ ~r~ [GSF]TheGame", 3500, 3);
				return 1;
				}
        case 12: {
				SetPlayerInterior(playerid,0);
				SetPlayerPos(playerid,2518.2305,-1678.6154,14.4960);
				return 1;
				}
        case 13: {
				SetPlayerInterior(playerid,2);
				SetPlayerPos(playerid,2449.0347,-1703.2432,1013.5078);
				GameTextForPlayer(playerid, "~g~ GSF OG house ~n~ ~r~ [GSFMansy", 3500, 3);
				return 1;
				}
        case 14: {
				SetPlayerInterior(playerid,0);
				SetPlayerPos(playerid,2460.2639,-1686.7626,13.5424);
				return 1;
				}
		case 15: {
				SetPlayerInterior(playerid,1);
				SetPlayerPos(playerid,248.5125,302.8324,999.1484);
				GameTextForPlayer(playerid, " ~r~ Denise Robinson House", 3500, 3);
				return 1;
				}
        case 16: {
				SetPlayerInterior(playerid,0);
				SetPlayerPos(playerid,2401.7778,-1719.3260,13.6176);
				return 1;
				}
			case 17: {
				SetPlayerInterior(playerid,3);
				SetPlayerPos(playerid,1211.4104,-33.3027,1000.9531);
				GameTextForPlayer(playerid, " ~b~ VLA Hood Bar", 3500, 3);
				return 1;
				}
        case 18: {
				SetPlayerInterior(playerid,0);
				SetPlayerPos(playerid,1941.5819,-2058.8853,13.5469);
				return 1;
				}
        case 19: {
				SetPlayerInterior(playerid,3);
				SetPlayerPos(playerid,-103.7484,-17.5396,1000.7188);
				GameTextForPlayer(playerid, " ~g~ Seville Bulevard ~r~Chillin' Place", 3500, 3);
				return 1;
				}
        case 20: {
				SetPlayerInterior(playerid,0);
				SetPlayerPos(playerid,2760.8230,-1962.0841,13.5434);
				return 1;
				}
		 case 21: {
				SetPlayerInterior(playerid,2);
				SetPlayerPos(playerid,1205.6704,-5.9983,1000.9219);
				GameTextForPlayer(playerid, " ~w~ Glen Park Ballas ~r~Chillin' Den", 3500, 3);
				return 1;
				}
        case 22: {
				SetPlayerInterior(playerid,0);
				SetPlayerPos(playerid,1883.9451,-1268.0723,13.5469);
				return 1;
				}
		case 23: {

				GameTextForPlayer(playerid, "The Bar is in construction ~n~ Come back later ", 3500, 3);
				return 1;
				}
		case 24: {

				GameTextForPlayer(playerid, "The Bar is in construction ~n~ Come back later  ", 3500, 3);
				return 1;
				}
		case 25: {
				SetPlayerInterior(playerid,12);
				SetPlayerPos(playerid,2323.7029,-1145.7701,1050.7101);
				GameTextForPlayer(playerid, " ~y~ VLA OG house ~r~[VLA]Francis", 3500, 3);
				return 1;
				}
		case 26: {
				SetPlayerInterior(playerid,0);
				SetPlayerPos(playerid,1803.9817,-2119.8884,13.5543);
				return 1;
				}
		case 27: {
				SetPlayerInterior(playerid,15);
				SetPlayerPos(playerid,328.5761,1481.6941,1084.4375);
				GameTextForPlayer(playerid, " ~g~ GSF OG Crib ~n~ ~g~[GSF]Rudeboy", 3500, 3);
				return 1;
				}
		case 28: {
				SetPlayerInterior(playerid,0);
				SetPlayerPos(playerid,2072.5674,-1702.6449,13.5547);
				return 1;
				}
		case 29: {
				SetPlayerInterior(playerid,17);
				SetPlayerPos(playerid,374.7057,-188.1980,1000.6401);
				GameTextForPlayer(playerid, "~g~ C.R.A.S.H place ", 3500, 3);
				return 1;
				}
		case 30: {
				SetPlayerInterior(playerid,0);
				SetPlayerPos(playerid,1035.6832,-1333.6796,13.5478);
				return 1;
				}
		case 31: {
				SetPlayerInterior(playerid,3);
				SetPlayerPos(playerid,382.7045,173.6603,1008.3828);
				GameTextForPlayer(playerid, "~w~ Welcome to LS ~r~ Bank ", 3500, 3);
				return 1;
				}
		case 32: {
				SetPlayerInterior(playerid,0);
				SetPlayerPos(playerid,1481.5300,-1762.5135,18.7958);
				return 1;
				}
	}
	return 0;
}
/////////////////////////////////////////////////////////////////////////////////
public OnPlayerSelectedMenuRow(playerid, row)
{
	return 1;
}

public OnPlayerExitedMenu(playerid)
{
	return 1;
}
/////////////////////////////////////-----------------------TEAMS SPECIFY----------------------------------///////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////


public OnPlayerRequestClass(playerid, classid)
{
    PlayerPlaySound(playerid,1185,0,0,0);
	SetupPlayerForClassSelection(playerid);
	SetPlayerClass(playerid, classid);
	SelectionGameText(playerid,classid);
	gPlayerClass[playerid] = classid;

for(new i=0; i<MAX_VEHICLES; i++)
	{
		if(IsVehicleConnected(i) && GetVehicleModel(i)==427 && GetVehicleModel(i)==497 && GetVehicleModel(i)==596)
		{
			if(GetPlayerTeam(playerid)==TEAM_AGENT) // replace SWAT_TEAM with the classid of the Swat-Team
			{
				SetVehicleParamsForPlayer(i, playerid, 0, 0); //unlocks the car if player is in Swat-Team
			}
			else
			{
				RemovePlayerFromVehicle(playerid);
				GameTextForPlayer(playerid, "~r~ Dont steal AGENTS cars",3000,3);
			}
		}
	}
	return 1;
}
stock SetupPlayerForClassSelection(playerid)
{
	SetPlayerInterior(playerid,14);
	SetPlayerPos(playerid,258.4893,-41.4008,1002.0234);
	SetPlayerFacingAngle(playerid, 90.0);
	SetPlayerCameraPos(playerid,256.0815,-43.0475,1003.0234);
	SetPlayerCameraLookAt(playerid,258.4893,-41.4008,1002.0234);
}

stock SetPlayerClass(playerid, classid) {
	switch(classid) {
		case 0..6: gTeam[playerid] = TEAM_GSF;
		case 7,8: gTeam[playerid] = TEAM_SBF;
		case 9,10: gTeam[playerid] = TEAM_TDF;
		case 11..13: gTeam[playerid] = TEAM_IB;
		case 14..16: gTeam[playerid] = TEAM_JB;
		case 17..19: gTeam[playerid] = TEAM_GPB;
		case 20..23: gTeam[playerid] = TEAM_VAGOS;
		case 24..27: gTeam[playerid] = TEAM_VLA;
		case 28..31: gTeam[playerid] = TEAM_MAFIA;
		case 32..34: gTeam[playerid] = TEAM_DEALERS;
		case 35..36: gTeam[playerid] = TEAM_TAXI;
		case 37..42: gTeam[playerid] = TEAM_AGENT;
		case 43: gTeam[playerid] = TEAM_MEDICS;
        case 44: gTeam[playerid] = TEAM_FIREMAN;
        case 45..53: gTeam[playerid] = TEAM_CIVS;
        case 54..58: gTeam[playerid] = TEAM_TRIADS;
		}
}

stock SelectionGameText(playerid,classid) {
	switch (classid) {
	    case 0..6:	GameTextForPlayer(playerid, "~r~[]GROVE STREET FAMILLIES[]", 500, 3);
	    case 7,8:	GameTextForPlayer(playerid, "~r~[]Seville Bulevard FAMILLIES[]", 500, 3);
	    case 9,10:	GameTextForPlayer(playerid, "~r~[]Temple Drive FAMILLIES[]", 500, 3);
	    case 11..13:	GameTextForPlayer(playerid, "~r~[]Idlewood Ballas[]", 500, 3);
	    case 14..16:	GameTextForPlayer(playerid, "~r~[]Jefferson Ballas[]", 500, 3);
	    case 17..19:	GameTextForPlayer(playerid, "~r~[]Glen Park Ballas[]", 500, 3);
	    case 20..23:	GameTextForPlayer(playerid, "~r~[]East Los Santos Vagos[]", 500, 3);
	    case 24..27:	GameTextForPlayer(playerid, "~r~[]Varrios Los Aztecas[]", 500, 3);
	    case 28..31:	GameTextForPlayer(playerid, "~r~[]The Mafia[]", 500, 3);
	    case 32..34:	GameTextForPlayer(playerid, "~r~[]Los Santos Dealers[]", 500, 3);
	    case 35,36:	GameTextForPlayer(playerid, "~r~[]Los Santos Taxi Company[]", 500, 3);
	    case 37..42:	GameTextForPlayer(playerid, "~r~[]Law Agents[]", 500, 3);
	    case 43:	GameTextForPlayer(playerid, "~r~[]Medic[]", 500, 3);
	    case 44:	GameTextForPlayer(playerid, "~r~[]Fireman[]", 500, 3);
	    case 45..53:	GameTextForPlayer(playerid, "~r~[]City Civilians[]", 500, 3);
	    case 54..58:	GameTextForPlayer(playerid, "~r~[]Los Santos Triads[]", 500, 3);
		}
}

///////////////////- MONEY SCORE -/////////////////////////////////////////////

forward Float:GetDistanceBetweenPlayers(p1,p2);
public Float:GetDistanceBetweenPlayers(p1,p2){
new Float:x1,Float:y1,Float:z1,Float:x2,Float:y2,Float:z2;
if (!IsPlayerConnected(p1) || !IsPlayerConnected(p2)){
return -1.00;
}
GetPlayerPos(p1,x1,y1,z1);
GetPlayerPos(p2,x2,y2,z2);
return floatsqroot(floatpower(floatabs(floatsub(x2,x1)),2)+floatpower(floatabs(floatsub(y2,y1)),2)+floatpower(floatabs(floatsub(z2,z1)),2));

}

//-------------------------------------------------[TEAMS FINNISHED]---------------------------------------------------
stock LimitChatArea(playerid, text[], Float:radius) {
new Float:X,Float:Y,Float:Z;
new Float:pX, Float:pY, Float:pZ;
for(new i; i < MAX_PLAYERS; i++) {
if(IsPlayerConnected(i)) {
GetPlayerPos(i,X,Y,Z);
GetPlayerPos(playerid, pX, pY, pZ);
if (pX >= X-radius && pX <= X+radius && pY >= Y-radius && pY <= Y+radius && pZ >= Z-radius && pZ <= Z+radius) {
SendPlayerMessageToPlayer(i,playerid,text);
}}}
return 1;
}

///////////////////////- FINISH -///////////////////////////////////////////////
public MoneyGrubScoreUpdate() {
for(new i=0; i<MAX_PLAYERS; i++) {
SetPlayerScore(i,GetPlayerMoney(i)); }}
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
	if(!gPlayerUsingLoopingAnim[playerid]) return;

	if(IsKeyJustDown(KEY_SPRINT,newkeys,oldkeys)) {
	    StopLoopingAnim(playerid);
        TextDrawHideForPlayer(playerid,txtAnimHelper);
    }
}
public PayDay() {
new string[256];
for(new i=0; i<=MAX_PLAYERS; i++)
GivePlayerMoney(i,PayDay_Amount);
format(string, sizeof(string),"~w~Pay~y~Day ~n~ ~n~ ~b~%d $",PayDay_Amount);
GameTextForAll(string, 1000, 1);
}