75 lines
2.0 KiB
C++
75 lines
2.0 KiB
C++
#pragma once
|
|
|
|
//#include "SUIWnd.h"
|
|
#include <mmo/ArType.h>
|
|
|
|
class SUIDisplayInfo;
|
|
// 2010.05.10 - prodongi
|
|
class SInventorySlot;
|
|
|
|
namespace
|
|
{
|
|
const int c_nMaxCard = 6;
|
|
};
|
|
|
|
class SUICreatureWnd : public SUIWnd
|
|
{
|
|
public:
|
|
SUICreatureWnd( SGameManager* pGameManager, SUIDisplayInfo* pDisplayInfo )
|
|
: SUIWnd( pGameManager )
|
|
, m_pDisplayInfo(pDisplayInfo)
|
|
, m_nCurCreatureCount(0)
|
|
{
|
|
::memset( m_hCreatureCard, 0, sizeof(m_hCreatureCard) );
|
|
}
|
|
|
|
virtual ~SUICreatureWnd(); // 2011.05.17 - servantes
|
|
|
|
virtual void Process(DWORD dwTime);
|
|
virtual void PumpUpMessage( LPCSTR lpszControlID, DWORD nMessage, DWORD lparam, DWORD wparam );
|
|
virtual bool InitControls( KPoint kPos );
|
|
virtual void ProcMsgAtStatic( SGameMessage* pMsg );
|
|
virtual void OnNotifyUIWindowOpen( bool bOpen, bool bLimitWnd = true );
|
|
virtual bool InitData( bool bReload = false );
|
|
virtual void OnRefresh( SGameMessage* pMsg );
|
|
|
|
virtual void MovePos(int x, int y);
|
|
|
|
private:
|
|
/// 슬롯 ============================================
|
|
void EnableSlot ( int nIndex, bool bShow = true );
|
|
void RefreshSlot ();
|
|
|
|
/// 선택 처리 =======================================
|
|
void RequestSelectCreature( int nIndex );
|
|
|
|
/// 정보 ============================================
|
|
void RefreshHP ( int nIndex, int nHP, int nMaxHP );
|
|
void RefreshMP ( int nIndex, int nMP, int nMaxMP );
|
|
void RefreshExp ( int nIndex, __int64 nExp, __int64 nMaxExp );
|
|
|
|
std::string GetRemainTime( int nRemainTime );
|
|
|
|
void SetMainCreature(AR_HANDLE hMainCreture, int nForceIndex = -1); // 2011.05.19 - servantes
|
|
int findCreatureCardIndex(AR_HANDLE equipedCardHandle) const; /// 2011.06.07 - prodongi
|
|
|
|
private:
|
|
|
|
SUIDisplayInfo* m_pDisplayInfo;
|
|
|
|
int m_nSelctIndex;
|
|
|
|
AR_HANDLE m_hCreatureCard[c_nMaxCard];
|
|
bool m_bCreaturePage;
|
|
|
|
int m_nCurCreatureCount;
|
|
|
|
AR_HANDLE m_CreatureRemainTime[c_nMaxCard];
|
|
|
|
DWORD m_dwTime;
|
|
DWORD m_dwStartTime;
|
|
short int m_nProcessCount;
|
|
|
|
KUIControlStatic* m_pFormation[6]; // 크리처 주/보조 표시 바 : 0번이 메인 // 2011.04.06 - servantes
|
|
};
|