99 lines
2.1 KiB
C++
99 lines
2.1 KiB
C++
#pragma once
|
|
|
|
//#include "KUIControl.h"
|
|
#include "KPrimitiveSprite.h"
|
|
|
|
class KUIControlSkillCastGauge : public KUIControl
|
|
{
|
|
public:
|
|
KUIControlSkillCastGauge();
|
|
virtual ~KUIControlSkillCastGauge();
|
|
|
|
void Cast(LPCSTR skillName, DWORD castTime);
|
|
void Cancel();
|
|
|
|
void DelayCast( DWORD castTime );
|
|
DWORD GetRemainTime();
|
|
DWORD GetCastTime() { return m_CastTime; }
|
|
|
|
virtual void Process( DWORD dwTime );
|
|
virtual void Render(KViewportObject * pViewport, bool isFront = false );
|
|
|
|
virtual void OnPosChangeNofity(int XOffset, int YOffset);
|
|
virtual void OnClipChangeNotify(const KRect& rcClipRect);
|
|
protected:
|
|
virtual void _initControl();
|
|
|
|
private:
|
|
void _SetNextState(DWORD nextState, DWORD castTime);
|
|
float _GetPercent();
|
|
|
|
private:
|
|
DWORD m_CurState;
|
|
DWORD m_NextState;
|
|
|
|
KRect m_rcGaugeClipArea;
|
|
DWORD m_StartTime;
|
|
DWORD m_CastTime;
|
|
DWORD m_CurTime;
|
|
KTextPhrase m_SkillNamePhrase;
|
|
|
|
};
|
|
|
|
//////////////////////////////////////////////////////////////////////////
|
|
/// 로비용 선택 이펙트
|
|
class KUIControlEffectGauge : public KUIControl
|
|
{
|
|
public:
|
|
|
|
enum KEFFECTGAUGE_STATE
|
|
{
|
|
KEFFECTGAUGE_COLOR = 0,
|
|
KEFFECTGAUGE_GRAY,
|
|
|
|
KEFFECTGAUGE_MAX,
|
|
};
|
|
|
|
enum
|
|
{
|
|
KEFFECTGAUGE_NORMAL = 0,
|
|
KEFFECTGAUGE_ACTIVATE,
|
|
KEFFECTGAUGE_DOWN,
|
|
KEFFECTGAUGE_DISABLE,
|
|
};
|
|
|
|
KUIControlEffectGauge();
|
|
virtual ~KUIControlEffectGauge();
|
|
|
|
virtual void Process( DWORD dwTime );
|
|
virtual void Render(KViewportObject * pViewport, bool isFront = false );
|
|
|
|
virtual DWORD OnMouseMessage(DWORD dwMessage, int x, int y);
|
|
|
|
virtual void OnPosChangeNofity(int XOffset, int YOffset);
|
|
virtual void OnClipChangeNotify(const KRect& rcClipRect);
|
|
|
|
virtual void UpdateBack();
|
|
|
|
void SetWorkingTime( int nSecond );
|
|
|
|
protected:
|
|
virtual void _initControl();
|
|
|
|
void updateSprite();
|
|
void _SetNextState(short nextState, DWORD castTime);
|
|
|
|
DWORD m_dwButtonState;
|
|
|
|
short m_nCurStep;
|
|
|
|
KRect m_rcGaugeClipArea;
|
|
|
|
KSpritePrimitive m_GaugeSprite[KEFFECTGAUGE_MAX];
|
|
|
|
DWORD m_StartTime;
|
|
DWORD m_CastTime;
|
|
DWORD m_CurTime;
|
|
|
|
std::vector<class KSimpleSpriteAnimator*> m_vtFrameAnimator;
|
|
}; |