Fix displays on power transient
This commit is contained in:
parent
f7703c0ea4
commit
a4c4b37b07
5 changed files with 156 additions and 116 deletions
|
@ -223,7 +223,7 @@ var canvas_IESI = {
|
|||
iesi_init.setBoolValue(0);
|
||||
me._transientVar = 0;
|
||||
}
|
||||
}, 0.2);
|
||||
}, 0.2); # 200ms delay power transients
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -38,28 +38,38 @@ var canvas_lowerECAM_base =
|
|||
getKeysTest: func() {
|
||||
return ["Test_white","Test_text"];
|
||||
},
|
||||
off: 0,
|
||||
on: 0,
|
||||
powerTransient: func() {
|
||||
if (systems.ELEC.Bus.ac2.getValue() >= 110) {
|
||||
if (du4_offtime.getValue() + 3 < pts.Sim.Time.elapsedSec.getValue()) {
|
||||
if (pts.Gear.wow[0].getValue()) {
|
||||
if (!acconfig.getBoolValue() and !du4_test.getBoolValue()) {
|
||||
if (!me.on) {
|
||||
if (du4_offtime.getValue() + 3 < pts.Sim.Time.elapsedSec.getValue()) {
|
||||
if (pts.Gear.wow[0].getValue()) {
|
||||
if (!acconfig.getBoolValue() and !du4_test.getBoolValue()) {
|
||||
du4_test.setValue(1);
|
||||
du4_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du4_test_time.setValue(pts.Sim.Time.elapsedSec.getValue());
|
||||
} else if (acconfig.getBoolValue() and !du4_test.getBoolValue()) {
|
||||
du4_test.setValue(1);
|
||||
du4_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du4_test_time.setValue(pts.Sim.Time.elapsedSec.getValue() - 30);
|
||||
}
|
||||
} else {
|
||||
du4_test.setValue(1);
|
||||
du4_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du4_test_time.setValue(pts.Sim.Time.elapsedSec.getValue());
|
||||
} else if (acconfig.getBoolValue() and !du4_test.getBoolValue()) {
|
||||
du4_test.setValue(1);
|
||||
du4_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du4_test_time.setValue(pts.Sim.Time.elapsedSec.getValue() - 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);
|
||||
}
|
||||
me.off = 0;
|
||||
me.on = 1;
|
||||
}
|
||||
} else {
|
||||
du4_test.setValue(0);
|
||||
du4_offtime.setValue(pts.Sim.Time.elapsedSec.getValue());
|
||||
if (!me.off) {
|
||||
du4_test.setValue(0);
|
||||
du4_offtime.setValue(pts.Sim.Time.elapsedSec.getValue());
|
||||
me.off = 1;
|
||||
me.on = 0;
|
||||
}
|
||||
}
|
||||
},
|
||||
# Due to weirdness of the parents hash / me reference
|
||||
|
|
|
@ -87,62 +87,74 @@ var canvas_nd_base = {
|
|||
getKeys: func() {
|
||||
return [];
|
||||
},
|
||||
du2OffTimer: 0,
|
||||
off2: 0,
|
||||
on2: 0,
|
||||
updateDu2: func() {
|
||||
var elapsedtime = getprop("sim/time/elapsed-sec");
|
||||
if (getprop("systems/electrical/bus/ac-ess-shed") >= 110) {
|
||||
if (du2_offtime.getValue() + 3 < elapsedtime) {
|
||||
if (wow0.getValue() == 1) {
|
||||
if (getprop("systems/acconfig/autoconfig-running") != 1 and du2_test.getValue() != 1) {
|
||||
if (!me.on2) {
|
||||
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);
|
||||
}
|
||||
me.off2 = 0;
|
||||
me.on2 = 1;
|
||||
}
|
||||
} else {
|
||||
if (!me.off2) {
|
||||
du2_test.setValue(0);
|
||||
du2_offtime.setValue(elapsedtime);
|
||||
me.off2 = 1;
|
||||
me.on2 = 0;
|
||||
}
|
||||
me.du2OffTimer = 0;
|
||||
du2_offtime.setValue(0);
|
||||
} elsif (me.du2OffTimer == 0) {
|
||||
du2_test.setValue(0);
|
||||
me.du2OffTimer = 1;
|
||||
du2_offtime.setValue(elapsedtime);
|
||||
}
|
||||
},
|
||||
du5OffTimer: 0,
|
||||
off: 0,
|
||||
on: 0,
|
||||
updateDu5: func() {
|
||||
var elapsedtime = getprop("sim/time/elapsed-sec");
|
||||
if (getprop("systems/electrical/bus/ac-2") >= 110) {
|
||||
if (du5_offtime.getValue() + 3 < elapsedtime) {
|
||||
if (wow0.getValue() == 1) {
|
||||
if (getprop("systems/acconfig/autoconfig-running") != 1 and du5_test.getValue() != 1) {
|
||||
if (!me.on) {
|
||||
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);
|
||||
}
|
||||
me.off = 0;
|
||||
me.on = 1;
|
||||
}
|
||||
} else {
|
||||
if (!me.off) {
|
||||
du5_test.setValue(0);
|
||||
du5_offtime.setValue(elapsedtime);
|
||||
me.off = 1;
|
||||
me.on = 0;
|
||||
}
|
||||
me.du5OffTimer = 0;
|
||||
du5_offtime.setValue(0);
|
||||
} elsif (me.du5OffTimer == 0) {
|
||||
du5_test.setValue(0);
|
||||
me.du5OffTimer = 1;
|
||||
du5_offtime.setValue(elapsedtime);
|
||||
}
|
||||
},
|
||||
update: func() {
|
||||
|
|
|
@ -223,62 +223,74 @@ var canvas_PFD_base = {
|
|||
"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","ilsError","ils_code","ils_freq","dme_dist","dme_dist_legend","ILS_HDG_R","ILS_HDG_L",
|
||||
"ILS_right","ILS_left","outerMarker","middleMarker","innerMarker","v1_group","v1_text","vr_speed","F_target","S_target","FS_targets","flap_max","clean_speed","ground","ground_ref","FPV","spdLimError","vsFMArate"];
|
||||
},
|
||||
du1OffTimer: 0,
|
||||
off: 0,
|
||||
on: 0,
|
||||
updateDu1: func() {
|
||||
var elapsedtime_act = elapsedtime.getValue();
|
||||
if (systems.ELEC.Bus.acEss.getValue() >= 110) {
|
||||
if (du1_offtime.getValue() + 3 < elapsedtime_act) {
|
||||
if (wow0.getValue() == 1) {
|
||||
if (acconfig.getValue() != 1 and du1_test.getValue() != 1) {
|
||||
if (!me.on) {
|
||||
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);
|
||||
}
|
||||
me.off = 0;
|
||||
me.on = 1;
|
||||
}
|
||||
} else {
|
||||
if (!me.off) {
|
||||
du1_test.setValue(0);
|
||||
du1_offtime.setValue(elapsedtime_act);
|
||||
me.off = 1;
|
||||
me.on = 0;
|
||||
}
|
||||
me.du1OffTimer = 0;
|
||||
du1_offtime.setValue(0);
|
||||
} elsif (me.du1OffTimer == 0) {
|
||||
du1_test.setValue(0);
|
||||
me.du1OffTimer = 1;
|
||||
du1_offtime.setValue(elapsedtime_act);
|
||||
}
|
||||
},
|
||||
du6OffTimer: 0,
|
||||
off6: 0,
|
||||
on6: 0,
|
||||
updateDu6: func() {
|
||||
var elapsedtime_act = elapsedtime.getValue();
|
||||
if (systems.ELEC.Bus.ac2.getValue() >= 110) {
|
||||
if (du6_offtime.getValue() + 3 < elapsedtime_act) {
|
||||
if (wow0.getValue() == 1) {
|
||||
if (acconfig.getValue() != 1 and du6_test.getValue() != 1) {
|
||||
if (!me.on6) {
|
||||
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);
|
||||
}
|
||||
me.off6 = 0;
|
||||
me.on6 = 1;
|
||||
}
|
||||
} else {
|
||||
if (!me.off6) {
|
||||
du6_test.setValue(0);
|
||||
du6_offtime.setValue(elapsedtime_act);
|
||||
me.off6 = 1;
|
||||
me.on6 = 0;
|
||||
}
|
||||
me.du6OffTimer = 0;
|
||||
du6_offtime.setValue(0);
|
||||
} elsif (me.du6OffTimer == 0) {
|
||||
du6_test.setValue(0);
|
||||
me.du6OffTimer = 1;
|
||||
du6_offtime.setValue(elapsedtime_act);
|
||||
}
|
||||
},
|
||||
update: func() {
|
||||
|
|
|
@ -913,32 +913,38 @@ var canvas_upperECAM = {
|
|||
me["Test_text"].show();
|
||||
}
|
||||
},
|
||||
du3OffTimer: 0,
|
||||
off: 0,
|
||||
on: 0,
|
||||
powerTransient: func() {
|
||||
if (systems.ELEC.Bus.acEss.getValue() >= 110) {
|
||||
if (du3_offtime.getValue() + 3 < pts.Sim.Time.elapsedSec.getValue()) {
|
||||
if (pts.Gear.wow[0].getValue()) {
|
||||
if (!acconfig.getBoolValue() and !du3_test.getBoolValue()) {
|
||||
if (!me.on) {
|
||||
if (du3_offtime.getValue() + 3 < pts.Sim.Time.elapsedSec.getValue()) {
|
||||
if (pts.Gear.wow[0].getValue()) {
|
||||
if (!acconfig.getBoolValue() and !du3_test.getBoolValue()) {
|
||||
du3_test.setValue(1);
|
||||
du3_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du3_test_time.setValue(pts.Sim.Time.elapsedSec.getValue());
|
||||
} else if (acconfig.getBoolValue() and !du3_test.getBoolValue()) {
|
||||
du3_test.setValue(1);
|
||||
du3_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du3_test_time.setValue(pts.Sim.Time.elapsedSec.getValue() - 30);
|
||||
}
|
||||
} else {
|
||||
du3_test.setValue(1);
|
||||
du3_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du3_test_time.setValue(pts.Sim.Time.elapsedSec.getValue());
|
||||
} else if (acconfig.getBoolValue() and !du3_test.getBoolValue()) {
|
||||
du3_test.setValue(1);
|
||||
du3_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du3_test_time.setValue(pts.Sim.Time.elapsedSec.getValue() - 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);
|
||||
}
|
||||
me.off = 0;
|
||||
me.on = 1;
|
||||
}
|
||||
} else {
|
||||
if (!me.off) {
|
||||
du3_test.setValue(0);
|
||||
du3_offtime.setValue(pts.Sim.Time.elapsedSec.getValue());
|
||||
me.off = 1;
|
||||
me.on = 0;
|
||||
}
|
||||
me.du3OffTimer = 0;
|
||||
du3_offtime.setValue(0);
|
||||
} elsif (me.du3OffTimer == 0) {
|
||||
du3_test.setValue(0);
|
||||
me.du3OffTimer = 1;
|
||||
du3_offtime.setValue(pts.Sim.Time.elapsedSec.getValue());
|
||||
}
|
||||
},
|
||||
updatePower: func() {
|
||||
|
|
Loading…
Add table
Reference in a new issue