فهرست منبع

Merge pull request #11626 from german77/mii-fix

service: mii: Fix reported bugs
liamwhite 2 سال پیش
والد
کامیت
257a6aa2ba

+ 2 - 0
src/core/hle/service/am/applets/applet_mii_edit.cpp

@@ -145,6 +145,8 @@ void MiiEdit::MiiEditOutput(MiiEditResult result, s32 index) {
         .index{index},
         .index{index},
     };
     };
 
 
+    LOG_INFO(Input, "called, result={}, index={}", result, index);
+
     std::vector<u8> out_data(sizeof(MiiEditAppletOutput));
     std::vector<u8> out_data(sizeof(MiiEditAppletOutput));
     std::memcpy(out_data.data(), &applet_output, sizeof(MiiEditAppletOutput));
     std::memcpy(out_data.data(), &applet_output, sizeof(MiiEditAppletOutput));
 
 

+ 1 - 1
src/core/hle/service/mii/mii_database_manager.cpp

@@ -168,7 +168,7 @@ Result DatabaseManager::FindIndex(s32& out_index, const Common::UUID& create_id,
         return ResultSuccess;
         return ResultSuccess;
     }
     }
 
 
-    for (std::size_t i = 0; i <= index; ++i) {
+    for (std::size_t i = 0; i < index; ++i) {
         if (database.Get(i).IsSpecial()) {
         if (database.Get(i).IsSpecial()) {
             continue;
             continue;
         }
         }

+ 1 - 1
src/core/hle/service/mii/types/char_info.cpp

@@ -37,7 +37,7 @@ void CharInfo::SetFromStoreData(const StoreData& store_data) {
     eyebrow_aspect = store_data.GetEyebrowAspect();
     eyebrow_aspect = store_data.GetEyebrowAspect();
     eyebrow_rotate = store_data.GetEyebrowRotate();
     eyebrow_rotate = store_data.GetEyebrowRotate();
     eyebrow_x = store_data.GetEyebrowX();
     eyebrow_x = store_data.GetEyebrowX();
-    eyebrow_y = store_data.GetEyebrowY();
+    eyebrow_y = store_data.GetEyebrowY() + 3;
     nose_type = store_data.GetNoseType();
     nose_type = store_data.GetNoseType();
     nose_scale = store_data.GetNoseScale();
     nose_scale = store_data.GetNoseScale();
     nose_y = store_data.GetNoseY();
     nose_y = store_data.GetNoseY();

+ 1 - 1
src/core/hle/service/mii/types/core_data.cpp

@@ -113,7 +113,7 @@ void CoreData::BuildRandom(Age age, Gender gender, Race race) {
             .values[MiiUtil::GetRandomValue<std::size_t>(eyebrow_type_info.values_count)]);
             .values[MiiUtil::GetRandomValue<std::size_t>(eyebrow_type_info.values_count)]);
 
 
     const auto eyebrow_rotate_1{race == Race::Asian ? 6 : 0};
     const auto eyebrow_rotate_1{race == Race::Asian ? 6 : 0};
-    const auto eyebrow_y{race == Race::Asian ? 9 : 10};
+    const auto eyebrow_y{race == Race::Asian ? 6 : 7};
     const auto eyebrow_rotate_offset{32 - RawData::EyebrowRotateLookup[eyebrow_rotate_1] + 6};
     const auto eyebrow_rotate_offset{32 - RawData::EyebrowRotateLookup[eyebrow_rotate_1] + 6};
     const auto eyebrow_rotate{
     const auto eyebrow_rotate{
         32 - RawData::EyebrowRotateLookup[static_cast<std::size_t>(data.eyebrow_type.Value())]};
         32 - RawData::EyebrowRotateLookup[static_cast<std::size_t>(data.eyebrow_type.Value())]};

+ 1 - 1
src/core/hle/service/nfc/common/device.cpp

@@ -1374,7 +1374,7 @@ NFP::AmiiboName NfcDevice::GetAmiiboName(const NFP::AmiiboSettings& settings) co
 
 
     // Convert from utf16 to utf8
     // Convert from utf16 to utf8
     const auto amiibo_name_utf8 = Common::UTF16ToUTF8(settings_amiibo_name.data());
     const auto amiibo_name_utf8 = Common::UTF16ToUTF8(settings_amiibo_name.data());
-    memcpy(amiibo_name.data(), amiibo_name_utf8.data(), amiibo_name_utf8.size() - 1);
+    memcpy(amiibo_name.data(), amiibo_name_utf8.data(), amiibo_name_utf8.size());
 
 
     return amiibo_name;
     return amiibo_name;
 }
 }