module Base
{
	model 88toyotaHiluxBase
	{
		mesh = vehicles/Vehicles_88toyotaHilux_Body|88hilux_cab_common,
		shader = damn_vehicle_shader,
		invertX = FALSE,
		scale = 0.1,
	}
	model 88toyotaHiluxCabX
	{
		mesh = vehicles/Vehicles_88toyotaHilux_Body|88hilux_xcab,
		shader = damn_vehicle_shader,
		invertX = FALSE,
		scale = 0.1,
	}
	model 88toyotaHiluxBed
	{
		mesh = vehicles/Vehicles_88toyotaHilux_Body|88hilux_bed_long,
		shader = damn_vehicle_shader,
		invertX = FALSE,
		scale = 0.1,
	}
	model 88toyotaHiluxInterior
	{
		mesh = vehicles/Vehicles_88toyotaHilux_Body|88hilux_interior_common,
		texture = vehicles/Vehicles_88toyotaHilux_Interior,
		shader = damn_wheel_shader,
		scale = 0.1,
	}
	model 88toyotaHiluxInteriorCabX
	{
		mesh = vehicles/Vehicles_88toyotaHilux_Body|88hilux_interior_xcab,
		texture = vehicles/Vehicles_88toyotaHilux_Interior,
		shader = damn_wheel_shader,
		scale = 0.1,
	}
	model 88toyotaHiluxInteriorBed
	{
		mesh = vehicles/Vehicles_88toyotaHilux_Body|88hilux_interior_bed_long,
		texture = vehicles/Vehicles_88toyotaHilux_Interior,
		shader = damn_wheel_shader,
		scale = 0.1,
	}
	model 88toyotaHiluxTISBattery
	{
		mesh = vehicles/Vehicles_88toyotaHilux_Body|TIS_CarBattery,
		texture = Vehicles/Vehicles_88toyotaHilux_Interior,
		shader = damn_wheel_shader,
		scale = 0.1,
	}
	vehicle 88toyotaHiluxXC
	{
		mechanicType = 2,
		offRoadEfficiency = 1.12,
		engineRepairLevel = 4,
		playerDamageProtection = 1.3,

		model
		{
			file = 88toyotaHiluxBase,
			scale = 0.9000,
			offset = 0.0000 0.5333 0.1889,
		}

		skin
		{
			texture = Vehicles/Vehicles_88toyotaHilux_Shell_beige,
		}

		skin
		{
			texture = Vehicles/Vehicles_88toyotaHilux_Shell_black,
		}

		skin
		{
			texture = Vehicles/Vehicles_88toyotaHilux_Shell_brown,
		}

		skin
		{
			texture = Vehicles/Vehicles_88toyotaHilux_Shell_darkBlue,
		}

		skin
		{
			texture = Vehicles/Vehicles_88toyotaHilux_Shell_darkGreen,
		}

		skin
		{
			texture = Vehicles/Vehicles_88toyotaHilux_Shell_forestGreen,
		}

		skin
		{
			texture = Vehicles/Vehicles_88toyotaHilux_Shell_darkGray,
		}

		skin
		{
			texture = Vehicles/Vehicles_88toyotaHilux_Shell_darkGreyDecals,
		}

		skin
		{
			texture = Vehicles/Vehicles_88toyotaHilux_Shell_junker,
		}

		skin
		{
			texture = Vehicles/Vehicles_88toyotaHilux_Shell_lightBlue,
		}

		skin
		{
			texture = Vehicles/Vehicles_88toyotaHilux_Shell_red,
		}

		skin
		{
			texture = Vehicles/Vehicles_88toyotaHilux_Shell_silver,
		}

		skin
		{
			texture = Vehicles/Vehicles_88toyotaHilux_Shell_superWhite,
		}

		skin
		{
			texture = Vehicles/Vehicles_88toyotaHilux_Shell_offWhiteDecals,
		}

		textureRust = Vehicles/Vehicles_88toyotaHilux_Rust,
		textureMask = Vehicles/Vehicles_88toyotaHilux_Mask,
		textureLights = Vehicles/Vehicles_88toyotaHilux_Lights,
		textureDamage1Shell = Vehicles/Vehicles_88toyotaHilux_Damage1,
		textureDamage2Shell = Vehicles/Vehicles_88toyotaHilux_Damage2,
		textureDamage1Overlay = Vehicles/Vehicles_88toyotaHilux_Blood1,
		textureDamage2Overlay = Vehicles/Vehicles_88toyotaHilux_Blood1,

		sound
		{
			engine = VehicleEngineOffRoad,
			engineStart = VehicleEngineOffRoad,
			engineTurnOff = VehicleEngineOffRoad,
			horn = VehicleHornJeep,
			ignitionFail = VehicleIgnitionFailOffRoad,
		}

		extents = 1.6889 1.1778 4.9111,
		mass = 720,
		physicsChassisShape = 1.6889 1.2222 4.9111,
		centerOfMassOffset = 0.0000 0.8667 0.0000,
		shadowExtents = 1.7321 5.4039,
		shadowOffset = 0.0000 -0.0200,
		engineForce = 3950,
		maxSpeed = 76f,
		engineLoudness = 85,
		engineQuality = 94,
		brakingForce = 65,
		stoppingMovementForce = 4.0f,
		rollInfluence = 0.98f,
		steeringIncrement = 0.04,
		steeringClamp = 0.3,
		suspensionStiffness = 35,
		suspensionCompression = 3.84,
		suspensionDamping = 2.84,
		maxSuspensionTravelCm = 14,
		suspensionRestLength = 0.20f,
		wheelFriction = 1.7f,
		frontEndHealth = 450,
		rearEndHealth = 250,
		seats = 4,

		wheel FrontLeft
		{
			front = true,
			offset = 0.7444 -0.4667 1.5444,
			radius = 0.35f,
			width = 0.25f,
		}

		wheel FrontRight
		{
			front = true,
			offset = -0.7444 -0.4667 1.5444,
			radius = 0.35f,
			width = 0.25f,
		}

		wheel RearLeft
		{
			front = false,
			offset = 0.7444 -0.4667 -1.5444,
			radius = 0.35f,
			width = 0.25f,
		}

		wheel RearRight
		{
			front = false,
			offset = -0.7444 -0.4667 -1.5444,
			radius = 0.35f,
			width = 0.25f,
		}

		template = PassengerSeat4,

		passenger FrontLeft
		{
			showPassenger = true,
			hasRoof = true,

			position inside
			{
				offset = 0.4111 0.0444 0.2222,
				rotate = 0.0000 0.0000 0.0000,
			}

			position outside
			{
				offset = 1.1444 -0.7986 -0.2111,
				rotate = 0.0000 0.0000 0.0000,
				area = SeatFrontLeft,
			}
		}

		passenger FrontRight
		{
			showPassenger = true,
			hasRoof = true,

			position inside
			{
				offset = -0.4000 0.0444 0.2222,
				rotate = 0.0000 0.0000 0.0000,
			}

			position outside
			{
				offset = -1.1667 -0.7986 -0.1556,
				rotate = 0.0000 0.0000 0.0000,
				area = SeatFrontRight,
			}
		}

		passenger RearLeft
		{
			showPassenger = true,
			hasRoof = true,

			position inside
			{
				offset = 0.3444 0.0444 -0.3889,
				rotate = 0.0000 0.0000 0.0000,
			}

			position outside
			{
				offset = 1.1444 -0.7986 -0.2111,
				rotate = 0.0000 0.0000 0.0000,
				area = SeatFrontLeft,
			}
		}

		passenger RearRight
		{
			showPassenger = true,
			hasRoof = true,

			position inside
			{
				offset = -0.3556 0.0444 -0.3889,
				rotate = 0.0000 0.0000 0.0000,
			}

			position outside
			{
				offset = -1.1667 -0.7986 -0.1556,
				rotate = 0.0000 0.0000 0.0000,
				area = SeatFrontRight,
			}
		}

		area Engine
		{
			xywh = 0.0000 2.8444 1.4222 0.7778,
		}

		area TruckBed
		{
			xywh = 0.0000 -2.8444 1.4000 0.7778,
		}

		area Roofrack
		{
			xywh = 0.0000 -1.3444 2.9778 3.4889,
		}

		area SeatFrontLeft
		{
			xywh = 1.2333 0.5889 0.7778 1.1111,
		}

		area SeatFrontRight
		{
			xywh = -1.2333 0.5889 0.7778 1.1111,
		}

		area SeatRearLeft
		{
			xywh = 1.2333 -0.2111 0.7778 0.4889,
		}

		area SeatRearRight
		{
			xywh = -1.2333 -0.2111 0.7778 0.4889,
		}

		area GasTank
		{
			xywh = -1.4444 -1.0000 0.4222 0.4222,
		}

		area TireFrontLeft
		{
			xywh = 1.4444 1.7333 0.4222 0.4222,
		}

		area TireFrontRight
		{
			xywh = -1.4444 1.7333 0.4222 0.4222,
		}

		area TireRearLeft
		{
			xywh = 1.4444 -1.3556 0.4222 0.4222,
		}

		area TireRearRight
		{
			xywh = -1.4444 -1.3556 0.4222 0.4222,
		}

		template = HLX88SeatsFront,
		template = HLX88SeatsRear,
		template = HLX88Trunk,
		template = HLX88TrunkDoorXC,
		template = HLX88EngineDoor,

		template = HLX88Doors,
		template = HLX88ArmorXC,
		template = HLX88BumpersXC,
		template = HLX88Tires,
		template = HLX88SpareTireXC,
		
		template = HLX88SideSteps,
		template = HLX88MudflapsXC,
		template = HLX88Roofrack,

		part GloveBox
		{
			area = SeatFrontRight,
			itemType = Base.GloveBox,
			mechanicRequireKey = true,

			model 88toyotaHiluxCabBackX
			{
				file = 88toyotaHiluxCabX,
				offset = 0.0000 0.0000 0.0000,
				rotate = 0.0000 0.0000 0.0000,
			}

			model 88toyotaHiluxBedX
			{
				file = 88toyotaHiluxBed,
				offset = 0.0000 0.0000 0.0000,
				rotate = 0.0000 0.0000 0.0000,
			}

			model 88toyotaHiluxIntCom
			{
				file = 88toyotaHiluxInterior,
				offset = 0.0000 0.0000 0.0000,
				rotate = 0.0000 0.0000 0.0000,
			}

			model 88toyotaHiluxIntCabBackX
			{
				file = 88toyotaHiluxInteriorCabX,
				offset = 0.0000 0.0000 0.0000,
				rotate = 0.0000 0.0000 0.0000,
			}

			model 88toyotaHiluxIntBedX
			{
				file = 88toyotaHiluxInteriorBed,
				offset = 0.0000 0.0000 0.0000,
				rotate = 0.0000 0.0000 0.0000,
			}

			container
			{
				capacity = 7,
				test = Vehicles.ContainerAccess.GloveBox,
			}

			lua
			{
				create = Vehicles.Create.Default,
			}
		}

		template = GasTank,

		part GasTank
		{
			install
			{
				skills = Mechanics:7,
				recipes = Intermediate Mechanics,
			}

			uninstall
			{
				skills = Mechanics:7,
				recipes = Intermediate Mechanics,
			}
		}

		template = Battery,

		part Battery
		{
			model 88hiluxBat
			{
				file = 88toyotaHiluxTISBattery,
				offset = 0.0000 0.0000 0.0000,
				rotate = 0.0000 0.0000 0.0000,
			}
		}

		template = Engine,
		template = Muffler,

		part Heater
		{
			category = engine,

			lua
			{
				update = Vehicles.Update.Heater,
			}
		}

		part PassengerCompartment
		{
			category = nodisplay,

			lua
			{
				update = Vehicles.Update.PassengerCompartment,
			}
		}

		template = Brake,

		part Brake*
		{
			table install
			{
				skills = Mechanics:6,
				recipes = Intermediate Mechanics,
			}

			table uninstall
			{
				skills = Mechanics:6,
				recipes = Intermediate Mechanics,
			}
		}

		template = Suspension,

		part Suspension*
		{
			table install
			{
				skills = Mechanics:6,
				recipes = Intermediate Mechanics,
			}

			table uninstall
			{
				skills = Mechanics:6,
				recipes = Intermediate Mechanics,
			}
		}

		template = Radio,
		template = Headlight,
        template = HLX88WindshieldsXC,
		template = HLX88WindowsFront,
		template = HLX88WindowsRear,
        template = HLX88BedExtrasXC,
		useChassisPhysicsCollision = false,

		physics box
		{
			offset = 0.0000 0.6111 -0.0333,
			extents = 1.7111 0.7111 4.9556,
			rotate = 0.0000 0.0000 0.0000,
		}

		physics box
		{
			offset = 0.0000 1.2000 0.1816,
			extents = 1.4000 0.5111 1.1778,
			rotate = 0.0000 0.0000 0.0000,
		}

		physics box
		{
			offset = 0.0000 1.0778 0.9259,
			extents = 1.4000 0.7556 0.3333,
			rotate = -46.0000 0.0000 0.0000,
		}

		attachment trailer
		{
			offset = 0.0000 -0.2227 -2.7470,
			rotate = 0.0000 0.0000 0.0000,
			zoffset = -1.0000,
		}

		attachment trailerfront
		{
			offset = 0.0000 -0.2227 2.3777,
			rotate = 0.0000 0.0000 0.0000,
			zoffset = 1.0000,
		}
	}
}
