Add support for calling SD page from failure, currently not implemented for any failure
This commit is contained in:
parent
a766213546
commit
709d128ea2
2 changed files with 74 additions and 9 deletions
|
@ -460,8 +460,6 @@
|
|||
<object-name>audio_call_vhf3_led</object-name>
|
||||
<object-name>audio_mech_sgn</object-name>
|
||||
<object-name>autoland_light_on</object-name>
|
||||
<object-name>ecam_clr_l_led</object-name>
|
||||
<object-name>ecam_clr_r_led</object-name>
|
||||
<object-name>ecam_c_b_led</object-name>
|
||||
<object-name>ecam_el_dc_led</object-name>
|
||||
<object-name>ecam_sts_led</object-name>
|
||||
|
@ -1571,6 +1569,24 @@
|
|||
</or>
|
||||
</condition>
|
||||
</animation>
|
||||
|
||||
<animation>
|
||||
<type>select</type>
|
||||
<object-name>ecam_clr_l_led</object-name>
|
||||
<object-name>ecam_clr_r_led</object-name>
|
||||
<condition>
|
||||
<or>
|
||||
<equals>
|
||||
<property>ECAM/Lower/light/clr</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>controls/switches/annun-test</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</or>
|
||||
</condition>
|
||||
</animation>
|
||||
|
||||
<!--<animation>
|
||||
<type>pick</type>
|
||||
|
@ -1589,7 +1605,7 @@
|
|||
<script>ecam.rclBTN();</script>
|
||||
</binding>
|
||||
</action>
|
||||
</animation>
|
||||
</animation>-->
|
||||
|
||||
<animation>
|
||||
<type>pick</type>
|
||||
|
@ -1606,10 +1622,10 @@
|
|||
</greater-than-equals>
|
||||
</condition>
|
||||
<command>nasal</command>
|
||||
<script>ecam.clrBTN();</script>
|
||||
<script>libraries.LowerECAM.button("clr");</script>
|
||||
</binding>
|
||||
</action>
|
||||
</animation>-->
|
||||
</animation>
|
||||
|
||||
<!-- Engine Cutoff/Mode Selector -->
|
||||
<animation>
|
||||
|
|
|
@ -22,6 +22,7 @@ var mode = "XX";
|
|||
var modeI = "XX";
|
||||
var man_sel = 0;
|
||||
var fault_sel = 0;
|
||||
var fault_page = "";
|
||||
var warnPhase = 1;
|
||||
var page = "door";
|
||||
var aileron = 0;
|
||||
|
@ -59,6 +60,7 @@ var ECAM = {
|
|||
setprop("/ECAM/Lower/page", "door");
|
||||
setprop("/ECAM/Lower/man-select", 0);
|
||||
setprop("/ECAM/Lower/fault-select", 0);
|
||||
setprop("/ECAM/Lower/fault-page", "");
|
||||
setprop("/ECAM/Lower/apu-timer", 0);
|
||||
setprop("/ECAM/Lower/eng-timer", 0);
|
||||
setprop("/ECAM/Lower/fctl-timer", 0);
|
||||
|
@ -74,6 +76,7 @@ var ECAM = {
|
|||
setprop("/ECAM/Lower/light/press", 0);
|
||||
setprop("/ECAM/Lower/light/sts", 0);
|
||||
setprop("/ECAM/Lower/light/wheel", 0);
|
||||
setprop("/ECAM/Lower/light/clr", 0);
|
||||
setprop("/ECAM/warning-phase", 1);
|
||||
setprop("/ECAM/warning-phase-10-time", 0);
|
||||
setprop("/ECAM/ap1-off-time", 0);
|
||||
|
@ -267,16 +270,41 @@ var LowerECAM = {
|
|||
button: func(b) {
|
||||
man_sel = getprop("/ECAM/Lower/man-select");
|
||||
|
||||
if (!getprop("/ECAM/lower/fault-select")) {
|
||||
if (!man_sel) {
|
||||
if (getprop("/ECAM/Lower/fault-select") == 0) {
|
||||
if (b != "clr") {
|
||||
if (!man_sel) {
|
||||
setprop("/ECAM/Lower/man-select", 1);
|
||||
setprop("/ECAM/Lower/page", b);
|
||||
setprop("/ECAM/Lower/light/" ~ b, 1);
|
||||
} else {
|
||||
if (b == getprop("/ECAM/Lower/page")) {
|
||||
setprop("/ECAM/Lower/man-select", 0);
|
||||
LowerECAM.loop();
|
||||
setprop("/ECAM/Lower/light/" ~ b, 0);
|
||||
} else {
|
||||
setprop("/ECAM/Lower/light/" ~ getprop("/ECAM/Lower/page"), 0);
|
||||
setprop("/ECAM/Lower/page", b);
|
||||
setprop("/ECAM/Lower/light/" ~ b, 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (b == "clr") {
|
||||
setprop("/ECAM/Lower/light/clr", 0);
|
||||
setprop("/ECAM/Lower/fault-select", 0);
|
||||
setprop("/ECAM/Lower/fault-page", "");
|
||||
LowerECAM.loop();
|
||||
} elsif (!man_sel) {
|
||||
setprop("/ECAM/Lower/man-select", 1);
|
||||
setprop("/ECAM/Lower/page", b);
|
||||
setprop("/ECAM/Lower/light/" ~ b, 1);
|
||||
print("calling SD page manually");
|
||||
} else {
|
||||
if (b == getprop("/ECAM/Lower/page")) {
|
||||
setprop("/ECAM/Lower/man-select", 0);
|
||||
LowerECAM.loop();
|
||||
setprop("/ECAM/Lower/light/" ~ b, 0);
|
||||
setprop("/ECAM/Lower/fault-select", 1);
|
||||
setprop("/ECAM/Lower/page", getprop("/ECAM/Lower/fault-page"));
|
||||
} else {
|
||||
setprop("/ECAM/Lower/light/" ~ getprop("/ECAM/Lower/page"), 0);
|
||||
setprop("/ECAM/Lower/page", b);
|
||||
|
@ -288,6 +316,7 @@ var LowerECAM = {
|
|||
loop: func() {
|
||||
man_sel = getprop("/ECAM/Lower/man-select");
|
||||
fault_sel = getprop("/ECAM/Lower/fault-select");
|
||||
fault_page = getprop("/ECAM/Lower/fault-page");
|
||||
page = getprop("/ECAM/Lower/page");
|
||||
aileron = getprop("/fdm/jsbsim/fbw/aileron-sidestick");
|
||||
elevator = getprop("/fdm/jsbsim/fbw/elevator-sidestick");
|
||||
|
@ -296,6 +325,7 @@ var LowerECAM = {
|
|||
stateL = getprop("/engines/engine[0]/state");
|
||||
stateR = getprop("/engines/engine[1]/state");
|
||||
engModeSel = getprop("/controls/engines/engine-start-switch");
|
||||
elapsedSec = getprop("/sim/time/elapsed-sec");
|
||||
|
||||
if (warnPhase == 2) {
|
||||
if (abs(aileron) > 0.3 or abs(elevator) > 0.3) {
|
||||
|
@ -363,7 +393,6 @@ var LowerECAM = {
|
|||
setprop("/ECAM/Lower/page", "door");
|
||||
}
|
||||
} else if (warnPhase == 2) {
|
||||
elapsedSec = getprop("/sim/time/elapsed-sec");
|
||||
|
||||
if (showENGPage) {
|
||||
if (page != "eng") {
|
||||
|
@ -412,6 +441,19 @@ var LowerECAM = {
|
|||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
setprop("/ECAM/Lower/light/apu", 0);
|
||||
setprop("/ECAM/Lower/light/bleed", 0);
|
||||
setprop("/ECAM/Lower/light/cond", 0);
|
||||
setprop("/ECAM/Lower/light/door", 0);
|
||||
setprop("/ECAM/Lower/light/elec", 0);
|
||||
setprop("/ECAM/Lower/light/eng", 0);
|
||||
setprop("/ECAM/Lower/light/fctl", 0);
|
||||
setprop("/ECAM/Lower/light/fuel", 0);
|
||||
setprop("/ECAM/Lower/light/hyd", 0);
|
||||
setprop("/ECAM/Lower/light/press", 0);
|
||||
setprop("/ECAM/Lower/light/sts", 0);
|
||||
setprop("/ECAM/Lower/light/wheel", 0);
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -432,6 +474,13 @@ var LowerECAM = {
|
|||
setprop("/ECAM/Lower/light/sts", 0);
|
||||
setprop("/ECAM/Lower/light/wheel", 0);
|
||||
},
|
||||
failCall: func(page) {
|
||||
setprop("/ECAM/Lower/man-select", 0);
|
||||
setprop("/ECAM/Lower/fault-select", 1);
|
||||
setprop("/ECAM/Lower/fault-page", page);
|
||||
setprop("/ECAM/Lower/page", page);
|
||||
setprop("/ECAM/Lower/light/clr", 1);
|
||||
},
|
||||
};
|
||||
|
||||
# Logic for autopilot disconnect warning
|
||||
|
|
Reference in a new issue