mirror of
https://github.com/nillerusr/source-engine.git
synced 2026-08-08 01:39:36 +00:00
1
This commit is contained in:
@@ -0,0 +1,72 @@
|
||||
//========= Copyright Valve Corporation, All rights reserved. ============//
|
||||
//
|
||||
// Purpose: Implementation of CSentryRebuildAward
|
||||
//
|
||||
// $Workfile: $
|
||||
// $Date: $
|
||||
//
|
||||
//------------------------------------------------------------------------------------------------------
|
||||
// $Log: $
|
||||
//
|
||||
// $NoKeywords: $
|
||||
//=============================================================================//
|
||||
#include "SentryRebuildAward.h"
|
||||
|
||||
//------------------------------------------------------------------------------------------------------
|
||||
// Function: CSentryRebuildAward::getWinner
|
||||
// Purpose: scans to find whose sentry guns were built the most often
|
||||
//------------------------------------------------------------------------------------------------------
|
||||
void CSentryRebuildAward::getWinner()
|
||||
{
|
||||
CEventListIterator it;
|
||||
|
||||
for (it=g_pMatchInfo->eventList()->begin(); it != g_pMatchInfo->eventList()->end(); ++it)
|
||||
{
|
||||
if ((*it)->getType()==CLogEvent::BUILD)
|
||||
{
|
||||
string built=(*it)->getArgument(1)->getStringValue();
|
||||
|
||||
if (stricmp(built.c_str(),"sentry") == 0)
|
||||
{
|
||||
PID builder=(*it)->getArgument(0)->asPlayerGetPID();
|
||||
numbuilds[builder]++;
|
||||
winnerID=builder;
|
||||
fNoWinner=false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
map<PID,int>::iterator builditer;
|
||||
|
||||
for (builditer=numbuilds.begin();builditer!=numbuilds.end();++builditer)
|
||||
{
|
||||
int currID=(*builditer).first;
|
||||
if (numbuilds[currID]>numbuilds[winnerID])
|
||||
winnerID=currID;
|
||||
}
|
||||
}
|
||||
|
||||
//------------------------------------------------------------------------------------------------------
|
||||
// Function: CSentryRebuildAward::noWinner
|
||||
// Purpose: writes html indicating that no one built any sentries
|
||||
// Input: html - the html file to write to
|
||||
//------------------------------------------------------------------------------------------------------
|
||||
void CSentryRebuildAward::noWinner(CHTMLFile& html)
|
||||
{
|
||||
html.write("No sentries were built during this match.");
|
||||
}
|
||||
|
||||
//------------------------------------------------------------------------------------------------------
|
||||
// Function: CSentryRebuildAward::extendedinfo
|
||||
// Purpose: reports how many times the winner had to rebuild their sentry
|
||||
// Input: html - the html file to write to
|
||||
//------------------------------------------------------------------------------------------------------
|
||||
void CSentryRebuildAward::extendedinfo(CHTMLFile& html)
|
||||
{
|
||||
|
||||
if (numbuilds[winnerID] == 1)
|
||||
html.write("No one had to rebuild a sentry gun in this match.!",winnerName.c_str());
|
||||
else
|
||||
html.write("%s had to build a sentry gun %li times!",winnerName.c_str(),numbuilds[winnerID]);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user