Files
HL2Overcharged/game/client/c_ar2_middle_muzzleflash_effect.h
2025-05-21 21:09:22 +03:00

81 lines
1.9 KiB
C++

//========= Copyright © 1996-2005, Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
//=============================================================================//
#ifndef C_AR2_MIDDLE_MUZZLEFLASH_EFFECT_H
#define C_AR2_MIDDLE_MUZZLEFLASH_EFFECT_H
#ifdef _WIN32
#pragma once
#endif
struct dlight_t;
class C_Ar2_Middle_MuzzleflashEffect
{
public:
C_Ar2_Middle_MuzzleflashEffect(int AR2_MnEntIndex = 0);
~C_Ar2_Middle_MuzzleflashEffect();
void SetupTexture(C_BasePlayer *pPlayer);
virtual void Ar2_Middle_UpdateLightM(const Vector &vecPos, const Vector &vecDir, const Vector &vecRight, const Vector &vecUp, int nDistance, float lKoef);
void Ar2_Middle_TurnOnM();
void Ar2_Middle_TurnOffM();
bool Ar2_Middle_IsOnM(void) { return m_Ar2_MM; }
bool m_Ar2_MM;
ClientShadowHandle_t GetAr2MMHandle(void) { return m_Ar2_MMHandle; }
void SetAr2MMHandle(ClientShadowHandle_t Handle) { m_Ar2_MMHandle = Handle; }
protected:
void Ar2_Middle_LightOffM();
void Ar2_Middle_LightOffOldM();
void Ar2_Middle_LightOffNewM();
void Ar2_Middle_UpdateLightNewM(const Vector &vecPos, const Vector &vecDir, const Vector &vecRight, const Vector &vecUp, float lKoef);
void Ar2_Middle_UpdateLightOldM(const Vector &vecPos, const Vector &vecDir, int nDistance, float lKoef);
// bool m_M;
int m_Ar2_MnEntIndexM;
ClientShadowHandle_t m_Ar2_MMHandle;
// Vehicle headlight dynamic light pointer
dlight_t *m_Ar2_MpPointLightM;
float m_Ar2_MflDistModM;
float mFov = 0.0f;
// Texture for flashlight
CTextureReference m_Ar2_MMTexture;
float TimeTick = 0.0f;
float MaxTime = 0.0f;
//float SpeedOfTime = 0.0f;
private:
const char *nameL;
// CTextureReference m_MTexture;
};
/*
class CHeadlightEffect : public CFlashlightEffect
{
public:
CHeadlightEffect();
~CHeadlightEffect();
virtual void UpdateLight(const Vector &vecPos, const Vector &vecDir, const Vector &vecRight, const Vector &vecUp, int nDistance);
};
*/
#endif // FLASHLIGHTEFFECT_H