mirror of
https://github.com/ddnet/ddnet.git
synced 2024-11-10 10:08:18 +00:00
Just color the heart preserving team information. Fixes #606
This commit is contained in:
parent
1d67e29c74
commit
9919173ceb
|
@ -538,20 +538,14 @@ void CChat::AddLine(int ClientID, int Team, const char *pLine)
|
|||
m_aLines[m_CurrentLine].m_Team = 0;
|
||||
Highlighted = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
if(g_Config.m_ClMessageFriend && m_pClient->m_aClients[ClientID].m_Friend)
|
||||
{
|
||||
str_format(m_aLines[m_CurrentLine].m_aName, sizeof(m_aLines[m_CurrentLine].m_aName), "♥ %s", m_pClient->m_aClients[ClientID].m_aName);
|
||||
m_aLines[m_CurrentLine].m_NameColor = 2;
|
||||
}
|
||||
else
|
||||
str_copy(m_aLines[m_CurrentLine].m_aName, m_pClient->m_aClients[ClientID].m_aName, sizeof(m_aLines[m_CurrentLine].m_aName));
|
||||
}
|
||||
|
||||
str_format(m_aLines[m_CurrentLine].m_aText, sizeof(m_aLines[m_CurrentLine].m_aText), ": %s", pLine);
|
||||
}
|
||||
|
||||
m_aLines[m_CurrentLine].m_Friend = m_pClient->m_aClients[ClientID].m_Friend;
|
||||
|
||||
char aBuf[1024];
|
||||
str_format(aBuf, sizeof(aBuf), "%s%s", m_aLines[m_CurrentLine].m_aName, m_aLines[m_CurrentLine].m_aText);
|
||||
Console()->Print(IConsole::OUTPUT_LEVEL_STANDARD, Team >= 2?"whisper":(m_aLines[m_CurrentLine].m_Team?"teamchat":"chat"), aBuf, Highlighted);
|
||||
|
@ -750,6 +744,13 @@ void CChat::OnRender()
|
|||
TextRender()->SetCursor(&Cursor, Begin, y, FontSize, TEXTFLAG_RENDER);
|
||||
Cursor.m_LineWidth = LineWidth;
|
||||
|
||||
if(g_Config.m_ClMessageFriend && m_aLines[r].m_Friend)
|
||||
{
|
||||
vec3 rgb = HslToRgb(vec3(g_Config.m_ClMessageFriendHue / 255.0f, g_Config.m_ClMessageFriendSat / 255.0f, g_Config.m_ClMessageFriendLht / 255.0f));
|
||||
TextRender()->TextColor(rgb.r, rgb.g, rgb.b, Blend);
|
||||
TextRender()->TextEx(&Cursor, "♥ ", -1);
|
||||
}
|
||||
|
||||
// render name
|
||||
if (m_aLines[r].m_ClientID == -1) // system
|
||||
{
|
||||
|
@ -772,11 +773,6 @@ void CChat::OnRender()
|
|||
TextRender()->TextColor(0.7f, 0.7f, 1.0f, Blend); // blue
|
||||
else if(m_aLines[r].m_NameColor == TEAM_SPECTATORS)
|
||||
TextRender()->TextColor(0.75f, 0.5f, 0.75f, Blend); // spectator
|
||||
else if(m_aLines[r].m_NameColor == 2)
|
||||
{
|
||||
vec3 rgb = HslToRgb(vec3(g_Config.m_ClMessageFriendHue / 255.0f, g_Config.m_ClMessageFriendSat / 255.0f, g_Config.m_ClMessageFriendLht / 255.0f));
|
||||
TextRender()->TextColor(rgb.r, rgb.g, rgb.b, Blend);
|
||||
}
|
||||
else if(m_aLines[r].m_ClientID >= 0 && g_Config.m_ClChatTeamColors && m_pClient->m_Teams.Team(m_aLines[r].m_ClientID))
|
||||
{
|
||||
vec3 rgb = HslToRgb(vec3(m_pClient->m_Teams.Team(m_aLines[r].m_ClientID) / 64.0f, 1.0f, 0.75f));
|
||||
|
|
|
@ -24,6 +24,7 @@ class CChat : public CComponent
|
|||
int m_NameColor;
|
||||
char m_aName[64];
|
||||
char m_aText[512];
|
||||
bool m_Friend;
|
||||
bool m_Highlighted;
|
||||
};
|
||||
|
||||
|
|
|
@ -1318,7 +1318,7 @@ void CMenus::RenderSettingsHUD(CUIRect MainView)
|
|||
{
|
||||
static int pIDP1 = 0, pIDP2 = 0;
|
||||
static int Page = 1;
|
||||
CUIRect Left, Right, HUD, Messages, Button, Label, Weapon, Laser, Page1Tab, Page2Tab, Enable;
|
||||
CUIRect Left, Right, HUD, Messages, Button, Label, Weapon, Laser, Page1Tab, Page2Tab, Enable, Heart;
|
||||
|
||||
MainView.HSplitTop(150.0f, &HUD, &MainView);
|
||||
|
||||
|
@ -1609,21 +1609,18 @@ void CMenus::RenderSettingsHUD(CUIRect MainView)
|
|||
|
||||
vec3 rgbf = HslToRgb(vec3(g_Config.m_ClMessageFriendHue / 255.0f, g_Config.m_ClMessageFriendSat / 255.0f, g_Config.m_ClMessageFriendLht / 255.0f));
|
||||
TextRender()->TextColor(rgbf.r, rgbf.g, rgbf.b, 1.0f);
|
||||
str_format(aBuf, sizeof aBuf, "♥ %s", Localize("Friend"));
|
||||
float tw = TextRender()->TextWidth(0, 12.0f, aBuf, -1);
|
||||
float hw = TextRender()->TextWidth(0, 12.0f, "♥ ", -1);
|
||||
Label.VSplitLeft(hw, &Heart, &Label);
|
||||
UI()->DoLabelScaled(&Heart, "♥ ", 12.0f, -1);
|
||||
|
||||
TextRender()->TextColor(0.8f, 0.8f, 0.8f, 1.0f);
|
||||
float tw = TextRender()->TextWidth(0, 12.0f, Localize("Friend"), -1);
|
||||
Label.VSplitLeft(tw, &Label, &Button);
|
||||
UI()->DoLabelScaled(&Label, aBuf, 12.0f, -1);
|
||||
UI()->DoLabelScaled(&Label, Localize("Friend"), 12.0f, -1);
|
||||
|
||||
vec3 rgb = HslToRgb(vec3(g_Config.m_ClMessageHue / 255.0f, g_Config.m_ClMessageSat / 255.0f, g_Config.m_ClMessageLht / 255.0f));
|
||||
TextRender()->TextColor(rgb.r, rgb.g, rgb.b, 1.0f);
|
||||
char name[16];
|
||||
str_copy(name, g_Config.m_PlayerName, sizeof(name));
|
||||
str_format(aBuf, sizeof(aBuf), ": %s", Localize ("Look out!"));
|
||||
while (TextRender()->TextWidth(0, 12.0f, aBuf, -1) > Button.w)
|
||||
{
|
||||
name[str_length(name) - 1] = 0;
|
||||
str_format(aBuf, sizeof(aBuf), ": %s: %s", name, Localize("Look out!"));
|
||||
}
|
||||
str_format(aBuf, sizeof(aBuf), ": %s", Localize("Hi o/"));
|
||||
UI()->DoLabelScaled(&Button, aBuf, 12.0f, -1);
|
||||
|
||||
TextRender()->TextColor(1.0f, 1.0f, 1.0f, 1.0f);
|
||||
|
|
Loading…
Reference in a new issue