Delayで待ち時間を指定して、DestroyActorでアクターを破棄します。
// 開始
void AMyActor::BeginPlay()
{
Super::BeginPlay();
bool isLoop = false; // 処理を繰り返すか?
float delayTime = 3.0f; // 待ち時間
// タイマー設定/開始
GetWorldTimerManager().SetTimer(FTimerDelegate::CreateUObject(this, &AMyActor::DelayTimerCallBack), delayTime, isLoop);
}
// SetTimerで指定した時間の後処理する
void AMyActor::DelayTimerCallBack()
{
// 自滅する。
Super::Destroy();
}