aboutsummaryrefslogtreecommitdiff
path: root/NorthstarDLL/shared
diff options
context:
space:
mode:
Diffstat (limited to 'NorthstarDLL/shared')
-rw-r--r--NorthstarDLL/shared/sourceinterface.cpp49
-rw-r--r--NorthstarDLL/shared/sourceinterface.h31
2 files changed, 0 insertions, 80 deletions
diff --git a/NorthstarDLL/shared/sourceinterface.cpp b/NorthstarDLL/shared/sourceinterface.cpp
deleted file mode 100644
index ed95de50..00000000
--- a/NorthstarDLL/shared/sourceinterface.cpp
+++ /dev/null
@@ -1,49 +0,0 @@
-#include "pch.h"
-#include "sourceinterface.h"
-#include "console/sourceconsole.h"
-
-AUTOHOOK_INIT()
-
-// really wanted to do a modular callback system here but honestly couldn't be bothered so hardcoding stuff for now: todo later
-
-// clang-format off
-AUTOHOOK_PROCADDRESS(ClientCreateInterface, client.dll, CreateInterface,
-void*, __fastcall, (const char* pName, const int* pReturnCode))
-// clang-format on
-{
- void* ret = ClientCreateInterface(pName, pReturnCode);
- spdlog::info("CreateInterface CLIENT {}", pName);
-
- if (!strcmp(pName, "GameClientExports001"))
- InitialiseConsoleOnInterfaceCreation();
-
- return ret;
-}
-
-// clang-format off
-AUTOHOOK_PROCADDRESS(ServerCreateInterface, server.dll, CreateInterface,
-void*, __fastcall, (const char* pName, const int* pReturnCode))
-// clang-format on
-{
- void* ret = ServerCreateInterface(pName, pReturnCode);
- spdlog::info("CreateInterface SERVER {}", pName);
-
- return ret;
-}
-
-// clang-format off
-AUTOHOOK_PROCADDRESS(EngineCreateInterface, engine.dll, CreateInterface,
-void*, __fastcall, (const char* pName, const int* pReturnCode))
-// clang-format on
-{
- void* ret = EngineCreateInterface(pName, pReturnCode);
- spdlog::info("CreateInterface ENGINE {}", pName);
-
- return ret;
-}
-
-// clang-format off
-ON_DLL_LOAD("client.dll", ClientInterface, (CModule module)) {AUTOHOOK_DISPATCH_MODULE(client.dll)}
-ON_DLL_LOAD("server.dll", ServerInterface, (CModule module)) {AUTOHOOK_DISPATCH_MODULE(server.dll)}
-ON_DLL_LOAD("engine.dll", EngineInterface, (CModule module)) {AUTOHOOK_DISPATCH_MODULE(engine.dll)}
-// clang-format on
diff --git a/NorthstarDLL/shared/sourceinterface.h b/NorthstarDLL/shared/sourceinterface.h
deleted file mode 100644
index 474e961b..00000000
--- a/NorthstarDLL/shared/sourceinterface.h
+++ /dev/null
@@ -1,31 +0,0 @@
-#pragma once
-#include <string>
-
-// literally just copied from ttf2sdk definition
-typedef void* (*CreateInterfaceFn)(const char* pName, int* pReturnCode);
-
-template <typename T> class SourceInterface
-{
- private:
- T* m_interface;
-
- public:
- SourceInterface(const std::string& moduleName, const std::string& interfaceName)
- {
- HMODULE handle = GetModuleHandleA(moduleName.c_str());
- CreateInterfaceFn createInterface = (CreateInterfaceFn)GetProcAddress(handle, "CreateInterface");
- m_interface = (T*)createInterface(interfaceName.c_str(), NULL);
- if (m_interface == nullptr)
- spdlog::error("Failed to call CreateInterface for %s in %s", interfaceName, moduleName);
- }
-
- T* operator->() const
- {
- return m_interface;
- }
-
- operator T*() const
- {
- return m_interface;
- }
-};