mirror of
https://github.com/1dot13/source.git
synced 2026-07-22 13:40:22 +02:00
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:
@@ -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:
|
||||
|
||||
@@ -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;
|
||||
|
||||
Reference in New Issue
Block a user