aboutsummaryrefslogtreecommitdiff
path: root/mp/src/game/server/hl2/npc_scanner.h
diff options
context:
space:
mode:
authorJørgen P. Tjernø <[email protected]>2013-12-02 19:31:46 -0800
committerJørgen P. Tjernø <[email protected]>2013-12-02 19:46:31 -0800
commitf56bb35301836e56582a575a75864392a0177875 (patch)
treede61ddd39de3e7df52759711950b4c288592f0dc /mp/src/game/server/hl2/npc_scanner.h
parentMark some more files as text. (diff)
downloadsource-sdk-2013-f56bb35301836e56582a575a75864392a0177875.tar.xz
source-sdk-2013-f56bb35301836e56582a575a75864392a0177875.zip
Fix line endings. WHAMMY.
Diffstat (limited to 'mp/src/game/server/hl2/npc_scanner.h')
-rw-r--r--mp/src/game/server/hl2/npc_scanner.h430
1 files changed, 215 insertions, 215 deletions
diff --git a/mp/src/game/server/hl2/npc_scanner.h b/mp/src/game/server/hl2/npc_scanner.h
index f6f23f00..f34eba35 100644
--- a/mp/src/game/server/hl2/npc_scanner.h
+++ b/mp/src/game/server/hl2/npc_scanner.h
@@ -1,215 +1,215 @@
-//========= Copyright Valve Corporation, All rights reserved. ============//
-//
-// Purpose:
-//
-//=============================================================================
-
-#ifndef NPC_SCANNER_H
-#define NPC_SCANNER_H
-#ifdef _WIN32
-#pragma once
-#endif
-
-#include "npc_basescanner.h"
-
-//------------------------------------
-// Spawnflags
-//------------------------------------
-#define SF_CSCANNER_NO_DYNAMIC_LIGHT (1 << 16)
-#define SF_CSCANNER_STRIDER_SCOUT (1 << 17)
-
-class CBeam;
-class CSprite;
-class SmokeTrail;
-class CSpotlightEnd;
-
-//-----------------------------------------------------------------------------
-// Purpose:
-//-----------------------------------------------------------------------------
-class CNPC_CScanner : public CNPC_BaseScanner
-{
- DECLARE_CLASS( CNPC_CScanner, CNPC_BaseScanner );
-
-public:
- CNPC_CScanner();
-
- int GetSoundInterests( void ) { return (SOUND_WORLD|SOUND_COMBAT|SOUND_PLAYER|SOUND_DANGER); }
- int OnTakeDamage_Alive( const CTakeDamageInfo &info );
-
- bool FValidateHintType(CAI_Hint *pHint);
-
- virtual int TranslateSchedule( int scheduleType );
- Disposition_t IRelationType(CBaseEntity *pTarget);
-
- void NPCThink( void );
-
- void GatherConditions( void );
- void PrescheduleThink( void );
- void Precache(void);
- void RunTask( const Task_t *pTask );
- int SelectSchedule(void);
- virtual char *GetScannerSoundPrefix( void );
- void Spawn(void);
- void Activate();
- void StartTask( const Task_t *pTask );
- void UpdateOnRemove( void );
- void DeployMine();
- float GetMaxSpeed();
- virtual void Gib( void );
-
- void HandleAnimEvent( animevent_t *pEvent );
- Activity NPC_TranslateActivity( Activity eNewActivity );
-
- void InputDisableSpotlight( inputdata_t &inputdata );
- void InputSetFollowTarget( inputdata_t &inputdata );
- void InputClearFollowTarget( inputdata_t &inputdata );
- void InputInspectTargetPhoto( inputdata_t &inputdata );
- void InputInspectTargetSpotlight( inputdata_t &inputdata );
- void InputDeployMine( inputdata_t &inputdata );
- void InputEquipMine( inputdata_t &inputdata );
- void InputShouldInspect( inputdata_t &inputdata );
-
- void InspectTarget( inputdata_t &inputdata, ScannerFlyMode_t eFlyMode );
-
- void Event_Killed( const CTakeDamageInfo &info );
-
- char *GetEngineSound( void );
-
- virtual float MinGroundDist(void);
- virtual void AdjustScannerVelocity( void );
-
- virtual float GetHeadTurnRate( void );
-
-public:
- bool HandleInteraction(int interactionType, void *data, CBaseCombatCharacter* sourceEnt);
-
- // ------------------------------
- // Inspecting
- // ------------------------------
- Vector m_vInspectPos;
- float m_fInspectEndTime;
- float m_fCheckCitizenTime; // Time to look for citizens to harass
- float m_fCheckHintTime; // Time to look for hints to inspect
- bool m_bShouldInspect;
- bool m_bOnlyInspectPlayers;
- bool m_bNeverInspectPlayers;
-
- void SetInspectTargetToEnt(CBaseEntity *pEntity, float fInspectDuration);
- void SetInspectTargetToPos(const Vector &vInspectPos, float fInspectDuration);
- void SetInspectTargetToHint(CAI_Hint *pHint, float fInspectDuration);
- void ClearInspectTarget(void);
- bool HaveInspectTarget(void);
- Vector InspectTargetPosition(void);
- bool IsValidInspectTarget(CBaseEntity *pEntity);
- CBaseEntity* BestInspectTarget(void);
- void RequestInspectSupport(void);
-
- bool IsStriderScout() { return HasSpawnFlags( SF_CSCANNER_STRIDER_SCOUT ); }
-
- // ------------------------
- // Photographing
- // ------------------------
- float m_fNextPhotographTime;
- CSprite* m_pEyeFlash;
-
- void TakePhoto( void );
- void BlindFlashTarget( CBaseEntity *pTarget );
-
- // ------------------------------
- // Spotlight
- // ------------------------------
- Vector m_vSpotlightTargetPos;
- Vector m_vSpotlightCurrentPos;
- CHandle<CBeam> m_hSpotlight;
- CHandle<CSpotlightEnd> m_hSpotlightTarget;
- Vector m_vSpotlightDir;
- Vector m_vSpotlightAngVelocity;
- float m_flSpotlightCurLength;
- float m_flSpotlightMaxLength;
- float m_flSpotlightGoalWidth;
- float m_fNextSpotlightTime;
- int m_nHaloSprite;
-
- void SpotlightUpdate(void);
- Vector SpotlightTargetPos(void);
- Vector SpotlightCurrentPos(void);
- void SpotlightCreate(void);
- void SpotlightDestroy(void);
-
-protected:
- void BecomeClawScanner( void ) { m_bIsClawScanner = true; }
-
-private:
- bool MovingToInspectTarget( void );
- virtual float GetGoalDistance( void );
-
- bool m_bIsClawScanner; // Formerly the shield scanner.
- bool m_bIsOpen; // Only for claw scanner
-
- COutputEvent m_OnPhotographPlayer;
- COutputEvent m_OnPhotographNPC;
-
- bool OverrideMove(float flInterval);
- void MoveToTarget(float flInterval, const Vector &MoveTarget);
- void MoveToSpotlight(float flInterval);
- void MoveToPhotograph(float flInterval);
-
- // Attacks
- bool m_bNoLight;
- bool m_bPhotoTaken;
-
- void AttackPreFlash(void);
- void AttackFlash(void);
- void AttackFlashBlind(void);
-
- virtual void AttackDivebomb(void);
-
- DEFINE_CUSTOM_AI;
-
- // Custom interrupt conditions
- enum
- {
- COND_CSCANNER_HAVE_INSPECT_TARGET = BaseClass::NEXT_CONDITION,
- COND_CSCANNER_INSPECT_DONE,
- COND_CSCANNER_CAN_PHOTOGRAPH,
- COND_CSCANNER_SPOT_ON_TARGET,
-
- NEXT_CONDITION,
- };
-
- // Custom schedules
- enum
- {
- SCHED_CSCANNER_SPOTLIGHT_HOVER = BaseClass::NEXT_SCHEDULE,
- SCHED_CSCANNER_SPOTLIGHT_INSPECT_POS,
- SCHED_CSCANNER_SPOTLIGHT_INSPECT_CIT,
- SCHED_CSCANNER_PHOTOGRAPH_HOVER,
- SCHED_CSCANNER_PHOTOGRAPH,
- SCHED_CSCANNER_ATTACK_FLASH,
- SCHED_CSCANNER_MOVE_TO_INSPECT,
- SCHED_CSCANNER_PATROL,
-
- NEXT_SCHEDULE,
- };
-
- // Custom tasks
- enum
- {
- TASK_CSCANNER_SET_FLY_PHOTO = BaseClass::NEXT_TASK,
- TASK_CSCANNER_SET_FLY_SPOT,
- TASK_CSCANNER_PHOTOGRAPH,
- TASK_CSCANNER_ATTACK_PRE_FLASH,
- TASK_CSCANNER_ATTACK_FLASH,
- TASK_CSCANNER_SPOT_INSPECT_ON,
- TASK_CSCANNER_SPOT_INSPECT_WAIT,
- TASK_CSCANNER_SPOT_INSPECT_OFF,
- TASK_CSCANNER_CLEAR_INSPECT_TARGET,
- TASK_CSCANNER_GET_PATH_TO_INSPECT_TARGET,
-
- NEXT_TASK,
- };
-
- DECLARE_DATADESC();
-};
-
-#endif // NPC_SCANNER_H
+//========= Copyright Valve Corporation, All rights reserved. ============//
+//
+// Purpose:
+//
+//=============================================================================
+
+#ifndef NPC_SCANNER_H
+#define NPC_SCANNER_H
+#ifdef _WIN32
+#pragma once
+#endif
+
+#include "npc_basescanner.h"
+
+//------------------------------------
+// Spawnflags
+//------------------------------------
+#define SF_CSCANNER_NO_DYNAMIC_LIGHT (1 << 16)
+#define SF_CSCANNER_STRIDER_SCOUT (1 << 17)
+
+class CBeam;
+class CSprite;
+class SmokeTrail;
+class CSpotlightEnd;
+
+//-----------------------------------------------------------------------------
+// Purpose:
+//-----------------------------------------------------------------------------
+class CNPC_CScanner : public CNPC_BaseScanner
+{
+ DECLARE_CLASS( CNPC_CScanner, CNPC_BaseScanner );
+
+public:
+ CNPC_CScanner();
+
+ int GetSoundInterests( void ) { return (SOUND_WORLD|SOUND_COMBAT|SOUND_PLAYER|SOUND_DANGER); }
+ int OnTakeDamage_Alive( const CTakeDamageInfo &info );
+
+ bool FValidateHintType(CAI_Hint *pHint);
+
+ virtual int TranslateSchedule( int scheduleType );
+ Disposition_t IRelationType(CBaseEntity *pTarget);
+
+ void NPCThink( void );
+
+ void GatherConditions( void );
+ void PrescheduleThink( void );
+ void Precache(void);
+ void RunTask( const Task_t *pTask );
+ int SelectSchedule(void);
+ virtual char *GetScannerSoundPrefix( void );
+ void Spawn(void);
+ void Activate();
+ void StartTask( const Task_t *pTask );
+ void UpdateOnRemove( void );
+ void DeployMine();
+ float GetMaxSpeed();
+ virtual void Gib( void );
+
+ void HandleAnimEvent( animevent_t *pEvent );
+ Activity NPC_TranslateActivity( Activity eNewActivity );
+
+ void InputDisableSpotlight( inputdata_t &inputdata );
+ void InputSetFollowTarget( inputdata_t &inputdata );
+ void InputClearFollowTarget( inputdata_t &inputdata );
+ void InputInspectTargetPhoto( inputdata_t &inputdata );
+ void InputInspectTargetSpotlight( inputdata_t &inputdata );
+ void InputDeployMine( inputdata_t &inputdata );
+ void InputEquipMine( inputdata_t &inputdata );
+ void InputShouldInspect( inputdata_t &inputdata );
+
+ void InspectTarget( inputdata_t &inputdata, ScannerFlyMode_t eFlyMode );
+
+ void Event_Killed( const CTakeDamageInfo &info );
+
+ char *GetEngineSound( void );
+
+ virtual float MinGroundDist(void);
+ virtual void AdjustScannerVelocity( void );
+
+ virtual float GetHeadTurnRate( void );
+
+public:
+ bool HandleInteraction(int interactionType, void *data, CBaseCombatCharacter* sourceEnt);
+
+ // ------------------------------
+ // Inspecting
+ // ------------------------------
+ Vector m_vInspectPos;
+ float m_fInspectEndTime;
+ float m_fCheckCitizenTime; // Time to look for citizens to harass
+ float m_fCheckHintTime; // Time to look for hints to inspect
+ bool m_bShouldInspect;
+ bool m_bOnlyInspectPlayers;
+ bool m_bNeverInspectPlayers;
+
+ void SetInspectTargetToEnt(CBaseEntity *pEntity, float fInspectDuration);
+ void SetInspectTargetToPos(const Vector &vInspectPos, float fInspectDuration);
+ void SetInspectTargetToHint(CAI_Hint *pHint, float fInspectDuration);
+ void ClearInspectTarget(void);
+ bool HaveInspectTarget(void);
+ Vector InspectTargetPosition(void);
+ bool IsValidInspectTarget(CBaseEntity *pEntity);
+ CBaseEntity* BestInspectTarget(void);
+ void RequestInspectSupport(void);
+
+ bool IsStriderScout() { return HasSpawnFlags( SF_CSCANNER_STRIDER_SCOUT ); }
+
+ // ------------------------
+ // Photographing
+ // ------------------------
+ float m_fNextPhotographTime;
+ CSprite* m_pEyeFlash;
+
+ void TakePhoto( void );
+ void BlindFlashTarget( CBaseEntity *pTarget );
+
+ // ------------------------------
+ // Spotlight
+ // ------------------------------
+ Vector m_vSpotlightTargetPos;
+ Vector m_vSpotlightCurrentPos;
+ CHandle<CBeam> m_hSpotlight;
+ CHandle<CSpotlightEnd> m_hSpotlightTarget;
+ Vector m_vSpotlightDir;
+ Vector m_vSpotlightAngVelocity;
+ float m_flSpotlightCurLength;
+ float m_flSpotlightMaxLength;
+ float m_flSpotlightGoalWidth;
+ float m_fNextSpotlightTime;
+ int m_nHaloSprite;
+
+ void SpotlightUpdate(void);
+ Vector SpotlightTargetPos(void);
+ Vector SpotlightCurrentPos(void);
+ void SpotlightCreate(void);
+ void SpotlightDestroy(void);
+
+protected:
+ void BecomeClawScanner( void ) { m_bIsClawScanner = true; }
+
+private:
+ bool MovingToInspectTarget( void );
+ virtual float GetGoalDistance( void );
+
+ bool m_bIsClawScanner; // Formerly the shield scanner.
+ bool m_bIsOpen; // Only for claw scanner
+
+ COutputEvent m_OnPhotographPlayer;
+ COutputEvent m_OnPhotographNPC;
+
+ bool OverrideMove(float flInterval);
+ void MoveToTarget(float flInterval, const Vector &MoveTarget);
+ void MoveToSpotlight(float flInterval);
+ void MoveToPhotograph(float flInterval);
+
+ // Attacks
+ bool m_bNoLight;
+ bool m_bPhotoTaken;
+
+ void AttackPreFlash(void);
+ void AttackFlash(void);
+ void AttackFlashBlind(void);
+
+ virtual void AttackDivebomb(void);
+
+ DEFINE_CUSTOM_AI;
+
+ // Custom interrupt conditions
+ enum
+ {
+ COND_CSCANNER_HAVE_INSPECT_TARGET = BaseClass::NEXT_CONDITION,
+ COND_CSCANNER_INSPECT_DONE,
+ COND_CSCANNER_CAN_PHOTOGRAPH,
+ COND_CSCANNER_SPOT_ON_TARGET,
+
+ NEXT_CONDITION,
+ };
+
+ // Custom schedules
+ enum
+ {
+ SCHED_CSCANNER_SPOTLIGHT_HOVER = BaseClass::NEXT_SCHEDULE,
+ SCHED_CSCANNER_SPOTLIGHT_INSPECT_POS,
+ SCHED_CSCANNER_SPOTLIGHT_INSPECT_CIT,
+ SCHED_CSCANNER_PHOTOGRAPH_HOVER,
+ SCHED_CSCANNER_PHOTOGRAPH,
+ SCHED_CSCANNER_ATTACK_FLASH,
+ SCHED_CSCANNER_MOVE_TO_INSPECT,
+ SCHED_CSCANNER_PATROL,
+
+ NEXT_SCHEDULE,
+ };
+
+ // Custom tasks
+ enum
+ {
+ TASK_CSCANNER_SET_FLY_PHOTO = BaseClass::NEXT_TASK,
+ TASK_CSCANNER_SET_FLY_SPOT,
+ TASK_CSCANNER_PHOTOGRAPH,
+ TASK_CSCANNER_ATTACK_PRE_FLASH,
+ TASK_CSCANNER_ATTACK_FLASH,
+ TASK_CSCANNER_SPOT_INSPECT_ON,
+ TASK_CSCANNER_SPOT_INSPECT_WAIT,
+ TASK_CSCANNER_SPOT_INSPECT_OFF,
+ TASK_CSCANNER_CLEAR_INSPECT_TARGET,
+ TASK_CSCANNER_GET_PATH_TO_INSPECT_TARGET,
+
+ NEXT_TASK,
+ };
+
+ DECLARE_DATADESC();
+};
+
+#endif // NPC_SCANNER_H