diff --git a/Source/Client/Session.h b/Source/Client/Session.h index 6259b45e..d26dff66 100644 --- a/Source/Client/Session.h +++ b/Source/Client/Session.h @@ -548,6 +548,7 @@ public: return reinterpret_cast(reinterpret_cast(this) + offsetof(CSession, unknown_06EB))[index]; } void ResetItems2B50(); + void ResetMercenaryStats(); const char* GetPetAccActName(int id); int GetPetFood(int job); std::string GetMonsterActName(int job); diff --git a/Source/Contents/ClientState.cpp b/Source/Contents/ClientState.cpp index 0c74991f..4e5451d5 100644 --- a/Source/Contents/ClientState.cpp +++ b/Source/Contents/ClientState.cpp @@ -1487,3 +1487,14 @@ std::uint32_t CSession::ReadReplayCharacter(const std::vector& da return offset; } + +// OFFSET: 0x00DE93F0 +// FUNCTION: fn_23500 +void CSession::ResetMercenaryStats() { + this->unknown_56A4 = 0; + this->unknown_56A8 = 0; + this->unknown_56AC = 0; + this->unknown_5698 = 0; + this->unknown_569C = 0; + this->unknown_56A0 = 0; +} diff --git a/Source/UI/Window/UIMerInfoWnd.h b/Source/UI/Window/UIMerInfoWnd.h index e285e899..2928adc3 100644 --- a/Source/UI/Window/UIMerInfoWnd.h +++ b/Source/UI/Window/UIMerInfoWnd.h @@ -5,17 +5,20 @@ #include "Contents/UserData/NormalItemSlots.h" struct UIButtonContext; +struct WindowResponseRecorder; class UIMerInfoWnd : public UIFrameWnd { public: void Slot11() override; void Paint() override; + int SendMsg(UIWindow* sender, int message, std::intptr_t a, std::intptr_t b, std::intptr_t c, std::intptr_t d) override; /* 00B4 */ unsigned char unknown_00B4[0x10]; /* 00C4 */ MerInfoWndInfo* saved; protected: UIButtonContext* m_controls; + WindowResponseRecorder* m_recorder; }; #endif diff --git a/Source/UI/Window/UIMessageBox.cpp b/Source/UI/Window/UIMessageBox.cpp index b2ee1bf5..a6f48e64 100644 --- a/Source/UI/Window/UIMessageBox.cpp +++ b/Source/UI/Window/UIMessageBox.cpp @@ -22,6 +22,7 @@ #include "UI/Window/WindowBorder.h" #include "UI/Window/UIWindowMgr.h" #include "UI/Window/UIMerInfoWnd.h" +#include "UI/Window/WindowDialogs.h" #include "UI/Window/UIMessageBoxAutoreturn.h" #include "UI/Window/UIMonsterInfoWnd.h" #include "UI/Window/UITalkboxTrapInputWnd.h" @@ -699,6 +700,8 @@ void UIMerInfoWnd::Slot11() { } } +// OFFSET: 0x008BF720 + // OFFSET: 0x008C3670 // FUNCTION: fn_11828 void UIPetInfoWnd::Slot11() {