This commit is contained in:
l0k1
2016-12-22 00:31:49 -08:00
commit c080beaf57
396 changed files with 181271 additions and 0 deletions
+330
View File
@@ -0,0 +1,330 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2015 onox
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
-->
<PropertyList>
<name>control-panel</name>
<layout>vbox</layout>
<width>250</width>
<resizable>false</resizable>
<group>
<layout>hbox</layout>
<empty><stretch>true</stretch></empty>
<text>
<label>Control Panel</label>
</text>
<empty><stretch>true</stretch></empty>
<button>
<legend/>
<keynum>27</keynum>
<pref-width>16</pref-width>
<pref-height>16</pref-height>
<border>2</border>
<binding>
<command>dialog-close</command>
</binding>
</button>
</group>
<hrule/>
<group>
<layout>vbox</layout>
<padding>6</padding>
<text>
<label>Elevators</label>
</text>
<group>
<layout>table</layout>
<!-- 3rd -->
<text>
<row>0</row>
<col>1</col>
<label>3rd</label>
</text>
<!-- 3rd -->
<button>
<row>1</row>
<col>1</col>
<visible>
<property>/carrier/elevators/elevator[2]/at-flight-deck</property>
</visible>
<legend>FLIGHT DECK</legend>
<pref-width>100</pref-width>
<binding>
<command>dialog-apply</command>
</binding>
<binding>
<command>property-toggle</command>
<property>/carrier/elevators/elevator[2]/at-flight-deck</property>
</binding>
</button>
<button>
<row>1</row>
<col>1</col>
<visible>
<not>
<property>/carrier/elevators/elevator[2]/at-flight-deck</property>
</not>
</visible>
<legend>HANGAR DECK</legend>
<pref-width>100</pref-width>
<binding>
<command>dialog-apply</command>
</binding>
<binding>
<command>property-toggle</command>
<property>/carrier/elevators/elevator[2]/at-flight-deck</property>
</binding>
</button>
<!-- 2nd -->
<text>
<row>2</row>
<col>1</col>
<label>2nd</label>
</text>
<!-- 2nd -->
<button>
<row>3</row>
<col>1</col>
<visible>
<property>/carrier/elevators/elevator[1]/at-flight-deck</property>
</visible>
<legend>FLIGHT DECK</legend>
<pref-width>100</pref-width>
<binding>
<command>dialog-apply</command>
</binding>
<binding>
<command>property-toggle</command>
<property>/carrier/elevators/elevator[1]/at-flight-deck</property>
</binding>
</button>
<button>
<row>3</row>
<col>1</col>
<visible>
<not>
<property>/carrier/elevators/elevator[1]/at-flight-deck</property>
</not>
</visible>
<legend>HANGAR DECK</legend>
<pref-width>100</pref-width>
<binding>
<command>dialog-apply</command>
</binding>
<binding>
<command>property-toggle</command>
<property>/carrier/elevators/elevator[1]/at-flight-deck</property>
</binding>
</button>
<!-- 4th -->
<text>
<row>4</row>
<col>0</col>
<label>4th</label>
</text>
<!-- 1st -->
<text>
<row>4</row>
<col>1</col>
<label>1st</label>
</text>
<!-- 4th -->
<button>
<row>5</row>
<col>0</col>
<visible>
<property>/carrier/elevators/elevator[3]/at-flight-deck</property>
</visible>
<legend>FLIGHT DECK</legend>
<pref-width>100</pref-width>
<binding>
<command>dialog-apply</command>
</binding>
<binding>
<command>property-toggle</command>
<property>/carrier/elevators/elevator[3]/at-flight-deck</property>
</binding>
</button>
<button>
<row>5</row>
<col>0</col>
<visible>
<not>
<property>/carrier/elevators/elevator[3]/at-flight-deck</property>
</not>
</visible>
<legend>HANGAR DECK</legend>
<pref-width>100</pref-width>
<binding>
<command>dialog-apply</command>
</binding>
<binding>
<command>property-toggle</command>
<property>/carrier/elevators/elevator[3]/at-flight-deck</property>
</binding>
</button>
<!-- 1st -->
<button>
<row>5</row>
<col>1</col>
<visible>
<property>/carrier/elevators/elevator[0]/at-flight-deck</property>
</visible>
<legend>FLIGHT DECK</legend>
<pref-width>100</pref-width>
<binding>
<command>dialog-apply</command>
</binding>
<binding>
<command>property-toggle</command>
<property>/carrier/elevators/elevator[0]/at-flight-deck</property>
</binding>
</button>
<button>
<row>5</row>
<col>1</col>
<visible>
<not>
<property>/carrier/elevators/elevator[0]/at-flight-deck</property>
</not>
</visible>
<legend>HANGAR DECK</legend>
<pref-width>100</pref-width>
<binding>
<command>dialog-apply</command>
</binding>
<binding>
<command>property-toggle</command>
<property>/carrier/elevators/elevator[0]/at-flight-deck</property>
</binding>
</button>
</group>
</group>
<hrule/>
<group>
<layout>vbox</layout>
<padding>6</padding>
<text>
<label>Flight Deck</label>
</text>
<group>
<layout>vbox</layout>
<checkbox>
<halign>left</halign>
<label>Runway lighting</label>
<property>/controls/lighting/deck-lights</property>
<live>true</live>
<binding>
<command>dialog-apply</command>
</binding>
<binding>
<command>property-toggle</command>
</binding>
</checkbox>
<checkbox>
<halign>left</halign>
<label>Antennas</label>
<property>/carrier/antennas/enabled</property>
<live>true</live>
<binding>
<command>dialog-apply</command>
</binding>
<binding>
<command>property-toggle</command>
</binding>
</checkbox>
</group>
</group>
<hrule/>
<group>
<layout>vbox</layout>
<padding>6</padding>
<text>
<label>Debug</label>
</text>
<group>
<layout>vbox</layout>
<checkbox>
<halign>left</halign>
<label>Enable ship movememnt</label>
<property>/carrier/fdm/settings/movement</property>
<live>true</live>
<binding>
<command>dialog-apply</command>
</binding>
<binding>
<command>property-toggle</command>
</binding>
</checkbox>
<checkbox>
<halign>left</halign>
<label>Show Phalanx aim points</label>
<property>/carrier/phalanx/settings/show-debug-aim</property>
<live>true</live>
<binding>
<command>dialog-apply</command>
</binding>
<binding>
<command>property-toggle</command>
</binding>
</checkbox>
</group>
</group>
<hrule/>
<group>
<layout>hbox</layout>
<default-padding>6</default-padding>
<empty><stretch>true</stretch></empty>
<button>
<legend>Close</legend>
<default>true</default>
<binding>
<command>dialog-close</command>
</binding>
</button>
</group>
</PropertyList>
+39
View File
@@ -0,0 +1,39 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2015 onox
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
-->
<PropertyList>
<default>
<menu n="10">
<label>CVN-70</label>
<enabled type="bool">true</enabled>
<item>
<label>Control Panel</label>
<binding>
<command>dialog-show</command>
<dialog-name>control-panel</dialog-name>
</binding>
</item>
</menu>
</default>
</PropertyList>
+347
View File
@@ -0,0 +1,347 @@
<?xml version="1.0"?>
<PropertyList>
<name>Vinson HUD</name>
<enable3d>false</enable3d>
<!-- <tape>
<name>Rel Brg</name>
<x>-100</x>
<y>190</y>
<width>200</width>
<height>28</height>
<input>
<property>/sim/current-view/heading-offset-rel-deg</property>
</input>
<display-span>25.0</display-span>
<option>top</option>
<major-divisions>5</major-divisions>
<minor-divisions>1</minor-divisions>
<tick-bottom>false</tick-bottom>
<tick-top>false</tick-top>
<tick-right>true</tick-right>
<tick-left>true</tick-left>
<cap-bottom>true</cap-bottom>
<cap-top>false</cap-top>
<cap-right>false</cap-right>
<cap-left>false</cap-left>
<marker-offset>0.0</marker-offset>
<enable-pointer>true</enable-pointer>
<pointer-type>fixed</pointer-type>
<tick-type>line</tick-type>
<tick-length>variable</tick-length>
</tape> -->
<ladder>
<name>Ladder</name>
<type>pitch</type>
<x>-60</x>
<y>-90</y>
<width>120</width>
<height>180</height>
<condition>
<equals>
<property>/sim/current-view/name</property>
<value>Approach View</value>
</equals>
</condition>
<roll-input>
<property>/orientation/roll-deg</property>
<factor>-1.0</factor>
</roll-input>
<pitch-input>
<property>/orientation/pitch-deg</property>
<factor>-1.0</factor>
</pitch-input>
<compression-factor>30</compression-factor>
<display-span>8</display-span>
<divisions>1.0</divisions>
<screen-hole>100</screen-hole>
<lbl-pos>0</lbl-pos>
<glide-slope>0.0</glide-slope>
<enable-fuselage-ref-line>false</enable-fuselage-ref-line>
<enable-target-spot>false</enable-target-spot>
<enable-target-markers>true</enable-target-markers>
<enable-velocity-vector>false</enable-velocity-vector>
<enable-drift-marker>false</enable-drift-marker>
<enable-alpha-bracket>false</enable-alpha-bracket>
<enable-energy-marker>false</enable-energy-marker>
<enable-climb-dive-marker>false</enable-climb-dive-marker>
<enable-glide-slope-marker>false</enable-glide-slope-marker>
<enable-energy-worm>false</enable-energy-worm>
<enable-waypoint-marker>false</enable-waypoint-marker>
<enable-zenith>false</enable-zenith>
<enable-nadir>false</enable-nadir>
<enable-hat>false</enable-hat>
</ladder>
<label>
<name>Wind Angle Runway</name>
<x>-300</x>
<y>190</y>
<width>200</width>
<height>25</height>
<prefix> Wind Angle Runway: </prefix>
<postfix> deg</postfix>
<halign>left</halign>
<format>%03.0f</format>
<box>true</box>
<input>
<property>/orientation/relative-wind-deg</property>
</input>
</label>
<label>
<name>Height</name>
<x>-300</x>
<y>80</y>
<width>200</width>
<height>25</height>
<condition>
<or>
<equals>
<property>/sim/current-view/name</property>
<value>Landing Signal Officer View</value>
</equals>
<equals>
<property>/sim/current-view/name</property>
<value>Approach View</value>
</equals>
</or>
</condition>
<box>false</box>
<prefix>HEIGHT: </prefix>
<halign>left</halign>
<input>
<property>/sim/current-view/height</property>
</input>
<blinking>
<interval>0.25</interval>
<condition>
<and>
<equals>
<property>/sim/current-view/height</property>
<value>VERY LOW</value>
</equals>
<less-than>
<property>/sim/current-view/distance</property>
<value>1</value>
</less-than>
</and>
</condition>
</blinking>
</label>
<label>
<name>Gear</name>
<x>-300</x>
<y>60</y>
<width>200</width>
<height>25</height>
<condition>
<or>
<equals>
<property>/sim/current-view/name</property>
<value>Landing Signal Officer View</value>
</equals>
<equals>
<property>/sim/current-view/name</property>
<value>Approach View</value>
</equals>
</or>
</condition>
<box>false</box>
<prefix>GEAR: </prefix>
<halign>left</halign>
<input>
<property>/sim/current-view/gear</property>
</input>
<blinking>
<interval>0.25</interval>
<condition>
<and>
<less-than>
<property>/sim/current-view/gear</property>
<value>1</value>
</less-than>
<less-than>
<property>/sim/current-view/distance</property>
<value>1</value>
</less-than>
</and>
</condition>
</blinking>
</label>
<label>
<name>Flap</name>
<x>-300</x>
<y>40</y>
<width>200</width>
<height>25</height>
<condition>
<or>
<equals>
<property>/sim/current-view/name</property>
<value>Landing Signal Officer View</value>
</equals>
<equals>
<property>/sim/current-view/name</property>
<value>Approach View</value>
</equals>
</or>
</condition>
<box>false</box>
<prefix>FLAPS: </prefix>
<halign>left</halign>
<input>
<property>/sim/current-view/flap</property>
</input>
<blinking>
<interval>0.25</interval>
<condition>
<and>
<less-than>
<property>/sim/current-view/flap</property>
<value>1</value>
</less-than>
<less-than>
<property>/sim/current-view/distance</property>
<value>1</value>
</less-than>
</and>
</condition>
</blinking>
</label>
<label>
<name>Hook</name>
<x>-300</x>
<y>20</y>
<width>200</width>
<height>25</height>
<condition>
<or>
<equals>
<property>/sim/current-view/name</property>
<value>Landing Signal Officer View</value>
</equals>
<equals>
<property>/sim/current-view/name</property>
<value>Approach View</value>
</equals>
</or>
</condition>
<box>false</box>
<prefix>HOOK: </prefix>
<halign>left</halign>
<input>
<property>/sim/current-view/hook</property>
</input>
</label>
<label>
<name>Magnetic Heading</name>
<x>-300</x>
<y>-225</y>
<width>200</width>
<height>25</height>
<prefix> Mag. Heading: </prefix>
<postfix> deg</postfix>
<halign>left</halign>
<format>%03.0f</format>
<box>true</box>
<input>
<property>/orientation/heading-magnetic-deg</property>
</input>
</label>
<label>
<name>Magnetic Heading Runway</name>
<x>-300</x>
<y>-200</y>
<width>200</width>
<height>25</height>
<prefix> Mag. Heading Runway: </prefix>
<postfix> deg</postfix>
<halign>left</halign>
<format>%03.0f</format>
<box>true</box>
<input>
<property>/orientation/heading-runway-magnetic-deg</property>
</input>
</label>
<label>
<name>Wind Speed Runway</name>
<x>100</x>
<y>190</y>
<width>200</width>
<height>25</height>
<prefix> Wind Speed Runway: </prefix>
<postfix> kts</postfix>
<halign>left</halign>
<format>%2.0f</format>
<box>true</box>
<input>
<property>/velocities/wind-speed-runway-kt</property>
</input>
</label>
<label>
<name>Speed</name>
<x>100</x>
<y>-225</y>
<width>200</width>
<height>25</height>
<prefix> Speed: </prefix>
<postfix> kts</postfix>
<halign>left</halign>
<format>%2.1f</format>
<box>true</box>
<input>
<property>/velocities/groundspeed-kt</property>
</input>
</label>
<label>
<name>Target Speed</name>
<x>100</x>
<y>-200</y>
<width>200</width>
<height>25</height>
<prefix> Target Speed: </prefix>
<postfix> kts</postfix>
<halign>left</halign>
<format>%2.1f</format>
<box>true</box>
<input>
<property>/carrier/fbw/target/groundspeed-kt</property>
</input>
</label>
</PropertyList>
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,17 @@
<?xml version="1.0"?>
<PropertyList>
<path>humvee-pickup-odrab-low-poly.ac</path>
<model>
<path>Aircraft/groundtarget/Models/smoke.xml</path>
<offsets>
<x-m>1.2</x-m>
<y-m>0.00</y-m>
<z-m>-0.68</z-m>
<pitch-deg>0</pitch-deg>
</offsets>
</model>
</PropertyList>
Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

+84
View File
@@ -0,0 +1,84 @@
<PropertyList>
<particlesystem>
<name>smoke</name>
<texture>smoke.png</texture>
<condition>
<equals>
<property>sim/multiplay/generic/int[0]</property>
<value>1</value>
</equals>
</condition>
<emissive>false</emissive>
<lighting>false</lighting>
<align>billboard</align> <!-- billboard / fixed -->
<attach>world</attach> <!-- world / local-->
<placer>
<type>point</type>
</placer>
<shooter>
<theta-min-deg>20</theta-min-deg>
<theta-max-deg>35</theta-max-deg>
<phi-min-deg>-15</phi-min-deg>
<phi-max-deg> 15</phi-max-deg>
<speed-mps>
<value>0</value>
<spread>0</spread>
</speed-mps>
<rotation-speed>
<x-min-deg-sec>0</x-min-deg-sec>
<y-min-deg-sec>0</y-min-deg-sec>
<z-min-deg-sec>-180</z-min-deg-sec>
<x-max-deg-sec>0</x-max-deg-sec>
<y-max-deg-sec>0</y-max-deg-sec>
<z-max-deg-sec>180</z-max-deg-sec>
</rotation-speed>
</shooter>
<counter>
<particles-per-sec>
<value>1</value>
<spread>20</spread>
</particles-per-sec>
</counter>
<particle>
<start>
<color>
<red><value>0.0</value></red>
<green><value>0.0</value></green>
<blue><value>0.0</value></blue>
<alpha><value>1</value></alpha>
</color>
<size>
<value>3.0</value>
</size>
</start>
<end>
<color>
<red><value>0.0</value></red>
<green><value>0.0</value></green>
<blue><value>0.0</value></blue>
<alpha><value>0.0</value></alpha>
</color>
<size>
<value>20.0</value>
</size>
</end>
<life-sec>
<value>30</value>
</life-sec>
<mass-kg>0.025</mass-kg>
<radius-m>0.40</radius-m>
</particle>
<program>
<fluid>air</fluid>
<gravity>true</gravity>
<wind>true</wind>
</program>
</particlesystem>
</PropertyList>
+17
View File
@@ -0,0 +1,17 @@
<?xml version="1.0"?>
<PropertyList>
<path>humvee-pickup-odrab-low-poly.ac</path>
<model>
<path>Aircraft/BUK-M2/Models/smoke.xml</path>
<offsets>
<x-m>1.2</x-m>
<y-m>0.00</y-m>
<z-m>-0.68</z-m>
<pitch-deg>0</pitch-deg>
</offsets>
</model>
</PropertyList>
+274
View File
@@ -0,0 +1,274 @@
var clamp = func(v, min, max) { v < min ? min : v > max ? max : v }
var TRUE = 1;
var FALSE = 0;
var hp = 2500;
var hp_max = hp;
var cannon_types = {
" M70 rocket hit": 40.00, #Viggen rocket
" M55 cannon shell hit": 3.50, #Viggen gun
" KCA cannon shell hit": 7.00, #Viggen gunpod
" Gun Splash On ": 3.0, #Mirage
" M61A1 shell hit": 2.50, #f-14/15
" GAU-8/A hit": 10.00, #a-10
" BK27 cannon hit": 3.50, #typhoon
" GSh-30 hit": 3.00, #mig-21
" 50 BMG hit": 3.00, #p-47
};
var warhead_lbs = {
"aim-120": 44.00,
"AIM120": 44.00,
"RB-99": 44.00,
"aim-7": 88.00,
"RB-71": 88.00,
"aim-9": 20.80,
"AIM9": 20.80,
"AIM-9": 20.80,
"RB-24": 20.80,
"RB-24J": 20.80,
"RB-74": 20.80,
"R74": 16.00,
"MATRA-R530": 55.00,
"Meteor": 55.00,
"AIM-54": 135.00,
"Matra R550 Magic 2": 27.00,
"Matra MICA": 30.00,
"RB-15F": 440.92,
"SCALP": 992.00,
"KN-06": 315.00,
"GBU12": 190.00,
"GBU16": 450.00,
"Sea Eagle": 505.00,
"AGM65": 200.00,
"RB-04E": 661.00,
"RB-05A": 353.00,
"RB-75": 126.00,
"M90": 500.00,
"M71": 200.00,
"MK-82": 192.00,
"LAU-68": 10.00,
"M317": 145.00,
"GBU-31": 945.00,
"AIM132": 22.05,
"ALARM": 450.00,
"STORMSHADOW": 850.00,
"R-60": 6.60,
"R-27R1": 85.98,
"R-27T1": 85.98,
"FAB-500": 564.00,
};
var incoming_listener = func {
var history = getprop("/sim/multiplay/chat-history");
var hist_vector = split("\n", history);
if (size(hist_vector) > 0) {
var last = hist_vector[size(hist_vector)-1];
var last_vector = split(":", last);
var author = last_vector[0];
var callsign = getprop("sim/multiplay/callsign");
if (size(last_vector) > 1 and author != callsign) {
# not myself
#print("not me");
var m2000 = FALSE;
if (find(" at " ~ callsign ~ ". Release ", last_vector[1]) != -1) {
# a m2000 is firing at us
m2000 = TRUE;
}
if (last_vector[1] == " FOX2 at" or last_vector[1] == " aim7 at" or last_vector[1] == " aim9 at"
or last_vector[1] == " aim120 at" or last_vector[1] == " RB-24J fired at" or last_vector[1] == " RB-74 fired at"
or last_vector[1] == " RB-71 fired at" or last_vector[1] == " RB-15F fired at"
or last_vector[1] == " RB-99 fired at" or m2000 == TRUE) {
# air2air being fired
if (size(last_vector) > 2 or m2000 == TRUE) {
#print("Missile launch detected at"~last_vector[2]~" from "~author);
if (m2000 == TRUE or last_vector[2] == " "~callsign) {
# its being fired at me
#print("Incoming!");
var enemy = getCallsign(author);
if (enemy != nil) {
#print("enemy identified");
var bearingNode = enemy.getNode("radar/bearing-deg");
if (bearingNode != nil) {
#print("bearing to enemy found");
var bearing = bearingNode.getValue();
var heading = getprop("orientation/heading-deg");
var clock = bearing - heading;
while(clock < 0) {
clock = clock + 360;
}
while(clock > 360) {
clock = clock - 360;
}
#print("incoming from "~clock);
if (clock >= 345 or clock < 15) {
playIncomingSound("12");
} elsif (clock >= 15 and clock < 45) {
playIncomingSound("1");
} elsif (clock >= 45 and clock < 75) {
playIncomingSound("2");
} elsif (clock >= 75 and clock < 105) {
playIncomingSound("3");
} elsif (clock >= 105 and clock < 135) {
playIncomingSound("4");
} elsif (clock >= 135 and clock < 165) {
playIncomingSound("5");
} elsif (clock >= 165 and clock < 195) {
playIncomingSound("6");
} elsif (clock >= 195 and clock < 225) {
playIncomingSound("7");
} elsif (clock >= 225 and clock < 255) {
playIncomingSound("8");
} elsif (clock >= 255 and clock < 285) {
playIncomingSound("9");
} elsif (clock >= 285 and clock < 315) {
playIncomingSound("10");
} elsif (clock >= 315 and clock < 345) {
playIncomingSound("11");
} else {
playIncomingSound("");
}
return;
}
}
}
}
} elsif (1 == 1) { # mirage: getprop("/controls/armament/mp-messaging")
# latest version of failure manager and taking damage enabled
#print("damage enabled");
var last1 = split(" ", last_vector[1]);
if(size(last1) > 2 and last1[size(last1)-1] == "exploded" ) {
#print("missile hitting someone");
if (size(last_vector) > 3 and last_vector[3] == " "~callsign) {
#print("that someone is me!");
var type = last1[1];
if (type == "Matra" or type == "Sea") {
for (var i = 2; i < size(last1)-1; i += 1) {
type = type~" "~last1[i];
}
}
var number = split(" ", last_vector[2]);
var distance = num(number[1]);
#print(type~"|");
if(distance != nil) {
var dist = distance;
#check distance w/ if statement here
if (contains(warhead_lbs, type)) {
#maxDist = maxDamageDistFromWarhead(warhead_lbs[type]);
} else {
return;
}
if (type == "M90" and distance < 300) {
var failed = fail_systems(warhead_lbs[type]/2);
return;
} elsif (distance < 150) {
var prob = 1;
if ( distance > 50 ) {
distance = distance - 50;
prob = 1 - (distance/100);
}
}
var failed = fail_systems(warhead_lbs[type] * prob);
#ar percent = 100 * probability;
#printf("Took %.1f%% damage from %s missile at %0.1f meters. %s systems was hit", percent,type,dist,failed);
}
}
} elsif (cannon_types[last_vector[1]] != nil) {
# cannon hitting someone
print("cannon");
if (size(last_vector) > 2 and last_vector[2] == " "~callsign) {
print("cannon hit us");
var last3 = split(" ", last_vector[3]);
#print("last3[2]: " ~ last3[2]);
#print("last3[1]: " ~ last3[1]);
if(size(last3) > 2) {
if ( last3[2] == "hits" ) {
var hit_count = num(last3[1]);
}
} else {
var hit_count = 4;
}
var damaged_sys = 0;
var probability = cannon_types[last_vector[1]];
for (var i = 1; i <= hit_count; i = i + 1) {
var failed = fail_systems(probability);
damaged_sys = damaged_sys + failed;
}
# that someone is me!
#print("hitting me");
printf("Took %.1f%% damage from cannon! %s systems was hit.", probability*hit_count*100, damaged_sys);
}
}
}
}
}
}
var maxDamageDistFromWarhead = func (lbs) {
# very simple
var dist = 7*math.sqrt(lbs);
return dist;
}
var fail_systems = func (damage) {
hp = hp - damage;
print("HP: " ~ hp ~ "/" ~ hp_max);
if ( hp < 0 ) {
setprop("/carrier/sunk/",1);
setprop("/sim/multiplay/generic/int[0]",1);
}
};
var playIncomingSound = func (clock) {
setprop("sound/incoming"~clock, 1);
settimer(func {stopIncomingSound(clock);},3);
}
var stopIncomingSound = func (clock) {
setprop("sound/incoming"~clock, 0);
}
var callsign_struct = {};
var getCallsign = func (callsign) {
var node = callsign_struct[callsign];
return node;
}
var processCallsigns = func () {
callsign_struct = {};
var players = props.globals.getNode("ai/models").getChildren();
foreach (var player; players) {
if(player.getChild("valid") != nil and player.getChild("valid").getValue() == TRUE and player.getChild("callsign") != nil and player.getChild("callsign").getValue() != "" and player.getChild("callsign").getValue() != nil) {
var callsign = player.getChild("callsign").getValue();
callsign_struct[callsign] = player;
}
}
settimer(processCallsigns, 1.5);
}
processCallsigns();
var logTime = func{
#log time and date for outputing ucsv files for converting into KML files for google earth.
if (getprop("logging/log[0]/enabled") == TRUE and getprop("sim/time/utc/year") != nil) {
var date = getprop("sim/time/utc/year")~"/"~getprop("sim/time/utc/month")~"/"~getprop("sim/time/utc/day");
var time = getprop("sim/time/utc/hour")~":"~getprop("sim/time/utc/minute")~":"~getprop("sim/time/utc/second");
setprop("logging/date-log", date);
setprop("logging/time-log", time);
}
}
setlistener("/sim/multiplay/chat-history", incoming_listener, 0, 0);
+16
View File
@@ -0,0 +1,16 @@
# Copyright (C) 2015 onox
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
var control_panel = gui.Dialog.new("sim/gui/dialogs/control-panel/dialog", "Aircraft/CVN-70/Dialogs/control-panel.xml");
+96
View File
@@ -0,0 +1,96 @@
# Copyright (C) 2015 onox
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#io.include("Aircraft/ExpansionPack/Nasal/init.nas");
#with("updateloop");
print("loading fdm");
# Number of iterations per second
var frequency = 60.0;
# Change in heading per second at full rudder deflection
var heading_ps = 0.5;
time_last = 0;
sim_speed = 1;
setprop("/carrier/pitch-deg",0);
setprop("/carrier/pitch-offset",0);
setprop("/carrier/roll-deg",0);
setprop("/carrier/roll-offset",0);
setprop("/carrier/sunk",0);
var PositionUpdater = func () {
settimer( PositionUpdater, 1/frequency );
var position = geo.aircraft_position();
if ( getprop("/autopilot/route-manager/wp-last/dist") < 1 ) {
setprop("/sim/multiplay/chat",getprop("sim/multiplay/callsign") ~ " has arrived at its route manager destination!");
return;
}
var time_now = getprop("/sim/time/elapsed-sec");
var dt = (time_now - time_last) * sim_speed;
if (dt == 0) return;
time_last = time_now;
#var heading = getprop("/orientation/heading-deg");
#var speed = getprop("/velocities/groundspeed-kt");
var rudder = getprop("/surface-positions/rudder-pos-norm");
if ( getprop("/carrier/sunk") == 0 and getprop("/autopilot/route-manager/active") == 1 ) {
#for event
var speed = 50;
var cur_waypoint = getprop("/autopilot/route-manager/current-wp");
var cur_wp_lon = getprop("/autopilot/route-manager/route/wp[" ~ cur_waypoint ~ "]/longitude-deg");
var cur_wp_lat = getprop("/autopilot/route-manager/route/wp[" ~ cur_waypoint ~ "]/latitude-deg");
var rm_destination = geo.Coord.new().set_latlon(cur_wp_lat,cur_wp_lon);
var heading = position.course_to(rm_destination);
var distance = speed * globals.KT2MPS * dt;
position.apply_course_distance(heading, distance);
# Set new position
setprop("/position/latitude-deg", position.lat());
setprop("/position/longitude-deg", position.lon());
var g_alt = getprop("/position/ground-elev-ft");
setprop("/position/altitude-ft",g_alt);
# Update heading
var course = heading + rudder * heading_ps * dt;
setprop("/orientation/heading-deg", course);
}
#set pitch
setprop("/orientation/pitch-deg",getprop("/carrier/pitch-deg") + getprop("/carrier/pitch-offset"));
#set roll
setprop("/orientation/roll-deg",getprop("/carrier/roll-deg") + getprop("/carrier/roll-offset"));
};
PositionUpdater();
+74
View File
@@ -0,0 +1,74 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2015 onox
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
-->
<PropertyList>
<mouse n="0">
<mode n="0">
<button n="3">
<binding n="0">
<script></script>
</binding>
<binding n="1">
<condition>
<property>/sim/current-view/can-change-z-offset</property>
</condition>
<command>nasal</command>
<script>
var distance = getprop("/sim/current-view/z-offset-m");
var multiple = getprop("/sim/current-view/z-offset-inc-step");
var min_dist = getprop("/sim/current-view/z-offset-min-m");
# Round distance to a multiple of the step
distance = math.round(std.min(-min_dist, distance + multiple) / multiple) * multiple;
setprop("/sim/current-view/z-offset-m", distance);
gui.popupTip(sprintf("%d meter", abs(getprop("/sim/current-view/z-offset-m"))));
</script>
</binding>
</button>
<button n="4">
<binding n="0">
<script></script>
</binding>
<binding n="1">
<condition>
<property>/sim/current-view/can-change-z-offset</property>
</condition>
<command>nasal</command>
<script>
var distance = getprop("/sim/current-view/z-offset-m");
var multiple = getprop("/sim/current-view/z-offset-dec-step");
var max_dist = getprop("/sim/current-view/z-offset-max-m");
# Round distance to a multiple of the step
distance = math.round(std.max(-max_dist, distance + multiple) / multiple) * multiple;
setprop("/sim/current-view/z-offset-m", distance);
gui.popupTip(sprintf("%d meter", abs(getprop("/sim/current-view/z-offset-m"))));
</script>
</binding>
</button>
</mode>
</mouse>
</PropertyList>
+280
View File
@@ -0,0 +1,280 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (C) 2008 Alex (D-HUND)
Copyright (C) 2009 Vivian Meazza
Copyright (c) 2015 onox
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
-->
<PropertyList>
<current-view>
<view-number type="int">1</view-number>
</current-view>
<chase-distance-m type="double">-400.0</chase-distance-m>
<view n="0">
<name>Cockpit View</name>
<enabled type="bool">false</enabled>
</view>
<view n="1">
<name>Helicopter View</name>
<config>
<pitch-offset-deg>-5</pitch-offset-deg>
<target-y-offset-m type="double">21.925</target-y-offset-m>
</config>
</view>
<view n="2">
<name>Chase View</name>
<enabled type="bool">false</enabled>
</view>
<view n="5">
<name>Chase View Without Yaw</name>
<enabled type="bool">false</enabled>
</view>
<view n="100">
<name>Hangar View</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>
<x-offset-m>2</x-offset-m><!-- right -->
<y-offset-m>15</y-offset-m><!-- up -->
<z-offset-m>113</z-offset-m><!-- back -->
<default-field-of-view-deg>60</default-field-of-view-deg>
<ground-level-nearplane-m type="double">0.1f</ground-level-nearplane-m>
</config>
</view>
<view n="101">
<name>Phalanx Forward Left</name>
<type>lookfrom</type>
<internal type="bool">false</internal>
<config>
<from-model type="bool">true</from-model>
<from-model-idx type="int">0</from-model-idx>
<x-offset-m>-21.1147</x-offset-m><!-- right -->
<y-offset-m>16.8345</y-offset-m><!-- up -->
<z-offset-m>-121.2666</z-offset-m><!-- back -->
<heading-offset-deg>90</heading-offset-deg>
<default-field-of-view-deg>60</default-field-of-view-deg>
<ground-level-nearplane-m type="double">0.1f</ground-level-nearplane-m>
</config>
</view>
<view n="102">
<name>Phalanx Forward Right</name>
<type>lookfrom</type>
<internal type="bool">false</internal>
<config>
<from-model type="bool">true</from-model>
<from-model-idx type="int">0</from-model-idx>
<x-offset-m>23.1336</x-offset-m><!-- right -->
<y-offset-m>16.6478</y-offset-m><!-- up -->
<z-offset-m>-112.684</z-offset-m><!-- back -->
<heading-offset-deg>90</heading-offset-deg>
<default-field-of-view-deg>60</default-field-of-view-deg>
<ground-level-nearplane-m type="double">0.1f</ground-level-nearplane-m>
</config>
</view>
<view n="103">
<name>Phalanx Aft</name>
<type>lookfrom</type>
<internal type="bool">false</internal>
<config>
<from-model type="bool">true</from-model>
<from-model-idx type="int">0</from-model-idx>
<x-offset-m>23.3165</x-offset-m><!-- right -->
<y-offset-m>18.1198</y-offset-m><!-- up -->
<z-offset-m>134.344</z-offset-m><!-- back -->
<heading-offset-deg>90</heading-offset-deg>
<default-field-of-view-deg>60</default-field-of-view-deg>
<ground-level-nearplane-m type="double">0.1f</ground-level-nearplane-m>
</config>
</view>
<view n="104">
<name>Landing Signal Officer View</name>
<type>lookfrom</type>
<internal type="bool">false</internal>
<config>
<from-model type="bool">true</from-model>
<from-model-idx type="int">0</from-model-idx>
<heading-offset-deg>180</heading-offset-deg>
<x-offset-m>-19.7208</x-offset-m><!-- right -->
<y-offset-m>21.925</y-offset-m><!-- up -->
<z-offset-m>100.307</z-offset-m><!-- back -->
<pitch-offset-deg>2.5</pitch-offset-deg>
<default-field-of-view-deg>60</default-field-of-view-deg>
<ground-level-nearplane-m type="double">0.1f</ground-level-nearplane-m>
</config>
</view>
<view n="105">
<name>Approach View</name>
<type>lookfrom</type>
<internal type="bool">false</internal>
<config>
<!-- All these eye-*-deg-path elements are needed because
eye-heading-deg-path is overridden.
-->
<eye-lat-deg-path>/position/latitude-deg</eye-lat-deg-path>
<eye-lon-deg-path>/position/longitude-deg</eye-lon-deg-path>
<eye-alt-ft-path>/position/altitude-ft</eye-alt-ft-path>
<eye-heading-deg-path>/orientation/heading-runway-deg</eye-heading-deg-path>
<eye-pitch-deg-path>/orientation/pitch-deg</eye-pitch-deg-path>
<eye-roll-deg-path>/orientation/roll-deg</eye-roll-deg-path>
<x-offset-m>-15.4979</x-offset-m><!-- right -->
<y-offset-m>21.9</y-offset-m><!-- up -->
<z-offset-m>-8.315</z-offset-m><!-- back -->
<heading-offset-deg>180</heading-offset-deg>
<pitch-offset-deg>3</pitch-offset-deg>
<default-field-of-view-deg>25</default-field-of-view-deg>
<ground-level-nearplane-m type="double">0.1f</ground-level-nearplane-m>
</config>
</view>
<view n="106">
<name>Flight Deck Aft View</name>
<type>lookfrom</type>
<internal type="bool">false</internal>
<config>
<from-model type="bool">true</from-model>
<from-model-idx type="int">0</from-model-idx>
<x-offset-m>10</x-offset-m><!-- right -->
<y-offset-m>21.925</y-offset-m><!-- up -->
<z-offset-m>42</z-offset-m><!-- back -->
<heading-offset-deg>163</heading-offset-deg>
<pitch-offset-deg>5</pitch-offset-deg>
<default-field-of-view-deg>60</default-field-of-view-deg>
<ground-level-nearplane-m type="double">0.1f</ground-level-nearplane-m>
</config>
</view>
<view n="107">
<name>Flight Deck Forward View</name>
<type>lookfrom</type>
<internal type="bool">false</internal>
<config>
<from-model type="bool">true</from-model>
<from-model-idx type="int">0</from-model-idx>
<x-offset-m>0</x-offset-m><!-- right -->
<y-offset-m>21.925</y-offset-m><!-- up -->
<z-offset-m>-35</z-offset-m><!-- back -->
<heading-offset-deg>180</heading-offset-deg>
<pitch-offset-deg>10</pitch-offset-deg>
<default-field-of-view-deg>60</default-field-of-view-deg>
<ground-level-nearplane-m type="double">0.1f</ground-level-nearplane-m>
</config>
</view>
<view n="108">
<name>Bubble View</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>
<x-offset-m>4.1</x-offset-m><!-- right -->
<y-offset-m>20.325</y-offset-m><!-- up -->
<z-offset-m>-93</z-offset-m><!-- back -->
<heading-offset-deg>180</heading-offset-deg>
<pitch-offset-deg>0</pitch-offset-deg>
<default-field-of-view-deg>60</default-field-of-view-deg>
<ground-level-nearplane-m type="double">0.1f</ground-level-nearplane-m>
</config>
</view>
<view n="109">
<name>Goofers' View</name>
<type>lookfrom</type>
<internal type="bool">false</internal>
<config>
<from-model type="bool">true</from-model>
<from-model-idx type="int">0</from-model-idx>
<x-offset-m>27.074</x-offset-m><!-- right -->
<y-offset-m>35.3325</y-offset-m><!-- up -->
<z-offset-m>42.67</z-offset-m><!-- back -->
<heading-offset-deg>136</heading-offset-deg>
<pitch-offset-deg>-11</pitch-offset-deg>
<default-field-of-view-deg>40</default-field-of-view-deg>
<ground-level-nearplane-m type="double">0.1f</ground-level-nearplane-m>
</config>
</view>
<view n="110">
<name>Primary Flight Control View</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>
<x-offset-m>23.2669</x-offset-m><!-- right -->
<y-offset-m>35.082</y-offset-m><!-- up -->
<z-offset-m>20.1064</z-offset-m><!-- back -->
<pitch-offset-deg>-5</pitch-offset-deg>
<default-field-of-view-deg>60</default-field-of-view-deg>
<ground-level-nearplane-m type="double">0.1f</ground-level-nearplane-m>
</config>
</view>
<view n="111">
<name>Bridge View</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>
<x-offset-m>29.2083</x-offset-m><!-- right -->
<y-offset-m>33.235233</y-offset-m><!-- up -->
<z-offset-m>19.45</z-offset-m><!-- back -->
<pitch-offset-deg>-2</pitch-offset-deg>
<default-field-of-view-deg>45</default-field-of-view-deg>
<ground-level-nearplane-m type="double">0.1f</ground-level-nearplane-m>
</config>
</view>
</PropertyList>
+22
View File
@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2015 onox
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
-->
<PropertyList>
</PropertyList>
+46
View File
@@ -0,0 +1,46 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2015 onox
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
-->
<PropertyList>
<filter>
<name>FBW Throttle</name>
<type>gain</type>
<gain>80.0</gain>
<input>
<property>/controls/engines/engine[0]/throttle</property>
</input>
<output>
<property>/carrier/fbw/target/groundspeed-kt</property>
</output>
</filter>
<filter>
<name>FBW Rudder</name>
<type>gain</type>
<gain>8.0</gain>
<input>
<property>/controls/flight/rudder</property>
</input>
<output>
<property>/surface-positions/rudder-pos-norm</property>
</output>
</filter>
</PropertyList>
+69
View File
@@ -0,0 +1,69 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2015 onox
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
-->
<PropertyList>
<!-- Simulate the groundspeed -->
<filter>
<name>FDM Groundspeed</name>
<type>noise-spike</type>
<input>
<property>/carrier/fbw/target/groundspeed-kt</property>
</input>
<output>
<property>/velocities/groundspeed-kt</property>
</output>
<!-- Reaching maximum speed takes 20 minutes -->
<max-rate-of-change>7</max-rate-of-change>
</filter>
<!-- Flags use true-heading-deg because only that property is available
in multiplayer.
-->
<filter>
<name>FDM True Heading For Flags</name>
<type>gain</type>
<input>
<property>/orientation/heading-deg</property>
</input>
<output>
<property>/orientation/true-heading-deg</property>
</output>
</filter>
<!-- ================================================================== -->
<!-- Roll -->
<!-- ================================================================== -->
<!--
<filter>
<name>FDM Rudder</name>
<type>noise-spike</type>
<input>
<property>/controls/flight/rudder</property>
</input>
<output>
<property>/surface-positions/rudder-pos-norm</property>
</output>
<max-rate-of-change>5</max-rate-of-change>
</filter>-->
</PropertyList>
Binary file not shown.

After

Width:  |  Height:  |  Size: 307 KiB

+145
View File
@@ -0,0 +1,145 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2015 onox
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
-->
<PropertyList>
<environment>
<in-to-wind type="bool">false</in-to-wind>
</environment>
<carrier>
<fdm>
<settings>
<!-- The maximum bank angle during full rudder deflection -->
<bank-limit type="double">15.0</bank-limit>
<!-- Frequency and overshoot of the oscillator used to
simulate heeling (roll).
-->
<heel-frequency type="double">0.5</heel-frequency>
<heel-overshoot type="double">4.0</heel-overshoot>
<!-- Frequency and overshoot of the oscillator used to
simulate trimming (pitch).
-->
<trim-frequency type="double">0.32</trim-frequency>
<trim-overshoot type="double">0.45</trim-overshoot>
<!-- The speed of the waves plus speed of the ship in knots
which generates the maximum overshoot of the trim
oscillation.
-->
<max-trim-oscillation-wave-kt type="double">30.0</max-trim-oscillation-wave-kt>
<!-- The speed of the waves in knots which generates the
maximum overshoot of the heel oscillation.
-->
<max-heel-oscillation-wave-kt type="double">20.0</max-heel-oscillation-wave-kt>
<movement type="bool">true</movement>
</settings>
</fdm>
</carrier>
<sim include="Sim/views.xml">
<author>pinto and onox</author>
<description>groundtarget</description>
<status>alpha</status>
<aircraft-version>0.1</aircraft-version>
<flight-model>null</flight-model>
<aero>KPN-D</aero>
<aircraft-operator>KPN</aircraft-operator>
<model>
<path>Aircraft/groundtarget/Models/truck.xml</path>
<!-- Uncloak weather balloons visiting Earth -->
<always-show-in-MP type="bool">true</always-show-in-MP>
</model>
<sound>
<path>Sounds/sound.xml</path>
</sound>
<presets>
<onground>true</onground>
</presets>
<startup>
<splash-texture>Aircraft/groundtarget/splash1.png</splash-texture>
</startup>
<current-view>
<deck-park type="bool">true</deck-park>
<z-offset-dec-step type="double">0.0</z-offset-dec-step>
<z-offset-inc-step type="double">0.0</z-offset-inc-step>
<can-change-z-offset type="bool">false</can-change-z-offset>
<z-offset-min-m type="float">100.0</z-offset-min-m>
<z-offset-max-m type="float">2000.0</z-offset-max-m>
</current-view>
<hud>
<path n="1">Aircraft/groundtarget/Hud/hud.xml</path>
<visibility n="1">true</visibility>
<font>
<size type="float">10.0</size>
</font>
</hud>
<menubar include="Dialogs/menu.xml"/>
<multiplay>
<generic>
<int n="0" type="int">0</int>
</generic>
</multiplay>
<systems>
<autopilot>
<path>Systems/fbw.xml</path>
</autopilot>
<autopilot>
<path>Systems/fdm.xml</path>
</autopilot>
<property-rule n="100">
<path>Systems/views.xml</path>
</property-rule>
</systems>
</sim>
<nasal>
<carrier>
<file>Aircraft/groundtarget/Nasal/fdm.nas</file>
</carrier>
<damage>
<file>Aircraft/groundtarget/Nasal/damage.nas</file>
</damage>
</nasal>
<input>
<mice include="Sim/mice.xml"/>
</input>
</PropertyList>