// Fill out your copyright notice in the Description page of Project Settings. #include "TangibleManager.h" using AActorPtr = AActor*; void FTangibleManager::Init(UWorld *world, UClass* tanact) { World = world; ClassTangibleActor = tanact; } AActorPtr FTangibleManager::GetTangible(int64 id) { AActorPtr *p = IdToActor.Find(id); if (p == nullptr) { return nullptr; } else { return *p; } } // Get the tangible if it exists, otherwise create it. AActorPtr FTangibleManager::MakeTangible(int64 id) { AActorPtr& p = IdToActor.FindOrAdd(id); if (p == nullptr) { FVector location; FRotator rotation; FActorSpawnParameters params; p = World->SpawnActor(ClassTangibleActor, &location, &rotation, params); check(p != nullptr); } return p; } // Delete the tangible. void FTangibleManager::DeleteTangible(int64 id) { // IMPLEMENT ME }