diff --git a/js/waypointCollection.js b/js/waypointCollection.js index 485179c5..4d897491 100644 --- a/js/waypointCollection.js +++ b/js/waypointCollection.js @@ -320,6 +320,16 @@ let WaypointCollection = function () { return outputNumber; } + self.convertWaypointToJumpNumber = function(jumpId) { + let outputNumber = 0; + self.getNonAttachedList().forEach(function (element) { + if (element.getNumber() == jumpId) { + outputNumber = element.getLayerNumber(); + } + }); + return outputNumber; + } + self.isJumpTargetAttached = function(waypoint) { let lJumptTargetAttached = []; data.forEach(function (element) { diff --git a/tabs/mission_control.js b/tabs/mission_control.js index 53a75d9f..8fe7a3b4 100644 --- a/tabs/mission_control.js +++ b/tabs/mission_control.js @@ -1841,7 +1841,15 @@ TABS.mission_control.initialize = function (callback) { $row.find(".waypointOptions-action").val(waypointOptions.indexOf(MWNP.WPTYPE.REV[element.getAction()])).on('change', function () { element.setAction(MWNP.WPTYPE[waypointOptions[$(this).val()]]); - $row.find(".waypointOptions-p1").val(MWNP.WPTYPE.REV[element.getAction()] == "JUMP" ? 1 : 0); + let P1Value = 0; + if (waypointOptions[$(this).val()] == "JUMP") { + P1Value = 1; + } else if (waypointOptions[$(this).val()] == "RTH" && !isOffline) { + if (FC.isMultirotor()) P1Value = 1; + } + $row.find(".waypointOptions-p1").val(P1Value); + element.setP1(P1Value); + for (var i = 1; i <= 3; i++) { if (dictOfLabelParameterPoint[element.getAction()]['parameter'+String(i)] != '') { $row.find(".waypointOptions-p"+String(i)).prop("disabled", false); @@ -1859,7 +1867,7 @@ TABS.mission_control.initialize = function (callback) { $row.find(".waypointOptions-number").text(element.getAttachedNumber()+1); - $row.find(".waypointOptions-p1").val((MWNP.WPTYPE.REV[element.getAction()] == "JUMP" ? element.getP1()+1 : element.getP1())).on('change', function () { + $row.find(".waypointOptions-p1").val((MWNP.WPTYPE.REV[element.getAction()] == "JUMP" ? mission.convertWaypointToJumpNumber(element.getP1()) + 1 : element.getP1())).on('change', function () { if (MWNP.WPTYPE.REV[element.getAction()] == "SET_HEAD") { if ($(this).val() >= 360 || ($(this).val() < 0 && $(this).val() != -1)) {