blob: cf140f5fb1cefe300c8869468a38ae29f0483c5b (
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
|
//========= Copyright Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
// $NoKeywords: $
//=============================================================================//
#ifndef TF_TRIGGERS_H
#define TF_TRIGGERS_H
#ifdef _WIN32
#pragma once
#endif
#include "triggers.h"
//-----------------------------------------------------------------------------
// Purpose: Puts anything that touches the trigger into loser state.
//-----------------------------------------------------------------------------
class CTriggerStun : public CBaseTrigger
{
public:
CTriggerStun()
{
}
DECLARE_CLASS( CTriggerStun, CBaseTrigger );
void Spawn( void );
void StunThink( void );
void Touch( CBaseEntity *pOther );
void EndTouch( CBaseEntity *pOther );
bool StunEntity( CBaseEntity *pOther );
int StunAllTouchers( float dt );
DECLARE_DATADESC();
float m_flTriggerDelay;
float m_flStunDuration;
float m_flMoveSpeedReduction;
int m_iStunType;
bool m_bStunEffects;
// Outputs
COutputEvent m_OnStunPlayer;
float m_flLastStunTime;
CUtlVector<EHANDLE> m_stunEntities;
};
//-----------------------------------------------------------------------------
// Purpose: Trigger that allows the map-maker to force the spawn time of players that die inside
//-----------------------------------------------------------------------------
DECLARE_AUTO_LIST( ITriggerPlayerRespawnOverride );
class CTriggerPlayerRespawnOverride : public CTriggerMultiple, public ITriggerPlayerRespawnOverride
{
public:
DECLARE_DATADESC();
DECLARE_CLASS( CTriggerPlayerRespawnOverride, CTriggerMultiple );
DECLARE_AUTO_LIST( ITriggerPlayerRespawnOverride );
void InputSetRespawnTime( inputdata_t &inputdata ) { m_flRespawnTime = inputdata.value.Float(); }
void InputSetRespawnName( inputdata_t &inputdata ) { m_strRespawnEnt = inputdata.value.StringID(); }
float GetRespawnTime( void ) { return m_flRespawnTime; }
string_t GetRespawnName( void ) { return m_strRespawnEnt; }
private:
float m_flRespawnTime;
string_t m_strRespawnEnt;
};
#endif // TF_TRIGGERS_H
|