<?xml version="1.0"?>

<PropertyList>
	<sim>
		<description>UFO from the 'White Project' of the UNESCO</description>
		<author>ET</author>

		<flight-model>ufo</flight-model>

		<sound>
			<path>Aircraft/ufo/ufo-sound.xml</path>
		</sound>

		<panel>
			<visibility>false</visibility>
		</panel>

		<model>
			<path>Aircraft/ufo/Models/ufo.xml</path>
			<always-show-in-MP type="bool">false</always-show-in-MP>
		</model>

		<help>
			<title>UFO</title>
			<key>
				<name>joystick fire button</name>
				<desc>fly backwards</desc>
			</key>
			<key>
				<name>b</name>
				<desc>fly backwards</desc>
			</key>
			<key>
				<name>[ ]</name>
				<desc>decrease/increase maximum speed</desc>
			</key>
			<key>
				<name>mouse click</name>
				<desc>add model to scenery</desc>
			</key>
			<key>
				<name>Ctrl + mouse click</name>
				<desc>select nearest object</desc>
			</key>
			<key>
				<name>Shift + mouse click</name>
				<desc>add new object to selection</desc>
			</key>
			<key>
				<name>Shift + Ctrl + mouse click</name>
				<desc>add nearest object to selection</desc>
			</key>
			<key>
				<name>Alt + mouse click</name>
				<desc>move selected object(s) to new place</desc>
			</key>
			<key>
				<name>Ctrl + PgUp/PgDn</name>
				<desc>cycle through model list</desc>
			</key>
			<key>
				<name>Ctrl + cursor/arrow keys</name>
				<desc>move selected object(s) away/nearer/left/right</desc>
			</key>
			<key>
				<name>backspace</name>
				<desc>remove selected object(s)</desc>
			</key>
			<key>
				<name>d</name>
				<desc>dump object data to terminal</desc>
			</key>
			<key>
				<name>e</name>
				<desc>export object data</desc>
			</key>
			<key>
				<name>m</name>
				<desc>toggle marker for active (= last selected) object</desc>
			</key>
			<key>
				<name>space</name>
				<desc>open/close model select dialog</desc>
			</key>
			<key>
				<name>tab</name>
				<desc>open/close cursor dialog</desc>
			</key>

			<line>Pre-select initial model (path relative to $FG_ROOT):</line>
			<line>&#32;&#32;&#45;&#45;prop:cursor=Model/path.xml</line>
			<line/>
			<line>Set directories that are scanned for models (comma separated and</line>
			<line>relative to $FG_ROOT; default: Models):</line>
			<line>&#32;&#32;&#45;&#45;prop:source=Models,Scenery/Objects</line>
			<line/>
			<line>Exported data are written to:</line>
			<line>&#32;&#32;~/.fgfs/ufo-model-export.xml   (Unix)</line>
			<line>&#32;&#32;%APPDATA%\flightgear.org\ufo-model-export.xml   (Microsoft Windows)</line>
			<line/>
			<line>In the adjustment dialog (SPACE-key) holding the Ctrl or Shift key down</line>
			<line>makes slider effects coarser/finer.</line>
		</help>
	</sim>

	<input>
		<keyboard>
			<key n="8">
				<name>Backspace</name>
				<desc>Remove selected object</desc>
				<binding>
					<command>nasal</command>
					<script>ufo.modelmgr.remove_selected()</script>
				</binding>
			</key>

			<key n="9">
				<name>Ctrl-I</name>
				<desc>Show object adjustment dialog</desc>
				<binding>
					<command>nasal</command>
					<script>ufo.adjust_dialog.toggle()</script>
				</binding>
			</key>

			<key n="32">
				<name>SPACE</name>
				<desc>Show model select dialog</desc>
				<binding>
					<command>nasal</command>
					<script>ufo.select_dialog.toggle()</script>
				</binding>
			</key>

			<key n="100">
				<name>d</name>
				<desc>Dump coordinates</desc>
				<binding>
					<command>nasal</command>
					<script>ufo.print_data()</script>
				</binding>
			</key>

			<key n="101">
				<name>e</name>
				<desc>Export object data XML file</desc>
				<binding>
					<command>nasal</command>
					<script>ufo.export_data()</script>
				</binding>
			</key>

			<key n="109">
				<name>m</name>
				<desc>Toggle "active object" marker</desc>
				<binding>
					<command>nasal</command>
					<script>ufo.modelmgr.toggle_marker()</script>
				</binding>
			</key>

			<key n="360">
				<name>PageUp</name>
				<desc>Increase throttle or autopilot autothrottle.</desc>
				<repeatable type="bool">true</repeatable>
				<binding>
					<command>nasal</command>
					<script>
						if (getprop("/devices/status/keyboard/ctrl")) {
							ufo.modelmgr.cycle(1);
						} else {
							controls.incThrottle(0.01, 1.0)
						}
					</script>
				</binding>
				<mod-shift>
					<desc>Look front right.</desc>
					<binding>
						<command>property-assign</command>
						<property>/sim/current-view/goal-heading-offset-deg</property>
						<property>/sim/view/config/front-right-direction-deg</property>
					</binding>
				</mod-shift>
			</key>

			<key n="361">
				<name>PageDown</name>
				<desc>Decrease throttle or autopilot autothrottle.</desc>
				<repeatable type="bool">true</repeatable>
				<binding>
					<command>nasal</command>
					<script>
						if (getprop("/devices/status/keyboard/ctrl")) {
							ufo.modelmgr.cycle(-1);
						} else {
							controls.incThrottle(-0.01, -1.0)
						}
					</script>
				</binding>
				<mod-shift>
					<desc>Look back right.</desc>
					<binding>
						<command>property-assign</command>
						<property>/sim/current-view/goal-heading-offset-deg</property>
						<property>/sim/view/config/back-right-direction-deg</property>
					</binding>
				</mod-shift>
			</key>

			<key n="356">
				<name>Left</name>
				<desc>Move aileron left (or adjust AP heading.)</desc>
				<repeatable type="bool">true</repeatable>
				<binding>
					<command>nasal</command>
					<script>
						if (getprop("/devices/status/keyboard/ctrl")) {
							ufo.modelmgr.adjust("transversal", -1);
						} else {
							controls.incAileron(-0.05, -1.0);
						}
					</script>
				</binding>
				<mod-shift>
					<desc>Look left.</desc>
					<binding>
						<command>nasal</command>
						<script>
							if (getprop("/devices/status/keyboard/ctrl")) {
								ufo.modelmgr.adjust("transversal", -10);
							} else {
								setprop("/sim/current-view/goal-heading-offset-deg",
									getprop("/sim/view/config/left-direction-deg"));
							}
						</script>
					</binding>
				</mod-shift>
			</key>

			<key n="357">
				<name>Up</name>
				<desc>Increase elevator or autopilot altitude.</desc>
				<repeatable type="bool">true</repeatable>
				<binding>
					<command>nasal</command>
					<script>
						if (getprop("/devices/status/keyboard/ctrl")) {
							ufo.modelmgr.adjust("longitudinal", 1);
						} else {
							controls.incElevator(0.05, -100);
						}
					</script>
				</binding>
				<mod-shift>
					<desc>Look forward.</desc>
					<binding>
						<command>nasal</command>
						<script>
							if (getprop("/devices/status/keyboard/ctrl")) {
								ufo.modelmgr.adjust("longitudinal", 10);
							} else {
								setprop("/sim/current-view/goal-heading-offset-deg",
									getprop("/sim/view/config/front-direction-deg"));
							}
						</script>
					</binding>
				</mod-shift>
			</key>

			<key n="358">
				<name>Right</name>
				<desc>Move aileron right (or adjust AP heading.)</desc>
				<repeatable type="bool">true</repeatable>
				<binding>
					<command>nasal</command>
					<script>
						if (getprop("/devices/status/keyboard/ctrl")) {
							ufo.modelmgr.adjust("transversal", 1);
						} else {
							controls.incAileron(0.05, 1.0);
						}
					</script>
					<step type="double">0.05</step>
				</binding>
				<mod-shift>
					<desc>Look right.</desc>
					<binding>
						<command>nasal</command>
						<script>
							if (getprop("/devices/status/keyboard/ctrl")) {
								ufo.modelmgr.adjust("transversal", 10);
							} else {
								setprop("/sim/current-view/goal-heading-offset-deg",
									getprop("/sim/view/config/right-direction-deg"));
							}
						</script>
					</binding>
				</mod-shift>
			</key>

			<key n="359">
				<name>Down</name>
				<desc>Decrease elevator or autopilot altitude.</desc>
				<repeatable type="bool">true</repeatable>
				<binding>
					<command>nasal</command>
					<script>
						if (getprop("/devices/status/keyboard/ctrl")) {
							ufo.modelmgr.adjust("longitudinal", -1);
						} else {
							controls.incElevator(-0.05, 100);
						}
					</script>
				</binding>
				<mod-shift>
					<desc>Look backwards.</desc>
					<binding>
						<command>nasal</command>
						<script>
							if (getprop("/devices/status/keyboard/ctrl")) {
								ufo.modelmgr.adjust("longitudinal", -10);
							} else {
								setprop("/sim/current-view/goal-heading-offset-deg",
									getprop("/sim/view/config/back-direction-deg"));
							}
						</script>
					</binding>
				</mod-shift>
			</key>
		</keyboard>
	</input>

	<!-- default model -->
	<cursor type="string">Aircraft/ufo/Models/cursor.ac</cursor>

	<!-- subdirs of $FG_ROOT to search models in. Comma separated, e.g. "Models,Scenery/Objects/w130n30" -->
	<source type="string">Models</source>

	<nasal>
		<ufo>
			<file>Aircraft/ufo/ufo.nas</file>
		</ufo>

		<aar>
			<file>Aircraft/Generic/aar.nas</file>
		</aar>
	</nasal>

	<instrumentation>
		<radar>
			<debug-mode type="bool">true</debug-mode>
		</radar>
	</instrumentation>

	<gear>
		<gear>
			<!-- hint for the route manager -->
			<wow type="bool">false</wow>
		</gear>
	</gear>

	<autopilot>
		<route-manager>
			<min-lock-altitude-agl-ft type="double">-10000</min-lock-altitude-agl-ft>
		</route-manager>
	</autopilot>
</PropertyList>