113 lines
2.2 KiB
C++
113 lines
2.2 KiB
C++
#ifndef _INCLUDED_ASW_FAIL_ADVICE_H
|
|
#define _INCLUDED_ASW_FAIL_ADVICE_H
|
|
#ifdef _WIN32
|
|
#pragma once
|
|
#endif
|
|
|
|
#include "asw_shareddefs.h"
|
|
#include "igamesystem.h"
|
|
|
|
|
|
struct FailAdviceMessageStatus_t
|
|
{
|
|
int nPoints;
|
|
int nPointsLastRound;
|
|
int nCooldownRounds;
|
|
int nData;
|
|
|
|
FailAdviceMessageStatus_t( void )
|
|
{
|
|
nPoints = 0;
|
|
nPointsLastRound = 0;
|
|
nCooldownRounds = 0;
|
|
nData = 0;
|
|
}
|
|
};
|
|
|
|
|
|
class CASW_Fail_Advice : public CAutoGameSystem
|
|
{
|
|
public:
|
|
CASW_Fail_Advice();
|
|
~CASW_Fail_Advice();
|
|
|
|
virtual bool Init();
|
|
virtual void Shutdown();
|
|
|
|
void DumpPointsToConsole( void );
|
|
|
|
int UseCurrentFailAdvice( void );
|
|
void IncrementPoints( int nMessage, int nPoints = 1 );
|
|
|
|
void OnMissionStart( void );
|
|
|
|
// low ammo
|
|
void OnMarineOutOfAmmo( void );
|
|
|
|
// infested lots
|
|
void OnMarineInfested( void );
|
|
|
|
// infested
|
|
void OnMarineInfestedGibbed( void );
|
|
|
|
// swarmed
|
|
void OnSentryUsedWell( void );
|
|
void OnMarineMobAttacked( void );
|
|
|
|
// friendly fire
|
|
void OnFriendlyFire( int nDamage );
|
|
|
|
// hacker damaged
|
|
void OnHackerHurt( int nDamage );
|
|
void OnHackerDied( void );
|
|
|
|
// wasted healing
|
|
void OnMarineOverhealed( int nOverhealAmount );
|
|
void OnMedSatchelEmpty( void );
|
|
|
|
// ignored healing
|
|
void OnHealGrenadeUsedWell( void );
|
|
void OnMarineHealed( void );
|
|
void OnMarineKilled( void );
|
|
|
|
// ignored adrenaline
|
|
void OnMarineUsedAdrenaline( void );
|
|
//void OnMarineMobAttacked( void );
|
|
|
|
// ignored secondary
|
|
void OnMarineUsedSecondary( void );
|
|
//void OnMarineMobAttacked( void );
|
|
|
|
// ignored welder
|
|
void OnAlienOpenDoor( void );
|
|
void OnMarineWeldedDoor( void );
|
|
|
|
// ignored lighting
|
|
|
|
// slow progression
|
|
void OnAlienSpawnedInfinite( void );
|
|
|
|
// shield bug
|
|
void OnShiedbugBlocked( void );
|
|
void OnShiedbugKilled( void );
|
|
|
|
// died alone
|
|
void OnMarineKilledAlone( void );
|
|
|
|
// started without any medics
|
|
void OnNoMedicStart( void );
|
|
|
|
// Retrieve total fail advice status
|
|
const FailAdviceMessageStatus_t *GetFailAdviceStatus( void );
|
|
|
|
private:
|
|
|
|
FailAdviceMessageStatus_t m_Status[ ASW_FAIL_ADVICE_TOTAL ];
|
|
|
|
};
|
|
|
|
|
|
CASW_Fail_Advice* ASWFailAdvice();
|
|
|
|
|
|
#endif // _INCLUDED_ASW_FAIL_ADVICE_H
|