#define FILTERSCRIPT
#define COLOR_GRAD1 0xB4B5B7FF

#include <a_samp>
#include <a_objects>
#include <a_vehicles>

public OnFilterScriptInit()
{
	print("Advanced Vehicle Control System - Created by Shadow");
	print("Idea taken from ' Delux13 '");
	return 1;
}

public OnFilterScriptExit()
{
	return 1;
}

public OnPlayerCommandText(playerid, cmdtext[]){
new cmd[256];
		if(strcmp(cmd, "/авто", true) == 0)
    {
		if(!IsPlayerInAnyVehicle(playerid))
			ShowPlayerDialog(playerid, 50000, DIALOG_STYLE_LIST, "Control", "Lighting ( On/Off )\nBonnect ( Open/Close )\nBoot/Trunk ( Open/Close )\nDoors ( Open/Close )\nEngine ( On/Off )\nAlarm ( On/Off )", "Select", "Cancel");
return 1;
	  	}
	 	else
	 	{
	 	    SendClientMessage(playerid, COLOR_GRAD1, "* Вы не у Паспортного стола");
 			return 1;
		}
    }

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
	new vehicleid = GetPlayerVehicleID(playerid);
	new engine,lights,alarm,doors,bonnet,boot,objective;
	if(dialogid == 50000)
	{
		if(!response) return SendClientMessage(playerid, 0xCC0000FF, "INFORMATION : You clicked Cancel");
		switch(listitem)
	    {
	        case 0:
	        {
      			if(GetPVarInt(playerid, "Lights") == 0)
				{
					GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
					SetVehicleParamsEx(vehicleid,engine,VEHICLE_PARAMS_ON,alarm,doors,bonnet,boot,objective);
					SetPVarInt(playerid, "Lights", 1);
				}
				else if(GetPVarInt(playerid, "Lights") == 1)
				{
					GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
					SetVehicleParamsEx(vehicleid,engine,VEHICLE_PARAMS_OFF,alarm,doors,bonnet,boot,objective);
					SetPVarInt(playerid, "Lights", 0);
				}
			}
			case 1:
			{
				if(GetPVarInt(playerid, "Bonnet") == 0)
				{
					GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
					SetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,VEHICLE_PARAMS_ON,boot,objective);
					SetPVarInt(playerid, "Bonnet", 1);
				}
				else if(GetPVarInt(playerid, "Bonnet") == 1)
				{
					GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
					SetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,VEHICLE_PARAMS_OFF,boot,objective);
					SetPVarInt(playerid, "Bonnet", 0);
				}
			}
			case 2:
			{
				if(GetPVarInt(playerid, "Boot") == 0)
	 			{
					GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
					SetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,VEHICLE_PARAMS_ON,objective);
					SetPVarInt(playerid, "Boot", 1);
				}
				else if(GetPVarInt(playerid, "Boot") == 1)
				{
					GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
					SetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,VEHICLE_PARAMS_OFF,objective);
					SetPVarInt(playerid, "Boot", 0);
				}
			}
			case 3:
			{
				if(GetPVarInt(playerid, "Doors") == 0)
	 			{
					GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
					SetVehicleParamsEx(vehicleid,engine,lights,alarm,VEHICLE_PARAMS_ON,bonnet,boot,objective);
					SetPVarInt(playerid, "Doors", 1);
				}
				else if(GetPVarInt(playerid, "Doors") == 1)
				{
					GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
					SetVehicleParamsEx(vehicleid,engine,lights,alarm,VEHICLE_PARAMS_OFF,bonnet,boot,objective);
					SetPVarInt(playerid, "Doors", 0);
				}
			}
			case 4:
			{
				if(GetPVarInt(playerid, "Engine") == 0)
	 			{
					GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
					SetVehicleParamsEx(vehicleid,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
					SetPVarInt(playerid, "Engine", 1);
				}
				else if(GetPVarInt(playerid, "Engine") == 1)
				{
					GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
					SetVehicleParamsEx(vehicleid,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
					SetPVarInt(playerid, "Engine", 0);
				}
			}
			case 5:
			{
				if(GetPVarInt(playerid, "Alarm") == 0)
				{
					GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
					SetVehicleParamsEx(vehicleid,engine,lights,VEHICLE_PARAMS_ON,doors,bonnet,boot,objective);
					SetPVarInt(playerid, "Alarm", 1);
				}
				else if(GetPVarInt(playerid, "Alarm") == 1)
				{
					GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
					SetVehicleParamsEx(vehicleid,engine,lights,VEHICLE_PARAMS_OFF,doors,bonnet,boot,objective);
					SetPVarInt(playerid, "Alarm", 0);
				}
			}
		}
		return 1;
	}
	return 0;
}
