Jump to content

 Рейтинг над головой персонажа


Graf

Recommended Posts

 Рейтинг над головой персонажа

image.png.ce27754b752b4511816da230151cfd1b.png

Чтобы добавить рейтинг, нужно в исходном коде клиента открыть файл UIHeadSay.cpp, найти:

#ifdef _LOG_NAME_                     //и§’и‰ІеђЌз§°
    if( CCharacter::IsShowLogName )
    {
		CChaStateMgr* pState = _pOwn->GetStateMgr();
		int nCount = pState->GetSkillStateNum();
		for( int i=0; i<nCount; i++ )
		{
			y -= 20;
			CGuiFont::s_Font.Render( pState->GetSkillState(i)->szName, x, y, COLOR_WHITE );
		}
    }
#endif

и ниже вписать:

// Вывод рейтинга
	if (_pOwn->IsPlayer()) {
	
		if (_IsShowName) {
			if (_pOwn->getGuildID())
				y -= 14;
			char RenderTextRating[32] = {0};
			sprintf(RenderTextRating, "- [%d] -", CalculateRating(_pOwn->getGameAttr()));
			int RatingLength =  CGuiFont::s_Font.GetWidth(RenderTextRating);
			CGuiFont::s_Font.Render(RenderTextRating, x - (RatingLength / 2), y - 28, 0xFF000000 );
			CGuiFont::s_Font.Render(RenderTextRating, x - (RatingLength / 2) - 1, y - 28 - 1, 0xFF00FFFF );	
		}
	
	}

 

Найти функцию:

void CHeadSay::SetName( const char* name )
{
    _nChaNameOffX = 0 - CGuiFont::s_Font.GetWidth( name )/2;
}

И ниже вставить:

// Подсчет рейтинга
inline int CalculateRating(SGameAttr* attrArr) {
	int result = 0;
	result += attrArr->get(ATTR_HP);
	return result;
}

 

В данном примере рейтинг выводит количество ATTR_HP (ХП персонажа).

Вы можете настроить свои формулы, к примеру сумму основных характеристик персонажа.

Edited by Graf
  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Chat

Chat

Please enter your display name

×
×
  • Create New...