Gente código casi terminado: #pragma once
#include "CoreMinimal.h" #include "GameFramework/Actor.h" #include "UniverseManager.generated.h"
UCLASS()
class ULTRASURVIVAL_API AUniverseManager : public AActor
{
GENERATED_BODY()
public:
AUniverseManager();
protected:
virtual void BeginPlay() override;
public:
virtual void Tick(float DeltaTime) override;
// Función para cambiar entre universos
UFUNCTION(BlueprintCallable, Category = "Multiverse")
void TransitionToUniverse(FString UniverseName);
private:
TMap<FString, FString> UniverseMap; // Mapa de universos y niveles
}; #include "UniverseManager.h" #include "Kismet/GameplayStatics.h"
AUniverseManager::AUniverseManager()
{
PrimaryActorTick.bCanEverTick = true;
// Configuración de universos y niveles
UniverseMap.Add("MHA", "Level_MHA");
UniverseMap.Add("JJK", "Level_JJK");
UniverseMap.Add("DBS", "Level_DBS");
UniverseMap.Add("KNY", "Level_KNY");
UniverseMap.Add("MD", "Level_MD");
}
void AUniverseManager::BeginPlay()
{
Super::BeginPlay();
}
void AUniverseManager::Tick(float DeltaTime)
{
Super::Tick(DeltaTime);
}
void AUniverseManager::TransitionToUniverse(FString UniverseName)
{
if (UniverseMap.Contains(UniverseName))
{
FString LevelName = UniverseMap[UniverseName];
UGameplayStatics::OpenLevel(GetWorld(), FName(*LevelName));
UE_LOG(LogTemp, Warning, TEXT("Transitioning to %s"), *UniverseName);
}
else
{
UE_LOG(LogTemp, Error, TEXT("Universe not found: %s"), *UniverseName);
}
}
Solo faltan los detalles y ya esta o eso diria si no fuese porque que tengo que animar a los personajes los efectos especiales, sus habilidades y movimientos especiales y terminar la historia.