diff --git a/dist/popnhax/popnhax.xml b/dist/popnhax/popnhax.xml index 524f003..ea8830a 100644 --- a/dist/popnhax/popnhax.xml +++ b/dist/popnhax/popnhax.xml @@ -104,6 +104,8 @@ 0 + + 0 0 diff --git a/popnhax/config.h b/popnhax/config.h index 50d16eb..df8c72b 100644 --- a/popnhax/config.h +++ b/popnhax/config.h @@ -51,6 +51,7 @@ struct popnhax_config { uint8_t survival_gauge; bool survival_iidx; bool survival_spicy; + int8_t base_offset; }; #endif diff --git a/popnhax/dllmain.cc b/popnhax/dllmain.cc index 58346b4..cff4bb8 100644 --- a/popnhax/dllmain.cc +++ b/popnhax/dllmain.cc @@ -182,6 +182,8 @@ PSMAP_MEMBER_REQ(PSMAP_PROPERTY_TYPE_U8, struct popnhax_config, hispeed_auto, "/popnhax/hispeed_auto") PSMAP_MEMBER_REQ(PSMAP_PROPERTY_TYPE_U16, struct popnhax_config, hispeed_default_bpm, "/popnhax/hispeed_default_bpm") +PSMAP_MEMBER_REQ(PSMAP_PROPERTY_TYPE_S8, struct popnhax_config, base_offset, + "/popnhax/base_offset") PSMAP_END enum BufferIndexes { @@ -5485,8 +5487,12 @@ BOOL APIENTRY DllMain(HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserv patch_disable_keysound(); } + if (config.base_offset){ + patch_add_to_base_offset(config.base_offset); + } + if (config.keysound_offset){ - /* must be called _after_ force_hd_timing */ + /* must be called _after_ force_hd_timing and base_offset */ patch_keysound_offset(config.keysound_offset); }