aboutsummaryrefslogtreecommitdiff
path: root/NorthstarDedicatedTest/convar.cpp
diff options
context:
space:
mode:
authorBobTheBob <32057864+BobTheBob9@users.noreply.github.com>2021-07-17 22:33:00 +0100
committerBobTheBob <32057864+BobTheBob9@users.noreply.github.com>2021-07-17 22:33:00 +0100
commitca5db71e8215a6c5660fe03088a6d7349f55f817 (patch)
tree534b79d2599475b1da3edb4f232223d9e32d3174 /NorthstarDedicatedTest/convar.cpp
parent51d3d4a40c8579e29571bc80d35bbb62fa50661b (diff)
downloadNorthstarLauncher-ca5db71e8215a6c5660fe03088a6d7349f55f817.tar.gz
NorthstarLauncher-ca5db71e8215a6c5660fe03088a6d7349f55f817.zip
add support for custom convars and concommands
Diffstat (limited to 'NorthstarDedicatedTest/convar.cpp')
-rw-r--r--NorthstarDedicatedTest/convar.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/NorthstarDedicatedTest/convar.cpp b/NorthstarDedicatedTest/convar.cpp
new file mode 100644
index 00000000..18828a27
--- /dev/null
+++ b/NorthstarDedicatedTest/convar.cpp
@@ -0,0 +1,21 @@
+#include "pch.h"
+#include "convar.h"
+
+typedef void(*ConVarConstructorType)(ConVar* newVar, const char* name, const char* defaultValue, int flags, const char* helpString);
+ConVarConstructorType conVarConstructor;
+
+ConVar* RegisterConVar(const char* name, const char* defaultValue, int flags, const char* helpString)
+{
+ spdlog::info("Registering Convar {}", name);
+
+ // no need to free this ever really, it should exist as long as game does
+ ConVar* newVar = new ConVar;
+ conVarConstructor(newVar, name, defaultValue, flags, helpString);
+
+ return newVar;
+}
+
+void InitialiseConVars(HMODULE baseAddress)
+{
+ conVarConstructor = (ConVarConstructorType)((char*)baseAddress + 0x416200);
+} \ No newline at end of file