Fakematch d_ovlp_fade2 weak order

fixes #667
This commit is contained in:
LagoLunatic 2024-07-14 12:09:08 -04:00
parent c81caca6a2
commit 2a958f1ae8
2 changed files with 12 additions and 1 deletions

View File

@ -524,7 +524,7 @@ config.libs = [
Object(NonMatching, "d/d_operate_wind.cpp"),
Object(Matching, "d/d_metronome.cpp"),
Object(Matching, "d/d_ovlp_fade.cpp"),
Object(NonMatching, "d/d_ovlp_fade2.cpp"),
Object(Matching, "d/d_ovlp_fade2.cpp"),
Object(NonMatching, "d/d_ovlp_fade3.cpp"),
Object(NonMatching, "d/d_ovlp_fade4.cpp"),
Object(NonMatching, "d/d_picture_box.cpp"),

View File

@ -236,6 +236,15 @@ static s32 dOvlpFd2_Create(void* i_this) {
return cPhs_COMPLEATE_e;
}
// Fakematch. Manually define this template function here to make it non-weak, fixing the weak function ordering.
template <>
s8 cLib_calcTimer<s8>(s8* value) {
if (*(s8*)value != 0) {
*value = *value - 1;
}
return *value;
}
overlap_method_class l_dOvlpFd2_Method = {
(process_method_func)dOvlpFd2_Create,
(process_method_func)dOvlpFd2_Delete,
@ -258,6 +267,7 @@ overlap_process_profile_definition g_profile_OVERLAP2 = {
&l_dOvlpFd2_Method,
};
#if VERSION != VERSION_JPN
overlap_process_profile_definition g_profile_OVERLAP3 = {
fpcLy_ROOT_e,
2,
@ -271,3 +281,4 @@ overlap_process_profile_definition g_profile_OVERLAP3 = {
0x1E4,
&l_dOvlpFd2_Method,
};
#endif