Files
Project-Reboot-3.0/Project Reboot 3.0/Level.cpp
Gray b3d9ab9e8b Dude 💀
2024-03-20 21:45:38 -04:00

48 lines
1.3 KiB
C++

#include "Level.h"
#include "reboot.h"
UWorld*& ULevel::GetOwningWorld()
{
static auto OwningWorldOffset = GetOffset("OwningWorld");
return Get<UWorld*>(OwningWorldOffset);
}
bool ULevel::HasVisibilityChangeRequestPending() // T(REP)
{
// I believe implementation on this changes depending on the version
auto OwningWorld = GetOwningWorld();
if (!OwningWorld)
return false;
static auto CurrentLevelPendingVisibilityOffset = OwningWorld->GetOffset("CurrentLevelPendingVisibility");
auto CurrentLevelPendingVisibility = OwningWorld->Get<ULevel*>(CurrentLevelPendingVisibilityOffset);
static auto CurrentLevelPendingInvisibilityOffset= OwningWorld->GetOffset("CurrentLevelPendingInvisibility");
auto CurrentLevelPendingInvisibility = OwningWorld->Get<ULevel*>(CurrentLevelPendingInvisibilityOffset);
return this == CurrentLevelPendingVisibility || this == CurrentLevelPendingInvisibility;
}
bool ULevel::IsAssociatingLevel() // T(REP)
{
return false;
}
AWorldSettings* ULevel::GetWorldSettings(bool bChecked) const
{
if (bChecked)
{
// checkf(WorldSettings != nullptr, TEXT("%s"), *GetPathName());
}
static auto WorldSettingsOffset = GetOffset("WorldSettings");
return Get<AWorldSettings*>(WorldSettingsOffset);
}
UClass* ULevel::StaticClass()
{
static auto Class = FindObject<UClass>(L"/Script/Engine.Level");
return Class;
}