<?xml version="1.0"?>

<!-- DaSH Human-Powered Airplane    -->
<!-- Copyright 2014 Marshall Gusman -->

<PropertyList>
  <sim include="dash-views.xml">
    <tags>
        <tag>human-power</tag>
        <tag>single-motor</tag>
        <tag>electric</tag>
        <tag>experimental</tag>
        <tag>fixed-gear</tag>
        <tag>fixed-pitch</tag>
        <tag>propeller</tag>
    </tags>
    <description>DaSH v5 human-powered airplane</description>
    
    <aircraft-version>20140905</aircraft-version>
    <minimum-fg-version>2018.2.0</minimum-fg-version>
    <status>development</status>

    <rating>
        <FDM type="int">4</FDM>
        <systems type="int">3</systems>
        <model type="int">4</model>
        <cockpit type="int">1</cockpit>
    </rating>
    
    <author>Marshall Gusman (FDM), Wayne Bragg (3D, power curves, effects)</author>
    
    <flight-model>jsb</flight-model>
    
    <aero>dash-fdm</aero>

    <!-- Splash screens. One is randomly chosen when FlightGear starts -->
    <previews>
        <preview>
            <type>exterior</type>
            <path>Previews/image1.jpg</path>
            <splash type="bool">true</splash>
        </preview>
        <preview>
            <type>exterior</type>
            <path>Previews/image2.jpg</path>
            <splash type="bool">true</splash>
        </preview>
        <preview>
            <type>exterior</type>
            <path>Previews/image3.jpg</path>
            <splash type="bool">true</splash>
        </preview>
        <preview>
            <type>exterior</type>
            <path>Previews/image4.jpg</path>
            <splash type="bool">true</splash>
        </preview>
        <preview>
            <type>exterior</type>
            <path>Previews/image5.jpg</path>
            <splash type="bool">true</splash>
        </preview>
    </previews>
    <startup>
        <splash-texture>Aircraft/DaSH/Previews/image1.jpg</splash-texture>
    </startup>

    <model>
      <path>Aircraft/DaSH/Models/dash-model.xml</path>
	  <occupants type="bool">true</occupants>
      <startup>
        <location type="int">0</location>
      </startup>
    </model>

<!--
<sound><path></path></sound>
The path to your aircraft's sound file, do not include if you don't have one. The pitch and volume of the sound is controlled by the xml file and throttle position. If for example you find a nice wav file of the jet engine you're using, you can fix it up with your favorite sound editor so it loops nicely and include that into your model (I've noticed a few models where it can get quite annoying when the loop length is so small you can really notice it) so make it smooth.

For additional information, you'll want to check out $FG ROOT/Docs/README.xmlsound

<panel><path></path></panel>
Where to find the (2D) panel. We prefer 3D cockpits, which are linked in the model .xml file.

More info here: http://wiki.flightgear.org/XML#3._Data
-->
    <systems>

        <!-- Needed by shadows in ALS and other ground effects:
            http://forum.flightgear.org/viewtopic.php?f=4&t=25157&start=75#p232120
        -->
        <property-rule n="101">
            <path>Aircraft/DaSH/Systems/ground-effects.xml</path>
        </property-rule>
        <property-rule n="102">
            <path>Aircraft/DaSH/Systems/wingflex.xml</path>
        </property-rule>

    </systems>
    
    <!-- Save some properties when the simulator is shut down -->
    <aircraft-data>
        <!--path>fdm/jsbsim/power-curve</path>
        <path>fdm/jsbsim/pedal-power</path-->
        <path>/sim/rendering/shadow-volume</path>
        <path>/sim/gui/show-power-output</path>
        <path>/sim/rendering/compass</path>
        <path>/sim/rendering/ramp</path>
        <path>/sim/model/occupants</path>
    </aircraft-data>

    <multiplay>
        <chat_display>1</chat_display>
        <generic>
            <bool n="0" alias="/sim/model/occupants"/>
        </generic>
    </multiplay>

    <!--flight-recorder>
        <replay-config type="int">0</replay-config>
        <config n="0" include="Systems/flight-recorder/flight-recorder.xml">
            <name type="string">DaSH Flight Recorder</name>
        </config>
    </flight-recorder-->

    <menubar include="gui/dialogs/dash-menu.xml"/>

    <!-- Enable the ALS shadow volume by default -->
    <rendering>
        <shadow-volume type="bool">true</shadow-volume>
        <reset type="bool">false</reset>
        <course type="bool">false</course>
        <ramp type="bool">false</ramp>
        <warrenramp type="bool">false</warrenramp>
        <course-pole-type type="bool">false</course-pole-type>
        <compass type="bool">false</compass>
    </rendering>

    <gui>
        <show-power-output type="bool">false</show-power-output>
    </gui>

 </sim>
    
    <controls>
        <gear>
            <brake-parking type="int">1</brake-parking>
            <peddling type="bool">0</peddling>
        </gear>
    </controls>

    <input>
        <keyboard include="dash-keyboard.xml"/>
    </input>

    <engines>
        <!-- Following properties are part of a static list of properties
             that FlightGear transmits during multiplay. Because the number
             of properties in /sim/multiplay/generic/ is quite limited and
             the properties in /engines/ are unused, we can use them instead
             to get FlightGear to transmit all the required properties.
        -->

        <!-- Rotation of tires -->
        <engine n="3">
            <n1 alias="/gear/gear[0]/rollspeed-ms"/>
            <n2 alias="/gear/gear[1]/rollspeed-ms"/>
        </engine>
    </engines>

    <nasal>
        <dash>
            <file>Nasal/dash.nas</file>
            <file>Nasal/flashlight.nas</file>
            <file>Nasal/addon-resources.nas</file>
            <file>Nasal/restart.nas</file>
        </dash>
    </nasal>

    <payload> 
        <weight>
            <name type="string">Pilot Weight</name>
            <weight-lb alias="/fdm/jsbsim/inertia/pointmass-weight-lbs[0]"/>
            <arm-in alias="/fdm/jsbsim/inertia/pointmass-location-X-inches[0]"/>
            <min-lb type="double">0.0</min-lb>
            <max-lb type="double">210.0</max-lb>
        </weight>
    </payload>

    <fdm>
        <jsbsim>
            <electric-power type="int">1</electric-power>
            <power-curve type="int">7</power-curve>
            <user-power-curve>
                <user-exponent type="double">0</user-exponent>
                <user-coefficient type="double">0</user-coefficient>
            </user-power-curve>
            <elapsed-time type="double">0.0</elapsed-time>
			<dash>
			    <curve-texta type="string">The user defined power curve function allows the user to configure the DaSH to be powered consistant with their own personal statistical data sets.</curve-texta>
                <curve-textb type="string">The 4 sustained outputs are common trend point of human power generation.</curve-textb>
            	<curve-textc type="string">The Human Power Curves are taken from existing data compiled by NASA and from actual data points collected from various competitions and events. These configurations mimic real life human power output limitations over time. (See DaSH\Systems\dash-power-curves.xml and \DaSH\Images\humanpoweroutput.jpg for more information).</curve-textc>
                <curve-textd type="string">The throttle controlled "Electric Motor" configuration allows the user complete controll over the watts to be applied to the DaSH aircraft. Use this configuration along with the "Show Power Output" dialog to fine tune the power level.</curve-textd>
            </dash>
        </jsbsim>
   </fdm>
</PropertyList>
