Open & Close
There are 2 functions to open / close input buffer.
Animation notify state ANS_InputBuffer also allows to open / close it.
Function UpdateKey allows to update stored key, it takes E_InputBufferKey as parameter.
Whenever player updates a key, InputBufferComponent checks whether it’s open or closed.
If it’s closed it consumes this key immediately calling event dispatcher OnInputBufferConsumed.
If it’s open it stores the key in variable and waits till it get’s closed.
Let's take a look at implementation in BP_CombatCharacter.
Player is not calling ThrustAttack function directly, instead it updates key with that value.
When key gets consumed, then proper function is being called.
InputBufferComponent has also event dispatchers OnInputBufferOpen & OnInputBufferClose.