pawn Код:
//----------------------------------------------------------
//
// GRAND LARCENY 1.0
// A freeroam gamemode for SA-MP 0.3
//
//----------------------------------------------------------
#include <irc>
#include <a_samp>
#include <core>
#include <ircfs>
#include <float>
#include <YSI\y_ini>
#include <streamer>
#include <DynamicRadioStations>
#include "../include/gl_common.inc"
#include "../include/gl_spawns.inc"
#pragma tabsize 0
//----------------------------------------------------------
#define COLOR_WHITE 0xFFFFFFFF
#define COLOR_NORMAL_PLAYER 0xFFBB7777
#define CITY_LOS_SANTOS 0
#define CITY_SAN_FIERRO 1
#define CITY_LAS_VENTURAS 2
#define Skinid 1
#define Money 2
#define Faction 3
#define irc
#define STREAMER_TYPE_OBJECT (0)
#define STREAMER_TYPE_PICKUP (1)
#define STREAMER_TYPE_CP (2)
#define STREAMER_TYPE_RACE_CP (3)
#define STREAMER_TYPE_MAP_ICON (4)
#define STREAMER_TYPE_3D_TEXT_LABEL (5)
#define STREAMER_TYPE_AREA (6)
#define STREAMER_AREA_TYPE_CIRCLE (0)
#define STREAMER_AREA_TYPE_RECTANGLE (1)
#define STREAMER_AREA_TYPE_SPHERE (2)
#define STREAMER_AREA_TYPE_CUBE (3)
#define STREAMER_AREA_TYPE_POLYGON (4)
#define STREAMER_OBJECT_TYPE_GLOBAL (0)
#define STREAMER_OBJECT_TYPE_PLAYER (1)
#define STREAMER_OBJECT_TYPE_DYNAMIC (2)
#define AdminLevel 5
#define Level 6
#define DIALOG_REGISTER 1
#define DIALOG_LOGIN 2
#define DIALOG_SUCCESS_1 3
#define DIALOG_SUCCESS_2 4
#define PATH "/Users/%s.ini"
#define COL_WHITE "{FFFFFF}"
#define COL_RED "{F81414}"
#define COL_GREEN "{00FF22}"
new total_vehicles_from_files=0;
// Class selection globals
new gPlayerCitySelection[MAX_PLAYERS];
new gPlayerHasCitySelected[MAX_PLAYERS];
new gPlayerLastCitySelectionTick[MAX_PLAYERS];
new Text:txtClassSelHelper;
new Text:txtLosSantos;
new Text:txtSanFierro;
new Text:txtLasVenturas;
new thisanimid=0;
new lastanimid=0;
enum pInfo
{
pPass,
pCash,
pAdmin,
pKills,
pDeaths
}
new PlayerInfo[MAX_PLAYERS][pInfo];
forward LoadUser_data(playerid,name[],value[]);
public LoadUser_data(playerid,name[],value[])
{
INI_Int("Password",PlayerInfo[playerid][pPass]);
INI_Int("Cash",PlayerInfo[playerid][pCash]);
INI_Int("Admin",PlayerInfo[playerid][pAdmin]);
INI_Int("Kills",PlayerInfo[playerid][pKills]);
INI_Int("Deaths",PlayerInfo[playerid][pDeaths]);
return 1;
}
stock UserPath(playerid)
{
new string[128],playername[MAX_PLAYER_NAME];
GetPlayerName(playerid,playername,sizeof(playername));
format(string,sizeof(string),PATH,playername);
return string;
}
/*Credits to Dracoblue*/
stock udb_hash(buf[]) {
new length=strlen(buf);
new s1 = 1;
new s2 = 0;
new n;
for (n=0; n<length; n++)
{
s1 = (s1 + buf[n]) % 65521;
s2 = (s2 + s1) % 65521;
}
return (s2 << 16) + s1;
}
//----------------------------------------------------------
main()
{
print("\n---------------------------------------");
print("Running Julius95's server\n");
print("---------------------------------------\n");
}
//----------------------------------------------------------
public OnPlayerConnect(playerid)
{
if(fexist(UserPath(playerid)))
{
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,""COL_WHITE"Login",""COL_WHITE"Type your password below to login.","Login","Quit");
}
else
{
ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT,""COL_WHITE"Registering...",""COL_WHITE"Type your password below to register a new account.","Register","Quit");
}
GameTextForPlayer(playerid,"~w~Julius95's Free Mode",3000,4);
SendClientMessage(playerid,COLOR_WHITE,"Welcome to {88AA88}J{FFFFFF}ulius's {88AA88}ser{FFFFFF}ver");
// class selection init vars
gPlayerCitySelection[playerid] = -1;
gPlayerHasCitySelected[playerid] = 0;
gPlayerLastCitySelectionTick[playerid] = GetTickCount();
//SetPlayerColor(playerid,COLOR_NORMAL_PLAYER);
/*
Removes vending machines
RemoveBuildingForPlayer(playerid, 1302, 0.0, 0.0, 0.0, 6000.0);
RemoveBuildingForPlayer(playerid, 1209, 0.0, 0.0, 0.0, 6000.0);
RemoveBuildingForPlayer(playerid, 955, 0.0, 0.0, 0.0, 6000.0);
RemoveBuildingForPlayer(playerid, 1775, 0.0, 0.0, 0.0, 6000.0);
RemoveBuildingForPlayer(playerid, 1776, 0.0, 0.0, 0.0, 6000.0);
*/
/*
new ClientVersion[32];
GetPlayerVersion(playerid, ClientVersion, 32);
printf("Player %d reports client version: %s", playerid, ClientVersion);*/
return 1;
}
//----------------------------------------------------------
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
switch( dialogid )
{
case DIALOG_REGISTER:
{
if (!response) return Kick(playerid);
if(response)
{
if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, ""COL_WHITE"Registering...",""COL_RED"You have entered an invalid password.\n"COL_WHITE"Type your password below to register a new account.","Register","Quit");
new INI:File = INI_Open(UserPath(playerid));
INI_SetTag(File,"data");
INI_WriteInt(File,"Password",udb_hash(inputtext));
INI_WriteInt(File,"Cash",0);
INI_WriteInt(File,"Admin",0);
INI_WriteInt(File,"Kills",0);
INI_WriteInt(File,"Deaths",0);
INI_Close(File);
SetSpawnInfo(playerid, 0, 0, 1958.33, 1343.12, 15.36, 269.15, 0, 0, 0, 0, 0, 0);
SpawnPlayer(playerid);
ShowPlayerDialog(playerid, DIALOG_SUCCESS_1, DIALOG_STYLE_MSGBOX,""COL_WHITE"Success!",""COL_GREEN"Great! Your Y_INI system works perfectly. Relog to save your stats!","Ok","");
}
}
case DIALOG_LOGIN:
{
if ( !response ) return Kick ( playerid );
if( response )
{
if(udb_hash(inputtext) == PlayerInfo[playerid][pPass])
{
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
GivePlayerMoney(playerid, PlayerInfo[playerid][pCash]);
ShowPlayerDialog(playerid, DIALOG_SUCCESS_2, DIALOG_STYLE_MSGBOX,""COL_WHITE"Success!",""COL_GREEN"You have successfully logged in!","Ok","");
}
else
{
ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,""COL_WHITE"Login",""COL_RED"You have entered an incorrect password.\n"COL_WHITE"Type your password below to login.","Login","Quit");
}
return 1;
}
}
}
return 1;
}
//----------------------------------------------------------
public OnPlayerSpawn(playerid)
{
if(IsPlayerNPC(playerid)) return 1;
new randSpawn = 0;
SetPlayerInterior(playerid,0);
TogglePlayerClock(playerid,0);
ResetPlayerMoney(playerid);
GivePlayerMoney(playerid, 30000);
if(CITY_LOS_SANTOS == gPlayerCitySelection[playerid]) {
randSpawn = random(sizeof(gRandomSpawns_LosSantos));
SetPlayerPos(playerid,
gRandomSpawns_LosSantos[randSpawn][0],
gRandomSpawns_LosSantos[randSpawn][1],
gRandomSpawns_LosSantos[randSpawn][2]);
SetPlayerFacingAngle(playerid,gRandomSpawns_LosSantos[randSpawn][3]);
}
else if(CITY_SAN_FIERRO == gPlayerCitySelection[playerid]) {
randSpawn = random(sizeof(gRandomSpawns_SanFierro));
SetPlayerPos(playerid,
gRandomSpawns_SanFierro[randSpawn][0],
gRandomSpawns_SanFierro[randSpawn][1],
gRandomSpawns_SanFierro[randSpawn][2]);
SetPlayerFacingAngle(playerid,gRandomSpawns_SanFierro[randSpawn][3]);
}
else if(CITY_LAS_VENTURAS == gPlayerCitySelection[playerid]) {
randSpawn = random(sizeof(gRandomSpawns_LasVenturas));
SetPlayerPos(playerid,
gRandomSpawns_LasVenturas[randSpawn][0],
gRandomSpawns_LasVenturas[randSpawn][1],
gRandomSpawns_LasVenturas[randSpawn][2]);
SetPlayerFacingAngle(playerid,gRandomSpawns_LasVenturas[randSpawn][3]);
}
//SetPlayerColor(playerid,COLOR_NORMAL_PLAYER);
SetPlayerSkillLevel(playerid,WEAPONSKILL_PISTOL,200);
SetPlayerSkillLevel(playerid,WEAPONSKILL_PISTOL_SILENCED,200);
SetPlayerSkillLevel(playerid,WEAPONSKILL_DESERT_EAGLE,200);
SetPlayerSkillLevel(playerid,WEAPONSKILL_SHOTGUN,200);
SetPlayerSkillLevel(playerid,WEAPONSKILL_SAWNOFF_SHOTGUN,200);
SetPlayerSkillLevel(playerid,WEAPONSKILL_SPAS12_SHOTGUN,200);
SetPlayerSkillLevel(playerid,WEAPONSKILL_MICRO_UZI,200);
SetPlayerSkillLevel(playerid,WEAPONSKILL_MP5,200);
SetPlayerSkillLevel(playerid,WEAPONSKILL_AK47,200);
SetPlayerSkillLevel(playerid,WEAPONSKILL_M4,200);
SetPlayerSkillLevel(playerid,WEAPONSKILL_SNIPERRIFLE,200);
GivePlayerWeapon(playerid,WEAPON_COLT45,100);
//GivePlayerWeapon(playerid,WEAPON_MP5,100);
TogglePlayerClock(playerid, 0);
return 1;
}
//----------------------------------------------------------
public OnPlayerDeath(playerid, killerid, reason)
{
new playercash;
// if they ever return to class selection make them city
// select again first
gPlayerHasCitySelected[playerid] = 0;
{
PlayerInfo[killerid][pKills]++;
PlayerInfo[playerid][pDeaths]++;
return 1;
}
if(killerid == INVALID_PLAYER_ID) {
ResetPlayerMoney(playerid);
} else {
playercash = GetPlayerMoney(playerid);
if(playercash > 0) {
GivePlayerMoney(killerid, playercash);
ResetPlayerMoney(playerid);
}
}
return 1;
}
//----------------------------------------------------------
ClassSel_SetupCharSelection(playerid)
{
if(gPlayerCitySelection[playerid] == CITY_LOS_SANTOS) {
SetPlayerInterior(playerid,11);
SetPlayerPos(playerid,508.7362,-87.4335,998.9609);
SetPlayerFacingAngle(playerid,0.0);
SetPlayerCameraPos(playerid,508.7362,-83.4335,998.9609);
SetPlayerCameraLookAt(playerid,508.7362,-87.4335,998.9609);
}
else if(gPlayerCitySelection[playerid] == CITY_SAN_FIERRO) {
SetPlayerInterior(playerid,3);
SetPlayerPos(playerid,-2673.8381,1399.7424,918.3516);
SetPlayerFacingAngle(playerid,181.0);
SetPlayerCameraPos(playerid,-2673.2776,1394.3859,918.3516);
SetPlayerCameraLookAt(playerid,-2673.8381,1399.7424,918.3516);
}
else if(gPlayerCitySelection[playerid] == CITY_LAS_VENTURAS) {
SetPlayerInterior(playerid,3);
SetPlayerPos(playerid,349.0453,193.2271,1014.1797);
SetPlayerFacingAngle(playerid,286.25);
SetPlayerCameraPos(playerid,352.9164,194.5702,1014.1875);
SetPlayerCameraLookAt(playerid,349.0453,193.2271,1014.1797);
}
}
//----------------------------------------------------------
// Used to init textdraws of city names
ClassSel_InitCityNameText(Text:txtInit)
{
TextDrawUseBox(txtInit, 0);
TextDrawLetterSize(txtInit,1.25,3.0);
TextDrawFont(txtInit, 0);
TextDrawSetShadow(txtInit,0);
TextDrawSetOutline(txtInit,1);
TextDrawColor(txtInit,0xEEEEEEFF);
TextDrawBackgroundColor(txtClassSelHelper,0x000000FF);
}
//----------------------------------------------------------
ClassSel_InitTextDraws()
{
// Init our observer helper text display
txtLosSantos = TextDrawCreate(10.0, 380.0, "Los Santos");
ClassSel_InitCityNameText(txtLosSantos);
txtSanFierro = TextDrawCreate(10.0, 380.0, "San Fierro");
ClassSel_InitCityNameText(txtSanFierro);
txtLasVenturas = TextDrawCreate(10.0, 380.0, "Las Venturas");
ClassSel_InitCityNameText(txtLasVenturas);
// Init our observer helper text display
txtClassSelHelper = TextDrawCreate(10.0, 415.0,
" Press ~b~~k~~GO_LEFT~ ~w~or ~b~~k~~GO_RIGHT~ ~w~to switch cities.~n~ Press ~r~~k~~PED_FIREWEAPON~ ~w~to select.");
TextDrawUseBox(txtClassSelHelper, 1);
TextDrawBoxColor(txtClassSelHelper,0x222222BB);
TextDrawLetterSize(txtClassSelHelper,0.3,1.0);
TextDrawTextSize(txtClassSelHelper,400.0,40.0);
TextDrawFont(txtClassSelHelper, 2);
TextDrawSetShadow(txtClassSelHelper,0);
TextDrawSetOutline(txtClassSelHelper,1);
TextDrawBackgroundColor(txtClassSelHelper,0x000000FF);
TextDrawColor(txtClassSelHelper,0xFFFFFFFF);
}
//----------------------------------------------------------
ClassSel_SetupSelectedCity(playerid)
{
if(gPlayerCitySelection[playerid] == -1) {
gPlayerCitySelection[playerid] = CITY_LOS_SANTOS;
}
if(gPlayerCitySelection[playerid] == CITY_LOS_SANTOS) {
SetPlayerInterior(playerid,0);
SetPlayerCameraPos(playerid,1630.6136,-2286.0298,110.0);
SetPlayerCameraLookAt(playerid,1887.6034,-1682.1442,47.6167);
TextDrawShowForPlayer(playerid,txtLosSantos);
TextDrawHideForPlayer(playerid,txtSanFierro);
TextDrawHideForPlayer(playerid,txtLasVenturas);
}
else if(gPlayerCitySelection[playerid] == CITY_SAN_FIERRO) {
SetPlayerInterior(playerid,0);
SetPlayerCameraPos(playerid,-1300.8754,68.0546,129.4823);
SetPlayerCameraLookAt(playerid,-1817.9412,769.3878,132.6589);
TextDrawHideForPlayer(playerid,txtLosSantos);
TextDrawShowForPlayer(playerid,txtSanFierro);
TextDrawHideForPlayer(playerid,txtLasVenturas);
}
else if(gPlayerCitySelection[playerid] == CITY_LAS_VENTURAS) {
SetPlayerInterior(playerid,0);
SetPlayerCameraPos(playerid,1310.6155,1675.9182,110.7390);
SetPlayerCameraLookAt(playerid,2285.2944,1919.3756,68.2275);
TextDrawHideForPlayer(playerid,txtLosSantos);
TextDrawHideForPlayer(playerid,txtSanFierro);
TextDrawShowForPlayer(playerid,txtLasVenturas);
}
}
//----------------------------------------------------------
ClassSel_SwitchToNextCity(playerid)
{
gPlayerCitySelection[playerid]++;
if(gPlayerCitySelection[playerid] > CITY_LAS_VENTURAS) {
gPlayerCitySelection[playerid] = CITY_LOS_SANTOS;
}
PlayerPlaySound(playerid,1052,0.0,0.0,0.0);
gPlayerLastCitySelectionTick[playerid] = GetTickCount();
ClassSel_SetupSelectedCity(playerid);
}
//----------------------------------------------------------
ClassSel_SwitchToPreviousCity(playerid)
{
gPlayerCitySelection[playerid]--;
if(gPlayerCitySelection[playerid] < CITY_LOS_SANTOS) {
gPlayerCitySelection[playerid] = CITY_LAS_VENTURAS;
}
PlayerPlaySound(playerid,1053,0.0,0.0,0.0);
gPlayerLastCitySelectionTick[playerid] = GetTickCount();
ClassSel_SetupSelectedCity(playerid);
}
//----------------------------------------------------------
ClassSel_HandleCitySelection(playerid)
{
new Keys,ud,lr;
GetPlayerKeys(playerid,Keys,ud,lr);
if(gPlayerCitySelection[playerid] == -1) {
ClassSel_SwitchToNextCity(playerid);
return;
}
// only allow new selection every ~500 ms
if( (GetTickCount() - gPlayerLastCitySelectionTick[playerid]) < 500 ) return;
if(Keys & KEY_FIRE) {
gPlayerHasCitySelected[playerid] = 1;
TextDrawHideForPlayer(playerid,txtClassSelHelper);
TextDrawHideForPlayer(playerid,txtLosSantos);
TextDrawHideForPlayer(playerid,txtSanFierro);
TextDrawHideForPlayer(playerid,txtLasVenturas);
TogglePlayerSpectating(playerid,0);
return;
}
if(lr > 0) {
ClassSel_SwitchToNextCity(playerid);
}
else if(lr < 0) {
ClassSel_SwitchToPreviousCity(playerid);
}
}
//----------------------------------------------------------
public OnPlayerRequestClass(playerid, classid)
{
if(IsPlayerNPC(playerid)) return 1;
if(gPlayerHasCitySelected[playerid]) {
ClassSel_SetupCharSelection(playerid);
return 1;
} else {
if(GetPlayerState(playerid) != PLAYER_STATE_SPECTATING) {
TogglePlayerSpectating(playerid,1);
TextDrawShowForPlayer(playerid, txtClassSelHelper);
gPlayerCitySelection[playerid] = -1;
}
}
return 0;
}
//----------------------------------------------------------
public OnGameModeInit()
{
#define USE_TEXTDRAW_SET 1
AddRadioStation("Radio Julius", "http://78.72.181.195:8000/listen.pls", 1);
AddRadioStation("Vinylgodis", "http://93.182.176.123/listen.pls", 1);
AddRadioStation("Radio Seven", "http://www.radioseven.se/128.pls", 1);
AddRadioStation("Dansbandskanalen", "http://www.guldkanalen.se/static/streamDBK/128MP3.pls", 1);
AddRadioStation("Din Gata", "http://sverigesradio.se/topsy/direkt/2576-hi-mp3.pls", 1);
AddRadioStation("Big R Radio", "http://yp.shoutcast.com/sbin/tunein-station.pls?id=73131", 1);
AddRadioStation("Radio AF", "http://webradio.af.lu.se:8000/listen.pls", 1);
AddRadioStation("Reggae141.com", "http://yp.shoutcast.com/sbin/tunein-station.pls?id=85742", 1);
AddRadioStation("Hit Radio N1", "http://yp.shoutcast.com/sbin/tunein-station.pls?id=1277314", 1);
AddRadioStation("The 1920s Radio Network", "http://64.5.130.43/listen.pls", 1);
AddRadioStation("Radio Off", "", 1);
SetGameModeText("Free Mode, stunts, races etc.");
ShowPlayerMarkers(PLAYER_MARKERS_MODE_GLOBAL);
ShowNameTags(1);
SetNameTagDrawDistance(40.0);
EnableStuntBonusForAll(0);
DisableInteriorEnterExits();
SetWeather(2);
SetWorldTime(11);
//UsePlayerPedAnims();
//ManualVehicleEngineAndLights();
//LimitGlobalChatRadius(300.0);
ClassSel_InitTextDraws();
// Player Class
AddPlayerClass(281,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(282,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(283,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(284,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(285,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(286,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(287,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(288,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(289,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(265,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(266,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(267,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(268,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(269,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(270,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(1,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(2,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(3,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(4,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(5,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(6,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(8,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(42,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(65,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(74,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(86,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(119,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(149,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(208,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(273,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(289,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(47,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(48,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(49,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(50,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(51,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(52,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(53,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(54,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(55,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(56,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(57,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(58,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(68,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(69,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(70,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(71,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(72,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(73,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(75,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(76,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(78,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(79,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(80,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(81,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(82,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(83,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(84,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(85,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(87,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(88,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(89,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(91,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(92,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(93,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(95,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(96,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(97,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(98,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
AddPlayerClass(99,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
//AddVehicles
AddStaticVehicle(600,2461.7532,-1656.6047,13.0208,90.0551,43,8); // car0
AddStaticVehicle(439,-1766.9050,613.7802,28.0963,90.1726,79,78); // car1
AddStaticVehicle(549,-1997.1497,701.7988,45.0459,0.2772,14,14); // car2
AddStaticVehicle(480,-1997.1570,696.1385,45.1418,0.9108,127,8); // car3
AddStaticVehicle(555,-1997.1226,690.4085,45.0497,0.4574,58,1); // car4
AddStaticVehicle(533,-1997.1150,684.5101,45.0449,0.7273,7,1); // car5
AddStaticVehicle(518,-1997.1124,678.0267,44.9521,1.0255,8,0); // car6
AddStaticVehicle(542,-1997.1284,671.6221,44.1768,0.8896,45,92); // car7
AddStaticVehicle(419,-1997.0178,664.9196,42.9615,0.3890,1,76); // car8
AddStaticVehicle(502,-1944.3131,585.5934,35.0131,0.5602,36,88); // car9
AddStaticVehicle(451,-1947.4026,585.6334,34.7825,0.5844,1,36); // car10
AddStaticVehicle(506,-1950.4606,585.7036,34.8199,1.4687,126,52); // car 11
AddStaticVehicle(477,-1938.2062,585.5255,34.8710,359.9006,65,1); // car12
AddStaticVehicle(602,-1953.4102,585.8502,34.8846,359.4462,94,1); // car 13
AddStaticVehicle(496,-1956.5023,585.9746,34.7861,0.1029,2,6); // car14
AddStaticVehicle(402,-1959.3685,585.6564,34.9014,359.6677,86,110); // car15
AddStaticVehicle(541,-1935.3408,585.7760,34.7403,0.0132,126,6); // car16
AddStaticVehicle(415,-1932.3533,585.5296,34.8907,0.0465,119,1); // car17
AddStaticVehicle(587,-1929.2599,586.0511,34.8377,359.7012,0,1); // car18
AddStaticVehicle(504,-1926.2498,585.7791,34.9114,359.2645,45,29); // car19
AddStaticVehicle(598,-1616.6740,651.2231,6.9347,0.8125,0,1); // car20
AddStaticVehicle(601,-1628.8429,651.0104,6.9463,359.6806,1,1); // car21
AddStaticVehicle(427,-1605.2008,651.7350,7.3193,359.6695,0,1); // car22
AddStaticVehicle(596,-1599.6945,651.1352,6.9087,359.4665,0,1); // car23
AddStaticVehicle(514,-1658.1969,449.0964,7.7671,213.6456,25,1); // car24
AddStaticVehicle(432,-1450.3162,458.0264,7.1965,358.0674,43,0); // car25
AddStaticVehicle(596,-1587.6300,651.6120,6.9087,358.3333,0,1); // car26
AddStaticVehicle(596,-1581.8977,651.7803,6.9078,359.2933,0,1); // car27
AddStaticVehicle(598,-1594.4235,673.0942,6.9332,179.1243,0,1); // car28
AddStaticVehicle(598,-1600.0331,673.0317,6.9328,179.5085,0,1); // car29
AddStaticVehicle(490,-1574.2876,714.2642,-5.1145,89.0129,0,0); // car30
AddStaticVehicle(490,-1574.2661,710.3427,-5.1147,89.1375,0,0); // car31
AddStaticVehicle(490,-1574.1755,706.1642,-5.1146,90.7530,0,0); // car32
AddStaticVehicle(596,-1573.6791,722.1187,-5.5211,90.6117,0,1); // car33
AddStaticVehicle(596,-1573.8575,730.6639,-5.5217,89.7573,0,1); // car34
AddStaticVehicle(596,-1573.5385,734.4633,-5.5220,88.8792,0,1); // car35
AddStaticVehicle(596,-1573.4248,739.0908,-5.5221,90.4690,0,1); // car36
AddStaticVehicle(596,-1573.2230,742.5228,-5.5208,89.2028,0,1); // car37
AddStaticVehicle(598,-1600.3463,749.7092,-5.4954,180.3100,0,1); // car38
AddStaticVehicle(598,-1604.2474,749.6938,-5.4956,179.8932,0,1); // car39
AddStaticVehicle(598,-1608.4534,749.6821,-5.4960,180.4397,0,1); // car40
AddStaticVehicle(598,-1612.7340,749.6252,-5.4962,181.2642,0,1); // car41
AddStaticVehicle(598,-1616.6920,749.7081,-5.4970,179.9954,0,1); // car41
AddStaticVehicle(598,-1592.1154,749.6444,-5.4973,179.6934,0,1); // car43
AddStaticVehicle(598,-1587.9971,749.8513,-5.4958,178.9971,0,1); // car44
AddStaticVehicle(598,-1583.9622,749.8259,-5.4954,179.3184,0,1); // car45
AddStaticVehicle(598,-1579.9960,749.7203,-5.4958,179.3284,0,1); // car46
AddStaticVehicle(597,-1622.7053,649.7056,-5.4738,88.5598,0,1); // car47
AddStaticVehicle(596,-1639.5427,674.1429,-5.5225,269.2240,0,1); // car48
AddStaticVehicle(596,-1639.6805,682.0773,-5.5206,270.4482,0,1); // car49
AddStaticVehicle(597,-1639.7576,686.4487,-5.4733,271.0222,0,1); // car50
AddStaticVehicle(597,-1639.8285,669.9292,-5.4740,269.2921,0,1); // car51
AddStaticVehicle(596,-1639.7863,666.1780,-5.5219,269.8799,0,1); // car52
AddStaticVehicle(597,-1639.9882,661.8076,-5.4729,269.4359,0,1); // car53
AddStaticVehicle(596,-1639.7858,657.7263,-5.5219,270.1051,0,1); // car54
AddStaticVehicle(597,-1639.8157,653.7025,-5.4737,268.7205,0,1); // car55
AddStaticVehicle(596,-1639.5710,649.8344,-5.5219,269.4172,0,1); // car56
AddStaticVehicle(598,-1595.6241,694.0532,-5.4961,180.6208,0,1); // car57
AddStaticVehicle(598,-1600.1334,693.9891,-5.4959,179.8698,0,1); // car58
AddStaticVehicle(598,-1604.2416,693.9874,-5.4968,179.3441,0,1); // car59
AddStaticVehicle(598,-1608.5326,694.0151,-5.4969,179.8332,0,1); // car60
AddStaticVehicle(598,-1612.3291,694.0125,-5.4954,180.4067,0,1); // car61
AddStaticVehicle(598,-1616.5938,694.0545,-5.4963,180.0018,0,1); // car62
AddStaticVehicle(598,-1620.7970,694.0438,-5.4966,179.2025,0,1); // car63
AddStaticVehicle(598,-1624.8109,693.9700,-5.4957,177.9268,0,1); // car64
AddStaticVehicle(598,-1628.9708,693.9097,-5.4965,179.0654,0,1); // car65
AddStaticVehicle(598,-1632.7097,693.9340,-5.4964,178.4928,0,1); // car66
AddStaticVehicle(427,-1596.4033,678.2721,-5.1103,1.2281,0,1); // car67
AddStaticVehicle(427,-1611.6322,733.2242,-5.1102,358.4313,0,1); // car68
AddStaticVehicle(601,-1603.5253,733.0418,-5.4757,0.2952,1,1); // car69
AddStaticVehicle(601,-1607.4572,732.7892,-5.4819,359.0168,1,1); // car70
AddStaticVehicle(601,-1590.8903,718.8868,-5.4834,271.2448,1,1); // car71
AddStaticVehicle(601,-1590.8268,714.7463,-5.4834,268.9313,1,1); // car72
AddStaticVehicle(601,-1604.3324,676.1072,-5.4834,1.0470,1,1); // car73
AddStaticVehicle(601,-1608.3807,675.8729,-5.4834,0.8872,1,1); // car74
AddStaticVehicle(601,-1640.4934,690.0363,-5.4834,267.7431,1,1); // car75
AddStaticVehicle(601,-1636.2931,694.5077,-5.4834,186.3782,1,1); // car76
AddStaticVehicle(601,-1622.6899,657.6486,-5.4834,89.5577,1,1); // car77
AddStaticVehicle(601,-1622.5437,661.3481,-5.4834,88.2688,1,1); // car78
AddStaticVehicle(601,-1571.8530,745.8903,-5.4834,89.7020,1,1); // car79
AddStaticVehicle(601,-1576.2029,749.3005,-5.4835,173.8618,1,1); // car80
AddStaticVehicle(497,-1632.6996,671.5107,7.3643,268.2399,0,1); // car81
AddStaticVehicle(449,-1857.2998,603.2500,35.4973,270.0000,1,74); // tram82
//Objects
CreateObject(13592, 1966.1999511719, -2460.3999023438, 21.60000038147, 0, 0, 0);
CreateObject(1337, 1961.01953125, -2460.7373046875, 13.703598976135, 0, 0, 0);
CreateObject(13592, 1965.4000244141, -2466.6000976563, 21.200000762939, 0, 0, 0);
CreateObject(634, 1892.5, -2414.1999511719, 12.5, 0, 0, 0);
CreateObject(655, 1902.4000244141, -2409, 12.5, 0, 0, 0);
CreateObject(671, 1914.5999755859, -2414.6999511719, 12.5, 0, 0, 0);
CreateObject(680, 1910.6999511719, -2414.1000976563, 12.5, 0, 0, 0);
CreateObject(687, 1911.5, -2414.6000976563, 12.5, 0, 0, 0);
CreateObject(710, 1916.9000244141, -2417.3000488281, 28.10000038147, 0, 0, 0);
CreateObject(777, 1876.0999755859, -2415, 12.60000038147, 0, 0, 0);
CreateObject(18270, 1836.0999755859, -2403.3999023438, 19.39999961853, 0, 0, 0);
CreateObject(1634, 1986.5999755859, -2344.1000976563, 17.60000038147, 0, 0, 300);
CreateObject(1634, 1979.8000488281, -2348.1000976563, 13.800000190735, 0, 0, 300);
CreateObject(1634, 2025.3000488281, -2332.6000976563, 24.5, 0, 0, 180);
CreateObject(18478, 1856.0999755859, -2516, 40.299999237061, 0, 30, 0);
CreateObject(18478, 1725.0999755859, -2515.8000488281, 75.400001525879, 0, 0, 0);
CreateObject(13592, 1982.0999755859, -2528.3000488281, 22.60000038147, 0, 0, 0);
CreateObject(13590, 2034.1999511719, -2526.1999511719, 13.5, 0, 0, 270);
CreateObject(5754, 1586.0999755859, -2515.5, 82.800003051758, 0, 0, 90);
CreateObject(6449, 1458.0999755859, -2499.8000488281, 96.199996948242, 0, 0, 90);
CreateObject(13592, 1966.1999511719, -2460.3999023438, 21.60000038147, 0, 0, 0);
CreateObject(1337, 1961.01953125, -2460.7373046875, 13.703598976135, 0, 0, 0);
CreateObject(13592, 1965.4000244141, -2466.6000976563, 21.200000762939, 0, 0, 0);
CreateObject(634, 1892.5, -2414.1999511719, 12.5, 0, 0, 0);
CreateObject(655, 1902.4000244141, -2409, 12.5, 0, 0, 0);
CreateObject(671, 1914.5999755859, -2414.6999511719, 12.5, 0, 0, 0);
CreateObject(680, 1910.6999511719, -2414.1000976563, 12.5, 0, 0, 0);
CreateObject(687, 1911.5, -2414.6000976563, 12.5, 0, 0, 0);
CreateObject(710, 1916.9000244141, -2417.3000488281, 28.10000038147, 0, 0, 0);
CreateObject(777, 1876.0999755859, -2415, 12.60000038147, 0, 0, 0);
CreateObject(18270, 1836.0999755859, -2403.3999023438, 19.39999961853, 0, 0, 0);
CreateObject(1634, 1986.5999755859, -2344.1000976563, 17.60000038147, 0, 0, 300);
CreateObject(1634, 1979.8000488281, -2348.1000976563, 13.800000190735, 0, 0, 300);
CreateObject(1634, 2025.3000488281, -2332.6000976563, 24.5, 0, 0, 180);
CreateObject(18478, 1856.0999755859, -2516, 40.299999237061, 0, 30, 0);
CreateObject(18478, 1725.0999755859, -2515.8000488281, 75.400001525879, 0, 0, 0);
CreateObject(13592, 1982.0999755859, -2528.3000488281, 22.60000038147, 0, 0, 0);
CreateObject(13590, 2034.1999511719, -2526.1999511719, 13.5, 0, 0, 270);
CreateObject(5754, 1586.0999755859, -2515.5, 82.800003051758, 0, 0, 90);
CreateObject(6449, 1458.0999755859, -2499.8000488281, 96.199996948242, 0, 0, 90);
CreateObject(3991, 1581.5, -1377.9000244141, 323.10000610352, 15, 0, 0);
CreateObject(3991, 1593, -1502.1999511719, 304.79998779297, 0, 0, 0);
CreateObject(3991, 1617.5, -1637.0999755859, 284.29998779297, 15.450012207031, 0, 10);
CreateObject(3991, 1661.5, -1755.5999755859, 230.60000610352, 29.200012207031, 357.34997558594, 20.5);
CreateObject(3991, 1725.5999755859, -1848.0999755859, 152.60000610352, 39.658935546875, 348.79998779297, 37);
CreateObject(3991, 1800.9000244141, -1912.5999755859, 80, 35, 341, 48);
CreateObject(3991, 1881.5999755859, -1970.3000488281, 42.599998474121, 10, 350, 50);
CreateObject(3991, 1990.5999755859, -2047.1999511719, 31, 2, 347, 50);
CreateObject(3991, 2108.8000488281, -2118.1999511719, 26.798900604248, 2.5, 347.5, 58);
CreateObject(5314, 1597, -1196, 343.10000610352, 0, 0, 90);
CreateObject(3816, 1640.1999511719, -1069.4000244141, 351.79998779297, 0, 0, 315);
CreateObject(1634, 2178, -2139.8000488281, 29.39999961853, 0, 10, 245);
CreateObject(1634, 2176.5, -2142.8999023438, 28.799999237061, 0, 10, 240);
CreateObject(1634, 2173.8999023438, -2146, 27.89999961853, 0, 10, 242);
CreateObject(1634, 2169.8000488281, -2153.1999511719, 25.5, 0, 10, 245);
CreateObject(1634, 2167.6000976563, -2157.1000976563, 24.700000762939, 0, 10, 245);
CreateObject(1634, 2165.5, -2160.6000976563, 23.799999237061, 0, 10, 245);
CreateObject(615, 1566.5999755859, -1305.5999755859, 343.20001220703, 0, 0, 0);
CreateObject(615, 1582.4000244141, -1304.6999511719, 343.20001220703, 0, 0, 0);
CreateObject(615, 1566.1999511719, -1286.6999511719, 343.20001220703, 0, 0, 0);
CreateObject(615, 1582.1999511719, -1283.9000244141, 343.20001220703, 0, 0, 0);
CreateObject(615, 1566.3000488281, -1273.6999511719, 343.20001220703, 0, 0, 0);
CreateObject(615, 1566.1999511719, -1244, 343.20001220703, 0, 0, 0);
CreateObject(615, 1566, -1262.4000244141, 343.20001220703, 0, 0, 0);
CreateObject(615, 1582, -1274.5, 343.20001220703, 0, 0, 0);
CreateObject(615, 1565.6999511719, -1259.3000488281, 343.20001220703, 0, 0, 0);
CreateObject(615, 1582.6999511719, -1244.4000244141, 343.20001220703, 0, 0, 0);
CreateObject(615, 1567.5999755859, -1224.8000488281, 343.20001220703, 0, 0, 0);
CreateObject(615, 1583.0999755859, -1224.9000244141, 343.20001220703, 0, 0, 0);
CreateObject(615, 1568.5999755859, -1211.0999755859, 343.20001220703, 0, 0, 0);
CreateObject(615, 1583, -1210.5999755859, 343.20001220703, 0, 0, 0);
CreateObject(615, 1567.3000488281, -1195.9000244141, 343.20001220703, 0, 0, 0);
CreateObject(615, 1581.8000488281, -1194.9000244141, 343.20001220703, 0, 0, 0);
CreateObject(615, 1565.6999511719, -1182.8000488281, 343.20001220703, 0, 0, 0);
CreateObject(615, 1582.8000488281, -1182.4000244141, 343.20001220703, 0, 0, 0);
CreateObject(615, 1568.4000244141, -1168.4000244141, 343.20001220703, 0, 0, 0);
CreateObject(615, 1582.9000244141, -1168.1999511719, 343.20001220703, 0, 0, 0);
CreateObject(615, 1569.1999511719, -1153.4000244141, 343.20001220703, 0, 0, 0);
CreateObject(615, 1584.5, -1158.4000244141, 343.20001220703, 0, 0, 0);
CreateObject(615, 1573.9000244141, -1143.5999755859, 343.20001220703, 0, 0, 0);
CreateObject(615, 1588.3000488281, -1149.9000244141, 343.20001220703, 0, 0, 0);
CreateObject(615, 1577.4000244141, -1133.0999755859, 343.20001220703, 0, 0, 0);
CreateObject(615, 1591, -1139.3000488281, 343.20001220703, 0, 0, 0);
CreateObject(615, 1582.9000244141, -1123.5, 343.20001220703, 0, 0, 0);
CreateObject(615, 1597, -1131.4000244141, 343.20001220703, 0, 0, 0);
CreateObject(615, 1590.4000244141, -1115.0999755859, 343.20001220703, 0, 0, 0);
CreateObject(615, 1602.6999511719, -1122.3000488281, 343.20001220703, 0, 0, 0);
CreateObject(615, 1597.1999511719, -1105, 343.20001220703, 0, 0, 0);
CreateObject(615, 1609, -1115.4000244141, 343.20001220703, 0, 0, 0);
CreateObject(615, 1606.5999755859, -1095.6999511719, 343.20001220703, 0, 0, 0);
CreateObject(615, 1615.9000244141, -1106.5999755859, 343.20001220703, 0, 0, 0);
// SPECIAL
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/trains.txt");
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/pilots.txt");
// LAS VENTURAS
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/lv_law.txt");
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/lv_airport.txt");
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/lv_gen.txt");
// SAN FIERRO
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/sf_law.txt");
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/sf_airport.txt");
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/sf_gen.txt");
// LOS SANTOS
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/ls_law.txt");
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/ls_airport.txt");
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/ls_gen_inner.txt");
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/ls_gen_outer.txt");
// OTHER AREAS
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/whetstone.txt");
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/bone.txt");
Chiles += LoadStaticVehiclesFromFile("vehicles/flint.txt");
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/tierra.txt");
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/red_county.txt");
printf("Total vehicles from files: %d",total_vehicles_from_files);
return 1;
}
//----------------------------------------------------------
public OnPlayerUpdate(playerid)
{
if(!IsPlayerConnected(playerid)) return 0;
if(IsPlayerNPC(playerid)) return 1;
// changing cities by inputs
if( !gPlayerHasCitySelected[playerid] &&
GetPlayerState(playerid) == PLAYER_STATE_SPECTATING ) {
ClassSel_HandleCitySelection(playerid);
return 1;
}
// No weapons in interiors
if(GetPlayerInterior(playerid) != 0 && GetPlayerWeapon(playerid) != 0) {
SetPlayerArmedWeapon(playerid,0); // fists
return 0; // no syncing until they change their weapon
}
// Don't allow minigun
if(GetPlayerWeapon(playerid) == WEAPON_MINIGUN) {
Kick(playerid);
return 0;
}
/* No jetpacks allowed
if(GetPlayerSpecialAction(playerid) == SPECIAL_ACTION_USEJETPACK) {
Kick(playerid);
return 0;
}*/
/* For testing animations
new msg[128+1];
new animlib[32+1];
new animname[32+1];
thisanimid = GetPlayerAnimationIndex(playerid);
if(lastanimid != thisanimid)
{
GetAnimationName(thisanimid,animlib,32,animname,32);
format(msg, 128, "anim(%d,%d): %s %s", lastanimid, thisanimid, animlib, animname);
lastanimid = thisanimid;
SendClientMessage(playerid, 0xFFFFFFFF, msg);
}*/
return 1;
}
//----------------------------------------------------------
public OnPlayerDisconnect(playerid, reason)
{
new INI:File = INI_Open(UserPath(playerid));
INI_SetTag(File,"data");
INI_WriteInt(File,"Cash",GetPlayerMoney(playerid));
INI_WriteInt(File,"Admin",PlayerInfo[playerid][pAdmin]);
INI_WriteInt(File,"Kills",PlayerInfo[playerid][pKills]);
INI_WriteInt(File,"Deaths",PlayerInfo[playerid][pDeaths]);
INI_Close(File);
return 1;
}
//----------------------------------------------------------
enum
{
E_STREAMER_ATTACHED_OBJECT,
E_STREAMER_ATTACHED_PLAYER,
E_STREAMER_ATTACHED_VEHICLE,
E_STREAMER_ATTACH_OFFSET_X,
E_STREAMER_ATTACH_OFFSET_Y,
E_STREAMER_ATTACH_OFFSET_Z,
E_STREAMER_ATTACH_R_X,
E_STREAMER_ATTACH_R_Y,
E_STREAMER_ATTACH_R_Z,
E_STREAMER_ATTACH_X,
E_STREAMER_ATTACH_Y,
E_STREAMER_ATTACH_Z,
E_STREAMER_COLOR,
E_STREAMER_DRAW_DISTANCE,
E_STREAMER_EXTRA_ID,
E_STREAMER_INTERIOR_ID,
E_STREAMER_MAX_X,
E_STREAMER_MAX_Y,
E_STREAMER_MAX_Z,
E_STREAMER_MIN_X,
E_STREAMER_MIN_Y,
E_STREAMER_MIN_Z,
E_STREAMER_MODEL_ID,
E_STREAMER_MOVE_R_X,
E_STREAMER_MOVE_R_Y,
E_STREAMER_MOVE_R_Z,
E_STREAMER_MOVE_SPEED,
E_STREAMER_MOVE_X,
E_STREAMER_MOVE_Y,
E_STREAMER_MOVE_Z,
E_STREAMER_NEXT_X,
E_STREAMER_NEXT_Y,
E_STREAMER_NEXT_Z,
E_STREAMER_PLAYER_ID,
E_STREAMER_R_X,
E_STREAMER_R_Y,
E_STREAMER_R_Z,
E_STREAMER_SIZE,
E_STREAMER_STREAM_DISTANCE,
E_STREAMER_STYLE,
E_STREAMER_TEST_LOS,
E_STREAMER_TYPE,
E_STREAMER_WORLD_ID,
E_STREAMER_X,
E_STREAMER_Y,
E_STREAMER_Z
}
//----------------------------------------------------------
public OnPlayerCommandText(playerid, cmdtext[])
{
if(strcmp(cmdtext, "/flip", true) == 0)
{
if(IsPlayerInAnyVehicle(playerid))
{
new currentveh;
new Float:angle;
currentveh = GetPlayerVehicleID(playerid);
GetVehicleZAngle(currentveh, angle);
SetVehicleZAngle(currentveh, angle);
SendClientMessage(playerid, 0xFFFFFFFF, "AdrenalineBot: Your vehicle has been flipped.");
return 1;
}
else
{
SendClientMessage(playerid, 0xFFFFFFFF, "AdrenalineBot: You are not in any vehicle!");
return 1;
}
}
return 0;
}
//----------------------------------------------------------