2020-12-02 16:19:16 -05:00
|
|
|
#pragma once
|
2021-06-18 12:49:11 -04:00
|
|
|
#include "extender/VehicleExtender.h"
|
2020-12-02 16:19:16 -05:00
|
|
|
|
2021-01-18 04:53:24 -05:00
|
|
|
class Neon
|
2020-12-02 16:19:16 -05:00
|
|
|
{
|
|
|
|
private:
|
2021-06-18 12:49:11 -04:00
|
|
|
class NeonData
|
|
|
|
{
|
2021-02-24 16:54:45 -05:00
|
|
|
public:
|
2021-06-18 12:49:11 -04:00
|
|
|
CRGBA m_Color;
|
|
|
|
bool m_bNeonInstalled;
|
|
|
|
float m_fVal;
|
|
|
|
uint m_nTimer;
|
|
|
|
bool m_bIncrement;
|
|
|
|
bool m_bPulsing;
|
2020-12-25 16:22:28 -05:00
|
|
|
|
2021-02-24 16:54:45 -05:00
|
|
|
NeonData(CVehicle* pVeh)
|
|
|
|
{
|
2021-06-18 12:49:11 -04:00
|
|
|
m_bNeonInstalled = false;
|
|
|
|
m_fVal = 0.0;
|
|
|
|
m_nTimer = 0;
|
|
|
|
m_bIncrement = true;
|
2020-12-25 16:22:28 -05:00
|
|
|
}
|
2021-02-24 16:54:45 -05:00
|
|
|
};
|
2021-06-18 12:49:11 -04:00
|
|
|
|
|
|
|
inline static bool m_bMaskLoaded = false;
|
|
|
|
inline static RwTexture* m_pNeonTexture = nullptr;
|
|
|
|
inline static VehicleExtendedData<NeonData> m_VehNeon;
|
2020-12-25 16:22:28 -05:00
|
|
|
|
2020-12-02 16:19:16 -05:00
|
|
|
public:
|
2021-01-18 04:53:24 -05:00
|
|
|
Neon();
|
|
|
|
~Neon();
|
2021-02-24 16:54:45 -05:00
|
|
|
static void InstallNeon(CVehicle* veh, int red, int green, int blue);
|
|
|
|
static bool IsNeonInstalled(CVehicle* veh);
|
|
|
|
static bool IsPulsingEnabled(CVehicle* veh);
|
|
|
|
static void SetPulsing(CVehicle* veh, bool state);
|
|
|
|
static void RemoveNeon(CVehicle* veh);
|
2021-02-25 17:45:41 -05:00
|
|
|
static void RenderEvent(CVehicle* veh);
|
2020-12-02 16:19:16 -05:00
|
|
|
};
|