mirror of
https://github.com/geode-sdk/geode.git
synced 2024-11-23 07:57:51 -05:00
Merge e222313f22
into e5dd2c9c40
This commit is contained in:
commit
f8a12ae8e6
1 changed files with 18 additions and 0 deletions
|
@ -138,11 +138,29 @@ void* mainTrampolineAddr;
|
|||
#include "gdTimestampMap.hpp"
|
||||
unsigned int gdTimestamp = 0;
|
||||
|
||||
// In case the game is launched from a different directory through command line
|
||||
// this function will set the current working directory to the game's directory
|
||||
// to avoid the game crashing due to not being able to find the resources
|
||||
static void fixCWD() {
|
||||
WCHAR cwd[MAX_PATH];
|
||||
DWORD size = GetModuleFileNameW(NULL, cwd, sizeof(cwd));
|
||||
if (size == sizeof(cwd)) return;
|
||||
for (int i = size - 1; i >= 0; i--) {
|
||||
if (cwd[i] == '\\') {
|
||||
cwd[i] = '\0';
|
||||
break;
|
||||
}
|
||||
}
|
||||
SetCurrentDirectoryW(cwd);
|
||||
}
|
||||
|
||||
int WINAPI gdMainHook(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPWSTR lpCmdLine, int nCmdShow) {
|
||||
// MessageBoxA(NULL, "Hello from gdMainHook!", "Hi", 0);
|
||||
|
||||
updateGeode();
|
||||
|
||||
fixCWD();
|
||||
|
||||
if (versionToTimestamp(GEODE_STR(GEODE_GD_VERSION)) > gdTimestamp) {
|
||||
console::messageBox(
|
||||
"Unable to Load Geode!",
|
||||
|
|
Loading…
Reference in a new issue