blob: ffa52748c25b6ef9246ec73cd2d2ca87900dc0eb (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
|
//========= Copyright Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
// $NoKeywords: $
//=============================================================================//
#ifndef TF_OBJ_EMPGENERATOR_H
#define TF_OBJ_EMPGENERATOR_H
#ifdef _WIN32
#pragma once
#endif
// ------------------------------------------------------------------------ //
// EMP Generator defines
#define EMPGENERATOR_MINS Vector(-20, -20, 0)
#define EMPGENERATOR_MAXS Vector( 20, 20, 90)
#define EMPGENERATOR_RADIUS 400
#define EMPGENERATOR_LIFETIME 15
#define EMPGENERATOR_RATE 3 // Rate at which it looks for enemies to EMP
#define EMPGENERATOR_EMP_TIME 5
#define EMPGENERATOR_MODEL "models/objects/obj_antimortar.mdl"
// ------------------------------------------------------------------------ //
// EMP Generator Combat Object
// ------------------------------------------------------------------------ //
class CObjectEMPGenerator : public CBaseObject
{
DECLARE_CLASS( CObjectEMPGenerator, CBaseObject );
public:
DECLARE_DATADESC();
DECLARE_SERVERCLASS();
static CObjectEMPGenerator* Create(const Vector &vOrigin, const QAngle &vAngles);
CObjectEMPGenerator();
virtual void Spawn();
virtual void Precache();
virtual bool CanTakeEMPDamage( void ) { return true; }
// EMP
virtual void EMPThink( void );
private:
float m_flExpiresAt;
};
#endif // TF_OBJ_EMPGENERATOR_H
|