SB persist

Options page for GSX Sync
This commit is contained in:
2025-06-18 23:57:46 +02:00
parent 4b60f8eec2
commit 390edd29b8
16 changed files with 316 additions and 135 deletions
+113 -3
View File
@@ -1,11 +1,21 @@
import { COHERENT_COMM_BUS_WASM_CALL, COMM_BUS_UPDATE_TARGET_EVENT } from '../constants';
import {
COHERENT_COMM_BUS_WASM_CALL,
COMM_BUS_UPDATE_TARGET_EVENT,
MODE_LOAD_SET,
MODE_OPTIONS_SET,
MODE_SB_SET,
MODE_STATION_SET,
MODE_UNLOAD_SET,
MODE_ZFW_SET,
} from '../constants';
import { SimBrief } from '../types/general';
export const loadAircraft = () => {
Coherent.call(
COHERENT_COMM_BUS_WASM_CALL,
COMM_BUS_UPDATE_TARGET_EVENT,
JSON.stringify({
mode: 3,
mode: MODE_LOAD_SET,
})
);
};
@@ -15,7 +25,7 @@ export const unloadAircraft = () => {
COHERENT_COMM_BUS_WASM_CALL,
COMM_BUS_UPDATE_TARGET_EVENT,
JSON.stringify({
mode: 4,
mode: MODE_UNLOAD_SET,
})
);
};
@@ -23,3 +33,103 @@ export const unloadAircraft = () => {
export const inRangeOf = (value: number, target: number, tolerance: number = 10) => {
return Math.abs(value - target) < tolerance;
};
export const CoherentCallZFWEntry = (ZFWTarget: number, CGTarget: number) => {
Coherent.call(
COHERENT_COMM_BUS_WASM_CALL,
COMM_BUS_UPDATE_TARGET_EVENT,
JSON.stringify({
mode: MODE_ZFW_SET,
ZFWTarget: ZFWTarget,
CGTarget: CGTarget,
})
);
};
export const CoherentCallStationEntryPax = (
business1: number,
business2: number,
economy1: number,
economy2: number,
forwardCargo: number,
rearCargo: number
) => {
Coherent.call(
COHERENT_COMM_BUS_WASM_CALL,
COMM_BUS_UPDATE_TARGET_EVENT,
JSON.stringify({
mode: MODE_STATION_SET,
business1,
business2,
economy1,
economy2,
forwardCargo,
rearCargo,
})
);
};
export const CoherentCallStationEntryF = (
upper1: number,
upper2: number,
upper3: number,
upper4: number,
lowerForward: number,
lowerRear: number
) => {
Coherent.call(
COHERENT_COMM_BUS_WASM_CALL,
COMM_BUS_UPDATE_TARGET_EVENT,
JSON.stringify({
mode: MODE_STATION_SET,
upper1,
upper2,
upper3,
upper4,
lowerForward,
lowerRear,
})
);
};
export const CoherentCallSBEntryPax = (cargo: number, numPax: number, CGTarget: number, SBPlan?: SimBrief) => {
Coherent.call(
COHERENT_COMM_BUS_WASM_CALL,
COMM_BUS_UPDATE_TARGET_EVENT,
JSON.stringify({
mode: MODE_SB_SET,
cargo: cargo,
numPax: numPax,
CGTarget: CGTarget,
plannedZFW: SBPlan?.plannedZFW ?? 0,
plannedGW: SBPlan?.plannedGW ?? 0,
})
);
};
export const CoherentCallSBEntryF = (cargo: number, CGTarget: number, SBPlan?: SimBrief) => {
Coherent.call(
COHERENT_COMM_BUS_WASM_CALL,
COMM_BUS_UPDATE_TARGET_EVENT,
JSON.stringify({
mode: MODE_SB_SET,
cargo: cargo,
CGTarget: CGTarget,
plannedZFW: SBPlan?.plannedZFW ?? 0,
plannedGW: SBPlan?.plannedGW ?? 0,
})
);
};
export const CoherentCallOptionsSet = (GSXSync?: boolean, paxWeight?: number, bagWeight?: number) => {
Coherent.call(
COHERENT_COMM_BUS_WASM_CALL,
COMM_BUS_UPDATE_TARGET_EVENT,
JSON.stringify({
mode: MODE_OPTIONS_SET,
GSXSync,
paxWeight,
bagWeight,
})
);
};