module Base
{
    model BoatSailingYachtBody
    {
        mesh = boats/SailingBoat|Body,
        shader = vehicle_norandom_multiuv,
        invertX = FALSE,
        scale = 0.0011,
    }
    
    model SailingYachtName_Sakharov
    {
        mesh = boats/SailingBoat|BodyName,
        texture = Boats/Name_SailingYacht_Sakharov,
        shader = vehiclewheel,
        invertX = FALSE,
        scale = 0.0011,
    }
    model SailingYachtName_La_Brigandine
    {
        mesh = boats/SailingBoat|BodyName,
        texture = Boats/Name_SailingYacht_La_Brigandine,
        shader = vehiclewheel,
        invertX = FALSE,
        scale = 0.0011,
    }
    vehicle BoatSailingYacht
    {
        model
        {
            file = BoatSailingYachtBody,
            scale = 8.0000,
            offset = 0.0000 -0.2250 0.0000,
        }

        skin
        {
            texture = Boats/SailingYacht_body,
        }
        skin
        {
            texture = Boats/SailingYacht_body2,
        }
        skin
        {
            texture = Boats/SailingYacht_body3,
        }
        skin
        {
            texture = Boats/SailingYacht_body4,
        }

        textureShadow = Shadows/SailingYacht_shadow,
        textureLights = Boats/SailingYacht_light,
        textureMask = Boats/SailingYacht_mask,
        textureRust = Boats/BoatMotor_rust,
        mechanicType = 3,
        offRoadEfficiency = 2,
        engineRepairLevel = 5,
        playerDamageProtection = 1.3,
        engineRPMType = firebird,

        sound
        {
            engine = VehicleEngineOffRoad,
            engineStart = SuccessStartEngineManualy,
            engineTurnOff = VehicleEngineOffRoad,
            horn = BoatHorn,
            ignitionFail = FailStartEngineManualy,
        }

        wheel FrontLeft
        {
            front = true,
            offset = 0.1800 0.3750 0.3125,
            radius = 0.15f,
            width = 0.3f,
        }

        wheel FrontRight
        {
            front = true,
            offset = -0.1800 0.3750 0.3125,
            radius = 0.15f,
            width = 0.3f,
        }

        wheel RearLeft
        {
            front = false,
            offset = 0.1800 0.3750 -0.4375,
            radius = 0.15f,
            width = 0.3f,
        }

        wheel RearRight
        {
            front = false,
            offset = -0.1800 0.3750 -0.4375,
            radius = 0.15f,
            width = 0.3f,
        }

        extents = 0.4350 0.3200 1.2875,
        mass = 150,
        physicsChassisShape = 0.4000 0.3200 1.2875,
        centerOfMassOffset = 0.0000 0.3225 -0.0625,
        shadowExtents = 0.4162 1.3188,
        shadowOffset = 0.0000 -0.0063,
        engineForce = 3000,
        maxSpeed = 0.01f,
        engineLoudness = 90,
        engineQuality = 10,
        brakingForce = 90,
        gearRatioCount = 1,
        gearRatioR = 10,
        gearRatio0 = 10,
        stoppingMovementForce = 2.0f,
        rollInfluence = 0.1f,
        steeringIncrement = 0.1,
        steeringClamp = 0.5,
        suspensionStiffness = 80,
        suspensionCompression = 20,
        suspensionDamping = 100,
        maxSuspensionTravelCm = 1.1,
        suspensionRestLength = 0.1,
        wheelFriction = 3.6f,
        frontEndHealth = 150,
        rearEndHealth = 150,
        seats = 6,
        template = Seat/part/SeatFrontLeft,
        template = Seat/part/SeatFrontRight,
        template = Seat/part/SeatMiddleRight,
        template = Seat/part/SeatMiddleLeft,
        template = Seat/part/SeatRearLeft,
        template = Seat/part/SeatRearRight,

        part Seat*
        {
            itemType = Aquatsar.NotRemovableBoatSeat,
            category = nodisplay,

            container
            {
                test = Boats.ContainerAccess.BlockSeat,
            }
        }

        template = BoatStandartParts/part/GasTank,
        template = BoatStandartParts/part/Battery,
        template = BoatStandartParts/part/Engine,
        template = BoatStandartParts/part/Radio,
        template = Suspension,

        part Suspension*
        {
            category = nodisplay,

            lua
            {
                create = Vehicles.Create.Default,
                init = CommonTemplates.Init.Repair,
            }
        }

        template = BatteryHeater/part/BatteryHeater,
        template = ApiBoatAirbag,
        template = Propeller,
        template = BoatAnchor,
        template = Sails,
        template = ManualStarter,
        template = BoatStandartParts/part/WindowFrontLeft,
        template = BoatStandartParts/part/WindowFrontRight,
        template = BoatStandartParts/part/WindowRearLeft,
        template = BoatStandartParts/part/WindowRearRight,
        template = BoatStandartParts/part/Windshield,
        template = LightApi,
        template = Light/part/LightFloodlightLeft,
        template = Light/part/LightFloodlightRight,
        template = Light/part/LightCabin,
        template = InCabin/part/CabinLock,
        template = InCabin/part/InCabinMiddleRight,
        template = InCabin/part/InCabinMiddleLeft,
        template = InCabin/part/InCabinRearLeft,
        template = InCabin/part/InCabinRearRight,
        template = Cupboards/part/CupboardMiddleRight,
        template = Counters/part/CounterMiddleRight,
        template = Counters/part/CounterMiddleLeft,
        template = Drawers/part/DrawerMiddleLeft,
        template = Medicines/part/MedicineMiddleLeft,
        template = Counters/part/CounterRearLeft,
        template = Drawers/part/DrawerRearLeft,
        template = Shelves/part/ShelveRearRight,
        template = Fridges/part/FridgeRearRight,
        template = Freezers/part/FreezerRearRight,
        template = Ovens/part/OvenRearRight,
        template = Microwaves/part/MicrowaveRearRight,
        template = SeatBoxWooden/part/SeatBoxWoodenFrontLeft,
        template = SeatBoxWooden/part/SeatBoxWoodenFrontRight,
        template = Mattresses/part/MattressMiddleLeft,
        template = Mattresses/part/MattressMiddleRight,
        template = PassengerSeat6,
        template = PassengerCompartment,
        template = SailingYachtName/part/BoatName,

        part BoatName
        {
            model Sakharov
            {
                file = SailingYachtName_Sakharov,
            }

            model La_Brigandine
            {
                file = SailingYachtName_La_Brigandine,
            }
        }

        passenger FrontLeft
        {
            position inside
            {
                offset = 0.0737 0.0812 -0.4087,
                rotate = 0.0000 0.0000 0.0000,
            }

            position outside
            {
                offset = 0.3063 -0.0600 -0.4313,
                rotate = 0.0000 0.0000 0.0000,
                area = SeatFrontLeft,
            }
        }

        passenger FrontRight
        {
            position inside
            {
                offset = -0.0737 0.0812 -0.4087,
                rotate = 0.0000 0.0000 0.0000,
            }

            position outside
            {
                offset = -0.3063 -0.0600 -0.4313,
                rotate = 0.0000 0.0000 0.0000,
                area = SeatFrontRight,
            }
        }

        passenger MiddleRight
        {
            position inside
            {
                offset = 0.0000 0.0475 0.3663,
                rotate = 0.0000 0.0000 0.0000,
            }

            position outside
            {
            }
        }

        passenger MiddleLeft
        {
            position inside
            {
                offset = 0.0375 0.1900 0.1363,
                rotate = 0.0000 0.0000 0.0000,
            }

            position outside
            {
            }
        }

        passenger RearLeft
        {
            position inside
            {
                offset = 0.0375 0.1900 -0.0388,
                rotate = 0.0000 0.0000 0.0000,
            }

            position outside
            {
            }
        }

        passenger RearRight
        {
            position inside
            {
                offset = -0.0900 0.1800 -0.1725,
                rotate = 0.0000 0.0000 0.0000,
            }

            position outside
            {
            }
        }

        area SeatFrontLeft
        {
            xywh = 0.1838 -0.3700 0.2025 0.3875,
        }

        area SeatFrontRight
        {
            xywh = -0.1838 -0.3700 0.2025 0.3875,
        }

        area GasTank
        {
            xywh = -0.1838 -0.3700 0.2025 0.3875,
        }

        attachment checkFront
        {
            offset = 0.0000 0.0000 0.8938,
            rotate = 0.0000 0.0000 0.0000,
        }

        attachment trailer
        {
            offset = 0.0000 0.3537 -0.6237,
            rotate = 0.0000 0.0000 0.0000,
            zoffset = -1.0000,
        }

        attachment trailerfront
        {
            offset = 0.0000 0.3537 0.6263,
            rotate = 0.0000 0.0000 0.0000,
            zoffset = 1.0000,
        }
    }
    vehicle BoatSailingYacht_Ground
    {
        model
        {
            file = BoatSailingYachtBody,
            scale = 8.0000,
            offset = 0.0000 0.0250 0.0000,
        }

        skin
        {
            texture = Boats/SailingYacht_body,
        }

        textureShadow = Shadows/SailingYacht_shadow,
        textureLights = Boats/SailingYacht_light,
        textureMask = Boats/SailingYacht_mask,
        textureRust = Boats/BoatMotor_rust,
        mechanicType = 3,
        offRoadEfficiency = 2,
        engineRepairLevel = 5,
        playerDamageProtection = 1.3,
        engineRPMType = firebird,

        sound
        {
            engine = VehicleEngineOffRoad,
            engineStart = SuccessStartEngineManualy,
            engineTurnOff = VehicleEngineOffRoad,
            horn = BoatHorn,
            ignitionFail = FailStartEngineManualy,
        }

        extents = 0.4000 0.1950 1.1600,
        mass = 150,
        physicsChassisShape = 0.4000 0.1950 1.1600,
        centerOfMassOffset = 0.0000 0.0975 -0.0450,
        shadowExtents = 0.4162 1.3188,
        shadowOffset = 0.0000 -0.0063,
        engineForce = 2500,
        maxSpeed = 0.01f,
        engineLoudness = 90,
        engineQuality = 10,
        brakingForce = 90,
        gearRatioCount = 1,
        gearRatioR = 10,
        gearRatio0 = 10,
        stoppingMovementForce = 2.0f,
        rollInfluence = 0.1f,
        steeringIncrement = 0.03,
        steeringClamp = 0.3,
        suspensionStiffness = 50,
        suspensionCompression = 2,
        suspensionDamping = 1,
        maxSuspensionTravelCm = 1.1,
        suspensionRestLength = 0.3,
        wheelFriction = 5.6f,
        frontEndHealth = 150,
        rearEndHealth = 150,
        seats = 6,
        template = Seat/part/SeatFrontLeft,
        template = Seat/part/SeatFrontRight,
        template = Seat/part/SeatMiddleRight,
        template = Seat/part/SeatMiddleLeft,
        template = Seat/part/SeatRearLeft,
        template = Seat/part/SeatRearRight,

        part Seat*
        {
            itemType = Aquatsar.NotRemovableBoatSeat,
            category = nodisplay,

            container
            {
                test = Boats.ContainerAccess.BlockSeat,
            }
        }

        template = BoatStandartParts/part/GasTank,
        template = BoatStandartParts/part/Battery,
        template = BoatStandartParts/part/Engine,
        template = BoatStandartParts/part/Radio,
        template = BatteryHeater/part/BatteryHeater,
        template = Propeller,

        part Propeller
        {
            table uninstall
            {
                items
                {
                    1
                    {
                        type = Base.Wrench,
                        count = 1,
                        keep = true,
                        equip = secondary,
                    }
                }

                time = 2000,
                skills = Mechanics:3,
                recipes = Powerboats Mechanics,
                test = Vehicles.UninstallTest.Default,
                complete = Boats.UninstallComplete.Propeller,
            }
        }

        template = Sails,
        template = ManualStarter,
        template = BoatStandartParts/part/WindowFrontLeft,
        template = BoatStandartParts/part/WindowFrontRight,
        template = BoatStandartParts/part/WindowRearLeft,
        template = BoatStandartParts/part/WindowRearRight,
        template = BoatStandartParts/part/Windshield,
        template = LightApi,
        template = Light/part/LightFloodlightLeft,
        template = Light/part/LightFloodlightRight,
        template = Light/part/LightCabin,
        template = InCabin/part/InCabinMiddleRight,
        template = InCabin/part/InCabinMiddleLeft,
        template = InCabin/part/InCabinRearLeft,
        template = InCabin/part/InCabinRearRight,
        template = Cupboards/part/CupboardMiddleRight,
        template = Counters/part/CounterMiddleRight,
        template = Counters/part/CounterMiddleLeft,
        template = Drawers/part/DrawerMiddleLeft,
        template = Medicines/part/MedicineMiddleLeft,
        template = Counters/part/CounterRearLeft,
        template = Drawers/part/DrawerRearLeft,
        template = Shelves/part/ShelveRearRight,
        template = Fridges/part/FridgeRearRight,
        template = Freezers/part/FreezerRearRight,
        template = Ovens/part/OvenRearRight,
        template = Microwaves/part/MicrowaveRearRight,
        template = SeatBoxWooden/part/SeatBoxWoodenFrontLeft,
        template = SeatBoxWooden/part/SeatBoxWoodenFrontRight,
        template = Mattresses/part/MattressMiddleLeft,
        template = Mattresses/part/MattressMiddleRight,
        template = PassengerSeat6,
        template = PassengerCompartment,
        template = SailingYachtName/part/BoatName,

        part BoatName
        {
            model Sakharov
            {
                file = SailingYachtName_Sakharov,
            }

            model La_Brigandine
            {
                file = SailingYachtName_La_Brigandine,
            }
        }

        passenger FrontLeft
        {
            position inside
            {
                offset = 0.0737 0.0812 -0.4087,
                rotate = 0.0000 0.0000 0.0000,
            }

            position outside
            {
                offset = 0.3063 -0.0600 -0.4313,
                rotate = 0.0000 0.0000 0.0000,
                area = SeatFrontLeft,
            }
        }

        passenger FrontRight
        {
            position inside
            {
                offset = -0.0737 0.0812 -0.4087,
                rotate = 0.0000 0.0000 0.0000,
            }

            position outside
            {
                offset = -0.3063 -0.0600 -0.4313,
                rotate = 0.0000 0.0000 0.0000,
                area = SeatFrontRight,
            }
        }

        passenger MiddleRight
        {
            position inside
            {
                offset = 0.0000 0.0475 0.3663,
                rotate = 0.0000 0.0000 0.0000,
            }

            position outside
            {
            }
        }

        passenger MiddleLeft
        {
            position inside
            {
                offset = 0.0375 0.1900 0.1363,
                rotate = 0.0000 0.0000 0.0000,
            }

            position outside
            {
            }
        }

        passenger RearLeft
        {
            position inside
            {
                offset = 0.0375 0.1900 -0.0388,
                rotate = 0.0000 0.0000 0.0000,
            }

            position outside
            {
            }
        }

        passenger RearRight
        {
            position inside
            {
                offset = -0.0900 0.1800 -0.1725,
                rotate = 0.0000 0.0000 0.0000,
            }

            position outside
            {
            }
        }

        area SeatFrontLeft
        {
            xywh = 0.1838 -0.3700 0.2025 0.3875,
        }

        area SeatFrontRight
        {
            xywh = -0.1838 -0.3700 0.2025 0.3875,
        }

        area GasTank
        {
            xywh = -0.1838 -0.3700 0.2025 0.3875,
        }
    }
}
