Hello!
I’m trying to make my character/enemy able to recognize objects with which they collided.
FPSEnemy recognize when it collides with Character, but FPSCharacter is not recognize when it collides with Enemy. Is there any way to get Enemy actor for IsOverlappingActor?
FPSEnemy.cpp
void AFPSEnemy::OnOverlapBegin(UPrimitiveComponent * OverlappedComp, AActor * OtherActor, UPrimitiveComponent * OtherComp,
int32 OtherBodyIndex, bool bFromSweep, const FHitResult & SweepResult)
{
AFPSCharacter* playerOverlap = Cast<AFPSCharacter>(GetWorld()->GetFirstPlayerController()->GetCharacter());
if (IsOverlappingActor(playerOverlap))
{
GEngine->AddOnScreenDebugMessage(-1, 3.0f, FColor::Green, TEXT("Enemy's overlap is working"));
}
}
FPSCharacter.cpp
void AFPSCharacter::OnOverlapBegin(UPrimitiveComponent * OverlappedComp, AActor * OtherActor, UPrimitiveComponent * OtherComp,
int32 OtherBodyIndex, bool bFromSweep, const FHitResult & SweepResult)
{
AFPSEnemy* enemyOverlap = Cast<AFPSEnemy>(GetWorld()); // ?????
if (IsOverlappingActor(enemyOverlap))
{
GEngine->AddOnScreenDebugMessage(-1, 3.0f, FColor::Green, TEXT("Player's overlap is working"));
}
}