Skip to content

Commit

Permalink
FFQuantityPanel: Reduce nesting
Browse files Browse the repository at this point in the history
  • Loading branch information
AdamWillden committed Oct 16, 2020
1 parent 1d30581 commit 9ce8d41
Showing 1 changed file with 62 additions and 60 deletions.
122 changes: 62 additions & 60 deletions cl_dll/ff/vgui/ff_quantitypanel.cpp
Expand Up @@ -489,13 +489,16 @@ namespace vgui

void FFQuantityPanel::SetTeamColor(Color teamColor)
{
if(m_ColorTeam != teamColor)
if(m_ColorTeam == teamColor)
{
m_ColorTeam = teamColor;
for(int i = 0; i < m_DarQuantityItems.GetCount(); ++i)
{
m_DarQuantityItems[i]->SetTeamColor(teamColor);
}
return;
}

m_ColorTeam = teamColor;

for(int i = 0; i < m_DarQuantityItems.GetCount(); ++i)
{
m_DarQuantityItems[i]->SetTeamColor(teamColor);
}
}

Expand All @@ -507,21 +510,18 @@ namespace vgui
{
//put the global check separately from the above case
//just in case it uses more resources
if(g_AP != NULL)
if(g_AP != NULL && g_AP->IsReady())
{
if(g_AP->IsReady())
{
KeyValues *kv = new KeyValues("AddQuantityPanel");
kv->SetString("selfName", m_szSelfName);
kv->SetString("selfText", m_szSelfText);
kv->SetString("parentName", m_szParentName);
kv->SetString("parentText", m_szParentText);
kv->AddSubKey(AddPanelSpecificOptions(new KeyValues("PanelSpecificOptions")));
kv->AddSubKey(AddItemStyleList(new KeyValues("Items")));
kv->SetPtr("panel", this);
PostMessage(g_AP, kv);
m_bAddToHudSent = true;
}
KeyValues *kv = new KeyValues("AddQuantityPanel");
kv->SetString("selfName", m_szSelfName);
kv->SetString("selfText", m_szSelfText);
kv->SetString("parentName", m_szParentName);
kv->SetString("parentText", m_szParentText);
kv->AddSubKey(AddPanelSpecificOptions(new KeyValues("PanelSpecificOptions")));
kv->AddSubKey(AddItemStyleList(new KeyValues("Items")));
kv->SetPtr("panel", this);
PostMessage(g_AP, kv);
m_bAddToHudSent = true;
}
}

Expand Down Expand Up @@ -588,43 +588,45 @@ namespace vgui

SetPos(m_flScaleX * m_iX + panelAlignmentOffsetX, m_flScaleY * m_iY + panelAlignmentOffsetY);

if(m_bCheckUpdates)
if(!m_bCheckUpdates)
{
if(m_flCheckUpdateFlagTime == -1)
m_flCheckUpdateFlagTime = gpGlobals->curtime;

bool bAllItemDimentionsChanged = true;
return;
}

if(m_flCheckUpdateFlagTime == -1)
m_flCheckUpdateFlagTime = gpGlobals->curtime;

bool bAllItemDimentionsChanged = true;

//if the wait time hasn't been exceeded
if( gpGlobals->curtime < ( m_flCheckUpdateFlagTime + BARUPDATE_WAITTIME ) )
//if the wait time hasn't been exceeded
if( gpGlobals->curtime < ( m_flCheckUpdateFlagTime + BARUPDATE_WAITTIME ) )
{
for( int i = 0; i < m_DarQuantityItems.GetCount(); ++i )
{
for( int i = 0; i < m_DarQuantityItems.GetCount(); ++i )
if(!m_DarQuantityItems[i]->GetItemDimentionsChanged())
{
if(!m_DarQuantityItems[i]->GetItemDimentionsChanged())
{
bAllItemDimentionsChanged = false;
break;
}
bAllItemDimentionsChanged = false;
break;
}
}

if(bAllItemDimentionsChanged)
}

if(bAllItemDimentionsChanged)
{
//if we got here then they have all been updated or the wait time was exceeded
for(int i = 0; i < m_DarQuantityItems.GetCount(); ++i)
{
//if we got here then they have all been updated or the wait time was exceeded
for(int i = 0; i < m_DarQuantityItems.GetCount(); ++i)
{
//clear all updateReceived flags
m_DarQuantityItems[i]->SetItemDimentionsChanged(false);
}
//clear all updateReceived flags
m_DarQuantityItems[i]->SetItemDimentionsChanged(false);
}

//clear check update flag
m_bCheckUpdates = false;
//clear check update flag
m_bCheckUpdates = false;

//update item positions
RecalculateItemPositions();

m_flCheckUpdateFlagTime = -1;
}
//update item positions
RecalculateItemPositions();

m_flCheckUpdateFlagTime = -1;
}
}

Expand Down Expand Up @@ -714,19 +716,20 @@ namespace vgui
m_DarQuantityItems[i]->SetPos( iPosX, iPosY );
m_DarQuantityItems[i]->SetPaintOffset( m_iColumnOffset[iColumn], m_iRowOffset[iRow] );
m_DarQuantityItems[i]->SetSize( m_iColumnWidth[iColumn], m_iRowHeight[iRow]);

//if not the last bar
if(i < (iSkipFromIndex - 1))

if(i >= iSkipFromIndex - 1)
{
iColumnWidths += m_iColumnWidth[iColumn++];
continue;
}

//if the next column is greater than the number of columns allowed (0 index!)
if(iColumn >= m_iItemColumns)
{
iColumnWidths = 0;
iColumn = 0;
iRowHeights += m_iRowHeight[iRow++];
}
iColumnWidths += m_iColumnWidth[iColumn++];

//if the next column is greater than the number of columns allowed (0 index!)
if(iColumn >= m_iItemColumns)
{
iColumnWidths = 0;
iColumn = 0;
iRowHeights += m_iRowHeight[iRow++];
}
}

Expand Down Expand Up @@ -1100,7 +1103,6 @@ namespace vgui
if((iCustomBackroundColor == COLOR_MODE_CUSTOM ? true : false) != m_bCustomBackroundColor && iCustomBackroundColor != -1)
m_bCustomBackroundColor = !m_bCustomBackroundColor;


int iPanelRed = kvStyleData->GetInt("panelRed", kvDefaultStyleData->GetInt("panelRed", -1));
int iPanelGreen = kvStyleData->GetInt("panelGreen", kvDefaultStyleData->GetInt("panelGreen", -1));
int iPanelBlue = kvStyleData->GetInt("panelBlue", kvDefaultStyleData->GetInt("panelBlue", -1));
Expand Down

0 comments on commit 9ce8d41

Please sign in to comment.