GSX Reset and Disable button

This commit is contained in:
2025-09-09 23:40:24 +02:00
parent 04e5ec4251
commit acf4b9ee47
11 changed files with 117 additions and 77 deletions
+14 -12
View File
@@ -518,8 +518,7 @@ int receiveData(const char* buf) {
if (document.HasMember("mode")) {
int mode = document["mode"].GetUint();
switch(mode) {
// SB Entry
case 0: {
case CALL_MODE_SB_SET: {
if (UserData->isCargo) {
if(document.HasMember("CGTarget"))
targetFPayloadData->CGTarget = document["CGTarget"].GetDouble();
@@ -552,8 +551,7 @@ int receiveData(const char* buf) {
}
break;
}
// ZFW Entry
case 1: {
case CALL_MODE_ZFW_SET: {
if (!document.HasMember("ZFWTarget") || !document.HasMember("CGTarget")) return -1;
double ZFWTarget = document["ZFWTarget"].GetDouble();
double CGTarget = document["CGTarget"].GetDouble();
@@ -568,8 +566,7 @@ int receiveData(const char* buf) {
}
break;
}
// Station Entry
case 2: {
case CALL_MODE_STATION_SET: {
if (UserData->isCargo) {
if (!document.HasMember("upper1") || !document.HasMember("upper2") ||
!document.HasMember("upper3") || !document.HasMember("upper4") ||
@@ -598,8 +595,7 @@ int receiveData(const char* buf) {
}
break;
}
// Trigger load
case 3: {
case CALL_MODE_LOAD_SET: {
if (UserData->isCargo) {
load(targetFPayloadData, simConnect, UserData->isImperial);
}
@@ -611,8 +607,7 @@ int receiveData(const char* buf) {
break;
}
// Trigger unload
case 4: {
case CALL_MODE_UNLOAD_SET: {
if (UserData->isCargo) {
unloadF(simConnect, UserData->isER);
}
@@ -624,8 +619,7 @@ int receiveData(const char* buf) {
break;
}
// Option set
case 5: {
case CALL_MODE_OPTIONS_SET: {
if (document.HasMember("GSXSync")) {
UserOptions->GSXSync = document["GSXSync"].GetBool();
}
@@ -658,6 +652,10 @@ int receiveData(const char* buf) {
}
break;
}
case CALL_MODE_GSX_RESET: {
GSXData->loadingState = LOADING_STATE_IDLE;
UserOptions->GSXSync = false;
}
default:
break;
}
@@ -1033,6 +1031,8 @@ void CALLBACK MyDispatchProc(SIMCONNECT_RECV* pData, DWORD cbData, void* pContex
break;
}
default:
break;
}
switch ((char)GSXData->deboardingState) {
case GSX_SERVICE_ACTIVE: {
@@ -1115,6 +1115,8 @@ void CALLBACK MyDispatchProc(SIMCONNECT_RECV* pData, DWORD cbData, void* pContex
break;
}
default:
break;
}
}
+1 -1
View File
@@ -32,7 +32,7 @@
/******************************** Constants ********************************/
// Module identification
#define MODULE_NAME "[KHOFMANN TFDi MD-11 Load Manager] "
#define VERSION_STRING "1.3"
#define VERSION_STRING "1.5"
// COMM BUS
#define COMM_BUS_LIVE_DATA_EVENT "khofmann_tfdi_md-11_load_manager_live_data"
#define COMM_BUS_UPDATE_TARGET_EVENT "khofmann_tfdi_md-11_load_manager_update_target"
+10
View File
@@ -96,6 +96,16 @@ enum LOADING_STATES {
LOADING_STATE_DEBOARDED,
};
enum CALL_MODES {
CALL_MODE_SB_SET,
CALL_MODE_ZFW_SET,
CALL_MODE_STATION_SET,
CALL_MODE_LOAD_SET,
CALL_MODE_UNLOAD_SET,
CALL_MODE_OPTIONS_SET,
CALL_MODE_GSX_RESET,
};
/***************************** Data structures *****************************/
typedef struct {
double isCargo;