Files
Leviathan/Client/Game/game/Interface/MainMenu/SUIMainMenuWnd.h
T
2026-06-01 12:46:52 +02:00

51 lines
1.4 KiB
C++

#pragma once
//#include "SUIWnd.h"
//#include "Util.h"
class SUIDisplayInfo;
class SUIMainMenuWnd : public SUIWnd
{
public:
SUIMainMenuWnd( SGameManager* pGameManager, const SUIDisplayInfo* pDisplayInfo )
: SUIWnd( pGameManager )
, m_pDisplayInfo( pDisplayInfo ),
m_dwChangePrevTime(0) { }
virtual void PumpUpMessage( LPCSTR lpszControlID, DWORD nMessage, DWORD lparam, DWORD wparam );
virtual bool InitControls( KPoint kPos );
virtual void ProcMsgAtStatic( SGameMessage* pMsg );
virtual void OnPosChangeNofity(int XOffset, int YOffset);
virtual DWORD OnMouseMessage(DWORD dwMessage, int x, int y);
private:
void setTooltip();
void showMenu(int wndId, bool show);
// AziaMafia ON/OFF Arena and Huntaholic
void showArenaButton(bool show);
void showInstanceButton(bool show);
void showExitButton(bool show);
void enableExitButton(bool enable);
bool checkValidArenaJoinSituationAtEntrance();
int calcInstanceArenaStatus();
void setInstanceArenaStatus(int iasStatus);
/// 기존의 status와 iasStatus가 같은지 체크하지 않는다
void setInstanceArenaButtonStatus(int iasStatus);
void initMenuButtonStatus();
void clickExitButton();
void updateInstanceArenaStatus();
private:
const SUIDisplayInfo* m_pDisplayInfo;
DWORD m_dwChangePrevTime;
KUIControl* m_arenaButton;
KUIControlStatic* m_arenaText;
KUIControl* m_instanceButton;
KUIControl* m_exitButton;
KUIControlStatic* m_exitText;
};