| 39 |
|
bool patch_killvtune = true; |
| 40 |
|
bool patch_getcmdline = true; |
| 41 |
|
bool patch_disablecmdline = true; |
| 42 |
+ |
bool patch_optionsvisible = true; |
| 43 |
|
|
| 44 |
|
bool patch_safeprintf = true; |
| 45 |
|
bool patch_daodandisplayenum = true; |
| 57 |
|
|
| 58 |
|
typedef int (__cdecl *CHINESEPROC)(DWORD WINAPI); |
| 59 |
|
bool patch_chinese = false; |
| 60 |
+ |
|
| 61 |
+ |
|
| 62 |
+ |
|
| 63 |
+ |
void ONICALL DDrShowResumeButton(int window, int visibility) |
| 64 |
+ |
{ |
| 65 |
+ |
if (visibility) |
| 66 |
+ |
WMrWindow_SetLocation(window, 150, 350); |
| 67 |
+ |
WMrWindow_SetVisible(window, visibility); |
| 68 |
+ |
} |
| 69 |
+ |
|
| 70 |
+ |
|
| 71 |
+ |
/* Options always visible patch */ |
| 72 |
+ |
void ONICALL DDrShowOptionsButton(int window, int visibility) |
| 73 |
+ |
{ |
| 74 |
+ |
WMrWindow_SetVisible(window, 1); |
| 75 |
+ |
} |
| 76 |
+ |
|
| 77 |
+ |
|
| 78 |
+ |
|
| 79 |
|
bool DDrPatch_Init() |
| 80 |
|
{ |
| 81 |
|
DDrStartupMessage("patching engine"); |
| 299 |
|
|
| 300 |
|
//FLATLINE? DDrPatch_MakeCall((void*)(OniExe + 0x000C26CB), FLrHook_DoorOpen); |
| 301 |
|
//FLATLINE? DDrPatch_MakeCall((void*)(OniExe + 0x000EE3CF), FLrHook_ConsoleActivate); |
| 302 |
+ |
|
| 303 |
+ |
|
| 304 |
+ |
// Fix options not visible in main menu when a game was started |
| 305 |
+ |
if(patch_optionsvisible) |
| 306 |
+ |
{ |
| 307 |
+ |
DDrPatch_MakeCall((void*)(OniExe + 0x000d2d2d), DDrShowOptionsButton); |
| 308 |
+ |
DDrPatch_MakeCall((void*)(OniExe + 0x000d2d43), DDrShowResumeButton); |
| 309 |
+ |
} |
| 310 |
+ |
|
| 311 |
|
return true; |
| 312 |
|
} |
| 313 |
|
|
| 314 |
+ |
|
| 315 |
|
enum {s_unknown, s_options, s_patch, s_bsl, s_language} ini_section; |
| 316 |
|
|
| 317 |
|
bool DDrIniCallback(char* section, bool newsection, char* name, char* value) |
| 416 |
|
patch_cheater = !_stricmp(inifile_cleanstr(value), "true"); |
| 417 |
|
else if (!_stricmp(name, "newweap")) |
| 418 |
|
patch_newweapon = !_stricmp(inifile_cleanstr(value), "true"); |
| 419 |
+ |
else if (!_stricmp(name, "optionsvisible")) |
| 420 |
+ |
patch_optionsvisible = !_stricmp(inifile_cleanstr(value), "true"); |
| 421 |
|
else |
| 422 |
|
DDrStartupMessage("unrecognised patch \"%s\"", name); |
| 423 |
|
break; |