﻿<?xml version="1.0" encoding="utf-8" standalone="no" ?>
<vehicle type="cutter" 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>PowerFlow 30FT</name>
        <specs>
            <workingWidth>9.2</workingWidth>
            <combination xmlFilename="$data/vehicles/fendt/ideal/idealPL.xml"/>
            <combination xmlFilename="$data/vehicles/nardi/n60_30/n60_30.xml" />
        </specs>
        <functions>
            <function>$l10n_function_cutter</function>
        </functions>
        <image>$data/vehicles/fendt/powerFlow30FT/store_powerFlow30FT.png</image>
        <price>52000</price>
        <lifetime>600</lifetime>
        <rotation>0</rotation>
        <brand>FENDT</brand>
        <category>cutters</category>
        <shopTranslationOffset>0 0.04 0</shopTranslationOffset>
        <shopRotationOffset>-0.845 0 0</shopRotationOffset>
        <vertexBufferMemoryUsage>4347648</vertexBufferMemoryUsage>
        <indexBufferMemoryUsage>1165824</indexBufferMemoryUsage>
        <textureMemoryUsage>3080192</textureMemoryUsage>
        <instanceVertexBufferMemoryUsage>0</instanceVertexBufferMemoryUsage>
        <instanceIndexBufferMemoryUsage>0</instanceIndexBufferMemoryUsage>
        <audioMemoryUsage>0</audioMemoryUsage>
    </storeData>

    <base>
        <typeDesc>$l10n_typeDesc_cutter</typeDesc>
        <filename>$data/vehicles/fendt/powerFlow30FT/powerFlow30FT.i3d</filename>
        <size width="11" length="3.5" lengthOffset="-0.3" />
        <speedLimit value="10" />
        <components>
            <component centerOfMass="0 0.2 -0.35" solverIterationCount="10" mass="3500" />
        </components>
        <schemaOverlay attacherJointPosition="0 0" name="COMBINE_HEADER"/>
        <mapHotspot type="CUTTER" />
    </base>

    <powerConsumer ptoRpm="540" neededMaxPtoPower="80"/>

    <groundReferenceNodes>
        <groundReferenceNode node="heightNode02" threshold="0.5" />
    </groundReferenceNodes>

    <workAreas>
        <workArea type="cutter" functionName="processCutterArea" disableBackwards="true" >
            <area startNode="workAreaStart" widthNode="workAreaWidth" heightNode="workAreaHeight" />
            <groundReferenceNode index="1" />
            <testAreas autoGenerate="true" zOffset="0.5" xOffset="0" length="0.6" numAreas="16" areaWidthScale="0.25"/>
        </workArea>
    </workAreas>

    <attachable>
        <inputAttacherJoints>
            <inputAttacherJoint node="attacherJoint" jointType="cutter" >
                <heightNode node="heightNode01" />
                <heightNode node="heightNode02" />
                <heightNode node="heightNode03" />
                <distanceToGround lower="0.3" upper="1.8" />
                <objectChange node="cover" visibilityActive="false" visibilityInactive="true"/>
            </inputAttacherJoint>
        </inputAttacherJoints>
        <support animationName="moveSupport" detachAfterAnimation="false"/>
    </attachable>

    <lights>
        <sharedLight linkNode="sideMarker06Red_01" filename="$data/shared/assets/lights/lizard/sideMarker06Red.xml"/>
    </lights>

    <animations>
        <animation name="moveSupport">
            <part node="autoDockCover" startTime="0.0" endTime="0.75"  startRot="0 0 98" endRot="0 0 0" />
            <part node="groundAdjusment" startTime="0" endTime="0.75"  startRot="20 0 0" endRot="20 0 0" />
        </animation>

        <animation name="turnedOnAnimation" looping="true">
            <part node="bladeMounting" startTime="0.0" endTime="0.1"  startTrans="0.03 0 0"  endTrans="-0.03 0 0" />
            <part node="bladeMounting" startTime="0.1" endTime="0.2"  startTrans="-0.03 0 0" endTrans="0.03 0 0" />
            <part node="bladeMounting" startTime="0.2" endTime="0.3"  startTrans="0.03 0 0"  endTrans="-0.03 0 0" />
            <part node="bladeMounting" startTime="0.3" endTime="0.4"  startTrans="-0.03 0 0" endTrans="0.03 0 0" />
            <part node="bladeMounting" startTime="0.4" endTime="0.5"  startTrans="0.03 0 0"  endTrans="-0.03 0 0" />
            <part node="bladeMounting" startTime="0.5" endTime="0.6"  startTrans="-0.03 0 0" endTrans="0.03 0 0" />
            <part node="bladeMounting" startTime="0.6" endTime="0.7"  startTrans="0.03 0 0"  endTrans="-0.03 0 0" />
            <part node="bladeMounting" startTime="0.7" endTime="0.8"  startTrans="-0.03 0 0" endTrans="0.03 0 0" />
            <part node="bladeMounting" startTime="0.8" endTime="0.9"  startTrans="0.03 0 0"  endTrans="-0.03 0 0" />
            <part node="bladeMounting" startTime="0.9" endTime="1"    startTrans="-0.03 0 0" endTrans="0.03 0 0" />
        </animation>
    </animations>

    <cylindered>
        <movingTools>
            <movingTool node="reelMover" playSound="true" >
                <controls axis="AXIS_CUTTER_REEL" invertAxis="true" mouseSpeedFactor="0.25" iconName="REEL_TRANSLATE_X" />
                <translation transSpeed="0.12" transAcceleration="10" transMax="0.29" transMin="0" translationAxis="3" startTrans="0"/>
                <dependentPart node="reelMoverHydraulic" />
                <dependentPart node="sensorArm03" />
            </movingTool>

            <movingTool node="reelArm" playSound="true" >
                <controls axis="AXIS_CUTTER_REEL2" invertAxis="true" mouseSpeedFactor="0.25" iconName="REEL_TRANSLATE_Y" />
                <rotation rotSpeed="10" rotAcceleration="40" rotMax="0" rotMin="-25" startRot="-25"/>
                <dependentPart node="reelArmHydraulic" />
                <dependentPart node="sensorArm01" />
            </movingTool>

            <movingTool node="reel2">
                <dependentPart node="spike01" />
                <dependentPart node="spike02" />
                <dependentPart node="spike03" />
                <dependentPart node="spike04" />
                <dependentPart node="spike05" />
                <dependentPart node="spike06" />
            </movingTool>
            <movingTool node="groundAdjusment" playSound="false">
                <dependentPart node="groundAdjusmentPart01" />
            </movingTool>
        </movingTools>

        <movingParts>
            <movingPart node="spike01" referenceFrame="reelArm"/>
            <movingPart node="spike02" referenceFrame="reelArm"/>
            <movingPart node="spike03" referenceFrame="reelArm"/>
            <movingPart node="spike04" referenceFrame="reelArm"/>
            <movingPart node="spike05" referenceFrame="reelArm"/>
            <movingPart node="spike06" referenceFrame="reelArm"/>

            <movingPart node="reelArmHydraulic" referencePoint="reelArmHydraulicRef" referenceFrame="reelArmHydraulicRef">
                <translatingPart node="reelArmHydraulicPunch" />
            </movingPart>
            <movingPart node="reelMoverHydraulic" referencePoint="reelMoverHydraulicRef" referenceFrame="reelMoverHydraulicRef">
                <translatingPart node="reelMoverHydraulicPunch" />
            </movingPart>

            <movingPart node="sensorArm01" localReferencePoint="sensorArm02" referencePoint="sensorArm02Ref" referenceFrame="sensorArm01RefFrame">
                <dependentPart node="sensorArm02" />
            </movingPart>
            <movingPart node="sensorArm02" referencePoint="sensorArm02Ref" referenceFrame="sensorArm02Ref"/>
            <movingPart node="sensorArm03" localReferencePoint="sensorArm04" referencePoint="sensorArm04Ref" referenceFrame="sensorArm03RefFrame">
                <dependentPart node="sensorArm04" />
            </movingPart>
            <movingPart node="sensorArm04" referencePoint="sensorArm04Ref" referenceFrame="sensorArm04Ref"/>
            <movingPart node="groundAdjusmentPart01" localReferencePoint="groundAdjusmentPart02" referencePoint="groundAdjusmentPart02Ref" referenceFrame="groundAdjusmentPart01RefFrame" isActiveDirty="true" maxUpdateDistance="50">
                <dependentPart node="groundAdjusmentPart02" />
            </movingPart>
            <movingPart node="groundAdjusmentPart02" referencePoint="groundAdjusmentPart02Ref" referenceFrame="groundAdjusmentPart02Ref"/>
        </movingParts>

        <sounds>
            <hydraulic template="defaultHydraulicSound" pitchScale="1.2" volumeScale="1.0" fadeIn="0.1" fadeOut="0.05" linkNode="powerFlow30FT_main_component1"/>
        </sounds>
    </cylindered>

    <dynamicMount forceLimitScale="1" />

    <cutter fruitTypeCategories="grainHeader">
        <fruitExtraObjects>
             <fruitExtraObject fruitType="canola" node="canolaExtension"/>
             <fruitExtraObject fruitType="wheat" node="grainExtension" isDefault="true"/>
             <fruitExtraObject fruitType="barley" node="grainExtension"/>
             <fruitExtraObject fruitType="soybean" node="grainExtension"/>
             <fruitExtraObject fruitType="oat" node="grainExtension"/>
             <fruitExtraObject fruitType="sorghum" node="grainExtension"/>
         </fruitExtraObjects>

        <effect>
            <effectNode effectClass="CutterMotionPathEffect" effectType="CUTTER" linkNode="cutterEffectLinkNode">
                <motionPathEffect textureFilename="$data/effects/cutter/arrays/grainheader/beltZdrumArray.dds" numRows="32" rowLength="42" minFade="0.06" textureRealWidth="16" speedScale="0.17"/>
            </effectNode>
            <effectNode effectClass="ParticleEffect" effectNode="smokeEmitter" particleType="SMOKE" materialType="smokeParticle" emitCountScale="0.1" worldSpace="false" useCuttingWidth="false" />
        </effect>

        <animationNodes>
            <animationNode node="mainDrum" rotAxis="1" rotSpeed="700"  turnOnFadeTime="2" turnOffFadeTime="3"/>
            <animationNode node="reel" rotAxis="1" rotSpeed="210"  turnOnFadeTime="2" turnOffFadeTime="3"/>
            <animationNode node="reel2" rotAxis="1" rotSpeed="210"  turnOnFadeTime="2" turnOffFadeTime="3"/>
            <animationNode class="ScrollingAnimation" node="belt" shaderParameterComponent="2" scrollSpeed="-0.3" turnOnFadeTime="2" turnOffFadeTime="3"/>
            <animationNode class="ScrollingAnimation" node="chain" shaderParameterComponent="2" scrollSpeed="1" turnOnFadeTime="2" turnOffFadeTime="3"/>
        </animationNodes>

        <spikedDrums>
            <spikedDrum node="mainDrum" spline="mainDrumSpline">
                <spike node="drumSpike01"/>
                <spike node="drumSpike02"/>
                <spike node="drumSpike03"/>
                <spike node="drumSpike04"/>
                <spike node="drumSpike05"/>
                <spike node="drumSpike06"/>
            </spikedDrum>
        </spikedDrums>

        <automaticTilt raycastNode1="heightNode01" raycastNode2="heightNode03"/>
        <sounds>
            <cut template="cropCutting" />
        </sounds>
    </cutter>

    <turnOnVehicle turnedOnByAttacherVehicle="true">
        <turnedOnAnimation name="turnedOnAnimation" speedScale="2.75" turnOnFadeTime="2" turnOffFadeTime="3"/>
        <sounds>
            <start template="HARVESTER_TOOL_START" volumeScale="1.5" />
            <work  template="HARVESTER_TOOL_WORK"  volumeScale="1.5" />
            <stop  template="HARVESTER_TOOL_STOP"  volumeScale="1.5" />
        </sounds>
    </turnOnVehicle>

    <designConfigurations>
        <designConfiguration name="Fendt" price="0" vehicleBrand="FENDT">
            <objectChange node="decals_mf"  visibilityActive="false"/>
            <objectChange node="decals_fendt"  visibilityActive="true"/>
        </designConfiguration>
        <designConfiguration name="Massey Ferguson" price="0" isSelectable="false">
            <objectChange node="decals_mf"  visibilityActive="true"/>
            <objectChange node="decals_fendt"  visibilityActive="false"/>
        </designConfiguration>
    </designConfigurations>

    <design2Configurations>
        <design2Configuration name="$l10n_configuration_valueDesign01" price="0">
            <objectChange node="design01"  visibilityActive="true" visibilityInactive="false"/>
            <objectChange node="design02"  visibilityActive="false" visibilityInactive="true"/>
        </design2Configuration>
        <design2Configuration name="$l10n_configuration_valueDesign02" price="0"/>
    </design2Configurations>

    <ai>
        <areaMarkers leftNode="aiMarkerLeft" rightNode="aiMarkerRight" backNode="aiMarkerBack" />
        <sizeMarkers leftNode="sizeMarkerLeft" rightNode="sizeMarkerRight" backNode="sizeMarkerBack" />
        <collisionTrigger node="aiCollisionNode" width="10" height="2.0"/>
        <agentAttachment width="10.05" height="2" length="3.2" lengthOffset="-0.3"/>
    </ai>

    <foliageBending>
        <bendingNode minX="-4.95" maxX="4.95" minZ="-1.9" maxZ="0.2" yOffset="0.0" />
    </foliageBending>

    <baseMaterial>
        <material name="powerFlow30FT_mat" baseNode="powerFlow30FT_vis">
            <shaderParameter name="colorMat0" value="AGCO_GREY1"/>
            <shaderParameter name="colorMat1" value="AGCO_GREY3"/>
        </material>
        <material name="powerFlow30FTTweak_mat" baseNode="autoDockMounting_vis">
            <shaderParameter name="colorMat0" value="AGCO_GREY1"/>
        </material>
    </baseMaterial>

    <wearable wearDuration="480" workMultiplier="5" fieldMultiplier="2"/>
    <washable dirtDuration="90" washDuration="1" workMultiplier="4" fieldMultiplier="2"/>

    <i3dMappings>
        <i3dMapping id="powerFlow30FT_main_component1" node="0>" />
        <i3dMapping id="powerFlow30FT_vis" node="0>0" />
        <i3dMapping id="attacherJoint" node="0>0|0|0" />
        <i3dMapping id="heightNode01" node="0>0|0|1" />
        <i3dMapping id="heightNode02" node="0>0|0|2" />
        <i3dMapping id="heightNode03" node="0>0|0|3" />
        <i3dMapping id="autoDockCover" node="0>0|0|4|0" />
        <i3dMapping id="workAreaStart" node="0>0|1|0" />
        <i3dMapping id="workAreaWidth" node="0>0|1|1" />
        <i3dMapping id="workAreaHeight" node="0>0|1|2" />
        <i3dMapping id="sideMarker06Red_01" node="0>0|2|0" />
        <i3dMapping id="reelArm" node="0>0|3|0" />
        <i3dMapping id="reelMover" node="0>0|3|0|0|0" />
        <i3dMapping id="reelMoverHydraulicRef" node="0>0|3|0|0|0|0" />
        <i3dMapping id="reel" node="0>0|3|0|0|0|1" />
        <i3dMapping id="spike01" node="0>0|3|0|0|0|1|0" />
        <i3dMapping id="spike02" node="0>0|3|0|0|0|1|1" />
        <i3dMapping id="spike03" node="0>0|3|0|0|0|1|2" />
        <i3dMapping id="spike04" node="0>0|3|0|0|0|1|3" />
        <i3dMapping id="spike05" node="0>0|3|0|0|0|1|4" />
        <i3dMapping id="spike06" node="0>0|3|0|0|0|1|5" />
        <i3dMapping id="reel2" node="0>0|3|0|0|0|2" />
        <i3dMapping id="sensorArm04Ref" node="0>0|3|0|0|0|3" />
        <i3dMapping id="reelArmHydraulicRef" node="0>0|3|0|1" />
        <i3dMapping id="reelMoverHydraulic" node="0>0|3|0|2" />
        <i3dMapping id="reelMoverHydraulicPunch" node="0>0|3|0|2|0" />
        <i3dMapping id="sensorArm02Ref" node="0>0|3|0|4" />
        <i3dMapping id="sensorArm03RefFrame" node="0>0|3|0|5" />
        <i3dMapping id="sensorArm03" node="0>0|3|0|5|0" />
        <i3dMapping id="sensorArm04" node="0>0|3|0|5|0|0" />
        <i3dMapping id="reelArmHydraulic" node="0>0|3|1" />
        <i3dMapping id="reelArmHydraulicPunch" node="0>0|3|1|0" />
        <i3dMapping id="mainDrum" node="0>0|3|2" />
        <i3dMapping id="drumSpike01" node="0>0|3|2|0" />
        <i3dMapping id="drumSpike02" node="0>0|3|2|1" />
        <i3dMapping id="drumSpike03" node="0>0|3|2|2" />
        <i3dMapping id="drumSpike04" node="0>0|3|2|3" />
        <i3dMapping id="drumSpike05" node="0>0|3|2|4" />
        <i3dMapping id="drumSpike06" node="0>0|3|2|5" />
        <i3dMapping id="bladeMounting" node="0>0|3|3" />
        <i3dMapping id="belt" node="0>0|3|4" />
        <i3dMapping id="mainDrumSpline" node="0>0|3|5" />
        <i3dMapping id="sensorArm01RefFrame" node="0>0|3|6" />
        <i3dMapping id="sensorArm01" node="0>0|3|6|0" />
        <i3dMapping id="sensorArm02" node="0>0|3|6|0|0" />
        <i3dMapping id="groundAdjusment" node="0>0|3|7" />
        <i3dMapping id="groundAdjusmentPart02Ref" node="0>0|3|7|0" />
        <i3dMapping id="groundAdjusmentPart01RefFrame" node="0>0|3|8" />
        <i3dMapping id="groundAdjusmentPart01" node="0>0|3|8|0" />
        <i3dMapping id="groundAdjusmentPart02" node="0>0|3|8|0|0" />
        <i3dMapping id="chain" node="0>0|3|9" />
        <i3dMapping id="cutterEffectLinkNode" node="0>0|4|0" />
        <i3dMapping id="smokeEmitter" node="0>0|4|1" />
        <i3dMapping id="aiCollisionNode" node="0>0|5|0" />
        <i3dMapping id="aiMarkerLeft" node="0>0|5|1" />
        <i3dMapping id="aiMarkerRight" node="0>0|5|2" />
        <i3dMapping id="aiMarkerBack" node="0>0|5|3" />
        <i3dMapping id="sizeMarkerLeft" node="0>0|5|4" />
        <i3dMapping id="sizeMarkerRight" node="0>0|5|5" />
        <i3dMapping id="sizeMarkerBack" node="0>0|5|6" />
        <i3dMapping id="decals_mf" node="0>0|6|0" />
        <i3dMapping id="decals_fendt" node="0>0|6|1" />
        <i3dMapping id="cover" node="0>0|6|2" />
        <i3dMapping id="canolaExtension" node="0>0|6|3" />
        <i3dMapping id="grainExtension" node="0>0|6|4" />
        <i3dMapping id="design01" node="0>0|6|5" />
        <i3dMapping id="design02" node="0>0|6|6" />
        <i3dMapping id="autoDockMounting_vis" node="0>0|7|3" />
    </i3dMappings>
</vehicle>
