summaryrefslogtreecommitdiff
path: root/src/render/Rubbish.h
diff options
context:
space:
mode:
authorclaude-bot <[email protected]>2026-07-13 12:27:07 +0000
committerclaude-bot <[email protected]>2026-07-13 12:27:07 +0000
commit9f61c9e6ac6b1ac5692cf6352d2ebbd47a31a686 (patch)
treea84756b82513739a2672db3a1f0ec579db6d18ff /src/render/Rubbish.h
downloadre3-9f61c9e6ac6b1ac5692cf6352d2ebbd47a31a686.tar.gz
re3-9f61c9e6ac6b1ac5692cf6352d2ebbd47a31a686.zip
Import Cai1Hsu/re3 @ miami (reVC / GTA:VC decompilation)HEADmiami
Snapshot import (no upstream history) into git.ancap.in.ua/claude, per @lzcnt. Source: https://github.com/Cai1Hsu/re3 branch miami.
Diffstat (limited to 'src/render/Rubbish.h')
-rw-r--r--src/render/Rubbish.h57
1 files changed, 57 insertions, 0 deletions
diff --git a/src/render/Rubbish.h b/src/render/Rubbish.h
new file mode 100644
index 0000000..5a4e479
--- /dev/null
+++ b/src/render/Rubbish.h
@@ -0,0 +1,57 @@
+#pragma once
+
+class CVehicle;
+
+enum {
+ // NB: not all values are allowed, check the code
+#ifdef SQUEEZE_PERFORMANCE
+ NUM_RUBBISH_SHEETS = 32
+#else
+ NUM_RUBBISH_SHEETS = 64
+#endif
+};
+
+class COneSheet
+{
+public:
+ CVector m_basePos;
+ CVector m_animatedPos;
+ float m_targetZ;
+ int8 m_state;
+ int8 m_animationType;
+ uint32 m_moveStart;
+ uint32 m_moveDuration;
+ float m_animHeight;
+ float m_xDist;
+ float m_yDist;
+ float m_angle;
+ bool m_isVisible;
+ bool m_targetIsVisible;
+ COneSheet *m_next;
+ COneSheet *m_prev;
+
+ void AddToList(COneSheet *list);
+ void RemoveFromList(void);
+};
+
+class CRubbish
+{
+ static bool bRubbishInvisible;
+ static int RubbishVisibility;
+ static COneSheet aSheets[NUM_RUBBISH_SHEETS];
+ static COneSheet StartEmptyList;
+ static COneSheet EndEmptyList;
+ static COneSheet StartStaticsList;
+ static COneSheet EndStaticsList;
+ static COneSheet StartMoversList;
+ static COneSheet EndMoversList;
+public:
+ static void Render(void);
+ static void StirUp(CVehicle *veh); // CAutomobile on PS2
+ static void Update(void);
+ static void SetVisibility(bool visible);
+ static void Init(void);
+ static void Shutdown(void);
+};
+
+extern RwTexture *gpRubbishTexture[4];