Open
Description
The AI Guard states; AIGuardOuterState, AIGuardRetaliateOuterState and AITNGuardOuterState all have function prototypes within their LoadPostProcess function.
These could also be a cause of mismatching in multiplayer if the enter functions are meant to be called after a transfer to initialise the relevant state.
void AIGuardOuterState::loadPostProcess( void )
{ AIGuardOuterState
onEnter();
} // end loadPostProcess
void AIGuardRetaliateOuterState::loadPostProcess( void )
{ AIGuardRetaliateOuterState
onEnter();
} // end loadPostProcess
void AITNGuardOuterState::loadPostProcess( void )
{ AITNGuardOuterState
onEnter();
} // end loadPostProcess
I believe these are likely erroneous and the load post process function is meant to be calling the on enter function.
I could not get the game to breakpoint on these in skirmish or campaign, they would need testing in multiplayer.
This could be a cause of some unexpected or unseen behaviour.
Bellow are examples of other states within AITNGuard.cpp with similar calls but correctly handled
void AITNGuardInnerState::loadPostProcess( void )
{
onEnter();
} // end loadPostProcess
void AITNGuardAttackAggressorState::loadPostProcess()
{
onEnter();
}