Alright guys I found a way to do it :
I enable the Tick function :
Tick(float DeltaTime)
{
Super::Tick(DeltaTime);
if (!bCanTick)
return;
if (currentPlayerController != NULL)
{
if (currentPlayerController->WasInputKeyJustPressed(EKeys::E))
{
PickupOnUse();
}
}
}
the boolean bCanTick is set to true when the player begin overlap and false when it ends.