--- Daodan/src/Daodan.c 2013/03/04 15:52:19 689 +++ Daodan/src/Daodan.c 2013/03/07 17:26:13 692 @@ -1,3 +1,4 @@ +#include #include #include "Daodan.h" @@ -11,14 +12,11 @@ #include "Daodan_WindowHack.h" #include "Oni.h" -#include "Oni_Persistence.h" -#include "BFW_Utility.h" +#include "Oni_GL.h" +#include "Daodan_GL.h" -#include "oni_gl.h" -#include "daodan_gl.h" - -#include "inifile.h" +#include "Inifile_Reader.h" HMODULE DDrDLLModule; HMODULE DDrONiModule; @@ -54,7 +52,6 @@ bool patch_cheater = true; bool patch_newweapon = true; bool opt_usedaodanbsl = true; bool opt_border = true; -bool opt_shadow = false; bool opt_topmost = false; typedef int (__cdecl *CHINESEPROC)(DWORD WINAPI); @@ -143,6 +140,7 @@ bool DDrPatch_Init() // Disable UUrPlatform_Initalize/Terminate, this enables the Alt-Tab and the Windows key but has the possible side effect of allowing the screensaver to enable itself in-game. if (patch_alttab) { + // 0xC3 = ret, so makes those functions just have a "ret" instruction at their start DDrPatch_Byte ((char*)UUrPlatform_Initialize, 0xC3); DDrPatch_Byte ((char*)UUrPlatform_Terminate, 0xC3); } @@ -312,8 +310,6 @@ bool DDrIniCallback(char* section, bool opt_usedaodanbsl = !_stricmp(inifile_cleanstr(value), "true"); else if (!_stricmp(name, "border")) opt_border = !_stricmp(inifile_cleanstr(value), "true"); - else if (!_stricmp(name, "shadow")) - opt_shadow = !_stricmp(inifile_cleanstr(value), "true"); else if (!_stricmp(name, "topmost")) opt_topmost = !_stricmp(inifile_cleanstr(value), "true"); else if (!_stricmp(name, "multibyte")) @@ -330,8 +326,6 @@ bool DDrIniCallback(char* section, bool opt_sound = !_stricmp(inifile_cleanstr(value), "true"); else if (!_stricmp(name, "switch")) M3gResolutionSwitch = !_stricmp(inifile_cleanstr(value), "true"); - //else if (!_stricmp(name, "devmode")) - //turn_dev_mode_on = !_stricmp(inifile_cleanstr(value), "true"); else DDrStartupMessage("unrecognised option \"%s\"", name); break; @@ -588,7 +582,10 @@ void __cdecl DDrMain(int argc, char* arg DDrStartupMessage("daodan attached!"); + // Tell Oni to not load non levelX_final-files by default: opt_ignore_private_data = false; + + // Enable sound by default: opt_sound = true; DDrConfig(); @@ -679,9 +676,7 @@ void __cdecl DDrMain(int argc, char* arg DDrPatch_MakeJump((void*)(OniExe + 0x0010f021), (void*)DDrCheater_LevelLoad); } - //DDrPatch_MakeJump((void*)(OniExe + 0x000378c0, (void*)DDrException); DDrPatch_MakeJump((void*)(OniExe + 0x000245A0), (void*)DDrPrintWarning); - //init_daodan_gl(); ONiMain(argc, argv); }