diff --git a/data/uking_functions.csv b/data/uking_functions.csv index a76e285c..12c0ab3b 100644 --- a/data/uking_functions.csv +++ b/data/uking_functions.csv @@ -86097,7 +86097,7 @@ 0x0000007101014450,sub_7101014450,24, 0x0000007101014468,sub_7101014468,52, 0x000000710101449c,registerBmscdefEntryFactory,392, -0x0000007101014624,ResourceBmscdef::doCreate,1716,_ZN4ksys3snd15MusicDefinition9doCreate_EPhjPN4sead4HeapE! +0x0000007101014624,ResourceBmscdef::doCreate,1716,_ZN4ksys3snd15MusicDefinition9doCreate_EPhjPN4sead4HeapE 0x0000007101014cd8,sub_7101014CD8,324,_ZNK4ksys3snd15MusicDefinition19getMusicIndexByNameERKN4sead14SafeStringBaseIcEE 0x0000007101014e1c,sub_7101014E1C,364,_ZNK4ksys3snd15MusicDefinition22getMusicCategoryByNameERKN4sead14SafeStringBaseIcEE 0x0000007101014f88,sub_7101014F88,316,_ZNK4ksys3snd15MusicDefinition30getPriorityValueByCategoryNameERKN4sead14SafeStringBaseIcEE diff --git a/src/KingSystem/Sound/sndMusicDefinition.cpp b/src/KingSystem/Sound/sndMusicDefinition.cpp index 824a9a5d..8e600ebb 100644 --- a/src/KingSystem/Sound/sndMusicDefinition.cpp +++ b/src/KingSystem/Sound/sndMusicDefinition.cpp @@ -4,30 +4,25 @@ namespace ksys::snd { static sead::SafeString str_EventBgm = "EventBgm"; -// NON_MATCHING: two bigger diffs cause a different regalloc -// 1. During `SafeString` generation of line -// `auto categoryDefines_list = agl::utl::getResParameterList(root_list, "CategoryDefines");` -// 2. Mis-ordered operations around -// `addList(&mCategoryList, "CategoryDefines");` void MusicDefinition::doCreate_(u8* data, u32 file_size, sead::Heap* heap) { auto archive = agl::utl::ResParameterArchive(data); auto root_list = archive.getRootList(); - auto musicDefines_list = agl::utl::getResParameterList(root_list, "MusicDefines"); - if (musicDefines_list) { - s32 musicDefines_list_length = musicDefines_list.getResParameterObjNum(); - if (musicDefines_list_length == 0) { + auto MusicDefines = agl::utl::getResParameterList(root_list, "MusicDefines"); + if (MusicDefines) { + s32 num_music_defines = MusicDefines.getResParameterObjNum(); + if (num_music_defines == 0) { return; } - mMusicDefines.allocBufferAssert(musicDefines_list_length, heap); + mMusicDefines.allocBufferAssert(num_music_defines, heap); for (auto it = mMusicDefines.begin(), end = mMusicDefines.end(); it != end; ++it) { auto param_obj = &it->param_obj; - it->name.init("", "Name", param_obj); - it->category.init("", "Category", param_obj); - it->volume.init(1, "Volume", param_obj); - it->is_enable_weather_filter.init(false, "IsEnableWeatherFilter", param_obj); - it->is_indoor_ducking.init(false, "IsIndoorDucking", param_obj); + it->name.init("", "Name", "", param_obj); + it->category.init("", "Category", "", param_obj); + it->volume.init(1, "Volume", "", param_obj); + it->is_enable_weather_filter.init(false, "IsEnableWeatherFilter", "", param_obj); + it->is_indoor_ducking.init(false, "IsIndoorDucking", "", param_obj); mMusicList.addObj(param_obj, sead::FormatFixedSafeString<32>("MusicDefine_%d", it.getIndex())); @@ -36,16 +31,16 @@ void MusicDefinition::doCreate_(u8* data, u32 file_size, sead::Heap* heap) { addList(&mMusicList, "MusicDefines"); } - auto categoryDefines_list = agl::utl::getResParameterList(root_list, "CategoryDefines"); - if (categoryDefines_list) { - s32 categoryDefines_list_length = categoryDefines_list.getResParameterObjNum(); - if (categoryDefines_list_length == 0) + auto CategoryDefines = agl::utl::getResParameterList(root_list, "CategoryDefines"); + if (CategoryDefines) { + s32 num_category_defines = CategoryDefines.getResParameterObjNum(); + if (num_category_defines == 0) return; - mCategoryDefines.allocBufferAssert(categoryDefines_list_length, heap); + mCategoryDefines.allocBufferAssert(num_category_defines, heap); for (auto it = mCategoryDefines.begin(), end = mCategoryDefines.end(); it != end; ++it) { - it->name.init("", "Name", &it->param_obj); - it->priority_value.init(0, "PriorityValue", &it->param_obj); + it->name.init("", "Name", "", &it->param_obj); + it->priority_value.init(0, "PriorityValue", "", &it->param_obj); mCategoryList.addObj(&it->param_obj, sead::FormatFixedSafeString<32>( "CategoryDefine_%d", it.getIndex())); @@ -96,4 +91,4 @@ int MusicDefinition::getPriorityValueByCategoryName(const sead::SafeString& name return 0; } -} // namespace ksys::snd \ No newline at end of file +} // namespace ksys::snd