Files
Reboot-Launcher/dependencies/reboot/Project Reboot 3.0/NetConnection.cpp
Alessandro Autiero b41e22adeb <feat: New project structure>
<feat: New release>
2023-09-02 15:34:15 +02:00

25 lines
1.1 KiB
C++

#include "NetConnection.h"
bool UNetConnection::ClientHasInitializedLevelFor(const AActor* TestActor) const
{
static auto ClientHasInitializedLevelForAddr = Memcury::Scanner::FindPattern("48 89 5C 24 ? 48 89 74 24 ? 57 48 83 EC 20 48 8B 5A 20 48 8B F1 4C 8B C3", false).Get();
if (!ClientHasInitializedLevelForAddr)
{
ClientHasInitializedLevelForAddr = Memcury::Scanner::FindPattern("48 89 5C 24 ? 48 89 74 24 ? 57 48 83 EC 20 48 8B 5A 20 48 8B F1 4C 8B C3 48 8D", false).Get(); // 1.8
if (!ClientHasInitializedLevelForAddr)
{
ClientHasInitializedLevelForAddr = Memcury::Scanner::FindPattern("48 89 5C 24 ? 48 89 74 24 ? 57 48 83 EC 20 48 8B F9 48 85 D2 74 35 48").Get(); // 1.7.2
}
}
if (!ClientHasInitializedLevelForAddr)
return true;
static bool (*ClientHasInitializedLevelForOriginal)(const UNetConnection * Connection, const AActor * TestActor)
= decltype(ClientHasInitializedLevelForOriginal)(ClientHasInitializedLevelForAddr);
// ^ This is virtual but it doesn't really matter
return ClientHasInitializedLevelForOriginal(this, TestActor);
}