SA-MP Forums

Go Back   SA-MP Forums > SA-MP Scripting and Plugins > Scripting Help

Reply
 
Thread Tools Display Modes
Old 07/06/2012, 09:14 AM   #1
djcabo
Big Clucker
 
djcabo's Avatar
 
Join Date: May 2012
Location: Capture Zone
Posts: 78
Reputation: 10
Default Why I Can't Compile? Its Always Error? Help Please!

Code:
#if false == true
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
											           zTDM
											Gamemode created by djcabo
											   Mapping by Nikz
 												   Gm:TDM
                                                    Lines: 1.604
                                                   Mode:RP|Freeroam|Fun Gaming|TDM
                                                   Map: Los Santos
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
												 IMPORTANT NOTE:
						                     Lines which are comments
					                      	 should remain like that
					                      	   or may be removed
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
												Authors' Notes
								Scripter djcabo: You can freely edit this gamemode as long as you keep the credits
								Mapper Nikz: Have Fun with the gamemode
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
#endif

//=-=-=-=-=-=-=-=-=-=-=-=-=INCLUDES=-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
#include <a_samp>
#include <SpikeStrip>
//#include <dini>
//#include <YSI\y_ini>
//#include <dudb>
#include <SII> // < Best INI Reading/Writing System I found >
//=-=-=-=-=-=-=-=-=-=-=-=-=PRAGMAS=-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
#pragma tabsize 0
//#pragma unused ret_memcpy
//=-=-=-=-=-=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

//=-=-=-=-=-=-=-=-=-=-=-=-=DEFINES=-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

//=-=-=-=-=-=-=-=-=-=-=-=-=TEAMS & GANGS=-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
#define TEAM_BALLAS ( 0 )
#define TEAM_GROVE ( 1 )
#define TEAM_POLICE ( 2 )
//=-=-=-=-=-=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

//=-=-=-=-=-=-=-=-=-=-=-=-=DIALOG DEFINES=-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
#define DIALOG_REGISTER 1
#define DIALOG_LOGIN 2
#define DIALOG_SUCCESS_1 3
#define DIALOG_SUCCESS_2 4
#define DIALOG_SHOP 5
#define DIALOG_VIPSHOP 6
#define DIALOG_VEHVIPSHOP 7
#define DIALOG_POLICEHELP 8
#define DIALOG_POLICEHELP2 9
//=-=-=-=-=-=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

//=-=-=-=-=-=-=-=-=-=-=-=-=ACCOUNT SAVING & LOADING PATH=-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
#define SAVE "zTDM/%s.ini"
//=-=-=-=-=-=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

//=-=-=-=-=-=-=-=-=-=-=-=-=COLORS=-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
#define COLOR_GROVE                       0x00FF80FF
#define COLOR_BALLAS                      0x8000FFFF
#define COLOR_TKS                         0x867F8CFF
#define BLACK                             0x000000FF
#define COLOR_NG                          0x04078AFF
#define COLOR_TM                          0xFFAC38FF
#define COLOR_PRIMAR                      0xB9F558FF
#define COLOR_HITMEN                      0xFF030300
#define COLOR_TAXI                        0xF7FF00FF
#define COLOR_SCHOOL                      0x66CCFFFF
#define COLOR_REPORTER                    0xC2A2DAFF
#define COLOR_SYSTEM                      0xEFEFF7AA
#define COLOR_ALBASTRU                    0x52FFE8AA
#define COLOR_PINK                        0xFF66FFAA
#define COLOR_SEA                         0x00808000
#define COLOR_BLUE                        0x2641FEAA
#define COLOR_NICERED                     0xFF0000FF
#define COLOR_ORANGE                      0xFF9900AA
#define COLOR_GRAD1                       0xC8D2AEFF
#define COLOR_GRAD2                       0xBFC0C2FF
#define COLOR_GRAD3                       0xCBCCCEFF
#define COLOR_GRAD4                       0xD8D8D8FF
#define COLOR_GRAD5                       0xE3E3E3FF
#define COLOR_GRAD6                       0xF0F0F0FF
#define COLOR_GREY                        0xAFAFAFAA
#define COLOR_GREEN                       0x33AA33AA
#define COLOR_RED                         0xAA3333AA
#define COLOR_LIGHTRED                    0xFF6347AA
#define COLOR_LIGHTBLUE                   0x33CCFFAA
#define COLOR_LIGHTGREEN                  0x9ACD32AA
#define YELLOW                            0xFFFF00AA
#define COLOR_YELLOW2                     0xF5DEB3AA
#define COLOR_WHITE                       0xFFFFFFAA
#define WHITE                             0xFFFFFFAA
#define COLOR_FADE1                       0xE6E6E6E6
#define COLOR_FADE2                       0xC8C8C8C8
#define COLOR_FADE3                       0xAAAAAAAA
#define COLOR_FADE4                       0x8C8C8C8C
#define COLOR_FADE5                       0x6E6E6E6E
#define COLOR_PURPLE                      0xC2A2DAAA
#define COLOR_DBLUE                       0x2641FEAA
#define COLOR_ALLDEPT                     0xFF8282AA
#define COLOR_NEWS                        0xFFA500AA
#define COLOR_OOC                         0xE0FFFFAA
#define TEAM_CYAN                         1
#define TEAM_BLUE                         2
#define TEAM_GREEN                        3
#define TEAM_ORANGE                       4
#define TEAM_COR                          5
#define TEAM_BAR                          6
#define TEAM_TAT                          7
#define TEAM_CUN                          8
#define TEAM_STR                          9
#define TEAM_HIT                          10
#define TEAM_ADMIN                        11
#define COLOR_Ballas                      0xBF15EAFF
#define COLOR_Grove                       0xFF8000FF
#define COLOR_yakuza                     0x4992B4FF
#define COLOR_HITMAN                      0xEA0000FF
#define COLOR_MAYOR                       0xB3F856FF
#define COLOR_YELLOW                      0xFFF700FF
#define COLOR_MEDIC                       0xB0514FFF
#define COLOR_PD                          0x4855F9FF
#define OBJECTIVE_COLOR                   0x64000064
#define TEAM_GREEN_COLOR                  0xFFFFFFAA
#define TEAM_JOB_COLOR                    0xFFB6C1AA
#define TEAM_HIT_COLOR                    0xFFFFFF00
#define TEAM_BLUE_COLOR                   0x8D8DFF00
#define COLOR_ADD                         0x63FF60AA
#define TEAM_Grove_COLOR                  0x00D900C8
#define TEAM_GROVE_COLOR                  0x00D900C8
#define TEAM_VAGOS_COLOR                  0xFFC801C8
#define TEAM_Ballas_COLOR                 0xD900D3C8
#define TEAM_BALLAS_COLOR                 0xD900D3C8
#define TEAM_AZTECAS_COLOR                0x01FCFFC8
#define TEAM_CYAN_COLOR                   0xFF8282AA
#define TEAM_ORANGE_COLOR                 0xFF830000
#define TEAM_COR_COLOR                    0x39393900
#define TEAM_BAR_COLOR                    0x00D90000
#define TEAM_TAT_COLOR                    0xBDCB9200
#define TEAM_CUN_COLOR                    0xD900D300
#define TEAM_STR_COLOR                    0x01FCFF00
#define TEAM_ADMIN_COLOR                  0x00808000
#define COLOR_INVIS                       0xAFAFAF00
#define COLOR_SPEC                        0xBFC0C200
//=-=-=-=-=-=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

//=-=-=-=-=-=-=-=-=-=-=-=-=FORWARDS=-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
forward JailTimer(playerid);
forward Send();
//=-=-=-=-=-=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

//=-=-=-=-=-=-=-=-=-=-=-=-=ENUMS=-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
enum pInfo
{
	AdminLevel,
	Money,
	Rank,
	Kills,
	Deaths,
	Gang,
	Password,
	VIP,
}
new pStats[MAX_PLAYERS][pInfo];
//=-=-=-=-=-=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

//=-=-=-=-=-=-=-=-=-=-=-=-=GLOBAL NEWs=-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
new LoggedIn[MAX_PLAYERS];
new Jailed[MAX_PLAYERS];
new sirenon[MAX_PLAYERS];
new	PolicePursuitVeh1;
new	PolicePursuitVeh2;
new	PolicePursuitVeh3;
new PolicePrisonierTransport;
new L1;
new	L2;
new	L3;
new	L4;
new	L5;
new	L6;
new	L7;
new	L8;
new	L9;
new B1;
new	B2;
new	B3;
new	B4;
new G1;
new	G2;
new	G3;
new sirenturn[4];
new Killstreak[MAX_PLAYERS];
new MSGs[][] =
{
    "Gamemode created by djcabo (www.djcabofreeroam.com)",
    "Mapping done by Nikz (www.djcabofreeroam.com)",
    "Type /shop to open the Shop !",
    "Dj Cabo's Freeroam Forum(www.djcabofreeroam.com)"
};
//=-=-=-=-=-=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

//=-=-=-=-=-=-=-=-=-=-=-=-=MAIN FUNCTION=-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
main()
{
	print("\n----------------------------------");
	print(" Dj Cabo's Freeroam");
	print("----------------------------------\n");
}
//=-=-=-=-=-=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-


public OnGameModeInit()
{
	// Set the GameMode Text
	SetGameModeText("RP|Freeroam|Fun Gaming|TDM");
	SetTimer("Send", 60000, true);
//=-=-=-=-=-=-=-=-=-=-=-=-=TEAM CLASSES=-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
	AddPlayerClass(105,2526.2942,-1676.6444,19.9302,87.8721,24,200,0,0,0,0); // Grove [ID 0]
    AddPlayerClass(106,2526.2942,-1676.6444,19.9302,87.8721,24,200,0,0,0,0); // Grove [ID 1]
    AddPlayerClass(107,2526.2942,-1676.6444,19.9302,87.8721,24,200,0,0,0,0); // Grove [ID 2]
    AddPlayerClass( 102, 2165.0474,-1674.9874,15.0859, 269.1425, 5, 0, 22, 100, 32, 50 ); // Ballas [ID 3]
    AddPlayerClass(281,1527.4945,-1678.1912,5.8906,80.0,24,24,25,25,26,26); // Police [ID 4]
//=-=-=-=-=-=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

    new siren1 = CreateObject( 19420,0,0,0,0,0,0,80 );
    new siren2 = CreateObject( 19420,0,0,0,0,0,0,80 );
    new siren3 = CreateObject( 19420,0,0,0,0,0,0,80 );
    new siren4 = CreateObject( 19420,0,0,0,0,0,0,80 );
	SetWeather(2);
	PolicePrisonierTransport = AddStaticVehicle(428,1585.2485,-1667.6521,6.0162,269.8068,4,75); // Police Prisonier Transport <Securicar>
	PolicePursuitVeh1 = AddStaticVehicle(541,1546.0282,-1676.0120,5.5156,91.2819,0,0); // Bullet
	PolicePursuitVeh2 = AddStaticVehicle(559,1546.1516,-1684.7251,5.5469,88.0085,0,0); // Jester
	PolicePursuitVeh3 = AddStaticVehicle(415,1546.5760,-1680.2844,5.6629,88.5523,0,0); // Cheetah
	AttachObjectToVehicle( siren1, PolicePursuitVeh1, 0.000000, -0.200000, 0.599999, 0.000000, 0.000000, 0.000000 ); // Attach Siren to Bullet Police Pursuit Vehicle
	AttachObjectToVehicle( siren2, PolicePursuitVeh2, 0.000000, -0.300000, 0.699999, 0.000000, 0.000000, 0.000000 ); // Attach Siren to Jester Police Pursuit Vehicle
	AttachObjectToVehicle( siren3, PolicePursuitVeh3, -0.000000, -0.400000, 0.600000, 0.000000, 0.000000, 0.000000 ); // Attach Siren to Cheetah Police Pursuit Vehicle
	AttachObjectToVehicle( siren4, PolicePrisonierTransport, 0.000000, 1.100000, 1.400000, 0.000000, 0.000000, 0.000000 ); // Attach Siren To Police Prisonier Transport <Securicar>
	//L1 = AddStaticVehicle(596,1537.4346,-1667.9000,13.1842,0.1255,0,1); // LSPD POLICE 1
	//L2 = AddStaticVehicle(596,1537.2668,-1677.6361,13.1840,0.4512,0,1); // LSPD POLICE 2
	L3 = AddStaticVehicle(596,1601.1913,-1692.0131,5.6120,91.0192,0,1); // LSPD POLICE 3
	L4 = AddStaticVehicle(596,1600.2858,-1687.8815,5.6110,90.0246,0,1); // LSPD POLICE 4
	L5 = AddStaticVehicle(596,1600.6755,-1684.0406,5.6095,90.7031,0,1); // LSPD POLICE 5
	L6 = AddStaticVehicle(596,1602.0184,-1696.0391,5.6115,90.3589,0,1); // LSPD POLICE 6
	L7 = AddStaticVehicle(596,1602.1854,-1700.3385,5.6106,90.0405,0,1); // LSPD POLICE 7
	L8 = AddStaticVehicle(596,1595.3568,-1709.7322,5.6109,0.7877,0,1); // LSPD POLICE 8
	L9 = AddStaticVehicle(596,1591.3458,-1710.2609,5.6107,359.8351,0,1); // LSPD POLICE 9
	B1 = AddStaticVehicle(517,2183.5488,-1680.4927,13.8720,349.5660,126,126); // BALLAS 1
	B2 = AddStaticVehicle(517,2187.6731,-1662.8025,14.7008,347.1707,126,126); // BALLAS 2
	B3 = AddStaticVehicle(518,2164.3962,-1684.3077,14.7567,320.1696,126,126); // BALLAS 3
	B4 = AddStaticVehicle(518,2166.4600,-1686.0868,14.7567,341.5892,126,126); // BALLAS 4
	G1 = AddStaticVehicle(517,2509.6941,-1668.0394,13.3056,6.9947,86,86); // GROVE 1
	G2 = AddStaticVehicle(517,2497.8762,-1683.5112,13.2356,281.1148,86,86); // GROVE 2
	G3 = AddStaticVehicle(517,2500.9380,-1655.1943,13.3001,69.3356,86,86); // GROVE 3
//=-=-=-=-=-=-=-=-=-=-=-=-=MAPS BY Nikz=-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
    CreateObject(2924,266.20001221,83.80000305,1001.20001221,0.00000000,0.00000000,92.00000000); //object(kmb_crash3door) (1)
	CreateObject(2924,266.29998779,88.50000000,1001.20001221,0.00000000,0.00000000,92.00000000); //object(kmb_crash3door) (2)
	CreateObject(2603,263.20001221,85.80000305,1000.50000000,0.00000000,0.00000000,0.00000000); //object(police_cell_bed) (2)
	CreateObject(2602,263.00000000,87.80000305,1000.59997559,0.00000000,0.00000000,89.99993896); //object(police_cell_toilet) (1)
	CreateObject(2603,263.29998779,81.19999695,1000.50000000,0.00000000,0.00000000,0.00000000); //object(police_cell_bed) (3)
	CreateObject(2602,263.00000000,83.40000153,1000.59997559,0.00000000,0.00000000,0.00000000); //object(police_cell_toilet) (2)
	CreateObject(1499,1582.59997559,-1637.80004883,12.50000000,0.00000000,0.00000000,0.00000000); //object(gen_doorint05) (2)
	CreateObject(970,1535.40002441,-1664.00000000,12.89999962,0.00000000,0.00000000,0.00000000); //object(fencesmallb) (1)
	CreateObject(970,1535.30004883,-1681.40002441,12.89999962,0.00000000,0.00000000,0.00000000); //object(fencesmallb) (2)
	CreateObject(970,1537.40002441,-1679.19995117,12.89999962,0.00000000,0.00000000,90.00000000); //object(fencesmallb) (3)
	CreateObject(970,1537.40002441,-1674.80004883,12.89999962,0.00000000,0.00000000,90.00000000); //object(fencesmallb) (4)
	CreateObject(970,1537.40002441,-1670.50000000,12.89999962,0.00000000,0.00000000,90.00000000); //object(fencesmallb) (6)
	CreateObject(970,1537.40002441,-1666.19995117,12.89999962,0.00000000,0.00000000,90.00000000); //object(fencesmallb) (7)
	CreateObject(970,1533.19995117,-1666.09997559,12.89999962,0.00000000,0.00000000,90.00000000); //object(fencesmallb) (8)
	CreateObject(970,1533.19995117,-1670.40002441,12.89999962,0.00000000,0.00000000,90.00000000); //object(fencesmallb) (9)
	CreateObject(970,1533.19995117,-1674.69995117,12.89999962,0.00000000,0.00000000,90.00000000); //object(fencesmallb) (10)
	CreateObject(970,1533.19995117,-1679.09997559,12.89999962,0.00000000,0.00000000,90.00000000); //object(fencesmallb) (11)
	CreateObject(8990,1536.50000000,-1674.40002441,13.10000038,0.00000000,0.00000000,270.00000000); //object(bush11_lvs) (1)
	CreateObject(8991,1536.50000000,-1671.09997559,13.10000038,0.00000000,0.00000000,270.00000000); //object(bush12_lvs) (1)
	CreateObject(8991,1535.80004883,-1671.69995117,13.10000038,0.00000000,0.00000000,269.99450684); //object(bush12_lvs) (2)
	CreateObject(8990,1535.80004883,-1674.30004883,13.10000038,0.00000000,0.00000000,269.99450684); //object(bush11_lvs) (2)
	CreateObject(8990,1535.00000000,-1671.30004883,13.10000038,0.00000000,0.00000000,269.99450684); //object(bush11_lvs) (3)
	CreateObject(8991,1535.30004883,-1674.50000000,13.10000038,0.00000000,0.00000000,269.99450684); //object(bush12_lvs) (3)
	CreateObject(8990,1534.09997559,-1671.19995117,13.10000038,0.00000000,0.00000000,269.99450684); //object(bush11_lvs) (4)
	CreateObject(8991,1534.50000000,-1674.59997559,13.10000038,0.00000000,0.00000000,269.99450684); //object(bush12_lvs) (4)
	CreateObject(8990,1533.90002441,-1671.50000000,13.10000038,0.00000000,0.00000000,269.99450684); //object(bush11_lvs) (5)
	CreateObject(8991,1533.90002441,-1674.09997559,13.10000038,0.00000000,0.00000000,269.99450684); //object(bush12_lvs) (5)

//=-=-=-=-=-=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

	return 1;
}

public JailTimer(playerid)
{
	SpawnPlayer(playerid);
    GameTextForPlayer(playerid,"~w~Released~r~From~n~~g~Jail",3000,1);
    SetPlayerPos(playerid,1537.7169,-1675.8016,13.5469);
    Jailed[playerid] = 0;
}
public Send()
{
    new MSG = random(sizeof(MSGs));
	SendClientMessageToAll(COLOR_LIGHTBLUE, MSGs[MSG]);
}
public OnGameModeExit()
{
	return 1;
}

public OnPlayerRequestClass(playerid, classid)
{
	switch ( classid )
    {
        case 0: // [CLASSID 0]
        {
            SetPlayerPos(playerid,2526.2942,-1676.6444,19.9302);
            SetPlayerFacingAngle(playerid,87.8270);
			SetPlayerCameraPos(playerid,2526.2942,-1676.6444,19.9302);
			SetPlayerCameraLookAt(playerid,2526.2942,-1676.6444,19.9302);
            GameTextForPlayer( playerid, "~r~Grove", 300, 3 );
            SetPlayerTeam( playerid, TEAM_GROVE );
        }

        case 1: // [CLASSID 1]
        {
            SetPlayerPos(playerid,2526.2942,-1676.6444,19.9302);
            SetPlayerFacingAngle(playerid,87.8270);
			SetPlayerCameraPos(playerid,2526.2942,-1676.6444,19.9302);
			SetPlayerCameraLookAt(playerid,2526.2942,-1676.6444,19.9302);
            GameTextForPlayer( playerid, "~g~GROVE", 300, 3 );
            SetPlayerTeam( playerid, TEAM_GROVE );
        }

        case 2: // [CLASSID 2]
        {
            SetPlayerPos(playerid,2526.2942,-1676.6444,19.9302);
            SetPlayerFacingAngle(playerid,87.8270);
			SetPlayerCameraPos(playerid,2526.2942,-1676.6444,19.9302);
			SetPlayerCameraLookAt(playerid,2526.2942,-1676.6444,19.9302);
            GameTextForPlayer( playerid, "~g~GROVE", 300, 3 );
            SetPlayerTeam( playerid, TEAM_GROVE );
        }
        case 3: // [CLASSID 3]
        {
            SetPlayerPos(playerid,2165.0474,-1674.9874,15.0859);
            SetPlayerFacingAngle(playerid,87.8270);
			SetPlayerCameraPos(playerid,2165.0474,-1674.9874,15.0859);
			SetPlayerCameraLookAt(playerid,2165.0474,-1674.9874,15.0859);
            GameTextForPlayer( playerid, "~p~BALLAS", 300, 3 );
            SetPlayerTeam( playerid, TEAM_BALLAS );
        }
        case 4: // [CLASSID 4]
        {
            SetPlayerPos(playerid,1537.7169,-1675.8016,13.5469);
            SetPlayerFacingAngle(playerid,87.8270);
            SetPlayerCameraPos(playerid,1537.7169,-1675.8016,13.5469);
            SetPlayerCameraLookAt(playerid,1537.7169,-1675.8016,13.5469);
            GameTextForPlayer(playerid,"~b~POLICE",300,3);
            SetPlayerTeam(playerid,TEAM_POLICE);
		}
    }
	return 1;
}

public OnPlayerConnect(playerid)
{
	new string[128];
	format(string,sizeof(string),"[JOIN] %s has joined the server !",PlayerName(playerid));
	SendClientMessageToAll(COLOR_NICERED,string);
//=-=-=-=-=-=-=-=-=-=-=-=-=REGISTER & LOGIN=-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
	LoggedIn[playerid] = 0;
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid, name, sizeof(name));
    if(fexist(SAVE_PATH(playerid)))
    {
        ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT, "Login", "This Account name is registered , input the password below to log in !", "Login", "Leave");
    }
    else
    {
        ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, "Register Account", "This Account name is not registered, input a password below to register !", "Register", "Leave");
	}
	return 1;
}
//=-=-=-=-=-=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-


public OnPlayerDisconnect(playerid, reason)
{
    new string[128];
	format(string,sizeof(string),"[LEAVE] %s has left the server !",PlayerName(playerid));
	SendClientMessageToAll(COLOR_NICERED,string);
	if(INI_Open(SAVE_PATH(playerid))) {
    INI_WriteInt("Money",GetPlayerMoney(playerid));
    INI_WriteInt("AdminLevel",pStats[playerid][AdminLevel]);
    INI_WriteInt("VIP",pStats[playerid][VIP]);
    INI_WriteInt("Kills",pStats[playerid][Kills]);
    INI_WriteInt("Deaths",pStats[playerid][Deaths]);
    INI_WriteInt("Rank",pStats[playerid][Rank]);
    INI_Save();
    INI_Close();
    LoggedIn[playerid] = 0;
    }
	return 1;
}

public OnPlayerSpawn(playerid)
{
    new string[128];
	new idx;
	new sendername[ MAX_PLAYER_NAME ];
	#pragma unused idx
	#pragma unused sendername
	ResetPlayerWeapons(playerid);
	if(GetPlayerTeam(playerid) == TEAM_BALLAS)
	{
	    SendClientMessage(playerid,COLOR_PINK,"You have spawned as Ballas !");
	    SendClientMessage(playerid,COLOR_PINK,"You have been given a Deagle !");
	    GivePlayerWeapon(playerid,24,24);
	    SetPlayerHealth(playerid,100);
	    SetPlayerColor(playerid,COLOR_PURPLE);
	    for(new i = 0; i < MAX_PLAYERS; i++)
	    {
	        if(pStats[i][AdminLevel] >= 1)
	        {
	            format(string,sizeof(string),"[ADMIN] %s has spawned as Ballas !",PlayerName(playerid));
	            SendClientMessage(i,COLOR_LIGHTBLUE,string);
			}
		}
	}
	if(GetPlayerTeam(playerid) == TEAM_GROVE)
	{
	    SendClientMessage(playerid,COLOR_GREEN,"You have spawned as Grove !");
	    SendClientMessage(playerid,COLOR_GREEN,"You have been given a Deagle !");
	    GivePlayerWeapon(playerid,24,24);
	    SetPlayerHealth(playerid,100);
	    SetPlayerColor(playerid,COLOR_GREEN);
	    for(new i = 0; i < MAX_PLAYERS; i++)
	    {
	        if(pStats[i][AdminLevel] >= 1)
	        {
	            format(string,sizeof(string),"[ADMIN] %s has spawned as Grove !",PlayerName(playerid));
	            SendClientMessage(i,COLOR_LIGHTBLUE,string);
			}
		}
	}
	if(GetPlayerTeam(playerid) == TEAM_POLICE)
	{
	    SendClientMessage(playerid,COLOR_LIGHTBLUE,"You have spawned as Police !");
	    SendClientMessage(playerid,COLOR_LIGHTBLUE,"You have been given Police Equipment !");
	    SendClientMessage(playerid,COLOR_LIGHTBLUE,"Type /policehelp for information & help about your duty !");
	    GivePlayerWeapon(playerid,24,200);
	    GivePlayerWeapon(playerid,31,500);
	    GivePlayerWeapon(playerid,25,100);
	    GivePlayerWeapon(playerid,29,500);
	    GivePlayerWeapon(playerid,17,50);
	    GivePlayerWeapon(playerid,3,999);
	    SetPlayerHealth(playerid,100);
	    SetPlayerArmour(playerid,100);
	    SetPlayerColor(playerid,COLOR_BLUE);
	    for(new i = 0; i < MAX_PLAYERS; i++)
	    {
	        if(pStats[i][AdminLevel] >= 1)
	        {
	            format(string,sizeof(string),"[ADMIN] %s has spawned as Police !",PlayerName(playerid));
	            SendClientMessage(i,COLOR_LIGHTBLUE,string);
			}
		}
	}
	return 1;
}

public OnPlayerDeath(playerid, killerid, reason)
{
	if(Jailed[playerid] == 1)
	{
	    SetPlayerPos(playerid,264.6237,86.1668,1001.0391);
    	SetPlayerInterior(playerid,6);
    	SendClientMessage(playerid,COLOR_NICERED,"You haven't finished your jail time !");
	}
	SetPlayerWantedLevel(killerid,6);
	SendClientMessage(killerid,COLOR_PURPLE,"You have committed a Crime: First Degree Murder");
	SendClientMessage(killerid,COLOR_PURPLE,"Your Current Wanted Level: 6");
	SetPlayerColor(playerid,COLOR_NICERED);
	if(GetPlayerWantedLevel(playerid) >= 1)
	{
	    if(GetPlayerTeam(killerid) == TEAM_POLICE)
	    {
	        new SuspectDeath[128];
			SendClientMessage(killerid,COLOR_LIGHTBLUE,"Congratulations! You have killed a Suspect !");
			SendClientMessage(killerid,COLOR_LIGHTBLUE,"You receive 5000$ for killing a Suspect !");
			format(SuspectDeath, 128, "~w~Suspect~r~Killed~n~Bonus~g~$5000");
			GameTextForPlayer(killerid, SuspectDeath, 5000, 1);
			SendClientMessage(playerid,COLOR_NICERED,"You have been killed by an Officer. You are jailed for 300 Seconds");
			SetTimer("JailTimer",300000,false); // Jailed for 300 seconds
   			new Skill[128];
      		format(Skill,128,"Police Officer %s has neutralized Suspect %s",PlayerName(killerid),PlayerName(playerid));
        	SendClientMessageToAll(COLOR_PURPLE,Skill);
        	SetPlayerPos(playerid,264.6237,86.1668,1001.0391);
        	SetPlayerInterior(playerid,6);
        	Jailed[playerid] = 1;
		}
	}

	pStats[playerid][Deaths]++;
	pStats[killerid][Kills]++;
	SendClientMessage(killerid,COLOR_LIGHTBLUE,"INFO: You killed an enemy and you've been rewarded 2000$ !");
	pStats[killerid][Money]+=2000;
	GivePlayerMoney(killerid,2000);
	Killstreak[killerid]++;
	Killstreak[playerid] = 0;
	if(Killstreak[killerid] == 3)
	{
		new string[128];
		format(string,128,"INFO: %s has made a Killstreak of 3 and has been rewarded 5000$ !",PlayerName(killerid));
		SendClientMessageToAll(COLOR_LIGHTBLUE,string);
		pStats[killerid][Money]+=5000;
		GivePlayerMoney(killerid,5000);
		Killstreak[killerid]++;
		Killstreak[playerid] = 0;
	}
	if(Killstreak[killerid] == 6)
	{
		new string[128];
		format(string,128,"INFO: %s has made a Killstreak of 6 and has been rewarded 10000$ !",PlayerName(killerid));
		SendClientMessageToAll(COLOR_LIGHTBLUE,string);
		pStats[killerid][Money]+=10000;
		GivePlayerMoney(killerid,10000);
		Killstreak[killerid]++;
		Killstreak[playerid] = 0;
	}
	return 1;
}

public OnVehicleSpawn(vehicleid)
{
	return 1;
}

public OnVehicleDeath(vehicleid, killerid)
{
	if(vehicleid == PolicePursuitVeh1)
	{
	    DestroyObject(sirenturn[0]);
	}
	if(vehicleid == PolicePursuitVeh2)
	{
	    DestroyObject(sirenturn[1]);
 	}
	if(vehicleid == PolicePursuitVeh3)
	{
	    DestroyObject(sirenturn[2]);
 	}
	return 1;
}

public OnPlayerText(playerid, text[])
{
	return 1;
}

public OnPlayerCommandText(playerid, cmdtext[])
{
	/*new tmp[128];
	new idx;
	new giveplayer[MAX_PLAYER_NAME];
	new para1;*/
	new string[128];
	//new sendername[MAX_PLAYER_NAME];
	new cmd[256], idx;
	cmd = strtok(cmdtext, idx);
	new sendername[ MAX_PLAYER_NAME ];
	if (strcmp("/makeadmin", cmd, true) == 0)
	{
		//new string[128];
       new tmp[256];
       new player[MAX_PLAYER_NAME], giveplayer[MAX_PLAYER_NAME];
       new giveplayerid;
       if (pStats[playerid][AdminLevel] >= 8)
       {
               tmp = strtok(cmdtext, idx);
               if(!strlen(tmp))
               {
                       SendClientMessage(playerid, COLOR_ORANGE, "USAGE: /makeadmin [playerid] [level]");
                       SendClientMessage(playerid, COLOR_ORANGE, "FUNCTION: Set the admin level of a player.");
                       return 1;
               }
               giveplayerid = ReturnUser(tmp);
               tmp = strtok(cmdtext, idx);
               new level = strval(tmp);
               if(giveplayerid != INVALID_PLAYER_ID)
               {
                       GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                       GetPlayerName(playerid, player, sizeof(player));
                       pStats[giveplayerid][AdminLevel] = level;
                       printf("Admin %s made %s a level %d admin.", player, giveplayer, level);
                       format(string, sizeof(string), "You have been promoted to admin level %d by %s.", level,  player);
                       SendClientMessage(giveplayerid, 0x00C2ECFF, string);
                       format(string, sizeof(string), "You have given %s level %d admin.",  giveplayer,pStats[giveplayerid][AdminLevel]);
                       SendClientMessage(playerid, 0x00C2ECFF, string);
               }
               else if(giveplayerid == INVALID_PLAYER_ID)
               {
                       format(string, sizeof(string), "%i is not an active player.", giveplayerid);
                       SendClientMessage(playerid, 0xE60000FF, string);
               }
       }
       else
       {
           SendClientMessage(playerid, 0xE60000FF, "You are not the server owner!");
       }
		return 1;
	}
	if(strcmp("/spikestrip",cmd,true) == 0)
	{
	    if(GetPlayerTeam(playerid) == TEAM_POLICE)
	    {
			new Float:plocx,Float:plocy,Float:plocz,Float:ploca;
        	GetPlayerPos(playerid, plocx, plocy, plocz);
        	GetPlayerFacingAngle(playerid,ploca);
        	CreateStrip(plocx,plocy,plocz,ploca);
			SendClientMessage(playerid,COLOR_LIGHTBLUE,"INFO: You have placed a spike strip at your position");
            for(new i = 0; i < MAX_PLAYERS; i++)
            {
                if(GetPlayerTeam(i) == TEAM_POLICE)
                {
					format(string,sizeof(string),"Police Officer %s has placed a spikestrip !",PlayerName(playerid));
					SendClientMessage(i,COLOR_PURPLE,string);
				}
			}
		}
		return 1;
}
	if(strcmp("/removespikestrip",cmd,true) == 0)
	{
	    DeleteClosestStrip(playerid);
	    return 1;
	}
	if(strcmp("/kick",cmd,true) == 0)
	{
	    new tmp[256];
       	new giveplayer[MAX_PLAYER_NAME];
       	new giveplayerid;
	    if(pStats[playerid][AdminLevel] >= 1)
	    {
	        tmp = strtok(cmdtext, idx);
	        giveplayerid = ReturnUser(tmp),	GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
			if(!strlen(tmp))
			{
				SendClientMessage(playerid, COLOR_GRAD2, "{00FF00}Correct Usage:{FFFFFF} /kick [playerid/PartOfName] [reason]");
				return 1;
			}
				new length = strlen(cmdtext);
							while ((idx < length) && (cmdtext[idx] <= ' '))
							{
								idx++;
							}
							new offset = idx;
							new result[64];
							while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
							{
								result[idx - offset] = cmdtext[idx];
								idx++;
							}
        		result[idx - offset] = EOS;
							if(!strlen(result))
							{
								SendClientMessage(playerid, COLOR_GRAD2, "{00FF00}Correct Usage:{FFFFFF} /kick [playerid/PartOfName] [reason]");
								return 1;
							}
                format(string, sizeof(string), "%s was kicked by Admin %s, reason: %s", giveplayer,PlayerName(playerid), (result));
				SendClientMessageToAll(COLOR_LIGHTRED, string);
				Kick(giveplayerid);
		}
				return 1;
			}
    if(strcmp("/ban",cmd,true) == 0)
	{
	    new tmp[256];
       	new giveplayer[MAX_PLAYER_NAME];
       	new giveplayerid;
	    if(pStats[playerid][AdminLevel] >= 1)
	    {
	        tmp = strtok(cmdtext, idx);
	        giveplayerid = ReturnUser(tmp),	GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
			if(!strlen(tmp))
			{
				SendClientMessage(playerid, COLOR_GRAD2, "{00FF00}Correct Usage:{FFFFFF} /ban [playerid/PartOfName] [reason]");
				return 1;
			}
				new length = strlen(cmdtext);
							while ((idx < length) && (cmdtext[idx] <= ' '))
							{
								idx++;
							}
							new offset = idx;
							new result[64];
							while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
							{
								result[idx - offset] = cmdtext[idx];
								idx++;
							}
        		result[idx - offset] = EOS;
							if(!strlen(result))
							{
								SendClientMessage(playerid, COLOR_GRAD2, "{00FF00}Correct Usage:{FFFFFF} /ban [playerid/PartOfName] [reason]");
								return 1;
							}
                format(string, sizeof(string), "%s was banned by Admin %s, reason: %s", giveplayer, PlayerName(playerid), (result));
				SendClientMessageToAll(COLOR_LIGHTRED, string);
				Ban(giveplayerid);
		}
				return 1;
			}
	if(strcmp("/policehelp",cmd,true) == 0)
	{
	    ShowPlayerDialog(playerid,DIALOG_POLICEHELP,DIALOG_STYLE_MSGBOX,"Police Help","In your Police Officer Duty you must remember:\n{FC0000}RED{FFFFFF}- Wanted Player you must kill him/her\n{11BF11}Green{FFFFFF}- Player is in Grove Gang\n{CB18DB}Purple{FFFFFF}- Player is in Ballas Gang","OK","Police Commands");
	    return 1;
 }
	if(strcmp("/getmypos",cmd,true) == 0)       // This Command
	{                                           // Is for testing
		new Float:x;                            // You can delete/comment it
		new Float:y;
		new Float:z;
		GetPlayerPos(playerid,x,y,z);
		format(string,sizeof(string),"%f,%f,%f",x,y,z);
		SendClientMessage(playerid,COLOR_NICERED,string);
		printf(string);
		return 1;
 }
    if(strcmp("/pd",cmd,true) == 0) // This command is for testing
    {                               // You can delete/comment it
        SetPlayerPos(playerid,1546.0282,-1676.0120,5.5156);
        return 1;
	}
	if(strcmp("/vspawn",cmd,true) == 0)     // This command is for testing
	{                                       // You can delete/comment it
	    new tmp[256];
	    tmp = strtok(cmdtext,idx);
	    new id = strval(tmp);
	      new Float:x;
	       new Float:y;
	        new Float:z;
		GetPlayerPos(playerid,x,y,z);
		CreateVehicle(id,x,y,z,80.0,1,1,999999999);
	return 1;
}
	if(strcmp("/r",cmd,true) == 0 || strcmp("/radio",cmd,true) == 0)
	{
	    if(GetPlayerTeam(playerid) != TEAM_POLICE) return SendClientMessage(playerid,COLOR_NICERED,"You're not a Cop !");
	    new length = strlen(cmdtext);
		while ((idx < length) && (cmdtext[idx] <= ' '))
		{
			idx++;
		}
	  	new offset = idx;
		new result[64];
	    while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
			{
				result[idx - offset] = cmdtext[idx];
				idx++;
			}
        result[idx - offset] = EOS;
	    if(!strlen(result)) return SendClientMessage(playerid,COLOR_LIGHTBLUE,"Correct Usage: /radio [TEXT]");
	    for(new i = 0; i < MAX_PLAYERS; i++)
	    {
	        if(GetPlayerTeam(i) == TEAM_POLICE)
	        {
	            format(string,sizeof(string),"[POLICE RADIO] Police Officer %s : %s",PlayerName(playerid),result);
	            SendClientMessage(i,COLOR_LIGHTBLUE,string);
			}
		}
		return 1;
 }
 if(strcmp("/gc",cmd,true) == 0 || strcmp("/gangchat",cmd,true) == 0)
	{
	    if(GetPlayerTeam(playerid) == TEAM_POLICE) return SendClientMessage(playerid,COLOR_NICERED,"You're not a Gang Member ! Use /radio instead !");
	    new length = strlen(cmdtext);
		while ((idx < length) && (cmdtext[idx] <= ' '))
		{
			idx++;
		}
	  	new offset = idx;
		new result[64];
	    while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
			{
				result[idx - offset] = cmdtext[idx];
				idx++;
			}
        result[idx - offset] = EOS;
	    if(!strlen(result)) return SendClientMessage(playerid,COLOR_LIGHTBLUE,"Correct Usage: /gangchat [TEXT]");
	    for(new i = 0; i < MAX_PLAYERS; i++)
	    {
			if(GetPlayerTeam(playerid) == TEAM_GROVE)
			{
	        if(GetPlayerTeam(i) == TEAM_GROVE)
	        {
	            format(string,sizeof(string),"[GANG CHAT] Gang Member %s : %s",PlayerName(playerid),result);
	            SendClientMessage(i,COLOR_GREEN,string);
			}
			}
			if(GetPlayerTeam(playerid) == TEAM_BALLAS)
			{
			if(GetPlayerTeam(i) == TEAM_BALLAS)
			{
			    format(string,sizeof(string),"[GANG CHAT] Gang Member %s : %s",PlayerName(playerid),result);
	            SendClientMessage(i,COLOR_PURPLE,string);
			}
			}
		}
		return 1;
 }
    if(strcmp("/setweather",cmd,true) == 0)
	{
	    new tmp[256];
	    tmp = strtok(cmdtext,idx);
	    new id = strval(tmp);
		SetPlayerWeather(playerid,id);
	return 1;
}

	if (strcmp("/setmoney",cmd,true) == 0)
	{
 		new tmp[256];
       new player[MAX_PLAYER_NAME], giveplayer[MAX_PLAYER_NAME];
       new giveplayerid;
       if(pStats[playerid][AdminLevel] >=2)
       {
			   tmp = strtok(cmdtext, idx);
               if(!strlen(tmp))
               {
                       SendClientMessage(playerid, COLOR_ORANGE, "USAGE: /setmoney [playerid] [money]");
                       SendClientMessage(playerid, COLOR_ORANGE, "FUNCTION: Set the money of a player.");
                       return 1;
               }
			   giveplayerid = ReturnUser(tmp);
               tmp = strtok(cmdtext, idx);
               new money = strval(tmp);
               if(giveplayerid != INVALID_PLAYER_ID)
               {
                       GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                       GetPlayerName(playerid, player, sizeof(player));
                       pStats[giveplayerid][Money] = money;
                       ResetPlayerMoney(giveplayerid);
                       GivePlayerMoney(playerid,money);
                       printf("Admin %s has set %s's money to %d.", player, giveplayer, money);
                       format(string, sizeof(string), "Your money has been set to %d by %s.", money,  player);
                       SendClientMessage(giveplayerid, 0x00C2ECFF, string);
                       format(string, sizeof(string), "You have set %s's money to %d.",  giveplayer,pStats[giveplayerid][Money]);
                       SendClientMessage(playerid, 0x00C2ECFF, string);
               }
               else if(giveplayerid == INVALID_PLAYER_ID)
               {
                       format(string, sizeof(string), "%i is not an active player.", giveplayerid);
                       SendClientMessage(playerid, 0xE60000FF, string);
               }
       }
       else
       {
           SendClientMessage(playerid, 0xE60000FF, "You are not a Regular Admin!");
       }
		return 1;
	}

	if (strcmp("/admins", cmdtext, true) == 0)
	{
	    SendClientMessage(playerid,COLOR_GREEN,"Administrators Online:");
	    for(new i = 0; i < MAX_PLAYERS; i++)
	    {
	        if(pStats[i][AdminLevel] == 1)
	        {
	            GetPlayerName(i, sendername, sizeof(sendername));
				format(string, 128, "Trial Admin - %s[ID: %d]", sendername,i);
				SendClientMessage(playerid, 0xFFD500FF, string);
			}
			if(pStats[i][AdminLevel] == 2)
			{
			    GetPlayerName(i, sendername, sizeof(sendername));
				format(string, 128, "Regular Admin - %s[ID: %d]", sendername,i);
				SendClientMessage(playerid, 0x4EB1CFFF, string);
			}
			if(pStats[i][AdminLevel] == 3)
			{
				GetPlayerName(i, sendername, sizeof(sendername));
				format(string, 128, "Super Admin - %s[ID: %d]", sendername,i);
				SendClientMessage(playerid, 0xB966DCFF, string);
			}
			if(pStats[i][AdminLevel] == 4)
			{
			    GetPlayerName(i, sendername, sizeof(sendername));
				format(string, 128, "Lead Admin - %s[ID: %d]", sendername,i);
				SendClientMessage(playerid, 0x6ADC66FF, string);
			}
			if(pStats[i][AdminLevel] == 5)
			{
			    GetPlayerName(i, sendername, sizeof(sendername));
				format(string, 128, "Super Lead Admin - %s[ID: %d]", sendername,i);
				SendClientMessage(playerid, 0xFF6A6AFF, string);
			}
			if(pStats[i][AdminLevel] == 6)
			{
   				GetPlayerName(i, sendername, sizeof(sendername));
				format(string, 128, "Head Admin - %s[ID: %d]", sendername,i);
				SendClientMessage(playerid, 0x6AFFF0FF, string);
			}
			if(pStats[i][AdminLevel] == 7)
			{
			    GetPlayerName(i, sendername, sizeof(sendername));
				format(string, 128, "Co-Owner - %s[ID: %d]", sendername,i);
				SendClientMessage(playerid, COLOR_BLUE, string);
			}
			if(pStats[i][AdminLevel] == 8)
			{
			    GetPlayerName(i, sendername, sizeof(sendername));
				format(string, 128, "Owner - %s[ID: %d]", sendername,i);
				SendClientMessage(playerid, 0xFF0000FF, string);
			}
		}
		return 1;
 }
    if(strcmp("/shop",cmd,true) == 0)
    {
        ShowPlayerDialog(playerid,DIALOG_SHOP,DIALOG_STYLE_LIST,"Weapons Shop","AK-47							$5000\nM4							$4500\nDeagle							$2000\nMP5							$2500\nUzi							$3000\nVIP Shop","Buy","Exit");
	return 1;
}
    if (strcmp("/makevip", cmd, true) == 0)
	{
		//new string[128];
       new tmp[256];
       new player[MAX_PLAYER_NAME], giveplayer[MAX_PLAYER_NAME];
       new giveplayerid;
       if (pStats[playerid][AdminLevel] >= 4)
       {
               tmp = strtok(cmdtext, idx);
               if(!strlen(tmp))
               {
                       SendClientMessage(playerid, COLOR_ORANGE, "USAGE: /makevip [playerid] [level]");
                       SendClientMessage(playerid, COLOR_ORANGE, "FUNCTION: Set the VIP level of a player.");
                       return 1;
               }
               giveplayerid = ReturnUser(tmp);
               tmp = strtok(cmdtext, idx);
               new level = strval(tmp);
               if(giveplayerid != INVALID_PLAYER_ID)
               {
                       GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                       GetPlayerName(playerid, player, sizeof(player));
                       pStats[giveplayerid][VIP] = level;
                       printf("Admin %s made %s a level %d VIP.", player, giveplayer, level);
                       format(string, sizeof(string), "You have been promoted to VIP level %d by %s.", level,  player);
                       SendClientMessage(giveplayerid, 0x00C2ECFF, string);
                       format(string, sizeof(string), "You have given %s level %d VIP.",  giveplayer,pStats[giveplayerid][VIP]);
                       SendClientMessage(playerid, 0x00C2ECFF, string);
               }
               else if(giveplayerid == INVALID_PLAYER_ID)
               {
                       format(string, sizeof(string), "%i is not an active player.", giveplayerid);
                       SendClientMessage(playerid, 0xE60000FF, string);
               }
       }
       else
       {
           SendClientMessage(playerid, 0xE60000FF, "You are not a Lead Admin!");
       }
		return 1;
	}
	if (strcmp("/vips", cmdtext, true) == 0)
	{
	    SendClientMessage(playerid,COLOR_GREEN,"VIPs Online:");
	    for(new i = 0; i < MAX_PLAYERS; i++)
	    {
	        if(pStats[i][VIP] == 1)
	        {
	            GetPlayerName(i, sendername, sizeof(sendername));
				format(string, 128, "Simple VIP - %s[ID: %d]", sendername,i);
				SendClientMessage(playerid, 0xFFD500FF, string);
			}
			if(pStats[i][VIP] == 2)
			{
			    GetPlayerName(i, sendername, sizeof(sendername));
				format(string, 128, "Regular VIP - %s[ID: %d]", sendername,i);
				SendClientMessage(playerid, 0x4EB1CFFF, string);
			}
			if(pStats[i][VIP] == 3)
			{
				GetPlayerName(i, sendername, sizeof(sendername));
				format(string, 128, "Super VIP - %s[ID: %d]", sendername,i);
				SendClientMessage(playerid, 0xB966DCFF, string);
			}
			
		}
		return 1;
 }
	return 0;
}

public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
	new veh = GetPlayerVehicleID(playerid);
	if(veh == PolicePursuitVeh1 || veh == PolicePursuitVeh2 || veh == PolicePursuitVeh3 && GetPlayerTeam(playerid) != TEAM_POLICE)
	{
	    RemovePlayerFromVehicle(playerid);
	    SendClientMessage(playerid,COLOR_NICERED,"You're not a Cop!");
	}
	return 1;
}

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

public OnPlayerStateChange(playerid, newstate, oldstate)
{
    if(newstate == PLAYER_STATE_DRIVER)
    {
        new veh = GetPlayerVehicleID(playerid);
        new gang = GetPlayerTeam(playerid);
        if(veh == PolicePursuitVeh1 || veh == PolicePursuitVeh2 || veh == PolicePursuitVeh3 || veh == PolicePrisonierTransport || veh == L1 || veh == L2 || veh == L3 || veh == L4 || veh == L5 || veh == L6 || veh == L7 || veh == L8 || veh == L9)
        {
            if(gang != TEAM_POLICE)
            {
                RemovePlayerFromVehicle(playerid);
                SendClientMessage(playerid,COLOR_PURPLE,"You have committed a Crime: Stealing A Police Vehicle");
				SendClientMessage(playerid,COLOR_PURPLE,"Your Current Wanted Level: 3");
				SetPlayerWantedLevel(playerid,3);
				SetPlayerColor(playerid,COLOR_NICERED);
                SendClientMessage(playerid,COLOR_NICERED,"You're not a Cop!");
			}
		}
		if(veh == G1 || veh == G2 || veh == G3)
		{
			if(gang != TEAM_GROVE)
			{
			    RemovePlayerFromVehicle(playerid);
			    SendClientMessage(playerid,COLOR_NICERED,"You're not in Grove Gang !");
			}
		}
		if(veh == B1 || veh == B2 || veh == B3 || veh == B4)
		{
		    if(gang != TEAM_BALLAS)
		    {
		        RemovePlayerFromVehicle(playerid);
			    SendClientMessage(playerid,COLOR_NICERED,"You're not in Ballas Gang !");
			}
		}
	}
	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 OnPlayerRequestSpawn(playerid)
{
	return 1;
}

public OnObjectMoved(objectid)
{
	return 1;
}

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

public OnPlayerPickUpPickup(playerid, pickupid)
{
	return 1;
}

public OnVehicleMod(playerid, vehicleid, componentid)
{
	return 1;
}

public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
{
	return 1;
}

public OnVehicleRespray(playerid, vehicleid, color1, color2)
{
	return 1;
}

public OnPlayerSelectedMenuRow(playerid, row)
{
	return 1;
}

public OnPlayerExitedMenu(playerid)
{
	return 1;
}

public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
{
	return 1;
}

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
	if (newkeys & KEY_CROUCH)
	{
    	new veh = GetPlayerVehicleID(playerid);
        if(veh == PolicePursuitVeh1)
        {
            if(sirenon[playerid] == 1)
            {
               	DestroyObject(sirenturn[0]);
                //SendClientMessage(playerid,COLOR_RED,"Destroyed");
                sirenon[playerid] = 0;
			}
			else
			{
			sirenturn[0] = CreateObject( 19419,0,0,0,0,0,0,80 );
            AttachObjectToVehicle( sirenturn[0], PolicePursuitVeh1, 0.000000, -0.200000, 0.599999, 0.000000, 0.000000, 0.000000 );  // Turn on The Siren on the Bullet Police Pursuit Vehicle
            sirenon[playerid] = 1;
            }
		}
		else if(veh == PolicePursuitVeh2)
		{
 			/*new sirenturn2; sirenturn2 = */
		    if(sirenon[playerid] == 1)
		    {
		        DestroyObject(sirenturn[1]);
		        sirenon[playerid] = 0;
			}
			else
			{
			    sirenturn[1] = CreateObject( 19419,0,0,0,0,0,0,80 );
			    AttachObjectToVehicle( sirenturn[1], PolicePursuitVeh2, 0.000000, -0.300000, 0.699999, 0.000000, 0.000000, 0.000000 ); // Attach Siren to Jester Police Pursuit Vehicle
            	sirenon[playerid] = 1;
			}
		}
	 	else if(veh == PolicePursuitVeh3)
		{
		    /*new sirenturn3; sirenturn3 = */
		    if(sirenon[playerid] == 1)
		    {
		        DestroyObject(sirenturn[2]);
		        sirenon[playerid] = 0;
			}
			else
			{
			    sirenturn[2] = CreateObject( 19419,0,0,0,0,0,0,80 );
				AttachObjectToVehicle( sirenturn[2], PolicePursuitVeh3, -0.000000, -0.400000, 0.600000, 0.000000, 0.000000, 0.000000 ); // Attach Siren to Cheetah Police Pursuit Vehicle
			    sirenon[playerid] = 1;
			}
		}
		else if(veh == PolicePrisonierTransport)
		{
		    /*new sirenturn3; sirenturn3 = */
		    if(sirenon[playerid] == 1)
		    {
		        DestroyObject(sirenturn[3]);
		        sirenon[playerid] = 0;
			}
			else
			{
			    sirenturn[3] = CreateObject( 19419,0,0,0,0,0,0,80 );
				AttachObjectToVehicle( sirenturn[3], PolicePrisonierTransport, 0.000000, 1.100000, 1.400000, 0.000000, 0.000000, 0.000000 ); // Attach Siren to Cheetah Police Pursuit Vehicle
			    sirenon[playerid] = 1;
			}
		}
	}
	return 1;
}

public OnRconLoginAttempt(ip[], password[], success)
{
	return 1;
}

public OnPlayerUpdate(playerid)
{
    if(pStats[playerid][Kills] == 50)
	{
	    SendClientMessage(playerid,COLOR_LIGHTBLUE,"INFO: Because you made 50 kils you have been promoted to Rank 2 !");
	    new string[128];
	    format(string,128,"INFO: %s has made 50 kills and has been promoted to Rank 2 !",PlayerName(playerid));
	    SendClientMessageToAll(COLOR_LIGHTBLUE,string);
	    pStats[playerid][Rank] = 2;
	}
if(!IsPlayerConnected(playerid)) return 0;

    if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
        for(new i = 0; i < sizeof(SpikeInfo); i++)
  	    {
  	        if(IsPlayerInRangeOfPoint(playerid, 3.0, SpikeInfo[i][sX], SpikeInfo[i][sY], SpikeInfo[i][sZ]))
            {
  	            if(SpikeInfo[i][sCreated] == 1)
  	            {
  	                new panels, doors, lights, tires;
  	                new carid = GetPlayerVehicleID(playerid);
		            GetVehicleDamageStatus(carid, panels, doors, lights, tires);
		            tires = encode_tires(1, 1, 1, 1);
		            UpdateVehicleDamageStatus(carid, panels, doors, lights, tires);
  	                return 0;
  	            }
  	        }
  	    }
  	}

	return 1;
}

public OnPlayerStreamIn(playerid, forplayerid)
{
	return 1;
}

public OnPlayerStreamOut(playerid, forplayerid)
{
	return 1;
}

public OnVehicleStreamIn(vehicleid, forplayerid)
{
	return 1;
}

public OnVehicleStreamOut(vehicleid, forplayerid)
{
	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, "Registering...","You have entered an invalid password.\nType your password below to register a new account.","Register","Quit");
                if(INI_Open(SAVE_PATH(playerid))) {
                INI_WriteString("Password",inputtext);
                INI_WriteInt("Money",0);
                INI_WriteInt("AdminLevel",0);
                INI_WriteInt("VIP",0);
                INI_WriteInt("Kills",0);
                INI_WriteInt("Deaths",0);
                //INI_WriteString("Gang","None");
                INI_WriteInt("Rank",1);
                INI_Save();
                INI_Close();
				}
                SetSpawnInfo(playerid, 0, 0, 1958.33, 1343.12, 15.36, 269.15, 0, 0, 0, 0, 0, 0);
                SpawnPlayer(playerid);
                ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT, "Login", "This Account name is registered , input the password below to log in !", "Login", "Leave");
                ForceClassSelection(playerid);
                SetPlayerHealth(playerid,0);
                GivePlayerMoney(playerid,7000);
                SendClientMessage(playerid,COLOR_LIGHTBLUE,"INFO: You have been given $7000 start bonus !");
                pStats[playerid][Money] = GetPlayerMoney(playerid);
                //ShowPlayerDialog(playerid, DIALOG_SUCCESS_1, DIALOG_STYLE_MSGBOX,"Success!","Great! Your Y_INI system works perfectly. Relog to save your stats!","Ok","");
            }
        }
	case DIALOG_SHOP:
	{
	    if(!response) { }
    	if(response)
	    {
	    switch(listitem)
	    {
	        case 0:
	        {
	            if(GetPlayerMoney(playerid) < 5000) return SendClientMessage(playerid,COLOR_RED,"You do not have enough money !");
	            GivePlayerMoney(playerid,-5000);
	            GivePlayerWeapon(playerid,30,500);
	            SendClientMessage(playerid,COLOR_LIGHTBLUE,"INFO: You have bought an AK-47 for 5000$ !");
			}
			case 1:
	        {
	            if(GetPlayerMoney(playerid) < 4500) return SendClientMessage(playerid,COLOR_RED,"You do not have enough money !");
	            GivePlayerMoney(playerid,-4500);
	            GivePlayerWeapon(playerid,31,500);
	            SendClientMessage(playerid,COLOR_LIGHTBLUE,"INFO: You have bought a M4 for 4500$ !");
			}
			case 2:
	        {
	            if(GetPlayerMoney(playerid) < 2000) return SendClientMessage(playerid,COLOR_RED,"You do not have enough money !");
	            GivePlayerMoney(playerid,-2000);
	            GivePlayerWeapon(playerid,24,100);
	            SendClientMessage(playerid,COLOR_LIGHTBLUE,"INFO: You have bought a Deagle for 2000$ !");
			}
			case 3:
	        {
	            if(GetPlayerMoney(playerid) < 2500) return SendClientMessage(playerid,COLOR_RED,"You do not have enough money !");
	            GivePlayerMoney(playerid,-2500);
	            GivePlayerWeapon(playerid,29,300);
	            SendClientMessage(playerid,COLOR_LIGHTBLUE,"INFO: You have bought a MP5 for 2500$ !");
			}
			case 4:
	        {
	            if(GetPlayerMoney(playerid) < 3000) return SendClientMessage(playerid,COLOR_RED,"You do not have enough money !");
	            GivePlayerMoney(playerid,-3000);
	            GivePlayerWeapon(playerid,28,300);
	            SendClientMessage(playerid,COLOR_LIGHTBLUE,"INFO: You have bought an UZI for 3000$ !");
			}
			case 5:
	        {
	            if(pStats[playerid][VIP] >= 1)
	            {
	            ShowPlayerDialog(playerid,DIALOG_VIPSHOP,DIALOG_STYLE_LIST,"VIP SHOP","Grenades\t$5000\nMolotovs\t$4000\nSawn-off Shotgun\t$3500\nRPG\t$10000\nHS RPG\t$12000\nFlamethrower\t$20000\nVIP Vehicle Shop\tVIP Level 2","Buy","Exit");
	            } else return SendClientMessage(playerid,COLOR_RED,"You are not a VIP !");
			}
		}
	}
}
	case DIALOG_VIPSHOP:
	{
	    if(!response) { }
	    if(response)
	    {
	    switch(listitem)
	    {
	        case 0:
	        {
	            if(GetPlayerMoney(playerid) < 5000) return SendClientMessage(playerid,COLOR_NICERED,"You do not have enough money !");
	            GivePlayerMoney(playerid,-5000);
	            GivePlayerWeapon(playerid,16,10);
	            SendClientMessage(playerid,COLOR_LIGHTBLUE,"INFO: You have bought 10 Grenades for 5000$ !");
			}
			case 1:
	        {
	            if(GetPlayerMoney(playerid) < 4000) return SendClientMessage(playerid,COLOR_NICERED,"You do not have enough money !");
	            GivePlayerMoney(playerid,-4000);
	            GivePlayerWeapon(playerid,18,10);
	            SendClientMessage(playerid,COLOR_LIGHTBLUE,"INFO: You have bought 10 Molotovs for 4000$ !");
			}
			case 2:
	        {
	            if(GetPlayerMoney(playerid) < 3500) return SendClientMessage(playerid,COLOR_NICERED,"You do not have enough money !");
	            GivePlayerMoney(playerid,-3500);
	            GivePlayerWeapon(playerid,26,100);
	            SendClientMessage(playerid,COLOR_LIGHTBLUE,"INFO: You have bought a Sawn-off Shotgun for 3500$ !");
			}
			case 3:
	        {
	            if(GetPlayerMoney(playerid) < 10000) return SendClientMessage(playerid,COLOR_NICERED,"You do not have enough money !");
	            GivePlayerMoney(playerid,-10000);
	            GivePlayerWeapon(playerid,35,10);
	            SendClientMessage(playerid,COLOR_LIGHTBLUE,"INFO: You have bought a RPG for 10000$ !");
			}
			case 4:
	        {
	            if(GetPlayerMoney(playerid) < 12000) return SendClientMessage(playerid,COLOR_NICERED,"You do not have enough money !");
	            GivePlayerMoney(playerid,-12000);
	            GivePlayerWeapon(playerid,36,10);
	            SendClientMessage(playerid,COLOR_LIGHTBLUE,"INFO: You have bought a HS RPG for 12000$ !");
			}
			case 5:
	        {
	            if(GetPlayerMoney(playerid) < 20000) return SendClientMessage(playerid,COLOR_NICERED,"You do not have enough money !");
	            GivePlayerMoney(playerid,-20000);
	            GivePlayerWeapon(playerid,37,200);
	            SendClientMessage(playerid,COLOR_LIGHTBLUE,"INFO: You have bought a Flamethrower for 20000$ !");
			}
			case 6:
			{
			    if(pStats[playerid][VIP] < 2) return SendClientMessage(playerid,COLOR_RED,"You are not VIP Level 2 !");
			    ShowPlayerDialog(playerid,DIALOG_VEHVIPSHOP,DIALOG_STYLE_LIST,"VIP Vehicle Shop","Infernus\t8000$\nGreenwood\t5000$\nMajestic\t4000$\nNRG-500\t10000$\nHydra\t12000$\nTank\t15000$","Buy","Exit");
			}
		}
	}
}
	case DIALOG_VEHVIPSHOP:
	{
	    if(!response) return SendClientMessage(playerid,COLOR_LIGHTBLUE,"INFO: You have closed the VIP Vehicle Shop !");
	    if(response)
		{
	        switch(listitem)
	        {

	            case 0:
	            {
	                  new Float:x;
	            new Float:y;
	            new Float:z;
	                GetPlayerPos(playerid,x,y,z);
	                CreateVehicle(411,x,y,z,80.0,1,1,99999999999);
	                GivePlayerMoney(playerid,-8000);
	                SendClientMessage(playerid,COLOR_LIGHTBLUE,"INFO: You have spawned an Infernus for 8000$ ! ");
				}
				case 1:
				{
				      new Float:x;
	            new Float:y;
	            new Float:z;
				    GetPlayerPos(playerid,x,y,z);
				    CreateVehicle(492,x,y,z,80.0,1,1,99999999999);
				    GivePlayerMoney(playerid,-5000);
				    SendClientMessage(playerid,COLOR_LIGHTBLUE,"INFO: You have spawned a Greenwood for 5000$ ! ");
				}
				case 2:
				{
				      new Float:x;
	            new Float:y;
	            new Float:z;
				    GetPlayerPos(playerid,x,y,z);
				    CreateVehicle(517,x,y,z,80.0,1,1,99999999999);
				    GivePlayerMoney(playerid,-4000);
				    SendClientMessage(playerid,COLOR_LIGHTBLUE,"INFO: You have spawned a Majestic for 4000$ ! ");
				}
				case 3:
				{
				      new Float:x;
	            new Float:y;
	            new Float:z;
				    GetPlayerPos(playerid,x,y,z);
				    CreateVehicle(522,x,y,z,80.0,1,1,99999999999);
				    GivePlayerMoney(playerid,-10000);
				    SendClientMessage(playerid,COLOR_LIGHTBLUE,"INFO: You have spawned a NRG-500 for 10000$ ! ");
				}
				case 4:
				{
				      new Float:x;
	            new Float:y;
	            new Float:z;
				    GetPlayerPos(playerid,x,y,z);
				    CreateVehicle(520,x,y,z,80.0,1,1,99999999999);
				    GivePlayerMoney(playerid,-12000);
				    SendClientMessage(playerid,COLOR_LIGHTBLUE,"INFO: You have spawned a Hydra for 12000$ ! ");
				}
				case 5:
				{
				      new Float:x;
	            new Float:y;
	            new Float:z;
				    GetPlayerPos(playerid,x,y,z);
				    CreateVehicle(432,x,y,z,80.0,1,1,99999999999);
				    GivePlayerMoney(playerid,-15000);
				    SendClientMessage(playerid,COLOR_LIGHTBLUE,"INFO: You have spawned a Tank for 15000$ ! ");
				}
			}
		}
	}
	case DIALOG_POLICEHELP:
	{
	    if(response == 1)
	    {
	        ShowPlayerDialog(playerid,DIALOG_POLICEHELP2,DIALOG_STYLE_MSGBOX,"Police Commands","{FFFFFF}/[r]adio - A Police radio\nspikestrip - Place a spikestrip\nremovespikestrip - Remove a spikestrip","OK","");
		}
	}
    case DIALOG_LOGIN:
    {
            if ( !response ) return Kick ( playerid );
            if( response )
            {
                //INI_ParseFile(SAVE_PATH(playerid),"LoadStats_%s", .bExtra = true, .extra = playerid); print("Stats Loaded !");
                if(INI_Open(SAVE_PATH(playerid))) {
                INI_ReadString(pStats[playerid][Password],"Password",20);
                
				if(inputtext[playerid] == pStats[playerid][Password])
                {
                    
                    GivePlayerMoney(playerid, INI_ReadInt("Money"));
                    pStats[playerid][AdminLevel] = INI_ReadInt("AdminLevel");
                    pStats[playerid][Kills] = INI_ReadInt("Kills");
                    pStats[playerid][Deaths] = INI_ReadInt("Deaths");
                    pStats[playerid][VIP] = INI_ReadInt("VIP");
                    pStats[playerid][Money] = INI_ReadInt("Money");
                    pStats[playerid][Rank] = INI_ReadInt("Rank");
                    INI_Close();
                    LoggedIn[playerid] = 1;
                    ShowPlayerDialog(playerid, DIALOG_SUCCESS_2, DIALOG_STYLE_MSGBOX,"Success!","You have successfully logged in!","Ok","");
                }
                else
                {
                    ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,"Login","You have entered an incorrect password.\nType your password below to login.","Login","Quit");
                }
                }
                return 1;
            }
        }
    }
    return 1;
}
    

public OnPlayerClickPlayer(playerid, clickedplayerid, source)
{
	return 1;
}
//=-=-=-=-=-=-=-=-=-=-=-=-=STOCKS=-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
stock PlayerName(playerid)
{
	new name[MAX_PLAYER_NAME];
	GetPlayerName(playerid,name,sizeof(name));
	return name;
}
stock SAVE_PATH(playerid)
{
    new string[128],playername[MAX_PLAYER_NAME];
    GetPlayerName(playerid,playername,sizeof(playername));
    format(string,sizeof(string),SAVE,playername);
    return string;
}
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;
}
ReturnUser(text[], playerid = INVALID_PLAYER_ID)
{
    new pos = 0;
    while (text[pos] < 0x21) // Strip out leading spaces
    {
        if (text[pos] == 0) return INVALID_PLAYER_ID; // No passed text
        pos++;
    }
    new userid = INVALID_PLAYER_ID;
    if (IsNumeric(text[pos])) // Check whole passed string
    {
        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, 0xFF0000AA, "Multiple users found, please narrow earch");
            } else { SendClientMessage(playerid, 0xFF0000AA, "No matching user found");}
                } userid = INVALID_PLAYER_ID; } return userid;
}
strtok(const string[], &index)
{
    new length = strlen(string);
    while ((index < length) && (string[index] <= ' '))
    {
        index++;
    }

    new offset = index;
    new result[20];
    while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
    {
        result[index - offset] = string[index];
        index++;
    }
    result[index - offset] = EOS;
    return result;
}
stock IsNumeric(str[])
{
	new
		ch,
		i;
	while ((ch = str[i++])) if (ch < '0' || ch > '9') return 0;
	return 1;
}
And When I Compile It.....It Came Out This 1 Error

Code:
D:\TDM.pwn(1194) : error 021: symbol already defined: "OnPlayerUpdate"
Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase


1 Error.
Please Help Me Guys!
djcabo is offline   Reply With Quote
Old 07/06/2012, 09:32 AM   #2
Faisal_khan
High-roller
 
Faisal_khan's Avatar
 
Join Date: Feb 2012
Location: Ireland and India
Posts: 1,826
Reputation: 208
Default Re: Why I Can't Compile? Its Always Error? Help Please!

OnPlayerUpdate maybe already in your SpikeStrip include
__________________
Not a SAMP Dev. anymore.
Faisal_khan is offline   Reply With Quote
Old 07/06/2012, 10:06 AM   #3
Stefand
Gangsta
 
Stefand's Avatar
 
Join Date: Sep 2011
Location: The Netherlands
Posts: 772
Reputation: 30
Default Re: Why I Can't Compile? Its Always Error? Help Please!

Go to that line and remove the "onplayerupdate"
__________________


Scripter & Mapper
_______________________
Stefand is offline   Reply With Quote
Old 07/06/2012, 11:16 AM   #4
djcabo
Big Clucker
 
djcabo's Avatar
 
Join Date: May 2012
Location: Capture Zone
Posts: 78
Reputation: 10
Default Re: Why I Can't Compile? Its Always Error? Help Please!

Please Help Me! Post The PWN Here!
__________________


Keep us alive -
djcabo is offline   Reply With Quote
Old 07/06/2012, 11:26 AM   #5
JaKe Elite
High-roller
 
JaKe Elite's Avatar
 
Join Date: Apr 2012
Location: Philippines
Posts: 3,709
Reputation: 489
Default Re: Why I Can't Compile? Its Always Error? Help Please!

the problem is caming from includes not in gamemode.
__________________
Discord: Cipher#7353
__________________


Server IP: Click me | Discord: Click me

You challenged us, What you want is what you get.
JaKe Elite is offline   Reply With Quote
Old 07/06/2012, 11:27 AM   #6
MadeMan
High-roller
 
MadeMan's Avatar
 
Join Date: Jun 2007
Posts: 3,488
Reputation: 256
Default Re: Why I Can't Compile? Its Always Error? Help Please!

The problem is not in your script, but in one of the includes (most likely SpikeStrip, like has been mentioned already).
MadeMan is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Error 017 after compile NewerthRoleplay Scripting Help 4 17/12/2011 10:45 AM
compile error danodanodano Help Archive 2 20/06/2011 02:22 PM
Compile Error Ladathion Help Archive 12 19/10/2010 02:01 PM
Compile Error. Can Someone Compile For Me Please? RolePlay360 Help Archive 2 11/03/2009 09:56 PM


All times are GMT. The time now is 07:24 AM.


Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.