Cant override ReceivePointDamage

I have a class inherited from ACharacter where I want to override ReceivePointDamage() function as follows:

virtual void ReceivePointDamage(float Damage,
		const class UDamageType * DamageType,
		FVector HitLocation,
		FVector HitNormal,
		class UPrimitiveComponent * HitComponent,
		FName BoneName,
		FVector ShotFromDirection,
		class AController * InstigatedBy,
		AActor * DamageCauser
	) override;

Based on the documentation, this is the right order of parameters and naming and everything, BUT compiler complains with the following message:

 method with override specifier 'override' did not override any base class methods

The question is “WHY”?
Why can I override TakeDamage function

virtual float TakeDamage(float Damage, 
	struct FDamageEvent const& DamageEvent, 
	class AController* EventInstigator, 
	class AActor* DamageCauser) override;

but not ReceivePointDamage()?


Hi ZBender,

The reason you cannot override ReceivePointDamage() is because it is not a virtual function. This means it cannot be overridden in a child class. If you need to use that function, and want to include some custom functionality, you will need to write your own function and call ReceivePointDamage() from within it.

Ah, this is unfortunate.
Thanks for a response though!