--- Daodan/src/Daodan.c 2009/10/17 11:49:49 466 +++ Daodan/src/Daodan.c 2009/10/18 02:26:30 468 @@ -53,6 +53,9 @@ bool patch_bsl = true; bool patch_cheater = true; bool opt_usedaodanbsl = true; +bool opt_border = true; +bool opt_shadow = true; +bool opt_topmost = false; bool DDrPatch_Init() { @@ -212,6 +215,14 @@ bool DDrIniCallback(char* section, bool case s_options: if (!stricmp(name, "usedaodanbsl")) 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")) + patch_multibyte = !stricmp(inifile_cleanstr(value), "true"); else if (!stricmp(name, "debug")) AKgDebug_DebugMaps = !stricmp(inifile_cleanstr(value), "true"); else if (!stricmp(name, "debugfiles")) @@ -449,7 +460,7 @@ void __cdecl DDrMain(int argc, char* arg *option = '\0'; falseoption = (option[1] == 'n' || option[1] == 'N') && (option[2] = 'o' || option[2] == 'O'); if (i < (argc - 1) && argv[i + 1][0] != '-') - DDrIniCallback(section, true, option + (falseoption ? 3 : 1), argv[++i]); + DDrIniCallback(section, true, option + 1, argv[++i]); else DDrIniCallback(section, true, option + (falseoption ? 3 : 1), (falseoption ? "false" : "true")); *option = '.'; @@ -459,7 +470,7 @@ void __cdecl DDrMain(int argc, char* arg falseoption = (section[0] == 'n' || section[0] == 'N') && (section[1] = 'o' || section[1] == 'O'); ini_section = s_options; if (i < (argc - 1) && argv[i + 1][0] != '-') - DDrIniCallback(NULL, false, section + (falseoption ? 2 : 0), argv[++i]); + DDrIniCallback(NULL, false, section, argv[++i]); else DDrIniCallback(NULL, false, section + (falseoption ? 2 : 0), (falseoption ? "false" : "true")); }