<?xml version="1.0"?>
<!--
************************************************************************
JSBSim Cessna 172P with 3D cockpit.

Started October 23 2001 by John Check, fgpanels@rockfish.net
************************************************************************
-->

<PropertyList>

 <sim>

  <description>Cessna 172P Skyhawk (1981 model)</description>
  <author>David Megginson, Horacio Contreras (Cockpit Textures)</author>
  <status>production</status>

  <flight-model archive="y">jsb</flight-model>
  <aero archive="y">c172p</aero>

  <model>
    <path archive="y">Aircraft/c172p/Models/c172p.xml</path>

    <livery>
      <file type="string">n301dp</file>
      <index type="int">0</index>
    </livery>

    <liverytail>
      <file type="string">n301dp</file>
      <index type="int">0</index>
    </liverytail>
	    
    <liverywing>
      <file type="string">n301dp</file>
      <index type="int">0</index>
    </liverywing>
	    
    <c172p>
      <immat>false</immat>
      <fairing1>true</fairing1>
      <fairing2>false</fairing2>
      <fairing3>false</fairing3>
    </c172p>

  </model>

  <startup>
    <splash-texture>Aircraft/c172p/splash.png</splash-texture>
  </startup>

  <!-- hide the 2D panel -->
 
  <panel>
   <visibility archive="y">false</visibility>
  </panel>

  <!-- position the pilot viewpoint and angle -->
 
  <view>
   <internal archive="y">true</internal>
   <config>
     <x-offset-m archive="y">-0.21</x-offset-m>
     <y-offset-m archive="y">0.235</y-offset-m>
     <z-offset-m archive="y">0.36</z-offset-m>
     <pitch-offset-deg>-12</pitch-offset-deg>
   </config>
  </view>
  
	<view n="100">
		<name>Co-pilot</name>
		<type>lookfrom</type>
		<internal type="bool">true</internal>
		<config>
			<from-model type="bool">true</from-model>
			<from-model-idx type="int">0</from-model-idx>
			<ground-level-nearplane-m type="double">2f</ground-level-nearplane-m>
			<x-offset-m type="double">0.21</x-offset-m>
			<y-offset-m type="double">0.235</y-offset-m>
			<z-offset-m type="double">0.36</z-offset-m>
			<pitch-offset-deg>-12</pitch-offset-deg>
			<limits>
				<enabled type="bool">true</enabled>
				<left>
					<heading-max-deg type="double">160</heading-max-deg>
					<x-offset-max-m type="double">0.30</x-offset-max-m>
					<x-offset-threshold-deg type="double">65</x-offset-threshold-deg>
				</left>
				<right>
					<heading-max-deg type="double">140</heading-max-deg>
					<x-offset-max-m type="double">0.15</x-offset-max-m>
					<x-offset-threshold-deg type="double">65</x-offset-threshold-deg>
				</right>
			</limits>
			<default-field-of-view-deg type="double">75</default-field-of-view-deg>
		</config>
	</view>

	<view n="101">
		<name>Passenger</name>
		<type>lookfrom</type>
		<internal type="bool">true</internal>
		<config>
			<from-model type="bool">true</from-model>
			<from-model-idx type="int">0</from-model-idx>
			<ground-level-nearplane-m type="double">2f</ground-level-nearplane-m>
			<x-offset-m type="double">0.0</x-offset-m>
			<y-offset-m type="double">0.205</y-offset-m>
			<z-offset-m type="double">1.0</z-offset-m>
			<pitch-offset-deg>-10</pitch-offset-deg>
			<limits>
				<enabled type="bool">true</enabled>
				<left>
					<heading-max-deg type="double">150</heading-max-deg>
					<x-offset-max-m type="double">0.30</x-offset-max-m>
					<x-offset-threshold-deg type="double">65</x-offset-threshold-deg>
				</left>
				<right>
					<heading-max-deg type="double">150</heading-max-deg>
					<x-offset-max-m type="double">0.30</x-offset-max-m>
					<x-offset-threshold-deg type="double">65</x-offset-threshold-deg>
				</right>
			</limits>
			<default-field-of-view-deg type="double">65</default-field-of-view-deg>
		</config>
	</view>

  <systems>
    <autopilot>
      <path>Aircraft/c172p/Systems/KAP140.xml</path>
    </autopilot>
    <electrical>
      <!-- null electrical system path here so we can use a nasal based -->
      <!-- model defined later in the nasal section of this file. -->
      <path></path>
    </electrical>
  </systems>

  <sound>
   <path archive="y">Aircraft/c172p/c172-sound.xml</path>
  </sound>

  <help include="c172-help.xml"/>

  <tutorials include="Tutorials/c172-tutorials.xml"/>

  <multiplay>
      <chat_display>1</chat_display>
      <generic>
        <int type="int">0</int>
        <int type="int">0</int>
        <int type="int">0</int>
        <int type="int">0</int>
        <int type="int">0</int>
        <int type="int">0</int>
      </generic>
  </multiplay>
  
  <menubar include="Dialogs/c172p-menu.xml"/>

 </sim>

 <!-- trim for level cruise -->

 <controls>
  <flight>
   <aileron-trim>0.027</aileron-trim>
   <rudder-trim>0.0</rudder-trim>
  </flight>
  <engines>
   <engine n="0">
    <magnetos>3</magnetos>
   </engine>
  </engines>
 </controls>

 <autopilot>
  <KAP140>
   <settings>
    <auto-pitch-trim type="bool">true</auto-pitch-trim>
   </settings>
  </KAP140>
 </autopilot>

 <consumables>
  <fuel>
   <tank n="0">
    <level-gal_us>20</level-gal_us>
   </tank>
   <tank n="1">
    <level-gal_us>20</level-gal_us>
   </tank>
  </fuel>
 </consumables>

 <instrumentation>
  <kma20 include="../Instruments-3d/kma20/kma20init.xml"/>
  <attitude-indicator>
   <config>
    <tumble-flag archive="y" type="bool">true</tumble-flag>
   </config>
  </attitude-indicator>
  <encoder>
   <serviceable type="bool">true</serviceable>
  </encoder>
 </instrumentation>

 <engines>
  <engine>
     <rpm type="double">0</rpm>
     <magnetos type="int">0</magnetos>
     <mixture type="double">0</mixture>
     <running type="bool">false</running>
  </engine>
 </engines>

 <lighting>
			<strobe type="bool">true</strobe>
			<beacon type="bool">true</beacon>
			<nav-lights type="bool">true</nav-lights>
 </lighting>

 <nasal>
 
    <c172p>
      <file>Aircraft/c172p/Nasal/liveries.nas</file>
      <file>Aircraft/c172p/Nasal/immat.nas</file>
      <file>Aircraft/c172p/Nasal/doors.nas</file>
      <file>Aircraft/c172p/Nasal/light.nas</file>
      <file>Aircraft/c172p/Nasal/action-sim.nas</file>
      <file>Aircraft/c172p/Nasal/ki266.nas</file>
      <script><![CDATA[
        ki266.new(0);
      ]]></script>
    </c172p>

  <electrical>
   <file>Aircraft/c172p/Nasal/c172-electrical.nas</file>
  </electrical>
  <kap140>
   <file>Aircraft/Generic/kap140.nas</file>
   <!-- We can set some variables that might be
        aircraft specific. We must do it after the file
        to override the ones that are in the .nas file.-->
   <script><![CDATA[
                    headingNeedleDeflection = "/instrumentation/nav/heading-needle-deflection";
                    gsNeedleDeflection = "/instrumentation/nav/gs-needle-deflection-norm";
                    staticPressure = "systems/static/pressure-inhg";
    ]]>
   </script>
  </kap140>
  <kr87>
            <file>Aircraft/c172p/Nasal/kr87.nas</file>
        </kr87>
 </nasal>
 <payload>
  <weight>
   <name type="string">Pilot</name>
   <weight-lb alias="/fdm/jsbsim/inertia/pointmass-weight-lbs[0]"/>
   <min-lb type="double">0.0</min-lb>
   <max-lb type="double">300.0</max-lb>
  </weight>
  <weight>
   <name type="string">Co-Pilot</name>
   <weight-lb alias="/fdm/jsbsim/inertia/pointmass-weight-lbs[1]"/>
   <min-lb type="double">0.0</min-lb>
   <max-lb type="double">300.0</max-lb>
  </weight>
  <weight>
   <name type="string">Left Passenger</name>
   <weight-lb alias="/fdm/jsbsim/inertia/pointmass-weight-lbs[2]"/>
   <min-lb type="double">0.0</min-lb>
   <max-lb type="double">300.0</max-lb>
  </weight>
  <weight>
   <name type="string">Right Passenger</name>
   <weight-lb alias="/fdm/jsbsim/inertia/pointmass-weight-lbs[3]"/>
   <min-lb type="double">0.0</min-lb>
   <max-lb type="double">300.0</max-lb>
  </weight>
  <weight>
   <name type="string">Baggage</name>
   <weight-lb alias="/fdm/jsbsim/inertia/pointmass-weight-lbs[4]"/>
   <min-lb type="double">0.0</min-lb>
   <max-lb type="double">150.0</max-lb> <!-- WARNING: Max baggage "by the book" is 120lbs or less! -->
  </weight>
 </payload>  

 <input>
   <keyboard>
     <key n="115">
     <name>s</name>
     <desc>Toggle Starter Switch</desc>
     <binding>
       <command>property-assign</command>
       <property>/controls/switches/starter</property>
       <value >1</value>
     </binding>
     <mod-up>
       <binding>
         <command>property-assign</command>
         <property>/controls/switches/starter</property>
         <value>0</value>
       </binding>
     </mod-up>
    </key>
  </keyboard> 
 </input>

</PropertyList>
