Fixed signal spawning with imported maps

This commit is contained in:
doterop 2020-05-13 13:58:58 +02:00 committed by bernat
parent 3fd9fc27f1
commit 60aa3e3529
2 changed files with 15 additions and 1 deletions

View File

@ -17,6 +17,8 @@
#include "DrawDebugHelpers.h"
#include "Kismet/KismetSystemLibrary.h"
#include "Carla/Traffic/TrafficLightManager.h"
ACarlaGameModeBase::ACarlaGameModeBase(const FObjectInitializer& ObjectInitializer)
: Super(ObjectInitializer)
{
@ -63,6 +65,12 @@ void ACarlaGameModeBase::InitGame(
auto World = GetWorld();
check(World != nullptr);
AActor* TrafficLightManagerActor = UGameplayStatics::GetActorOfClass(World, ATrafficLightManager::StaticClass());
if(TrafficLightManagerActor == nullptr) {
World->SpawnActor<ATrafficLightManager>();
}
GameInstance = Cast<UCarlaGameInstance>(GetGameInstance());
checkf(
GameInstance != nullptr,

View File

@ -176,6 +176,12 @@ void AOpenDriveGenerator::BeginPlay()
GenerateAll();
auto World = GetWorld();
check(World != nullptr);
// Autogenerate signals
GetWorld()->SpawnActor<ATrafficLightManager>();
AActor* TrafficLightManagerActor = UGameplayStatics::GetActorOfClass(World, ATrafficLightManager::StaticClass());
if(TrafficLightManagerActor == nullptr) {
World->SpawnActor<ATrafficLightManager>();
}
}