Skocz do zawartości
Masz już aplikację Sharegon?

Odkryj wszystkie możliwości. Dowiedz się więcej

Sharegon.pl

Zainstaluj aplikację Sharegon i korzystaj z powiadomień push oraz licznika nowych aktywności bezpośrednio z ekranu głównego.

Aby zainstalować tę aplikację na iOS i iPadOS.
  1. Tap the Share icon in Safari
  2. Przewiń menu i stuknij Dodaj do ekranu początkowego.
  3. Stuknij Dodaj w prawym górnym rogu.
Zainstaluj aplikację Sharegon na Androidzie
  1. Otwórz Sklep Google Play na swoim smarfonie.
  2. Wyszukaj „Sharegon” w pasku wyszukiwania.
  3. Stuknij „Zainstaluj”, aby pobrać aplikację.

Nazwa gildi - zmiana koloru według poziomu

Featured Replies

Opublikowano

Witam.

Znalazłem kod na naszym forum aby zmienić kolor poziomu wyświetlanego nad postacią. Chciałem użyć kod aby zmienić kolor nazwy gildii nad postacią.

W załączniku ss'y jak wygląda kod w praktyce. Co muszę zrobić aby kod zadziałał?

kod z forum:

C++Kod został skopiowany
void CInstanceBase::UpdateTextTailLevel(DWORD level){	static D3DXCOLOR s_kLevelColor = D3DXCOLOR(152.0f/255.0f, 255.0f/255.0f, 51.0f/255.0f, 1.0f); 	const char* levelColors[] = {		"|cFF959697", "|cFFFFFFFF", "|cFF00FF7F", "|cFF00FF00", "|cFF00CCFF",		"|cFF0000FF", "|cFFDA70D6", "|cFFC67171", "|cFF00FFFF", "|cFFFFCC00",		"|cFFFF4500", "|cFFCD661D"	}; 	int colorIndex = (level >= 105) ? 11 :					 (level >= 100) ? 10 :					 (level >= 90)  ? 9  :					 (level >= 80)  ? 8  :					 (level >= 70)  ? 7  :					 (level >= 60)  ? 6  :					 (level >= 50)  ? 5  :					 (level >= 40)  ? 4  :					 (level >= 30)  ? 3  :					 (level >= 20)  ? 2  :					 (level >= 10)  ? 1  : 0; 	char szText[256];	sprintf(szText, "%sLv. %d|r", levelColors[colorIndex], level);	CPythonTextTail::Instance().AttachLevel(GetVirtualID(), szText, s_kLevelColor);}

Screenshot_103.png.b45c9a85c2a61462156f6b70cf20f6c0.png

C++Kod został skopiowany
#ifdef SHOW_LIDER_AND_GENERAL_GUILDvoid CPythonTextTail::RegisterCharacterTextTail (DWORD dwGuildID, BYTE dwNewIsGuildName, DWORD dwVirtualID, const D3DXCOLOR& c_rColor, float fAddHeight)#elsevoid CPythonTextTail::RegisterCharacterTextTail (DWORD dwGuildID, DWORD dwVirtualID, const D3DXCOLOR& c_rColor, float fAddHeight)#endif{	CInstanceBase* pCharacterInstance = CPythonCharacterManager::Instance().GetInstancePtr (dwVirtualID);	if (!pCharacterInstance)	{		return;	}	TTextTail* pTextTail = RegisterTextTail (dwVirtualID,						   pCharacterInstance->GetNameString(),						   pCharacterInstance->GetGraphicThingInstancePtr(),						   pCharacterInstance->GetGraphicThingInstanceRef().GetHeight() + fAddHeight,						   c_rColor);	CGraphicTextInstance* pTextInstance = pTextTail->pTextInstance;	pTextInstance->SetOutline (true);	pTextInstance->SetVerticalAlign (CGraphicTextInstance::VERTICAL_ALIGN_BOTTOM);	pTextTail->pMarkInstance=NULL;	pTextTail->pGuildNameTextInstance=NULL;	pTextTail->pTitleTextInstance=NULL;	pTextTail->pLevelTextInstance=NULL;	if (0 != dwGuildID)	{		pTextTail->pMarkInstance = CGraphicMarkInstance::New();		DWORD dwMarkID = CGuildMarkManager::Instance().GetMarkID (dwGuildID);		if (dwMarkID != CGuildMarkManager::INVALID_MARK_ID)		{			std::string markImagePath;			if (CGuildMarkManager::Instance().GetMarkImageFilename (dwMarkID / CGuildMarkImage::MARK_TOTAL_COUNT, markImagePath))			{				pTextTail->pMarkInstance->SetImageFileName (markImagePath.c_str());				pTextTail->pMarkInstance->Load();				pTextTail->pMarkInstance->SetIndex (dwMarkID % CGuildMarkImage::MARK_TOTAL_COUNT);			}		}		std::string strGuildName;		if (!CPythonGuild::Instance().GetGuildName (dwGuildID, &strGuildName))		{			strGuildName = "Noname";		}				#ifdef SHOW_LIDER_AND_GENERAL_GUILD		if (dwNewIsGuildName == 3)			strGuildName += std::string(" ") + SHOW_LIDER_AND_GENERAL_GUILD_VALUE1;		else if (dwNewIsGuildName == 2)			strGuildName += std::string(" ") + SHOW_LIDER_AND_GENERAL_GUILD_VALUE2;		#endif				DWORD Guildlevel = CPythonGuild::Instance().GetGuildLevel(dwGuildID);				static D3DXCOLOR gGuildLevelColor = D3DXCOLOR(152.0f/255.0f, 255.0f/255.0f, 51.0f/255.0f, 1.0f);				const char* GuildlevelColors[] = {		"|cFF959697", "|cFFFFFFFF", "|cFF00FF7F", "|cFF00FF00", "|cFF00CCFF",		"|cFF0000FF", "|cFFDA70D6", "|cFFC67171", "|cFF00FFFF", "|cFFFFCC00"		};				int colorIndex = (Guildlevel >= 10) ? 9 :					 	 (Guildlevel >= 9) ? 8 :					 	 (Guildlevel >= 8) ? 7 :					 	 (Guildlevel >= 7) ? 6 :					 	 (Guildlevel >= 6) ? 5 :					 	 (Guildlevel >= 5) ? 4 :					 	 (Guildlevel >= 4) ? 3 :					 	 (Guildlevel >= 3) ? 2 :					 	 (Guildlevel >= 2) ? 1 : 0;						 		char szGuildText[256];		sprintf(szGuildText, "%s|r", GuildLevelColors[colorIndex]);		CGraphicTextInstance*& prGuildNameInstance = pTextTail->pGuildNameTextInstance;		prGuildNameInstance = CGraphicTextInstance::New();		prGuildNameInstance->SetTextPointer (ms_pFont);		prGuildNameInstance->SetOutline (true);		prGuildNameInstance->SetHorizonalAlign (CGraphicTextInstance::HORIZONTAL_ALIGN_CENTER);		prGuildNameInstance->SetVerticalAlign (CGraphicTextInstance::VERTICAL_ALIGN_BOTTOM);		prGuildNameInstance->SetValue (strGuildName.c_str());		prGuildNameInstance->Update();	}	m_CharacterTextTailMap.insert (TTextTailMap::value_type (dwVirtualID, pTextTail));}
Opublikowano
  • Programista

Co ty kombinujesz tutaj za wynalazki. CInstanceBase::UpdateTextTailLevel jest funkcją, której szukasz.

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Konto

Nawigacja

Skonfiguruj powiadomienia push w przeglądarce.

Chrome (Android)
  1. Stuknij ikonę kłódki obok paska adresu.
  2. Wybierz Uprawnienia → Powiadomienia.
  3. Dostosuj swoje preferencje.
Chrome (Desktop)
  1. Kliknij ikonę kłódki na pasku adresu.
  2. Wybierz Ustawienia witryny.
  3. Znajdź Powiadomienia i dostosuj swoje preferencje.