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.
113 lines
2.1 KiB
113 lines
2.1 KiB
#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
|