/* ========================================================================== * ÆÄ ÀÏ : TargetWindow.h * ¸ñ Àû : * ÀÛ ¼º ÀÚ : ±è°¡¶÷ * ÀÛ ¼º ÀÏ : 2006-11-28 * ÁÖÀÇ»çÇ× : *===========================================================================*/ #pragma once #include "UIWindow.h" class cLabel; class cGauge; class cEffectSceneNode; class cBaseObject; class cTargetBuff; class cUIImage; class cTargetWindow : public cUIWindow { public: enum { eGauge_Hero = 0, eGauge_Monster, eGauge_Max }; cTargetWindow(); virtual ~cTargetWindow(); virtual void Open(); virtual void Close(); void ClearBuff(); // ÆÄƼ°ü·Ã °»½Å void UpdateParty(); void UpdateWindow(); /// °ÔÀÌÁö Â÷´Â ¼Óµµ Á¶Àý void SetHPGaugeSpeed( float s ); /// Ÿ°Ù ¹öÇÁ ¾ÆÀÌÄÜ ¼¼ÆÃ void AddBuff( unsigned long uniqueIdx, unsigned long influenceIdx ); void DelBuff( unsigned long uniqueIdx ); void DelDeBuff( unsigned long uniqueIdx ); /// À©µµ¿ì »çÀÌÁî Á¶Á¤ void UpdateSize(); protected: /// ó¸® virtual bool OnCreate( cUINodeProperty* pproperty ); virtual void OnProcess( unsigned long deltaTime, unsigned long accumTime ); virtual void OnRender(cUIFontItemKeeper* pKeeper ); virtual void OnRButtonUp( const cUIPos& pos ); virtual void OnShow(); virtual void OnHide(); virtual void UpdateRect(); virtual void UpdateSkin(); virtual void OnMouseHovered( const cUIPos& pos ); virtual void OnMouseLeft( const cUIPos& pos ); virtual void OnMouseMove( const cUIPos& pos ); virtual void OnLButtonDown( const cUIPos& pos, bool ctrl, bool alt, bool shift ); /// Ÿ°Ù Á¤º¸ ¼¼ÆÃ void SetTargetInfo( char level, LPCTSTR name ); void SetTargetEffect( cBaseObject* pObj ); protected: /// Ÿ°Ù À̸§ cLabel* mpTargetNameLabel; /// Ÿ°Ù ·¹º§ cLabel* mpTargetLevelLabel; /// Ÿ°Ù hp °ÔÀÌÁö Ʋ cGauge* mpHPGauge; bool mShowHPImage; /// Ÿ°Ù ÀÌÆåÆ® unsigned long mTargetEffectIdx[2]; cEffectSceneNode* mpTargetEffect[2]; /// Ÿ°Ù ¹öÇÁ cUINodeSkin* mpNodeSkin; cTargetBuff* mpTargetBuff; cUIRect mpBuffRc; /// Ÿ°Ù Á÷¾÷ Ç¥½Ã(À̹ÌÁö Ç¥½Ã¿ë) cLabel* mpTargetJobLabel; /// Ÿ°Ù NPC Á÷¾÷ Ç¥½Ã(À̹ÌÁö Ç¥½Ã¿ë) cLabel* mpTargetNpcJobLabel; /// Ÿ°ÙÀÌ NPC ÀÏ °æ¿ì °ÔÀÌÁö ´ë½Å º¸¿©ÁÖ´Â Á÷¾÷ ¶óº§ cLabel* mpTargetNpcJobLabelText; bool mIsShowToolTip; // cLabel* mpIsParty; cLabel* mpIsOtherParty; cUIPos mTargetTexPos[eGauge_Max]; }; //////////////////////////////////////////////////// /// Ÿ°Ù ¹öÇÁ #include "PartyBuff.h" /// Ÿ°Ù ¹öÇÁ À©µµ¿ì class cTargetBuff : public cPartyBuff { public: cTargetBuff(); virtual ~cTargetBuff(); protected: bool SetSkin(const cUINodeSkin* pskin ); void UpdateSkin(); void UpdateRect(); void UpdateWindowSize(); };