1
0
Fork 0
mirror of https://github.com/iNavFlight/inav-configurator.git synced 2025-07-25 17:25:14 +03:00

Update mission_control.js

This commit is contained in:
breadoven 2021-11-19 13:31:03 +00:00
parent fba467e40a
commit a94d7709b6

View file

@ -2585,7 +2585,8 @@ TABS.mission_control.initialize = function (callback) {
var center = ol.proj.toLonLat(map.getView().getCenter());
var zoom = map.getView().getZoom();
let version = (multimissionCount && !singleMissionActive()) ? '4.0.0' : '2.3-pre8';
let multimission = multimissionCount && !singleMissionActive();
let version = multimission ? '4.0.0' : '2.3-pre8';
var data = {
'version': { $: { 'value': version } },
'mwp': { $: { 'cx': (Math.round(center[0] * 10000000) / 10000000),
@ -2597,7 +2598,14 @@ TABS.mission_control.initialize = function (callback) {
};
let missionStartWPNumber = 0;
let missionNumber = 1;
mission.get().forEach(function (waypoint) {
if (waypoint.getNumber() - missionStartWPNumber == 0 && multimission) {
let meta = {$:{
'mission': missionNumber
}};
data.missionitem.push(meta);
}
var point = { $: {
'no': waypoint.getNumber() - missionStartWPNumber + 1,
'action': MWNP.WPTYPE.REV[waypoint.getAction()],
@ -2609,14 +2617,17 @@ TABS.mission_control.initialize = function (callback) {
'parameter3': waypoint.getP3(),
'flag': waypoint.getEndMission(),
} };
data.missionitem.push(point);
if (waypoint.getEndMission() == 0xA5) {
missionStartWPNumber = waypoint.getNumber() + 1;
missionNumber ++;
}
data.missionitem.push(point);
});
var builder = new window.xml2js.Builder({ 'rootName': 'mission', 'renderOpts': { 'pretty': true, 'indent': '\t', 'newline': '\n' } });
var xml = builder.buildObject(data);
xml = xml.replace(/missionitem mission/g, 'meta mission');
fs.writeFile(filename, xml, (err) => {
if (err) {
GUI.log('<span style="color: red">Error writing file</span>');