From e4ac934dbf57392c2b231f32d4f101bb9a183a51 Mon Sep 17 00:00:00 2001 From: Fire-Head Date: Thu, 15 Oct 2020 00:33:57 +0300 Subject: Miami Glass --- src/render/Glass.h | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'src/render/Glass.h') diff --git a/src/render/Glass.h b/src/render/Glass.h index 937ab6a9..f1c85779 100644 --- a/src/render/Glass.h +++ b/src/render/Glass.h @@ -2,6 +2,7 @@ class CEntity; class CVehicle; +class CPtrList; class CFallingGlassPane : public CMatrix { @@ -14,6 +15,7 @@ public: uint8 m_nTriIndex; bool m_bActive; bool m_bShattered; + bool m_bCarGlass; CFallingGlassPane() { } ~CFallingGlassPane() { } @@ -39,7 +41,7 @@ public: static void Update(void); static void Render(void); static CFallingGlassPane *FindFreePane(void); - static void GeneratePanesForWindow(uint32 type, CVector pos, CVector up, CVector right, CVector speed, CVector point, float moveSpeed, bool cracked, bool explosion); + static void GeneratePanesForWindow(uint32 type, CVector pos, CVector up, CVector right, CVector speed, CVector center, float moveSpeed, bool cracked, bool explosion, int32 stepmul, bool carGlass); static void AskForObjectToBeRenderedInGlass(CEntity *entity); static void RenderEntityInGlass(CEntity *entity); static int32 CalcAlphaWithNormal(CVector *normal); @@ -50,8 +52,8 @@ public: static void WindowRespondsToSoftCollision(CEntity *entity, float amount); static void WasGlassHitByBullet(CEntity *entity, CVector point); static void WindowRespondsToExplosion(CEntity *entity, CVector point); - -//TODO(MIAMI) - static void CarWindscreenShatters(CVehicle *vehicle, bool unk) {} - static void BreakGlassPhysically(CVector, float) {} + static void CarWindscreenShatters(CVehicle *vehicle, bool unk); + static bool HasGlassBeenShatteredAtCoors(float x, float y, float z); + static void FindWindowSectorList(CPtrList &list, float *dist, CEntity **entity, float x, float y, float z); + static void BreakGlassPhysically(CVector pos, float radius); }; \ No newline at end of file -- cgit v1.2.3