1
0
Fork 0

preflight

This commit is contained in:
Inuyaksa 2021-01-20 20:32:21 +01:00 committed by legoboyvdlp R
parent f99479d842
commit 65705be97b
9 changed files with 285 additions and 128 deletions

View file

@ -233,7 +233,7 @@ var canvas_MCDU_base = {
return me;
},
getKeys: func() {
return ["Simple","Simple_Center","Scratchpad","Simple_Title","Simple_PageNum","ArrowLeft","ArrowRight","Simple_L1","Simple_L2","Simple_L3","Simple_L4",
return ["Simple","Simple_Center","Scratchpad","Simple_Title","Simple_Title2","Simple_PageNum","ArrowLeft","ArrowRight","Simple_L1","Simple_L2","Simple_L3","Simple_L4",
"Simple_L5","Simple_L6","Simple_L0S","Simple_L1S","Simple_L2S","Simple_L3S","Simple_L4S","Simple_L5S","Simple_L6S","Simple_L1_Arrow",
"Simple_L2_Arrow","Simple_L3_Arrow","Simple_L4_Arrow","Simple_L5_Arrow","Simple_L6_Arrow","Simple_R1","Simple_R2","Simple_R3","Simple_R4","Simple_R5",
"Simple_R6","Simple_R1S","Simple_R2S","Simple_R3S","Simple_R4S","Simple_R5S","Simple_R6S","Simple_R1_Arrow","Simple_R2_Arrow","Simple_R3_Arrow",
@ -264,6 +264,7 @@ var canvas_MCDU_base = {
defaultHide: func() {
me["Simple"].show();
me["Simple_Center"].hide();
me["Simple_Title2"].hide();
me["FPLN"].hide();
me["DIRTO_TMPY_group"].hide();
me["INITA"].hide();
@ -281,6 +282,7 @@ var canvas_MCDU_base = {
defaultHideWithCenter: func() {
me["Simple"].show();
me["Simple_Center"].show();
me["Simple_Title2"].hide();
me["FPLN"].hide();
me["DIRTO_TMPY_group"].hide();
me["INITA"].hide();
@ -345,7 +347,9 @@ var canvas_MCDU_base = {
me.fontRight(default, default, default, default, default, default);
me.fontRightS(default, default, default, default, default, default);
me.fontSizeLeft(normal, normal, normal, normal, normal, normal);
me.fontSizeLeftS(small, small, small, small, small, small);
me.fontSizeRight(normal, normal, normal, normal, normal, normal);
me.fontSizeRightS(small, small, small, small, small, small);
},
standardFontColour: func() {
me.colorLeft("wht", "wht", "wht", "wht", "wht", "wht");
@ -389,6 +393,9 @@ var canvas_MCDU_base = {
me["PRINTPAGE"].setColor(WHITE);
}
}
if (!pageSwitch[i].getBoolValue()) me.defaultHide();
if (page != "ATIS") {
me["ATISSend1"].hide();
me["ATISSend2"].hide();
@ -622,7 +629,7 @@ var canvas_MCDU_base = {
}
} else if (page == "FLTLOG") {
if (!pageSwitch[i].getBoolValue()) {
me.defaultHideWithCenter();
me.defaultHideWithCenter();
me["Simple_L0S"].hide();
me["ArrowLeft"].hide();
@ -720,7 +727,7 @@ var canvas_MCDU_base = {
var logpage = mcdu.FlightLogDatabase.getPage(logid);
me["Simple_L1"].setText(sprintf("%8s - ",logpage.fltnum) ~ logpage.date);
me["Simple_L1"].setText(sprintf("%8s- ",logpage.fltnum) ~ logpage.date);
me["Simple_R1"].setText(logpage.tofrom ~ " ");
me["Simple_L5S"].setText( " " ~ logpage.flttime );
@ -737,6 +744,7 @@ var canvas_MCDU_base = {
} else if (page == "SENSORS") {
if (!pageSwitch[i].getBoolValue()) {
me.defaultHide();
me.standardFontSize();
me["Simple_Title"].setText("SENSORS ");
me.defaultPageNumbers();
me["Simple_L0S"].hide();
@ -2773,37 +2781,65 @@ var canvas_MCDU_base = {
} else if (page == "ROUTESELECTION") {
if (!pageSwitch[i].getBoolValue()) {
me.defaultHideWithCenter();
me.defaultHide();
me.standardFontSize();
me["arrowsDepArr"].hide();
me["PERFAPPR"].hide();
me["PERFGA"].hide();
me["Simple_Title"].show();
me["Simple_Title"].setText("ROUTE SELECTION");
me.defaultPageNumbers();
me.showPageNumbers(1,1);
me.showLeft(1, -1, -1, -1, -1, 1);
me.showLeft(1, 1, 1, 1, 1, 1);
me["Simple_L0S"].hide();
me.showLeftS(-1, -1, -1, -1, -1, -1);
me.showLeftS(-1, 1, 1, 1, 1, -1);
me.showLeftArrow(-1, -1, -1, -1, -1, 1);
me.showRight(-1, -1, -1, -1, -1, -1);
me.showRightS(-1, -1, -1, -1, -1, -1);
me.showRight(-1, 1, 1, 1, 1, 1);
me.showRightS(-1, 1, 1, 1, 1, -1);
me.showRightArrow(-1, -1, -1, -1, -1, -1);
me.showCenter(-1, -1, -1, -1, -1, -1);
me["Simple_C3B"].hide();
me["Simple_C4B"].hide();
me.showCenterS(-1, -1, -1, -1, -1, -1);
#me.showCenter(-1, -1, 1, -1, -1, -1);
#me.showCenterS(-1, -1, 1, -1, -1, -1);
#me["Simple_C3B"].hide();
#me["Simple_C4B"].hide();
me.fontLeft(default, 0, 0, 0, 0, default);
me.fontSizeLeft(normal, 0, 0, 0, 0, normal);
me.colorLeft("grn", "ack", "ack", "ack", "ack", "wht");
#me.fontLeft(default, default, default, default, default, default);
#me.fontLeftS(default, default, default, default, default, default);
#me.fontSizeLeft(normal, normal, normal, normal, normal, normal);
me.fontSizeLeftS(normal, normal, normal, normal, normal, normal);
#me.fontRight(default, default, default, default, default, default);
#me.fontRightS(default, default, default, default, default, default);
me.fontSizeRight(0, small, small, small, small, normal);
me.fontSizeRightS(0, small, small, small, small, normal);
me.colorLeft("grn", "grn", "grn", "grn", "grn", "wht");
me.colorLeftS("grn", "grn", "grn", "grn", "grn", "wht");
#me.colorCenter("grn", "ack", "amb", "ack", "ack", "wht");
me.colorRight("ack", "wht", "wht", "wht", "wht", "amb");
me.colorRightS("ack", "wht", "wht", "wht", "wht", "wht");
pageSwitch[i].setBoolValue(1);
}
me["Simple_L1"].setText("NONE");
me["Simple_L6"].setText(" RETURN");
me["Simple_R6"].setText("INSERT ");
me["PRINTPAGE"].show();
me["PRINTPAGE"].setColor(AMBER);
var rows = ["2S","2","3S","3","4S","4","5S","5"];
me["Simple_L1"].setText("DUBLHR1");
var r = 0;
for ( ; r < 8; r += 1) {
me["Simple_L" ~ rows[r]].setText(sprintf("%11s %11s","SELKA","NUGRA"));
me["Simple_R" ~ rows[r]].setText(sprintf("%-13s %-13s","UL975","UL975"));
}
while (r<8) {
me["Simple_L" ~ rows[r]].setText("");
me["Simple_R" ~ rows[r]].setText("");
r+=1;
}
if (fmgc.FMGCInternal.toFromSet and !fmgc.FMGCInternal.altSelected) {
me["Simple_Title"].setText(sprintf("%s", fmgc.FMGCInternal.depApt ~ "/" ~ fmgc.FMGCInternal.arrApt));
@ -3555,8 +3591,11 @@ var canvas_MCDU_base = {
me["Simple_L6"].setFontSize(small);
}
} else if (page == "PROGTO" or page == "PROGCLB" or page == "PROGCRZ" or page == "PROGDES") {
if (fmgc.FMGCInternal.phase == 0 or fmgc.FMGCInternal.phase == 1) {
} else if (page == "PROGPREF" or page == "PROGTO" or page == "PROGCLB" or page == "PROGCRZ" or page == "PROGDES") {
if (fmgc.FMGCInternal.phase == 0) {
setprop("/MCDU[" ~ i ~ "]/page", "PROGPREF");
page = "PROGPREF";
} else if (fmgc.FMGCInternal.phase == 1) {
setprop("/MCDU[" ~ i ~ "]/page", "PROGTO");
page = "PROGTO";
} else if (fmgc.FMGCInternal.phase == 2) {
@ -3586,30 +3625,29 @@ var canvas_MCDU_base = {
me["PERFAPPR"].hide();
me["PERFGA"].hide();
if (fmgc.FMGCInternal.flightNumSet) {
if (page == "PROGTO") {
me["Simple_Title"].setText(sprintf("TAKE OFF %s", fmgc.FMGCInternal.flightNum));
} else if (page == "PROGCLB") {
me["Simple_Title"].setText(sprintf("CLIMB %s", fmgc.FMGCInternal.flightNum));
} else if (page == "PROGCRZ") {
me["Simple_Title"].setText(sprintf("CRUISE %s", fmgc.FMGCInternal.flightNum));
} else if (page == "PROGDES") {
me["Simple_Title"].setText(sprintf("DESCENT %s", fmgc.FMGCInternal.flightNum));
}
} else {
if (page == "PROGTO") {
me["Simple_Title"].setText("TAKE OFF");
} else if (page == "PROGCLB") {
me["Simple_Title"].setText("CLIMB");
} else if (page == "PROGCRZ") {
me["Simple_Title"].setText("CRUISE");
} else if (page == "PROGDES") {
me["Simple_Title"].setText("DESCENT");
}
var colortext = ["",""];
if (page == "PROGPREF") {
colortext[0] = "PREFLIGHT";
} else if (page == "PROGTO") {
colortext[0] = "TAKE OFF";
} else if (page == "PROGCLB") {
colortext[0] = "CLIMB";
} else if (page == "PROGCRZ") {
colortext[0] = "CRUISE";
} else if (page == "PROGDES") {
colortext[0] = "DESCENT";
}
colortext[1] = (fmgc.FMGCInternal.flightNumSet) ? fmgc.FMGCInternal.flightNum ~ " " : ""; # push title a little left
me["Simple_Title"].setText(colortext[0] ~ sprintf("%" ~ (size(colortext[1])+1) ~ "s"," "));
me["Simple_Title2"].setText(sprintf("%" ~ (size(colortext[0])+1) ~ "s"," ") ~ colortext[1]);
me["Simple_Title"].show();
me["Simple_Title"].setColor(GREEN);
me["Simple_Title2"].show();
me["Simple_Title2"].setColor(WHITE);
me["Simple_PageNum"].setText("X/X");
me["Simple_PageNum"].hide();
me["ArrowLeft"].hide();
@ -3648,6 +3686,8 @@ var canvas_MCDU_base = {
me.fontSizeCenter(small, small, small, small, small, normal);
me.fontSizeCenterS(normal, small, small, small, small, small);
me["Simple_C1S"].setFontSize(small);
me.colorLeft("blu", "wht", "blu", "wht", "wht", "blu");
me.colorLeftS("wht", "wht", "wht", "wht", "wht", "wht");
me.colorLeftArrow("wht", "wht", "wht", "wht", "wht", "wht");

View file

@ -12,7 +12,7 @@
viewBox="0 0 1024 864"
version="1.1"
id="svg2"
inkscape:version="0.92.4 (5da689c313, 2019-01-14)"
inkscape:version="1.0.1 (3bc2e813f5, 2020-09-07)"
sodipodi:docname="mcdu.svg">
<metadata
id="metadata375">
@ -37,17 +37,17 @@
guidetolerance="20"
inkscape:pageopacity="1"
inkscape:pageshadow="2"
inkscape:window-width="1366"
inkscape:window-height="705"
inkscape:window-width="1920"
inkscape:window-height="1017"
id="namedview371"
showgrid="true"
inkscape:zoom="3.1578866"
inkscape:cx="1122.1906"
inkscape:cy="986.92422"
inkscape:zoom="0.55824076"
inkscape:cx="608.20261"
inkscape:cy="690.7315"
inkscape:window-x="-8"
inkscape:window-y="-8"
inkscape:window-maximized="1"
inkscape:current-layer="svg2"
inkscape:current-layer="Simple"
showguides="false"
inkscape:snap-global="false"
units="px"
@ -306,6 +306,19 @@
y="539.16522"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:70px;line-height:1.25;font-family:BoeingCDULarge;-inkscape-font-specification:BoeingCDULarge;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke-width:1px">TEXT</tspan></text>
</g>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="521.74713"
y="69.238266"
id="Simple_Title2"
transform="scale(0.99151607,1.0085565)"
inkscape:label="#text4244b"><tspan
sodipodi:role="line"
id="tspan1367"
x="521.74713"
y="69.238266"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:70px;line-height:1.25;font-family:BoeingCDULarge;-inkscape-font-specification:BoeingCDULarge;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1">TITLE</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
@ -1016,7 +1029,7 @@
inkscape:label="#g4241"
id="g4241">
<path
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 952.4036,47.432743 H 923.87395"
id="path4480-4"
inkscape:connector-curvature="0"
@ -1026,9 +1039,9 @@
inkscape:connector-curvature="0"
id="path4482-0"
d="M 936.70791,32.6968 921.8587,47.4328"
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 936.70791,62.1688 921.8587,47.4328"
id="path4484-0"
inkscape:connector-curvature="0"
@ -1069,7 +1082,7 @@
inkscape:label="#g4324"
id="g4324">
<path
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 998.71909,284.70793 H 970.18944"
id="path4490-7"
inkscape:connector-curvature="0"
@ -1079,9 +1092,9 @@
inkscape:connector-curvature="0"
id="path4318-2"
d="m 994.54102,294.79468 -20.17351,-20.1735"
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 984.45427,298.97275 -10e-6,-28.52964"
id="path4320-1"
inkscape:connector-curvature="0"
@ -1091,7 +1104,7 @@
inkscape:connector-curvature="0"
id="path4322-2"
d="m 974.36752,294.79468 20.17349,-20.1735"
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
</g>
</g>
</g>
@ -1103,7 +1116,7 @@
x="177.72771"
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#ffff00;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:51.20000076px;line-height:1.25;font-family:BoeingCDULarge;-inkscape-font-specification:BoeingCDULarge;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:51.2px;line-height:1.25;font-family:BoeingCDULarge;-inkscape-font-specification:BoeingCDULarge;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1"
y="68.861366"
x="177.72771"
id="tspan1240"
@ -1147,7 +1160,7 @@
inkscape:label="#g4241"
id="g186">
<path
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 952.4036,47.432743 H 923.87395"
id="path180"
inkscape:connector-curvature="0"
@ -1157,9 +1170,9 @@
inkscape:connector-curvature="0"
id="path182"
d="M 936.70791,32.6968 921.8587,47.4328"
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 936.70791,62.1688 921.8587,47.4328"
id="path184"
inkscape:connector-curvature="0"
@ -1200,7 +1213,7 @@
inkscape:label="#g4324"
id="g205">
<path
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 998.71909,284.70793 H 970.18944"
id="path197"
inkscape:connector-curvature="0"
@ -1210,9 +1223,9 @@
inkscape:connector-curvature="0"
id="path199"
d="m 994.54102,294.79468 -20.17351,-20.1735"
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 984.45427,298.97275 -10e-6,-28.52964"
id="path201"
inkscape:connector-curvature="0"
@ -1222,7 +1235,7 @@
inkscape:connector-curvature="0"
id="path203"
d="m 974.36752,294.79468 20.17349,-20.1735"
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
</g>
</g>
</g>
@ -1235,7 +1248,7 @@
inkscape:label="arrow5L"
id="arrow5L">
<path
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 952.4036,47.432743 H 923.87395"
id="path301"
inkscape:connector-curvature="0"
@ -1245,9 +1258,9 @@
inkscape:connector-curvature="0"
id="path303"
d="M 936.70791,32.6968 921.8587,47.4328"
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 936.70791,62.1688 921.8587,47.4328"
id="path305"
inkscape:connector-curvature="0"
@ -1263,9 +1276,9 @@
inkscape:connector-curvature="0"
id="path417"
d="M 952.4036,47.432743 H 923.87395"
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 936.70791,32.6968 921.8587,47.4328"
id="path419"
inkscape:connector-curvature="0"
@ -1275,7 +1288,7 @@
inkscape:connector-curvature="0"
id="path421"
d="M 936.70791,62.1688 921.8587,47.4328"
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
</g>
<g
style="stroke:#bb6100;stroke-opacity:1"
@ -1283,7 +1296,7 @@
inkscape:label="arrow3L"
id="arrow3L">
<path
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 952.4036,47.432743 H 923.87395"
id="path425"
inkscape:connector-curvature="0"
@ -1293,9 +1306,9 @@
inkscape:connector-curvature="0"
id="path427"
d="M 936.70791,32.6968 921.8587,47.4328"
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 936.70791,62.1688 921.8587,47.4328"
id="path429"
inkscape:connector-curvature="0"
@ -1311,9 +1324,9 @@
inkscape:connector-curvature="0"
id="path433"
d="M 952.4036,47.432743 H 923.87395"
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 936.70791,32.6968 921.8587,47.4328"
id="path435"
inkscape:connector-curvature="0"
@ -1323,7 +1336,7 @@
inkscape:connector-curvature="0"
id="path437"
d="M 936.70791,62.1688 921.8587,47.4328"
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
</g>
<g
style="stroke:#bb6100;stroke-opacity:1"
@ -1331,7 +1344,7 @@
inkscape:label="arrow1L"
id="arrow1L">
<path
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 952.4036,47.432743 H 923.87395"
id="path471"
inkscape:connector-curvature="0"
@ -1341,9 +1354,9 @@
inkscape:connector-curvature="0"
id="path473"
d="M 936.70791,32.6968 921.8587,47.4328"
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 936.70791,62.1688 921.8587,47.4328"
id="path475"
inkscape:connector-curvature="0"
@ -1359,9 +1372,9 @@
inkscape:connector-curvature="0"
id="path479"
d="M 952.4036,47.432743 H 923.87395"
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 936.70791,32.6968 921.8587,47.4328"
id="path481"
inkscape:connector-curvature="0"
@ -1371,7 +1384,7 @@
inkscape:connector-curvature="0"
id="path483"
d="M 936.70791,62.1688 921.8587,47.4328"
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
</g>
<g
style="stroke:#bb6100;stroke-opacity:1"
@ -1379,7 +1392,7 @@
inkscape:label="arrow4R"
id="arrow4R">
<path
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 952.4036,47.432743 H 923.87395"
id="path487"
inkscape:connector-curvature="0"
@ -1389,9 +1402,9 @@
inkscape:connector-curvature="0"
id="path489"
d="M 936.70791,32.6968 921.8587,47.4328"
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 936.70791,62.1688 921.8587,47.4328"
id="path491"
inkscape:connector-curvature="0"
@ -1407,9 +1420,9 @@
inkscape:connector-curvature="0"
id="path495"
d="M 952.4036,47.432743 H 923.87395"
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 936.70791,32.6968 921.8587,47.4328"
id="path497"
inkscape:connector-curvature="0"
@ -1419,7 +1432,7 @@
inkscape:connector-curvature="0"
id="path499"
d="M 936.70791,62.1688 921.8587,47.4328"
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
</g>
<g
style="stroke:#bb6100;stroke-opacity:1"
@ -1427,7 +1440,7 @@
inkscape:label="arrow2R"
id="arrow2R">
<path
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 952.4036,47.432743 H 923.87395"
id="path503"
inkscape:connector-curvature="0"
@ -1437,9 +1450,9 @@
inkscape:connector-curvature="0"
id="path505"
d="M 936.70791,32.6968 921.8587,47.4328"
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 936.70791,62.1688 921.8587,47.4328"
id="path507"
inkscape:connector-curvature="0"
@ -1455,9 +1468,9 @@
inkscape:connector-curvature="0"
id="path511"
d="M 952.4036,47.432743 H 923.87395"
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 936.70791,32.6968 921.8587,47.4328"
id="path513"
inkscape:connector-curvature="0"
@ -1467,7 +1480,7 @@
inkscape:connector-curvature="0"
id="path515"
d="M 936.70791,62.1688 921.8587,47.4328"
style="fill:none;stroke:#bb6100;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
style="fill:none;stroke:#bb6100;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
</g>
</g>
</g>
@ -2617,7 +2630,7 @@
id="tspan1088"
x="478.87796"
y="171.04486"
style="font-style:normal;font-variant:normal;font-weight:500;font-stretch:normal;font-size:63.99240112px;line-height:1.25;font-family:'Helvetica Medium';-inkscape-font-specification:'Helvetica Medium, Medium';text-align:start;text-anchor:start;fill:#ffffff;fill-opacity:1">=</tspan></text>
style="font-style:normal;font-variant:normal;font-weight:500;font-stretch:normal;font-size:63.9924px;line-height:1.25;font-family:'Helvetica Medium';-inkscape-font-specification:'Helvetica Medium, Medium';text-align:start;text-anchor:start;fill:#ffffff;fill-opacity:1">=</tspan></text>
<text
inkscape:label="#text4244"
transform="scale(0.90642126,1.1032398)"
@ -2626,7 +2639,7 @@
x="478.87796"
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:500;font-stretch:normal;font-size:63.99240112px;line-height:1.25;font-family:'Helvetica Medium';-inkscape-font-specification:'Helvetica Medium, Medium';text-align:start;text-anchor:start;fill:#ffffff;fill-opacity:1"
style="font-style:normal;font-variant:normal;font-weight:500;font-stretch:normal;font-size:63.9924px;line-height:1.25;font-family:'Helvetica Medium';-inkscape-font-specification:'Helvetica Medium, Medium';text-align:start;text-anchor:start;fill:#ffffff;fill-opacity:1"
y="278.32764"
x="478.87796"
id="tspan1091"
@ -2643,7 +2656,7 @@
id="tspan1094"
x="478.87796"
y="385.6102"
style="font-style:normal;font-variant:normal;font-weight:500;font-stretch:normal;font-size:63.99240112px;line-height:1.25;font-family:'Helvetica Medium';-inkscape-font-specification:'Helvetica Medium, Medium';text-align:start;text-anchor:start;fill:#ffffff;fill-opacity:1">=</tspan></text>
style="font-style:normal;font-variant:normal;font-weight:500;font-stretch:normal;font-size:63.9924px;line-height:1.25;font-family:'Helvetica Medium';-inkscape-font-specification:'Helvetica Medium, Medium';text-align:start;text-anchor:start;fill:#ffffff;fill-opacity:1">=</tspan></text>
<g
style="stroke:#179ab7;stroke-opacity:1"
id="PERFAPPR_LDG_3"
@ -3010,7 +3023,7 @@
sodipodi:nodetypes="cc" />
</g>
<g
style="opacity:0.97000002;stroke:#179ab7;stroke-opacity:1"
style="opacity:0.97;stroke:#179ab7;stroke-opacity:1"
id="COMM-ADS"
inkscape:label="#g4324"
transform="matrix(1.0807111,0,0,1.0807111,-1029.7034,213.33078)">
@ -3019,9 +3032,9 @@
inkscape:connector-curvature="0"
id="path1273"
d="M 998.71909,284.70793 H 970.18944"
style="fill:none;stroke:#179ab7;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
style="fill:none;stroke:#179ab7;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
style="fill:none;stroke:#179ab7;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:none;stroke:#179ab7;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 994.54102,294.79468 -20.17351,-20.1735"
id="path1275"
inkscape:connector-curvature="0"
@ -3031,9 +3044,9 @@
inkscape:connector-curvature="0"
id="path1277"
d="m 984.45427,298.97275 -10e-6,-28.52964"
style="fill:none;stroke:#179ab7;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
style="fill:none;stroke:#179ab7;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
style="fill:none;stroke:#179ab7;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:none;stroke:#179ab7;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 974.36752,294.79468 20.17349,-20.1735"
id="path1279"
inkscape:connector-curvature="0"
@ -3229,9 +3242,9 @@
inkscape:connector-curvature="0"
id="path1341"
d="M 998.71909,284.70793 H 970.18944"
style="fill:none;stroke:#179ab7;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
style="fill:none;stroke:#179ab7;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
style="fill:none;stroke:#179ab7;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:none;stroke:#179ab7;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 994.54102,294.79468 -20.17351,-20.1735"
id="path1343"
inkscape:connector-curvature="0"
@ -3241,9 +3254,9 @@
inkscape:connector-curvature="0"
id="path1345"
d="m 984.45427,298.97275 -10e-6,-28.52964"
style="fill:none;stroke:#179ab7;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
style="fill:none;stroke:#179ab7;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
style="fill:none;stroke:#179ab7;stroke-width:4.07999992;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:none;stroke:#179ab7;stroke-width:4.08;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 974.36752,294.79468 20.17349,-20.1735"
id="path1347"
inkscape:connector-curvature="0"

Before

Width:  |  Height:  |  Size: 171 KiB

After

Width:  |  Height:  |  Size: 171 KiB

View file

@ -646,9 +646,15 @@ var masterFMGC = maketimer(0.2, func {
}
}
if (FMGCInternal.phase == 4 and getprop("/FMGC/internal/decel")) {
FMGCInternal.phase = 5;
}
if (FMGCInternal.phase == 4) {
if (getprop("/FMGC/internal/decel")) {
FMGCInternal.phase = 5;
}
else if (altSel == (FMGCInternal.crzFl * 100)) { # back to CRZ state
FMGCInternal.phase = 3;
systems.PNEU.pressMode.setValue("CR");
}
}
if (flightPlanController.num[2].getValue() > 0 and getprop("/FMGC/flightplan[2]/active") == 1 and flightPlanController.arrivalDist <= 15 and (modelat == "NAV" or modelat == "LOC" or modelat == "LOC*") and pts.Position.gearAglFt.getValue() < 9500) { #todo decel pseudo waypoint
setprop("/FMGC/internal/decel", 1);

View file

@ -1,6 +1,6 @@
# A3XX Simbrief Parser
# Copyright (c) 2020 Jonathan Redpath (legoboyvdlp)
# enhanceded 12/2020 - parse TOD & TOC psedo waypoints, set computer speeds on fix wps, fake coRoute name
# enhanced 12/2020 - parse TOD & TOC psedo waypoints, set computer speeds on fix wps, fake coRoute name
var LBS2KGS = 0.4535924;
@ -14,7 +14,7 @@ var SimbriefParser = {
me.inhibit = 1;
var stamp = systime();
http.save("https://www.simbrief.com/api/xml.fetcher.php?username=" ~ username, getprop('/sim/fg-home') ~ "/Export/A320-family-simbrief.xml")
.fail(func me.failure(i))
.fail(func { me.failure(i) })
.done(func {
var errs = [];
call(me.read, [(getprop('/sim/fg-home') ~ "/Export/A320-family-simbrief.xml"),i], SimbriefParser, {}, errs);
@ -49,6 +49,33 @@ var SimbriefParser = {
me.failure(i);
}
},
checkValid: func(xml) {
var data = io.readxml(xml);
if (data != nil) {
return (data.getChild("OFP") != nil);
}
return false;
},
readLegs: func(xml) { # lite OFP parser only for legs = wapoinst + airways
var legs = [];
var data = io.readxml(xml);
if (data != nil) {
var ofp = data.getChild("OFP");
if (ofp != nil) {
var ofpNavlog = ofp.getNode("navlog");
var ofpFixes = ofpNavlog.getChildren("fix");
var ident = "";
foreach (var ofpFix; ofpFixes) {
if (ofpFix.getNode("is_sid_star").getBoolValue()) continue;
ident = ofpFix.getNode("ident").getValue();
if (ident == "TOC" or ident == "TOD") continue;
append(legs, [ ofpFix.getNode("ident").getValue() , ofpFix.getNode("via_airway").getValue() ] );
}
return legs;
}
}
return nil;
},
tryFindByCoord: func(coords, id, type) {
var result = nil;
if (type == "nav") {

View file

@ -2,12 +2,17 @@
# Basic OOOI system implementation
var OOOIReport = {
new: func(state,fob="",time="") {
new: func(state,time=0,fob="") {
var report = {parents:[OOOIReport]};
report.state = state;
report.fob = (fob != "") ? fob : fmgc.FMGCInternal.fob;
report.time = (time != "") ? time : sprintf("%02d.%02d", getprop("/sim/time/utc/hour"), getprop("/sim/time/utc/minute"));
report.elapsed = int(getprop("/sim/time/elapsed-sec"));
if (time != 0) {
report.time = formatSecToHHMM(time);
report.elapsed = time;
} else {
report.time = sprintf("%02d.%02d", getprop("/sim/time/utc/hour"), getprop("/sim/time/utc/minute"));
report.elapsed = int(getprop("/sim/time/elapsed-sec"));
}
report.gmt = getprop("/sim/time/gmt-string");
report.date = getprop("/sim/time/utc/day");
report.fltnum = (fmgc.FMGCInternal.flightNumSet == 1) ? fmgc.FMGCInternal.flightNum : "----";
@ -47,8 +52,10 @@ var FlightLogDatabase = {
if (report.state == 0 or me.getPageSize()==0) me.addPage();
me.database.append(report);
var pg = me.pages.vector[me.pages.size()-1];
pg.fltnum = report.fltnum;
pg.tofrom = report.tofrom;
if (report.state < 3) { # IN states (3/4) don't update page data
if (report.fltnum != "") pg.fltnum = report.fltnum;
if (report.tofrom != "") pg.tofrom = report.tofrom;
}
if (report.state == 0) {
pg.fltstate = "OUT";
pg.blkstart = report.elapsed;
@ -67,7 +74,8 @@ var FlightLogDatabase = {
}
},
reset: func() {
if (me.getPageSize()>0 and me.currpageindex < me.getSize()) me.addPage();
#Actually reset occurs before IN state - I have no solution for this
#if (me.getPageSize()>0 and me.currpageindex < me.getSize()) me.addPage();
},
getSize: func() {
return me.database.size();
@ -118,7 +126,11 @@ var doorR1_pos = props.globals.getNode("/sim/model/door-positions/doorr1/positio
var doorL4_pos = props.globals.getNode("/sim/model/door-positions/doorl4/position-norm", 1);
var doorR4_pos = props.globals.getNode("/sim/model/door-positions/doorr4/position-norm", 1);
#check for A/C state change - advice me for a better method, please :/
# Detect OFF without IN
var lastgs0 = 0;
var lastgsrestart = 0;
# Check for A/C state change - advice me for a better method, please :/
var waitingOOOIChange = maketimer(1, func(){ # 1sec precision
var phase = fmgc.FMGCInternal.phase;
@ -129,9 +141,10 @@ var waitingOOOIChange = maketimer(1, func(){ # 1sec precision
if (expectedOOOIState == 0) { # OUT
if (gear0 and phase == 0) {
if (gs>9) { # imho - it's useful few speed tollerance, 10kts min speed on taxiways - CHECKME - better with pushback detection?
if (gs > 9) { # imho - it's useful few speed tollerance, 10kts min speed on taxiways - CHECKME - better with pushback detection?
FlightLogDatabase.addReport(OOOIReport.new(expectedOOOIState));
expectedOOOIState = 1;
lastgear0 = 0;
}
}
} else if (expectedOOOIState == 1) { # OFF
@ -149,14 +162,29 @@ var waitingOOOIChange = maketimer(1, func(){ # 1sec precision
if (gear0 and (phase == 7 or phase == 0)) { #done or preflight
FlightLogDatabase.addReport(OOOIReport.new(expectedOOOIState));
expectedOOOIState = 3;
lastgear0 = 0;
lastgsrestart = 0;
}
} else if (expectedOOOIState == 3) { # IN
if (gear0 and gs < 1) {
if (lastgs0 == 0) {
lastgs0 = int(getprop("/sim/time/elapsed-sec"));
lastgsrestart = 0;
}
if (doorL1_pos.getValue()>0 or doorR1_pos.getValue()>0 or doorL4_pos.getValue()>0 or doorR4_pos.getValue()>0) {
FlightLogDatabase.addReport(OOOIReport.new(expectedOOOIState));
expectedOOOIState = 0;
}
}
else if (!gear0) { # OFF without IN -> To without stop and opening doors
if (lastgear0) FlightLogDatabase.addReport(OOOIReport.new(expectedOOOIState,lastgear0)); # IN (estimated)
FlightLogDatabase.addPage();
if (lastgsrestart) FlightLogDatabase.addReport(OOOIReport.new(0,lastgsrestart)); # OUT (estimated)
expectedOOOIState = 1; # watch for OFF state
}
else if (gs > 9 and lastgsrestart == 0) { # try to decect OFF without IN
lastgsrestart = int(getprop("/sim/time/elapsed-sec"));
}
}
});

View file

@ -242,7 +242,7 @@ var initInputA = func(key, i) {
#} else if (scratchpad == "") {
#fmgc.FMGCInternal.altSelected = 0;
#setprop("MCDU[" ~ i ~ "]/page", "ROUTESELECTION");
} else {
} else {
if (!fmgc.flightPlanController.temporaryFlag[i]) {
var tfs = size(scratchpad);
if (tfs == 9 and find("/", scratchpad) != -1) {

View file

@ -237,6 +237,8 @@ var lskbutton = func(btn, i) {
canvas_mcdu.myCRZWIND[i].pushButtonLeft(1);
} else if (page == "WINDDES") {
canvas_mcdu.myDESWIND[i].pushButtonLeft(1);
} else if (page == "PROGPREF") {
progTOInput("L1",i); # same fn as TO
} else if (page == "PROGTO") {
progTOInput("L1",i);
} else if (page == "PROGCLB") {
@ -1413,14 +1415,16 @@ var pagebutton = func(btn, i) {
# A more flexible system/page tracking for future system expansion
if (getprop("/MCDU[" ~ i ~ "]/active-system") == "fmgc") setprop("/MCDU[" ~ i ~ "]/last-fmgc-page", page);
else setprop("/MCDU[" ~ i ~ "]/last-atsu-page", page);
else if (getprop("/MCDU[" ~ i ~ "]/active-system") == "atsu") setprop("/MCDU[" ~ i ~ "]/last-atsu-page", page);
if (btn == "atc") setprop("/MCDU[" ~ i ~ "]/active-system","atsu");
else setprop("/MCDU[" ~ i ~ "]/active-system","fmgc");
if (btn == "radnav") {
pageNode[i].setValue("RADNAV");
} else if (btn == "prog") {
if (fmgc.FMGCInternal.phase == 0 or fmgc.FMGCInternal.phase == 1) {
if (fmgc.FMGCInternal.phase == 0) {
pageNode[i].setValue("PROGPREF");
} else if (fmgc.FMGCInternal.phase == 1) {
pageNode[i].setValue("PROGTO");
} else if (fmgc.FMGCInternal.phase == 2) {
pageNode[i].setValue("PROGCLB");

View file

@ -1,7 +1,22 @@
# Copyright (c) 2020 Matthew Maring (mattmaring)
# enhanced inuyaksa*2021
var initInputROUTESEL = func(key, i) {
if (key == "L6") {
setprop("MCDU[" ~ i ~ "]/page", "INITA");
}
}
var RouteSelManager = {
leglist: nil,
loadFlightplan: func(path) {
if (right(path,4) == ".xml") { # plan from SimBrief?
if (SimBrief.isValid(path)) {
leglist = SimBrief.readLegs(path);
}
}
}
}

View file

@ -2137,14 +2137,38 @@
<condition>
<and>
<or>
<greater-than>
<property>/fdm/jsbsim/fcs/left-brake-cmd-norm</property>
<value>0.95</value>
</greater-than>
<greater-than>
<property>/fdm/jsbsim/fcs/right-brake-cmd-norm</property>
<value>0.95</value>
</greater-than>
<and>
<greater-than>
<property>/fdm/jsbsim/fcs/left-brake-cmd-norm</property>
<value>0.95</value>
</greater-than>
<or>
<equals>
<property>/gear/gear[0]/wow</property>
<value>1</value>
</equals>
<equals>
<property>/gear/gear[1]/wow</property>
<value>1</value>
</equals>
</or>
</and>
<and>
<greater-than>
<property>/fdm/jsbsim/fcs/right-brake-cmd-norm</property>
<value>0.95</value>
</greater-than>
<or>
<equals>
<property>/gear/gear[0]/wow</property>
<value>1</value>
</equals>
<equals>
<property>/gear/gear[2]/wow</property>
<value>1</value>
</equals>
</or>
</and>
</or>
<greater-than>
<property>/velocities/groundspeed-kt</property>