diff options
Diffstat (limited to 'NorthstarDLL/scriptutility.cpp')
-rw-r--r-- | NorthstarDLL/scriptutility.cpp | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/NorthstarDLL/scriptutility.cpp b/NorthstarDLL/scriptutility.cpp new file mode 100644 index 00000000..98c6f3a3 --- /dev/null +++ b/NorthstarDLL/scriptutility.cpp @@ -0,0 +1,29 @@ +#include "pch.h" +#include "scriptutility.h" +#include "squirrel.h" + +template <ScriptContext context> SQRESULT SQ_StringToAsset(void* sqvm) +{ + if (context == ScriptContext::SERVER) + { + const char* asset = ServerSq_getstring(sqvm, 1); + ServerSq_pushAsset(sqvm, asset, -1); + } + else + { + const char* asset = ClientSq_getstring(sqvm, 1); + ClientSq_pushAsset(sqvm, asset, -1); + } + return SQRESULT_NOTNULL; +} + +void InitialiseClientSquirrelUtilityFunctions(HMODULE baseAddress) +{ + g_ClientSquirrelManager->AddFuncRegistration("asset", "StringToAsset", "string assetName", "", SQ_StringToAsset<ScriptContext::CLIENT>); + g_UISquirrelManager->AddFuncRegistration("asset", "StringToAsset", "string assetName", "", SQ_StringToAsset<ScriptContext::UI>); +} + +void InitialiseServerSquirrelUtilityFunctions(HMODULE baseAddress) +{ + g_ServerSquirrelManager->AddFuncRegistration("asset", "StringToAsset", "string assetName", "", SQ_StringToAsset<ScriptContext::SERVER>); +}
\ No newline at end of file |