<?xml version="1.0" encoding="utf-8" standalone="no"?>
<vehicle type="mulcherRoll" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://validation.gdn.giants-software.com//xml/fs22/vehicle.xsd">
    <annotation>Copyright (C) GIANTS Software GmbH, All Rights Reserved.</annotation>

    <storeData>
        <name>WNS 300</name>
        <specs>
            <neededPower>60</neededPower>
            <workingWidth>3</workingWidth>
			<combination filterCategory="weights" filterSpec="weight" filterSpecMin="200" filterSpecMax="900"/>
		</specs>
        <functions>
            <function>$l10n_function_mulcher</function>
        </functions>
        <image>store/store_WNS.png</image>
        <price>5500</price>
        <lifetime>300</lifetime>
        <rotation>180</rotation>
        <brand>LANDSTAL</brand>
        <category>mulchers</category>
        <vertexBufferMemoryUsage>634624</vertexBufferMemoryUsage>
        <indexBufferMemoryUsage>161024</indexBufferMemoryUsage>
        <textureMemoryUsage>851968</textureMemoryUsage>
        <audioMemoryUsage>0</audioMemoryUsage>
        <instanceVertexBufferMemoryUsage>0</instanceVertexBufferMemoryUsage>
        <instanceIndexBufferMemoryUsage>0</instanceIndexBufferMemoryUsage>
    </storeData>

    <base>
        <typeDesc>$l10n_typeDesc_mulcher</typeDesc>
        <filename>i3d/WNS.i3d</filename>
        <size width="3" length="1.5" height="1"/>
        <speedLimit value="20"/>
        <components>
            <component centerOfMass="0 0.15 0" solverIterationCount="10" mass="940" />
        </components>
        <schemaOverlay attacherJointPosition="0 0" name="IMPLEMENT" />
    </base>

    <wheels>
        <wheelConfigurations>
            <wheelConfiguration name="$l10n_configuration_valueDefault" price="0">
                <wheels>
                    <wheel>
                        <physics tipOcclusionAreaGroupId="2" restLoad="0.25" repr="0>0|5|3|0"  radius="0.13" width="0.3" mass="0.05" forcePointRatio="0.1" initialCompression="25" suspTravel="0.15" spring="5" damper="10" rotationDamping="0.00001"/>
                    </wheel>
                    <wheel>
                        <physics tipOcclusionAreaGroupId="2" restLoad="0.25" repr="0>0|5|3|1" radius="0.13" width="0.3" mass="0.05" forcePointRatio="0.1" initialCompression="25" suspTravel="0.15" spring="5" damper="10" rotationDamping="0.00001"/>
                    </wheel>
                    <wheel>
                        <physics tipOcclusionAreaGroupId="2" restLoad="0.25" repr="0>0|5|4|0"   radius="0.13" width="0.3" mass="0.05" forcePointRatio="0.1" initialCompression="25" suspTravel="0.15" spring="5" damper="10" rotationDamping="0.00001"/>
                    </wheel>
                    <wheel>
                        <physics tipOcclusionAreaGroupId="2" restLoad="0.25" repr="0>0|5|4|1"  radius="0.13" width="0.3" mass="0.05" forcePointRatio="0.1" initialCompression="25" suspTravel="0.15" spring="5" damper="10" rotationDamping="0.00001"/>
                    </wheel>
                </wheels>
            </wheelConfiguration>
        </wheelConfigurations>
    </wheels>

    <attachable>
        <inputAttacherJoints>
            <inputAttacherJoint node="0>0|0|0" jointType="implement" topReferenceNode="0>0|0|1" lowerRotationOffset="0" lowerRotLimitScale="0 0 -0.35">
                <distanceToGround lower="0.4" upper="1.05"/>
				<bottomArm categories="2" ballType="1" />
            </inputAttacherJoint>
        </inputAttacherJoints>
        <support animationName="moveSupport" />
		<brakeForce force="0.05"/>
    </attachable>
	
	<attacherJointControl maxTiltAngle="30">
        <control controlFunction="controlAttacherJointHeight" controlAxis="AXIS_HYDRAULICATTACHER1" invertControlAxis="true" mouseSpeedFactor="0.3" iconName="IMPLEMENT_ATTACHER_TRANS"/>
        <control controlFunction="controlAttacherJointTilt"   controlAxis="AXIS_HYDRAULICATTACHER2" invertControlAxis="true" mouseSpeedFactor="0.3" iconName="IMPLEMENT_ATTACHER_ROTX"/>
    </attacherJointControl>
	
	<powerConsumer forceNode="0>" maxForce="4" />

    <speedRotatingParts>
		<speedRotatingPart node="0>0|5|1" radius="0.13"  wheelNodes="0>0|5|3|0 0>0|5|3|1"/>
		<speedRotatingPart node="0>0|5|2" radius="0.13"  wheelNodes="0>0|5|4|0 0>0|5|4|1"/>
    </speedRotatingParts>

    <groundReferenceNodes>
        <groundReferenceNode node="0>0|1|3" threshold="0.1" depthNode="0>0|1|3"/>
    </groundReferenceNodes>

    <workAreas>
        <workArea type="mulcher" functionName="processMulcherArea" needsSetIsTurnedOn="false" disableBackwards="false">
            <area startNode="0>0|1|0" widthNode="0>0|1|1" heightNode="0>0|1|2"/>
            <groundReferenceNode index="1"/>
            <onlyActiveWhenLowered value="true"/>
        </workArea>
    </workAreas>

    <mulcher>
		<effects>
            <effect workAreaIndex="1" activeDirection="1">
                <effectNode effectClass="TypedMotionPathEffect" effectType="MULCHER" linkNode="0>0|2|1">
                    <motionPathEffect textureFilename="$data/vehicles/knoche/speedmax300/mulcherEffectArray.dds" numRows="30" rowLength="18" minFade="0.15" shapeScale="0.2" maxShapeScale="2"/>
                </effectNode>
                <effectNode effectNode="0>0|2|0" effectClass="ParticleEffect" particleType="smoke" materialType="smokeParticle" worldSpace="false" emitCountScale="0.3"/>
            </effect>
            <effect workAreaIndex="1" activeDirection="-1">
                <effectNode effectClass="TypedMotionPathEffect" effectType="MULCHER" linkNode="0>0|2|2">
                    <motionPathEffect textureFilename="$data/vehicles/knoche/speedmax300/mulcherEffectArray.dds" numRows="30" rowLength="18" minFade="0.15" shapeScale="0.2" maxShapeScale="2"/>
                </effectNode>
                <effectNode effectNode="0>0|2|0" effectClass="ParticleEffect" particleType="smoke" materialType="smokeParticle" worldSpace="false" emitCountScale="0.3"/>
            </effect>
        </effects>
        <sounds>
            <work template="crushingStubbles"  fadeIn="0.2" pitchScale="1.0" >
                <volume indoor="0.4" outdoor="1.5" />
            </work>
            <idle template="weederWorkLoop"   fadeIn="0.1" fadeOut="0.1" innerRadius="8" outerRadius="60" pitchScale="1.0"  volumeScale="0.7"/>
            <idle template="meadowRollerWork" fadeIn="0.1" fadeOut="0.1" innerRadius="8" volumeScale="0.5" outerRadius="60" pitchScale="1.0"  isLocalSound="true"/>
        </sounds>
    </mulcher>

    <designConfigurations title="$l10n_configuration_weight">
        <designConfiguration name="$l10n_configuration_valueNo" price="0">
            <objectChange node="0>" massActive="940"/>
			<objectChange node="0>0|6|1|0" visibilityActive="false" />
			<objectChange node="0>0|6|1|1" visibilityActive="false"/>
        </designConfiguration>
        <designConfiguration name="$l10n_configuration_frontWeightX" price="200" params="100">
            <objectChange node="0>" massActive="1040" />
			<objectChange node="0>0|6|1|0" visibilityActive="true" />
			<objectChange node="0>0|6|1|1" visibilityActive="false"/>
			<objectChange node="0>0|6|1|0|1" translationActive="0 0 -0.076"/>
        </designConfiguration>
		<designConfiguration name="$l10n_configuration_frontWeightX" price="400" params="200">
            <objectChange node="0>" massActive="1140" />
			<objectChange node="0>0|6|1|0" visibilityActive="true" />
			<objectChange node="0>0|6|1|1" visibilityActive="true"/>
			<objectChange node="0>0|6|1|0|1" translationActive="0 0 0"/>
        </designConfiguration>
    </designConfigurations>
	
	<design2Configurations title="$l10n_configuration_belka" isYesNoOption="true">
        <design2Configuration name="$l10n_configuration_valueNo" price="0">
			<objectChange node="0>0|6|0" visibilityActive="false" />
			<objectChange node="0>0|6|0|2" compoundChildActive="false"/>
			<objectChange node="0>0|6|0|3" compoundChildActive="false"/>
        </design2Configuration>
        <design2Configuration name="$l10n_configuration_valueYes" price="500">
			<objectChange node="0>0|6|0" visibilityActive="true" />
			<objectChange node="0>0|6|0|2" compoundChildActive="true"/>
			<objectChange node="0>0|6|0|3" compoundChildActive="true"/>
        </design2Configuration>
    </design2Configurations>

    <animations>
        <animation name="moveSupport">
            <part node="0>0|5|5" startTime="0" endTime="0.5" startTrans="0 0.135 0" endTrans="0 -0.01 0"  />
            <part node="0>0|5|0|1|0" startTime="0" endTime="0.5" startTrans="0 0 0" endTrans="0 -0.215 0"  />
            <part node="0>0|5|0|1|0" startTime="0.499" endTime="0.5" startScale="1 1 1" endScale="0 0 0"  />
			
            <part node="0>0|5|0|0" startTime="0.5" endTime="1" startRot="0 0 0" endRot="0 0 -90"  />
        </animation>
    </animations>

    <ai>
        <needsLowering value="true"/>
        <needsRootAlignment value="false"/>
        <areaMarkers leftNode="0>0|3|0" rightNode="0>0|3|1" backNode="0>0|3|2"/>
        <collisionTrigger node="0>0|3|3" width="3.2" height="1.5"/>
        <agentAttachment width="3.0" height="1.5" length="1.5" lengthOffset="0.05"/>
    </ai>

    <foliageBending>
        <bendingNode minX="-1.5" maxX="1.5" minZ="-0.485" maxZ="0.46" yOffset="0.1" />
    </foliageBending>

    <wearable wearDuration="480" workMultiplier="5" fieldMultiplier="2"/>
    <washable dirtDuration="90" washDuration="1" workMultiplier="6" fieldMultiplier="2"/>
</vehicle>