How to change Map? C++ code

i am trying to call GEngine->LoadMap inside GameMode->StartPlay

and i get freeze.

void AMyGameMode::StartPlay()
{
	Super::StartPlay();	
static bool OnlyOnce = false;
if(!OnlyOnce)
{
FString Error;
GEngine->LoadMap(*GEngine->GetWorldContextFromWorld(GetWorld()), FURL(TEXT("NewMap1")), nullptr, Error);
OnlyOnce = true;
}
}

SOLVED:

UGameplayStatics::OpenLevel((UObject*)GGameInstance, FName(TEXT("NewMap1")));

GGameInstance - is my global UMyGameInstance*, which i was initialized inside UMyGameInstance::Init().

2 Likes