Fixed a pathing issue where a soldier would sometimes jump the wrong fence

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@1034 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
Overhaul
2007-07-08 09:29:15 +00:00
parent 6a9a39c096
commit 1bf50d65f4
2 changed files with 15 additions and 9 deletions
+4 -8
View File
@@ -626,6 +626,7 @@ BOOLEAN AdjustToNextAnimationFrame( SOLDIERTYPE *pSoldier )
// Only in realtime...
//if ( !( gTacticalStatus.uiFlags & INCOMBAT ) )
// This has to be here to make guys continue along fence path
#if 0
if ( pSoldier->sGridNo == pSoldier->sFinalDestination )
{
if ( gAnimControl[ pSoldier->usAnimState ].ubEndHeight != gAnimControl[ pSoldier->usUIMovementMode ].ubEndHeight )
@@ -637,20 +638,15 @@ BOOLEAN AdjustToNextAnimationFrame( SOLDIERTYPE *pSoldier )
}
else
{
SoldierGotoStationaryStance( pSoldier );
//SoldierGotoStationaryStance( pSoldier );
// Set UI Busy
UnSetUIBusy( pSoldier->ubID );
// 0verhaul
// I hate this kludgy stuff. We need to simplify the animation system so that things can be centralized
// and handled properly.
pSoldier->usPathIndex++;
// Kludge done
return( TRUE );
//return( TRUE );
}
}
#endif
break;
case 445:
+11 -1
View File
@@ -7029,7 +7029,17 @@ void BeginSoldierClimbFence( SOLDIERTYPE *pSoldier )
{
INT8 bDirection;
if ( FindFenceJumpDirection( pSoldier, pSoldier->sGridNo, pSoldier->bDirection, &bDirection ) )
// Make sure we hop the correct fence to follow our path!
if (pSoldier->usPathIndex < pSoldier->usPathDataSize)
{
bDirection = (INT8) pSoldier->usPathingData[ pSoldier->usPathIndex];
}
else
{
bDirection = pSoldier->bDirection;
}
if ( FindFenceJumpDirection( pSoldier, pSoldier->sGridNo, bDirection, &bDirection ) )
{
pSoldier->sTempNewGridNo = NewGridNo( (UINT16)pSoldier->sGridNo, (UINT16)DirectionInc(bDirection ) );
pSoldier->fDontChargeTurningAPs = TRUE;