diff --git a/src/d/d_menu_letter.cpp b/src/d/d_menu_letter.cpp index a0155ef6b4..589b2553c0 100644 --- a/src/d/d_menu_letter.cpp +++ b/src/d/d_menu_letter.cpp @@ -17,6 +17,10 @@ #include "d/d_msg_scrn_arrow.h" #include "d/d_lib.h" +#ifdef TARGET_PC +#include "dusk/achievements.h" +#endif + #if VERSION == VERSION_GCN_JPN #define D_MENU_LETTER_LINE_MAX 9 #else @@ -514,6 +518,10 @@ void dMenu_Letter_c::read_open_init() { setAButtonString(0); setBButtonString(0); mpBlackTex->setAlpha(0); + + #ifdef TARGET_PC + dusk::AchievementSystem::get().signal("open_letter"); + #endif } void dMenu_Letter_c::read_open_move() { diff --git a/src/dusk/achievements.cpp b/src/dusk/achievements.cpp index 58e99a3413..88dc43910c 100644 --- a/src/dusk/achievements.cpp +++ b/src/dusk/achievements.cpp @@ -376,6 +376,24 @@ std::vector AchievementSystem::makeEntries() { } }, {} + }, + { + { + "email-me", + "Email Me", + "Read a letter during the Dark Beast Ganon fight.", + AchievementCategory::Misc, + false, 0, 0, false + }, + [](Achievement& a, json&) { + + void* dbgExists = fopAcM_SearchByName(fpcNm_B_MGN_e); + if(dbgExists && AchievementSystem::get().hasSignal("open_letter")) { + a.progress = 1; + } + + }, + {} } }; }