summaryrefslogtreecommitdiff
path: root/utils/tfstats/whokilledwho.h
diff options
context:
space:
mode:
Diffstat (limited to 'utils/tfstats/whokilledwho.h')
-rw-r--r--utils/tfstats/whokilledwho.h60
1 files changed, 60 insertions, 0 deletions
diff --git a/utils/tfstats/whokilledwho.h b/utils/tfstats/whokilledwho.h
new file mode 100644
index 0000000..88aad08
--- /dev/null
+++ b/utils/tfstats/whokilledwho.h
@@ -0,0 +1,60 @@
+//========= Copyright Valve Corporation, All rights reserved. ============//
+//
+// Purpose: Implementation of CWhoKilledWho
+//
+// $Workfile: $
+// $Date: $
+//
+//------------------------------------------------------------------------------------------------------
+// $Log: $
+//
+// $NoKeywords: $
+//=============================================================================//
+#ifndef WHOKILLEDWHO_H
+#define WHOKILLEDWHO_H
+#ifdef WIN32
+#pragma once
+#endif
+
+#include "report.h"
+
+//------------------------------------------------------------------------------------------------------
+// Purpose: CWhoKilledWho is a report element that outputs a detailed scoreboard
+// showing, in a 2x2 matrix who killed who how many times. On the edges of the
+// matrix, total kills and total deaths for each player are also tallied up
+//------------------------------------------------------------------------------------------------------
+class CWhoKilledWho :public CReport
+{
+private:
+
+ int* kills;
+ int size;
+ int* deaths;
+
+ //bids map from a player ID to a "board ID" because
+ //player IDs are not necessarily contiguous
+ //and rarely start at 0
+ map<PID,int> bids;
+ int nextbid;
+
+ //this maps from bids back to pids
+ map<int,PID> pids;
+
+ map<pair<int,PID>,int> bidMap;
+ map<int,pair<int,PID> > bidMap2;
+
+ //returns the style class for a cell in the html table
+ const char* getCellClass(int u,int v);
+ void init();
+
+ void makeBidMap();
+public:
+ explicit CWhoKilledWho(){kills=deaths=NULL;init();}
+ void generate();
+ void writeHTML(CHTMLFile& html);
+ ~CWhoKilledWho();
+};
+
+
+
+#endif // WHOKILLEDWHO_H