You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
142 lines
5.2 KiB
142 lines
5.2 KiB
//========= Copyright Valve Corporation, All rights reserved. ============//
|
|
//
|
|
// Purpose: Interface of the CWeaponAward class, and its subclasses
|
|
//
|
|
// $Workfile: $
|
|
// $Date: $
|
|
//
|
|
//------------------------------------------------------------------------------------------------------
|
|
// $Log: $
|
|
//
|
|
// $NoKeywords: $
|
|
//=============================================================================//
|
|
#ifndef WEAPONAWARDS_H
|
|
#define WEAPONAWARDS_H
|
|
#ifdef WIN32
|
|
#pragma once
|
|
#endif
|
|
#include "Award.h"
|
|
|
|
//------------------------------------------------------------------------------------------------------
|
|
// Purpose: CWeaponAward is the superclass for any award that is based simply
|
|
// on number of kills with a specific weapon.
|
|
//------------------------------------------------------------------------------------------------------
|
|
class CWeaponAward: public CAward
|
|
{
|
|
protected:
|
|
map<PID,int> accum;
|
|
char* killtype;
|
|
public:
|
|
CWeaponAward(char* awardname, char* killname):CAward(awardname),killtype(killname){}
|
|
void getWinner();
|
|
};
|
|
|
|
//------------------------------------------------------------------------------------------------------
|
|
// Purpose: CFlamethrowerAward is an award given to the player who gets the
|
|
// most kills with "flames"
|
|
//------------------------------------------------------------------------------------------------------
|
|
class CFlamethrowerAward: public CWeaponAward
|
|
{
|
|
protected:
|
|
void noWinner(CHTMLFile& html);
|
|
void extendedinfo(CHTMLFile& html);
|
|
public:
|
|
explicit CFlamethrowerAward():CWeaponAward("Blaze of Glory","flames"){}
|
|
};
|
|
|
|
//------------------------------------------------------------------------------------------------------
|
|
// Purpose: CAssaultCannonAward is an award given to the player who gets the
|
|
// most kills with "ac" (the assault cannon)
|
|
//------------------------------------------------------------------------------------------------------
|
|
class CAssaultCannonAward: public CWeaponAward
|
|
{
|
|
protected:
|
|
void noWinner(CHTMLFile& html);
|
|
void extendedinfo(CHTMLFile& html);
|
|
public:
|
|
explicit CAssaultCannonAward():CWeaponAward("Swiss Cheese","ac"){}
|
|
};
|
|
|
|
|
|
//------------------------------------------------------------------------------------------------------
|
|
// Purpose: CKnifeAward is an award given to the player who gets the most kills
|
|
// with the "knife"
|
|
//------------------------------------------------------------------------------------------------------
|
|
class CKnifeAward: public CWeaponAward
|
|
{
|
|
protected:
|
|
void noWinner(CHTMLFile& html);
|
|
void extendedinfo(CHTMLFile& html);
|
|
public:
|
|
explicit CKnifeAward():CWeaponAward("Assassin","knife"){}
|
|
};
|
|
|
|
//------------------------------------------------------------------------------------------------------
|
|
// Purpose: CRocketryAward is an award given to the player who gets the most kills
|
|
// with "rocket"s.
|
|
//------------------------------------------------------------------------------------------------------
|
|
class CRocketryAward: public CWeaponAward
|
|
{
|
|
protected:
|
|
void noWinner(CHTMLFile& html);
|
|
void extendedinfo(CHTMLFile& html);
|
|
public:
|
|
explicit CRocketryAward():CWeaponAward("Rocketry","rocket"){}
|
|
};
|
|
|
|
//------------------------------------------------------------------------------------------------------
|
|
// Purpose: CGrenadierAward is an award given to the player who gets the most
|
|
// kills with "gl_grenade"s
|
|
//------------------------------------------------------------------------------------------------------
|
|
class CGrenadierAward: public CWeaponAward
|
|
{
|
|
protected:
|
|
void noWinner(CHTMLFile& html);
|
|
void extendedinfo(CHTMLFile& html);
|
|
public:
|
|
explicit CGrenadierAward():CWeaponAward("Grenadier","gl_grenade"){}
|
|
};
|
|
|
|
//------------------------------------------------------------------------------------------------------
|
|
// Purpose: CDemolitionsAward is an award given to the player who kills the most
|
|
// people with "detpack"s.
|
|
//------------------------------------------------------------------------------------------------------
|
|
class CDemolitionsAward: public CWeaponAward
|
|
{
|
|
protected:
|
|
void noWinner(CHTMLFile& html);
|
|
void extendedinfo(CHTMLFile& html);
|
|
public:
|
|
explicit CDemolitionsAward():CWeaponAward("Demolitions","detpack"){}
|
|
};
|
|
|
|
//------------------------------------------------------------------------------------------------------
|
|
// Purpose: CBiologicalWarfareAward is given to the player who kills the most
|
|
// people with "infection"s
|
|
//------------------------------------------------------------------------------------------------------
|
|
class CBiologicalWarfareAward: public CWeaponAward
|
|
{
|
|
protected:
|
|
void noWinner(CHTMLFile& html);
|
|
void extendedinfo(CHTMLFile& html);
|
|
public:
|
|
CBiologicalWarfareAward():CWeaponAward("Biological Warfare","infection"){}
|
|
};
|
|
|
|
|
|
//------------------------------------------------------------------------------------------------------
|
|
// Purpose: CBestSentryAward is given to the player who kills the most people
|
|
// with sentry guns that he/she created ("sentrygun")
|
|
//------------------------------------------------------------------------------------------------------
|
|
class CBestSentryAward: public CWeaponAward
|
|
{
|
|
protected:
|
|
void noWinner(CHTMLFile& html);
|
|
void extendedinfo(CHTMLFile& html);
|
|
public:
|
|
CBestSentryAward():CWeaponAward("Best Sentry Placement","sentrygun"){}
|
|
};
|
|
|
|
|
|
|
|
#endif // WEAPONAWARDS_H
|