Skip to content

Commit 4d48c4a

Browse files
committed
tweak: Add new data to the xfer logic
1 parent ac59d40 commit 4d48c4a

File tree

4 files changed

+44
-4
lines changed

4 files changed

+44
-4
lines changed

Generals/Code/GameEngine/Source/GameLogic/Object/Update/AIUpdate/DozerAIUpdate.cpp

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2450,7 +2450,11 @@ void DozerAIUpdate::crc( Xfer *xfer )
24502450
void DozerAIUpdate::xfer( Xfer *xfer )
24512451
{
24522452
// version
2453-
XferVersion currentVersion = 1;
2453+
#if RETAIL_COMPATIBLE_CRC
2454+
XferVersion currentVersion = 1;
2455+
#else
2456+
XferVersion currentVersion = 2;
2457+
#endif
24542458
XferVersion version = currentVersion;
24552459
xfer->xferVersion( &version, currentVersion );
24562460

@@ -2471,6 +2475,12 @@ void DozerAIUpdate::xfer( Xfer *xfer )
24712475
xfer->xferSnapshot(m_dozerMachine);
24722476
xfer->xferUser(&m_currentTask, sizeof(m_currentTask));
24732477

2478+
if (currentVersion >= 2)
2479+
{
2480+
xfer->xferUser(&m_previousTask, sizeof(m_previousTask));
2481+
xfer->xferUser(&m_previousTaskInfo, sizeof(m_previousTaskInfo));
2482+
}
2483+
24742484
Int dockPoints = DOZER_NUM_DOCK_POINTS;
24752485
xfer->xferInt(&dockPoints);
24762486
if (dockPoints!=DOZER_NUM_DOCK_POINTS) {

Generals/Code/GameEngine/Source/GameLogic/Object/Update/AIUpdate/WorkerAIUpdate.cpp

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1417,7 +1417,11 @@ void WorkerAIUpdate::crc( Xfer *xfer )
14171417
// ------------------------------------------------------------------------------------------------
14181418
void WorkerAIUpdate::xfer( Xfer *xfer )
14191419
{
1420-
XferVersion currentVersion = 1;
1420+
#if RETAIL_COMPATIBLE_CRC
1421+
XferVersion currentVersion = 1;
1422+
#else
1423+
XferVersion currentVersion = 2;
1424+
#endif
14211425
XferVersion version = currentVersion;
14221426
xfer->xferVersion( &version, currentVersion );
14231427

@@ -1441,6 +1445,12 @@ void WorkerAIUpdate::xfer( Xfer *xfer )
14411445
xfer->xferSnapshot(m_dozerMachine);
14421446
xfer->xferUser(&m_currentTask, sizeof(m_currentTask));
14431447

1448+
if (currentVersion >= 2)
1449+
{
1450+
xfer->xferUser(&m_previousTask, sizeof(m_previousTask));
1451+
xfer->xferUser(&m_previousTaskInfo, sizeof(m_previousTaskInfo));
1452+
}
1453+
14441454
Int dockPoints = DOZER_NUM_DOCK_POINTS;
14451455
xfer->xferInt(&dockPoints);
14461456
if (dockPoints!=DOZER_NUM_DOCK_POINTS) {

GeneralsMD/Code/GameEngine/Source/GameLogic/Object/Update/AIUpdate/DozerAIUpdate.cpp

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2462,7 +2462,11 @@ void DozerAIUpdate::crc( Xfer *xfer )
24622462
void DozerAIUpdate::xfer( Xfer *xfer )
24632463
{
24642464
// version
2465-
XferVersion currentVersion = 1;
2465+
#if RETAIL_COMPATIBLE_CRC
2466+
XferVersion currentVersion = 1;
2467+
#else
2468+
XferVersion currentVersion = 2;
2469+
#endif
24662470
XferVersion version = currentVersion;
24672471
xfer->xferVersion( &version, currentVersion );
24682472

@@ -2483,6 +2487,12 @@ void DozerAIUpdate::xfer( Xfer *xfer )
24832487
xfer->xferSnapshot(m_dozerMachine);
24842488
xfer->xferUser(&m_currentTask, sizeof(m_currentTask));
24852489

2490+
if (currentVersion >= 2)
2491+
{
2492+
xfer->xferUser(&m_previousTask, sizeof(m_previousTask));
2493+
xfer->xferUser(&m_previousTaskInfo, sizeof(m_previousTaskInfo));
2494+
}
2495+
24862496
Int dockPoints = DOZER_NUM_DOCK_POINTS;
24872497
xfer->xferInt(&dockPoints);
24882498
if (dockPoints!=DOZER_NUM_DOCK_POINTS) {

GeneralsMD/Code/GameEngine/Source/GameLogic/Object/Update/AIUpdate/WorkerAIUpdate.cpp

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1427,7 +1427,11 @@ void WorkerAIUpdate::crc( Xfer *xfer )
14271427
// ------------------------------------------------------------------------------------------------
14281428
void WorkerAIUpdate::xfer( Xfer *xfer )
14291429
{
1430-
XferVersion currentVersion = 1;
1430+
#if RETAIL_COMPATIBLE_CRC
1431+
XferVersion currentVersion = 1;
1432+
#else
1433+
XferVersion currentVersion = 2;
1434+
#endif
14311435
XferVersion version = currentVersion;
14321436
xfer->xferVersion( &version, currentVersion );
14331437

@@ -1451,6 +1455,12 @@ void WorkerAIUpdate::xfer( Xfer *xfer )
14511455
xfer->xferSnapshot(m_dozerMachine);
14521456
xfer->xferUser(&m_currentTask, sizeof(m_currentTask));
14531457

1458+
if (currentVersion >= 2)
1459+
{
1460+
xfer->xferUser(&m_previousTask, sizeof(m_previousTask));
1461+
xfer->xferUser(&m_previousTaskInfo, sizeof(m_previousTaskInfo));
1462+
}
1463+
14541464
Int dockPoints = DOZER_NUM_DOCK_POINTS;
14551465
xfer->xferInt(&dockPoints);
14561466
if (dockPoints!=DOZER_NUM_DOCK_POINTS) {

0 commit comments

Comments
 (0)