#pragma once #ifdef _NA_008472_20150903_IMPROVED_BALANCE #include "uiBase.h" #include "PlayerAttributes.h" #include "uiToolTipMan/uiToolTipMan.h" class uiCharacterStatusInfo2 : public uiBase { enum UIControlPos { // ÅÇ ÄÁÆ®·Ñ kControl_CheckBT_C000 = 0, kControl_CheckBT_C003, kControl_CheckBT_C001, kControl_CheckBT_C002, kControl_CheckBT_C032, // Á¾ÇÕ ´É·ÂÄ¡ kControl_TextImage_TI09, // ½ºÅ³°ø°Ý·Â Áõ°¡(%) kControl_TextImage_TI12, // ½ºÅ³ °­È­·Â kControl_TextImage_TI32, // ¹öÇÁ½Ã°£ Áõ°¡ kControl_TextImage_TI13, // ÇÇÇØ µð¹öÇÁ½Ã°£ °¨¼Ò kControl_TextImage_TI11, // °¡ÇØ µð¹öÇÁ½Ã°£ °­È­ kControl_TextImage_I003, // ½ºÅ³»óŹ«½Ã kControl_TextImage_I004, // ÃÖ´ëµ¥¹ÌÁö ¹ß»ýÈ®·ü kControl_TextImage_I005, // Á¶ÇÕ ¼º°ø·ü kControl_TextImage_I001, // ÇÏÀÓ ½Àµæ kControl_TextImage_I002, // °æÇèÄ¡ ½Àµæ #ifdef _20220413_NEW_CHARAC_STATUS kControl_TextImage_CaptionName_S006, kControl_TextImage_CaptionName_S000, kControl_TextImage_CaptionName_S001, kControl_TextImage_CaptionName_S002, kControl_TextImage_CaptionName_S004, kControl_TextImage_CaptionName_S007, kControl_TextImage_CaptionName_S008, kControl_TextImage_CaptionName_S009, kControl_TextImage_CaptionName_S010, kControl_TextImage_CaptionName_S011, kControl_TextImage_CaptionName_S012, kControl_TextImage_CaptionName_S013, kControl_TextImage_CaptionName_S014, kControl_TextImage_CaptionName_S015, kControl_TextImage_CaptionName_S016, kControl_TextImage_CaptionName_S017, kControl_TextImage_CaptionValue_S201, kControl_TextImage_CaptionValue_S202, kControl_TextImage_CaptionValue_S203, kControl_TextImage_CaptionValue_S204, kControl_TextImage_CaptionValue_S205, kControl_TextImage_CaptionValue_S206, kControl_TextImage_CaptionValue_S207, kControl_TextImage_CaptionValue_S208, kControl_TextImage_CaptionValue_S209, kControl_TextImage_CaptionValue_S210, kControl_TextImage_CaptionValue_S211, kControl_TextImage_CaptionValue_S212, kControl_TextImage_CaptionValue_S213, kControl_TextImage_CaptionValue_S214, kControl_TextImage_CaptionValue_S215, kControl_TextImage_CaptionValue_S216, kControl_VScroll_V000, #endif kControl_Size, }; public: static const DWORD kDialog_ID; public: uiCharacterStatusInfo2(InterfaceManager* interface_manager); ~uiCharacterStatusInfo2(void); #ifdef _20220413_NEW_CHARAC_STATUS enum DataType{ ParameterCaption = 0, ParameterCaption2 = 1, ParameterDamage = 2, ParameterCaptionWithPercent = 3, ParameterCaptionWithPercentReverseTextColor = 4, ParameterCaptionWithSecond = 5, ParameterCaptionWithMilisecond = 6, ParameterCaptionWithSecondReverse = 7, }; typedef struct { DWORD optionIndex; TCHAR name[INTERFACE_STRING_LENGTH]; DataType dataType; int calc_value; int base_value; }StatusData; typedef std::vector StatusVector; #endif virtual void Init(CDrawBase* draw_base); virtual void Release(); virtual void OnShowWindow(BOOL is_show); virtual void MessageProc(SI_MESSAGE* message); private: virtual void OnUpdateSolarDialog(); virtual void OnRenderSolarDialog(); void RefreshTab(); void RenderTooltip(); void RenderTooltip_BaseAndCalc(uiToolTipMan* tooltip_manager, int base_value, int calc_value, bool is_force = true, DWORD string_code = 0); void RenderTooltip_BaseAndCalcMilisecond(uiToolTipMan* tooltip_manager, int base_value, int calc_value, bool is_force = true, DWORD string_code = 0); void RenderTooltip_StringCode(uiToolTipMan* tooltip_manager, int StringCode); void SetControlTextColor(CCtrlImageStaticWZ* control_ptr, int val, bool is_max = false); void SetControlReverseTextColor(CCtrlImageStaticWZ* control_ptr, int val, bool is_max = false); void SetParameterCaption(UIControlPos control_position, int val); void SetParameterCaption(UIControlPos control_position, int calc_value, int base_value); void SetParameterDamage(CCtrlImageStaticWZ* control_ptr, int iMinValue, int iMaxValue); void SetParameterCaptionWithPercent(UIControlPos control_position, int calc_value, int base_value); void SetParameterCaptionWithSecond(UIControlPos control_position, int calc_value, int base_value); void SetParameterCaptionWithSecondReverse(UIControlPos control_position, int calc_value, int base_value); void SetParameterCaptionWithPercentReverseTextColor(UIControlPos control_position, int calc_value, int base_value); void SetParameterCaptionWithMilisecond(UIControlPos control_position, int calc_value, int base_value); #ifdef _20220413_NEW_CHARAC_STATUS void SetOptionName(UIControlPos control_position, DWORD nameCode); bool OnVScrollUp(CCtrlVScrollWZ* scroll_control); bool OnVScrollDown(CCtrlVScrollWZ* scroll_control); bool OnVScrollThumb(CCtrlVScrollWZ* scroll_control); void initOptionListVector(); void UpdateMouseWheel(); void UpdateStautsOption(); int status_show_begin_index_; int status_show_begin_index() const { return status_show_begin_index_; } void set_status_show_begin_index(int val) { status_show_begin_index_ = val; } enum { kStatusRowCount = 16 }; StatusVector status_vecotr; #endif bool IsMaxParameterCaption(UIControlPos control_position, IN OUT int& calc_value); void UpdateParameter(); bool OnLButtonClick(SI_MESSAGE* message); bool OnLButtonDown(SI_MESSAGE* message); bool OnLButtonUp(SI_MESSAGE* message); }; #endif // _NA_008472_20150903_IMPROVED_BALANCE