Fix schedule compatibility between map versions 7 & 8

This commit is contained in:
Asdow
2025-09-28 10:35:13 +03:00
parent cf6cc2a213
commit 8fa2189a66
2 changed files with 36 additions and 1 deletions
+13
View File
@@ -54,6 +54,18 @@ typedef struct _OLD_SCHEDULENODE
UINT16 usFlags;
}_OLD_SCHEDULENODE;
typedef struct _OLD_SCHEDULENODE_PRE_ITS
{
struct _OLD_SCHEDULENODE_PRE_ITS* next;
UINT16 usTime[MAX_SCHEDULE_ACTIONS]; // Converted to minutes 12:30PM would be 12*60 + 30 = 750
UINT32 usData1[MAX_SCHEDULE_ACTIONS]; // Typically the gridno, but depends on the action
UINT32 usData2[MAX_SCHEDULE_ACTIONS]; // Secondary information, not used by most actions
UINT8 ubAction[MAX_SCHEDULE_ACTIONS];
UINT8 ubScheduleID;
UINT8 ubSoldierID;
UINT16 usFlags;
}_OLD_SCHEDULENODE_PRE_ITS;
class SCHEDULENODE
{
public:
@@ -67,6 +79,7 @@ public:
UINT16 usFlags;
public:
SCHEDULENODE& operator=(const _OLD_SCHEDULENODE& src);
SCHEDULENODE& operator=(const _OLD_SCHEDULENODE_PRE_ITS& src);
BOOLEAN Load(INT8** hBuffer, FLOAT dMajorMapVersion);
BOOLEAN Save(HWFILE hFile, FLOAT dMajorMapVersion, UINT8 ubMinorMapVersion);
};