aboutsummaryrefslogtreecommitdiff
path: root/mp/src/game/server/damagemodifier.cpp
blob: 12c9a595fa6438c78f90f2965f92a6aa458217df (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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
//========= Copyright Valve Corporation, All rights reserved. ============//
//
// Purpose: 
//
// $NoKeywords: $
//=============================================================================//

#include "cbase.h"
#include "damagemodifier.h"

// memdbgon must be the last include file in a .cpp file!!!
#include "tier0/memdbgon.h"

//-----------------------------------------------------------------------------
// Purpose: 
//-----------------------------------------------------------------------------
CDamageModifier::CDamageModifier()
{
	m_flModifier = 1;
	m_bDoneToMe = false;
}

//-----------------------------------------------------------------------------
// Purpose: 
//-----------------------------------------------------------------------------
void CDamageModifier::AddModifierToEntity( CBaseEntity *pEntity )
{
	RemoveModifier();

	pEntity->m_DamageModifiers.AddToTail( this );
	m_hEnt = pEntity;
}

//-----------------------------------------------------------------------------
// Purpose: 
//-----------------------------------------------------------------------------
void CDamageModifier::RemoveModifier()
{
	if ( m_hEnt.Get() )
	{
		m_hEnt->m_DamageModifiers.FindAndRemove( this );
		m_hEnt = 0;
	}
}

//-----------------------------------------------------------------------------
// Purpose: 
//-----------------------------------------------------------------------------
void CDamageModifier::SetModifier( float flScale )
{
	m_flModifier = flScale;
}

//-----------------------------------------------------------------------------
// Purpose: 
//-----------------------------------------------------------------------------
float CDamageModifier::GetModifier() const
{
	return m_flModifier;
}

//-----------------------------------------------------------------------------
// Purpose: 
//-----------------------------------------------------------------------------
CBaseEntity* CDamageModifier::GetCharacter() const
{
	return m_hEnt.Get();
}

//-----------------------------------------------------------------------------
// Purpose: 
//-----------------------------------------------------------------------------
void CDamageModifier::SetDoneToMe( bool bDoneToMe )
{
	m_bDoneToMe = bDoneToMe;
}

//-----------------------------------------------------------------------------
// Purpose: 
//-----------------------------------------------------------------------------
bool CDamageModifier::IsDamageDoneToMe() const
{
	return m_bDoneToMe;
}