﻿<?xml version="1.0" encoding="utf-8" standalone="no" ?>
<vehicle type="teleHandler" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../shared/xml/schema/vehicle.xsd">
    <annotation>Copyright (C) GIANTS Software GmbH, All Rights Reserved.</annotation>

    <storeData>
        <name>MLT 840-145 PS+</name>
        <specs>
            <power>141</power>
            <maxSpeed>40</maxSpeed>
            <combination filterCategory="teleLoaderTools" />
        </specs>
        <functions>
            <function>$l10n_function_telehandler</function>
        </functions>
        <image>$data/vehicles/manitou/mlt840/store_mlt840.png</image>
        <price>105000</price>
        <lifetime>600</lifetime>
        <rotation>0</rotation>
        <brand>MANITOU</brand>
        <category>teleLoaderVehicles</category>
        <shopTranslationOffset>0 0.123 -0.309</shopTranslationOffset>
        <shopRotationOffset>0.02 0 0</shopRotationOffset>
        <vertexBufferMemoryUsage>2499840</vertexBufferMemoryUsage>
        <indexBufferMemoryUsage>505344</indexBufferMemoryUsage>
        <textureMemoryUsage>3145728</textureMemoryUsage>
        <instanceVertexBufferMemoryUsage>0</instanceVertexBufferMemoryUsage>
        <instanceIndexBufferMemoryUsage>0</instanceIndexBufferMemoryUsage>
        <audioMemoryUsage>433174</audioMemoryUsage>
    </storeData>

    <base>
        <typeDesc>$l10n_typeDesc_telehandler</typeDesc>
        <filename>$data/vehicles/manitou/mlt840/mlt840.i3d</filename>
        <sounds filename="$data/vehicles/manitou/mlt840/sounds/mlt840.xml"/>
        <size width="3.7" length="6" height="2.5"/>
        <components>
            <component centerOfMass="0 0.6 -0.4" solverIterationCount="28" mass="4070" />
            <component centerOfMass="0 0 0" solverIterationCount="10" mass="3600" />
            <joint component1="1" component2="2" node="componentJoint" rotLimit="0 0 10" rotLimitSpring="0 0 4000" rotLimitDamping="0 0 75" maxRotDriveForce="0 0 10" rotDriveRotation="0 0 0" rotDriveSpring="0 0 20" rotDriveDamping="0 0 15" breakable="false"/>
        </components>
        <schemaOverlay attacherJointPosition="0 0" name="LOADER" />
        <mapHotspot type="WHEELLOADER" />
    </base>

    <wheels>
        <wheelConfigurations>
            <wheelConfiguration name="$l10n_configuration_valueDefault" price="0" brand="TRELLEBORG" saveId="TRELLEBORG_DEFAULT">
                <wheels autoRotateBackSpeed="2.4">
                    <wheel filename="$data/shared/wheels/tires/trelleborg/TH400/460_70R24.xml" isLeft="true" hasTireTracks="true" hasParticles="true" >
                        <physics rotSpeed="1" restLoad="1.0" repr="axisFrontLeft"  driveNode="wheelFrontLeft"  forcePointRatio="0.35"  initialCompression="6"  suspTravel="0.10" spring="135" damper="50" frictionScale="2" />
                        <steering node="steeringBarFront" nodeMinTransX="0.12" nodeMaxTransX="-0.12" />
                    </wheel>
                    <wheel filename="$data/shared/wheels/tires/trelleborg/TH400/460_70R24.xml" isLeft="false" hasTireTracks="true" hasParticles="true" >
                        <physics rotSpeed="1" restLoad="1.0" repr="axisFrontRight" driveNode="wheelFrontRight" forcePointRatio="0.35"  initialCompression="6"  suspTravel="0.10" spring="135" damper="50" frictionScale="2" />
                    </wheel>
                    <wheel filename="$data/shared/wheels/tires/trelleborg/TH400/460_70R24.xml" isLeft="true" hasTireTracks="true" hasParticles="true" >
                        <physics rotSpeed="1" restLoad="3.2" repr="axisBackLeft"   driveNode="wheelBackLeft"   forcePointRatio="0.35"  initialCompression="40" suspTravel="0.15" spring="50"  damper="50" frictionScale="2" />
                        <steering node="steeringBarBack" nodeMinTransX="-0.12" nodeMaxTransX="0.12" />
                    </wheel>
                    <wheel filename="$data/shared/wheels/tires/trelleborg/TH400/460_70R24.xml" isLeft="false" hasTireTracks="true" hasParticles="true" >
                        <physics rotSpeed="1" restLoad="3.2" repr="axisBackRight"  driveNode="wheelBackRight"  forcePointRatio="0.35"  initialCompression="40" suspTravel="0.15" spring="50"  damper="50" frictionScale="2" />
                    </wheel>
                </wheels>
            </wheelConfiguration>

            <wheelConfiguration name="$l10n_configuration_valueDefault" price="0" brand="MICHELIN" saveId="MICHELIN_DEFAULT">
                <wheels baseConfig="TRELLEBORG_DEFAULT">
                    <wheel filename="$data/shared/wheels/tires/michelin/multibib/480_65R24.xml">
                        <physics yOffset="-0.008"/>
                    </wheel>
                    <wheel filename="$data/shared/wheels/tires/michelin/multibib/480_65R24.xml">
                        <physics yOffset="-0.008"/>
                    </wheel>
                    <wheel filename="$data/shared/wheels/tires/michelin/multibib/480_65R24.xml">
                        <physics yOffset="-0.008"/>
                    </wheel>
                    <wheel filename="$data/shared/wheels/tires/michelin/multibib/480_65R24.xml">
                        <physics yOffset="-0.008"/>
                    </wheel>
                </wheels>
            </wheelConfiguration>

            <wheelConfiguration name="$l10n_configuration_valueDefault" price="0" brand="CONTINENTAL" saveId="CONTINENTAL_DEFAULT">
                <wheels baseConfig="TRELLEBORG_DEFAULT">
                    <wheel filename="$data/shared/wheels/tires/continental/tractorMaster/480_65R24.xml">
                        <physics yOffset="-0.008"/>
                    </wheel>
                    <wheel filename="$data/shared/wheels/tires/continental/tractorMaster/480_65R24.xml">
                        <physics yOffset="-0.008"/>
                    </wheel>
                    <wheel filename="$data/shared/wheels/tires/continental/tractorMaster/480_65R24.xml">
                        <physics yOffset="-0.008"/>
                    </wheel>
                    <wheel filename="$data/shared/wheels/tires/continental/tractorMaster/480_65R24.xml">
                        <physics yOffset="-0.008"/>
                    </wheel>
                </wheels>
            </wheelConfiguration>

            <wheelConfiguration name="$l10n_configuration_valueDefault" price="0" brand="MITAS" saveId="MITAS_DEFAULT">
                <wheels baseConfig="TRELLEBORG_DEFAULT">
                    <wheel filename="$data/shared/wheels/tires/mitas/AC65/480_65R24.xml"/>
                    <wheel filename="$data/shared/wheels/tires/mitas/AC65/480_65R24.xml"/>
                    <wheel filename="$data/shared/wheels/tires/mitas/AC65/480_65R24.xml"/>
                    <wheel filename="$data/shared/wheels/tires/mitas/AC65/480_65R24.xml"/>
                </wheels>
            </wheelConfiguration>

            <wheelConfiguration name="$l10n_configuration_valueDefault" price="0" brand="BKT" saveId="BKT_DEFAULT">
                <wheels baseConfig="TRELLEBORG_DEFAULT">
                    <wheel filename="$data/shared/wheels/tires/bkt/multimaxMP522/460_70R24.xml"/>
                    <wheel filename="$data/shared/wheels/tires/bkt/multimaxMP522/460_70R24.xml"/>
                    <wheel filename="$data/shared/wheels/tires/bkt/multimaxMP522/460_70R24.xml"/>
                    <wheel filename="$data/shared/wheels/tires/bkt/multimaxMP522/460_70R24.xml"/>
                </wheels>
            </wheelConfiguration>

            <wheelConfiguration name="$l10n_configuration_valueDefault" price="0" brand="VREDESTEIN" saveId="VREDESTEIN_DEFAULT">
                <wheels baseConfig="TRELLEBORG_DEFAULT">
                    <wheel filename="$data/shared/wheels/tires/vredestein/traxionVersa/460_70R24.xml"/>
                    <wheel filename="$data/shared/wheels/tires/vredestein/traxionVersa/460_70R24.xml"/>
                    <wheel filename="$data/shared/wheels/tires/vredestein/traxionVersa/460_70R24.xml"/>
                    <wheel filename="$data/shared/wheels/tires/vredestein/traxionVersa/460_70R24.xml"/>
                </wheels>
            </wheelConfiguration>

            <wheelConfiguration name="$l10n_configuration_valueWheelCommunal" price="1000" brand="NOKIAN" saveId="NOKIAN_COMMUNAL">
                <wheels baseConfig="TRELLEBORG_DEFAULT">
                    <wheel filename="$data/shared/wheels/tires/nokian/TRI2/400_80R24.xml"/>
                    <wheel filename="$data/shared/wheels/tires/nokian/TRI2/400_80R24.xml"/>
                    <wheel filename="$data/shared/wheels/tires/nokian/TRI2/400_80R24.xml"/>
                    <wheel filename="$data/shared/wheels/tires/nokian/TRI2/400_80R24.xml"/>
                </wheels>
            </wheelConfiguration>
        </wheelConfigurations>

        <ackermannSteeringConfigurations>
            <ackermannSteering rotSpeed="35" rotMax="45" rotCenter="0 0.28" />
        </ackermannSteeringConfigurations>

        <rimColor material="18">SHARED_WHITE1</rimColor>

        <hubs>
            <color0>SHARED_DA_METAL_BLACK</color0>
            <color1 material="0">SHARED_DA_METAL_BLACK</color1>
            <hub linkNode="wheelFrontLeft"  filename="$data/shared/wheels/hubs/hub_n8_4.xml" isLeft="true"  scale="0.25 0.28 0.28" />
            <hub linkNode="wheelFrontRight" filename="$data/shared/wheels/hubs/hub_n8_4.xml" isLeft="false" scale="0.25 0.28 0.28" />
            <hub linkNode="wheelBackLeft"   filename="$data/shared/wheels/hubs/hub_n8_4.xml" isLeft="true"  scale="0.25 0.28 0.28" />
            <hub linkNode="wheelBackRight"  filename="$data/shared/wheels/hubs/hub_n8_4.xml" isLeft="false" scale="0.25 0.28 0.28" />
        </hubs>
    </wheels>

    <speedRotatingParts>
        <speedRotatingPart node="pto" radius="0.1" />
    </speedRotatingParts>

    <lights>
        <sharedLight linkNode="rearLight37_left" filename="$data/shared/assets/lights/lizard/rearLight37_left.xml"/>
        <sharedLight linkNode="rearLight37_right" filename="$data/shared/assets/lights/lizard/rearLight37_right.xml"/>

        <states>
            <state lightTypes="0" />
            <state lightTypes="0 1" />
            <state lightTypes="0 1 2" />
        </states>

        <realLights>
            <low>
                <light node="frontLightLow"     lightTypes="0 2" excludedLightTypes="3"/>
                <light node="highBeamLow"       lightTypes="3"/>
                <light node="workLightBackLow"  lightTypes="1"/>
                <light node="workLightFrontLow" lightTypes="2"/>
            </low>
            <high>
                <light node="frontLightHigh"        lightTypes="0" excludedLightTypes="2 3"/>
                <light node="backLightsHigh1"       lightTypes="0"/>
                <light node="licensePlateLightHigh" lightTypes="0"/>
                <light node="highBeamHigh"          lightTypes="3"/>
                <light node="workLightBackHigh1"    lightTypes="1"/>
                <light node="workLightFrontHigh1"   lightTypes="2"/>
                <light node="workLightFrontHigh3"   lightTypes="2"/>
                <brakeLight node="backLightsHigh1" />
                <turnLightLeft node="turnLightLeftFront" />
                <turnLightRight node="turnLightRightFront" />
                <reverseLight node="reverseLightHigh1" />
                <interiorLight node="interiorScreenLight"/>
            </high>
        </realLights>

        <defaultLights>
            <defaultLight shaderNode="frontlightStatic1" lightTypes="0 3"/>
            <defaultLight shaderNode="licensePlateLightStatic" lightTypes="0" intensity="20"/>
            <defaultLight shaderNode="worklightBackStatic" lightTypes="1" intensity="80"/>
            <defaultLight shaderNode="worklightBackStatic3" lightTypes="1" intensity="80"/>
            <defaultLight shaderNode="worklightFrontStatic" lightTypes="2" intensity="80"/>
            <defaultLight shaderNode="worklightFrontStatic2" lightTypes="2" intensity="80"/>
            <defaultLight shaderNode="worklightFrontStatic3" lightTypes="2" intensity="80"/>
        </defaultLights>

        <turnLights>
            <turnLightLeft shaderNode="turnlightLeftStatic01" />
            <turnLightRight shaderNode="turnlightRightStatic01" />
        </turnLights>

        <beaconLights>
            <beaconLight node="beaconLight03" filename="$data/shared/assets/beaconLights/lizard/beaconLight03.xml" />
        </beaconLights>

        <dashboards>
            <dashboard displayType="EMITTER" valueType="lightState" node="cabinDecals" intensity="0.1" lightTypes="0" groups="MOTOR_ACTIVE"/>
            <dashboard displayType="EMITTER" valueType="turnLightLeft"   node="iconTurnlightLeft_decals"           baseColor="SHARED_BLACK4" emitColor="GREEN" groups="MOTOR_ACTIVE"/>
            <dashboard displayType="EMITTER" valueType="turnLightRight"  node="iconTurnlightRight_decals"          baseColor="SHARED_BLACK4" emitColor="GREEN" groups="MOTOR_ACTIVE"/>
        </dashboards>
    </lights>

    <licensePlates>
        <licensePlate node="licensePlateFront" position="FRONT" preferedType="SQUARISH"  placementArea="0.12 0.3 0.12 0.15"/>
        <licensePlate node="licensePlateBack"  position="BACK"  preferedType="ELONGATED" placementArea="0.06 0.29 0.07 0.29"/>
    </licensePlates>

    <enterable isTabbable="true" >
        <enterReferenceNode node="mlt840_main_component1" />
        <exitPoint node="exitPoint" />

        <cameras>
            <camera node="outdoorCamera1" rotatable="true" rotateNode="outdoorCameraTarget" limit="true" useWorldXZRotation="true" rotMinX="-1.4" rotMaxX="1" transMin="3.8" transMax="40" translation="0 0 6" rotation="-15 180 0" >
                <raycastNode node="cameraRaycastNode1"/>
                <raycastNode node="cameraRaycastNode2"/>
                <raycastNode node="cameraRaycastNode3"/>
            </camera>
            <camera node="indoorCamera1" rotatable="true" limit="true" rotMinX="-1.1" rotMaxX="0.8" transMin="0" transMax="0" useMirror="true" isInside="true" shadowFocusBox="shadowFocusBox" suspensionNodeIndex="1"/>
        </cameras>

        <characterNode node="player_skin" cameraMinDistance="0.5" spineRotation="-90 0 90" >
            <target ikChain="rightFoot" targetNode="player_rightFoot" />
            <target ikChain="leftFoot"  targetNode="player_leftFoot" />
            <target ikChain="rightArm"  targetNode="player_rightHand" poseId="wideFingers" />
            <target ikChain="leftArm"   targetNode="player_leftHand" />
        </characterNode>

        <characterTargetNodeModifier node="player_rightFoot" transitionTime="0.1" >
            <state node="player_rightFootGas"   referenceNode="gasPedal" directionReferenceNode="playerRightFootTargetGasRef" />
        </characterTargetNodeModifier>
        <characterTargetNodeModifier node="player_leftFoot" transitionTime="0.1" >
            <state node="player_leftFootBrake"   referenceNode="brakePedal"/>
        </characterTargetNodeModifier>

        <mirrors>
            <mirror node="mirror01Decal" prio="1" />
            <mirror node="mirror02Decal" prio="1" />
            <mirror node="mirror03Decal" prio="2" />
            <mirror node="mirror04Decal" prio="2" />
            <mirror node="mirror05Decal" prio="1" />
        </mirrors>
    </enterable>

    <motorized>
        <consumerConfigurations>
            <consumerConfiguration>
                <consumer fillUnitIndex="1" usage="42"  fillType="diesel" />  <!-- usage is per hour at max load and max rpm -->
                <consumer fillUnitIndex="2" usage="3" fillType="def" />     <!-- usage is per hour at max load and max rpm -->
            </consumerConfiguration>
        </consumerConfigurations>

        <differentialConfigurations>
            <differentialConfiguration>
                <differentials>
                    <differential torqueRatio="0.5" maxSpeedRatio="2.1" wheelIndex1="1" wheelIndex2="2" /> <!-- front left-right -->
                    <differential torqueRatio="0.5" maxSpeedRatio="1.7" wheelIndex1="3" wheelIndex2="4" /> <!-- back left-right -->
                    <differential torqueRatio="0.5" maxSpeedRatio="1.3" differentialIndex1="1" differentialIndex2="2" /> <!-- front-back -->
                </differentials>
            </differentialConfiguration>
        </differentialConfigurations>

        <motorConfigurations>
            <motorConfiguration name="MLT 840" hp="141" price="0">
                <motor torqueScale="0.597" minRpm="850" maxRpm="2200" maxForwardSpeed="43" maxBackwardSpeed="15" brakeForce="5" lowBrakeForceScale="0.22" dampingRateScale="0.8">
                    <torque normRpm="0.45" torque="0.9"/>
                    <torque normRpm="0.5" torque="0.97"/>
                    <torque normRpm="0.59" torque="1"/>
                    <torque normRpm="0.72" torque="1"/>
                    <torque normRpm="0.86" torque="0.88"/>
                    <torque normRpm="1" torque="0.72"/>
                </motor>
                <transmission minForwardGearRatio="15.8" maxForwardGearRatio="320" minBackwardGearRatio="47" maxBackwardGearRatio="320" name="$l10n_info_transmission_cvt"/>
            </motorConfiguration>
        </motorConfigurations>

        <exhaustEffects>
            <exhaustEffect node="exhaustParticle1" filename="$data/effects/exhaust/exhaust.i3d" minRpmColor="0.9 0.9 0.9 0.1" maxRpmColor="0.9 0.9 0.9 0.4" minRpmScale="0.05" maxRpmScale="0.5" />
        </exhaustEffects>

        <motorStartDuration>3300</motorStartDuration>

        <dashboards>
            <dashboard displayType="TEXT"        valueType="speed" node="numbersSpeed" textColor="0 0 0 1" textSize="0.013" textMask="00.0" font="GENERIC" groups="MOTOR_ACTIVE"/>
            <dashboard displayType="ANIMATION"   valueType="rpm" animName="rpmDisplay" minValueAnim="0" maxValueAnim="3000" groups="MOTOR_ACTIVE"/>
            <dashboard displayType="MULTI_STATE" valueType="ignitionState" node="ignitionKey" doInterpolation="true" groups="MOTOR_ACTIVE">
                <state value="0" rotation="0 0 0"/>
                <state value="1" rotation="0 0 -90"/>
                <state value="2" rotation="0 0 -30"/>
            </dashboard>
            <dashboard displayType="ANIMATION" valueType="motorTemperature" animName="tempAnim" minValueAnim="20" maxValueAnim="125" groups="MOTOR_ACTIVE"/>
        </dashboards>
    </motorized>

    <fillUnit>
        <fillUnitConfigurations>
            <fillUnitConfiguration>
                <fillUnits>
                    <fillUnit unitTextOverride="$l10n_unit_literShort" showOnHud="false" showInShop="false" fillTypes="diesel" capacity="126">
                        <dashboard displayType="ANIMATION" valueType="fillLevel" animName="fuelDisplay" groups="MOTOR_ACTIVE"/>
                    </fillUnit>
                    <fillUnit unitTextOverride="$l10n_unit_literShort" showOnHud="false" showInShop="false" showOnInfoHud="false" fillTypes="def" capacity="12" />
                </fillUnits>
            </fillUnitConfiguration>
        </fillUnitConfigurations>
    </fillUnit>

    <suspensions>
        <suspension node="seat"              weight="150" minTranslation="-0.05 -0.15 0.0" maxTranslation="0.05 0.15 0.0" suspensionParametersX="20 4" suspensionParametersY="5 1" suspensionParametersZ="20 4" />
        <suspension useCharacterTorso="true" weight="90" minRotation="0 -5 -5" maxRotation="0 5 5" suspensionParametersY="7 1" suspensionParametersZ="7 1" />
    </suspensions>

    <drivable>
        <steeringWheel node="steeringWheel" indoorRotation="540" outdoorRotation="30" />

        <dashboards>
            <dashboard displayType="ROT"     valueType="accelerationAxis" node="gasPedal"   minRot="0 0 0" maxRot="-10 0 0" doInterpolation="true" groups="MOTOR_ACTIVE"/>
            <dashboard displayType="ROT"     valueType="decelerationAxis" node="brakePedal" minRot="0 0 0" maxRot="-20 0 0" doInterpolation="true" groups="MOTOR_ACTIVE"/>
        </dashboards>
    </drivable>

    <attacherJoints comboDuration="2">
        <attacherJoint node="attacherJointDummy" nodeVisual="attacherJoint" jointType="telehandler" allowsJointLimitMovement="false" allowsLowering="false" rotLimitSpring="7500 7500 7500" rotLimitDamping="5 5 5" transLimitSpring="7500 7500 7500" transLimitDamping="5 5 5" >
            <schema position="1 0" rotation="0" invertX="true" />
        </attacherJoint>
        <attacherJoint node="trailerAttacherJointBack" jointType="trailer" lowerRotLimit="25 78 50" allowsJointLimitMovement="false" >
            <schema position="1 0" rotation="0" invertX="false" />
        </attacherJoint>
        <attacherJoint node="trailerAttacherJointFront" jointType="trailer" lowerRotLimit="25 78 50" allowsJointLimitMovement="false" >
            <schema position="1 0" rotation="0" invertX="false" />
        </attacherJoint>
    </attacherJoints>

    <connectionHoses>
        <target attacherJointIndices="2" type="electric" node="electricSocket" socket="electric_metal"/>
        <target attacherJointIndices="2" type="hydraulicIn" node="hydraulicSocket01" socket="hydraulic01"/>
        <target attacherJointIndices="2" type="hydraulicOut" node="hydraulicSocket02" socket="hydraulic02"/>

        <target attacherJointIndices="1" type="hydraulicIn" node="hydraulic01_in"/>
        <target attacherJointIndices="1" type="hydraulicOut" node="hydraulic01_out"/>
    </connectionHoses>

    <wipers>
        <wiper animName="wiperFrontAnimation" >
            <state animSpeed="0.75" animPause="2.0" />
            <state animSpeed="0.75" animPause="0.0" />
            <state animSpeed="1.10" animPause="0.0" />
        </wiper>
        <wiper animName="wiperBackAnimation" >
            <state animSpeed="1.0" animPause="2.0" />
        </wiper>
    </wipers>

    <animations>
        <animation name="wiperFrontAnimation">
            <part node="wiperFrontArm01" startTime="0" endTime="1" startRot="0 0 0" endRot="-50 3.35 -4" />
            <part node="wiperFrontArm02" startTime="0" endTime="1" startRot="0 0 0" endRot="-50 3.35 -4" />
            <part node="wiperFrontArm03" startTime="0" endTime="1" startRot="0 0 0" endRot="0 0 15" />
            <part node="wiperFront" startTime="0" endTime="1" startRot="0 0 0" endRot="50 -5 -6" />

            <sound template="wiper1" startTime="0" endTime="1" direction="1"   volumeScale="1.2" pitchScale="0.7" fadeOut="0.1" linkNode="wiperFrontArm01"/>
            <sound template="wiper2" startTime="0" endTime="1" direction="-1"  volumeScale="1.2" pitchScale="0.7" fadeOut="0.1" linkNode="wiperFrontArm01"/>
        </animation>
        <animation name="wiperBackAnimation">
            <part node="wiperBack" startTime="0" endTime="1" startRot="0 0 0" endRot="-55.289 -2.973 5.957"/>
            <part node="wiperBackPart" startTime="0" endTime="1" startRot="0 0 0" endRot="0 -3.313 0"/>
            <part node="wiperTop" startTime="0" endTime="1" startRot="0 0 0" endRot="-0.711 -42.699 0"/>
            <part node="wiperTopPart" startTime="0" endTime="0.5" startRot="0 0 0" endRot="0 0 -6"/>
            <part node="wiperTopPart" startTime="0.5" endTime="1.0" startRot="0 0 -6" endRot="0 0 0"/>

            <sound template="wiper1" startTime="0" endTime="1" direction="1"  volumeScale="0.8" pitchScale="0.9" fadeOut="0.1" linkNode="wiperBack"/>
            <sound template="wiper2" startTime="0" endTime="1" direction="-1" volumeScale="0.8" pitchScale="0.9" fadeOut="0.1" linkNode="wiperBack"/>
        </animation>
        <animation name="rpmDisplay">
            <part node="rpmNeedle"  startTime="0" endTime="1" startRot="-8 0 0" endRot="-140 0 0" />
        </animation>
        <animation name="fuelDisplay">
            <part node="fuelNeedle"  startTime="0" endTime="1" startRot="0 0 0" endRot="-148 0 0" />
        </animation>
        <animation name="tempAnim" >
            <part node="tempNeedle" startTime="0.0" endTime="1" startRot="0 0 0" endRot="0 0 -158" />
        </animation>
    </animations>

    <cylindered>
        <movingTools>
            <movingTool node="mainArmDummy" delayedNode="mainArm" playSound="false">
                <controls axis="AXIS_FRONTLOADER_ARM" invertAxis="true" mouseSpeedFactor="0.4" iconName="CRANE_ARM2_ROTATE_X" />
                <attacherJoint jointIndices="1" />
                <rotation rotSpeed="15" rotAcceleration="100" rotMax="0" rotMin="-66" startRot="-3" />
                <dependentMovingTool node="attacherDummy" minRotLimits="-2 -70" maxRotLimits="120 60" />
                <dependentPart node="attacherDummyRot" />
            </movingTool>
            <movingTool node="mainArm">
                <dependentPart node="mainArmHydraulic" />
                <dependentPart node="mainArm2Hydraulic" />
                <dependentPart node="attacherRot" />
            </movingTool>
            <movingTool node="secondArmDummy" delayedNode="secondArm" playSound="true">
                <controls axis="AXIS_FRONTLOADER_ARM2" invertAxis="false" mouseSpeedFactor="0.25" iconName="CRANE_ARM2_TRANSLATE" />
                <attacherJoint jointIndices="1" />
                <translation transSpeed="0.9" transAcceleration="10" transMax="3.4" transMin="0" translationAxis="3" />
            </movingTool>
            <movingTool node="attacherDummy" delayedNode="attacher" playSound="false">
                <controls axis="AXIS_FRONTLOADER_TOOL" invertAxis="true" mouseSpeedFactor="0.35" iconName="CRANE_ARM2_ROTATE_TOOL" />
                <attacherJoint jointIndices="1" />
                <rotation rotSpeed="60" rotAcceleration="300" rotMax="120" rotMin="-2" startRot="26" />
            </movingTool>
            <movingTool node="attacher">
                <dependentPart node="secondArmHydraulic" />
                <dependentPart node="secondArmPart01" />
            </movingTool>
        </movingTools>

        <movingParts>
            <movingPart node="steeringBarFrontLeft"  referencePoint="steeringBarFrontLeftRef"  referenceFrame="steeringBarFrontLeftRef"  isActiveDirty="true" maxUpdateDistance="40" scaleZ="true"/>
            <movingPart node="steeringBarFrontRight" referencePoint="steeringBarFrontRightRef" referenceFrame="steeringBarFrontRightRef" isActiveDirty="true" maxUpdateDistance="40" scaleZ="true"/>
            <movingPart node="steeringBarBackLeft"   referencePoint="steeringBarBackLeftRef"   referenceFrame="steeringBarBackLeftRef"   isActiveDirty="true" maxUpdateDistance="40" scaleZ="true"/>
            <movingPart node="steeringBarBackRight"  referencePoint="steeringBarBackRightRef"  referenceFrame="steeringBarBackRightRef"  isActiveDirty="true" maxUpdateDistance="40" scaleZ="true"/>
            <movingPart node="ptoOrientation"  referencePoint="ptoOrientationRef"  referenceFrame="ptoOrientationRef"  isActiveDirty="true" maxUpdateDistance="40"/>
            <movingPart node="mainArmHydraulic" referencePoint="mainArmHydraulicRef" referenceFrame="mainArmHydraulicRef">
                <translatingPart node="mainArmHydraulicPunch" />
            </movingPart>
            <movingPart node="mainArm2Hydraulic" referencePoint="mainArm2HydraulicRef" referenceFrame="mainArm2HydraulicRef">
                <translatingPart node="mainArm2HydraulicPunch" />
            </movingPart>
            <movingPart node="secondArmHydraulic" referencePoint="secondArmHydraulicRef" referenceFrame="secondArmHydraulicRefFrame">
                <translatingPart node="secondArmHydraulicPunch" />
            </movingPart>
            <movingPart node="secondArmPart01" referencePoint="secondArmPart01Ref" localReferencePoint="secondArmPart02" referenceFrame="secondArmPart01RefFrame" >
                <dependentPart node="secondArmPart02" />
            </movingPart>
            <movingPart node="secondArmPart02"  referencePoint="secondArmPart01Ref"  referenceFrame="secondArmPart01Ref"/>
            <movingPart node="attacherDummyRot" referenceFrame="mlt840_main_component1">
                <attacherJoint jointIndices="1" />
            </movingPart>
            <movingPart node="attacherRot" referenceFrame="mlt840_main_component1">
                <dependentPart node="secondArmHydraulic" />
                <dependentPart node="secondArmPart01" />
            </movingPart>
        </movingParts>

        <sounds>
            <actionSound template="hydraulicLayerTone2"   pitchScale="1.0" volumeScale="1.2" linkNode="mainArmHydraulic"   actionNames="TRANSLATING_POS TRANSLATING_NEG" nodes="mainArmHydraulic" fadeIn="0.1" fadeOut="0.05"/>
            <actionSound template="hydraulicLayerTone"    pitchScale="0.6" volumeScale="1.2" linkNode="mainArmHydraulic"   actionNames="TRANSLATING_POS" nodes="mainArmHydraulic" fadeIn="0.1" fadeOut="0.05"/>
            <actionSound template="hydraulicLayerTone2"   pitchScale="2.5" volumeScale="0.4" linkNode="secondArmHydraulic" actionNames="TRANSLATING_POS TRANSLATING_NEG" nodes="secondArmHydraulic" fadeIn="0.1" fadeOut="0.05"/>
            <actionSound template="defaultHydraulicSound" pitchScale="1.1" volumeScale="0.8" linkNode="secondArmHydraulic" actionNames="TRANSLATING_POS TRANSLATING_NEG" nodes="secondArmHydraulic" fadeIn="0.1" fadeOut="0.05"/>
            <actionSound template="metalLowVar2"  pitchScale="1.0" volumeScale="3"   linkNode="mainArmDummy"   actionNames="TOOL_MOVE_END_POS_LIMIT" nodes="mainArmDummy"/>
            <actionSound template="cylinderPunch" pitchScale="1.5" volumeScale="0.4" linkNode="mainArmDummy"   actionNames="TOOL_MOVE_END_POS_LIMIT" nodes="mainArmDummy"/>
            <actionSound template="metalClose"    pitchScale="2.5" volumeScale="0.6" linkNode="mainArmDummy"   actionNames="TOOL_MOVE_END_POS_LIMIT" nodes="mainArmDummy"/>
            <actionSound template="clackVar4"     pitchScale="1.5" volumeScale="2.0" linkNode="mainArmDummy"   actionNames="TOOL_MOVE_END_POS_LIMIT" nodes="mainArmDummy"/>
            <actionSound template="metalLowVar2"  pitchScale="1.3" volumeScale="3"   linkNode="secondArmDummy" actionNames="TOOL_MOVE_END_NEG_LIMIT" nodes="secondArmDummy"/>
            <actionSound template="cylinderPunch" pitchScale="1.9" volumeScale="0.4" linkNode="secondArmDummy" actionNames="TOOL_MOVE_END_NEG_LIMIT" nodes="secondArmDummy"/>
            <actionSound template="clackVar4"     pitchScale="2.5" volumeScale="1.0" linkNode="secondArmDummy" actionNames="TOOL_MOVE_END_NEG_LIMIT" nodes="secondArmDummy"/>
        </sounds>

        <dashboards>
            <dashboard displayType="ROT" valueType="movingTool" node="joystick" rotAxis="1" minRot="-15" maxRot="15" axis="AXIS_FRONTLOADER_ARM"  doInterpolation="true" groups="MOTOR_ACTIVE"/>
            <dashboard displayType="ROT" valueType="movingTool" node="joystick" rotAxis="3" minRot="-15" maxRot="15" axis="AXIS_FRONTLOADER_TOOL" doInterpolation="true" groups="MOTOR_ACTIVE"/>
        </dashboards>
    </cylindered>

    <dashboard>
        <groups>
            <group name="MOTOR_STARTING" isMotorStarting="true"/>
            <group name="MOTOR_ACTIVE"   isMotorStarting="true" isMotorRunning="true"/>
        </groups>
        <default>
            <dashboard displayType="EMITTER" node="dashboardDisplay" idleValue="0" intensity="0.2" groups="MOTOR_ACTIVE" />
            <dashboard displayType="EMITTER" node="rpmNeedle" idleValue="0" intensity="0.2" groups="MOTOR_ACTIVE" />
            <dashboard displayType="EMITTER" node="fuelNeedle" idleValue="0" intensity="0.2" groups="MOTOR_ACTIVE" />
            <dashboard displayType="EMITTER" node="tempNeedle" idleValue="0" intensity="0.2" groups="MOTOR_ACTIVE" />
            <dashboard displayType="EMITTER" node="startingDecals" baseColor="SHARED_BLACK1" intensity="0.1" groups="MOTOR_STARTING" />
        </default>
    </dashboard>

    <ai>
        <agent width="2.55" length="5.4" height="2.45" lengthOffset="-0.23" frontOffset="0.965" />
        <collisionTrigger node="aiCollisionNode" width="3.0" height="2.4"/>
    </ai>

    <foliageBending>
        <bendingNode minX="-1.25" maxX="1.25" minZ="-2.5" maxZ="1.95" yOffset="0.5" />
        <bendingNode minX="-0.25" maxX="0.1" minZ="-0.5" maxZ="0.5" yOffset="-0.25" node="attacherJointDummy"/>
    </foliageBending>

    <crabSteering>
        <steeringMode name="$l10n_action_steeringModeAllWheel" >
            <wheel index="1" offset="0" />
            <wheel index="2" offset="0" />
            <wheel index="3" offset="0" />
            <wheel index="4" offset="0" />
        </steeringMode>
        <steeringMode name="$l10n_action_steeringModeFrontWheel" >
            <wheel index="1" offset="0" locked="false" />
            <wheel index="2" offset="0" locked="false" />
            <wheel index="3" offset="0" locked="true" />
            <wheel index="4" offset="0" locked="true" />
        </steeringMode>
        <steeringMode name="$l10n_action_steeringModeCrabLeft" >
            <wheel index="1" offset="15" />
            <wheel index="2" offset="15" />
            <wheel index="3" offset="15" />
            <wheel index="4" offset="15" />
        </steeringMode>
        <steeringMode name="$l10n_action_steeringModeCrabRight" >
            <wheel index="1" offset="-15" />
            <wheel index="2" offset="-15" />
            <wheel index="3" offset="-15" />
            <wheel index="4" offset="-15" />
        </steeringMode>
    </crabSteering>

    <baseMaterial>
        <material name="mlt840_mat" baseNode="mlt840_vis">
            <shaderParameter name="colorMat0" value="MANITOU_RED"/>
        </material>
    </baseMaterial>

    <wearable wearDuration="480" workMultiplier="5" fieldMultiplier="2"/>
    <washable dirtDuration="90" washDuration="1" workMultiplier="3" fieldMultiplier="2"/>

    <i3dMappings>
        <i3dMapping id="mlt840_main_component1" node="0>" />
        <i3dMapping id="mlt840_vis" node="0>0" />
        <i3dMapping id="axisFrontLeft" node="0>0|0|0" />
        <i3dMapping id="steeringBarFrontLeft" node="0>0|0|0|0" />
        <i3dMapping id="wheelFrontLeft" node="0>0|0|0|1" />
        <i3dMapping id="axisFrontRight" node="0>0|0|1" />
        <i3dMapping id="steeringBarFrontRight" node="0>0|0|1|0" />
        <i3dMapping id="wheelFrontRight" node="0>0|0|1|1" />
        <i3dMapping id="steeringBarFront" node="0>0|0|2" />
        <i3dMapping id="steeringBarFrontLeftRef" node="0>0|0|2|0" />
        <i3dMapping id="steeringBarFrontRightRef" node="0>0|0|2|1" />
        <i3dMapping id="outdoorCameraTarget" node="0>0|1|0" />
        <i3dMapping id="outdoorCamera1" node="0>0|1|0|0" />
        <i3dMapping id="indoorCamera1" node="0>0|1|1" />
        <i3dMapping id="cameraRaycastNode1" node="0>0|1|2" />
        <i3dMapping id="cameraRaycastNode2" node="0>0|1|3" />
        <i3dMapping id="cameraRaycastNode3" node="0>0|1|4" />
        <i3dMapping id="shadowFocusBox" node="0>0|1|5" />
        <i3dMapping id="exitPoint" node="0>0|2" />
        <i3dMapping id="componentJoint" node="0>0|3" />
        <i3dMapping id="licensePlateFront" node="0>0|4" />
        <i3dMapping id="licensePlateBack" node="0>0|5" />
        <i3dMapping id="beaconLight03" node="0>0|6|0|0" />
        <i3dMapping id="rearLight37_left" node="0>0|6|0|1" />
        <i3dMapping id="rearLight37_right" node="0>0|6|0|2" />
        <i3dMapping id="worklightFrontStatic" node="0>0|6|1|0" />
        <i3dMapping id="worklightBackStatic" node="0>0|6|1|1" />
        <i3dMapping id="turnlightLeftStatic01" node="0>0|6|1|2" />
        <i3dMapping id="turnlightRightStatic01" node="0>0|6|1|3" />
        <i3dMapping id="frontlightStatic1" node="0>0|6|1|4" />
        <i3dMapping id="licensePlateLightStatic" node="0>0|6|1|5" />
        <i3dMapping id="worklightFrontStatic2" node="0>0|6|1|6" />
        <i3dMapping id="worklightBackStatic3" node="0>0|6|1|7" />
        <i3dMapping id="frontLightLow" node="0>0|6|2|0" />
        <i3dMapping id="highBeamLow" node="0>0|6|2|1" />
        <i3dMapping id="frontLightHigh" node="0>0|6|2|2" />
        <i3dMapping id="highBeamHigh" node="0>0|6|2|3" />
        <i3dMapping id="licensePlateLightHigh" node="0>0|6|2|4" />
        <i3dMapping id="workLightFrontLow" node="0>0|6|3|0" />
        <i3dMapping id="workLightBackLow" node="0>0|6|3|1" />
        <i3dMapping id="workLightFrontHigh1" node="0>0|6|3|2" />
        <i3dMapping id="workLightBackHigh1" node="0>0|6|3|3" />
        <i3dMapping id="backLightsHigh1" node="0>0|6|4|0" />
        <i3dMapping id="turnLightLeftFront" node="0>0|6|5|0" />
        <i3dMapping id="turnLightRightFront" node="0>0|6|5|1" />
        <i3dMapping id="reverseLightHigh1" node="0>0|6|6|0" />
        <i3dMapping id="interiorScreenLight" node="0>0|6|7" />
        <i3dMapping id="trailerAttacherJointBack" node="0>0|7|0|0" />
        <i3dMapping id="trailers_trailerAttacherJointFront" node="0>0|7|0|1" />
        <i3dMapping id="trailerAttacherJointFront" node="0>0|7|0|1|0" />
        <i3dMapping id="electricSocket" node="0>0|7|1|0" />
        <i3dMapping id="hydraulicSocket01" node="0>0|7|1|1" />
        <i3dMapping id="hydraulicSocket02" node="0>0|7|1|2" />
        <i3dMapping id="aiCollisionNode" node="0>0|8|0" />
        <i3dMapping id="exhaustParticle1" node="0>0|9|0" />
        <i3dMapping id="mainArm" node="0>0|10|0" />
        <i3dMapping id="secondArm" node="0>0|10|0|0|0" />
        <i3dMapping id="attacherRot" node="0>0|10|0|0|0|0" />
        <i3dMapping id="attacher" node="0>0|10|0|0|0|0|0" />
        <i3dMapping id="attacherJoint" node="0>0|10|0|0|0|0|0|0|0" />
        <i3dMapping id="secondArmPart01Ref" node="0>0|10|0|0|0|0|0|1" />
        <i3dMapping id="secondArmPart01RefFrame" node="0>0|10|0|0|0|1" />
        <i3dMapping id="secondArmPart01" node="0>0|10|0|0|0|1|0" />
        <i3dMapping id="secondArmPart02" node="0>0|10|0|0|0|1|0|0" />
        <i3dMapping id="secondArmHydraulicRef" node="0>0|10|0|0|0|1|0|1" />
        <i3dMapping id="secondArmHydraulicRefFrame" node="0>0|10|0|0|0|2" />
        <i3dMapping id="secondArmHydraulic" node="0>0|10|0|0|0|2|0" />
        <i3dMapping id="secondArmHydraulicPunch" node="0>0|10|0|0|0|2|0|0" />
        <i3dMapping id="hydraulic01_in" node="0>0|10|0|0|0|3|0" />
        <i3dMapping id="hydraulic01_out" node="0>0|10|0|0|0|3|1" />
        <i3dMapping id="hydraulicMainArmRef" node="0>0|10|0|1" />
        <i3dMapping id="hydraulicMainArmHelpRef" node="0>0|10|0|2" />
        <i3dMapping id="topArmSoundNode" node="0>0|10|0|3" />
        <i3dMapping id="mainArmHydraulicRef" node="0>0|10|0|5" />
        <i3dMapping id="mainArm2HydraulicRef" node="0>0|10|0|6" />
        <i3dMapping id="worklightFrontStatic3" node="0>0|10|0|7|0|0" />
        <i3dMapping id="workLightFrontHigh3" node="0>0|10|0|8" />
        <i3dMapping id="mainArmDummy" node="0>0|10|1" />
        <i3dMapping id="secondArmDummy" node="0>0|10|1|0|0" />
        <i3dMapping id="attacherDummyRot" node="0>0|10|1|0|0|0" />
        <i3dMapping id="attacherDummy" node="0>0|10|1|0|0|0|0" />
        <i3dMapping id="attacherJointDummy" node="0>0|10|1|0|0|0|0|0|0" />
        <i3dMapping id="ptoOrientation" node="0>0|10|2" />
        <i3dMapping id="pto" node="0>0|10|2|0|0" />
        <i3dMapping id="mainArmHydraulic" node="0>0|10|3" />
        <i3dMapping id="mainArmHydraulicPunch" node="0>0|10|3|0" />
        <i3dMapping id="mainArm2Hydraulic" node="0>0|10|4" />
        <i3dMapping id="mainArm2HydraulicPunch" node="0>0|10|4|0" />
        <i3dMapping id="seat" node="0>0|11|0" />
        <i3dMapping id="joystick" node="0>0|11|0|0" />
        <i3dMapping id="player_rightHand" node="0>0|11|0|0|0" />
        <i3dMapping id="player_skin" node="0>0|11|0|2" />
        <i3dMapping id="rpmNeedle" node="0>0|11|1|0|0" />
        <i3dMapping id="fuelNeedle" node="0>0|11|1|1|0" />
        <i3dMapping id="ignitionKey" node="0>0|11|1|2|0" />
        <i3dMapping id="dashboardDisplay" node="0>0|11|1|3" />
        <i3dMapping id="numbersSpeed" node="0>0|11|1|4" />
        <i3dMapping id="tempNeedle" node="0>0|11|1|5|0" />
        <i3dMapping id="iconTurnlightRight_decals" node="0>0|11|1|6" />
        <i3dMapping id="iconTurnlightLeft_decals" node="0>0|11|1|7" />
        <i3dMapping id="startingDecals" node="0>0|11|1|8" />
        <i3dMapping id="mirror01Decal" node="0>0|11|2|0" />
        <i3dMapping id="mirror02Decal" node="0>0|11|2|1" />
        <i3dMapping id="mirror03Decal" node="0>0|11|2|2" />
        <i3dMapping id="mirror04Decal" node="0>0|11|2|3" />
        <i3dMapping id="mirror05Decal" node="0>0|11|2|4" />
        <i3dMapping id="player_rightFoot" node="0>0|11|3|0" />
        <i3dMapping id="player_leftFoot" node="0>0|11|3|1" />
        <i3dMapping id="player_rightFootGas" node="0>0|11|3|2" />
        <i3dMapping id="steeringWheel" node="0>0|11|4|0" />
        <i3dMapping id="player_leftHand" node="0>0|11|4|0|0" />
        <i3dMapping id="gasPedal" node="0>0|11|5|0" />
        <i3dMapping id="playerRightFootTargetGasRef" node="0>0|11|5|0|0" />
        <i3dMapping id="brakePedal" node="0>0|11|5|1" />
        <i3dMapping id="player_leftFootBrake" node="0>0|11|5|1|0" />
        <i3dMapping id="wiperBack" node="0>0|11|7|0|0" />
        <i3dMapping id="wiperBackPart" node="0>0|11|7|0|0|0" />
        <i3dMapping id="wiperFrontArm01" node="0>0|11|7|1|0" />
        <i3dMapping id="wiperFront" node="0>0|11|7|1|0|0|0" />
        <i3dMapping id="wiperFrontArm03" node="0>0|11|7|1|0|1" />
        <i3dMapping id="wiperFrontArm02" node="0>0|11|7|2|0" />
        <i3dMapping id="wiperTop" node="0>0|11|7|3|0" />
        <i3dMapping id="wiperTopPart" node="0>0|11|7|3|0|0|0" />
        <i3dMapping id="cabinDecals" node="0>0|12|1" />
        <i3dMapping id="mlt840_axis_component2" node="1>" />
        <i3dMapping id="axis" node="1>0" />
        <i3dMapping id="axisBackLeft" node="1>0|0" />
        <i3dMapping id="steeringBarBackLeft" node="1>0|0|0" />
        <i3dMapping id="wheelBackLeft" node="1>0|0|1" />
        <i3dMapping id="axisBackRight" node="1>0|1" />
        <i3dMapping id="steeringBarBackRight" node="1>0|1|0" />
        <i3dMapping id="wheelBackRight" node="1>0|1|1" />
        <i3dMapping id="steeringBarBack" node="1>0|2" />
        <i3dMapping id="steeringBarBackLeftRef" node="1>0|2|0" />
        <i3dMapping id="steeringBarBackRightRef" node="1>0|2|1" />
        <i3dMapping id="ptoOrientationRef" node="1>0|3" />
    </i3dMappings>
</vehicle>
