Skip to content

Some AIGuard states have function prototypes instead of function calls in their LoadPostProcess(). #815

Open
@Mauller

Description

@Mauller

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();
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions