Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 11/30/23 in Posts

  1. Рейтинг над головой персонажа Чтобы добавить рейтинг, нужно в исходном коде клиента открыть файл 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 (ХП персонажа). Вы можете настроить свои формулы, к примеру сумму основных характеристик персонажа.
    1 point

Chat

Chat

Please enter your display name

×
×
  • Create New...