Character Stats Window Problem

10/01/2019 16:44 rapiskid2#1
Need a little help guys on how to remove this logo.
10/01/2019 17:42 ryuzakinara#2
Hi rapiskid2, can you give me the whole function?

WndField.cpp
Code:
void CWndCharInfo::OnInitialUpdate()
10/01/2019 18:04 rapiskid2#3
Quote:
Originally Posted by ryuzakinara View Post
Hi rapiskid2, can you give me the whole function?

WndField.cpp
Code:
void CWndCharInfo::OnInitialUpdate()
Code:
void CWndCharInfo::OnInitialUpdate()
{
	
	CWndBase::OnInitialUpdate();
	SetTexture( m_pApp->m_pd3dDevice, MakePath( "Theme\\", ::GetLanguage(), _T( "WndNewCharacter01.tga" ) ), TRUE );
	//FitTextureSize();
/*
	//SetTexture( m_pApp->m_pd3dDevice, MakePath( "Theme\\", ::GetLanguage(), _T( "WndCharacter2_2.tga" ) ), TRUE );
	//FitTextureSize();
	
	int x = m_rectClient.Width() / 2;
	int y = m_rectClient.Height() - 30;
	CSize size = CSize( 70, 25);
	
	CRect rect1_1( x - ( size.cx / 2), y, ( x - ( size.cx / 2 ) ) + size.cx, y + size.cy );
	
	CRect rect2_1( x - size.cx - 10, y, ( x - size.cx - 10 ) + size.cx, y + size.cy );
	CRect rect2_2( x + 10          , y, ( x + 10           ) + size.cx, y + size.cy );
	
	CRect rect3_1( x - ( size.cx / 2) - size.cx - 10, y, (x - ( size.cx / 2) - size.cx - 10) + size.cx, y + size.cy );
	CRect rect3_2( x - ( size.cx / 2)               , y, (x - ( size.cx / 2)               ) + size.cx, y + size.cy );
	CRect rect3_3( x + ( size.cx / 2) + 10          , y, (x + ( size.cx / 2) + 10          ) + size.cx, y + size.cy );
*/
	// ¾Æ·¡ºÎÅÍ ´É·ÂÄ¡ °ü·Ã 
	int nyAdd = 121;
	int posY = 49 + nyAdd;
	int posX = 128;

	m_editStrCount.Create  ( g_Neuz.GetSafeHwnd(), 0, CRect( posX - 38, posY, posX - 4, posY + 16 ), this, 100 );
	m_wndStrPlus.Create  ( "<", 0, CRect( posX, posY + 2, posX + 14, posY + 18 ), this, 101 );
	m_wndStrMinus.Create  ( "<", 0, CRect( posX + 16, posY + 2, posX + 30, posY + 18 ), this, 102 ); posY += 15;

	m_editStaCount.Create  ( g_Neuz.GetSafeHwnd(), 0, CRect( posX - 38, posY, posX - 4, posY + 16 ), this, 103 );
	m_wndStaPlus.Create  ( "<", 0, CRect( posX, posY + 2, posX + 14, posY + 18 ), this, 104 );
	m_wndStaMinus.Create  ( "<", 0, CRect( posX + 16, posY + 2, posX + 30, posY + 18 ), this, 105 ); posY += 15;

	m_editDexCount.Create  ( g_Neuz.GetSafeHwnd(), 0, CRect( posX - 38, posY, posX - 4, posY + 16 ), this, 106 );
	m_wndDexPlus.Create  ( "<", 0, CRect( posX, posY + 2, posX + 14, posY + 18 ), this, 107 );
	m_wndDexMinus.Create  ( "<", 0, CRect( posX + 16, posY + 2, posX + 30, posY + 18 ), this, 108 ); posY += 15;

	m_editIntCount.Create  ( g_Neuz.GetSafeHwnd(), 0, CRect( posX - 38, posY, posX - 4, posY + 16 ), this, 109 );
	m_wndIntPlus.Create  ( "<", 0, CRect( posX, posY + 2, posX + 14, posY + 18 ), this, 110 );
	m_wndIntMinus.Create  ( "<", 0, CRect( posX + 16, posY + 2, posX + 30, posY + 18 ), this, 111 );

	m_wndStrPlus.SetTexture( m_pApp->m_pd3dDevice, MakePath( DIR_THEME, _T( "ButtCharPlus.bmp" ) ), TRUE );
	m_wndStrMinus.SetTexture( m_pApp->m_pd3dDevice, MakePath( DIR_THEME, _T( "ButtCharMinus.bmp" ) ), TRUE );
	m_wndStaPlus.SetTexture( m_pApp->m_pd3dDevice, MakePath( DIR_THEME, _T( "ButtCharPlus.bmp" ) ), TRUE );
	m_wndStaMinus.SetTexture( m_pApp->m_pd3dDevice, MakePath( DIR_THEME, _T( "ButtCharMinus.bmp" ) ), TRUE );
	m_wndDexPlus.SetTexture( m_pApp->m_pd3dDevice, MakePath( DIR_THEME, _T( "ButtCharPlus.bmp" ) ), TRUE );
	m_wndDexMinus.SetTexture( m_pApp->m_pd3dDevice, MakePath( DIR_THEME, _T( "ButtCharMinus.bmp" ) ), TRUE );
	m_wndIntPlus.SetTexture( m_pApp->m_pd3dDevice, MakePath( DIR_THEME, _T( "ButtCharPlus.bmp" ) ), TRUE );
	m_wndIntMinus.SetTexture( m_pApp->m_pd3dDevice, MakePath( DIR_THEME, _T( "ButtCharMinus.bmp" ) ), TRUE );

	posY += 36;
	m_wndApply.Create  ( "Apply", 0, CRect( posX - 108, posY, posX - 58, posY + 22 ), this, 112 );
	m_wndReset.Create  ( "Reset", 0, CRect( posX - 30, posY, posX + 20, posY + 22 ), this, 113 );

	if(::GetLanguage() == LANG_FRE)
	{
		m_wndApply.SetTexture( m_pApp->m_pd3dDevice, MakePath( "Theme\\", ::GetLanguage(), _T( "ButStateOk.tga" ) ), TRUE );
		m_wndReset.SetTexture( m_pApp->m_pd3dDevice, MakePath( "Theme\\", ::GetLanguage(), _T( "ButStateCancel.tga" ) ), TRUE );
	}
	else
	{
		m_wndApply.SetTexture( m_pApp->m_pd3dDevice, MakePath( DIR_THEME, _T( "ButtCharApply.tga" ) ), TRUE );
		m_wndReset.SetTexture( m_pApp->m_pd3dDevice, MakePath( DIR_THEME, _T( "ButtCharReset.tga" ) ), TRUE );
	}

	//¸ðµç ½ºÅÈÀÇ Áõ°¡·® 1·Î °íÁ¤À̹ǷΠ¾Æ·¡ »èÁ¦
	/*
	LPJOBABILITY pJobAbillity;
	if( g_pPlayer->IsExpert() )
		pJobAbillity = &prj.m_aJobAbillity[ g_pPlayer->GetJob() ];
	else
		pJobAbillity = &prj.m_aJobAbillity[ JOB_VAGRANT ];

	m_wndStr.EnableWindow( ( g_pPlayer->GetRemainGP() >= pJobAbillity->dwStr ) ? TRUE : FALSE );
	m_wndSta.EnableWindow( ( g_pPlayer->GetRemainGP() >= pJobAbillity->dwSta ) ? TRUE : FALSE );
	m_wndDex.EnableWindow( ( g_pPlayer->GetRemainGP() >= pJobAbillity->dwDex ) ? TRUE : FALSE );
	m_wndInt.EnableWindow( ( g_pPlayer->GetRemainGP() >= pJobAbillity->dwInt ) ? TRUE : FALSE );
	*/

	m_nGpPoint = g_pPlayer->GetRemainGP();
	//½ºÅÈ Áõ°¡·® ÇÑÀû ¾øÀ¸¹Ç·Î Minus Button Default´Â False
	m_wndStrMinus.EnableWindow(FALSE);
	m_wndStaMinus.EnableWindow(FALSE);
	m_wndDexMinus.EnableWindow(FALSE);
	m_wndIntMinus.EnableWindow(FALSE);

	if(g_pPlayer->GetRemainGP() <= 0)
	{
		m_wndStrPlus.EnableWindow(FALSE);
		m_wndStaPlus.EnableWindow(FALSE);
		m_wndDexPlus.EnableWindow(FALSE);
		m_wndIntPlus.EnableWindow(FALSE);
	}
	int nyAdd2 = 280;
	int y = 105 + nyAdd2;
	if( g_pPlayer->IsAuthHigher( AUTH_GAMEMASTER ) )
		m_wndChangeJob.Create( ">", 0, CRect( 130, y, 135+40, y + 13 ), this, 10  ); 

	//SetTexture(m_pApp->m_pd3dDevice, MakePath( DIR_THEME, _T( "WndTile00.tga")), TRUE);

	RefreshStatPoint();

	//FitTextureSize();

	MakeVertexBuffer();
}
10/01/2019 18:18 ryuzakinara#4
The functions of
Code:
void CWndCharInfo::OnDraw
at
void CWndCharInfo::RenderATK
I see nothing in the function "void CWndCharInfo :: OnInitialUpdate ()".

Thanks
10/01/2019 18:28 rapiskid2#5
Quote:
void CWndCharInfo::OnDraw
Code:
void CWndCharInfo::OnDraw(C2DRender* p2DRender)
{

	CRect rect = GetClientRect();
	rect.bottom -= 30;
	int			y = 0, nNext = 15, nyAdd3 = 21;
	DWORD		dwColor = D3DCOLOR_ARGB(255,0,0,0);

#if __VER >= 10 // __CSC_VER9_1
	BYTE		checkhero = g_pPlayer->GetLegendChar();
	int			xpos = 0;
	int			ypos = 0;
	CTexture*	pTexture;
	CString		strPath;
	CPoint		point;
#endif //__CSC_VER9_1

	y = 13;
	p2DRender->TextOut( 60, y, prj.GetText((TID_APP_CHARACTER_BASE)), dwColor );
	y = 10 + nyAdd3;
	if( TRUE ) //::GetLanguage() == LANG_JAP )
	{
		p2DRender->TextOut( 80, y, g_pPlayer->GetName()       , dwColor); y += nNext;
		p2DRender->TextOut( 80, y, g_pPlayer->GetJobString()  , dwColor ); y += nNext;
#if __VER >= 10 // __CSC_VER9_1
		ypos = y;
		if(checkhero == LEGEND_CLASS_MASTER)
		{
			if(g_pPlayer->GetLevel() < 100)
				xpos = 97;
			else
				xpos = 103;
		}
#if __VER >= 15 // __HERO129_VER15				// 15Â÷ È÷¾î·Î ·¹º§È®Àå
		if(checkhero == LEGEND_CLASS_HERO)
			xpos = 103;
	#else
		if(checkhero == LEGEND_CLASS_HERO)
			xpos = 80;
		else
	#endif	// 15Â÷ È÷¾î·Î ·¹º§È®Àå	
			p2DRender->TextOut( 80, y, g_pPlayer->GetLevel()      , dwColor ); y += nNext;
#else
		p2DRender->TextOut( 80, y, g_pPlayer->GetLevel()      , dwColor ); y += nNext;
#endif //__CSC_VER9_1

		y = 81+ nyAdd3;
	}
	else
	{
		p2DRender->TextOut( 50, y, g_pPlayer->GetName()       , dwColor); y += nNext;
		p2DRender->TextOut( 50, y, g_pPlayer->GetJobString()  , dwColor ); y += nNext;
#if __VER >= 10 // __CSC_VER9_1
		ypos = y;
		if(checkhero == LEGEND_CLASS_MASTER)
		{
			if(g_pPlayer->GetLevel() < 100)
				xpos = 67;
			else
				xpos = 73;
		}
#if __VER >= 15 // __HERO129_VER15				// 15Â÷ È÷¾î·Î ·¹º§È®Àå
		if(checkhero == LEGEND_CLASS_HERO)
			xpos = 73;
	#else
		if(checkhero == LEGEND_CLASS_HERO)
			xpos = 50;
		else
	#endif	// 15Â÷ È÷¾î·Î ·¹º§È®Àå	
			p2DRender->TextOut( 50, y, g_pPlayer->GetLevel()      , dwColor ); y += nNext;
	
#else
		p2DRender->TextOut( 50, y, g_pPlayer->GetLevel()      , dwColor ); y += nNext;
#endif //__CSC_VER9_1
		y = 81 + nyAdd3;
	}

#if __VER >= 10 // __CSC_VER9_1
	point.x = xpos;
	point.y = ypos - 2;

	if(checkhero == LEGEND_CLASS_MASTER && m_nCampusPoint == 0) //Àü½ÂÀ» ÇßÀ» °æ¿ì.
	{
		if(/*g_pPlayer->m_nLevel >= 60 && */g_pPlayer->m_nLevel < 70 ) //Level DownµÉ °æ¿ì¸¦ »ý°¢Çؼ* ÁÖ¼®Ã³¸®
			strPath = MakePath( DIR_ICON, "Icon_MasterMark1.dds");
		else if(g_pPlayer->m_nLevel >= 70 && g_pPlayer->m_nLevel < 80 )
			strPath = MakePath( DIR_ICON, "Icon_MasterMark2.dds");
		else if(g_pPlayer->m_nLevel >= 80 && g_pPlayer->m_nLevel < 90 )
			strPath = MakePath( DIR_ICON, "Icon_MasterMark3.dds");
		else if(g_pPlayer->m_nLevel >= 90 && g_pPlayer->m_nLevel < 100 )
			strPath = MakePath( DIR_ICON, "Icon_MasterMark4.dds");
		else if(g_pPlayer->m_nLevel >= 100 && g_pPlayer->m_nLevel < 110 )
			strPath = MakePath( DIR_ICON, "Icon_MasterMark5.dds");
		else if(g_pPlayer->m_nLevel >= 110 && g_pPlayer->m_nLevel <= 120 )
			strPath = MakePath( DIR_ICON, "Icon_MasterMark6.dds");
	//	else if(Akerius >= 1 )
	//		strPath = MakePath( DIR_ICON, "Rebirth_R.png");
		pTexture = CWndBase::m_textureMng.AddTexture( g_Neuz.m_pd3dDevice, strPath, 0xffff00ff );
		if(pTexture != NULL)
			pTexture->Render( p2DRender, point );			
		
	}
	else if(checkhero == LEGEND_CLASS_HERO && m_nCampusPoint == 0) //¿µ¿õÀÏ °æ¿ì.
	{
		if(g_pPlayer->m_nLevel >= 121 && g_pPlayer->m_nLevel )
		strPath = MakePath( DIR_ICON, "Icon_HeroMark.dds");
		pTexture = CWndBase::m_textureMng.AddTexture( g_Neuz.m_pd3dDevice, strPath, 0xffff00ff );
		if(pTexture != NULL)
			pTexture->Render( p2DRender, point );
	}
#ifdef __3RD_LEGEND16
		else if(checkhero == LEGEND_CLASS_LEGENDHERO && m_nCampusPoint == 0) //¿µ¿õÀÏ °æ¿ì.
	{
		if(g_pPlayer->m_nLevel >= 130 && g_pPlayer->m_nLevel < 176 )
			strPath = MakePath( DIR_ICON, "Legend_Mark.png");
			pTexture = CWndBase::m_textureMng.AddTexture( g_Neuz.m_pd3dDevice, strPath, 0xfff0000f );
		if(pTexture != NULL)
			pTexture->Render( p2DRender, point );
	}
	
#endif
	else if(m_nCampusPoint == 1)
		{
			strPath = MakePath( DIR_ICON, "Rebirth_Mark.png");
			pTexture = CWndBase::m_textureMng.AddTexture( g_Neuz.m_pd3dDevice, strPath, 0xffff00ff );
			//pTexture = g_Neuz.m_pHeroIcon;
			if(pTexture != NULL)
			{
				point.y -= pTexture->m_size.cy + 5;
				pTexture->Render( &g_Neuz.m_2DRender, point );
			}
		}
		else if(m_nCampusPoint == 2)
		{
			strPath = MakePath( DIR_ICON, "Rebirth_Mark1.png");
			pTexture = CWndBase::m_textureMng.AddTexture( g_Neuz.m_pd3dDevice, strPath, 0xffff00ff );
			//pTexture = g_Neuz.m_pHeroIcon;
			if(pTexture != NULL)
			{
				point.y -= pTexture->m_size.cy + 5;
				pTexture->Render( &g_Neuz.m_2DRender, point );
			}
		}
		else if(m_nCampusPoint == 3)
		{
			strPath = MakePath( DIR_ICON, "Rebirth_Mark2.png");
			pTexture = CWndBase::m_textureMng.AddTexture( g_Neuz.m_pd3dDevice, strPath, 0xffff00ff );
			//pTexture = g_Neuz.m_pHeroIcon;
			if(pTexture != NULL)
			{
				point.y -= pTexture->m_size.cy + 5;
				pTexture->Render( &g_Neuz.m_2DRender, point );
			}
		}
		else if(m_nCampusPoint == 4)
		{
			strPath = MakePath( DIR_ICON, "Rebirth_Mark3.png");
			pTexture = CWndBase::m_textureMng.AddTexture( g_Neuz.m_pd3dDevice, strPath, 0xffff00ff );
			//pTexture = g_Neuz.m_pHeroIcon;
			if(pTexture != NULL)
			{
				point.y -= pTexture->m_size.cy + 5;
				pTexture->Render( &g_Neuz.m_2DRender, point );
			}
		}
		else if(m_nCampusPoint >= 5)
		{
			strPath = MakePath( DIR_ICON, "Rebirth_Mark4.png");
			pTexture = CWndBase::m_textureMng.AddTexture( g_Neuz.m_pd3dDevice, strPath, 0xffff00ff );
			//pTexture = g_Neuz.m_pHeroIcon;
			if(pTexture != NULL)
			{
				point.y -= pTexture->m_size.cy + 5;
				pTexture->Render( &g_Neuz.m_2DRender, point );
			}
		}

#endif //__CSC_VER9_1
	//¼*¹ö Á¤º¸
	y = 55+ nyAdd3;
	CString strServerName;
	strServerName.Format( "%s", g_dpCertified.GetServerName(g_Option.m_nSer) );
	if( TRUE ) //::GetLanguage() == LANG_JAP )
	{
		p2DRender->TextOut( 80, y, strServerName, dwColor );
		y += nNext;
	}
	else
	{
		p2DRender->TextOut( 50, y, strServerName, dwColor );
		y += nNext;
	}

	//ä³Î Á¤º¸
	LPSERVER_DESC pServerDesc = NULL;
	int nCount = 0;
	for( int j = 0; j < (int)( g_dpCertified.m_dwSizeofServerset ); j++ )
	{
		if(g_dpCertified.m_aServerset[j].dwParent == NULL_ID)
		{
			if(nCount++ == g_Option.m_nSer)
				pServerDesc = g_dpCertified.m_aServerset + j;
		}
		if(g_dpCertified.m_aServerset[j].dwParent != NULL_ID && g_dpCertified.m_aServerset[j].lEnable != 0L)
		{
			if(pServerDesc != NULL && g_dpCertified.m_aServerset[j].dwParent == pServerDesc->dwID)
			{
				strServerName.Format( "%s",  g_dpCertified.m_aServerset[j+g_Option.m_nMSer].lpName );
				if( TRUE ) //::GetLanguage() == LANG_JAP )
					p2DRender->TextOut( 80, y, strServerName, dwColor );
				else
					p2DRender->TextOut( 50, y, strServerName, dwColor );

				j = g_dpCertified.m_dwSizeofServerset;
			}
		}
	}
	/*
	y = 96;
	
	p2DRender->TextOut( 96, y, g_pPlayer->GetFlightLv(), dwColor ); y += nNext;
	{
		char szBuff[64];
		int nMaxFxp = prj.m_aFxpCharacter[ g_pPlayer->GetFlightLv() + 1 ].dwFxp;
		sprintf( szBuff, "%5.2f%%", (float)g_pPlayer->GetFxp() * 100.0f / (float)nMaxFxp );
		p2DRender->TextOut( 90, y, szBuff, dwColor ); y += nNext;
	}
	*/
	y = 10+ nyAdd3;
	dwColor = D3DCOLOR_ARGB(255, 0, 0, 180);
	p2DRender->TextOut( 7, y, prj.GetText(TID_GAME_CHARACTER_01), dwColor ); y += nNext;
	p2DRender->TextOut( 7, y, prj.GetText(TID_APP_CHARACTER_JOB), dwColor ); y += nNext;
	p2DRender->TextOut( 7, y, prj.GetText(TID_GAME_CHARACTER_02), dwColor ); y += nNext;
	//p2DRender->TextOut( 7, y, prj.GetText(TID_GAME_CHARACTER_03), dwColor ); y += nNext;
	//Á÷¾÷·¹º§ -> ¼*¹ö/ä³Î Á¤º¸
	p2DRender->TextOut( 7, y, prj.GetText(TID_GAME_CHAR_SERVER), dwColor ); y += nNext;
	p2DRender->TextOut( 7, y, prj.GetText(TID_GAME_CHAR_SERVERNAME), dwColor ); y += nNext;
	/*
	y += 10;
	p2DRender->TextOut( 7, y, prj.GetText(TID_GAME_CHARACTER_04), dwColor ); y += nNext;
	p2DRender->TextOut( 7, y, prj.GetText(TID_GAME_CHARACTER_05), dwColor ); y += nNext;
	p2DRender->TextOut( 7, y, prj.GetText(TID_GAME_CHARACTER_06), dwColor );
	*/

	p2DRender->TextOut( 60, 113, prj.GetText((TID_APP_CHARACTER_DETAIL)), D3DCOLOR_ARGB(255,0,0,0));
	/////////////////////////// detail begin //////////////////////////////////
	int nyAdd = 121;
	int x = 5, nNextX = 100;

	dwColor = D3DCOLOR_ARGB(255,0,0,0);
	x = 50; y = 10 + nyAdd;
	nNext = 15;
	// °ø°Ý·Â
	RenderATK( p2DRender, x, y );
	y += nNext;

	//¹æ¾î·Â
	if(	m_nStaCount != 0 && GetVirtualDEF() != g_pPlayer->GetShowDefense( FALSE ) ) //ÀÓÀÇ ½ºÅÈÀÌ º¯°æµÇ°í ÇöÀç ´É·ÂÄ¡¶û ´Ù¸¦ °æ¿ì
	{
		if( (g_nRenderCnt / 8) & 1 )	
		{
			dwColor = D3DCOLOR_ARGB(255,255,0,0);
		}
		p2DRender->TextOut( x , y, GetVirtualDEF(), dwColor ); y += nNext;
	}
	else
		p2DRender->TextOut( x , y, g_pPlayer->GetShowDefense( FALSE ), dwColor ); y += nNext;

	x = 140; y = 10 + nyAdd;

	//Å©¸®Æ¼ÄÃ
	CString strMsg;
	dwColor = D3DCOLOR_ARGB(255,0,0,0);
	if(	m_nDexCount != 0 && GetVirtualCritical() != g_pPlayer->GetCriticalProb() ) //ÀÓÀÇ ½ºÅÈÀÌ º¯°æµÇ°í ÇöÀç ´É·ÂÄ¡¶û ´Ù¸¦ °æ¿ì
	{
		if( (g_nRenderCnt / 8) & 1 )	
		{
			dwColor = D3DCOLOR_ARGB(255,255,0,0);
		}
		strMsg.Format( "%d%%", GetVirtualCritical() );
	}
	else
		strMsg.Format( "%d%%", g_pPlayer->GetCriticalProb() );
	p2DRender->TextOut( x , y, strMsg, dwColor ); y += nNext;

	//°ø°Ý¼Óµµ	
	float fAttackSpeed;
	dwColor = D3DCOLOR_ARGB(255,0,0,0);
	if(	m_nDexCount != 0 && GetVirtualATKSpeed() != g_pPlayer->GetAttackSpeed() ) //ÀÓÀÇ ½ºÅÈÀÌ º¯°æµÇ°í ÇöÀç ´É·ÂÄ¡¶û ´Ù¸¦ °æ¿ì
	{
		if( (g_nRenderCnt / 8) & 1 )	
		{
			dwColor = D3DCOLOR_ARGB(255,255,0,0);
		}
		fAttackSpeed = GetVirtualATKSpeed();
	}
	else
		fAttackSpeed = g_pPlayer->GetAttackSpeed();

	strMsg.Format( "%d%%", int( fAttackSpeed*100.0f ) /2 );
	p2DRender->TextOut( x , y, strMsg, dwColor ); y += nNext;

	x =15; nNextX = 60;
	// ¾Æ·¡ºÎÅÍ ´É·ÂÄ¡ °ü·Ã 
	y = 52 + nyAdd;
	int StatYPos = 50;

	if( g_pPlayer->m_nStr == g_pPlayer->GetStr() )
		dwColor = D3DCOLOR_ARGB(255,0,0,0);
	else
	if( g_pPlayer->m_nStr < g_pPlayer->GetStr() )
		dwColor = D3DCOLOR_ARGB(255,0,0,255);
	else
		dwColor = D3DCOLOR_ARGB(255,255,0,0);

	p2DRender->TextOut( StatYPos, y, g_pPlayer->GetStr(), dwColor ); y += nNext;

	if( g_pPlayer->m_nSta == g_pPlayer->GetSta() )
		dwColor = D3DCOLOR_ARGB(255,0,0,0);
	else
	if( g_pPlayer->m_nSta < g_pPlayer->GetSta() )
		dwColor = D3DCOLOR_ARGB(255,0,0,255);
	else
		dwColor = D3DCOLOR_ARGB(255,255,0,0);

	p2DRender->TextOut( StatYPos, y, g_pPlayer->GetSta(), dwColor ); y += nNext;

	if( g_pPlayer->m_nDex == g_pPlayer->GetDex() )
		dwColor = D3DCOLOR_ARGB(255,0,0,0);
	else
	if( g_pPlayer->m_nDex < g_pPlayer->GetDex() )
		dwColor = D3DCOLOR_ARGB(255,0,0,255);
	else
		dwColor = D3DCOLOR_ARGB(255,255,0,0);

	p2DRender->TextOut( StatYPos, y, g_pPlayer->GetDex(), dwColor ); y += nNext;

	if( g_pPlayer->m_nInt == g_pPlayer->GetInt() )
		dwColor = D3DCOLOR_ARGB(255,0,0,0);
	else
	if( g_pPlayer->m_nInt < g_pPlayer->GetInt() )
		dwColor = D3DCOLOR_ARGB(255,0,0,255);
	else
		dwColor = D3DCOLOR_ARGB(255,255,0,0);

	p2DRender->TextOut( StatYPos, y, g_pPlayer->GetInt(), dwColor ); y += nNext;

	if(m_nGpPoint)
	{
		if( (g_nRenderCnt / 8) & 1 )	
		{
			dwColor = D3DCOLOR_ARGB(255,255,0,0);
		}
	}

	p2DRender->TextOut( 105, y, m_nGpPoint, dwColor ); y += nNext;

	CRect rectHittest[5];

	rectHittest[0].SetRect( 10, 52+ nyAdd, 80, 65 + nyAdd);
	rectHittest[1].SetRect( 10, 67+ nyAdd, 80, 80 + nyAdd);
	rectHittest[2].SetRect( 10, 82+ nyAdd, 80, 95 + nyAdd);
	rectHittest[3].SetRect( 10, 97+ nyAdd, 80, 110 + nyAdd);
	rectHittest[4].SetRect( 10, 112+ nyAdd, 160, 125 + nyAdd);

	CRect rectTemp;
	CPoint ptTemp;
	// ÅøÆÁ ³ª¿À°Ô Çϱâ( Str, Sta, Dex, Int, GP )
	CPoint ptMouse = GetMousePoint();
	for( int iC = 0 ; iC < 5 ; ++iC )
	{
		if( rectHittest[iC].PtInRect( ptMouse ) )
		{
			ClientToScreen( &ptMouse );
			ClientToScreen( &rectHittest[iC] );
			CEditString strEdit;
			CString szString;
			DWORD dwColorName = D3DCOLOR_XRGB( 0, 93, 0 );
			DWORD dwColorCommand = D3DCOLOR_XRGB( 180, 0, 0 );
			if( iC == 0 )	// STR
			{
				szString.Format( "%s", prj.GetText( TID_TOOLTIP_STR ) );
				strEdit.AddString( szString, dwColorName , ESSTY_BOLD );
				szString.Format( "  %d\n ", g_pPlayer->GetStr() );
				strEdit.AddString( szString, dwColorName , ESSTY_BOLD );
				strEdit.AddString( prj.GetText( TID_TOOLTIP_COMMAND_STR0 ) );
				strEdit.AddString( "(" );
				strEdit.AddString( prj.GetText( TID_TOOLTIP_COMMAND_STR1 ), dwColorCommand );
				strEdit.AddString( ")" );
			}
			else if( iC == 1 ) // STA
			{
				szString.Format( "%s", prj.GetText( TID_TOOLTIP_STA ) );
				strEdit.AddString( szString, dwColorName , ESSTY_BOLD );
				szString.Format( "  %d\n ", g_pPlayer->GetSta() );
				strEdit.AddString( szString, dwColorName , ESSTY_BOLD );
				strEdit.AddString( prj.GetText( TID_TOOLTIP_COMMAND_STA0 ) );
				strEdit.AddString( "\n " );
				strEdit.AddString( prj.GetText( TID_TOOLTIP_COMMAND_STA1 ) );
			}
			else if( iC == 2 ) // DEX
			{
				szString.Format( "%s", prj.GetText( TID_TOOLTIP_DEX ) );
				strEdit.AddString( szString, dwColorName , ESSTY_BOLD );
				szString.Format( "  %d\n ", g_pPlayer->GetDex() );
				strEdit.AddString( szString, dwColorName , ESSTY_BOLD );
				strEdit.AddString( prj.GetText( TID_TOOLTIP_COMMAND_DEX0 ) );
				strEdit.AddString( "\n " );
				strEdit.AddString( prj.GetText( TID_TOOLTIP_COMMAND_DEX1 ) );
				strEdit.AddString( "\n " );
				strEdit.AddString( prj.GetText( TID_TOOLTIP_COMMAND_DEX2 ) );
				strEdit.AddString( "\n " );
				strEdit.AddString( prj.GetText( TID_TOOLTIP_COMMAND_DEX3 ), dwColorCommand );
			}
			else if( iC == 3 ) // INT
			{
				szString.Format( "%s", prj.GetText( TID_TOOLTIP_INT ) );
				strEdit.AddString( szString, dwColorName , ESSTY_BOLD );
				szString.Format( "  %d\n ", g_pPlayer->GetInt() );
				strEdit.AddString( szString, dwColorName , ESSTY_BOLD );
				strEdit.AddString( prj.GetText( TID_TOOLTIP_COMMAND_INT0 ) );
				strEdit.AddString( "\n " );
				strEdit.AddString( prj.GetText( TID_TOOLTIP_COMMAND_INT1 ) );
			}
			else // GP
				strEdit.AddString( prj.GetText( TID_TOOLTIP_CHARSTATUS_GPPOINT ) );
			
			g_toolTip.PutToolTip( 100, strEdit, rectHittest[iC], ptMouse, 3 );
			break;
		}
	}

	y = 10 + nyAdd;
	dwColor = D3DCOLOR_ARGB(255, 0, 0, 180);
	p2DRender->TextOut( 7, y, prj.GetText(TID_GAME_CHARACTER_13), dwColor ); 
	p2DRender->TextOut( 85, y, prj.GetText(TID_GAME_CHARACTER_14), dwColor ); y += nNext;

	p2DRender->TextOut( 7, y, prj.GetText(TID_TOOLTIP_DEFENCE), dwColor ); 
	p2DRender->TextOut( 85, y, prj.GetText(TID_GAME_CHARACTER_15), dwColor ); y += nNext;
	y += 12;
	p2DRender->TextOut( 7, y, prj.GetText(TID_TOOLTIP_STR), dwColor ); y += nNext;
	p2DRender->TextOut( 7, y, prj.GetText(TID_TOOLTIP_STA), dwColor ); y += nNext;
	p2DRender->TextOut( 7, y, prj.GetText(TID_TOOLTIP_DEX), dwColor ); y += nNext;
	p2DRender->TextOut( 7, y, prj.GetText(TID_TOOLTIP_INT), dwColor ); y += nNext;
	p2DRender->TextOut( 7, y, prj.GetText(TID_GAME_CHARACTER_07), dwColor ); y += nNext;
	
	//´É·ÂÄ¡ »óÅÂ Tooltip
	rect.SetRect( 7, 10+ nyAdd, 160, 38 + nyAdd);
	if( rect.PtInRect( ptMouse ) )
	{
		ClientToScreen( &ptMouse );
		ClientToScreen( &rect );
		CEditString strEdit;
		if(m_nStrCount != 0 || m_nStaCount != 0 || m_nDexCount != 0 || m_nIntCount != 0)
			strEdit.AddString( prj.GetText( TID_TOOLTIP_CHARSTATUS_STATUS1 ) );
		else
			strEdit.AddString( prj.GetText( TID_TOOLTIP_CHARSTATUS_STATUS2 ) );
		g_toolTip.PutToolTip( 100, strEdit, rect, ptMouse, 3 );
	}
	//Edit Tooltip
	rect.SetRect(90, 52+ nyAdd, 160, 110+ nyAdd);
	if( rect.PtInRect( ptMouse ) )
	{
		ClientToScreen( &ptMouse );
		ClientToScreen( &rect );
		CEditString strEdit;
		strEdit.AddString( prj.GetText( TID_TOOLTIP_CHARSTATUS_EDIT ) );
		g_toolTip.PutToolTip( 100, strEdit, rect, ptMouse, 3 );
	}	
	//Button Tooltip
	rect = m_wndApply.m_rectWindow;
	if( rect.PtInRect( ptMouse ) )
	{
		ClientToScreen( &ptMouse );
		ClientToScreen( &rect );
		CEditString strEdit;
		strEdit.AddString( prj.GetText( TID_TOOLTIP_CHARSTATUS_APPLY ) );
		g_toolTip.PutToolTip( 100, strEdit, rect, ptMouse, 3 );
	}	
	rect = m_wndReset.m_rectWindow;
	if( rect.PtInRect( ptMouse ) )
	{
		ClientToScreen( &ptMouse );
		ClientToScreen( &rect );
		CEditString strEdit;
		strEdit.AddString( prj.GetText( TID_TOOLTIP_CHARSTATUS_RESET ) );
		g_toolTip.PutToolTip( 100, strEdit, rect, ptMouse, 3 );
	}

	//////////////// pvp /////////////////////////
	
	if( g_pPlayer->IsBaseJob() )
	{
		if( g_pPlayer->GetLevel() >= MAX_JOB_LEVEL )
			m_wndChangeJob.EnableWindow( TRUE );
		else
			m_wndChangeJob.EnableWindow( FALSE );
	}
	else if( g_pPlayer->IsExpert() )
	{
		if( g_pPlayer->GetLevel() >= MAX_JOB_LEVEL + MAX_EXP_LEVEL )
			m_wndChangeJob.EnableWindow( TRUE );
		else
			m_wndChangeJob.EnableWindow( FALSE );
	}

	//CRect rect = GetClientRect();
	//rect.bottom -= 30;
	int nyAdd2 = 284;
	y = 15 + nyAdd2, nNext = 15;
	dwColor = D3DCOLOR_ARGB(255,0,0,0);
	char szBuff[32];
	int gap1 = 0;
	int gap2 = 0;
	gap1 -= 10;
	gap2 -= 10;
	
	p2DRender->TextOut( 60, 281, prj.GetText((TID_GAME_CHARACTTER_PVP0)), dwColor );

	strcpy( szBuff, g_pPlayer->GetFameName() );
	if( IsEmpty(szBuff) ) {	szBuff[0] = '-'; szBuff[1] = NULL; }
	p2DRender->TextOut( 100+gap1, y, szBuff  , dwColor ); y += nNext;
	y += 4;
	p2DRender->TextOut( 100+gap2, y, g_pPlayer->m_nFame	, dwColor ); y += nNext;
#if __VER >= 8 // __S8_PK
	y += 20;
	p2DRender->TextOut( 100+gap2, y, g_pPlayer->GetPKValue()	, dwColor ); y += nNext;
	y += 4;
	p2DRender->TextOut( 100+gap2, y, g_pPlayer->GetPKPropensity()	, dwColor ); y += nNext;
#else // __VER >= 8 // __S8_PK
	y += 4;
	p2DRender->TextOut( 100+gap2, y, g_pPlayer->m_nNumKill	, dwColor ); y += nNext;
	y += 4;
	p2DRender->TextOut( 100+gap2, y, g_pPlayer->GetSlaughterName(), dwColor ); y += nNext;
	y += 4;
	p2DRender->TextOut( 100+gap2, y, g_pPlayer->m_nSlaughter	, dwColor ); y += nNext;
#endif // __VER >= 8 // __S8_PK
	
	y = 13 + nyAdd2;
	nNext = 19;
	dwColor = D3DCOLOR_ARGB(255, 0, 0, 180);
#if __VER >= 8 // __S8_PK
	p2DRender->TextOut( 7, y, prj.GetText(TID_GAME_CHARACTTER_PVP1), dwColor ); y += nNext;
	p2DRender->TextOut( 7, y, prj.GetText(TID_GAME_CHARACTTER_PVP2), dwColor ); y += nNext;
	y += 20;
	p2DRender->TextOut( 7, y, prj.GetText(TID_GAME_CHARACTTER_PVP3), dwColor ); y += nNext;
	p2DRender->TextOut( 7, y, prj.GetText(TID_GAME_CHARACTTER_PVP4), dwColor ); y += nNext;
#else // __VER >= 8 // __S8_PK
	p2DRender->TextOut( 7, y, prj.GetText(TID_GAME_CHARACTER_08), dwColor ); y += nNext;
	p2DRender->TextOut( 7, y, prj.GetText(TID_GAME_CHARACTER_09), dwColor ); y += nNext;
	p2DRender->TextOut( 7, y, prj.GetText(TID_GAME_CHARACTER_10), dwColor ); y += nNext;
	p2DRender->TextOut( 7, y, prj.GetText(TID_GAME_CHARACTER_11), dwColor ); y += nNext;
	p2DRender->TextOut( 7, y, prj.GetText(TID_GAME_CHARACTER_12), dwColor ); y += nNext;
#endif // __VER >= 8 // __S8_PK
Quote:
void CWndCharInfo::RenderATK
Code:
void CWndCharInfo::RenderATK( C2DRender* p2DRender, int x, int y )
{
	DWORD dwColor = D3DCOLOR_ARGB(255,0,0,0);
	char szText[32];
	int nMin, nMax;
	int nTemp1, nTemp2;

	GetVirtualATK(&nTemp1, &nTemp2);
	g_pPlayer->GetHitMinMax( &nMin, &nMax );

	if(	(m_nStrCount != 0 || m_nDexCount != 0 || m_nIntCount != 0) && (nTemp1 != nMin || nTemp2 != nMax) ) //ÀÓÀÇ ½ºÅÈÀÌ º¯°æµÇ°í ÇöÀç ´É·ÂÄ¡¶û ´Ù¸¦ °æ¿ì
	{
		if( (g_nRenderCnt / 8) & 1 )	
		{
			dwColor = D3DCOLOR_ARGB(255,255,0,0);
		}

		GetVirtualATK(&nMin, &nMax);
	}
	else
		g_pPlayer->GetHitMinMax( &nMin, &nMax );
	
	int nATK = ( nMin + nMax ) / 2;

	if( g_pPlayer->IsSMMode( SM_ATTACK_UP1 ) || g_pPlayer->IsSMMode( SM_ATTACK_UP ) )
		nATK	= (int)( nATK * 1.2f );
	
	if( 0 < g_pPlayer->GetParam( DST_ATKPOWER_RATE, 0 ) )
		nATK = nATK + ( nATK * g_pPlayer->GetParam( DST_ATKPOWER_RATE, 0 ) / 100 );

	nATK += g_pPlayer->GetWeaponPlusDamage( 1, FALSE );
	nATK += g_pPlayer->GetParam( DST_ATKPOWER, 0 );

#ifdef __JEFF_11
	if( nATK < 0 )
		nATK	= 0;
#endif	// __JEFF_11

	wsprintf( szText, "%d", nATK );

	p2DRender->TextOut( x, y, szText, dwColor );
}
Name of the file is Legend_Mark.png
Thanks ryuzakinara!
10/01/2019 18:45 ryuzakinara#6

It should work ;)
keep me informed

Exchange :


Code:
void CWndCharInfo::OnDraw(C2DRender* p2DRender)
{

	CRect rect = GetClientRect();
	rect.bottom -= 30;
	int			y = 0, nNext = 15, nyAdd3 = 21;
	DWORD		dwColor = D3DCOLOR_ARGB(255,0,0,0);

#if __VER >= 10 // __CSC_VER9_1
	BYTE		checkhero = g_pPlayer->GetLegendChar();
	int			xpos = 0;
	int			ypos = 0;
	CTexture*	pTexture;
	CString		strPath;
	CPoint		point;
#endif //__CSC_VER9_1

	y = 13;
	p2DRender->TextOut( 60, y, prj.GetText((TID_APP_CHARACTER_BASE)), dwColor );
	y = 10 + nyAdd3;
	if( TRUE ) //::GetLanguage() == LANG_JAP )
	{
		p2DRender->TextOut( 80, y, g_pPlayer->GetName()       , dwColor); y += nNext;
		p2DRender->TextOut( 80, y, g_pPlayer->GetJobString()  , dwColor ); y += nNext;
#if __VER >= 10 // __CSC_VER9_1
		ypos = y;
		if(checkhero == LEGEND_CLASS_MASTER)
		{
			if(g_pPlayer->GetLevel() < 100)
				xpos = 97;
			else
				xpos = 103;
		}
#if __VER >= 15 // __HERO129_VER15				// 15Â÷ È÷¾î·Î ·¹º§È®Àå
		if(checkhero == LEGEND_CLASS_HERO)
			xpos = 103;
	#else
		if(checkhero == LEGEND_CLASS_HERO)
			xpos = 80;
		else
	#endif	// 15Â÷ È÷¾î·Î ·¹º§È®Àå	
			p2DRender->TextOut( 80, y, g_pPlayer->GetLevel()      , dwColor ); y += nNext;
#else
		p2DRender->TextOut( 80, y, g_pPlayer->GetLevel()      , dwColor ); y += nNext;
#endif //__CSC_VER9_1

		y = 81+ nyAdd3;
	}
	else
	{
		p2DRender->TextOut( 50, y, g_pPlayer->GetName()       , dwColor); y += nNext;
		p2DRender->TextOut( 50, y, g_pPlayer->GetJobString()  , dwColor ); y += nNext;
#if __VER >= 10 // __CSC_VER9_1
		ypos = y;
		if(checkhero == LEGEND_CLASS_MASTER)
		{
			if(g_pPlayer->GetLevel() < 100)
				xpos = 67;
			else
				xpos = 73;
		}
#if __VER >= 15 // __HERO129_VER15				// 15Â÷ È÷¾î·Î ·¹º§È®Àå
		if(checkhero == LEGEND_CLASS_HERO)
			xpos = 73;
	#else
		if(checkhero == LEGEND_CLASS_HERO)
			xpos = 50;
		else
	#endif	// 15Â÷ È÷¾î·Î ·¹º§È®Àå	
			p2DRender->TextOut( 50, y, g_pPlayer->GetLevel()      , dwColor ); y += nNext;
	
#else
		p2DRender->TextOut( 50, y, g_pPlayer->GetLevel()      , dwColor ); y += nNext;
#endif //__CSC_VER9_1
		y = 81 + nyAdd3;
	}

#if __VER >= 10 // __CSC_VER9_1
	point.x = xpos;
	point.y = ypos - 2;

	if(checkhero == LEGEND_CLASS_MASTER && m_nCampusPoint == 0) //Àü½ÂÀ» ÇßÀ» °æ¿ì.
	{
		if(/*g_pPlayer->m_nLevel >= 60 && */g_pPlayer->m_nLevel < 70 ) //Level DownµÉ °æ¿ì¸¦ »ý°¢Çؼ* ÁÖ¼®Ã³¸®
			strPath = MakePath( DIR_ICON, "Icon_MasterMark1.dds");
		else if(g_pPlayer->m_nLevel >= 70 && g_pPlayer->m_nLevel < 80 )
			strPath = MakePath( DIR_ICON, "Icon_MasterMark2.dds");
		else if(g_pPlayer->m_nLevel >= 80 && g_pPlayer->m_nLevel < 90 )
			strPath = MakePath( DIR_ICON, "Icon_MasterMark3.dds");
		else if(g_pPlayer->m_nLevel >= 90 && g_pPlayer->m_nLevel < 100 )
			strPath = MakePath( DIR_ICON, "Icon_MasterMark4.dds");
		else if(g_pPlayer->m_nLevel >= 100 && g_pPlayer->m_nLevel < 110 )
			strPath = MakePath( DIR_ICON, "Icon_MasterMark5.dds");
		else if(g_pPlayer->m_nLevel >= 110 && g_pPlayer->m_nLevel <= 120 )
			strPath = MakePath( DIR_ICON, "Icon_MasterMark6.dds");
	//	else if(Akerius >= 1 )
	//		strPath = MakePath( DIR_ICON, "Rebirth_R.png");
		pTexture = CWndBase::m_textureMng.AddTexture( g_Neuz.m_pd3dDevice, strPath, 0xffff00ff );
		if(pTexture != NULL)
			pTexture->Render( p2DRender, point );			
		
	}
	else if(checkhero == LEGEND_CLASS_HERO && m_nCampusPoint == 0) //¿µ¿õÀÏ °æ¿ì.
	{
		if(g_pPlayer->m_nLevel >= 121 && g_pPlayer->m_nLevel )
		strPath = MakePath( DIR_ICON, "Icon_HeroMark.dds");
		pTexture = CWndBase::m_textureMng.AddTexture( g_Neuz.m_pd3dDevice, strPath, 0xffff00ff );
		if(pTexture != NULL)
			pTexture->Render( p2DRender, point );
	}
#ifdef __3RD_LEGEND16
		else if(checkhero == LEGEND_CLASS_LEGENDHERO && m_nCampusPoint == 0) //¿µ¿õÀÏ °æ¿ì.
	{
		if(g_pPlayer->m_nLevel >= 130 && g_pPlayer->m_nLevel < 176 )
			strPath = MakePath( DIR_ICON, "Legend_Mark.png");
			pTexture = CWndBase::m_textureMng.AddTexture( g_Neuz.m_pd3dDevice, strPath, 0xfff0000f );
		if(pTexture != NULL)
			pTexture->Render( p2DRender, point );
	}
	
#endif
	else if(m_nCampusPoint == 1)
		{
			strPath = MakePath( DIR_ICON, "Rebirth_Mark.png");
			pTexture = CWndBase::m_textureMng.AddTexture( g_Neuz.m_pd3dDevice, strPath, 0xffff00ff );
			//pTexture = g_Neuz.m_pHeroIcon;
			if(pTexture != NULL)
			{
				point.y -= pTexture->m_size.cy + 5;
				pTexture->Render( &g_Neuz.m_2DRender, point );
			}
		}
		else if(m_nCampusPoint == 2)
		{
			strPath = MakePath( DIR_ICON, "Rebirth_Mark1.png");
by

Code:
void CWndCharInfo::OnDraw(C2DRender* p2DRender)
{

	CRect rect = GetClientRect();
	rect.bottom -= 30;
	int			y = 0, nNext = 15, nyAdd3 = 21;
	DWORD		dwColor = D3DCOLOR_ARGB(255,0,0,0);

#if __VER >= 10 // __CSC_VER9_1
	BYTE		checkhero = g_pPlayer->GetLegendChar();
	int			xpos = 0;
	int			ypos = 0;
	CTexture*	pTexture;
	CString		strPath;
	CPoint		point;
#endif //__CSC_VER9_1

	y = 13;
	p2DRender->TextOut( 60, y, prj.GetText((TID_APP_CHARACTER_BASE)), dwColor );
	y = 10 + nyAdd3;
	if( TRUE ) //::GetLanguage() == LANG_JAP )
	{
		p2DRender->TextOut( 80, y, g_pPlayer->GetName()       , dwColor); y += nNext;
		p2DRender->TextOut( 80, y, g_pPlayer->GetJobString()  , dwColor ); y += nNext;
#if __VER >= 10 // __CSC_VER9_1
		ypos = y;
		if(checkhero == LEGEND_CLASS_MASTER)
		{
			if(g_pPlayer->GetLevel() < 100)
				xpos = 97;
			else
				xpos = 103;
		}
#if __VER >= 15 // __HERO129_VER15				// 15Â÷ È÷¾î·Î ·¹º§È®Àå
		if(checkhero == LEGEND_CLASS_HERO || checkhero == LEGEND_CLASS_LEGENDHERO)
			xpos = 103;
	#else
		if(checkhero == LEGEND_CLASS_HERO || checkhero == LEGEND_CLASS_LEGENDHERO)
			xpos = 80;
		else
	#endif	// 15Â÷ È÷¾î·Î ·¹º§È®Àå	
			p2DRender->TextOut( 80, y, g_pPlayer->GetLevel()      , dwColor ); y += nNext;
#else
		p2DRender->TextOut( 80, y, g_pPlayer->GetLevel()      , dwColor ); y += nNext;
#endif //__CSC_VER9_1

		y = 81+ nyAdd3;
	}
	else
	{
		p2DRender->TextOut( 50, y, g_pPlayer->GetName()       , dwColor); y += nNext;
		p2DRender->TextOut( 50, y, g_pPlayer->GetJobString()  , dwColor ); y += nNext;
#if __VER >= 10 // __CSC_VER9_1
		ypos = y;
		if(checkhero == LEGEND_CLASS_MASTER)
		{
			if(g_pPlayer->GetLevel() < 100)
				xpos = 67;
			else
				xpos = 73;
		}
#if __VER >= 15 // __HERO129_VER15				// 15Â÷ È÷¾î·Î ·¹º§È®Àå
		if(checkhero == LEGEND_CLASS_HERO || checkhero == LEGEND_CLASS_LEGENDHERO )
			xpos = 73;
	#else
		if(checkhero == LEGEND_CLASS_HERO || checkhero == LEGEND_CLASS_LEGENDHERO )
			xpos = 50;
		else
	#endif	// 15Â÷ È÷¾î·Î ·¹º§È®Àå	
			p2DRender->TextOut( 50, y, g_pPlayer->GetLevel()      , dwColor ); y += nNext;
	
#else
		p2DRender->TextOut( 50, y, g_pPlayer->GetLevel()      , dwColor ); y += nNext;
#endif //__CSC_VER9_1
		y = 81 + nyAdd3;
	}

#if __VER >= 10 // __CSC_VER9_1
	point.x = xpos;
	point.y = ypos - 2;

	if(checkhero == LEGEND_CLASS_MASTER && m_nCampusPoint == 0) //Àü½ÂÀ» ÇßÀ» °æ¿ì.
	{
		if(/*g_pPlayer->m_nLevel >= 60 && */g_pPlayer->m_nLevel < 70 ) //Level DownµÉ °æ¿ì¸¦ »ý°¢Çؼ* ÁÖ¼®Ã³¸®
			strPath = MakePath( DIR_ICON, "Icon_MasterMark1.dds");
		else if(g_pPlayer->m_nLevel >= 70 && g_pPlayer->m_nLevel < 80 )
			strPath = MakePath( DIR_ICON, "Icon_MasterMark2.dds");
		else if(g_pPlayer->m_nLevel >= 80 && g_pPlayer->m_nLevel < 90 )
			strPath = MakePath( DIR_ICON, "Icon_MasterMark3.dds");
		else if(g_pPlayer->m_nLevel >= 90 && g_pPlayer->m_nLevel < 100 )
			strPath = MakePath( DIR_ICON, "Icon_MasterMark4.dds");
		else if(g_pPlayer->m_nLevel >= 100 && g_pPlayer->m_nLevel < 110 )
			strPath = MakePath( DIR_ICON, "Icon_MasterMark5.dds");
		else if(g_pPlayer->m_nLevel >= 110 && g_pPlayer->m_nLevel <= 120 )
			strPath = MakePath( DIR_ICON, "Icon_MasterMark6.dds");
	//	else if(Akerius >= 1 )
	//		strPath = MakePath( DIR_ICON, "Rebirth_R.png");
		pTexture = CWndBase::m_textureMng.AddTexture( g_Neuz.m_pd3dDevice, strPath, 0xffff00ff );
		if(pTexture != NULL)
			pTexture->Render( p2DRender, point );			
		
	}
	else if(checkhero == LEGEND_CLASS_HERO || checkhero == LEGEND_CLASS_LEGENDHERO || m_nCampusPoint == 0 ) //영웅일 경우.
	{
		strPath = MakePath( DIR_ICON, "Icon_HeroMark.dds");
		pTexture = CWndBase::m_textureMng.AddTexture( g_Neuz.m_pd3dDevice, strPath, 0xffff00ff );
		if(pTexture != NULL)
			pTexture->Render( p2DRender, point );
	}
	else if(m_nCampusPoint == 1)
		{
			strPath = MakePath( DIR_ICON, "Rebirth_Mark.png");
			pTexture = CWndBase::m_textureMng.AddTexture( g_Neuz.m_pd3dDevice, strPath, 0xffff00ff );
			//pTexture = g_Neuz.m_pHeroIcon;
			if(pTexture != NULL)
			{
				point.y -= pTexture->m_size.cy + 5;
				pTexture->Render( &g_Neuz.m_2DRender, point );
			}
		}
		else if(m_nCampusPoint == 2)
		{
			strPath = MakePath( DIR_ICON, "Rebirth_Mark1.png");
10/01/2019 19:00 rapiskid2#7
#FIXED

Thanks to ryuzakinara, Cheers! :handsdown:
10/01/2019 19:41 ryuzakinara#8
You're welcome