Skilled Illusionist
- Joined
- Jan 29, 2023
- Messages
- 317
- Reaction score
- 30
nice share
cndev so nice. next share full source hahaha
waiting haha joke
Can you share the EditorBattlePass project for vs 2022?Sir i hope you help me abot editor Load & Save btn.
Working in vs2022 but vs2003 not working BattlePasseditor..
btw thanks
View attachment 277519
try this fix load and saveCan you share the EditorBattlePass project for vs 2022?
her sirCan you share the EditorBattlePass project for vs 2022?
do you know how to fix this errorher sir
her brodo you know how to fix this error
1>LINK : fatal error LNK1104: cannot open file 'libboost_filesystem-vc80-mt-1_34_1.lib'
when compiling Editor_BattlePass?
solved: just download libboost_filesystem-vc80-mt-1_34_1.lib and put it in Tik\Library folder
thanksChaBattlePass , image, NULL
ChaBattlePassEXP, int, NOT NULL, default value 0
ChaBattlePassLevel, int, NOT NULL, default value 0
ChaBattlePassPremium, int, NOT NULL, default value 0
View attachment 277563
void CEditorBattlePassDlg::OnBnClickedButtonFileSave() {
CString initialDir = GLOGIC::GetPath();
CString searchPattern;
searchPattern.Format("%s\\*.bp", initialDir);
WIN32_FIND_DATA findFileData;
HANDLE hFind = FindFirstFile(searchPattern, & findFileData);
bool hasBpFile = (hFind != INVALID_HANDLE_VALUE);
if (hasBpFile) FindClose(hFind); // Đóng handle
CString szFilter = "BattlePass Setting File (*.bp)|*.bp|";
CString defaultFileName = hasBpFile ? findFileData.cFileName : "BattlePass.bp";
CFileDialog fileDlg(FALSE, ".bp", defaultFileName,
OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT | OFN_PATHMUSTEXIST,
szFilter, this);
fileDlg.m_ofn.lpstrInitialDir = initialDir;
if (fileDlg.DoModal() == IDOK) {
CString fullPath = fileDlg.GetPathName();
if (fullPath.Right(3).CompareNoCase(".bp") != 0) {
fullPath += ".bp";
}
HRESULT hr = GLBattlePass::GetInstance().SaveFile(fullPath.GetString());
if (FAILED(hr)) {
CDebugSet::MsgBox(GetSafeHwnd(), "Failure to Save File");
return;
}
}
}
void CEditorBattlePassDlg::OnBnClickedButtonFileSave() {
CString initialDir = GLOGIC::GetPath();
CString searchPattern = initialDir + "\\*.bp";
WIN32_FIND_DATA findFileData;
HANDLE hFind = FindFirstFile(searchPattern, & findFileData);
BOOL hasBpFile = (hFind != INVALID_HANDLE_VALUE);
if (hasBpFile) FindClose(hFind);
CString szFilter = "BattlePass Setting File (*.bp)|*.bp|";
CString defaultFileName = hasBpFile ? findFileData.cFileName : "NewBattlePass.bp";
CFileDialog fileDlg(FALSE, "bp", defaultFileName,
OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT | OFN_PATHMUSTEXIST,
szFilter, this);
fileDlg.m_ofn.lpstrInitialDir = initialDir.GetBuffer();
if (fileDlg.DoModal() == IDOK) {
CString fullPath = fileDlg.GetPathName();
if (fullPath.Right(3).CompareNoCase("bp") != 0) {
fullPath += ".bp";
}
HRESULT hr = GLBattlePass::GetInstance().SaveFile(fullPath.GetString());
if (FAILED(hr)) {
CDebugSet::MsgBox(GetSafeHwnd(), "Failure to Save File");
return;
}
}
}
yehey share master hahaha jokethank you <3 well i will backread the code of DailyLogin Canlendar xD cus it did not update the calendar image number hahaha
Source - Asura VS2022
View attachment 277638
convert <hash_map> to <map>
code already shared. whats should be the problem in your source?yehey share master hahaha joke![]()
code already shared. whats should be the problem in your source?
im using Asura vs2022 that is already shared here.maybe he/she like that your source will be shared here..
Anyone have SetItemImageCheck and SetItemImageNone?
#include "StdAfx.h"
#include "ItemImage.h"
#include "GLGaeaClient.h"
#include "GLItemMan.h"
#include "SkillFunc.h"
#include "./BasicProgressBar.h"
#include "./BasicTextBox.h"
#include "../Lib_Engine/DxCommon/DxFontMan.h"
#include "d3dfont.h"
#include "UITextControl.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#endif
// ¸®Â÷¡ Ä÷¯
const DWORD RECHARGECOLOR = D3DCOLOR_ARGB(150,0,0,0);
CItemImage::CItemImage ()
: m_pItemImageBack(NULL)
, m_pItemImage ( NULL )
, m_pItemImageOverlaped( NULL )
, m_pOverImage(NULL)
, m_pd3dDevice ( NULL )
, m_sICONINDEXBACK ( NATIVEID_NULL () )
, m_sICONINDEX ( NATIVEID_NULL () )
, m_TotElapsedTime(0.0f)
, m_bItemUsed(false)
, m_bItemEnd(false)
, m_bTwinkle(true)
, m_pItemProcess( NULL )
, m_sNativeID(false)
, m_sNativeID_Overlaped(false)
, m_pNumberText( NULL )
, m_pTextBoxUpLeft( NULL )
, m_pTextBoxUpRight( NULL )
, m_pTextBoxDownLeft( NULL )
, m_pTextBoxDownRight( NULL )
, m_pItemImageCheck ( NULL ) /*6-2-24, collection system - CNDev*/
, m_pItemImageFind ( NULL ) /*6-2-24, collection system - CNDev*/
, m_pTextItemUpgrade( NULL )
{
}
CItemImage::~CItemImage ()
{
}
HRESULT CItemImage::InitDeviceObjects ( LPDIRECT3DDEVICEQ pd3dDevice )
{
HRESULT hr = S_OK;
hr = CUIGroup::InitDeviceObjects ( pd3dDevice );
if ( FAILED ( hr ) ) return hr;
m_pd3dDevice = pd3dDevice;
return S_OK;
}
void CItemImage::CreateSubControl (const std::string& overImageKey ,DWORD color, const char* szControlKeyword)
{
m_pItemImageBack = new CUIControl;
m_pItemImageBack->CreateSub ( this, szControlKeyword );
m_pItemImageBack->SetUseRender ( TRUE );
m_pItemImageBack->SetVisibleSingle ( FALSE );
RegisterControl ( m_pItemImageBack );
m_pItemImage = new CUIControl();
m_pItemImage->CreateSub ( this, szControlKeyword, UI_FLAG_DEFAULT, ITEM_IMAGE_SLOT );
m_pItemImage->SetUseRender ( TRUE );
m_pItemImage->SetVisibleSingle ( FALSE );
RegisterControl ( m_pItemImage );
m_pItemImageOverlaped = new CUIControl();
m_pItemImageOverlaped->CreateSub ( this, szControlKeyword, UI_FLAG_DEFAULT, ITEM_IMAGE_OVER );
m_pItemImageOverlaped->SetUseRender ( TRUE );
m_pItemImageOverlaped->SetVisibleSingle ( FALSE );
RegisterControl ( m_pItemImageOverlaped );
if (!overImageKey.empty())
{
m_pOverImage = new CUIControl;
m_pOverImage->CreateSub( this, overImageKey.c_str() );
m_pOverImage->SetVisibleSingle(FALSE);
m_pOverImage->SetDiffuse( color );
RegisterControl(m_pOverImage);
}
CBasicProgressBar* pItemProcess = new CBasicProgressBar;
pItemProcess->CreateSub ( this, "ITEM_IMAGE_PROGRESS" );
pItemProcess->CreateOverImage ( "ITEM_IMAGE_PROGRESS_OVER" );
pItemProcess->SetType ( CBasicProgressBar::VERTICAL );
pItemProcess->SetOverImageUseRender ( TRUE );
pItemProcess->SetOverImageDiffuse ( 0 );
pItemProcess->SetPercent( 0 );
pItemProcess->SetControlNameEx ( "ÇÁ·Î±×·¡½º¹Ù" );
pItemProcess->SetVisibleSingle( FALSE );
RegisterControl ( pItemProcess );
m_pItemProcess = pItemProcess;
CD3DFontPar* pFont8 = DxFontMan::GetInstance().LoadDxFont( _DEFAULT_FONT, 8, D3DFONT_SHADOW | D3DFONT_ASCII );
CBasicTextBox* pTextBox = new CBasicTextBox;
pTextBox->CreateSub ( this, "ITEM_NUMBER0" );
pTextBox->SetFont ( pFont8 );
pTextBox->SetTextAlign ( TEXT_ALIGN_RIGHT );
RegisterControl ( pTextBox );
m_pNumberText = pTextBox;
if( m_pNumberText ) m_pNumberText->SetVisibleSingle(FALSE);
/*6-2-24, collection system - CNDev*/
m_pTextItemUpgrade = new CBasicTextBox;
m_pTextItemUpgrade->CreateSub ( this, "ITEM_IMAGE_UPGRADE" );
m_pTextItemUpgrade->SetFont ( pFont8 );
m_pTextItemUpgrade->SetTextAlign ( TEXT_ALIGN_RIGHT );
RegisterControl ( m_pTextItemUpgrade );
m_pTextItemUpgrade->SetVisibleSingle ( FALSE );
m_pItemImageCheck = new CUIControl();
m_pItemImageCheck->CreateSub ( this, "ITEM_IMAGE_CHECK", UI_FLAG_DEFAULT );
m_pItemImageCheck->SetVisibleSingle ( FALSE );
RegisterControl ( m_pItemImageCheck );
m_pItemImageFind = new CUIControl();
m_pItemImageFind->CreateSub ( this, "ITEM_IMAGE_FIND", UI_FLAG_DEFAULT );
m_pItemImageFind->SetVisibleSingle ( FALSE );
RegisterControl ( m_pItemImageFind );
}
void CItemImage::SetNumber ( int nNumber, int nMaxNumber )
{
CString strNumber;
if( nNumber > 1 )
{
strNumber.Format ( "%d", nNumber );
DWORD dwColor = NS_UITEXTCOLOR::GREENYELLOW;
//if ( nNumber == nMaxNumber ) dwColor = NS_UITEXTCOLOR::ORANGE;
m_pNumberText->SetOneLineText ( strNumber, dwColor );
m_pNumberText->SetVisibleSingle ( TRUE );
return;
}
ResetNumber();
}
void CItemImage::ResetNumber()
{
m_pNumberText->ClearText ();
m_pNumberText->SetVisibleSingle ( FALSE );
}
void CItemImage::CreateTextBoxUpLeft ()
{
CD3DFontPar* pFont = DxFontMan::GetInstance().LoadDxFont ( _DEFAULT_FONT, 8, _DEFAULT_FONT_SHADOW_FLAG );
m_pTextBoxUpLeft = new CBasicTextBox;
m_pTextBoxUpLeft->CreateSub ( this, "ITEM_IMAGE_TEXT_UP_LEFT" );
m_pTextBoxUpLeft->SetFont ( pFont );
m_pTextBoxUpLeft->SetTextAlign ( TEXT_ALIGN_LEFT );
RegisterControl ( m_pTextBoxUpLeft );
}
void CItemImage::CreateTextBoxUpRight ()
{
CD3DFontPar* pFont = DxFontMan::GetInstance().LoadDxFont ( _DEFAULT_FONT, 8, _DEFAULT_FONT_SHADOW_FLAG );
m_pTextBoxUpRight = new CBasicTextBox;
m_pTextBoxUpRight->CreateSub ( this, "ITEM_IMAGE_TEXT_UP_RIGHT" );
m_pTextBoxUpRight->SetFont ( pFont );
m_pTextBoxUpRight->SetTextAlign ( TEXT_ALIGN_RIGHT );
RegisterControl ( m_pTextBoxUpRight );
}
void CItemImage::CreateTextBoxDownLeft ()
{
CD3DFontPar* pFont = DxFontMan::GetInstance().LoadDxFont ( _DEFAULT_FONT, 8, _DEFAULT_FONT_SHADOW_FLAG );
m_pTextBoxDownLeft = new CBasicTextBox;
m_pTextBoxDownLeft->CreateSub ( this, "ITEM_IMAGE_TEXT_DOWN_LEFT" );
m_pTextBoxDownLeft->SetFont ( pFont );
m_pTextBoxDownLeft->SetTextAlign ( TEXT_ALIGN_LEFT );
RegisterControl ( m_pTextBoxDownLeft );
}
void CItemImage::CreateTextBoxDownRight ()
{
CD3DFontPar* pFont = DxFontMan::GetInstance().LoadDxFont ( _DEFAULT_FONT, 8, _DEFAULT_FONT_SHADOW_FLAG );
m_pTextBoxDownRight = new CBasicTextBox;
m_pTextBoxDownRight->CreateSub ( this, "ITEM_IMAGE_TEXT_DOWN_RIGHT" );
m_pTextBoxDownRight->SetFont ( pFont );
m_pTextBoxDownRight->SetTextAlign ( TEXT_ALIGN_RIGHT );
RegisterControl ( m_pTextBoxDownRight );
}
void CItemImage::Update( int x, int y, BYTE LB, BYTE MB, BYTE RB, int nScroll, float fElapsedTime, BOOL bFirstControl )
{
CUIGroup::Update ( x, y, LB, MB, RB, nScroll, fElapsedTime, bFirstControl );
if( !m_pItemImage->GetTexture() )
m_pItemImage->InitDeviceObjects ( m_pd3dDevice );
if( !m_pItemImageOverlaped->GetTexture() )
m_pItemImageOverlaped->InitDeviceObjects ( m_pd3dDevice );
if( m_bItemUsed && m_bItemEnd )
{
m_TotElapsedTime += fElapsedTime;
if( m_TotElapsedTime < 0.3f ) m_pItemProcess->SetPercent(0);
else if( m_TotElapsedTime < 0.6f ) m_pItemProcess->SetPercent(1);
else if( m_TotElapsedTime < 0.9f ) m_pItemProcess->SetPercent(0);
else if( m_TotElapsedTime < 1.2f ) m_pItemProcess->SetPercent(1);
else
{
m_pItemProcess->SetPercent(0);
m_TotElapsedTime = 0.0f;
m_bItemEnd = false;
m_bItemUsed = false;
}
}
// ÄðŸÀÓ Ç¥½Ã
if ( !m_pItemProcess )
{
GASSERT ( 0 && "ÇÁ·Î±×·¡½º¹Ù°¡ ¸¸µé¾îÁöÁö ¾Ê¾Ò½À´Ï´Ù." );
return ;
}
SITEM* pItem = GLItemMan::GetInstance().GetItem( m_sNativeID );
if ( !pItem ) return ;
if ( !GLGaeaClient::GetInstance().GetCharacter()->IsCoolTime( m_sNativeID ) )
{
m_bItemEnd = true;
return;
}
ITEM_COOLTIME* pItemCoolTime = GLGaeaClient::GetInstance().GetCharacter()->GetCoolTime( m_sNativeID );
if ( !pItemCoolTime )
{
m_bItemEnd = true;
return;
}
m_pItemProcess->SetVisibleSingle( TRUE );
m_pItemProcess->SetOverImageDiffuse ( RECHARGECOLOR );
m_bItemEnd = false;
__time64_t tCurTime = GLGaeaClient::GetInstance().GetCurrentTime().GetTime();
__time64_t tUseTime = pItemCoolTime->tUseTime;
__time64_t tCoolTime = pItemCoolTime->tCoolTime;
float fCoolTime = tCoolTime - tUseTime;
float fCurTime = fCoolTime - ( tCurTime - tUseTime );
if ( fCoolTime == 0.0f )
{
fCoolTime = 1.0f;
}
const float fPercent = fCurTime / fCoolTime;
m_pItemProcess->SetPercent ( fPercent );
m_bItemUsed = true;
}
const bool CItemImage::SetItem ( const SITEMCUSTOM& itemCustom )
{
// ¹Ú½º Æ÷ÀåǰÀ̶ó¸é Æ÷ÀåÁöÀ̹ÌÁö¸¦ Æ÷ÀåµÈ¾ÆÀÌÅÛ À̹ÌÁöÀ§¿¡ µ¡¾º¿ì´Â ¹æ½ÄÀ¸·Î Ç¥Çö;
if ( itemCustom.IsBoxWrapped() )
{
SITEM* pItemData = GLItemMan::GetInstance().GetItem ( itemCustom.nidDISGUISE );
//SITEM* pItemData = GLItemMan::GetInstance().GetItem ( itemCustom.GetBoxWrappedItemID() );
if ( pItemData == NULL )
return false;
SITEM* pBoxWrapperItemData = GLItemMan::GetInstance().GetItem ( itemCustom.GetRealNativeID() );
//SITEM* pBoxWrapperItemData = GLItemMan::GetInstance().GetItem ( itemCustom.sNativeID );
if ( pBoxWrapperItemData == NULL )
return false;
return SetItem(pItemData->sBasicOp.sICONID, pItemData->GetInventoryFile(), pItemData->sBasicOp.sNativeID,
pBoxWrapperItemData->sBasicOp.sICONID, pBoxWrapperItemData->GetInventoryFile(), pBoxWrapperItemData->sBasicOp.sNativeID);
}
return SetItem(itemCustom.GetNativeID());
}
const bool CItemImage::SetItem( SNATIVEID sNativeID )
{
if( NATIVEID_NULL() == sNativeID )
{
ResetItem();
return false;
}
SITEM* pItemData = GLItemMan::GetInstance().GetItem ( sNativeID );
if ( pItemData == NULL )
return false;
return SetItem( pItemData->sBasicOp.sICONID, pItemData->GetInventoryFile(), pItemData->sBasicOp.sNativeID );
}
const bool CItemImage::SetItem ( SNATIVEID sICONINDEX, const char* szTexture, SNATIVEID sNativeID)
{
if ( m_pItemImage == NULL )
return false;
// NOTE
// ÀÌÀü ÇÁ·¹ÀÓ°ú ¾ÆÀÌÄÜ ID°¡ °°°í,
// ÅØ½ºÃİ¡ µ¿ÀÏÇÏ´Ù¸é °°Àº À̹ÌÁö À̹ǷÎ,
// ´õ ÀÌ»ó ÀÛ¾÷À» ¼öÇàÇÒ Çʿ䰡 ¾ø´Ù.
if( m_sNativeID == sNativeID && sNativeID != NATIVEID_NULL() )
return false;
// ¿©±â¼ ¸®ÅÏÇϸé sNativeID°¡ Àû¿ë¾ÈµÈ´Ù
// if ( (sICONINDEX == m_sICONINDEX) && (szTexture == m_pItemImage->GetTextureName ()) )
// return ;
ResetItem ();
SetItemProcess( sNativeID );
m_pItemImage->SetTexturePos ( NS_SKILL::GetIconTexurePos ( sICONINDEX ) );
m_pItemImage->SetTextureName ( szTexture );
// if ( m_pd3dDevice )
{
// m_pItemImage->InitDeviceObjects ( m_pd3dDevice );
m_pItemImage->SetVisibleSingle ( TRUE );
m_sICONINDEX = sICONINDEX;
m_strTextureName = szTexture;
}
if ( m_pd3dDevice )
m_pItemImage->InitDeviceObjects ( m_pd3dDevice );
return true;
}
const bool CItemImage::SetItem ( SNATIVEID sICONINDEX, const char* szTexture, SNATIVEID sNativeID, SNATIVEID sICONINDEX_Overlaped, const char* szTexture_Overlaped, SNATIVEID sNativeID_Overlaped )
{
if ( m_pItemImage == NULL )
return false;
if ( m_pItemImageOverlaped == NULL )
return false;
// NOTE
// ÀÌÀü ÇÁ·¹ÀÓ°ú ¾ÆÀÌÄÜ ID°¡ °°°í,
// ÅØ½ºÃİ¡ µ¿ÀÏÇÏ´Ù¸é °°Àº À̹ÌÁö À̹ǷÎ,
// ´õ ÀÌ»ó ÀÛ¾÷À» ¼öÇàÇÒ Çʿ䰡 ¾ø´Ù.
if( m_sNativeID == sNativeID && sNativeID != NATIVEID_NULL() )
return false;
// ¿©±â¼ ¸®ÅÏÇÏ¸é Æ÷ÀåµÈ ¾ÆÀÌÅÛ³¢¸® ±³È¯½Ã À̹ÌÁö°¡ º¯°æµÇÁö ¾Ê´Â´Ù;
//if( m_sNativeID_Overlaped == sNativeID_Overlaped && sNativeID_Overlaped != NATIVEID_NULL() )
// return false;
// ¿©±â¼ ¸®ÅÏÇϸé sNativeID°¡ Àû¿ë¾ÈµÈ´Ù
// if ( (sICONINDEX == m_sICONINDEX) && (szTexture == m_pItemImage->GetTextureName ()) )
// return ;
ResetItem ();
SetItemProcess( sNativeID );
// ³»¿ë¹° À̹ÌÁö
{
m_pItemImage->SetTexturePos ( NS_SKILL::GetIconTexurePos ( sICONINDEX ) );
m_pItemImage->SetTextureName ( szTexture );
// if ( m_pd3dDevice )
{
// m_pItemImage->InitDeviceObjects ( m_pd3dDevice );
m_pItemImage->SetVisibleSingle ( TRUE );
m_sICONINDEX = sICONINDEX;
m_strTextureName = szTexture;
}
if ( m_pd3dDevice )
m_pItemImage->InitDeviceObjects ( m_pd3dDevice );
}
// Æ÷ÀåÁö À̹ÌÁö µ¡¾º¿ò;
{
m_sNativeID_Overlaped = sNativeID_Overlaped;
m_pItemImageOverlaped->SetTexturePos ( NS_SKILL::GetIconTexurePos ( sICONINDEX_Overlaped ) );
m_pItemImageOverlaped->SetTextureName ( szTexture_Overlaped );
// if ( m_pd3dDevice )
{
// m_pItemImage->InitDeviceObjects ( m_pd3dDevice );
m_pItemImageOverlaped->SetVisibleSingle ( TRUE );
}
if ( m_pd3dDevice )
m_pItemImageOverlaped->InitDeviceObjects ( m_pd3dDevice );
}
return true;
}
void CItemImage::SetSkill(SNATIVEID sICONINDEX, const char* szTexture, SNATIVEID sNativeID)
{
if (!m_pItemImage) return;
// NOTE
// ÀÌÀü ÇÁ·¹ÀÓ°ú ¾ÆÀÌÄÜ ID°¡ °°°í,
// ÅØ½ºÃİ¡ µ¿ÀÏÇÏ´Ù¸é °°Àº À̹ÌÁö À̹ǷÎ,
// ´õ ÀÌ»ó ÀÛ¾÷À» ¼öÇàÇÒ Çʿ䰡 ¾ø´Ù.
if (m_sNativeID == sNativeID && sNativeID != NATIVEID_NULL()) return;
if ((sICONINDEX == m_sICONINDEX) && (szTexture == m_pItemImage->GetTextureName())) return;
ResetItem();
SetItemProcess(sNativeID);
if (m_pItemImage)
{
m_pItemImage->SetTexturePos(NS_SKILL::GetIconTexurePos(sICONINDEX));
m_pItemImage->SetTextureName(szTexture);
if (m_pd3dDevice)
{
m_pItemImage->InitDeviceObjects(m_pd3dDevice);
m_pItemImage->SetVisibleSingle(TRUE);
m_sICONINDEX = sICONINDEX;
m_strTextureName = szTexture;
}
}
}
void CItemImage::SetBackItem( SNATIVEID sICONINDEX, const char* szTexture )
{
if ( m_pItemImageBack )
{
if ( (sICONINDEX == m_sICONINDEXBACK) && (szTexture == m_pItemImageBack->GetTextureName ()) ) return ;
m_pItemImageBack->SetTexturePos ( NS_SKILL::GetIconTexurePos ( sICONINDEX ) );
m_pItemImageBack->SetTextureName ( szTexture );
if ( m_pd3dDevice )
{
m_sICONINDEXBACK = sICONINDEX;
m_pItemImageBack->InitDeviceObjects ( m_pd3dDevice );
m_pItemImageBack->SetVisibleSingle ( TRUE );
}
}
}
SNATIVEID CItemImage::GetItemImageSlotPos ()
{
return m_sICONINDEX;
}
void CItemImage::ResetItem ()
{
if ( m_pItemImage )
{
if ( m_sICONINDEX != NATIVEID_NULL () )
{
m_pItemImage->DeleteDeviceObjects ();
m_pItemImage->SetTextureName ( NULL );
m_pItemImage->SetVisibleSingle ( FALSE );
m_pItemImage->SetDiffuseAlpha(255);
m_sICONINDEX = NATIVEID_NULL ();
ReSetItemProcess();
m_strTextureName.Empty ();
}
}
if ( m_pItemImageBack )
{
m_sICONINDEXBACK = NATIVEID_NULL ();
m_pItemImageBack->DeleteDeviceObjects ();
m_pItemImageBack->SetTextureName ( NULL );
m_pItemImageBack->SetVisibleSingle ( FALSE );
}
if ( m_pItemImageOverlaped )
{
m_pItemImageOverlaped->DeleteDeviceObjects ();
m_pItemImageOverlaped->SetTextureName ( NULL );
m_pItemImageOverlaped->SetVisibleSingle(FALSE);
}
m_sNativeID = NATIVEID_NULL();
m_sNativeID_Overlaped = NATIVEID_NULL();
ResetNumber();
/*6-2-24, collection system - CNDev*/
if ( m_pTextItemUpgrade )
{
m_pTextItemUpgrade->ClearText();
m_pTextItemUpgrade->SetVisibleSingle(FALSE);
}
if ( m_pItemImageCheck )
m_pItemImageCheck->SetVisibleSingle(FALSE);
if ( m_pItemImageFind )
m_pItemImageFind->SetVisibleSingle(FALSE);
}
void CItemImage::SetItemProcess( SNATIVEID sNativeID )
{
m_bItemUsed = false;
m_sNativeID = sNativeID;
if ( sNativeID == NATIVEID_NULL() )
{
m_pItemProcess->SetVisibleSingle( FALSE );
}
else
{
m_pItemProcess->SetVisibleSingle( TRUE );
}
return;
}
void CItemImage::ReSetItemProcess()
{
m_bItemUsed = false;
m_sNativeID = NATIVEID_NULL();
m_pItemProcess->SetVisibleSingle( FALSE );
m_pItemProcess->SetOverImageDiffuse ( 0 );
m_pItemProcess->SetPercent( 0.0f );
SetVisibleOverImage(false);
return;
}
void CItemImage::SetDiffuse(D3DCOLOR _diffuse)
{
CUIGroup::SetDiffuse( _diffuse );
m_pItemProcess->SetOverImageDiffuse ( RECHARGECOLOR );
}
void CItemImage::SetVisibleOverImage( bool isVisible )
{
if(m_pOverImage)
m_pOverImage->SetVisibleSingle(isVisible);
}
bool CItemImage::IsVisibleOverImage()
{
return m_pOverImage->IsVisible() ? true : false;
}
SNATIVEID CItemImage::GetItem()
{
return m_sNativeID;
}
const CString& CItemImage::GetItemTextureName() const
{
return m_strTextureName;
}
void CItemImage::SetTextUpLeft( CString strText, DWORD dwColor )
{
if ( m_pTextBoxUpLeft ) m_pTextBoxUpLeft->SetText( strText.GetString(), dwColor );
}
void CItemImage::SetTextUpRight( CString strText, DWORD dwColor )
{
if ( m_pTextBoxUpRight ) m_pTextBoxUpRight->SetText( strText.GetString(), dwColor );
}
void CItemImage::SetTextDownLeft( CString strText, DWORD dwColor )
{
if ( m_pTextBoxDownLeft ) m_pTextBoxDownLeft->SetText( strText.GetString(), dwColor );
}
void CItemImage::SetTextDownRight( CString strText, DWORD dwColor )
{
if ( m_pTextBoxDownRight ) m_pTextBoxDownRight->SetText( strText.GetString(), dwColor );
}
void CItemImage::SetTurnNum( int nNum )
{
}
/*6-2-24, collection system - CNDev*/
void CItemImage::SetItemImageCheck()
{
if ( m_pItemImageCheck )
{
m_pItemImage->SetDiffuseAlpha(255);
m_pItemImageCheck->SetVisibleSingle(TRUE);
}
}
void CItemImage::SetItemImageNone()
{
m_pItemImage->SetDiffuseAlpha(50);
}
void CItemImage::SetItemImageFind()
{
if ( m_pItemImageFind )
{
m_pItemImage->SetDiffuseAlpha(255);
m_pItemImageFind->SetVisibleSingle(TRUE);
}
}
void CItemImage::SetItemUpgrade( CString strText, DWORD dwColor )
{
if ( m_pTextItemUpgrade )
{
m_pTextItemUpgrade->SetText( strText.GetString(), dwColor );
m_pTextItemUpgrade->SetVisibleSingle(TRUE);
}
}
// ±âº» Á¤º¸ Ç¥½Ã
//
// ÃÖÃÊ ÀÛ¼ºÀÚ : ¼º±â¿±
// ÀÌÈÄ ¼öÁ¤ÀÚ :
// ·Î±×
// [2003.11.27]
// @ ÀÛ¼º
//
#pragma once
#include "../Lib_Engine/GUInterface/UIGroup.h"
#include "GLDefine.h"
struct SITEMCUSTOM;
class CBasicProgressBar;
class CBasicTextBox;
class CItemImage : public CUIGroup
{
private:
enum {
ITEM_IMAGE_SLOT = NO_ID + 1,
ITEM_IMAGE_OVER,
};
public:
CItemImage ();
virtual ~CItemImage ();
public:
void CreateSubControl (const std::string& overImageKey = "" ,DWORD color = D3DCOLOR_XRGB(255,255,255), const char* szControlKeyword = "ITEM_IMAGE");
void CreateTextBoxUpLeft();
void CreateTextBoxUpRight();
void CreateTextBoxDownLeft();
void CreateTextBoxDownRight();
public:
virtual HRESULT InitDeviceObjects ( LPDIRECT3DDEVICEQ pd3dDevice );
virtual void Update( int x, int y, BYTE LB, BYTE MB, BYTE RB, int nScroll, float fElapsedTime, BOOL bFirstControl );
virtual void SetDiffuse(D3DCOLOR _diffuse);
public:
const bool SetItem ( const SITEMCUSTOM& itemCustom );
const bool SetItem ( SNATIVEID sNativeID );
void SetSkill(SNATIVEID sICONINDEX, const char* szTexture, SNATIVEID sNativeID = false);
void SetBackItem( SNATIVEID sICONINDEX, const char* szTexture );
void SetVisibleOverImage(bool isVisible);
bool IsVisibleOverImage();
SNATIVEID GetItem();
SNATIVEID GetItemImageSlotPos();
SNATIVEID GetItemID() { return m_sNativeID; }
const CString& GetItemTextureName () const;
void SetUseTwinkle( bool bUse ) { m_bTwinkle = bUse; }
void SetNumber ( int nNumber, int nMaxNumber );
void ResetNumber ( );
private:
const bool SetItem ( SNATIVEID sICONINDEX, const char* szTexture, SNATIVEID sNativeID );
const bool SetItem ( SNATIVEID sICONINDEX, const char* szTexture, SNATIVEID sNativeID, SNATIVEID sICONINDEX_Overlaped, const char* szTexture_Overlaped, SNATIVEID sNativeID_Overlaped );
public:
virtual void ResetItem ();
virtual void SetItemProcess( SNATIVEID sNativeID );
virtual void ReSetItemProcess();
private:
LPDIRECT3DDEVICEQ m_pd3dDevice;
protected:
SNATIVEID m_sICONINDEX;
SNATIVEID m_sICONINDEXBACK;
SNATIVEID m_sNativeID;
SNATIVEID m_sNativeID_Overlaped;
CString m_strTextureName;
CBasicProgressBar* m_pItemProcess;
CBasicTextBox* m_pTextBoxUpLeft;
CBasicTextBox* m_pTextBoxUpRight;
CBasicTextBox* m_pTextBoxDownLeft;
CBasicTextBox* m_pTextBoxDownRight;
float m_TotElapsedTime;
bool m_bItemUsed;
bool m_bItemEnd;
bool m_bTwinkle;
CUIControl* m_pItemImage;
CUIControl* m_pItemImageOverlaped;
CUIControl* m_pOverImage;
CBasicTextBox* m_pNumberText;
/*6-2-24, collection system - CNDev*/
CUIControl* m_pItemImageCheck;
CUIControl* m_pItemImageFind;
CBasicTextBox* m_pTextItemUpgrade;
private:
CUIControl* m_pItemImageBack;
//CUIControl* m_pItemImage;
public:
void SetTextUpLeft( CString strText, DWORD dwColor );
void SetTextUpRight( CString strText, DWORD dwColor );
void SetTextDownLeft( CString strText, DWORD dwColor );
void SetTextDownRight( CString strText, DWORD dwColor );
void SetTurnNum( int nNum );
void SetItemImageCheck();
void SetItemImageNone();
void SetItemImageFind();
void SetItemUpgrade( CString strText, DWORD dwColor );
};