151 lines
3.3 KiB
C++
151 lines
3.3 KiB
C++
//=======================================================================================================================
|
|
/// SummonTargetDialog
|
|
/**
|
|
@author
|
|
±èÁö¿Ï
|
|
@since
|
|
|
|
@remarks
|
|
-
|
|
*/
|
|
|
|
|
|
#pragma once
|
|
|
|
#include "uiBase.h"
|
|
|
|
#define MAX_SUMMON_COMMAND 6
|
|
|
|
class Object;
|
|
class Character;
|
|
class InterfaceManager;
|
|
|
|
class SummonTargetDialog :
|
|
public uiBase
|
|
{
|
|
|
|
#ifdef _NA_000000_20130114_RENEWER_UI
|
|
public:
|
|
struct stTARGETOVER_
|
|
{
|
|
RECT image_source_;
|
|
POSTYPE screen_position;
|
|
bool is_over_mouse;
|
|
};
|
|
#endif
|
|
|
|
public:
|
|
enum PACKET_STATUS_SUMMONTARGET
|
|
{
|
|
PACKET_STATUS_SUMMONTARGET_NONE = 0,
|
|
PACKET_STATUS_SUMMONTARGET_ATTACK = 1,
|
|
PACKET_STATUS_SUMMONTARGET_FOLLOW = (2 << 1),
|
|
PACKET_STATUS_SUMMONTARGET_DELEGATE_ATTACK = (2 << 2),
|
|
PACKET_STATUS_SUMMONTARGET_DELEGATE_DEFENSE = (2 << 3),
|
|
PACKET_STATUS_SUMMONTARGET_DESTROY = (2 << 4),
|
|
PACKET_STATUS_SUMMONTARGET_NON_PK_ATTACK = (2 << 5),
|
|
};
|
|
|
|
enum eSUMMON_TARGET_POS
|
|
{
|
|
SUMMON_TARGET_PIC_GAUGE = 0,
|
|
SUMMON_TARGET_PIC_MP_GAUGE,
|
|
SUMMON_TARGET_SKILL_EFFECT1,
|
|
SUMMON_TARGET_SKILL_EFFECT2,
|
|
SUMMON_TARGET_SKILL_EFFECT3,
|
|
SUMMON_TARGET_SKILL_EFFECT4,
|
|
SUMMON_TARGET_SKILL_EFFECT5,
|
|
SUMMON_TARGET_SKILL_EFFECT6,
|
|
SUMMON_TARGET_SKILL_EFFECT7,
|
|
SUMMON_TARGET_SKILL_EFFECT8,
|
|
SUMMON_TARGET_SKILL_EFFECT9,
|
|
SUMMON_TARGET_SKILL_EFFECT10,
|
|
SUMMON_TARGET_TEXT_INFO,
|
|
SUMMON_TARGET_PIC_MON,
|
|
SUMMON_TARGET_CHECK_ATTACK,
|
|
SUMMON_TARGET_CHECK_FOLLOW,
|
|
SUMMON_TARGET_CHECK_DELEGATE_ATTACK,
|
|
SUMMON_TARGET_CHECK_DELEGATE_DEFENSE,
|
|
SUMMON_TARGET_CHECK_DESTROY,
|
|
SUMMON_TARGET_CHECK_NON_PK_ATTACK,
|
|
SUMMON_TARGET_TEXT_INFO2,
|
|
|
|
Dialog_Max
|
|
};
|
|
|
|
#define MAX_SUMMON_TARGETDLG_SKILL_EFFECT 10
|
|
|
|
public:
|
|
SummonTargetDialog(InterfaceManager* pUIMan);
|
|
virtual ~SummonTargetDialog(void);
|
|
|
|
VOID Init( CDrawBase * pDrawBase );
|
|
virtual VOID Release();
|
|
|
|
virtual VOID MessageProc( SI_MESSAGE * pMessage );
|
|
virtual VOID NetworkProc( MSG_BASE * pMsg );
|
|
|
|
virtual VOID OnUpdateSolarDialog();
|
|
virtual VOID OnRenderSolarDialog();
|
|
|
|
VOID SetTargetKey(DWORD dwTargetKEY);
|
|
DWORD GetTargetKey();
|
|
|
|
BYTE ConvertCommandPos(BYTE bCommand);
|
|
void ResetOhterCheckButton(BYTE bCommand);
|
|
void ResetCheckButton(BYTE bCommand);
|
|
|
|
BOOL CommandSummonMoster(eSUMMON_TARGET_POS pos);
|
|
|
|
BOOL SendSummonCommandSyn( BYTE CommandType );
|
|
|
|
void UpdateStatusIcon();
|
|
virtual void MoveDefaultWindowPos();
|
|
|
|
protected:
|
|
DWORD GetBit(BYTE bPos);
|
|
|
|
CControlWZ * getControl( POSTYPE AtPos );
|
|
POSTYPE getCtrlIDToPos( WzID wzId );
|
|
|
|
virtual VOID OnShowWindow( BOOL val );
|
|
|
|
VOID SetTargetInfo();
|
|
VOID SetHP( float fHPPercent ,float fRadio);
|
|
VOID SetMP( float fMpPercent ,float fRadio);
|
|
|
|
#ifdef _NA_000000_20130114_RENEWER_UI
|
|
void RenderMouseOver();
|
|
#endif
|
|
private:
|
|
DWORD m_dwTargetKEY;
|
|
DWORD m_dwPrevTargetKEY;
|
|
DWORD m_dwPacketStatus;
|
|
static WzID m_wzId[Dialog_Max];
|
|
|
|
TCHAR m_szResultInfo[512];
|
|
|
|
|
|
float m_fGaugeSize;
|
|
|
|
|
|
RECT m_rcGauge;
|
|
|
|
int m_oldIndex;
|
|
|
|
vector<SKILL_EFFECT_IMAGE> status_icon_container_;
|
|
#ifdef _NA_000000_20130114_RENEWER_UI
|
|
stTARGETOVER_ render_over_iamge_[6];
|
|
RECT isFillRectPos;
|
|
HANDLE render_over_texture_;
|
|
#endif
|
|
|
|
};
|
|
|
|
inline
|
|
DWORD
|
|
SummonTargetDialog::GetTargetKey()
|
|
{
|
|
return m_dwTargetKEY;
|
|
}
|