This repository has been archived on 2024-06-13. You can view files and clone it, but cannot push or open issues or pull requests.
2020-08-04 13:13:01 -04:00

57 lines
1.2 KiB
C++

//========= Copyright Valve Corporation, All rights reserved. ============//
//
// Purpose: Satchel Charge
//
// $Workfile: $
// $Date: $
// $NoKeywords: $
//=============================================================================//
#ifndef SATCHEL_H
#define SATCHEL_H
#ifdef _WIN32
#pragma once
#endif
#include "basegrenade_shared.h"
#include "hl2mp/weapon_slam.h"
class CSoundPatch;
class CSatchelCharge : public CBaseGrenade {
public:
DECLARE_CLASS(CSatchelCharge, CBaseGrenade);
void Spawn(void);
void Precache(void);
void BounceSound(void);
void UpdateSlideSound(void);
void KillSlideSound(void);
void SatchelTouch(CBaseEntity *pOther);
void SatchelThink(void);
void SatchelUse(CBaseEntity *pActivator, CBaseEntity *pCaller,
USE_TYPE useType, float value);
CSoundPatch *m_soundSlide;
float m_flSlideVolume;
float m_flNextBounceSoundTime;
bool m_bInAir;
Vector m_vLastPosition;
public:
CWeapon_SLAM *m_pMyWeaponSLAM; // Who shot me..
bool m_bIsAttached;
void Deactivate(void);
CSatchelCharge();
~CSatchelCharge();
DECLARE_DATADESC();
private:
void InitSlideSound(void);
};
#endif // SATCHEL_H