-
Notifications
You must be signed in to change notification settings - Fork 0
/
Chams.h
50 lines (42 loc) · 1.08 KB
/
Chams.h
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
#pragma once
#include "Hooks.h"
#include <deque>
struct chams_t;
class CChams
{
private:
IMaterial* Default;
IMaterial* Flat;
IMaterial* Glass;
IMaterial* Metallic;
IMaterial* GlowFade;
IMaterial* GlowLine;
IMaterial* Wireframe;
struct CHitMatrixEntry {
int ent_index;
ModelRenderInfo_t info;
DrawModelState_t state;
matrix pBoneToWorld[128] = {};
float time;
matrix model_to_world;
};
std::deque<CHitMatrixEntry> m_Hitmatrix;
IMaterial* GetMaterial(int index);
bool DrawChams(const chams_t& chams_data, matrix* mat, bool ignore_z,
DrawModelExecuteFn original,
void* thisptr,
void* ctx,
const DrawModelState_t& state,
const ModelRenderInfo_t& info
);
public:
void AddHitmatrix(animation* record);
void OnPostScreenEffects();
bool ShouldDraw(DrawModelExecuteFn original,
void* thisptr,
void* ctx,
const DrawModelState_t& state,
const ModelRenderInfo_t& info,
matrix* pCustomBoneToWorld);
void Init();
};