commit
a21ac7213c
39 changed files with 1559 additions and 650 deletions
|
@ -428,7 +428,7 @@
|
|||
<z-offset-max-m type="float">300.0</z-offset-max-m>
|
||||
</current-view>
|
||||
|
||||
<minimum-fg-version>2018.1.0</minimum-fg-version>
|
||||
<minimum-fg-version>2019.2.0</minimum-fg-version>
|
||||
</sim>
|
||||
|
||||
<consumables>
|
||||
|
@ -1690,6 +1690,15 @@
|
|||
<script>libraries.fovZoom(1);</script>
|
||||
</binding>
|
||||
</key>
|
||||
<key n="99">
|
||||
<name>c</name>
|
||||
<desc>Reset view to center</desc>
|
||||
<repeatable type="bool">true</repeatable>
|
||||
<binding>
|
||||
<command>nasal</command>
|
||||
<script>libraries.resetView();</script>
|
||||
</binding>
|
||||
</key>
|
||||
<key n="120">
|
||||
<name>x</name>
|
||||
<desc>Decrease field of view</desc>
|
||||
|
@ -1933,7 +1942,7 @@
|
|||
<file>Aircraft/A320-family/Nasal/Panels/atc.nas</file>
|
||||
</atc>
|
||||
<dmc>
|
||||
<file>Aircraft/A320-family/Nasal/Systems/DMC.nas</file>
|
||||
<file>Aircraft/A320-family/Nasal/Displays/DMC.nas</file>
|
||||
</dmc>
|
||||
<Dialogs>
|
||||
<file>Aircraft/A320-family/gui/dialogs/refuel.nas</file>
|
||||
|
|
|
@ -119,7 +119,7 @@ var du_quality = gui.Dialog.new("sim/gui/dialogs/acconfig/du-quality/dialog", "A
|
|||
var rendering_dlg = gui.Dialog.new("sim/gui/dialogs/rendering/dialog", "Aircraft/A320-family/AircraftConfig/rendering.xml");
|
||||
spinning.start();
|
||||
init_dlg.open();
|
||||
http.load("https://raw.githubusercontent.com/legoboyvdlp/A320-family/master/revision.txt").done(func(r) setprop("/systems/acconfig/new-revision", r.response));
|
||||
http.load("https://raw.githubusercontent.com/legoboyvdlp/A320-family/201912/revision.txt").done(func(r) setprop("/systems/acconfig/new-revision", r.response));
|
||||
var revisionFile = (getprop("/sim/aircraft-dir") ~ "/revision.txt");
|
||||
var current_revision = io.readfile(revisionFile);
|
||||
print("A320-family Revision: " ~ current_revision);
|
||||
|
@ -366,15 +366,15 @@ var beforestart_b = func {
|
|||
setprop("/controls/adirs/ir[0]/knob","1");
|
||||
setprop("/controls/adirs/ir[1]/knob","1");
|
||||
setprop("/controls/adirs/ir[2]/knob","1");
|
||||
systems.ADIRSControlPanel.adrSw(0);
|
||||
systems.ADIRSControlPanel.adrSw(1);
|
||||
systems.ADIRSControlPanel.adrSw(2);
|
||||
if (systems.ADIRSnew.Switches.adrSw[0].getValue() != 1) { systems.ADIRSControlPanel.adrSw(0); }
|
||||
if (systems.ADIRSnew.Switches.adrSw[1].getValue() != 1) { systems.ADIRSControlPanel.adrSw(1); }
|
||||
if (systems.ADIRSnew.Switches.adrSw[2].getValue() != 1) { systems.ADIRSControlPanel.adrSw(2); }
|
||||
systems.ADIRSControlPanel.irModeSw(0, 1);
|
||||
systems.ADIRSControlPanel.irModeSw(1, 1);
|
||||
systems.ADIRSControlPanel.irModeSw(2, 1);
|
||||
systems.ADIRS.skip(0);
|
||||
systems.ADIRS.skip(1);
|
||||
systems.ADIRS.skip(2);
|
||||
systems.ADIRSnew.ADIRunits[0].instAlign();
|
||||
systems.ADIRSnew.ADIRunits[1].instAlign();
|
||||
systems.ADIRSnew.ADIRunits[2].instAlign();
|
||||
setprop("/controls/adirs/mcducbtn", 1);
|
||||
setprop("/controls/switches/beacon", 1);
|
||||
setprop("/controls/lighting/nav-lights-switch", 1);
|
||||
|
@ -457,15 +457,15 @@ var taxi_b = func {
|
|||
setprop("/controls/adirs/ir[0]/knob","1");
|
||||
setprop("/controls/adirs/ir[1]/knob","1");
|
||||
setprop("/controls/adirs/ir[2]/knob","1");
|
||||
systems.ADIRSControlPanel.adrSw(0);
|
||||
systems.ADIRSControlPanel.adrSw(1);
|
||||
systems.ADIRSControlPanel.adrSw(2);
|
||||
if (systems.ADIRSnew.Switches.adrSw[0].getValue() != 1) { systems.ADIRSControlPanel.adrSw(0); }
|
||||
if (systems.ADIRSnew.Switches.adrSw[1].getValue() != 1) { systems.ADIRSControlPanel.adrSw(1); }
|
||||
if (systems.ADIRSnew.Switches.adrSw[2].getValue() != 1) { systems.ADIRSControlPanel.adrSw(2); }
|
||||
systems.ADIRSControlPanel.irModeSw(0, 1);
|
||||
systems.ADIRSControlPanel.irModeSw(1, 1);
|
||||
systems.ADIRSControlPanel.irModeSw(2, 1);
|
||||
systems.ADIRS.skip(0);
|
||||
systems.ADIRS.skip(1);
|
||||
systems.ADIRS.skip(2);
|
||||
systems.ADIRSnew.ADIRunits[0].instAlign();
|
||||
systems.ADIRSnew.ADIRunits[1].instAlign();
|
||||
systems.ADIRSnew.ADIRunits[2].instAlign();
|
||||
setprop("/controls/adirs/mcducbtn", 1);
|
||||
setprop("/controls/switches/beacon", 1);
|
||||
setprop("/controls/switches/wing-lights", 1);
|
||||
|
|
|
@ -464,7 +464,6 @@
|
|||
<!-- Remove from this animation once you simulate -->
|
||||
<animation>
|
||||
<type>select</type>
|
||||
<object-name>alt-text-test</object-name>
|
||||
<object-name>atc-test</object-name>
|
||||
<object-name>audio_att_sgn</object-name>
|
||||
<object-name>audio_call_hf2_led</object-name>
|
||||
|
@ -480,19 +479,27 @@
|
|||
<object-name>engine_fault_1</object-name>
|
||||
<object-name>engine_fault_2</object-name>
|
||||
<object-name>exped_led</object-name>
|
||||
<object-name>hdg-text-test</object-name>
|
||||
<object-name>qnh-test</object-name>
|
||||
<object-name>radio_opt_led</object-name>
|
||||
<object-name>rudder-trim-test</object-name>
|
||||
<object-name>spd-text-test</object-name>
|
||||
<object-name>terr_on_nd_on</object-name>
|
||||
<object-name>ver.fmgc</object-name>
|
||||
<condition>
|
||||
<property>controls/switches/annun-test</property>
|
||||
</condition>
|
||||
</animation>
|
||||
|
||||
<animation>
|
||||
<type>select</type>
|
||||
<object-name>alt-text-test</object-name>
|
||||
<object-name>hdg-text-test</object-name>
|
||||
<object-name>spd-text-test</object-name>
|
||||
<object-name>vs-text-test</object-name>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>controls/switches/annun-test</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<or>
|
||||
<not><property>/FMGC/FCU-working</property></not>
|
||||
<property>/controls/switches/annun-test</property>
|
||||
</or>
|
||||
</condition>
|
||||
</animation>
|
||||
|
||||
|
|
|
@ -80,27 +80,20 @@ var canvas_IESI_base = {
|
|||
dcess = systems.ELEC.Bus.dcEss.getValue();
|
||||
dchot1 = systems.ELEC.Bus.dcHot1.getValue();
|
||||
|
||||
if (dcess >= 25 or (dchot1 >= 25 and airspeed.getValue() >= 50)) {
|
||||
cur_time = et.getValue();
|
||||
if (dcess >= 25 or (dchot1 >= 25 and airspeed.getValue() >= 50 and cur_time >= 5)) {
|
||||
IESI.page.show();
|
||||
IESI.update();
|
||||
|
||||
if (aconfig.getValue() != 1 and iesi_init.getValue() != 1) {
|
||||
iesi_init.setBoolValue(1);
|
||||
cur_time = et.getValue();
|
||||
iesi_time.setValue(cur_time);
|
||||
} else if (aconfig.getValue() == 1 and iesi_init.getValue() != 1) {
|
||||
iesi_init.setBoolValue(1);
|
||||
cur_time = et.getValue() - 87;
|
||||
iesi_time.setValue(cur_time);
|
||||
iesi_time.setValue(cur_time - 87);
|
||||
}
|
||||
} else {
|
||||
iesi_init.setBoolValue(0);
|
||||
}
|
||||
|
||||
if (dcess >= 25 or (dchot1 >= 25 and airspeed.getValue() >= 50)) {
|
||||
IESI.page.show();
|
||||
IESI.update();
|
||||
} else {
|
||||
IESI.page.hide();
|
||||
}
|
||||
},
|
||||
|
|
|
@ -257,6 +257,7 @@ var gen2_load = props.globals.initNode("/systems/electrical/extra/gen2-load", 0,
|
|||
var du4_test = props.globals.initNode("/instrumentation/du/du4-test", 0, "BOOL");
|
||||
var du4_test_time = props.globals.initNode("/instrumentation/du/du4-test-time", 0, "DOUBLE");
|
||||
var du4_test_amount = props.globals.initNode("/instrumentation/du/du4-test-amount", 0, "DOUBLE");
|
||||
var du4_offtime = props.globals.initNode("/instrumentation/du/du4-off-time", 0.0, "DOUBLE");
|
||||
|
||||
var canvas_lowerECAM_base = {
|
||||
init: func(canvas_group, file) {
|
||||
|
@ -278,27 +279,34 @@ var canvas_lowerECAM_base = {
|
|||
getKeys: func() {
|
||||
return [];
|
||||
},
|
||||
update: func() {
|
||||
elapsedtime = elapsed_sec.getValue();
|
||||
updateDu4: func() {
|
||||
var elapsedtime = elapsed_sec.getValue();
|
||||
|
||||
if (ac2.getValue() >= 110) {
|
||||
if (gear0_wow.getValue() == 1) {
|
||||
if (autoconfig_running.getValue() != 1 and du4_test.getValue() != 1) {
|
||||
if (du4_offtime.getValue() + 3 < elapsedtime) {
|
||||
if (gear0_wow.getValue() == 1) {
|
||||
if (autoconfig_running.getValue() != 1 and du4_test.getValue() != 1) {
|
||||
du4_test.setValue(1);
|
||||
du4_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du4_test_time.setValue(elapsedtime);
|
||||
} else if (autoconfig_running.getValue() == 1 and du4_test.getValue() != 1) {
|
||||
du4_test.setValue(1);
|
||||
du4_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du4_test_time.setValue(elapsedtime - 30);
|
||||
}
|
||||
} else {
|
||||
du4_test.setValue(1);
|
||||
du4_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du4_test_time.setValue(elapsedtime);
|
||||
} else if (autoconfig_running.getValue() == 1 and du4_test.getValue() != 1) {
|
||||
du4_test.setValue(1);
|
||||
du4_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du4_test_time.setValue(elapsedtime - 30);
|
||||
du4_test_amount.setValue(0);
|
||||
du4_test_time.setValue(-100);
|
||||
}
|
||||
} else {
|
||||
du4_test.setValue(1);
|
||||
du4_test_amount.setValue(0);
|
||||
du4_test_time.setValue(-100);
|
||||
}
|
||||
} else if (ac1_src.getValue() == "XX" or ac2_src.getValue() == "XX") {
|
||||
} else {
|
||||
du4_test.setValue(0);
|
||||
du4_offtime.setValue(elapsedtime);
|
||||
}
|
||||
},
|
||||
update: func() {
|
||||
var elapsedtime = elapsed_sec.getValue();
|
||||
|
||||
if (ac2.getValue() >= 110 and lighting_du4.getValue() > 0.01) {
|
||||
if (du4_test_time.getValue() + du4_test_amount.getValue() >= elapsedtime) {
|
||||
|
@ -597,14 +605,14 @@ var canvas_lowerECAM_apu = {
|
|||
me["APUAvail"].hide();
|
||||
}
|
||||
|
||||
if (tank3_content_lbs.getValue() < 100) {
|
||||
if (!systems.FUEL.Pumps.apu.getBoolValue() and systems.FUEL.Pumps.allOff.getBoolValue()) {
|
||||
me["APUfuelLO"].show();
|
||||
} else {
|
||||
me["APUfuelLO"].hide();
|
||||
}
|
||||
|
||||
# APU Gen
|
||||
if (apu_volts.getValue() > 110) {
|
||||
if (apu_volts.getValue() >= 110) {
|
||||
me["APUGenVolt"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["APUGenVolt"].setColor(0.7333,0.3803,0);
|
||||
|
@ -1433,13 +1441,13 @@ var canvas_lowerECAM_elec = {
|
|||
me["GEN1-num-label"].setColor(0.8078,0.8039,0.8078);
|
||||
}
|
||||
|
||||
if (gen1_volts.getValue() > 120 or gen1_volts.getValue() < 110 or gen1_hz.getValue() > 410 or gen1_hz.getValue() < 390 or gen1_load.getValue() > 110) {
|
||||
if (gen1_volts.getValue() > 120 or gen1_volts.getValue() < 110 or gen1_hz.getValue() > 410 or gen1_hz.getValue() < 390 or gen1_load.getValue() >= 110) {
|
||||
me["GEN1-label"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
me["GEN1-label"].setColor(0.8078,0.8039,0.8078);
|
||||
}
|
||||
|
||||
if (gen1_load.getValue() > 110) {
|
||||
if (gen1_load.getValue() >= 110) {
|
||||
me["Gen1Load"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
me["Gen1Load"].setColor(0.0509,0.7529,0.2941);
|
||||
|
@ -1490,13 +1498,13 @@ var canvas_lowerECAM_elec = {
|
|||
me["GEN2-num-label"].setColor(0.8078,0.8039,0.8078);
|
||||
}
|
||||
|
||||
if (gen2_volts.getValue() > 120 or gen2_volts.getValue() < 110 or gen2_hz.getValue() > 410 or gen2_hz.getValue() < 390 or gen2_load.getValue() > 110) {
|
||||
if (gen2_volts.getValue() > 120 or gen2_volts.getValue() < 110 or gen2_hz.getValue() > 410 or gen2_hz.getValue() < 390 or gen2_load.getValue() >= 110) {
|
||||
me["GEN2-label"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
me["GEN2-label"].setColor(0.8078,0.8039,0.8078);
|
||||
}
|
||||
|
||||
if (gen2_load.getValue() > 110) {
|
||||
if (gen2_load.getValue() >= 110) {
|
||||
me["Gen2Load"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
me["Gen2Load"].setColor(0.0509,0.7529,0.2941);
|
||||
|
@ -1540,13 +1548,13 @@ var canvas_lowerECAM_elec = {
|
|||
me["APUGenHz"].setText(sprintf("%s", math.round(apu_hz.getValue())));
|
||||
}
|
||||
|
||||
if (apu_volts.getValue() > 120 or apu_volts.getValue() < 110 or apu_hz.getValue() > 410 or apu_hz.getValue() < 390 or apu_load.getValue() > 110) {
|
||||
if (apu_volts.getValue() > 120 or apu_volts.getValue() < 110 or apu_hz.getValue() > 410 or apu_hz.getValue() < 390 or apu_load.getValue() >= 110) {
|
||||
me["APUGentext"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
me["APUGentext"].setColor(0.8078,0.8039,0.8078);
|
||||
}
|
||||
|
||||
if(apu_load.getValue() > 110) {
|
||||
if(apu_load.getValue() >= 110) {
|
||||
me["APUGenLoad"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
me["APUGenLoad"].setColor(0.0509,0.7529,0.2941);
|
||||
|
@ -1625,25 +1633,25 @@ var canvas_lowerECAM_elec = {
|
|||
me["ELEC-DCESS-label"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
|
||||
if (ac_ess.getValue() > 110) {
|
||||
if (ac_ess.getValue() >= 110) {
|
||||
me["ELEC-ACESS-label"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["ELEC-ACESS-label"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
|
||||
if (systems.ELEC.Bus.acEssShed.getValue() > 110) {
|
||||
if (systems.ELEC.Bus.acEssShed.getValue() >= 110) {
|
||||
me["ACESS-SHED"].hide();
|
||||
} else {
|
||||
me["ACESS-SHED"].show();
|
||||
}
|
||||
|
||||
if (ac1.getValue() > 110) {
|
||||
if (ac1.getValue() >= 110) {
|
||||
me["ELEC-AC1-label"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["ELEC-AC1-label"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
|
||||
if (ac2.getValue() > 110) {
|
||||
if (ac2.getValue() >= 110) {
|
||||
me["ELEC-AC2-label"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["ELEC-AC2-label"].setColor(0.7333,0.3803,0);
|
||||
|
@ -1712,11 +1720,19 @@ var canvas_lowerECAM_elec = {
|
|||
}
|
||||
|
||||
if (getprop("/systems/electrical/relay/ac-ess-feed-1/contact-pos") == 1) {
|
||||
me["ELEC-Line-AC1-ACESS"].show();
|
||||
if (ac1.getValue() >= 110) {
|
||||
me["ELEC-Line-AC1-ACESS"].show();
|
||||
} else {
|
||||
me["ELEC-Line-AC1-ACESS"].hide();
|
||||
}
|
||||
me["ELEC-Line-AC2-ACESS"].hide();
|
||||
} elsif (getprop("/systems/electrical/relay/ac-ess-feed-2/contact-pos") == 1) {
|
||||
me["ELEC-Line-AC1-ACESS"].hide();
|
||||
me["ELEC-Line-AC2-ACESS"].show();
|
||||
if (ac2.getValue() >= 110) {
|
||||
me["ELEC-Line-AC2-ACESS"].show();
|
||||
} else {
|
||||
me["ELEC-Line-AC2-ACESS"].hide();
|
||||
}
|
||||
} else {
|
||||
me["ELEC-Line-AC1-ACESS"].hide();
|
||||
me["ELEC-Line-AC2-ACESS"].hide();
|
||||
|
@ -1782,7 +1798,7 @@ var canvas_lowerECAM_elec = {
|
|||
me["ELEC-Line-Emergen-ESSTR"].hide();
|
||||
}
|
||||
|
||||
if (!getprop("/systems/electrical/relay/ac-ess-feed-emer-gen/contact-pos") and (!getprop("/systems/electrical/relay/tr-contactor-1/contact-pos") or !getprop("/systems/electrical/relay/tr-contactor-2/contact-pos"))) {
|
||||
if (systems.ELEC.Bus.acEss.getValue() >= 110 and !getprop("/systems/electrical/relay/ac-ess-feed-emer-gen/contact-pos") and (!getprop("/systems/electrical/relay/tr-contactor-1/contact-pos") or !getprop("/systems/electrical/relay/tr-contactor-2/contact-pos"))) {
|
||||
me["ELEC-Line-ACESS-TRESS"].show();
|
||||
} else {
|
||||
me["ELEC-Line-ACESS-TRESS"].hide();
|
||||
|
@ -2739,13 +2755,13 @@ var canvas_lowerECAM_hyd = {
|
|||
me["OVHT-Blue"].hide();
|
||||
}
|
||||
|
||||
if (systems.ELEC.Bus.ac1.getValue() > 110) {
|
||||
if (systems.ELEC.Bus.ac1.getValue() >= 110) {
|
||||
me["ELEC-Blue-label"].setColor(0.8078,0.8039,0.8078);
|
||||
} else {
|
||||
me["ELEC-Blue-label"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
|
||||
if (systems.ELEC.Bus.ac2.getValue() > 110) {
|
||||
if (systems.ELEC.Bus.ac2.getValue() >= 110) {
|
||||
me["ELEC-Yellow-label"].setColor(0.8078,0.8039,0.8078);
|
||||
} else {
|
||||
me["ELEC-Yellow-label"].setColor(0.7333,0.3803,0);
|
||||
|
@ -3329,6 +3345,7 @@ var canvas_lowerECAM_test = {
|
|||
return ["Test_white","Test_text"];
|
||||
},
|
||||
update: func() {
|
||||
var elapsedtime = elapsed_sec.getValue();
|
||||
if (du4_test_time.getValue() + 1 >= elapsedtime) {
|
||||
me["Test_white"].show();
|
||||
me["Test_text"].hide();
|
||||
|
@ -3395,3 +3412,7 @@ var showLowerECAM = func {
|
|||
var dlg = canvas.Window.new([512, 512], "dialog").set("resize", 1);
|
||||
dlg.setCanvas(lowerECAM_display);
|
||||
}
|
||||
|
||||
setlistener("/systems/electrical/bus/ac-2", func() {
|
||||
canvas_lowerECAM_base.updateDu4();
|
||||
}, 0, 0);
|
|
@ -877,7 +877,7 @@ var canvas_MCDU_base = {
|
|||
me["Simple_R6S"].setText("TROPO");
|
||||
me["Simple_R1"].setText(sprintf("%s", depArpt.getValue() ~ "/" ~ arrArpt.getValue()));
|
||||
me["Simple_R2"].setText("REQUEST ");
|
||||
me["Simple_R3"].setText("ALIGN IRS ");
|
||||
me["Simple_R3"].setText("IRS INIT >");
|
||||
me["Simple_R4"].setText("-----.--");
|
||||
me["Simple_R5"].setText("WIND ");
|
||||
me["Simple_R6"].setText(sprintf("%5.0f", tropo.getValue()));
|
||||
|
|
|
@ -20,8 +20,10 @@ var du1_test_amount = props.globals.getNode("/instrumentation/du/du1-test-amount
|
|||
var du2_test = props.globals.getNode("/instrumentation/du/du2-test");
|
||||
var du2_test_time = props.globals.getNode("/instrumentation/du/du2-test-time");
|
||||
var du2_test_amount = props.globals.getNode("/instrumentation/du/du2-test-amount");
|
||||
var du2_offtime = props.globals.initNode("/instrumentation/du/du2-off-time", 0.0, "DOUBLE");
|
||||
var du5_test = props.globals.getNode("/instrumentation/du/du5-test");
|
||||
var du5_test_time = props.globals.getNode("/instrumentation/du/du5-test-time");
|
||||
var du5_offtime = props.globals.initNode("/instrumentation/du/du5-off-time", 0.0, "DOUBLE");
|
||||
var du5_test_amount = props.globals.getNode("/instrumentation/du/du5-test-amount");
|
||||
var du6_test = props.globals.getNode("/instrumentation/du/du6-test");
|
||||
var du6_test_time = props.globals.getNode("/instrumentation/du/du6-test-time");
|
||||
|
@ -84,47 +86,60 @@ var canvas_nd_base = {
|
|||
getKeys: func() {
|
||||
return [];
|
||||
},
|
||||
update: func() {
|
||||
elapsedtime = getprop("/sim/time/elapsed-sec");
|
||||
updateDu2: func() {
|
||||
var elapsedtime = getprop("/sim/time/elapsed-sec");
|
||||
if (getprop("/systems/electrical/bus/ac-ess-shed") >= 110) {
|
||||
if (wow0.getValue() == 1) {
|
||||
if (getprop("/systems/acconfig/autoconfig-running") != 1 and du2_test.getValue() != 1) {
|
||||
if (du2_offtime.getValue() + 3 < elapsedtime) {
|
||||
if (wow0.getValue() == 1) {
|
||||
if (getprop("/systems/acconfig/autoconfig-running") != 1 and du2_test.getValue() != 1) {
|
||||
du2_test.setValue(1);
|
||||
du2_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du2_test_time.setValue(getprop("/sim/time/elapsed-sec"));
|
||||
} else if (getprop("/systems/acconfig/autoconfig-running") == 1 and du2_test.getValue() != 1) {
|
||||
du2_test.setValue(1);
|
||||
du2_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du2_test_time.setValue(getprop("/sim/time/elapsed-sec") - 30);
|
||||
}
|
||||
} else {
|
||||
du2_test.setValue(1);
|
||||
du2_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du2_test_time.setValue(getprop("/sim/time/elapsed-sec"));
|
||||
} else if (getprop("/systems/acconfig/autoconfig-running") == 1 and du2_test.getValue() != 1) {
|
||||
du2_test.setValue(1);
|
||||
du2_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du2_test_time.setValue(getprop("/sim/time/elapsed-sec") - 30);
|
||||
du2_test_amount.setValue(0);
|
||||
du2_test_time.setValue(-100);
|
||||
}
|
||||
} else {
|
||||
du2_test.setValue(1);
|
||||
du2_test_amount.setValue(0);
|
||||
du2_test_time.setValue(-100);
|
||||
}
|
||||
} else {
|
||||
du2_test.setValue(0);
|
||||
du2_offtime.setValue(elapsedtime);
|
||||
}
|
||||
},
|
||||
updateDu5: func() {
|
||||
var elapsedtime = getprop("/sim/time/elapsed-sec");
|
||||
if (getprop("/systems/electrical/bus/ac-2") >= 110) {
|
||||
if (wow0.getValue() == 1) {
|
||||
if (getprop("/systems/acconfig/autoconfig-running") != 1 and du5_test.getValue() != 1) {
|
||||
if (du5_offtime.getValue() + 3 < elapsedtime) {
|
||||
if (wow0.getValue() == 1) {
|
||||
if (getprop("/systems/acconfig/autoconfig-running") != 1 and du5_test.getValue() != 1) {
|
||||
du5_test.setValue(1);
|
||||
du5_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du5_test_time.setValue(getprop("/sim/time/elapsed-sec"));
|
||||
} else if (getprop("/systems/acconfig/autoconfig-running") == 1 and du5_test.getValue() != 1) {
|
||||
du5_test.setValue(1);
|
||||
du5_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du5_test_time.setValue(getprop("/sim/time/elapsed-sec") - 30);
|
||||
}
|
||||
} else {
|
||||
du5_test.setValue(1);
|
||||
du5_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du5_test_time.setValue(getprop("/sim/time/elapsed-sec"));
|
||||
} else if (getprop("/systems/acconfig/autoconfig-running") == 1 and du5_test.getValue() != 1) {
|
||||
du5_test.setValue(1);
|
||||
du5_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du5_test_time.setValue(getprop("/sim/time/elapsed-sec") - 30);
|
||||
du5_test_amount.setValue(0);
|
||||
du5_test_time.setValue(-100);
|
||||
}
|
||||
} else {
|
||||
du5_test.setValue(1);
|
||||
du5_test_amount.setValue(0);
|
||||
du5_test_time.setValue(-100);
|
||||
}
|
||||
} else {
|
||||
du5_test.setValue(0);
|
||||
du5_offtime.setValue(elapsedtime);
|
||||
}
|
||||
|
||||
},
|
||||
update: func() {
|
||||
var elapsedtime = getprop("/sim/time/elapsed-sec");
|
||||
|
||||
if (getprop("/systems/electrical/bus/ac-ess-shed") >= 110 and getprop("/controls/lighting/DU/du2") > 0) {
|
||||
if (du2_test_time.getValue() + du2_test_amount.getValue() >= elapsedtime and cpt_du_xfr.getValue() != 1) {
|
||||
ND_1.page.hide();
|
||||
|
@ -383,3 +398,11 @@ var showNd = func(nd = nil) {
|
|||
var dlg = canvas.Window.new([512, 512], "dialog").set("resize", 1);
|
||||
dlg.setCanvas(nd_display[nd]);
|
||||
}
|
||||
|
||||
setlistener("/systems/electrical/bus/ac-ess-shed", func() {
|
||||
canvas_nd_base.updateDu2();
|
||||
}, 0, 0);
|
||||
|
||||
setlistener("/systems/electrical/bus/ac-2", func() {
|
||||
canvas_nd_base.updateDu5();
|
||||
}, 0, 0);
|
||||
|
|
|
@ -40,14 +40,6 @@
|
|||
<object-name>ELAC1Btn1F</object-name>
|
||||
<object-name>ELAC1Btn2O</object-name>
|
||||
<object-name>EmerExtLtBtn2O</object-name>
|
||||
<object-name>Eng1FireAgt1Btn1S</object-name>
|
||||
<object-name>Eng1FireAgt1Btn2D</object-name>
|
||||
<object-name>Eng1FireAgt2Btn1S</object-name>
|
||||
<object-name>Eng1FireAgt2Btn2D</object-name>
|
||||
<object-name>Eng2FireAgt1Btn1S</object-name>
|
||||
<object-name>Eng2FireAgt1Btn2D</object-name>
|
||||
<object-name>Eng2FireAgt2Btn1S</object-name>
|
||||
<object-name>Eng2FireAgt2Btn2D</object-name>
|
||||
<object-name>ExtPwrBtn2O</object-name>
|
||||
<object-name>FAC1Btn1F</object-name>
|
||||
<object-name>FAC1Btn2O</object-name>
|
||||
|
@ -65,10 +57,18 @@
|
|||
<object-name>SEC1Btn1F</object-name>
|
||||
<object-name>SEC1Btn2O</object-name>
|
||||
<object-name>VentBlowBtn1F</object-name>
|
||||
<object-name>Eng1FireAgt1Btn1S</object-name>
|
||||
<object-name>Eng1FireAgt1Btn2D</object-name>
|
||||
<object-name>Eng2FireAgt1Btn1S</object-name>
|
||||
<object-name>Eng2FireAgt1Btn2D</object-name>
|
||||
<object-name>Eng1FireAgt2Btn1S</object-name>
|
||||
<object-name>Eng1FireAgt2Btn2D</object-name>
|
||||
<object-name>Eng2FireAgt2Btn1S</object-name>
|
||||
<object-name>Eng2FireAgt2Btn2D</object-name>
|
||||
<condition>
|
||||
<greater-than-equals>
|
||||
<property>systems/electrical/bus/ac-ess</property>
|
||||
<value>25</value>
|
||||
<value>5</value>
|
||||
</greater-than-equals>
|
||||
</condition>
|
||||
</animation>
|
||||
|
@ -167,7 +167,7 @@
|
|||
</greater-than-equals>
|
||||
</condition>
|
||||
</animation>
|
||||
|
||||
|
||||
<!-- These are not simulated yet, so they only illuminate when the test is on. Remove each light/button once you add its select animation. -JD -->
|
||||
<animation>
|
||||
<type>select</type>
|
||||
|
@ -3248,16 +3248,10 @@
|
|||
<repeatable>false</repeatable>
|
||||
<binding>
|
||||
<condition>
|
||||
<or>
|
||||
<greater-than-equals>
|
||||
<property>systems/electrical/bus/dc-bat</property>
|
||||
<value>25</value>
|
||||
</greater-than-equals>
|
||||
<greater-than-equals>
|
||||
<property>systems/electrical/bus/dc-ess</property>
|
||||
<value>25</value>
|
||||
</greater-than-equals>
|
||||
</or>
|
||||
<greater-than-equals>
|
||||
<property>systems/electrical/bus/dc-bat</property>
|
||||
<value>25</value>
|
||||
</greater-than-equals> <!-- control is on DC BAT bus - so if you enter EMER ELEC with it turned off, too bad -->
|
||||
</condition>
|
||||
<command>property-toggle</command>
|
||||
<property>controls/electrical/switches/apu</property>
|
||||
|
@ -3696,21 +3690,8 @@
|
|||
<object-name>EmerGenInd1F</object-name>
|
||||
<condition>
|
||||
<and>
|
||||
<greater-than-equals>
|
||||
<property>systems/electrical/bus/dc-ess</property>
|
||||
<value>25</value>
|
||||
</greater-than-equals>
|
||||
<or>
|
||||
<and>
|
||||
<equals>
|
||||
<property>systems/electrical/bus/ac-1</property>
|
||||
<value>0</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>systems/electrical/bus/ac-2</property>
|
||||
<value>0</value>
|
||||
</equals>
|
||||
</and>
|
||||
<property>/systems/electrical/light/rat-emer-gen-fault</property>
|
||||
<equals>
|
||||
<property>controls/switches/annun-test</property>
|
||||
<value>1</value>
|
||||
|
@ -6497,6 +6478,18 @@
|
|||
<command>property-assign</command>
|
||||
<property>controls/engines/engine[0]/agent1-btn</property>
|
||||
<value>1</value>
|
||||
<condition>
|
||||
<or>
|
||||
<greater-than-equals>
|
||||
<property>systems/electrical/bus/dc-hot-1</property>
|
||||
<value>25</value>
|
||||
</greater-than-equals>
|
||||
<greater-than-equals>
|
||||
<property>systems/electrical/bus/dc-hot-2</property>
|
||||
<value>25</value>
|
||||
</greater-than-equals>
|
||||
</or>
|
||||
</condition>
|
||||
</binding>
|
||||
</action>
|
||||
</animation>
|
||||
|
@ -6513,6 +6506,12 @@
|
|||
<command>property-assign</command>
|
||||
<property>controls/engines/engine[0]/agent2-btn</property>
|
||||
<value>1</value>
|
||||
<condition>
|
||||
<greater-than-equals>
|
||||
<property>systems/electrical/bus/dc-2</property>
|
||||
<value>25</value>
|
||||
</greater-than-equals>
|
||||
</condition>
|
||||
</binding>
|
||||
</action>
|
||||
</animation>
|
||||
|
@ -6520,22 +6519,60 @@
|
|||
<animation>
|
||||
<type>select</type>
|
||||
<object-name>Eng1FireAgt1Btn1S</object-name>
|
||||
<condition>
|
||||
<and>
|
||||
<or>
|
||||
<equals>
|
||||
<property>controls/engines/engine[0]/fire-btn</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/controls/fire/test-btn-1</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>controls/switches/annun-test</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</or>
|
||||
<or>
|
||||
<greater-than-equals>
|
||||
<property>systems/electrical/bus/dc-hot-1</property>
|
||||
<value>25</value>
|
||||
</greater-than-equals>
|
||||
<greater-than-equals>
|
||||
<property>systems/electrical/bus/dc-hot-2</property>
|
||||
<value>25</value>
|
||||
</greater-than-equals>
|
||||
</or>
|
||||
</and>
|
||||
</condition>
|
||||
</animation>
|
||||
|
||||
<animation>
|
||||
<type>select</type>
|
||||
<object-name>Eng1FireAgt2Btn1S</object-name>
|
||||
<condition>
|
||||
<or>
|
||||
<equals>
|
||||
<property>controls/engines/engine[0]/fire-btn</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/controls/fire/test-btn-1</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>controls/switches/annun-test</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</or>
|
||||
<and>
|
||||
<or>
|
||||
<equals>
|
||||
<property>controls/engines/engine[0]/fire-btn</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/controls/fire/test-btn-1</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>controls/switches/annun-test</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</or>
|
||||
<greater-than-equals>
|
||||
<property>systems/electrical/bus/dc-2</property>
|
||||
<value>25</value>
|
||||
</greater-than-equals>
|
||||
</and>
|
||||
</condition>
|
||||
</animation>
|
||||
|
||||
|
@ -6592,6 +6629,24 @@
|
|||
<command>property-assign</command>
|
||||
<property>controls/fire/test-btn-1</property>
|
||||
<value>1</value>
|
||||
<condition>
|
||||
<or>
|
||||
<or>
|
||||
<greater-than-equals>
|
||||
<property>systems/electrical/bus/dc-hot-1</property>
|
||||
<value>25</value>
|
||||
</greater-than-equals>
|
||||
<greater-than-equals>
|
||||
<property>systems/electrical/bus/dc-hot-2</property>
|
||||
<value>25</value>
|
||||
</greater-than-equals>
|
||||
</or>
|
||||
<greater-than-equals>
|
||||
<property>systems/electrical/bus/dc-2</property>
|
||||
<value>25</value>
|
||||
</greater-than-equals>
|
||||
</or>
|
||||
</condition>
|
||||
</binding>
|
||||
<mod-up>
|
||||
<binding>
|
||||
|
@ -6613,6 +6668,24 @@
|
|||
<command>property-assign</command>
|
||||
<property>controls/fire/test-btn-2</property>
|
||||
<value>1</value>
|
||||
<condition>
|
||||
<or>
|
||||
<or>
|
||||
<greater-than-equals>
|
||||
<property>systems/electrical/bus/dc-hot-1</property>
|
||||
<value>25</value>
|
||||
</greater-than-equals>
|
||||
<greater-than-equals>
|
||||
<property>systems/electrical/bus/dc-hot-2</property>
|
||||
<value>25</value>
|
||||
</greater-than-equals>
|
||||
</or>
|
||||
<greater-than-equals>
|
||||
<property>systems/electrical/bus/dc-2</property>
|
||||
<value>25</value>
|
||||
</greater-than-equals>
|
||||
</or>
|
||||
</condition>
|
||||
</binding>
|
||||
<mod-up>
|
||||
<binding>
|
||||
|
@ -6634,6 +6707,18 @@
|
|||
<command>property-assign</command>
|
||||
<property>controls/fire/apu-test-btn</property>
|
||||
<value>1</value>
|
||||
<condition>
|
||||
<or>
|
||||
<greater-than-equals>
|
||||
<property>systems/electrical/bus/dc-hot-1</property>
|
||||
<value>25</value>
|
||||
</greater-than-equals>
|
||||
<greater-than-equals>
|
||||
<property>systems/electrical/bus/dc-hot-2</property>
|
||||
<value>25</value>
|
||||
</greater-than-equals>
|
||||
</or>
|
||||
</condition>
|
||||
</binding>
|
||||
<mod-up>
|
||||
<binding>
|
||||
|
@ -6746,6 +6831,22 @@
|
|||
<command>property-assign</command>
|
||||
<property>controls/APU/agent-btn</property>
|
||||
<value>1</value>
|
||||
<condition>
|
||||
<or>
|
||||
<greater-than-equals>
|
||||
<property>systems/electrical/bus/dc-hot-1</property>
|
||||
<value>25</value>
|
||||
</greater-than-equals>
|
||||
<greater-than-equals>
|
||||
<property>systems/electrical/bus/dc-hot-2</property>
|
||||
<value>25</value>
|
||||
</greater-than-equals>
|
||||
<greater-than-equals>
|
||||
<property>systems/electrical/bus/dc-bat</property>
|
||||
<value>25</value>
|
||||
</greater-than-equals>
|
||||
</or>
|
||||
</condition>
|
||||
</binding>
|
||||
</action>
|
||||
</animation>
|
||||
|
@ -6893,6 +6994,18 @@
|
|||
<command>property-assign</command>
|
||||
<property>controls/engines/engine[1]/agent1-btn</property>
|
||||
<value>1</value>
|
||||
<condition>
|
||||
<or>
|
||||
<greater-than-equals>
|
||||
<property>systems/electrical/bus/dc-hot-1</property>
|
||||
<value>25</value>
|
||||
</greater-than-equals>
|
||||
<greater-than-equals>
|
||||
<property>systems/electrical/bus/dc-hot-2</property>
|
||||
<value>25</value>
|
||||
</greater-than-equals>
|
||||
</or>
|
||||
</condition>
|
||||
</binding>
|
||||
</action>
|
||||
</animation>
|
||||
|
@ -6909,6 +7022,12 @@
|
|||
<command>property-assign</command>
|
||||
<property>controls/engines/engine[1]/agent2-btn</property>
|
||||
<value>1</value>
|
||||
<condition>
|
||||
<greater-than-equals>
|
||||
<property>systems/electrical/bus/dc-2</property>
|
||||
<value>25</value>
|
||||
</greater-than-equals>
|
||||
</condition>
|
||||
</binding>
|
||||
</action>
|
||||
</animation>
|
||||
|
@ -6916,22 +7035,60 @@
|
|||
<animation>
|
||||
<type>select</type>
|
||||
<object-name>Eng2FireAgt1Btn1S</object-name>
|
||||
<condition>
|
||||
<and>
|
||||
<or>
|
||||
<equals>
|
||||
<property>controls/engines/engine[1]/fire-btn</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/controls/fire/test-btn-2</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>controls/switches/annun-test</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</or>
|
||||
<or>
|
||||
<greater-than-equals>
|
||||
<property>systems/electrical/bus/dc-hot-1</property>
|
||||
<value>25</value>
|
||||
</greater-than-equals>
|
||||
<greater-than-equals>
|
||||
<property>systems/electrical/bus/dc-hot-2</property>
|
||||
<value>25</value>
|
||||
</greater-than-equals>
|
||||
</or>
|
||||
</and>
|
||||
</condition>
|
||||
</animation>
|
||||
|
||||
<animation>
|
||||
<type>select</type>
|
||||
<object-name>Eng2FireAgt2Btn1S</object-name>
|
||||
<condition>
|
||||
<or>
|
||||
<equals>
|
||||
<property>controls/engines/engine[1]/fire-btn</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>controls/fire/test-btn-2</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>controls/switches/annun-test</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</or>
|
||||
<and>
|
||||
<or>
|
||||
<equals>
|
||||
<property>controls/engines/engine[1]/fire-btn</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/controls/fire/test-btn-2</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>controls/switches/annun-test</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</or>
|
||||
<greater-than-equals>
|
||||
<property>systems/electrical/bus/dc-2</property>
|
||||
<value>25</value>
|
||||
</greater-than-equals>
|
||||
</and>
|
||||
</condition>
|
||||
</animation>
|
||||
|
||||
|
|
|
@ -108,12 +108,6 @@ var athr = props.globals.getNode("/it-autoflight/output/athr", 1);
|
|||
var gear_agl = props.globals.getNode("/position/gear-agl-ft", 1);
|
||||
var aileron_input = props.globals.getNode("/controls/flight/aileron-input-fast", 1);
|
||||
var elevator_input = props.globals.getNode("/controls/flight/elevator-input-fast", 1);
|
||||
var adirs0_active = props.globals.getNode("/instrumentation/adirs/adr[0]/active", 1);
|
||||
var adirs1_active = props.globals.getNode("/instrumentation/adirs/adr[1]/active", 1);
|
||||
var adirs2_active = props.globals.getNode("/instrumentation/adirs/adr[2]/active", 1);
|
||||
var ir0_aligned = props.globals.getNode("/instrumentation/adirs/ir[0]/aligned", 1);
|
||||
var ir1_aligned = props.globals.getNode("/instrumentation/adirs/ir[1]/aligned", 1);
|
||||
var ir2_aligned = props.globals.getNode("/instrumentation/adirs/ir[2]/aligned", 1);
|
||||
var att_switch = props.globals.getNode("/controls/switching/ATTHDG", 1);
|
||||
var air_switch = props.globals.getNode("/controls/switching/AIRDATA", 1);
|
||||
|
||||
|
@ -128,11 +122,9 @@ var hdg_diff = props.globals.initNode("/instrumentation/pfd/hdg-diff", 0.0, "DOU
|
|||
var hdg_scale = props.globals.initNode("/instrumentation/pfd/heading-scale", 0.0, "DOUBLE");
|
||||
var track = props.globals.initNode("/instrumentation/pfd/track-deg", 0.0, "DOUBLE");
|
||||
var track_diff = props.globals.initNode("/instrumentation/pfd/track-hdg-diff", 0.0, "DOUBLE");
|
||||
var speed_pred_1 = props.globals.initNode("/instrumentation/pfd/speed-lookahead-1", 0.0, "DOUBLE");
|
||||
var speed_pred_2 = props.globals.initNode("/instrumentation/pfd/speed-lookahead-2", 0.0, "DOUBLE");
|
||||
var speed_pred_3 = props.globals.initNode("/instrumentation/pfd/speed-lookahead-3", 0.0, "DOUBLE");
|
||||
var du1_test = props.globals.initNode("/instrumentation/du/du1-test", 0, "BOOL");
|
||||
var du1_test_time = props.globals.initNode("/instrumentation/du/du1-test-time", 0.0, "DOUBLE");
|
||||
var du1_offtime = props.globals.initNode("/instrumentation/du/du1-off-time", 0.0, "DOUBLE");
|
||||
var du1_test_amount = props.globals.initNode("/instrumentation/du/du1-test-amount", 0.0, "DOUBLE");
|
||||
var du2_test = props.globals.initNode("/instrumentation/du/du2-test", 0, "BOOL");
|
||||
var du2_test_time = props.globals.initNode("/instrumentation/du/du2-test-time", 0.0, "DOUBLE");
|
||||
|
@ -143,6 +135,7 @@ var du5_test_amount = props.globals.initNode("/instrumentation/du/du5-test-amoun
|
|||
var du6_test = props.globals.initNode("/instrumentation/du/du6-test", 0, "BOOL");
|
||||
var du6_test_time = props.globals.initNode("/instrumentation/du/du6-test-time", 0.0, "DOUBLE");
|
||||
var du6_test_amount = props.globals.initNode("/instrumentation/du/du6-test-amount", 0.0, "DOUBLE");
|
||||
var du6_offtime = props.globals.initNode("/instrumentation/du/du6-off-time", 0.0, "DOUBLE");
|
||||
|
||||
var canvas_PFD_base = {
|
||||
init: func(canvas_group, file) {
|
||||
|
@ -196,47 +189,58 @@ var canvas_PFD_base = {
|
|||
"QNH_std","QNH_box","LOC_pointer","LOC_scale","GS_scale","GS_pointer","CRS_pointer","HDG_target","HDG_scale","HDG_one","HDG_two","HDG_three","HDG_four","HDG_five","HDG_six","HDG_seven","HDG_digit_L","HDG_digit_R","HDG_error","HDG_group","HDG_frame",
|
||||
"TRK_pointer","machError"];
|
||||
},
|
||||
update: func() {
|
||||
elapsedtime_act = elapsedtime.getValue();
|
||||
updateDu1: func() {
|
||||
var elapsedtime_act = elapsedtime.getValue();
|
||||
if (acess.getValue() >= 110) {
|
||||
if (wow0.getValue() == 1) {
|
||||
if (acconfig.getValue() != 1 and du1_test.getValue() != 1) {
|
||||
if (du1_offtime.getValue() + 3 < elapsedtime_act) {
|
||||
if (wow0.getValue() == 1) {
|
||||
if (acconfig.getValue() != 1 and du1_test.getValue() != 1) {
|
||||
du1_test.setValue(1);
|
||||
du1_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du1_test_time.setValue(elapsedtime_act);
|
||||
} else if (acconfig.getValue() == 1 and du1_test.getValue() != 1) {
|
||||
du1_test.setValue(1);
|
||||
du1_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du1_test_time.setValue(elapsedtime_act - 30);
|
||||
}
|
||||
} else {
|
||||
du1_test.setValue(1);
|
||||
du1_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du1_test_time.setValue(elapsedtime_act);
|
||||
} else if (acconfig.getValue() == 1 and du1_test.getValue() != 1) {
|
||||
du1_test.setValue(1);
|
||||
du1_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du1_test_time.setValue(elapsedtime_act - 30);
|
||||
du1_test_amount.setValue(0);
|
||||
du1_test_time.setValue(-100);
|
||||
}
|
||||
} else {
|
||||
du1_test.setValue(1);
|
||||
du1_test_amount.setValue(0);
|
||||
du1_test_time.setValue(-100);
|
||||
}
|
||||
} else {
|
||||
du1_test.setValue(0);
|
||||
du1_offtime.setValue(elapsedtime_act);
|
||||
}
|
||||
|
||||
},
|
||||
updateDu6: func() {
|
||||
var elapsedtime_act = elapsedtime.getValue();
|
||||
if (ac2.getValue() >= 110) {
|
||||
if (wow0.getValue() == 1) {
|
||||
if (acconfig.getValue() != 1 and du6_test.getValue() != 1) {
|
||||
if (du6_offtime.getValue() + 3 < elapsedtime_act) {
|
||||
if (wow0.getValue() == 1) {
|
||||
if (acconfig.getValue() != 1 and du6_test.getValue() != 1) {
|
||||
du6_test.setValue(1);
|
||||
du6_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du6_test_time.setValue(elapsedtime_act);
|
||||
} else if (acconfig.getValue() == 1 and du6_test.getValue() != 1) {
|
||||
du6_test.setValue(1);
|
||||
du6_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du6_test_time.setValue(elapsedtime_act - 30);
|
||||
}
|
||||
} else {
|
||||
du6_test.setValue(1);
|
||||
du6_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du6_test_time.setValue(elapsedtime_act);
|
||||
} else if (acconfig.getValue() == 1 and du6_test.getValue() != 1) {
|
||||
du6_test.setValue(1);
|
||||
du6_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du6_test_time.setValue(elapsedtime_act - 30);
|
||||
du6_test_amount.setValue(0);
|
||||
du6_test_time.setValue(-100);
|
||||
}
|
||||
} else {
|
||||
du6_test.setValue(1);
|
||||
du6_test_amount.setValue(0);
|
||||
du6_test_time.setValue(-100);
|
||||
}
|
||||
} else {
|
||||
du6_test.setValue(0);
|
||||
du6_offtime.setValue(elapsedtime_act);
|
||||
}
|
||||
},
|
||||
update: func() {
|
||||
var elapsedtime_act = elapsedtime.getValue();
|
||||
|
||||
if (acconfig_mismatch.getValue() == "0x000") {
|
||||
PFD_1_mismatch.page.hide();
|
||||
|
@ -790,26 +794,22 @@ var canvas_PFD_1 = {
|
|||
wow2_act = wow2.getValue();
|
||||
|
||||
# Errors
|
||||
if ((adirs0_active.getValue() == 1) or (air_switch.getValue() == -1 and adirs2_active.getValue() == 1)) {
|
||||
me["VS_group"].show();
|
||||
me["VS_error"].hide();
|
||||
} else {
|
||||
me["VS_error"].show();
|
||||
me["VS_group"].hide();
|
||||
}
|
||||
|
||||
if ((ir0_aligned.getValue() == 1) or (ir2_aligned.getValue() == 1 and att_switch.getValue() == -1)) {
|
||||
if (systems.ADIRSnew.ADIRunits[0].aligned == 1 or (systems.ADIRSnew.ADIRunits[2].aligned == 1 and att_switch.getValue() == -1)) {
|
||||
me["AI_group"].show();
|
||||
me["HDG_group"].show();
|
||||
me["AI_error"].hide();
|
||||
me["HDG_error"].hide();
|
||||
me["HDG_frame"].setColor(1,1,1);
|
||||
me["VS_group"].show();
|
||||
me["VS_error"].hide(); # VS is inertial-sourced
|
||||
} else {
|
||||
me["AI_error"].show();
|
||||
me["HDG_error"].show();
|
||||
me["HDG_frame"].setColor(1,0,0);
|
||||
me["AI_group"].hide();
|
||||
me["HDG_group"].hide();
|
||||
me["VS_error"].show();
|
||||
me["VS_group"].hide();
|
||||
}
|
||||
|
||||
# FD
|
||||
|
@ -938,7 +938,7 @@ var canvas_PFD_1 = {
|
|||
me["ASI_target"].hide();
|
||||
}
|
||||
|
||||
me.ASItrend = speed_pred_1.getValue() - me.ASI;
|
||||
me.ASItrend = dmc.DMController.DMCs[0].outputs[6].getValue() - me.ASI;
|
||||
me["ASI_trend_up"].setTranslation(0, math.clamp(me.ASItrend, 0, 50) * -6.6);
|
||||
me["ASI_trend_down"].setTranslation(0, math.clamp(me.ASItrend, -50, 0) * -6.6);
|
||||
|
||||
|
@ -1083,37 +1083,22 @@ var canvas_PFD_2 = {
|
|||
wow2_act = wow2.getValue();
|
||||
|
||||
# Errors
|
||||
if ((adirs1_active.getValue() == 1) or (air_switch.getValue() == 1 and adirs2_active.getValue() == 1)) {
|
||||
me["ALT_group"].show();
|
||||
me["ALT_group2"].show();
|
||||
me["ALT_scale"].show();
|
||||
me["VS_group"].show();
|
||||
me["ALT_error"].hide();
|
||||
me["ALT_frame"].setColor(1,1,1);
|
||||
me["VS_error"].hide();
|
||||
} else {
|
||||
me["ALT_error"].show();
|
||||
me["ALT_frame"].setColor(1,0,0);
|
||||
me["VS_error"].show();
|
||||
me["ASI_group"].hide();
|
||||
me["ALT_group"].hide();
|
||||
me["ALT_group2"].hide();
|
||||
me["ALT_scale"].hide();
|
||||
me["VS_group"].hide();
|
||||
}
|
||||
|
||||
if ((ir1_aligned.getValue() == 1) or (ir2_aligned.getValue() == 1 and att_switch.getValue() == 1)) {
|
||||
if (systems.ADIRSnew.ADIRunits[1].aligned == 1 or (systems.ADIRSnew.ADIRunits[2].aligned == 1 and att_switch.getValue() == 1)) {
|
||||
me["AI_group"].show();
|
||||
me["HDG_group"].show();
|
||||
me["AI_error"].hide();
|
||||
me["HDG_error"].hide();
|
||||
me["HDG_frame"].setColor(1,1,1);
|
||||
me["VS_group"].show();
|
||||
me["VS_error"].hide(); # VS is inertial-sourced
|
||||
} else {
|
||||
me["AI_error"].show();
|
||||
me["HDG_error"].show();
|
||||
me["HDG_frame"].setColor(1,0,0);
|
||||
me["AI_group"].hide();
|
||||
me["HDG_group"].hide();
|
||||
me["VS_error"].show();
|
||||
me["VS_group"].hide();
|
||||
}
|
||||
|
||||
# FD
|
||||
|
@ -1242,7 +1227,7 @@ var canvas_PFD_2 = {
|
|||
me["ASI_target"].hide();
|
||||
}
|
||||
|
||||
me.ASItrend = speed_pred_2.getValue() - me.ASI;
|
||||
me.ASItrend = dmc.DMController.DMCs[1].outputs[6].getValue() - me.ASI;
|
||||
me["ASI_trend_up"].setTranslation(0, math.clamp(me.ASItrend, 0, 50) * -6.6);
|
||||
me["ASI_trend_down"].setTranslation(0, math.clamp(me.ASItrend, -50, 0) * -6.6);
|
||||
|
||||
|
@ -1584,4 +1569,12 @@ var fontSizeHDG = func(input) {
|
|||
} else {
|
||||
return 32;
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
setlistener("/systems/electrical/bus/ac-ess", func() {
|
||||
canvas_PFD_base.updateDu1();
|
||||
}, 0, 0);
|
||||
|
||||
setlistener("/systems/electrical/bus/ac-2", func() {
|
||||
canvas_PFD_base.updateDu6();
|
||||
}, 0, 0);
|
|
@ -28,6 +28,7 @@ var N1_lim = props.globals.initNode("/ECAM/Upper/N1ylim", 0, "DOUBLE");
|
|||
var du3_test = props.globals.initNode("/instrumentation/du/du3-test", 0, "BOOL");
|
||||
var du3_test_time = props.globals.initNode("/instrumentation/du/du3-test-time", 0.0, "DOUBLE");
|
||||
var du3_test_amount = props.globals.initNode("/instrumentation/du/du3-test-amount", 0.0, "DOUBLE");
|
||||
var du3_offtime = props.globals.initNode("/instrumentation/du/du3-off-time", 0.0, "DOUBLE");
|
||||
|
||||
# Fetch nodes:
|
||||
var et = props.globals.getNode("/sim/time/elapsed-sec", 1);
|
||||
|
@ -133,28 +134,34 @@ var canvas_upperECAM_base = {
|
|||
getKeys: func() {
|
||||
return [];
|
||||
},
|
||||
update: func() {
|
||||
elapsedtime = et.getValue();
|
||||
updateDu3: func() {
|
||||
var elapsedtime = et.getValue();
|
||||
|
||||
if (acess.getValue() >= 110) {
|
||||
if (wow0.getValue() == 1) {
|
||||
if (acconfig.getValue() != 1 and du3_test.getValue() != 1) {
|
||||
if (du3_offtime.getValue() + 3 < elapsedtime) {
|
||||
if (wow0.getValue() == 1) {
|
||||
if (acconfig.getValue() != 1 and du3_test.getValue() != 1) {
|
||||
du3_test.setValue(1);
|
||||
du3_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du3_test_time.setValue(elapsedtime);
|
||||
} else if (acconfig.getValue() == 1 and du3_test.getValue() != 1) {
|
||||
du3_test.setValue(1);
|
||||
du3_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du3_test_time.setValue(elapsedtime - 30);
|
||||
}
|
||||
} else {
|
||||
du3_test.setValue(1);
|
||||
du3_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du3_test_time.setValue(elapsedtime);
|
||||
} else if (acconfig.getValue() == 1 and du3_test.getValue() != 1) {
|
||||
du3_test.setValue(1);
|
||||
du3_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du3_test_time.setValue(elapsedtime - 30);
|
||||
du3_test_amount.setValue(0);
|
||||
du3_test_time.setValue(-100);
|
||||
}
|
||||
} else {
|
||||
du3_test.setValue(1);
|
||||
du3_test_amount.setValue(0);
|
||||
du3_test_time.setValue(-100);
|
||||
}
|
||||
} else {
|
||||
du3_test.setValue(0);
|
||||
du3_offtime.setValue(elapsedtime);
|
||||
}
|
||||
},
|
||||
update: func() {
|
||||
var elapsedtime = et.getValue();
|
||||
|
||||
cur_eng_option = eng_option.getValue();
|
||||
if (acess.getValue() >= 110 and du3_lgt.getValue() > 0.01) {
|
||||
|
@ -1168,6 +1175,7 @@ var canvas_upperECAM_test = {
|
|||
return ["Test_white","Test_text"];
|
||||
},
|
||||
update: func() {
|
||||
var elapsedtime = et.getValue();
|
||||
if (du3_test_time.getValue() + 1 >= elapsedtime) {
|
||||
me["Test_white"].show();
|
||||
me["Test_text"].hide();
|
||||
|
@ -1212,3 +1220,7 @@ var showUpperECAM = func {
|
|||
var dlg = canvas.Window.new([512, 512], "dialog").set("resize", 1);
|
||||
dlg.setCanvas(upperECAM_display);
|
||||
}
|
||||
|
||||
setlistener("/systems/electrical/bus/ac-ess", func() {
|
||||
canvas_upperECAM_base.updateDu3();
|
||||
}, 0, 0);
|
||||
|
|
|
@ -15,12 +15,13 @@ var DMC = {
|
|||
altitudesPfd: [props.globals.getNode("/instrumentation/altimeter[0]/indicated-altitude-ft-pfd", 1), props.globals.getNode("/instrumentation/altimeter[1]/indicated-altitude-ft-pfd", 1), props.globals.getNode("/instrumentation/altimeter[2]/indicated-altitude-ft-pfd", 1)],
|
||||
sats: [props.globals.getNode("/systems/navigation/adr/output/sat-1", 1), props.globals.getNode("/systems/navigation/adr/output/sat-2", 1), props.globals.getNode("/systems/navigation/adr/output/sat-3", 1)],
|
||||
tats: [props.globals.getNode("/systems/navigation/adr/output/tat-1", 1), props.globals.getNode("/systems/navigation/adr/output/tat-2", 1), props.globals.getNode("/systems/navigation/adr/output/tat-3", 1)],
|
||||
outputs: [nil, nil, nil, nil, nil, nil], # airspeed, altitude, mach, pfd altitude, sat, tat
|
||||
trends: [props.globals.getNode("/instrumentation/pfd/speed-lookahead-1", 1), props.globals.getNode("/instrumentation/pfd/speed-lookahead-2", 1), props.globals.getNode("/instrumentation/pfd/speed-lookahead-3", 1)],
|
||||
outputs: [nil, nil, nil, nil, nil, nil, nil], # airspeed, altitude, mach, pfd altitude, sat, tat, speed trend
|
||||
|
||||
new: func(num) {
|
||||
var d = { parents:[DMC] };
|
||||
d.activeADIRS = num;
|
||||
d.outputs = [nil, nil, nil, nil, nil, nil];
|
||||
d.outputs = [nil, nil, nil, nil, nil, nil, nil];
|
||||
return d;
|
||||
},
|
||||
changeActiveADIRS: func(newADIRS) {
|
||||
|
@ -34,6 +35,7 @@ var DMC = {
|
|||
me.outputs[3] = me.altitudesPfd[ADIRS];
|
||||
me.outputs[4] = me.sats[ADIRS];
|
||||
me.outputs[5] = me.tats[ADIRS];
|
||||
me.outputs[6] = me.trends[ADIRS];
|
||||
},
|
||||
setOutputsNil: func() {
|
||||
me.outputs[0] = nil;
|
||||
|
@ -42,6 +44,7 @@ var DMC = {
|
|||
me.outputs[3] = nil;
|
||||
me.outputs[4] = nil;
|
||||
me.outputs[5] = nil;
|
||||
me.outputs[6] = nil;
|
||||
},
|
||||
update: func() {
|
||||
if (systems.ADIRSnew.ADIRunits[me.activeADIRS].operative and systems.ADIRSnew.ADIRunits[me.activeADIRS].outputOn) {
|
|
@ -25,16 +25,19 @@ var statusIndex = 0;
|
|||
var flash = 0;
|
||||
var hasCleared = 0;
|
||||
var statusFlag = 0;
|
||||
var counter = 0;
|
||||
var noMainMsg = 0;
|
||||
var storeFirstWarning = nil;
|
||||
|
||||
var warning = {
|
||||
new: func(msg,colour = "g",aural = 9,light = 9,hasSubmsg = 0,lastSubmsg = 0, sdPage = "nil", isMemo = 0) {
|
||||
new: func(msg,colour = "g",aural = 9,light = 9,isMainMsg = 0,lastSubmsg = 0, sdPage = "nil", isMemo = 0) {
|
||||
var t = {parents:[warning]};
|
||||
|
||||
t.msg = msg;
|
||||
t.colour = colour;
|
||||
t.aural = aural;
|
||||
t.light = light;
|
||||
t.hasSubmsg = hasSubmsg;
|
||||
t.isMainMsg = isMainMsg;
|
||||
t.lastSubmsg = lastSubmsg;
|
||||
t.active = 0;
|
||||
t.noRepeat = 0;
|
||||
|
@ -51,19 +54,21 @@ var warning = {
|
|||
if (me.active == 0) { return; }
|
||||
me.wasActive = 1;
|
||||
lineIndex = 0;
|
||||
while (lineIndex < 7 and lines[lineIndex].getValue() != "") {
|
||||
while (lineIndex <= 7 and lines[lineIndex].getValue() != "") {
|
||||
lineIndex = lineIndex + 1; # go to next line until empty line
|
||||
}
|
||||
|
||||
if (lineIndex == 7) {
|
||||
if (lineIndex == 8) {
|
||||
leftOverflow.setBoolValue(1);
|
||||
} elsif (leftOverflow.getBoolValue()) {
|
||||
leftOverflow.setBoolValue(0);
|
||||
}
|
||||
|
||||
if (lines[lineIndex].getValue() == "" and me.msg != "" and lineIndex <= 7) { # at empty line. Also checks if message is not blank to allow for some warnings with no displayed msg, eg stall
|
||||
lines[lineIndex].setValue(me.msg);
|
||||
linesCol[lineIndex].setValue(me.colour);
|
||||
if (lineIndex <= 7) {
|
||||
if (lines[lineIndex].getValue() == "" and me.msg != "") { # at empty line. Also checks if message is not blank to allow for some warnings with no displayed msg, eg stall
|
||||
lines[lineIndex].setValue(me.msg);
|
||||
linesCol[lineIndex].setValue(me.colour);
|
||||
}
|
||||
}
|
||||
},
|
||||
warnlight: func() {
|
||||
|
@ -89,11 +94,13 @@ var warning = {
|
|||
|
||||
if (me.aural != 0) {
|
||||
aural[me.aural].setBoolValue(0);
|
||||
settimer(func() {
|
||||
aural[me.aural].setBoolValue(1);
|
||||
}, 0.15);
|
||||
} else {
|
||||
aural[me.aural].setBoolValue(1);
|
||||
}
|
||||
me.noRepeat2 = 1;
|
||||
settimer(func() {
|
||||
aural[me.aural].setBoolValue(1);
|
||||
}, 0.15);
|
||||
},
|
||||
callPage: func() {
|
||||
if (me.sdPage == "nil" or me.hasCalled == 1) { return; }
|
||||
|
@ -201,12 +208,13 @@ var ECAM_controller = {
|
|||
|
||||
if (!getprop("/systems/acconfig/autoconfig-running")) {
|
||||
foreach (var w; warnings.vector) {
|
||||
if (counter >= 9) { break; }
|
||||
if (w.active == 1) {
|
||||
w.write();
|
||||
if (counter < 9) {
|
||||
w.write();
|
||||
counter += 1;
|
||||
}
|
||||
w.warnlight();
|
||||
w.sound();
|
||||
counter += 1;
|
||||
} elsif (w.wasActive == 1) {
|
||||
w.warnlight();
|
||||
w.sound();
|
||||
|
@ -284,32 +292,50 @@ var ECAM_controller = {
|
|||
clear: func() {
|
||||
hasCleared = 0;
|
||||
counter = 0;
|
||||
noMainMsg = 0;
|
||||
storeFirstWarning = nil;
|
||||
|
||||
if (leftOverflow.getBoolValue()) {
|
||||
foreach (var w; warnings.vector) {
|
||||
if (counter >= 8) { break; }
|
||||
if (w.active == 1 and w.clearFlag != 1 and w.isMemo != 1) {
|
||||
counter += 1;
|
||||
if (w.hasSubmsg == 1) { continue; }
|
||||
w.clearFlag = 1;
|
||||
hasCleared = 1;
|
||||
statusFlag = 1;
|
||||
libraries.ECAMControlPanel.lightOff("clr");
|
||||
}
|
||||
}
|
||||
} else {
|
||||
foreach (var w; warnings.vector) {
|
||||
if (w.active == 1 and w.clearFlag != 1 and w.hasSubmsg == 1 and w.isMemo != 1) {
|
||||
w.clearFlag = 1;
|
||||
hasCleared = 1;
|
||||
statusFlag = 1;
|
||||
libraries.ECAMControlPanel.lightOff("clr");
|
||||
break;
|
||||
# first go through the first eight, see how many mainMsg there are
|
||||
foreach (var w; warnings.vector) {
|
||||
if (counter >= 8) { break; }
|
||||
if (w.active == 1 and w.clearFlag != 1 and w.isMemo != 1) {
|
||||
counter += 1;
|
||||
if (w.isMainMsg == 1) {
|
||||
if (noMainMsg == 0) {
|
||||
storeFirstWarning = w;
|
||||
}
|
||||
noMainMsg += 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (statusFlag == 1) {
|
||||
# then, if there is an overflow and noMainMsg == 1, we clear the first shown ones
|
||||
if (leftOverflow.getBoolValue() and noMainMsg == 1) {
|
||||
counter = 0;
|
||||
foreach (var w; warnings.vector) {
|
||||
if (counter >= 8) { break; }
|
||||
if (w.active == 1 and w.clearFlag != 1 and w.isMemo != 1) {
|
||||
counter += 1;
|
||||
if (w.isMainMsg == 1) { continue; }
|
||||
w.clearFlag = 1;
|
||||
hasCleared = 1;
|
||||
statusFlag = 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# else, we clear the first mainMsg stored
|
||||
else {
|
||||
if (storeFirstWarning != nil) {
|
||||
if (storeFirstWarning.active == 1 and storeFirstWarning.clearFlag != 1 and storeFirstWarning.isMainMsg == 1 and storeFirstWarning.isMemo != 1) {
|
||||
storeFirstWarning.clearFlag = 1;
|
||||
hasCleared = 1;
|
||||
statusFlag = 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (statusFlag == 1 and lines[0].getValue() == "") {
|
||||
libraries.SystemDisplay.manCall("sts");
|
||||
statusFlag = 0;
|
||||
}
|
||||
|
@ -341,12 +367,13 @@ var ECAM_controller = {
|
|||
}
|
||||
},
|
||||
warningReset: func(warning) {
|
||||
if (warning.aural != 9 and warning.active == 1) {
|
||||
aural[warning.aural].setBoolValue(0);
|
||||
}
|
||||
warning.active = 0;
|
||||
warning.noRepeat = 0;
|
||||
warning.noRepeat2 = 0;
|
||||
if (warning.aural == 2) {
|
||||
aural[2].setValue(0);
|
||||
}
|
||||
# don't set .wasActive to 0, warnlight / sound funcs do that
|
||||
},
|
||||
};
|
||||
|
||||
|
|
|
@ -29,6 +29,10 @@ var phaseVar = nil;
|
|||
var dualFailFACActive = 1;
|
||||
var emerConfigFACActive = 1;
|
||||
var gear_agl_cur = nil;
|
||||
var numberMinutes = nil;
|
||||
var timeNow = nil;
|
||||
var timer10secIRS = nil;
|
||||
|
||||
var messages_priority_3 = func {
|
||||
phaseVar = phaseNode.getValue();
|
||||
|
||||
|
@ -738,45 +742,6 @@ var messages_priority_3 = func {
|
|||
ap_offw.active = 1;
|
||||
} else {
|
||||
ECAM_controller.warningReset(ap_offw);
|
||||
if (getprop("/it-autoflight/output/ap-warning") == 2) {
|
||||
setprop("/it-autoflight/output/ap-warning", 0);
|
||||
setprop("/ECAM/Lower/light/clr", 0);
|
||||
setprop("/ECAM/warnings/master-warning-light", 0);
|
||||
}
|
||||
}
|
||||
|
||||
if ((athr_lock.clearFlag == 0) and phaseVar >= 5 and phaseVar <= 7 and getprop("/systems/thrust/thr-locked-alert") == 1) {
|
||||
if (getprop("/systems/thrust/thr-locked-flash") == 0) {
|
||||
athr_lock.msg = " ";
|
||||
} else {
|
||||
athr_lock.msg = msgSave
|
||||
}
|
||||
athr_lock.active = 1;
|
||||
athr_lock_1.active = 1;
|
||||
} else {
|
||||
ECAM_controller.warningReset(athr_lock);
|
||||
ECAM_controller.warningReset(athr_lock_1);
|
||||
}
|
||||
|
||||
if ((athr_offw.clearFlag == 0) and athrWarn.getValue() == 2 and phaseVar != 4 and phaseVar != 8 and phaseVar != 10) {
|
||||
athr_offw.active = 1;
|
||||
athr_offw_1.active = 1;
|
||||
} else {
|
||||
ECAM_controller.warningReset(athr_offw);
|
||||
ECAM_controller.warningReset(athr_offw_1);
|
||||
if (getprop("/it-autoflight/output/athr-warning") == 2) {
|
||||
setprop("/it-autoflight/output/athr-warning", 0);
|
||||
setprop("/ECAM/Lower/light/clr", 0);
|
||||
setprop("/ECAM/warnings/master-caution-light", 0);
|
||||
}
|
||||
}
|
||||
|
||||
if ((athr_lim.clearFlag == 0) and getprop("/it-autoflight/output/athr") == 1 and ((getprop("/systems/thrust/eng-out") != 1 and (getprop("/systems/thrust/state1") == "MAN" or getprop("/systems/thrust/state2") == "MAN")) or (getprop("/systems/thrust/eng-out") == 1 and (getprop("/systems/thrust/state1") == "MAN" or getprop("/systems/thrust/state2") == "MAN" or (getprop("/systems/thrust/state1") == "MAN THR" and getprop("/controls/engines/engine[0]/throttle-pos") <= 0.83) or (getprop("/systems/thrust/state2") == "MAN THR" and getprop("/controls/engines/engine[0]/throttle-pos") <= 0.83)))) and (phaseVar >= 5 and phaseVar <= 7)) {
|
||||
athr_lim.active = 1;
|
||||
athr_lim_1.active = 1;
|
||||
} else {
|
||||
ECAM_controller.warningReset(athr_lim);
|
||||
ECAM_controller.warningReset(athr_lim_1);
|
||||
}
|
||||
|
||||
if (!systems.cargoTestBtn.getBoolValue()) {
|
||||
|
@ -784,21 +749,21 @@ var messages_priority_3 = func {
|
|||
cargoSmokeFwd.active = 1;
|
||||
} elsif (cargoSmokeFwd.clearFlag == 1 or systems.cargoTestBtnOff.getBoolValue()) {
|
||||
ECAM_controller.warningReset(cargoSmokeFwd);
|
||||
cargoSmokeFwd.hasSubmsg = 1;
|
||||
cargoSmokeFwd.isMainMsg = 1;
|
||||
}
|
||||
|
||||
if (cargoSmokeFwdAgent.clearFlag == 0 and cargoSmokeFwd.active == 1 and !getprop("/systems/fire/cargo/disch")) {
|
||||
cargoSmokeFwdAgent.active = 1;
|
||||
} else {
|
||||
ECAM_controller.warningReset(cargoSmokeFwdAgent);
|
||||
cargoSmokeFwd.hasSubmsg = 0;
|
||||
cargoSmokeFwd.isMainMsg = 0;
|
||||
}
|
||||
|
||||
if (cargoSmokeAft.clearFlag == 0 and systems.aftCargoFireWarn.getBoolValue() and (phaseVar <= 3 or phaseVar >= 9 or phaseVar == 6)) {
|
||||
cargoSmokeAft.active = 1;
|
||||
} elsif (cargoSmokeAft.clearFlag == 1 or systems.cargoTestBtnOff.getBoolValue()) {
|
||||
ECAM_controller.warningReset(cargoSmokeAft);
|
||||
cargoSmokeAft.hasSubmsg = 1;
|
||||
cargoSmokeAft.isMainMsg = 1;
|
||||
systems.cargoTestBtnOff.setBoolValue(0);
|
||||
}
|
||||
|
||||
|
@ -806,7 +771,7 @@ var messages_priority_3 = func {
|
|||
cargoSmokeAftAgent.active = 1;
|
||||
} else {
|
||||
ECAM_controller.warningReset(cargoSmokeAftAgent);
|
||||
cargoSmokeAft.hasSubmsg = 0;
|
||||
cargoSmokeAft.isMainMsg = 0;
|
||||
}
|
||||
} else {
|
||||
if (systems.aftCargoFireWarn.getBoolValue()) {
|
||||
|
@ -850,7 +815,7 @@ var messages_priority_3 = func {
|
|||
}
|
||||
|
||||
if (!(getprop("/systems/electrical/some-electric-thingie/generator-1-reset") and getprop("/systems/electrical/some-electric-thingie/generator-2-reset")) and emerconfigGen.clearFlag == 0) {
|
||||
emerconfigGen.active = 1;
|
||||
emerconfigGen.active = 1; # EGEN12R TRUE
|
||||
} else {
|
||||
ECAM_controller.warningReset(emerconfigGen);
|
||||
}
|
||||
|
@ -862,7 +827,7 @@ var messages_priority_3 = func {
|
|||
} else {
|
||||
ECAM_controller.warningReset(emerconfigBusTie);
|
||||
}
|
||||
emerconfigGen3.active = 1;
|
||||
emerconfigGen3.active = 1; # EGENRESET TRUE
|
||||
} else {
|
||||
ECAM_controller.warningReset(emerconfigGen2);
|
||||
ECAM_controller.warningReset(emerconfigBusTie);
|
||||
|
@ -1088,6 +1053,37 @@ var messages_priority_2 = func {
|
|||
ECAM_controller.warningReset(acBusEssShedAtc);
|
||||
}
|
||||
|
||||
if ((athr_offw.clearFlag == 0) and athrWarn.getValue() == 2 and phaseVar != 4 and phaseVar != 8 and phaseVar != 10) {
|
||||
athr_offw.active = 1;
|
||||
athr_offw_1.active = 1;
|
||||
} else {
|
||||
ECAM_controller.warningReset(athr_offw);
|
||||
ECAM_controller.warningReset(athr_offw_1);
|
||||
}
|
||||
|
||||
if ((athr_lock.clearFlag == 0) and phaseVar >= 5 and phaseVar <= 7 and getprop("/systems/thrust/thr-locked-alert") == 1) {
|
||||
if (getprop("/systems/thrust/thr-locked-flash") == 0) {
|
||||
athr_lock.msg = " ";
|
||||
} else {
|
||||
athr_lock.msg = msgSave
|
||||
}
|
||||
athr_lock.active = 1;
|
||||
athr_lock_1.active = 1;
|
||||
} else {
|
||||
ECAM_controller.warningReset(athr_lock);
|
||||
ECAM_controller.warningReset(athr_lock_1);
|
||||
}
|
||||
|
||||
|
||||
if ((athr_lim.clearFlag == 0) and getprop("/it-autoflight/output/athr") == 1 and ((getprop("/systems/thrust/eng-out") != 1 and (getprop("/systems/thrust/state1") == "MAN" or getprop("/systems/thrust/state2") == "MAN")) or (getprop("/systems/thrust/eng-out") == 1 and (getprop("/systems/thrust/state1") == "MAN" or getprop("/systems/thrust/state2") == "MAN" or (getprop("/systems/thrust/state1") == "MAN THR" and getprop("/controls/engines/engine[0]/throttle-pos") <= 0.83) or (getprop("/systems/thrust/state2") == "MAN THR" and getprop("/controls/engines/engine[0]/throttle-pos") <= 0.83)))) and (phaseVar >= 5 and phaseVar <= 7)) {
|
||||
athr_lim.active = 1;
|
||||
athr_lim_1.active = 1;
|
||||
} else {
|
||||
ECAM_controller.warningReset(athr_lim);
|
||||
ECAM_controller.warningReset(athr_lim_1);
|
||||
}
|
||||
|
||||
|
||||
if (getprop("/instrumentation/tcas/serviceable") == 0 and phaseVar != 3 and phaseVar != 4 and phaseVar != 7 and systems.ELEC.Bus.ac1.getValue() and pts.Instrumentation.TCAS.Inputs.mode.getValue() != 1 and tcasFault.clearFlag == 0) {
|
||||
tcasFault.active = 1;
|
||||
} else {
|
||||
|
@ -1123,14 +1119,14 @@ var messages_priority_2 = func {
|
|||
apuEmerShutdown.active = 1;
|
||||
} elsif (apuEmerShutdown.clearFlag == 1) {
|
||||
ECAM_controller.warningReset(apuEmerShutdown);
|
||||
apuEmerShutdown.hasSubmsg = 1;
|
||||
apuEmerShutdown.isMainMsg = 1;
|
||||
}
|
||||
|
||||
if (apuEmerShutdownMast.clearFlag == 0 and getprop("/controls/APU/master") and apuEmerShutdown.active == 1) {
|
||||
apuEmerShutdownMast.active = 1;
|
||||
} else {
|
||||
ECAM_controller.warningReset(apuEmerShutdownMast);
|
||||
apuEmerShutdown.hasSubmsg = 0;
|
||||
apuEmerShutdown.isMainMsg = 0;
|
||||
}
|
||||
|
||||
if (eng1FireDetFault.clearFlag == 0 and (systems.engFireDetectorUnits.vector[0].condition == 0 or (systems.engFireDetectorUnits.vector[0].loopOne == 9 and systems.engFireDetectorUnits.vector[0].loopTwo == 9 and systems.eng1Inop.getBoolValue())) and (phaseVar == 6 or phaseVar >= 9 or phaseVar <= 2)) {
|
||||
|
@ -1362,7 +1358,7 @@ var messages_config_memo = func {
|
|||
setprop("/ECAM/ldg-memo-2200-set", 0);
|
||||
}
|
||||
|
||||
if (phaseVar >= 6 and phaseVar <= 8) {
|
||||
if (phaseVar != 6 and phaseVar != 7 and phaseVar != 8) {
|
||||
setprop("/ECAM/ldg-memo-2200-reset", 1);
|
||||
} else {
|
||||
setprop("/ECAM/ldg-memo-2200-reset", 0);
|
||||
|
@ -1389,6 +1385,39 @@ var messages_memo = func {
|
|||
refuelg.active = 0;
|
||||
}
|
||||
|
||||
if ((phaseVar == 1 or phaseVar == 2) and toMemoLine1.active != 1 and ldgMemoLine1.active != 1 and (systems.ADIRSnew.ADIRunits[0].inAlign == 1 or systems.ADIRSnew.ADIRunits[1].inAlign == 1 or systems.ADIRSnew.ADIRunits[2].inAlign == 1)) {
|
||||
irs_in_align.active = 1;
|
||||
if (getprop("/ECAM/phases/timer/eng1or2-output")) {
|
||||
irs_in_align.colour = "a";
|
||||
} else {
|
||||
irs_in_align.colour = "g";
|
||||
}
|
||||
|
||||
timeNow = pts.Sim.Time.elapsedSec.getValue();
|
||||
numberMinutes = math.round(math.max(systems.ADIRSnew.ADIRunits[0]._alignTime - timeNow, systems.ADIRSnew.ADIRunits[1]._alignTime - timeNow, systems.ADIRSnew.ADIRunits[2]._alignTime - timeNow) / 60);
|
||||
|
||||
if (numberMinutes >= 7) {
|
||||
irs_in_align.msg = "IRS IN ALIGN > 7 MN";
|
||||
} elsif (numberMinutes >= 1) {
|
||||
irs_in_align.msg = "IRS IN ALIGN " ~ numberMinutes ~ " MN";
|
||||
} else {
|
||||
irs_in_align.msg = "IRS IN ALIGN";
|
||||
}
|
||||
} else {
|
||||
if (irs_in_align.active and !timer10secIRS) {
|
||||
timer10secIRS = 1;
|
||||
irs_in_align.msg = "IRS ALIGNED";
|
||||
settimer(func() {
|
||||
irs_in_align.active = 0;
|
||||
irs_in_align.msg = "IRS IN ALIGN";
|
||||
timer10secIRS = 0;
|
||||
}, 10);
|
||||
} elsif (!timer10secIRS) {
|
||||
irs_in_align.active = 0;
|
||||
irs_in_align.msg = "IRS IN ALIGN";
|
||||
}
|
||||
}
|
||||
|
||||
if (getprop("/controls/flight/speedbrake-arm") == 1 and toMemoLine1.active != 1 and ldgMemoLine1.active != 1) {
|
||||
gnd_splrs.active = 1;
|
||||
} else {
|
||||
|
@ -1447,7 +1476,7 @@ var messages_right_memo = func {
|
|||
ldg_inhibit.active = 0;
|
||||
}
|
||||
|
||||
if ((getprop("/gear/gear[1]/wow") == 0) and (getprop("/systems/fire/engine1/warning-active") == 1 or getprop("/systems/fire/engine2/warning-active") == 1 or getprop("/systems/fire/apu/warning-active") == 1 or getprop("/systems/failures/cargo-aft-fire") == 1 or getprop("/systems/failures/cargo-fwd-fire") == 1) or (((getprop("/systems/hydraulic/green-psi") < 1500 and getprop("/engines/engine[0]/state") == 3) and (getprop("/systems/hydraulic/yellow-psi") < 1500 and getprop("/engines/engine[1]/state") == 3)) or ((getprop("/systems/hydraulic/green-psi") < 1500 or getprop("/systems/hydraulic/yellow-psi") < 1500) and getprop("/engines/engine[0]/state") == 3 and getprop("/engines/engine[1]/state") == 3) and phaseVar >= 3 and phaseVar <= 8)) {
|
||||
if ((getprop("/gear/gear[1]/wow") == 0) and (getprop("/systems/electrical/some-electric-thingie/emer-elec-config") or getprop("/systems/fire/engine1/warning-active") == 1 or getprop("/systems/fire/engine2/warning-active") == 1 or getprop("/systems/fire/apu/warning-active") == 1 or getprop("/systems/failures/cargo-aft-fire") == 1 or getprop("/systems/failures/cargo-fwd-fire") == 1) or (((getprop("/systems/hydraulic/green-psi") < 1500 and getprop("/engines/engine[0]/state") == 3) and (getprop("/systems/hydraulic/yellow-psi") < 1500 and getprop("/engines/engine[1]/state") == 3)) or ((getprop("/systems/hydraulic/green-psi") < 1500 or getprop("/systems/hydraulic/yellow-psi") < 1500) and getprop("/engines/engine[0]/state") == 3 and getprop("/engines/engine[1]/state") == 3) and phaseVar >= 3 and phaseVar <= 8)) {
|
||||
# todo: emer elec
|
||||
land_asap_r.active = 1;
|
||||
} else {
|
||||
|
|
|
@ -230,7 +230,7 @@ var SystemDisplay = {
|
|||
|
||||
if (APUMaster == 1 and me.APU10sec != 1) {
|
||||
me.autoCall("apu");
|
||||
me.fctl20sec = 9;
|
||||
me.fctl20sec = 0;
|
||||
|
||||
if (me.APU10sec == 9 and APURPM >= 95.0) {
|
||||
me.APU10sec = 0;
|
||||
|
@ -242,7 +242,7 @@ var SystemDisplay = {
|
|||
}
|
||||
} elsif (engModeSel == 0 or engModeSel == 2 or (engModeSel == 1 and me.eng10sec == 0)) {
|
||||
me.autoCall("eng");
|
||||
me.fctl20sec = 9;
|
||||
me.fctl20sec = 0;
|
||||
|
||||
if (me.eng10sec == 9 and engModeSel == 1) {
|
||||
me.eng10sec = 0;
|
||||
|
@ -254,7 +254,9 @@ var SystemDisplay = {
|
|||
}
|
||||
} else {
|
||||
# Reset variables
|
||||
me.APU10sec = 9;
|
||||
if (APUMaster == 0) {
|
||||
me.APU10sec = 9;
|
||||
}
|
||||
me.eng10sec = 9;
|
||||
|
||||
# Phase logic
|
||||
|
@ -322,15 +324,17 @@ var ECAMControlPanel = {
|
|||
},
|
||||
clrBtn: func() {
|
||||
me.lightOff("clr");
|
||||
if (athrWarnNode.getValue == 2) {
|
||||
athrWarnNode.setValue(0);
|
||||
return;
|
||||
}
|
||||
|
||||
if (apWarnNode.getValue() == 2) {
|
||||
apWarnNode.setValue(0);
|
||||
return;
|
||||
}
|
||||
|
||||
if (athrWarnNode.getValue() == 2) {
|
||||
athrWarnNode.setValue(0);
|
||||
return;
|
||||
}
|
||||
|
||||
if (SystemDisplay.manShownPage) {
|
||||
me.lightOff(SystemDisplay.page);
|
||||
SystemDisplay.manShownPage = 0;
|
||||
|
|
|
@ -13,13 +13,13 @@ var warnings = std.Vector.new([
|
|||
var stall = warning.new(msg: "", aural: 2),
|
||||
var flap_not_zero = warning.new(msg: "F/CTL FLAP LVR NOT ZERO", colour: "r", aural: 0, light: 0),
|
||||
|
||||
var overspeed = warning.new(msg: "OVER SPEED", colour: "r", aural: 0, light: 0, hasSubmsg: 1),
|
||||
var overspeed = warning.new(msg: "OVER SPEED", colour: "r", aural: 0, light: 0, isMainMsg: 1),
|
||||
var overspeedVMO = warning.new(msg: "-VMO/MMO.......350 /.82", colour: "r"),
|
||||
var overspeedGear = warning.new(msg: "-VLE...........280 /.67", colour: "r"),
|
||||
var overspeedFlap = warning.new(msg: "-VFE................XXX", colour: "r"),
|
||||
|
||||
# DUAL ENG FAIL
|
||||
var dualFail = warning.new(msg: "ENG DUAL FAILURE", colour: "r", aural: 0, light: 0, hasSubmsg: 1),
|
||||
var dualFail = warning.new(msg: "ENG DUAL FAILURE", colour: "r", aural: 0, light: 0, isMainMsg: 1),
|
||||
var dualFailModeSel = warning.new(msg: " -ENG MODE SEL.......IGN", colour: "c"),
|
||||
var dualFailLevers = warning.new(msg: " -THR LEVERS........IDLE", colour: "c"),
|
||||
var dualFailRelightSPD = warning.new(msg: " OPTIMUM RELIGHT SPD.280", colour: "c"),
|
||||
|
@ -27,41 +27,41 @@ var warnings = std.Vector.new([
|
|||
var dualFailElec = warning.new(msg: " -EMER ELEC PWR...MAN ON", colour: "c"),
|
||||
var dualFailRadio = warning.new(msg: " -VHF1/ATC1..........USE", colour: "c"),
|
||||
var dualFailFAC = warning.new(msg: " -FAC 1......OFF THEN ON", colour: "c"),
|
||||
var dualFailRelight = warning.new(msg: "•IF NO RELIGHT AFTER 30S", colour: "w", hasSubmsg: 1),
|
||||
var dualFailRelight = warning.new(msg: "•IF NO RELIGHT AFTER 30S", colour: "w", isMainMsg: 1),
|
||||
var dualFailMasters = warning.new(msg: " -ENG MASTERS.OFF 30S/ON", colour: "c"),
|
||||
var dualFailSuccess = warning.new(msg: " •IF UNSUCCESSFUL : ", colour: "w", hasSubmsg: 1),
|
||||
var dualFailSuccess = warning.new(msg: " •IF UNSUCCESSFUL : ", colour: "w", isMainMsg: 1),
|
||||
var dualFailAPU = warning.new(msg: " -APU (IF AVAIL)...START", colour: "c"),
|
||||
var dualFailAPUwing = warning.new(msg: " -WING ANTI ICE......OFF", colour: "c"),
|
||||
var dualFailAPUbleed = warning.new(msg: " -APU BLEED...........ON", colour: "c"),
|
||||
var dualFailMastersAPU = warning.new(msg: " -ENG MASTERS.OFF 30S/ON", colour: "c"),
|
||||
var dualFailSPDGD = warning.new(msg: " OPTIMUM SPEED.....G DOT", colour: "c"),
|
||||
var dualFailAPPR = warning.new(msg: " •EARLY IN APPR : ", colour: "w", hasSubmsg: 1),
|
||||
var dualFailAPPR = warning.new(msg: " •EARLY IN APPR : ", colour: "w", isMainMsg: 1),
|
||||
var dualFailcabin = warning.new(msg: " -CAB SECURE.......ORDER", colour: "c"),
|
||||
var dualFailrudd = warning.new(msg: " -USE RUDDER WITH CARE ", colour: "c"),
|
||||
var dualFailflap = warning.new(msg: " -FOR LDG.....USE FLAP 3", colour: "c"),
|
||||
var dualFail5000 = warning.new(msg: " •AT 5000 FT AGL : ", colour: "w", hasSubmsg: 1),
|
||||
var dualFail5000 = warning.new(msg: " •AT 5000 FT AGL : ", colour: "w", isMainMsg: 1),
|
||||
var dualFailgear = warning.new(msg: " -L/G.........GRVTY EXTN", colour: "c"),
|
||||
var dualFailfinalspeed = warning.new(msg: " TARGET SPEED.....150 KT", colour: "c"),
|
||||
var dualFailtouch = warning.new(msg: " •AT TOUCH DOWN : ", colour: "w", hasSubmsg: 1),
|
||||
var dualFailtouch = warning.new(msg: " •AT TOUCH DOWN : ", colour: "w", isMainMsg: 1),
|
||||
var dualFailmasteroff = warning.new(msg: " -ENG MASTERS........OFF", colour: "c"),
|
||||
var dualFailapuoff = warning.new(msg: " -APU MASTER SW......OFF", colour: "c"),
|
||||
var dualFailevac = warning.new(msg: " -EVAC..........INITIATE", colour: "c"),
|
||||
var dualFailbatt = warning.new(msg: " -BAT 1+2............OFF", colour: "c"),
|
||||
|
||||
# ENG 1 FIRE (flight)
|
||||
var eng1Fire = warning.new(msg: "ENG 1 FIRE", colour: "r", aural: 0, light: 0, hasSubmsg: 1),
|
||||
var eng1Fire = warning.new(msg: "ENG 1 FIRE", colour: "r", aural: 0, light: 0, isMainMsg: 1),
|
||||
var eng1FireFllever = warning.new(msg: " -THR LEVER 1.......IDLE", colour: "c"),
|
||||
var eng1FireFlmaster = warning.new(msg: " -ENG MASTER 1.......OFF", colour: "c"),
|
||||
var eng1FireFlPB = warning.new(msg: " -ENG 1 FIRE P/B....PUSH", colour: "c"),
|
||||
var eng1FireFlAgent1Timer = warning.new(msg: " -AGENT 1 AFT 10 S.DISCH", colour: "w"),
|
||||
var eng1FireFlAgent1 = warning.new(msg: " -AGENT 1..........DISCH", colour: "c"),
|
||||
var eng1FireFlATC = warning.new(msg: " -ATC.............NOTIFY", colour: "c"),
|
||||
var eng1FireFl30Sec = warning.new(msg: " •IF FIRE AFTER 30 S:", colour: "w", hasSubmsg: 1),
|
||||
var eng1FireFl30Sec = warning.new(msg: " •IF FIRE AFTER 30 S:", colour: "w", isMainMsg: 1),
|
||||
var eng1FireFlAgent2 = warning.new(msg: " -AGENT 2..........DISCH", colour: "c"),
|
||||
|
||||
# ENG 1 FIRE (ground)
|
||||
var eng1FireGnlever = warning.new(msg: " -THR LEVERS........IDLE", colour: "c"),
|
||||
var eng1FireGnstopped = warning.new(msg: " •WHEN A/C IS STOPPED:", colour: "w", hasSubmsg: 1),
|
||||
var eng1FireGnstopped = warning.new(msg: " •WHEN A/C IS STOPPED:", colour: "w", isMainMsg: 1),
|
||||
var eng1FireGnparkbrk = warning.new(msg: " -PARKING BRK.........ON", colour: "c"),
|
||||
var eng1FireGnmaster = warning.new(msg: " -ENG MASTER 1.......OFF", colour: "c"),
|
||||
var eng1FireGnPB = warning.new(msg: " -ENG 1 FIRE P/B....PUSH", colour: "c"),
|
||||
|
@ -70,25 +70,25 @@ var warnings = std.Vector.new([
|
|||
var eng1FireGnmaster2 = warning.new(msg: " -ENG MASTER 2.......OFF", colour: "c"),
|
||||
var eng1FireGnATC = warning.new(msg: " -ATC.............NOTIFY", colour: "c"),
|
||||
var eng1FireGncrew = warning.new(msg: " -CABIN CREW.......ALERT", colour: "c"),
|
||||
var eng1FireGnevac = warning.new(msg: " •IF EVAC RQRD:", colour: "w", hasSubmsg: 1),
|
||||
var eng1FireGnevac = warning.new(msg: " •IF EVAC RQRD:", colour: "w", isMainMsg: 1),
|
||||
var eng1FireGnevacSw = warning.new(msg: " -EVAC COMMAND........ON", colour: "c"),
|
||||
var eng1FireGnevacApu = warning.new(msg: " -APU MASTER SW......OFF", colour: "c"),
|
||||
var eng1FireGnevacBat = warning.new(msg: " -BAT 1+2............OFF", colour: "c"),
|
||||
|
||||
# ENG 2 FIRE (flight)
|
||||
var eng2Fire = warning.new(msg: "ENG 2 FIRE", colour: "r", aural: 0, light: 0, hasSubmsg: 1),
|
||||
var eng2Fire = warning.new(msg: "ENG 2 FIRE", colour: "r", aural: 0, light: 0, isMainMsg: 1),
|
||||
var eng2FireFllever = warning.new(msg: " -THR LEVER 2.......IDLE", colour: "c"),
|
||||
var eng2FireFlmaster = warning.new(msg: " -ENG MASTER 2.......OFF", colour: "c"),
|
||||
var eng2FireFlPB = warning.new(msg: " -ENG 2 FIRE P/B....PUSH", colour: "c"),
|
||||
var eng2FireFlAgent1Timer = warning.new(msg: " -AGENT 1 AFT 10 S.DISCH", colour: "w"),
|
||||
var eng2FireFlAgent1 = warning.new(msg: " -AGENT 1..........DISCH", colour: "c"),
|
||||
var eng2FireFlATC = warning.new(msg: " -ATC.............NOTIFY", colour: "c"),
|
||||
var eng2FireFl30Sec = warning.new(msg: " •IF FIRE AFTER 30 S:", colour: "w", hasSubmsg: 1),
|
||||
var eng2FireFl30Sec = warning.new(msg: " •IF FIRE AFTER 30 S:", colour: "w", isMainMsg: 1),
|
||||
var eng2FireFlAgent2 = warning.new(msg: " -AGENT 2..........DISCH", colour: "c"),
|
||||
|
||||
# ENG 2 FIRE (ground)
|
||||
var eng2FireGnlever = warning.new(msg: " -THR LEVERS........IDLE", colour: "c"),
|
||||
var eng2FireGnstopped = warning.new(msg: " •WHEN A/C IS STOPPED:", colour: "w", hasSubmsg: 1),
|
||||
var eng2FireGnstopped = warning.new(msg: " •WHEN A/C IS STOPPED:", colour: "w", isMainMsg: 1),
|
||||
var eng2FireGnparkbrk = warning.new(msg: " -PARKING BRK.........ON", colour: "c"),
|
||||
var eng2FireGnmaster = warning.new(msg: " -ENG MASTER 2.......OFF", colour: "c"),
|
||||
var eng2FireGnPB = warning.new(msg: " -ENG 2 FIRE P/B....PUSH", colour: "c"),
|
||||
|
@ -97,13 +97,13 @@ var warnings = std.Vector.new([
|
|||
var eng2FireGnmaster2 = warning.new(msg: " -ENG MASTER 1.......OFF", colour: "c"),
|
||||
var eng2FireGnATC = warning.new(msg: " -ATC.............NOTIFY", colour: "c"),
|
||||
var eng2FireGncrew = warning.new(msg: " -CABIN CREW.......ALERT", colour: "c"),
|
||||
var eng2FireGnevac = warning.new(msg: " •IF EVAC RQRD:", colour: "w", hasSubmsg: 1),
|
||||
var eng2FireGnevac = warning.new(msg: " •IF EVAC RQRD:", colour: "w", isMainMsg: 1),
|
||||
var eng2FireGnevacSw = warning.new(msg: " -EVAC COMMAND........ON", colour: "c"),
|
||||
var eng2FireGnevacApu = warning.new(msg: " -APU MASTER SW......OFF", colour: "c"),
|
||||
var eng2FireGnevacBat = warning.new(msg: " -BAT 1+2............OFF", colour: "c"),
|
||||
|
||||
# APU FIRE
|
||||
var apuFire = warning.new(msg: "APU FIRE ", colour: "r", aural: 0, light: 0, hasSubmsg: 1, sdPage: "apu"),
|
||||
var apuFire = warning.new(msg: "APU FIRE ", colour: "r", aural: 0, light: 0, isMainMsg: 1, sdPage: "apu"),
|
||||
var apuFirePB = warning.new(msg: " -APU FIRE P/B......PUSH", colour: "c"),
|
||||
var apuFireAgentTimer = warning.new(msg: " -AGENT AFT 10 S...DISCH", colour: "c"),
|
||||
var apuFireAgent = warning.new(msg: " -AGENT............DISCH", colour: "c"),
|
||||
|
@ -122,23 +122,17 @@ var warnings = std.Vector.new([
|
|||
var rud_trim_config_1 = warning.new(msg: " NOT IN T.O. RANGE", colour: "r", aural: 0, light: 0),
|
||||
var park_brk_config = warning.new(msg: "CONFIG PARK BRK ON", colour: "r", aural: 0, light: 0),
|
||||
|
||||
# Autopilot
|
||||
var ap_offw = warning.new(msg: "AUTO FLT AP OFF", colour: "r", light: 0),
|
||||
var athr_offw = warning.new(msg: "AUTO FLT A/THR OFF", colour: "a", aural: 1, light: 1, hasSubmsg: 1),
|
||||
var athr_offw_1 = warning.new(msg: "-THR LEVERS........MOVE", colour: "c"),
|
||||
var athr_lock = warning.new(msg: "ENG THRUST LOCKED", colour: "a", aural: 1, light: 1, hasSubmsg: 1),
|
||||
var athr_lock_1 = warning.new(msg: "-THR LEVERS........MOVE", colour: "c"),
|
||||
var athr_lim = warning.new(msg: "AUTO FLT A/THR LIMITED", colour: "a", aural: 1, light: 1, hasSubmsg: 1),
|
||||
var athr_lim_1 = warning.new(msg: "-THR LEVERS........MOVE", colour: "c"),
|
||||
# Autopilot off involuntary
|
||||
var ap_offw = warning.new(msg: "AUTO FLT AP OFF", colour: "r", light: 0, isMainMsg: 1),
|
||||
|
||||
# Cargo smoke
|
||||
var cargoSmokeFwd = warning.new(msg: "SMOKE FWD CARGO SMOKE", colour: "r", aural: 0, light: 0, hasSubmsg: 1),
|
||||
var cargoSmokeFwd = warning.new(msg: "SMOKE FWD CARGO SMOKE", colour: "r", aural: 0, light: 0, isMainMsg: 1),
|
||||
var cargoSmokeFwdAgent = warning.new(msg: "-AGENT............DISCH", colour: "c"),
|
||||
var cargoSmokeAft = warning.new(msg: "SMOKE AFT CARGO SMOKE", colour: "r", aural: 0, light: 0, hasSubmsg: 1),
|
||||
var cargoSmokeAft = warning.new(msg: "SMOKE AFT CARGO SMOKE", colour: "r", aural: 0, light: 0, isMainMsg: 1),
|
||||
var cargoSmokeAftAgent = warning.new(msg: "-AGENT............DISCH", colour: "c"),
|
||||
|
||||
# ESS Bus on Bat
|
||||
var essBusOnBat = warning.new(msg: "ELEC ESS BUSES ON BAT", colour: "r", aural: 0, light: 0, hasSubmsg: 1),
|
||||
var essBusOnBat = warning.new(msg: "ELEC ESS BUSES ON BAT", colour: "r", aural: 0, light: 0, isMainMsg: 1),
|
||||
var essBusOnBatLGUplock = warning.new(msg: " •WHEN L/G UPLOCKED :", colour: "w"),
|
||||
var essBusOnBatManOn = warning.new(msg: "-EMER ELEC PWR...MAN ON", colour: "c"),
|
||||
var essBusOnBatRetract = warning.new(msg: " •IF L/G RETRACT FAULT:", colour: "w"),
|
||||
|
@ -147,7 +141,7 @@ var warnings = std.Vector.new([
|
|||
var essBusOnBatManOn2 = warning.new(msg: "-EMER ELEC PWR...MAN ON", colour: "c"),
|
||||
|
||||
# Emer Config
|
||||
var emerconfig = warning.new(msg: "ELEC EMER CONFIG", colour: "r", aural: 0, light: 0, hasSubmsg: 1),
|
||||
var emerconfig = warning.new(msg: "ELEC EMER CONFIG", colour: "r", aural: 0, light: 0, isMainMsg: 1),
|
||||
var emerconfigMinRat = warning.new(msg: "MIN RAT SPD......140 KT", colour: "c"),
|
||||
var emerconfigGen = warning.new(msg: "-GEN 1+2....OFF THEN ON", colour: "c"),
|
||||
var emerconfigGen2 = warning.new(msg: " •IF UNSUCCESSFUL :", colour: "w"),
|
||||
|
@ -168,11 +162,11 @@ var warnings = std.Vector.new([
|
|||
var emerconfigMaxSpeed = warning.new(msg: " MAX SPEED........320 KT", colour: "c"),
|
||||
|
||||
# DC EMER CONFIG
|
||||
var dcEmerconfig = warning.new(msg: "ELEC DC EMER CONFIG", colour: "a", aural: 1, light: 1, hasSubmsg: 1),
|
||||
var dcEmerconfig = warning.new(msg: "ELEC DC EMER CONFIG", colour: "a", aural: 1, light: 1, isMainMsg: 1),
|
||||
var dcEmerconfigManOn = warning.new(msg: " -EMER ELEC PWR...MAN ON", colour: "c"),
|
||||
|
||||
# DC BUS 1 OR 2 FAULT
|
||||
var dcBus12Fault = warning.new(msg: "ELEC DC BUS 1+2 FAULT", colour: "a", aural: 1, light: 1, hasSubmsg: 1),
|
||||
var dcBus12Fault = warning.new(msg: "ELEC DC BUS 1+2 FAULT", colour: "a", aural: 1, light: 1, isMainMsg: 1),
|
||||
var dcBus12FaultBlower = warning.new(msg: " -BLOWER............OVRD", colour: "c"),
|
||||
var dcBus12FaultExtract = warning.new(msg: " -EXTRACT...........OVRD", colour: "c"),
|
||||
var dcBus12FaultBaroRef = warning.new(msg: " -BARO REF.........CHECK", colour: "c"),
|
||||
|
@ -180,78 +174,86 @@ var warnings = std.Vector.new([
|
|||
var dcBus12FaultBrking = warning.new(msg: " MAX BRK........1000 PSI", colour: "c"),
|
||||
|
||||
# AC ESS BUS FAULT
|
||||
var AcBusEssFault = warning.new(msg: "ELEC AC ESS BUS FAULT", colour: "a", aural: 1, light: 1, hasSubmsg: 1),
|
||||
var AcBusEssFault = warning.new(msg: "ELEC AC ESS BUS FAULT", colour: "a", aural: 1, light: 1, isMainMsg: 1),
|
||||
var AcBusEssFaultFeed = warning.new(msg: " -AC ESS FEED.......ALTN", colour: "c"),
|
||||
var AcBusEssFaultAtc = warning.new(msg: " -ATC..............SYS 2", colour: "c"),
|
||||
|
||||
# AC BUS 1 FAULT
|
||||
var AcBus1Fault = warning.new(msg: "ELEC AC BUS 1 FAULT", colour: "a", aural: 1, light: 1, hasSubmsg: 1),
|
||||
var AcBus1Fault = warning.new(msg: "ELEC AC BUS 1 FAULT", colour: "a", aural: 1, light: 1, isMainMsg: 1),
|
||||
var AcBus1FaultBlower = warning.new(msg: " -BLOWER............OVRD", colour: "c"),
|
||||
|
||||
# DC ESS BUS FAULT
|
||||
var DcEssBusFault = warning.new(msg: "ELEC DC ESS BUS FAULT", colour: "a", aural: 1, light: 1, hasSubmsg: 1),
|
||||
var DcEssBusFault = warning.new(msg: "ELEC DC ESS BUS FAULT", colour: "a", aural: 1, light: 1, isMainMsg: 1),
|
||||
var DcEssBusFaultRadio = warning.new(msg: " -VHF 2 OR 3.........USE", colour: "c"),
|
||||
var DcEssBusFaultRadio2 = warning.new(msg: " -AUDIO SWTG......SELECT", colour: "c"),
|
||||
var DcEssBusFaultBaro = warning.new(msg: " -BARO REF.........CHECK", colour: "c"),
|
||||
var DcEssBusFaultGPWS = warning.new(msg: " -GPWS...............OFF", colour: "c"),
|
||||
|
||||
# AC BUS 2 FAULT
|
||||
var AcBus2Fault = warning.new(msg: "ELEC AC BUS 2 FAULT", colour: "a", aural: 1, light: 1, hasSubmsg: 1),
|
||||
var AcBus2Fault = warning.new(msg: "ELEC AC BUS 2 FAULT", colour: "a", aural: 1, light: 1, isMainMsg: 1),
|
||||
var AcBus2FaultExtract = warning.new(msg: " -EXTRACT...........OVRD", colour: "c"),
|
||||
|
||||
# DC BUS 1 FAULT
|
||||
var dcBus1Fault = warning.new(msg: "ELEC DC BUS 1 FAULT", colour: "a", aural: 1, light: 1, hasSubmsg: 1),
|
||||
var dcBus1Fault = warning.new(msg: "ELEC DC BUS 1 FAULT", colour: "a", aural: 1, light: 1, isMainMsg: 1),
|
||||
var dcBus1FaultBlower = warning.new(msg: " -BLOWER............OVRD", colour: "c"),
|
||||
var dcBus1FaultExtract = warning.new(msg: " -EXTRACT...........OVRD", colour: "c"),
|
||||
|
||||
# DC BUS 2 FAULT
|
||||
var dcBus2Fault = warning.new(msg: "ELEC DC BUS 2 FAULT", colour: "a", aural: 1, light: 1, hasSubmsg: 1),
|
||||
var dcBus2Fault = warning.new(msg: "ELEC DC BUS 2 FAULT", colour: "a", aural: 1, light: 1, isMainMsg: 1),
|
||||
var dcBus2FaultAirData = warning.new(msg: " -AIR DATA SWTG......F/O", colour: "c"),
|
||||
var dcBus2FaultBaro = warning.new(msg: " -BARO REF.........CHECK", colour: "c"),
|
||||
|
||||
# DC BAT BUS FAULT
|
||||
var dcBusBatFault = warning.new(msg: "ELEC DC BAT BUS FAULT", colour: "a", aural: 1, light: 1),
|
||||
var dcBusBatFault = warning.new(msg: "ELEC DC BAT BUS FAULT", colour: "a", aural: 1, light: 1, isMainMsg: 1),
|
||||
|
||||
# DC ESS BUS SHED
|
||||
var dcBusEssShed = warning.new(msg: "ELEC DC ESS BUS SHED", colour: "a", aural: 1, light: 1),
|
||||
var dcBusEssShed = warning.new(msg: "ELEC DC ESS BUS SHED", colour: "a", aural: 1, light: 1, isMainMsg: 1),
|
||||
var dcBusEssShedExtract = warning.new(msg: " -EXTRACT...........OVRD", colour: "c"),
|
||||
var dcBusEssShedIcing = warning.new(msg: " AVOID ICING CONDITIONS", colour: "c"),
|
||||
|
||||
# AC ESS BUS SHED
|
||||
var acBusEssShed = warning.new(msg: "ELEC DC ESS BUS SHED", colour: "a", aural: 1, light: 1),
|
||||
var acBusEssShed = warning.new(msg: "ELEC DC ESS BUS SHED", colour: "a", aural: 1, light: 1, isMainMsg: 1),
|
||||
var acBusEssShedAtc = warning.new(msg: " -ATC..............SYS 2", colour: "c"),
|
||||
|
||||
# Autothrust
|
||||
var athr_offw = warning.new(msg: "AUTO FLT A/THR OFF", colour: "a", aural: 1, light: 1, isMainMsg: 1),
|
||||
var athr_offw_1 = warning.new(msg: "-THR LEVERS........MOVE", colour: "c"),
|
||||
var athr_lock = warning.new(msg: "ENG THRUST LOCKED", colour: "a", aural: 1, light: 1, isMainMsg: 1),
|
||||
var athr_lock_1 = warning.new(msg: "-THR LEVERS........MOVE", colour: "c"),
|
||||
var athr_lim = warning.new(msg: "AUTO FLT A/THR LIMITED", colour: "a", aural: 1, light: 1, isMainMsg: 1),
|
||||
var athr_lim_1 = warning.new(msg: "-THR LEVERS........MOVE", colour: "c"),
|
||||
|
||||
# TCAS FAULT
|
||||
var tcasFault = warning.new(msg: "NAV TCAS FAULT", colour: "a", aural: 1, light: 1),
|
||||
var tcasFault = warning.new(msg: "NAV TCAS FAULT", colour: "a", aural: 1, light: 1, isMainMsg: 1),
|
||||
|
||||
# FCU fault
|
||||
var fcuFault = warning.new(msg: "AUTO FLT FCU 1+2 FAULT", colour: "a", aural: 1, light: 1, hasSubmsg: 1),
|
||||
var fcuFault = warning.new(msg: "AUTO FLT FCU 1+2 FAULT", colour: "a", aural: 1, light: 1, isMainMsg: 1),
|
||||
var fcuFaultBaro = warning.new(msg: " -PFD BARO REF: STD ONLY", colour: "c"),
|
||||
var fcuFault1 = warning.new(msg: "AUTO FLT FCU 1 FAULT", colour: "a", hasSubmsg: 1),
|
||||
var fcuFault1 = warning.new(msg: "AUTO FLT FCU 1 FAULT", colour: "a", isMainMsg: 1),
|
||||
var fcuFault1Baro = warning.new(msg: " -BARO REF.......X CHECK", colour: "c"),
|
||||
var fcuFault2 = warning.new(msg: "AUTO FLT FCU 2 FAULT", colour: "a", hasSubmsg: 1),
|
||||
var fcuFault2 = warning.new(msg: "AUTO FLT FCU 2 FAULT", colour: "a", isMainMsg: 1),
|
||||
var fcuFault2Baro = warning.new(msg: " -BARO REF.......X CHECK", colour: "c"),
|
||||
|
||||
# APU shutdown
|
||||
var apuEmerShutdown = warning.new(msg: "APU EMER SHUT DOWN", colour: "a", aural: 1, light: 1, hasSubmsg: 1),
|
||||
var apuEmerShutdown = warning.new(msg: "APU EMER SHUT DOWN", colour: "a", aural: 1, light: 1, isMainMsg: 1),
|
||||
var apuEmerShutdownMast = warning.new(msg: " -MASTER SW..........OFF", colour: "c"),
|
||||
|
||||
# FIRE det fault
|
||||
var eng1FireDetFault = warning.new(msg: "ENG 1 FIRE DET FAULT", colour: "a", aural: 1, light: 1),
|
||||
var eng1LoopAFault = warning.new(msg: "ENG 1 FIRE LOOP A FAULT", colour: "a"),
|
||||
var eng1LoopBFault = warning.new(msg: "ENG 1 FIRE LOOP B FAULT", colour: "a"),
|
||||
var eng2FireDetFault = warning.new(msg: "ENG 2 FIRE DET FAULT", colour: "a", aural: 1, light: 1),
|
||||
var eng2LoopAFault = warning.new(msg: "ENG 2 FIRE LOOP A FAULT", colour: "a"),
|
||||
var eng2LoopBFault = warning.new(msg: "ENG 2 FIRE LOOP B FAULT", colour: "a"),
|
||||
var apuFireDetFault = warning.new(msg: "APU FIRE DET FAULT", colour: "a", aural: 1, light: 1),
|
||||
var apuLoopAFault = warning.new(msg: "APU FIRE LOOP A FAULT", colour: "a"),
|
||||
var apuLoopBFault = warning.new(msg: "APU FIRE LOOP B FAULT", colour: "a"),
|
||||
var crgFwdFireDetFault = warning.new(msg: "FWD CRG DET FAULT", colour: "a"),
|
||||
var crgAftFireDetFault = warning.new(msg: "AFT CRG DET FAULT", colour: "a"),
|
||||
var eng1FireDetFault = warning.new(msg: "ENG 1 FIRE DET FAULT", colour: "a", aural: 1, light: 1, isMainMsg: 1),
|
||||
var eng1LoopAFault = warning.new(msg: "ENG 1 FIRE LOOP A FAULT", colour: "a", isMainMsg: 1),
|
||||
var eng1LoopBFault = warning.new(msg: "ENG 1 FIRE LOOP B FAULT", colour: "a", isMainMsg: 1),
|
||||
var eng2FireDetFault = warning.new(msg: "ENG 2 FIRE DET FAULT", colour: "a", aural: 1, light: 1, isMainMsg: 1),
|
||||
var eng2LoopAFault = warning.new(msg: "ENG 2 FIRE LOOP A FAULT", colour: "a", isMainMsg: 1),
|
||||
var eng2LoopBFault = warning.new(msg: "ENG 2 FIRE LOOP B FAULT", colour: "a", isMainMsg: 1),
|
||||
var apuFireDetFault = warning.new(msg: "APU FIRE DET FAULT", colour: "a", aural: 1, light: 1, isMainMsg: 1),
|
||||
var apuLoopAFault = warning.new(msg: "APU FIRE LOOP A FAULT", colour: "a", isMainMsg: 1),
|
||||
var apuLoopBFault = warning.new(msg: "APU FIRE LOOP B FAULT", colour: "a", isMainMsg: 1),
|
||||
var crgFwdFireDetFault = warning.new(msg: "FWD CRG DET FAULT", colour: "a", isMainMsg: 1),
|
||||
var crgAftFireDetFault = warning.new(msg: "AFT CRG DET FAULT", colour: "a", isMainMsg: 1),
|
||||
# Recall
|
||||
var recallNormal = warning.new(msg: " ", colour: "g", hasSubmsg: 1),
|
||||
var recallNormal1 = warning.new(msg: " ", colour: "g", hasSubmsg: 1),
|
||||
var recallNormal2 = warning.new(msg: " NORMAL", colour: "g", hasSubmsg: 1),
|
||||
var recallNormal = warning.new(msg: " ", colour: "g", isMainMsg: 1),
|
||||
var recallNormal1 = warning.new(msg: " ", colour: "g", isMainMsg: 1),
|
||||
var recallNormal2 = warning.new(msg: " NORMAL", colour: "g", isMainMsg: 1),
|
||||
]);
|
||||
|
||||
var configmemos = std.Vector.new([
|
||||
|
@ -270,7 +272,7 @@ var configmemos = std.Vector.new([
|
|||
var leftmemos = std.Vector.new([
|
||||
var company_alert = warning.new(msg: "COMPANY ALERT" ), # Not yet implemented, buzzer sound
|
||||
var refuelg = warning.new(msg: "REFUELG" ),
|
||||
var irs_in_align = warning.new(msg: "IRS IN ALIGN" ), # Not yet implemented
|
||||
var irs_in_align = warning.new(msg: "IRS IN ALIGN" ),
|
||||
var gnd_splrs = warning.new(msg: "GND SPLRS ARMED" ),
|
||||
var seatbelts = warning.new(msg: "SEAT BELTS" ),
|
||||
var nosmoke = warning.new(msg: "NO SMOKING" ),
|
||||
|
|
|
@ -179,7 +179,7 @@ var update_loop = func {
|
|||
FBW.Lights.elac2.setValue(1);
|
||||
}
|
||||
|
||||
if (sec1_sw and !sec1_fail and ac_ess >= 110) {
|
||||
if (sec1_sw and !sec1_fail and dc_ess >= 25) {
|
||||
setprop("/systems/fctl/sec1", 1);
|
||||
setprop("/systems/failures/spoiler-l3", 0);
|
||||
setprop("/systems/failures/spoiler-r3", 0);
|
||||
|
@ -193,7 +193,7 @@ var update_loop = func {
|
|||
setprop("/systems/failures/spoiler-r4", 1);
|
||||
}
|
||||
|
||||
if (sec2_sw and !sec2_fail and ac_ess >= 110) {
|
||||
if (sec2_sw and !sec2_fail and dc2 >= 25) {
|
||||
setprop("/systems/fctl/sec2", 1);
|
||||
setprop("/systems/failures/spoiler-l5", 0);
|
||||
setprop("/systems/failures/spoiler-r5", 0);
|
||||
|
@ -203,7 +203,7 @@ var update_loop = func {
|
|||
setprop("/systems/failures/spoiler-r5", 1);
|
||||
}
|
||||
|
||||
if (sec3_sw and !sec3_fail and ac_ess >= 110) {
|
||||
if (sec3_sw and !sec3_fail and dc2 >= 25) {
|
||||
setprop("/systems/fctl/sec3", 1);
|
||||
setprop("/systems/failures/spoiler-l1", 0);
|
||||
setprop("/systems/failures/spoiler-r1", 0);
|
||||
|
@ -269,15 +269,28 @@ var update_loop = func {
|
|||
if (!elac1 and !elac2) {
|
||||
if (law == 0) {
|
||||
FBW.degradeLaw.setValue(1);
|
||||
fcu.apOff("hard", 0);
|
||||
fcu.athrOff("hard");
|
||||
}
|
||||
}
|
||||
if (ac_ess >= 110 and blue >= 1500 and green < 1500 and yellow < 1500) {
|
||||
if (getprop("/systems/electrical/some-electric-thingie/emer-elec-config") == 1) {
|
||||
if (law == 0) {
|
||||
FBW.degradeLaw.setValue(1);
|
||||
fcu.apOff("hard", 0);
|
||||
fcu.athrOff("hard");
|
||||
}
|
||||
}
|
||||
if ((blue >= 1500 and green < 1500 and yellow < 1500) or (blue < 1500 and green < 1500 and yellow >= 1500)) {
|
||||
if (law == 0 or law == 1) {
|
||||
FBW.degradeLaw.setValue(2);
|
||||
fcu.apOff("hard", 0);
|
||||
fcu.athrOff("hard");
|
||||
}
|
||||
}
|
||||
if (ac_ess < 110 or (blue < 1500 and green < 1500 and yellow < 1500)) {
|
||||
}
|
||||
if (dc_ess < 25 and dc2 < 25) {
|
||||
FBW.degradeLaw.setValue(3);
|
||||
fcu.apOff("hard", 0);
|
||||
fcu.athrOff("hard");
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -373,6 +386,7 @@ var fbw_loop = func {
|
|||
if (FBW.activeLaw.getValue() != 0) {
|
||||
if (getprop("/it-autoflight/output/ap1") == 1 or getprop("/it-autoflight/output/ap2") == 1) {
|
||||
fcu.apOff("hard", 0);
|
||||
fcu.athrOff("hard");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -34,6 +34,7 @@ var vertModeInput = props.globals.getNode("/it-autoflight/input/vert", 1);
|
|||
var vsModeInput = props.globals.getNode("/it-autoflight/input/vs", 1);
|
||||
var locArm = props.globals.getNode("/it-autoflight/output/loc-armed", 1);
|
||||
var apprArm = props.globals.getNode("/it-autoflight/output/appr-armed", 1);
|
||||
var FCUworkingNode = props.globals.initNode("/FMGC/FCU-working", 0, "BOOL");
|
||||
|
||||
var FCU = {
|
||||
elecSupply: "",
|
||||
|
@ -62,7 +63,7 @@ var FCUController = {
|
|||
FCUworking: 0,
|
||||
_init: 0,
|
||||
init: func() {
|
||||
me.FCU1 = FCU.new(systems.ELEC.Bus.dcEssShed);
|
||||
me.FCU1 = FCU.new(systems.ELEC.Bus.dcEss);
|
||||
me.FCU2 = FCU.new(systems.ELEC.Bus.dc2);
|
||||
me._init = 1;
|
||||
},
|
||||
|
@ -73,10 +74,12 @@ var FCUController = {
|
|||
me.FCU1.loop();
|
||||
me.FCU2.loop();
|
||||
|
||||
if (!me.FCU1.failed and !me.FCU2.failed) {
|
||||
if (!me.FCU1.failed or !me.FCU2.failed) {
|
||||
me.FCUworking = 1;
|
||||
FCUworkingNode.setValue(1);
|
||||
} else {
|
||||
me.FCUworking = 0;
|
||||
FCUworkingNode.setValue(0);
|
||||
}
|
||||
|
||||
notification = nil;
|
||||
|
@ -97,16 +100,17 @@ var FCUController = {
|
|||
me.FCU2.restore();
|
||||
},
|
||||
AP1: func() {
|
||||
if (me.FCUworking) {
|
||||
if (me.FCUworking and fbw.FBW.activeLaw.getValue() == 0) {
|
||||
if (!ap1.getBoolValue()) {
|
||||
ap1Input.setValue(1);
|
||||
libraries.apWarnNode.setValue(0);
|
||||
} else {
|
||||
apOff("hard", 1);
|
||||
}
|
||||
}
|
||||
},
|
||||
AP2: func() {
|
||||
if (me.FCUworking) {
|
||||
if (me.FCUworking and fbw.FBW.activeLaw.getValue() == 0) {
|
||||
if (!ap2.getBoolValue()) {
|
||||
ap2Input.setValue(1);
|
||||
} else {
|
||||
|
@ -115,8 +119,8 @@ var FCUController = {
|
|||
}
|
||||
},
|
||||
ATHR: func() {
|
||||
if (me.FCUworking) {
|
||||
if (!athr.getBoolValue() and !pts.FMGC.CasCompare.rejectAll.getBoolValue()) {
|
||||
if (me.FCUworking and !pts.FMGC.CasCompare.rejectAll.getBoolValue() and fbw.FBW.activeLaw.getValue() == 0) {
|
||||
if (!athr.getBoolValue()) {
|
||||
athrInput.setValue(1);
|
||||
} else {
|
||||
athrOff("hard");
|
||||
|
@ -150,8 +154,10 @@ var FCUController = {
|
|||
setprop("/it-autoflight/sound/apoffsound", 0);
|
||||
setprop("/it-autoflight/sound/apoffsound2", 0);
|
||||
}
|
||||
setprop("/it-autoflight/output/ap-warning", 0);
|
||||
setprop("/ECAM/warnings/master-warning-light", 0);
|
||||
if (getprop("/it-autoflight/output/ap-warning") != 0) {
|
||||
setprop("/it-autoflight/output/ap-warning", 0);
|
||||
setprop("/ECAM/warnings/master-warning-light", 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -471,6 +477,10 @@ var updateActiveFMGC = func {
|
|||
|
||||
# Autopilot Disconnection
|
||||
var apOff = func(type, side) {
|
||||
if ((ap1Input.getValue() and (side == 1 or side == 0)) or (ap2Input.getValue() and (side == 2 or side == 0))) {
|
||||
libraries.doApWarn(type);
|
||||
}
|
||||
|
||||
if (side == 0) {
|
||||
ap1Input.setValue(0);
|
||||
ap2Input.setValue(0);
|
||||
|
@ -479,18 +489,17 @@ var apOff = func(type, side) {
|
|||
} elsif (side == 2) {
|
||||
ap2Input.setValue(0);
|
||||
}
|
||||
libraries.doApWarn(type);
|
||||
}
|
||||
|
||||
# Autothrust Disconnection
|
||||
var athrOff = func(type) {
|
||||
if (type == "hard") {
|
||||
fadec.lockThr();
|
||||
if (athrInput.getValue() == 1) {
|
||||
if (type == "hard") {
|
||||
fadec.lockThr();
|
||||
}
|
||||
athrInput.setValue(0);
|
||||
libraries.doAthrWarn(type);
|
||||
}
|
||||
|
||||
athrInput.setValue(0);
|
||||
|
||||
libraries.doAthrWarn(type);
|
||||
}
|
||||
|
||||
# If the heading knob is turned while in nav mode, it will display heading for a period of time
|
||||
|
|
|
@ -367,8 +367,6 @@ var ITAF = {
|
|||
# Misc
|
||||
if (Output.ap1Temp == 1 or Output.ap2Temp == 1) { # Trip AP off
|
||||
if (abs(Control.aileron.getValue()) >= 0.2 or abs(Control.elevator.getValue()) >= 0.2 or abs(Control.rudder.getValue()) >= 0.2) {
|
||||
me.ap1Master(0);
|
||||
me.ap2Master(0);
|
||||
fcu.apOff("hard", 0);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -266,6 +266,8 @@ var masterFMGC = maketimer(0.2, func {
|
|||
|
||||
if (getprop("/systems/navigation/adr/computation/overspeed-vfe-spd") != 1024) {
|
||||
setprop("/FMGC/internal/maxspeed", getprop("/systems/navigation/adr/computation/overspeed-vfe-spd") - 4);
|
||||
} elsif (pts.Gear.position[0].getValue() != 0 or pts.Gear.position[1].getValue() != 0 or pts.Gear.position[2].getValue() != 0) {
|
||||
setprop("/FMGC/internal/maxspeed", 284);
|
||||
} else {
|
||||
setprop("/FMGC/internal/maxspeed", getprop("/it-fbw/speeds/vmo-mmo"));
|
||||
}
|
||||
|
|
|
@ -96,9 +96,9 @@ var initInputA = func(key, i) {
|
|||
}
|
||||
}
|
||||
} else if (key == "R3") {
|
||||
if (getprop("/controls/adirs/mcducbtn") == 0) {
|
||||
setprop("/controls/adirs/mcducbtn", 1);
|
||||
}
|
||||
#if (getprop("/controls/adirs/mcducbtn") == 0) {
|
||||
# setprop("/controls/adirs/mcducbtn", 1);
|
||||
#}
|
||||
} else if (key == "R6") {
|
||||
if (scratchpad == "CLR") {
|
||||
setprop("/FMGC/internal/tropo", 36090);
|
||||
|
|
|
@ -28,7 +28,7 @@ var Transponder = {
|
|||
ac1Node: props.globals.getNode("/systems/electrical/bus/ac-1", 1),
|
||||
tcasNode: props.globals.getNode("/instrumentation/tcas/inputs/mode"),
|
||||
aglNode: props.globals.getNode("/position/gear-agl-ft", 1),
|
||||
electricNode: props.globals.getNode("/systems/electrical/outputs/transponder", 1),
|
||||
electricNode: props.globals.getNode("/systems/electrical/outputs/transponder", 1), # communicate to generic systems
|
||||
new: func(elecSrc, ADIRS) {
|
||||
var t = {parents:[Transponder]};
|
||||
t.mode = 1;
|
||||
|
|
|
@ -233,7 +233,6 @@ var systemsLoop = maketimer(0.1, func {
|
|||
systems.PNEU.loop();
|
||||
systems.HYD.loop();
|
||||
systems.FUEL.loop();
|
||||
systems.ADIRS.loop();
|
||||
systems.ADIRSnew.loop();
|
||||
libraries.ECAM.loop();
|
||||
libraries.BUTTONS.update();
|
||||
|
@ -716,4 +715,33 @@ var APPanel = {
|
|||
},
|
||||
};
|
||||
|
||||
var resetView = func() {
|
||||
if (getprop("sim/current-view/view-number") == 0) {
|
||||
if (getprop("/sim/rendering/headshake/enabled")) {
|
||||
var _shakeFlag = 1;
|
||||
setprop("/sim/rendering/headshake/enabled", 0);
|
||||
} else {
|
||||
var _shakeFlag = 0;
|
||||
}
|
||||
|
||||
var hd = getprop("sim/current-view/heading-offset-deg");
|
||||
var hd_t = 360;
|
||||
if (hd < 180) {
|
||||
hd_t = hd_t - 360;
|
||||
}
|
||||
|
||||
interpolate("sim/current-view/field-of-view", 63, 0.66);
|
||||
interpolate("sim/current-view/heading-offset-deg", hd_t,0.66);
|
||||
interpolate("sim/current-view/pitch-offset-deg", -14.6,0.66);
|
||||
interpolate("sim/current-view/roll-offset-deg", 0,0.66);
|
||||
interpolate("sim/current-view/x-offset-m", -0.45, 0.66);
|
||||
interpolate("sim/current-view/y-offset-m", 2.34, 0.66);
|
||||
interpolate("sim/current-view/z-offset-m", -13.75, 0.66);
|
||||
|
||||
if (_shakeFlag) {
|
||||
setprop("/sim/rendering/headshake/enabled", 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
setprop("/systems/acconfig/libraries-loaded", 1);
|
||||
|
|
|
@ -66,6 +66,7 @@ var FMGC = {
|
|||
var Gear = {
|
||||
compression: [props.globals.getNode("/gear/gear[0]/compression-norm"),props.globals.getNode("/gear/gear[1]/compression-norm"),props.globals.getNode("/gear/gear[2]/compression-norm")],
|
||||
wow: [props.globals.getNode("/gear/gear[0]/wow"),props.globals.getNode("/gear/gear[1]/wow"),props.globals.getNode("/gear/gear[2]/wow")],
|
||||
position: [props.globals.getNode("/gear/gear[0]/position-norm"),props.globals.getNode("/gear/gear[1]/position-norm"),props.globals.getNode("/gear/gear[2]/position-norm")],
|
||||
};
|
||||
|
||||
var Instrumentation = {
|
||||
|
@ -105,8 +106,16 @@ var Options = {
|
|||
eng: props.globals.getNode("/options/eng"),
|
||||
};
|
||||
|
||||
var Orientation = {
|
||||
pitch: props.globals.getNode("/orientation/pitch-deg"),
|
||||
roll: props.globals.getNode("/orientation/roll-deg"),
|
||||
yaw: props.globals.getNode("/orientation/yaw-deg"),
|
||||
};
|
||||
|
||||
var Position = {
|
||||
gearAglFt: props.globals.getNode("/position/gear-agl-ft"),
|
||||
latitude: props.globals.getNode("/position/latitude-deg"),
|
||||
longitude: props.globals.getNode("/position/longitude-deg"),
|
||||
};
|
||||
|
||||
var Sim = {
|
||||
|
@ -119,16 +128,14 @@ var Sim = {
|
|||
},
|
||||
};
|
||||
|
||||
var Orientation = {
|
||||
pitch: props.globals.getNode("/orientation/pitch-deg"),
|
||||
roll: props.globals.getNode("/orientation/roll-deg"),
|
||||
yaw: props.globals.getNode("/orientation/yaw-deg"),
|
||||
};
|
||||
|
||||
var PTSSystems = {
|
||||
Thrust: {
|
||||
flex: props.globals.getNode("/systems/thrust/lim-flex"),
|
||||
},
|
||||
};
|
||||
|
||||
var Velocities = {
|
||||
groundspeed: props.globals.getNode("/velocities/groundspeed-kt"),
|
||||
};
|
||||
|
||||
setprop("/systems/acconfig/property-tree-setup-loaded", 1);
|
||||
|
|
|
@ -2,35 +2,8 @@
|
|||
# Joshua Davidson (Octal450)
|
||||
|
||||
# Copyright (c) 2019 Joshua Davidson (Octal450)
|
||||
|
||||
var knob = 0;
|
||||
var roll = 0;
|
||||
var pitch = 0;
|
||||
var gs = 0;
|
||||
var ac1 = 0;
|
||||
var ac2 = 0;
|
||||
var dcbat = 0;
|
||||
var pwr_src = "XX";
|
||||
setprop("/controls/adirs/align-time", 600);
|
||||
|
||||
var ADIRS = {
|
||||
init: func() {
|
||||
setprop("/controls/adirs/numm", 0);
|
||||
setprop("/instrumentation/adirs/ir[0]/aligned", 0);
|
||||
setprop("/instrumentation/adirs/ir[1]/aligned", 0);
|
||||
setprop("/instrumentation/adirs/ir[2]/aligned", 0);
|
||||
setprop("/controls/adirs/ir[0]/align", 0);
|
||||
setprop("/controls/adirs/ir[1]/align", 0);
|
||||
setprop("/controls/adirs/ir[2]/align", 0);
|
||||
setprop("/controls/adirs/ir[0]/time", 0);
|
||||
setprop("/controls/adirs/ir[1]/time", 0);
|
||||
setprop("/controls/adirs/ir[2]/time", 0);
|
||||
setprop("/controls/adirs/ir[0]/knob", 0);
|
||||
setprop("/controls/adirs/ir[1]/knob", 0);
|
||||
setprop("/controls/adirs/ir[2]/knob", 0);
|
||||
setprop("/controls/adirs/ir[0]/fault", 0);
|
||||
setprop("/controls/adirs/ir[1]/fault", 0);
|
||||
setprop("/controls/adirs/ir[2]/fault", 0);
|
||||
setprop("/controls/adirs/mcdu/mode1", ""); # INVAL ALIGN NAV ATT or off (blank)
|
||||
setprop("/controls/adirs/mcdu/mode2", "");
|
||||
setprop("/controls/adirs/mcdu/mode3", "");
|
||||
|
@ -43,160 +16,4 @@ var ADIRS = {
|
|||
setprop("/controls/adirs/mcdu/avgdrift3", "");
|
||||
setprop("/controls/adirs/mcducbtn", 0);
|
||||
},
|
||||
loop: func() {
|
||||
roll = getprop("/orientation/roll-deg");
|
||||
pitch = getprop("/orientation/pitch-deg");
|
||||
gs = getprop("/velocities/groundspeed-kt");
|
||||
ac1 = getprop("/systems/electrical/bus/ac-1");
|
||||
ac2 = getprop("/systems/electrical/bus/ac-2");
|
||||
dcbat = getprop("/systems/electrical/bus/dc-bat");
|
||||
|
||||
if (getprop("/controls/adirs/skip") == 1) {
|
||||
if (getprop("/controls/adirs/align-time") != 5) {
|
||||
setprop("/controls/adirs/align-time", 5);
|
||||
}
|
||||
} else {
|
||||
if (getprop("/controls/adirs/align-time") != 600) {
|
||||
setprop("/controls/adirs/align-time", 600);
|
||||
}
|
||||
}
|
||||
|
||||
if (gs > 5 or pitch > 5 or pitch < -5 or roll > 10 or roll < -10 or (ac1 < 110 and ac2 < 110 and dcbat < 25)) {
|
||||
if (getprop("/controls/adirs/ir[0]/align") == 1) {
|
||||
me.stopAlign(0,1);
|
||||
}
|
||||
if (getprop("/controls/adirs/ir[1]/align") == 1) {
|
||||
me.stopAlign(1,1);
|
||||
}
|
||||
if (getprop("/controls/adirs/ir[2]/align") == 1) {
|
||||
me.stopAlign(2,1);
|
||||
}
|
||||
}
|
||||
},
|
||||
knob: func(k) {
|
||||
knob = getprop("/controls/adirs/ir[" ~ k ~ "]/knob");
|
||||
if (knob == 0) {
|
||||
me.stopAlign(k,0);
|
||||
} else if (knob == 1) {
|
||||
me.beginAlign(k);
|
||||
} else if (knob == 2) {
|
||||
me.beginAlign(k);
|
||||
}
|
||||
},
|
||||
beginAlign: func(n) {
|
||||
ac1 = getprop("/systems/electrical/bus/ac-1");
|
||||
ac2 = getprop("/systems/electrical/bus/ac-2");
|
||||
dcbat = getprop("/systems/electrical/bus/dc-bat");
|
||||
setprop("/instrumentation/adirs/adr[" ~ n ~ "]/active", 1);
|
||||
if (getprop("/controls/adirs/ir[" ~ n ~ "]/align") != 1 and getprop("/instrumentation/adirs/ir[" ~ n ~ "]/aligned") != 1 and (ac1 >= 110 or ac2 >= 110 or dcbat >= 25)) {
|
||||
setprop("/controls/adirs/ir[" ~ n ~ "]/time", getprop("/sim/time/elapsed-sec"));
|
||||
setprop("/controls/adirs/ir[" ~ n ~ "]/align", 1);
|
||||
setprop("/controls/adirs/ir[" ~ n ~ "]/fault", 0);
|
||||
if (n == 0) {
|
||||
alignOne.start();
|
||||
} else if (n == 1) {
|
||||
alignTwo.start();
|
||||
} else if (n == 2) {
|
||||
alignThree.start();
|
||||
}
|
||||
}
|
||||
},
|
||||
stopAlign: func(n,f) {
|
||||
setprop("/controls/adirs/ir[" ~ n ~ "]/align", 0);
|
||||
if (f == 1) {
|
||||
setprop("/controls/adirs/ir[" ~ n ~ "]/fault", 1);
|
||||
} else {
|
||||
setprop("/controls/adirs/ir[" ~ n ~ "]/fault", 0);
|
||||
}
|
||||
if (n == 0) {
|
||||
alignOne.stop();
|
||||
} else if (n == 1) {
|
||||
alignTwo.stop();
|
||||
} else if (n == 2) {
|
||||
alignThree.stop();
|
||||
}
|
||||
setprop("/instrumentation/adirs/ir[" ~ n ~ "]/aligned", 0);
|
||||
setprop("/controls/adirs/mcducbtn", 0);
|
||||
},
|
||||
skip: func(n) {
|
||||
if (n == 0) {
|
||||
alignOne.stop();
|
||||
} else if (n == 1) {
|
||||
alignTwo.stop();
|
||||
} else if (n == 2) {
|
||||
alignThree.stop();
|
||||
}
|
||||
setprop("/controls/adirs/ir[" ~ n ~ "]/align", 0);
|
||||
setprop("/controls/adirs/ir[" ~ n ~ "]/fault", 0);
|
||||
setprop("/instrumentation/adirs/ir[" ~ n ~ "]/aligned", 1);
|
||||
},
|
||||
};
|
||||
|
||||
var alignOne = maketimer(0.1, func {
|
||||
if (getprop("/controls/adirs/ir[0]/time") + getprop("/controls/adirs/align-time") >= getprop("/sim/time/elapsed-sec")) {
|
||||
if (getprop("/instrumentation/adirs/ir[0]/aligned") != 0) {
|
||||
setprop("/instrumentation/adirs/ir[0]/aligned", 0);
|
||||
}
|
||||
if (getprop("/controls/adirs/ir[0]/align") != 1) {
|
||||
setprop("/controls/adirs/ir[0]/align", 1);
|
||||
}
|
||||
} else {
|
||||
if (getprop("/instrumentation/adirs/ir[0]/aligned") != 1 and getprop("/controls/adirs/mcducbtn") == 1) {
|
||||
alignOne.stop();
|
||||
setprop("/instrumentation/adirs/ir[0]/aligned", 1);
|
||||
}
|
||||
if (getprop("/controls/adirs/ir[0]/align") != 0) {
|
||||
setprop("/controls/adirs/ir[0]/align", 0);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
var alignTwo = maketimer(0.1, func {
|
||||
if (getprop("/controls/adirs/ir[1]/time") + getprop("/controls/adirs/align-time") >= getprop("/sim/time/elapsed-sec")) {
|
||||
if (getprop("/instrumentation/adirs/ir[1]/aligned") != 0) {
|
||||
setprop("/instrumentation/adirs/ir[1]/aligned", 0);
|
||||
}
|
||||
if (getprop("/controls/adirs/ir[1]/align") != 1) {
|
||||
setprop("/controls/adirs/ir[1]/align", 1);
|
||||
}
|
||||
} else {
|
||||
if (getprop("/instrumentation/adirs/ir[1]/aligned") != 1 and getprop("/controls/adirs/mcducbtn") == 1) {
|
||||
alignTwo.stop();
|
||||
setprop("/instrumentation/adirs/ir[1]/aligned", 1);
|
||||
}
|
||||
if (getprop("/controls/adirs/ir[1]/align") != 0) {
|
||||
setprop("/controls/adirs/ir[1]/align", 0);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
var alignThree = maketimer(0.1, func {
|
||||
if (getprop("/controls/adirs/ir[2]/time") + getprop("/controls/adirs/align-time") >= getprop("/sim/time/elapsed-sec")) {
|
||||
if (getprop("/instrumentation/adirs/ir[2]/aligned") != 0) {
|
||||
setprop("/instrumentation/adirs/ir[2]/aligned", 0);
|
||||
}
|
||||
if (getprop("/controls/adirs/ir[2]/align") != 1) {
|
||||
setprop("/controls/adirs/ir[2]/align", 1);
|
||||
}
|
||||
} else {
|
||||
if (getprop("/instrumentation/adirs/ir[2]/aligned") != 1 and getprop("/controls/adirs/mcducbtn") == 1) {
|
||||
alignThree.stop();
|
||||
setprop("/instrumentation/adirs/ir[2]/aligned", 1);
|
||||
}
|
||||
if (getprop("/controls/adirs/ir[2]/align") != 0) {
|
||||
setprop("/controls/adirs/ir[2]/align", 0);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
setlistener("/controls/adirs/ir[0]/knob", func {
|
||||
ADIRS.knob(0);
|
||||
});
|
||||
|
||||
setlistener("/controls/adirs/ir[1]/knob", func {
|
||||
ADIRS.knob(1);
|
||||
});
|
||||
|
||||
setlistener("/controls/adirs/ir[2]/knob", func {
|
||||
ADIRS.knob(2);
|
||||
});
|
||||
};
|
|
@ -9,17 +9,24 @@ var _selfTestTime = nil;
|
|||
|
||||
var ADIRU = {
|
||||
# local vars
|
||||
_alignTime: 0,
|
||||
_voltageMain: 0,
|
||||
_voltageBackup: 0,
|
||||
_voltageLimitedTime: 0,
|
||||
_noPowerTime: 0,
|
||||
_timeVar: 0,
|
||||
_roll: 0,
|
||||
_pitch: 0,
|
||||
_gs: 0,
|
||||
|
||||
num: 0,
|
||||
aligned: 0,
|
||||
inAlign: 0,
|
||||
outputOn: 0, # 0 = disc, 1 = normal
|
||||
mode: 0, # 0 = off, 1 = nav, 2 = att
|
||||
energised: 0, # 0 = off, 1 = on
|
||||
operative: 0, # 0 = off,
|
||||
alignTimer: nil,
|
||||
input: [],
|
||||
output: [],
|
||||
|
||||
|
@ -27,8 +34,18 @@ var ADIRU = {
|
|||
new: func(n) {
|
||||
var adiru = { parents:[ADIRU] };
|
||||
adiru.num = n;
|
||||
adiru.alignTimer = maketimer(0.1, adiru, me.alignLoop);
|
||||
return adiru;
|
||||
},
|
||||
setOperative: func(newOperative) {
|
||||
if (newOperative != me.operative) {
|
||||
me.operative = newOperative;
|
||||
if (newOperative) {
|
||||
me.selfTest();
|
||||
}
|
||||
}
|
||||
},
|
||||
# Power and state
|
||||
updateEnergised: func(mode) {
|
||||
me.energised = mode != 0 ? 1 : 0;
|
||||
},
|
||||
|
@ -41,6 +58,7 @@ var ADIRU = {
|
|||
me._voltageLimitedTime = isLimited;
|
||||
return me._voltageBackup;
|
||||
},
|
||||
# BITE
|
||||
selfTest: func() {
|
||||
ADIRSnew._selfTest = 1;
|
||||
_selfTestTime = pts.Sim.Time.elapsedSec.getValue();
|
||||
|
@ -66,14 +84,67 @@ var ADIRU = {
|
|||
|
||||
ADIRSnew.selfTest();
|
||||
},
|
||||
setOperative: func(newOperative) {
|
||||
if (newOperative != me.operative) {
|
||||
me.operative = newOperative;
|
||||
if (newOperative) {
|
||||
me.selfTest();
|
||||
# Alignment
|
||||
align: func(time) {
|
||||
ADIRSnew.Lights.irFault[me.num].setBoolValue(0);
|
||||
if (!ADIRSnew.skip.getValue()) {
|
||||
if (time > 0 and me.aligned == 0 and me.inAlign == 0 and me.operative == 1) {
|
||||
me._alignTime = pts.Sim.Time.elapsedSec.getValue() + time;
|
||||
print("Alignment Started");
|
||||
me.inAlign = 1;
|
||||
if (me.alignTimer != nil) {
|
||||
me.alignTimer.start();
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (me.aligned == 0 and me.inAlign == 0 and me.operative == 1) {
|
||||
me._alignTime = pts.Sim.Time.elapsedSec.getValue() + 5;
|
||||
print("Fast Alignment Started");
|
||||
me.inAlign = 1;
|
||||
if (me.alignTimer != nil) {
|
||||
me.alignTimer.start();
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
stopAlignNoAlign: func() {
|
||||
print("Stopping alignment or setting unaligned state");
|
||||
me.inAlign = 0;
|
||||
me.aligned = 0;
|
||||
if (me.alignTimer != nil) {
|
||||
me.alignTimer.stop();
|
||||
}
|
||||
},
|
||||
stopAlignAligned: func() {
|
||||
print("Aligned");
|
||||
me.inAlign = 0;
|
||||
me.aligned = 1;
|
||||
if (me.alignTimer != nil) {
|
||||
me.alignTimer.stop();
|
||||
}
|
||||
},
|
||||
alignLoop: func() {
|
||||
me._roll = pts.Orientation.roll.getValue();
|
||||
me._pitch = pts.Orientation.pitch.getValue();
|
||||
me._gs = pts.Velocities.groundspeed.getValue();
|
||||
|
||||
# todo use IR values
|
||||
if (me._gs > 5 or abs(me._pitch) > 5 or abs(me._roll) > 10) {
|
||||
me.stopAlignNoAlign();
|
||||
print("Excessive motion, restarting");
|
||||
me.update(); # update operative
|
||||
me.align(calcAlignTime(pts.Position.latitude.getValue()));
|
||||
} elsif (me.operative == 0) {
|
||||
print("ADIRU " ~ me.num ~ " off");
|
||||
me.stopAlignNoAlign();
|
||||
} elsif (pts.Sim.Time.elapsedSec.getValue() >= me._alignTime) {
|
||||
me.stopAlignAligned();
|
||||
}
|
||||
},
|
||||
instAlign: func() {
|
||||
me.stopAlignAligned();
|
||||
},
|
||||
# Update loop
|
||||
update: func() {
|
||||
me._timeVar = pts.Sim.Time.elapsedSec.getValue();
|
||||
if (me.energised and !me._voltageMain and me._voltageLimitedTime and me._noPowerTime == 0) {
|
||||
|
@ -136,6 +207,13 @@ var ADIRSControlPanel = {
|
|||
ADIRSnew.ADIRunits[n].mode = mode;
|
||||
ADIRSnew.ADIRunits[n].updateEnergised(mode);
|
||||
ADIRSnew.Switches.irModeSw[n].setValue(mode);
|
||||
if (mode == 0) {
|
||||
ADIRSnew.Lights.irFault[n].setBoolValue(0);
|
||||
ADIRSnew.ADIRunits[n].stopAlignNoAlign();
|
||||
} elsif (ADIRSnew.ADIRunits[n].aligned == 0) {
|
||||
ADIRSnew.ADIRunits[n].update(); # update early so operative is set properly
|
||||
ADIRSnew.ADIRunits[n].align(calcAlignTime(pts.Position.latitude.getValue())); # when you set NAV, it first acquires GPS position then acquires GPS. You then use IRS INIT > to set PPOS to align if you wish
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
@ -155,7 +233,6 @@ var ADIRSnew = {
|
|||
|
||||
# ADIRS Units
|
||||
ADIRunits: [nil, nil, nil],
|
||||
#IRunits: [nil, nil, nil],
|
||||
|
||||
# Electrical
|
||||
mainSupply: [systems.ELEC.Bus.acEss, systems.ELEC.Bus.ac2, systems.ELEC.Bus.ac1],
|
||||
|
@ -180,6 +257,8 @@ var ADIRSnew = {
|
|||
|
||||
# Nodes
|
||||
overspeedVFE: props.globals.initNode("/systems/navigation/adr/computation/overspeed-vfe-spd", 0, "INT"),
|
||||
skip: props.globals.initNode("/controls/adirs/skip", 0, "BOOL"),
|
||||
mcduControl: props.globals.initNode("/controls/adirs/mcducbtn", 0, "BOOL"),
|
||||
|
||||
# System
|
||||
init: func() {
|
||||
|
@ -249,12 +328,26 @@ var ADIRSnew = {
|
|||
|
||||
};
|
||||
|
||||
var calcAlignTime = func(latitude) {
|
||||
return ((0.002 * (latitude * latitude)) + 5) * 60;
|
||||
};
|
||||
|
||||
setlistener("/systems/fmgc/cas-compare/cas-reject-all", func() {
|
||||
if (pts.FMGC.CasCompare.rejectAll.getBoolValue()) {
|
||||
fcu.athrOff("hard");
|
||||
}
|
||||
}, 0, 0);
|
||||
|
||||
setlistener("/controls/adirs/skip", func() {
|
||||
if (ADIRSnew.skip.getBoolValue()) {
|
||||
for (i = 0; i < 3; i = i + 1) {
|
||||
if (ADIRSnew.ADIRunits[i].inAlign == 1) {
|
||||
ADIRSnew.ADIRunits[i].stopAlignAligned();
|
||||
}
|
||||
}
|
||||
}
|
||||
}, 0, 0);
|
||||
|
||||
selfTestLoop = maketimer(0.2, func() {
|
||||
if (pts.Sim.Time.elapsedSec.getValue() > _selfTestTime + 5) {
|
||||
ADIRSnew.Lights.onBat.setBoolValue(0);
|
||||
|
|
67
Nasal/Systems/APU.nas
Normal file
67
Nasal/Systems/APU.nas
Normal file
|
@ -0,0 +1,67 @@
|
|||
# A3XX Auxilliary Power Unit
|
||||
# Jonathan Redpath (legoboyvdlp)
|
||||
|
||||
# Copyright (c) 2019 Jonathan Redpath (legoboyvdlp)
|
||||
|
||||
var APU = {
|
||||
state: 0, # power up, watch, starting, run, cooldown, shutdown
|
||||
nRpm: 0,
|
||||
fuelValve: aircraft.door.new("/controls/apu/fuel-valve", 1),
|
||||
inletFlap: aircraft.door.new("/controls/apu/inlet-flap", 12),
|
||||
listenSignals: 0,
|
||||
start: 0,
|
||||
cancelCheckFlap: 0,
|
||||
new: func() {
|
||||
var a = { parents:[APU] };
|
||||
return a;
|
||||
},
|
||||
setState: func(num) {
|
||||
me.state = num;
|
||||
},
|
||||
powerOn: func() {
|
||||
# apu able to receive emergency stop or start signals
|
||||
me.fuelValve.open();
|
||||
me.inletFlap.open();
|
||||
me.listenSignals = 1;
|
||||
settimer(me.setState(1), 3);
|
||||
},
|
||||
getStartSignal: func() {
|
||||
if (me.listenSignals and me.state < 2 and me.nRpm < 7) {
|
||||
me.start = 1;
|
||||
me.startCheckFlap();
|
||||
} elsif (me.listenSignals) {
|
||||
settimer(me.getStartSignal(), 0);
|
||||
}
|
||||
},
|
||||
startCheckFlap: func() {
|
||||
if (me.inletFlap.getpos() != 1 and me.cancelCheckFlap == 0 and me.state == 1) {
|
||||
settimer(me.startCheckFlap(), 0);
|
||||
} elsif (me.cancelCheckFlap) {
|
||||
me.cancelCheckFlap = 0;
|
||||
} else {
|
||||
me.setState(2);
|
||||
}
|
||||
},
|
||||
getStopSignal: func() {
|
||||
if (me.listenSignals) {
|
||||
me.cancelCheckFlap = 1;
|
||||
me.inletFlap.close();
|
||||
# wait for flap close --> power down relay output
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
var APUController = {
|
||||
_init: 0,
|
||||
APU: nil,
|
||||
init: func() {
|
||||
if (!me._init) {
|
||||
me.APU = APU.new();
|
||||
}
|
||||
},
|
||||
loop: func() {
|
||||
if (me.APU != nil) {
|
||||
APU.update();
|
||||
}
|
||||
},
|
||||
};
|
|
@ -13,6 +13,8 @@ var dc2 = 0;
|
|||
|
||||
# Main class
|
||||
var ELEC = {
|
||||
_timer1On: 0,
|
||||
_timer2On: 0,
|
||||
Bus: {
|
||||
acEss: props.globals.getNode("/systems/electrical/bus/ac-ess"),
|
||||
acEssShed: props.globals.getNode("/systems/electrical/bus/ac-ess-shed"),
|
||||
|
@ -227,20 +229,32 @@ var ELEC = {
|
|||
|
||||
# Autopilot Disconnection routines
|
||||
if (me.Bus.dcEssShed.getValue() < 25) {
|
||||
if (getprop("/it-autoflight/output/ap1") == 1) {
|
||||
fcu.apOff("hard", 1);
|
||||
if (getprop("/it-autoflight/output/ap2") == 0) {
|
||||
fcu.athrOff("hard"); # TODO - athr master FMGC logic
|
||||
}
|
||||
if (getprop("/it-autoflight/output/ap1") == 1 and !me._timer1On) {
|
||||
me._timer1On = 1;
|
||||
settimer(func() {
|
||||
if (me.Bus.dcEssShed.getValue() < 25) {
|
||||
fcu.apOff("hard", 1);
|
||||
if (fcu.FCUController.activeFMGC.getValue() == 1) {
|
||||
fcu.athrOff("hard");
|
||||
}
|
||||
}
|
||||
me._timer1On = 0;
|
||||
}, 0.1);
|
||||
}
|
||||
}
|
||||
|
||||
if (me.Bus.dc2.getValue() < 25) {
|
||||
if (getprop("/it-autoflight/output/ap2") == 1) {
|
||||
fcu.apOff("hard", 2);
|
||||
if (getprop("/it-autoflight/output/ap1") == 0) {
|
||||
fcu.athrOff("hard"); # TODO - athr master FMGC logic
|
||||
}
|
||||
if (getprop("/it-autoflight/output/ap2") == 1 and !me._timer2On) {
|
||||
me._timer2On = 1;
|
||||
settimer(func() {
|
||||
if (me.Bus.dc2.getValue() < 25) {
|
||||
fcu.apOff("hard", 2);
|
||||
if (fcu.FCUController.activeFMGC.getValue() == 2) {
|
||||
fcu.athrOff("hard");
|
||||
}
|
||||
}
|
||||
me._timer2On = 0;
|
||||
}, 0.1);
|
||||
}
|
||||
}
|
||||
},
|
||||
|
|
|
@ -521,8 +521,8 @@ cargoDetectorLoop.new(2, 1, "/systems/fire/cargo/fwd/temperature", "/systems/fai
|
|||
]);
|
||||
|
||||
# Create extinguisher bottles
|
||||
var extinguisherBottles = std.Vector.new([extinguisherBottle.new(0, "/systems/fire/engine1/disch1", "/systems/electrical/bus/dc-bat", "/systems/failures/engine-left-fire", "/systems/fire/engine1/warning-active"), extinguisherBottle.new(1, "/systems/fire/engine1/disch2", "/systems/electrical/bus/dc-2", "/systems/failures/engine-left-fire", "/systems/fire/engine1/warning-active"),
|
||||
extinguisherBottle.new(0, "/systems/fire/engine2/disch1", "/systems/electrical/bus/dc-bat", "/systems/failures/engine-right-fire", "/systems/fire/engine2/warning-active"), extinguisherBottle.new(1, "/systems/fire/engine2/disch2", "/systems/electrical/bus/dc-2", "/systems/failures/engine-right-fire", "/systems/fire/engine2/warning-active"),
|
||||
var extinguisherBottles = std.Vector.new([extinguisherBottle.new(0, "/systems/fire/engine1/disch1", "/systems/electrical/bus/dc-hot-1", "/systems/failures/engine-left-fire", "/systems/fire/engine1/warning-active"), extinguisherBottle.new(1, "/systems/fire/engine1/disch2", "/systems/electrical/bus/dc-2", "/systems/failures/engine-left-fire", "/systems/fire/engine1/warning-active"),
|
||||
extinguisherBottle.new(0, "/systems/fire/engine2/disch1", "/systems/electrical/bus/dc-hot-2", "/systems/failures/engine-right-fire", "/systems/fire/engine2/warning-active"), extinguisherBottle.new(1, "/systems/fire/engine2/disch2", "/systems/electrical/bus/dc-2", "/systems/failures/engine-right-fire", "/systems/fire/engine2/warning-active"),
|
||||
extinguisherBottle.new(9, "/systems/fire/apu/disch", "/systems/electrical/bus/dc-bat", "/systems/failures/apu-fire", "/systems/fire/apu/warning-active") ]);
|
||||
|
||||
# There is only one bottle but the system will think there are two, so other parts work
|
||||
|
@ -585,6 +585,7 @@ eng1AgentTimerMakeTimerFunc = func() {
|
|||
var timeToSetEng1 = eng1Time - etEng1;
|
||||
eng1AgentTimer.setValue(timeToSetEng1);
|
||||
} else {
|
||||
eng1AgentTimer.setValue(99);
|
||||
eng1AgentTimerMakeTimer.stop();
|
||||
}
|
||||
}
|
||||
|
@ -596,6 +597,7 @@ eng1Agent2TimerMakeTimerFunc = func() {
|
|||
var timeToSetEng12 = eng1Time2 - etEng12;
|
||||
eng1Agent2Timer.setValue(timeToSetEng12);
|
||||
} else {
|
||||
eng1Agent2Timer.setValue(99);
|
||||
eng1Agent2TimerMakeTimer.stop();
|
||||
}
|
||||
}
|
||||
|
@ -626,6 +628,7 @@ eng2AgentTimerMakeTimerFunc = func() {
|
|||
var timeToSetEng2 = eng2Time - etEng2;
|
||||
eng2AgentTimer.setValue(timeToSetEng2);
|
||||
} else {
|
||||
eng2AgentTimer.setValue(99);
|
||||
eng2AgentTimerMakeTimer.stop();
|
||||
}
|
||||
}
|
||||
|
@ -637,6 +640,7 @@ eng2Agent2TimerMakeTimerFunc = func() {
|
|||
var timeToSetEng22 = eng2Time2 - etEng22;
|
||||
eng2Agent2Timer.setValue(timeToSetEng22);
|
||||
} else {
|
||||
eng2Agent2Timer.setValue(99);
|
||||
eng2Agent2TimerMakeTimer.stop();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -22,6 +22,10 @@ var FUEL = {
|
|||
pumpRight1: props.globals.getNode("/controls/fuel/switches/pump-right-1"),
|
||||
pumpRight2: props.globals.getNode("/controls/fuel/switches/pump-right-2"),
|
||||
},
|
||||
Pumps: {
|
||||
apu: props.globals.getNode("/systems/fuel/pumps/apu-operate"),
|
||||
allOff: props.globals.getNode("/systems/fuel/pumps/all-eng-pump-off"),
|
||||
},
|
||||
Valves: {
|
||||
crossfeed: props.globals.getNode("/systems/fuel/valves/crossfeed-valve"),
|
||||
lpValve1: props.globals.getNode("/systems/fuel/valves/engine-1-lp-valve"),
|
||||
|
|
|
@ -1557,6 +1557,7 @@
|
|||
<mode>once</mode>
|
||||
<type>avionics</type>
|
||||
<condition>
|
||||
<property>/sim/current-view/internal</property>
|
||||
<property>/sim/sound/warnings/chime</property>
|
||||
</condition>
|
||||
<reference-dist>10</reference-dist>
|
||||
|
@ -1575,6 +1576,7 @@
|
|||
</and>
|
||||
</condition>
|
||||
<volume>
|
||||
<property>/sim/current-view/internal</property>
|
||||
<factor>0.8</factor>
|
||||
</volume>
|
||||
<reference-dist>10</reference-dist>
|
||||
|
@ -1590,6 +1592,7 @@
|
|||
<property>/sim/sound/warnings/cricket</property>
|
||||
</condition>
|
||||
<volume>
|
||||
<property>/sim/current-view/internal</property>
|
||||
<factor>0.2</factor>
|
||||
</volume>
|
||||
<reference-dist>10</reference-dist>
|
||||
|
@ -1605,6 +1608,7 @@
|
|||
<property>/sim/sound/warnings/stall-voice</property>
|
||||
</condition>
|
||||
<volume>
|
||||
<property>/sim/current-view/internal</property>
|
||||
<factor>2.0</factor>
|
||||
</volume>
|
||||
<reference-dist>10</reference-dist>
|
||||
|
|
|
@ -409,6 +409,9 @@
|
|||
<!-- outside -->
|
||||
<engine>
|
||||
<name>a320_external_idle_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-idle.wav</path>
|
||||
<condition>
|
||||
|
@ -440,6 +443,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_idle_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-idle.wav</path>
|
||||
<condition>
|
||||
|
@ -471,6 +477,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_idle_rear_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-idleRear.wav</path>
|
||||
<condition>
|
||||
|
@ -502,6 +511,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_idle_rear_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-idleRear.wav</path>
|
||||
<condition>
|
||||
|
@ -533,6 +545,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_idle_distant_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-idleDist.wav</path>
|
||||
<condition>
|
||||
|
@ -564,6 +579,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_idle_distant_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-idleDist.wav</path>
|
||||
<condition>
|
||||
|
@ -595,6 +613,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_idle_distant_side_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-idleDistSide.wav</path>
|
||||
<condition>
|
||||
|
@ -626,6 +647,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_idle_distant_side_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-idleDistSide.wav</path>
|
||||
<condition>
|
||||
|
@ -657,6 +681,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_idle_close_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-idleClose.wav</path>
|
||||
<condition>
|
||||
|
@ -688,6 +715,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_idle_close_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-idleClose.wav</path>
|
||||
<condition>
|
||||
|
@ -719,6 +749,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_spool_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-spool.wav</path>
|
||||
<condition>
|
||||
|
@ -750,6 +783,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_spool_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-spool.wav</path>
|
||||
<condition>
|
||||
|
@ -781,6 +817,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_lowspool_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-lowspool.wav</path>
|
||||
<condition>
|
||||
|
@ -812,6 +851,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_lowspool_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-lowspool.wav</path>
|
||||
<condition>
|
||||
|
@ -843,6 +885,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_spool_close_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-spoolClose.wav</path>
|
||||
<condition>
|
||||
|
@ -874,6 +919,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_spool_close_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-spoolClose.wav</path>
|
||||
<condition>
|
||||
|
@ -905,6 +953,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_spool_closeRear_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-spoolCloseRear.wav</path>
|
||||
<condition>
|
||||
|
@ -936,6 +987,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_spool_closeRear_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-spoolCloseRear.wav</path>
|
||||
<condition>
|
||||
|
@ -967,6 +1021,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_buzz_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-buzz.wav</path>
|
||||
<condition>
|
||||
|
@ -998,6 +1055,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_buzz_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-buzz.wav</path>
|
||||
<condition>
|
||||
|
@ -1029,6 +1089,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_buzz_distant_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-buzzDist.wav</path>
|
||||
<condition>
|
||||
|
@ -1060,6 +1123,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_buzz_distant_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-buzzDist.wav</path>
|
||||
<condition>
|
||||
|
@ -1091,6 +1157,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_rumble_distant_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-rumbleDist.wav</path>
|
||||
<condition>
|
||||
|
@ -1119,6 +1188,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_rumble_distant_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-rumbleDist.wav</path>
|
||||
<condition>
|
||||
|
@ -1147,6 +1219,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_rumble_side_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-rumbleSide.wav</path>
|
||||
<condition>
|
||||
|
@ -1178,6 +1253,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_rumble_side_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-rumbleSide.wav</path>
|
||||
<condition>
|
||||
|
@ -1209,6 +1287,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_rumble_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-rumble.wav</path>
|
||||
<condition>
|
||||
|
@ -1240,6 +1321,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_rumble_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-rumble.wav</path>
|
||||
<condition>
|
||||
|
@ -1271,6 +1355,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_rumble2_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-rumble.wav</path>
|
||||
<condition>
|
||||
|
@ -1302,6 +1389,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_rumble2_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-rumble.wav</path>
|
||||
<condition>
|
||||
|
@ -1333,6 +1423,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_reverse_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-reverse.wav</path>
|
||||
<condition>
|
||||
|
@ -1364,6 +1457,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_reverse_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-reverse.wav</path>
|
||||
<condition>
|
||||
|
@ -1401,6 +1497,9 @@
|
|||
<!-- wingaft -->
|
||||
<engine>
|
||||
<name>a320_wingaft_idle_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-idle.wav</path>
|
||||
<condition>
|
||||
|
@ -1423,6 +1522,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_idle_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-idle.wav</path>
|
||||
<condition>
|
||||
|
@ -1445,6 +1547,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_idle2_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-idle2.wav</path>
|
||||
<condition>
|
||||
|
@ -1467,6 +1572,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_idle2_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-idle2.wav</path>
|
||||
<condition>
|
||||
|
@ -1489,6 +1597,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_lowspool_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-lowspool.wav</path>
|
||||
<condition>
|
||||
|
@ -1511,6 +1622,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_lowspool_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-lowspool.wav</path>
|
||||
<condition>
|
||||
|
@ -1533,6 +1647,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_spool_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-lowspool.wav</path>
|
||||
<condition>
|
||||
|
@ -1555,6 +1672,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_spool_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-lowspool.wav</path>
|
||||
<condition>
|
||||
|
@ -1577,6 +1697,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_hum_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-hum.wav</path>
|
||||
<condition>
|
||||
|
@ -1599,6 +1722,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_hum_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-hum.wav</path>
|
||||
<condition>
|
||||
|
@ -1621,6 +1747,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_humfull_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-humfull.wav</path>
|
||||
<condition>
|
||||
|
@ -1643,6 +1772,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_humfull_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-humfull.wav</path>
|
||||
<condition>
|
||||
|
@ -1665,6 +1797,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_comb_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-comb.wav</path>
|
||||
<condition>
|
||||
|
@ -1687,6 +1822,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_comb_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-comb.wav</path>
|
||||
<condition>
|
||||
|
@ -1709,6 +1847,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_comb2_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-comb-full.wav</path>
|
||||
<condition>
|
||||
|
@ -1731,6 +1872,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_comb2_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-comb-full.wav</path>
|
||||
<condition>
|
||||
|
@ -1753,6 +1897,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_buzz_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-buzz.wav</path>
|
||||
<condition>
|
||||
|
@ -1775,6 +1922,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_buzz_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-buzz.wav</path>
|
||||
<condition>
|
||||
|
@ -1797,6 +1947,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_reverse_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-reverse.wav</path>
|
||||
<condition>
|
||||
|
@ -1819,6 +1972,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_reverse_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-reverse.wav</path>
|
||||
<condition>
|
||||
|
@ -1852,6 +2008,9 @@
|
|||
<!-- wingfwd -->
|
||||
<engine>
|
||||
<name>a320_wingfwd_idle_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-idle.wav</path>
|
||||
<condition>
|
||||
|
@ -1874,6 +2033,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_idle_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-idle.wav</path>
|
||||
<condition>
|
||||
|
@ -1896,6 +2058,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_idle2_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-idle2.wav</path>
|
||||
<condition>
|
||||
|
@ -1918,6 +2083,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_idle2_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-idle2.wav</path>
|
||||
<condition>
|
||||
|
@ -1940,6 +2108,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_lowspool_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-lowspool.wav</path>
|
||||
<condition>
|
||||
|
@ -1962,6 +2133,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_lowspool_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-lowspool.wav</path>
|
||||
<condition>
|
||||
|
@ -1984,6 +2158,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_spool_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-lowspool.wav</path>
|
||||
<condition>
|
||||
|
@ -2006,6 +2183,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_spool_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-lowspool.wav</path>
|
||||
<condition>
|
||||
|
@ -2028,6 +2208,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_hum_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-hum.wav</path>
|
||||
<condition>
|
||||
|
@ -2050,6 +2233,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_hum_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-hum.wav</path>
|
||||
<condition>
|
||||
|
@ -2072,6 +2258,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_comb_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-comb.wav</path>
|
||||
<condition>
|
||||
|
@ -2094,6 +2283,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_comb_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-comb.wav</path>
|
||||
<condition>
|
||||
|
@ -2116,6 +2308,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_comb2_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-comb-full.wav</path>
|
||||
<condition>
|
||||
|
@ -2138,6 +2333,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_comb2_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-comb-full.wav</path>
|
||||
<condition>
|
||||
|
@ -2160,6 +2358,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_buzz_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-buzz.wav</path>
|
||||
<condition>
|
||||
|
@ -2182,6 +2383,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_buzz_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-buzz.wav</path>
|
||||
<condition>
|
||||
|
@ -2204,6 +2408,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_reverse_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-reverse.wav</path>
|
||||
<condition>
|
||||
|
@ -2226,6 +2433,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_reverse_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-reverse.wav</path>
|
||||
<condition>
|
||||
|
|
|
@ -365,6 +365,9 @@
|
|||
<!-- outside -->
|
||||
<engine>
|
||||
<name>a320_external_idle_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-idle.wav</path>
|
||||
<condition>
|
||||
|
@ -396,6 +399,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_idle_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-idle.wav</path>
|
||||
<condition>
|
||||
|
@ -427,6 +433,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_idle_rear_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-idleRear.wav</path>
|
||||
<condition>
|
||||
|
@ -458,6 +467,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_idle_rear_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-idleRear.wav</path>
|
||||
<condition>
|
||||
|
@ -489,6 +501,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_idle_distant_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-idleDist.wav</path>
|
||||
<condition>
|
||||
|
@ -520,6 +535,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_idle_distant_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-idleDist.wav</path>
|
||||
<condition>
|
||||
|
@ -551,6 +569,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_idle_distant_side_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-idleDistSide.wav</path>
|
||||
<condition>
|
||||
|
@ -582,6 +603,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_idle_distant_side_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-idleDistSide.wav</path>
|
||||
<condition>
|
||||
|
@ -613,6 +637,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_idle_close_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-idleClose.wav</path>
|
||||
<condition>
|
||||
|
@ -644,6 +671,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_idle_close_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-idleClose.wav</path>
|
||||
<condition>
|
||||
|
@ -675,6 +705,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_spool_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-spool.wav</path>
|
||||
<condition>
|
||||
|
@ -706,6 +739,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_spool_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-spool.wav</path>
|
||||
<condition>
|
||||
|
@ -737,6 +773,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_lowspool_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-lowspool.wav</path>
|
||||
<condition>
|
||||
|
@ -768,6 +807,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_lowspool_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-lowspool.wav</path>
|
||||
<condition>
|
||||
|
@ -799,6 +841,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_spool_close_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-spoolClose.wav</path>
|
||||
<condition>
|
||||
|
@ -830,6 +875,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_spool_close_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-spoolClose.wav</path>
|
||||
<condition>
|
||||
|
@ -861,6 +909,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_spool_closeRear_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-spoolCloseRear.wav</path>
|
||||
<condition>
|
||||
|
@ -892,6 +943,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_spool_closeRear_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-spoolCloseRear.wav</path>
|
||||
<condition>
|
||||
|
@ -923,6 +977,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_rumble_distant_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-rumbleDist.wav</path>
|
||||
<condition>
|
||||
|
@ -951,6 +1008,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_rumble_distant_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-rumbleDist.wav</path>
|
||||
<condition>
|
||||
|
@ -979,6 +1039,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_rumble_side_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-rumbleSide.wav</path>
|
||||
<condition>
|
||||
|
@ -1010,6 +1073,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_rumble_side_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-rumbleSide.wav</path>
|
||||
<condition>
|
||||
|
@ -1041,6 +1107,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_rumble_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-rumble.wav</path>
|
||||
<condition>
|
||||
|
@ -1072,6 +1141,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_rumble_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-rumble.wav</path>
|
||||
<condition>
|
||||
|
@ -1103,6 +1175,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_rumble2_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-rumble.wav</path>
|
||||
<condition>
|
||||
|
@ -1134,6 +1209,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_rumble2_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-rumble.wav</path>
|
||||
<condition>
|
||||
|
@ -1165,6 +1243,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_reverse_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-reverse.wav</path>
|
||||
<condition>
|
||||
|
@ -1196,6 +1277,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_reverse_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/external/cfm-reverse.wav</path>
|
||||
<condition>
|
||||
|
@ -1233,6 +1317,9 @@
|
|||
<!-- wingaft -->
|
||||
<engine>
|
||||
<name>a320_wingaft_idle_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-idle.wav</path>
|
||||
<condition>
|
||||
|
@ -1255,6 +1342,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_idle_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-idle.wav</path>
|
||||
<condition>
|
||||
|
@ -1277,6 +1367,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_idle2_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-idle2.wav</path>
|
||||
<condition>
|
||||
|
@ -1299,6 +1392,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_idle2_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-idle2.wav</path>
|
||||
<condition>
|
||||
|
@ -1321,6 +1417,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_lowspool_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-lowspool.wav</path>
|
||||
<condition>
|
||||
|
@ -1343,6 +1442,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_lowspool_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-lowspool.wav</path>
|
||||
<condition>
|
||||
|
@ -1365,6 +1467,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_spool_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-lowspool.wav</path>
|
||||
<condition>
|
||||
|
@ -1387,6 +1492,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_spool_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-lowspool.wav</path>
|
||||
<condition>
|
||||
|
@ -1409,6 +1517,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_hum_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-hum.wav</path>
|
||||
<condition>
|
||||
|
@ -1431,6 +1542,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_hum_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-hum.wav</path>
|
||||
<condition>
|
||||
|
@ -1453,6 +1567,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_humfull_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-humfull.wav</path>
|
||||
<condition>
|
||||
|
@ -1475,6 +1592,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_humfull_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-humfull.wav</path>
|
||||
<condition>
|
||||
|
@ -1497,6 +1617,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_comb_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-comb.wav</path>
|
||||
<condition>
|
||||
|
@ -1519,6 +1642,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_comb_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-comb.wav</path>
|
||||
<condition>
|
||||
|
@ -1541,6 +1667,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_comb2_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-comb-full.wav</path>
|
||||
<condition>
|
||||
|
@ -1563,6 +1692,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_comb2_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-comb-full.wav</path>
|
||||
<condition>
|
||||
|
@ -1585,6 +1717,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_reverse_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-reverse.wav</path>
|
||||
<condition>
|
||||
|
@ -1607,6 +1742,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_reverse_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingaft/cfm-reverse.wav</path>
|
||||
<condition>
|
||||
|
@ -1640,6 +1778,9 @@
|
|||
<!-- wingfwd -->
|
||||
<engine>
|
||||
<name>a320_wingfwd_idle_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-idle.wav</path>
|
||||
<condition>
|
||||
|
@ -1662,6 +1803,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_idle_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-idle.wav</path>
|
||||
<condition>
|
||||
|
@ -1684,6 +1828,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_idle2_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-idle2.wav</path>
|
||||
<condition>
|
||||
|
@ -1706,6 +1853,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_idle2_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-idle2.wav</path>
|
||||
<condition>
|
||||
|
@ -1728,6 +1878,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_lowspool_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-lowspool.wav</path>
|
||||
<condition>
|
||||
|
@ -1750,6 +1903,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_lowspool_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-lowspool.wav</path>
|
||||
<condition>
|
||||
|
@ -1772,6 +1928,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_spool_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-lowspool.wav</path>
|
||||
<condition>
|
||||
|
@ -1794,6 +1953,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_spool_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-lowspool.wav</path>
|
||||
<condition>
|
||||
|
@ -1816,6 +1978,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_hum_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-hum.wav</path>
|
||||
<condition>
|
||||
|
@ -1838,6 +2003,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_hum_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-hum.wav</path>
|
||||
<condition>
|
||||
|
@ -1860,6 +2028,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_comb_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-comb.wav</path>
|
||||
<condition>
|
||||
|
@ -1882,6 +2053,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_comb_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-comb.wav</path>
|
||||
<condition>
|
||||
|
@ -1904,6 +2078,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_comb2_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-comb-full.wav</path>
|
||||
<condition>
|
||||
|
@ -1926,6 +2103,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_comb2_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-comb-full.wav</path>
|
||||
<condition>
|
||||
|
@ -1948,6 +2128,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_reverse_1</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-reverse.wav</path>
|
||||
<condition>
|
||||
|
@ -1970,6 +2153,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_reverse_2</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/CFM56B/wingfwd/cfm-reverse.wav</path>
|
||||
<condition>
|
||||
|
|
|
@ -303,13 +303,6 @@
|
|||
</position>
|
||||
</engine>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- outside -->
|
||||
<engine>
|
||||
<name>a320_external_starter_left</name>
|
||||
|
@ -487,6 +480,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_idle_left</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/external/v2500-idle.wav</path>
|
||||
<condition>
|
||||
|
@ -518,6 +514,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_idle_right</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/external/v2500-idle.wav</path>
|
||||
<condition>
|
||||
|
@ -549,6 +548,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_idle_rear_left</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/external/v2500-idleRear.wav</path>
|
||||
<condition>
|
||||
|
@ -580,6 +582,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_idle_rear_right</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/external/v2500-idleRear.wav</path>
|
||||
<condition>
|
||||
|
@ -611,6 +616,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_spool_left</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/external/v2500-spool.wav</path>
|
||||
<condition>
|
||||
|
@ -642,6 +650,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_spool_right</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/external/v2500-spool.wav</path>
|
||||
<condition>
|
||||
|
@ -673,6 +684,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_lowspool_left</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/external/v2500-lowspool.wav</path>
|
||||
<condition>
|
||||
|
@ -704,6 +718,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_lowspool_right</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/external/v2500-lowspool.wav</path>
|
||||
<condition>
|
||||
|
@ -735,6 +752,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_buzz_left</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/external/v2500-buzz.wav</path>
|
||||
<condition>
|
||||
|
@ -766,6 +786,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_buzz_right</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/external/v2500-buzz.wav</path>
|
||||
<condition>
|
||||
|
@ -797,6 +820,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_buzz_distant_left</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/external/v2500-buzzDist.wav</path>
|
||||
<condition>
|
||||
|
@ -828,6 +854,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_buzz_distant_right</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/external/v2500-buzzDist.wav</path>
|
||||
<condition>
|
||||
|
@ -859,6 +888,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_rumble_distant_left</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/external/v2500-rumbleDist.wav</path>
|
||||
<condition>
|
||||
|
@ -887,6 +919,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_rumble_distant_right</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/external/v2500-rumbleDist.wav</path>
|
||||
<condition>
|
||||
|
@ -915,6 +950,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_rumble_left</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/external/v2500-rumble.wav</path>
|
||||
<condition>
|
||||
|
@ -946,6 +984,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_rumble_right</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/external/v2500-rumble.wav</path>
|
||||
<condition>
|
||||
|
@ -977,6 +1018,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_rumble_side_left</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/external/v2500-rumbleSide.wav</path>
|
||||
<condition>
|
||||
|
@ -1008,6 +1052,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_rumble_side_right</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/external/v2500-rumbleSide.wav</path>
|
||||
<condition>
|
||||
|
@ -1039,6 +1086,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_rumble2_left</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/external/v2500-rumble.wav</path>
|
||||
<condition>
|
||||
|
@ -1070,6 +1120,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_rumble2_right</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/external/v2500-rumble.wav</path>
|
||||
<condition>
|
||||
|
@ -1101,6 +1154,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_reverse_left</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/external/v2500-reverse.wav</path>
|
||||
<condition>
|
||||
|
@ -1132,6 +1188,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_external_reverse_right</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/external/v2500-reverse.wav</path>
|
||||
<condition>
|
||||
|
@ -1166,6 +1225,9 @@
|
|||
<!-- wingaft -->
|
||||
<engine>
|
||||
<name>a320_wingaft_idle_left</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/wingaft/v2500-idle.wav</path>
|
||||
<condition>
|
||||
|
@ -1188,6 +1250,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_idle_right</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/wingaft/v2500-idle.wav</path>
|
||||
<condition>
|
||||
|
@ -1210,6 +1275,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_whine_left</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/wingaft/v2500-whine.wav</path>
|
||||
<condition>
|
||||
|
@ -1232,6 +1300,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_whine_right</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/wingaft/v2500-whine.wav</path>
|
||||
<condition>
|
||||
|
@ -1254,6 +1325,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_lowspool_left</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/wingaft/v2500-lowspool.wav</path>
|
||||
<condition>
|
||||
|
@ -1276,6 +1350,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_lowspool_right</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/wingaft/v2500-lowspool.wav</path>
|
||||
<condition>
|
||||
|
@ -1298,6 +1375,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_comb_left</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/wingaft/v2500-comb.wav</path>
|
||||
<condition>
|
||||
|
@ -1320,6 +1400,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_comb_right</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/wingaft/v2500-comb.wav</path>
|
||||
<condition>
|
||||
|
@ -1342,6 +1425,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_fullhum_left</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/wingaft/v2500-fullhum.wav</path>
|
||||
<condition>
|
||||
|
@ -1364,6 +1450,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_fullhum_right</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/wingaft/v2500-fullhum.wav</path>
|
||||
<condition>
|
||||
|
@ -1386,6 +1475,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_reverse_left</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/wingaft/v2500-reverse.wav</path>
|
||||
<condition>
|
||||
|
@ -1408,6 +1500,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingaft_reverse_right</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/wingaft/v2500-reverse.wav</path>
|
||||
<condition>
|
||||
|
@ -1441,6 +1536,9 @@
|
|||
<!-- wingfwd -->
|
||||
<engine>
|
||||
<name>a320_wingfwd_idle_left</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/wingfwd/v2500-idle.wav</path>
|
||||
<condition>
|
||||
|
@ -1463,6 +1561,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_idle_right</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/wingfwd/v2500-idle.wav</path>
|
||||
<condition>
|
||||
|
@ -1485,6 +1586,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_lowspool_left</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/wingfwd/v2500-lowspool.wav</path>
|
||||
<condition>
|
||||
|
@ -1507,6 +1611,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_lowspool_right</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/wingfwd/v2500-lowspool.wav</path>
|
||||
<condition>
|
||||
|
@ -1529,6 +1636,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_comb_left</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/wingfwd/v2500-comb.wav</path>
|
||||
<condition>
|
||||
|
@ -1551,6 +1661,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_comb_right</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/wingfwd/v2500-comb.wav</path>
|
||||
<condition>
|
||||
|
@ -1573,6 +1686,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_fullhum_left</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/wingfwd/v2500-fullhum.wav</path>
|
||||
<condition>
|
||||
|
@ -1595,6 +1711,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_fullhum_right</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/wingfwd/v2500-fullhum.wav</path>
|
||||
<condition>
|
||||
|
@ -1617,6 +1736,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_buzz_left</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/wingfwd/v2500-buzz.wav</path>
|
||||
<condition>
|
||||
|
@ -1639,6 +1761,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_buzz_right</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/wingfwd/v2500-buzz.wav</path>
|
||||
<condition>
|
||||
|
@ -1661,6 +1786,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_reverse_left</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/wingfwd/v2500-reverse.wav</path>
|
||||
<condition>
|
||||
|
@ -1683,6 +1811,9 @@
|
|||
|
||||
<engine>
|
||||
<name>a320_wingfwd_reverse_right</name>
|
||||
<condition>
|
||||
<not><property>sim/current-view/internal</property></not>
|
||||
</condition>
|
||||
<mode>looped</mode>
|
||||
<path>Aircraft/A320-family/Sounds/SASA/V2500/wingfwd/v2500-reverse.wav</path>
|
||||
<condition>
|
||||
|
|
|
@ -13,9 +13,9 @@
|
|||
<table>
|
||||
<independentVar lookup="row">/velocities/groundspeed-kt</independentVar>
|
||||
<tableData>
|
||||
0 0.0
|
||||
5 0.0
|
||||
6 1.0
|
||||
0 0.0
|
||||
29 0.0
|
||||
30 1.0
|
||||
</tableData>
|
||||
</table>
|
||||
</product>
|
||||
|
@ -955,14 +955,26 @@
|
|||
</clipto>
|
||||
</pure_gain>
|
||||
|
||||
<switch name="/instrumentation/transponder/altimeter-input">
|
||||
<test logic="AND" value="/systems/navigation/adr/output/baro-alt-corrected-1-capt">
|
||||
<switch name="/instrumentation/transponder/altimeter-input/mode-c-alt-ft">
|
||||
<test logic="AND" value="/instrumentation/altimeter[0]/mode-c-alt-ft">
|
||||
/instrumentation/transponder/altimeter-input-src eq 1
|
||||
</test>
|
||||
<test logic="AND" value="/systems/navigation/adr/output/baro-alt-corrected-2-capt">
|
||||
<test logic="AND" value="/instrumentation/altimeter[1]/mode-c-alt-ft">
|
||||
/instrumentation/transponder/altimeter-input-src eq 2
|
||||
</test>
|
||||
<test logic="AND" value="/systems/navigation/adr/output/baro-alt-corrected-3-capt">
|
||||
<test logic="AND" value="/instrumentation/altimeter[2]/mode-c-alt-ft">
|
||||
/instrumentation/transponder/altimeter-input-src eq 3
|
||||
</test>
|
||||
</switch>
|
||||
|
||||
<switch name="/instrumentation/transponder/altimeter-input/mode-s-alt-ft">
|
||||
<test logic="AND" value="/instrumentation/altimeter[0]/mode-s-alt-ft">
|
||||
/instrumentation/transponder/altimeter-input-src eq 1
|
||||
</test>
|
||||
<test logic="AND" value="/instrumentation/altimeter[1]/mode-s-alt-ft">
|
||||
/instrumentation/transponder/altimeter-input-src eq 2
|
||||
</test>
|
||||
<test logic="AND" value="/instrumentation/altimeter[2]/mode-s-alt-ft">
|
||||
/instrumentation/transponder/altimeter-input-src eq 3
|
||||
</test>
|
||||
</switch>
|
||||
|
|
|
@ -4,6 +4,8 @@
|
|||
|
||||
<system name="A320: Electrical">
|
||||
|
||||
<property value="0">/systems/electrical/some-electric-thingie/rat-deploy</property>
|
||||
|
||||
<channel name="Main Electrical" execrate="8">
|
||||
|
||||
<!-- Battery 1 -->
|
||||
|
@ -371,7 +373,7 @@
|
|||
|
||||
<!-- Emergency Generator -->
|
||||
<switch name="/systems/electrical/some-electric-thingie/rat-deploy">
|
||||
<default value="0"/>
|
||||
<default value="/systems/electrical/some-electric-thingie/rat-deploy"/>
|
||||
<test logic="AND" value="1">
|
||||
/instrumentation/airspeed-indicator/indicated-speed-kt gt 100
|
||||
/systems/electrical/bus/ac-1 eq 0
|
||||
|
@ -382,6 +384,9 @@
|
|||
/controls/hydraulic/switches/rat-man eq 1
|
||||
/controls/electrical/switches/emer-elec-man-on eq 1
|
||||
</test>
|
||||
<!--<test value="0">
|
||||
/controls/hydraulic/switches/ground-rat-retraction eq 1
|
||||
</test>-->
|
||||
</switch>
|
||||
|
||||
<switch name="/systems/electrical/some-electric-thingie/emer-gen-operate">
|
||||
|
@ -1301,7 +1306,7 @@
|
|||
<default value="0"/>
|
||||
<test logic="AND" value="1">
|
||||
/systems/electrical/some-electric-thingie/emer-elec-config eq 1
|
||||
/controls/electrical/switches/gen-1 eq 1
|
||||
/systems/electrical/some-electric-thingie/generator-1-pb eq 1
|
||||
/controls/electrical/switches/bus-tie eq 0
|
||||
</test>
|
||||
</switch>
|
||||
|
@ -1310,7 +1315,7 @@
|
|||
<default value="0"/>
|
||||
<test logic="AND" value="1">
|
||||
/systems/electrical/some-electric-thingie/emer-elec-config eq 1
|
||||
/controls/electrical/switches/gen-2 eq 1
|
||||
/systems/electrical/some-electric-thingie/generator-2-pb eq 1
|
||||
/controls/electrical/switches/bus-tie eq 0
|
||||
</test>
|
||||
</switch>
|
||||
|
@ -1319,7 +1324,7 @@
|
|||
<default value="0"/>
|
||||
<test logic="AND" value="1">
|
||||
/systems/electrical/some-electric-thingie/emer-elec-config eq 1
|
||||
/controls/electrical/switches/gen-1 eq 1
|
||||
/systems/electrical/some-electric-thingie/generator-1-pb eq 1
|
||||
</test>
|
||||
</switch>
|
||||
|
||||
|
@ -1327,7 +1332,7 @@
|
|||
<default value="0"/>
|
||||
<test logic="AND" value="1">
|
||||
/systems/electrical/some-electric-thingie/emer-elec-config eq 1
|
||||
/controls/electrical/switches/gen-2 eq 1
|
||||
/systems/electrical/some-electric-thingie/generator-2-pb eq 1
|
||||
</test>
|
||||
</switch>
|
||||
|
||||
|
@ -1379,12 +1384,14 @@
|
|||
</test>
|
||||
</switch>
|
||||
|
||||
<switch name="/systems/electrical/light/apu-fault"> <!-- TODO: check out connection to engines -->
|
||||
<switch name="/systems/electrical/light/apu-fault">
|
||||
<default value="0"/>
|
||||
<test logic="AND" value="1">
|
||||
/controls/electrical/switches/apu eq 1
|
||||
/systems/electrical/relay/apu-glc/contact-pos eq 0
|
||||
/systems/electrical/relay/ext-epc/contact-pos eq 0
|
||||
/systems/electrical/relay/gen-1-glc/contact-pos eq 0
|
||||
/systems/electrical/relay/gen-2-glc/contact-pos eq 0
|
||||
/systems/electrical/sources/apu/drive-rpm gt 2000
|
||||
</test>
|
||||
</switch>
|
||||
|
@ -1448,7 +1455,7 @@
|
|||
|
||||
<switch name="/systems/electrical/light/rat-emer-gen-fault">
|
||||
<default value="0"/>
|
||||
<test value="1">
|
||||
<test logic="AND" value="1">
|
||||
/systems/electrical/relay/dc-ess-feed-tr/output eq 0
|
||||
/systems/electrical/bus/ac-1 eq 0
|
||||
/systems/electrical/bus/ac-2 eq 0
|
||||
|
|
|
@ -109,7 +109,7 @@
|
|||
<table>
|
||||
<independentVar lookup="row">/instrumentation/airspeed-indicator/indicated-speed-kt</independentVar>
|
||||
<tableData>
|
||||
99 0
|
||||
90 0
|
||||
100 2500
|
||||
</tableData>
|
||||
</table>
|
||||
|
|
|
@ -4,6 +4,30 @@
|
|||
|
||||
<PropertyList>
|
||||
|
||||
<flipflop>
|
||||
<type>monostable</type>
|
||||
<inverted type="bool">true</inverted>
|
||||
<time>
|
||||
<value>0.1</value>
|
||||
</time>
|
||||
<S>
|
||||
<property>/controls/electrical/switches/gen-1</property>
|
||||
</S>
|
||||
<output>/systems/electrical/some-electric-thingie/generator-1-pb</output>
|
||||
</flipflop>
|
||||
|
||||
<flipflop>
|
||||
<type>monostable</type>
|
||||
<inverted type="bool">true</inverted>
|
||||
<time>
|
||||
<value>0.1</value>
|
||||
</time>
|
||||
<S>
|
||||
<property>/controls/electrical/switches/gen-2</property>
|
||||
</S>
|
||||
<output>/systems/electrical/some-electric-thingie/generator-2-pb</output>
|
||||
</flipflop>
|
||||
|
||||
<flipflop>
|
||||
<type>RS</type>
|
||||
<S>
|
||||
|
|
|
@ -226,8 +226,6 @@
|
|||
<mode>2</mode>
|
||||
<encoder-path>/instrumentation/transponder/altimeter-input</encoder-path>
|
||||
<airspeed-path>/instrumentation/transponder/airspeed-input</airspeed-path>
|
||||
<mode-c-altitude>/instrumentation/encoder/mode-c-alt-ft</mode-c-altitude>
|
||||
<mode-s-altitude>/instrumentation/encoder/mode-s-alt-ft</mode-s-altitude>
|
||||
</transponder>
|
||||
|
||||
<turn-indicator>
|
||||
|
|
|
@ -1 +1 @@
|
|||
16
|
||||
20
|
Loading…
Add table
Reference in a new issue