diff --git a/inc/dd.h b/inc/dd.h index 0a85966..9fdab93 100644 --- a/inc/dd.h +++ b/inc/dd.h @@ -161,6 +161,7 @@ typedef struct CNCDDRAW BOOL armadahack; BOOL tshack; BOOL infantryhack; + BOOL stronghold_hack; int maxgameticks; BOOL alt_key_down; BOOL releasealt; diff --git a/src/config.c b/src/config.c index 1802b23..8ef89b1 100644 --- a/src/config.c +++ b/src/config.c @@ -57,6 +57,7 @@ void cfg_load() g_ddraw->armadahack = cfg_get_bool("armadahack", FALSE); g_ddraw->tshack = cfg_get_bool("tshack", FALSE); g_ddraw->infantryhack = cfg_get_bool("infantryhack", FALSE); + g_ddraw->stronghold_hack = cfg_get_bool("stronghold_hack", FALSE); if (cfg_get_bool("game_handles_close", FALSE) || g_ddraw->infantryhack) { @@ -935,20 +936,23 @@ static void cfg_create_ini() "[StarCraft]\n" "game_handles_close=true\n" "\n" - "; Stronghold Crusader HD\n" - "[Stronghold Crusader]\n" - "adjmouse=true\n" - "\n" "; Space Rangers\n" "[Rangers]\n" "hook_peekmessage=true\n" "\n" + "; Stronghold Crusader HD\n" + "[Stronghold Crusader]\n" + "stronghold_hack=true\n" + "adjmouse=true\n" + "\n" "; Stronghold Crusader Extreme HD\n" "[Stronghold_Crusader_Extreme]\n" + "stronghold_hack=true\n" "adjmouse=true\n" "\n" "; Stronghold HD\n" "[Stronghold]\n" + "stronghold_hack=true\n" "adjmouse=true\n" "\n" "; Sim City 3000\n" diff --git a/src/dd.c b/src/dd.c index 1e4aa48..2eb5e73 100644 --- a/src/dd.c +++ b/src/dd.c @@ -44,6 +44,11 @@ HRESULT dd_EnumDisplayModes( max_h = reg_m.dmPelsHeight; } + if (g_ddraw->stronghold_hack && max_w && (max_w % 8)) + { + while (--max_w % 8); + } + SIZE resolutions[] = { { 320, 200 },