diff options
author | Magnus Larsen <golgothasTerror101@gmail.com> | 2021-07-10 17:56:28 +0200 |
---|---|---|
committer | Magnus Larsen <golgothasTerror101@gmail.com> | 2021-07-10 18:34:17 +0200 |
commit | 33c45e4ae0f10a4b296e520d3691b47bc801ea73 (patch) | |
tree | 6591d4f6e541ed89a314eed3168fb785b0778a8a /src/control | |
parent | readme: fix lto option (diff) | |
download | re3-33c45e4ae0f10a4b296e520d3691b47bc801ea73.tar re3-33c45e4ae0f10a4b296e520d3691b47bc801ea73.tar.gz re3-33c45e4ae0f10a4b296e520d3691b47bc801ea73.tar.bz2 re3-33c45e4ae0f10a4b296e520d3691b47bc801ea73.tar.lz re3-33c45e4ae0f10a4b296e520d3691b47bc801ea73.tar.xz re3-33c45e4ae0f10a4b296e520d3691b47bc801ea73.tar.zst re3-33c45e4ae0f10a4b296e520d3691b47bc801ea73.zip |
Diffstat (limited to 'src/control')
-rw-r--r-- | src/control/Script.cpp | 24 | ||||
-rw-r--r-- | src/control/Script.h | 1 | ||||
-rw-r--r-- | src/control/Script6.cpp | 4 |
3 files changed, 16 insertions, 13 deletions
diff --git a/src/control/Script.cpp b/src/control/Script.cpp index e06acdc3..09891765 100644 --- a/src/control/Script.cpp +++ b/src/control/Script.cpp @@ -1771,20 +1771,12 @@ int scriptToLoad = 0; int open_script() { - // glfwGetKey doesn't work because of CGame::Initialise is blocking - CPad::UpdatePads(); - if (CPad::GetPad(0)->GetChar('G')) - scriptToLoad = 0; - if (CPad::GetPad(0)->GetChar('R')) - scriptToLoad = 1; - if (CPad::GetPad(0)->GetChar('D')) - scriptToLoad = 2; switch (scriptToLoad) { - case 0: return CFileMgr::OpenFile("main.scm", "rb"); - case 1: return CFileMgr::OpenFile("main_freeroam.scm", "rb"); - case 2: return CFileMgr::OpenFile("main_d.scm", "rb"); + case 0: return CFileMgr::OpenFile("data\\main.scm", "rb"); + case 1: return CFileMgr::OpenFile("data\\main_freeroam.scm", "rb"); + case 2: return CFileMgr::OpenFile("data\\main_d.scm", "rb"); } - return CFileMgr::OpenFile("main.scm", "rb"); + return CFileMgr::OpenFile("data\\main.scm", "rb"); } #endif @@ -1800,10 +1792,16 @@ void CTheScripts::Init() MissionCleanUp.Init(); UpsideDownCars.Init(); StuckCars.Init(); - CFileMgr::SetDir("data"); #ifdef USE_DEBUG_SCRIPT_LOADER + // glfwGetKey doesn't work because of CGame::Initialise is blocking + CPad::UpdatePads(); + if(CPad::GetPad(0)->GetChar('G')) scriptToLoad = 0; + if(CPad::GetPad(0)->GetChar('R')) scriptToLoad = 1; + if(CPad::GetPad(0)->GetChar('D')) scriptToLoad = 2; + int mainf = open_script(); #else + CFileMgr::SetDir("data"); int mainf = CFileMgr::OpenFile("main.scm", "rb"); #endif CFileMgr::Read(mainf, (char*)ScriptSpace, SIZE_MAIN_SCRIPT); diff --git a/src/control/Script.h b/src/control/Script.h index 5682024b..cefd6747 100644 --- a/src/control/Script.h +++ b/src/control/Script.h @@ -591,5 +591,6 @@ void RetryMission(int, int); #endif #ifdef USE_DEBUG_SCRIPT_LOADER +int open_script(); extern int scriptToLoad; #endif
\ No newline at end of file diff --git a/src/control/Script6.cpp b/src/control/Script6.cpp index 31be6987..c9b2b070 100644 --- a/src/control/Script6.cpp +++ b/src/control/Script6.cpp @@ -305,7 +305,11 @@ int8 CRunningScript::ProcessCommands1000To1099(int32 command) CTimer::Suspend(); int offset = CTheScripts::MultiScriptArray[ScriptParams[0]]; CFileMgr::ChangeDir("\\"); +#ifdef USE_DEBUG_SCRIPT_LOADER + int handle = open_script(); +#else int handle = CFileMgr::OpenFile("data\\main.scm", "rb"); +#endif CFileMgr::Seek(handle, offset, 0); CFileMgr::Read(handle, (const char*)&CTheScripts::ScriptSpace[SIZE_MAIN_SCRIPT], SIZE_MISSION_SCRIPT); CFileMgr::CloseFile(handle); |