Tiberian Technologies Scripts Reference Revision: 9000
Loading...
Searching...
No Matches
DynamicPhysClass.h
1/* Renegade Scripts.dll
2 Copyright 2013 Tiberian Technologies
3
4 This file is part of the Renegade scripts.dll
5 The Renegade scripts.dll is free software; you can redistribute it and/or modify it under
6 the terms of the GNU General Public License as published by the Free
7 Software Foundation; either version 2, or (at your option) any later
8 version. See the file COPYING for more details.
9 In addition, an exemption is given to allow Run Time Dynamic Linking of this code with any closed source module that does not contain code covered by this licence.
10 Only the source code to the module(s) containing the licenced code has to be released.
11*/
12#ifndef TT_INCLUDE__DYNAMICPHYSCLASS_H
13#define TT_INCLUDE__DYNAMICPHYSCLASS_H
14
15#include "PhysClass.h"
16#include "DynamicPhysDefClass.h"
17
18
19class DynamicPhysClass : public PhysClass
20{
21public:
22 DynamicPhysClass(void);
23 ~DynamicPhysClass(void);
24 virtual DynamicPhysClass * As_DynamicPhysClass(void) { return this; }
25 void Init(const DynamicPhysDefClass & definition);
26 virtual void Set_Model(RenderObjClass * model);
27 void Update_Visibility_Status(void);
28 virtual int Get_Vis_Object_ID(void);
29 virtual bool Is_Simulation_Disabled(void) { return _DisableDynamicPhysSimulation; }
30 virtual bool Is_Rendering_Disabled(void) { return _DisableDynamicPhysRendering || PhysClass::Is_Rendering_Disabled(); }
31 static void Disable_All_Simulation(bool onoff) { _DisableDynamicPhysSimulation = onoff; }
32 static void Disable_All_Rendering(bool onoff) { _DisableDynamicPhysRendering = onoff; }
33 virtual bool Save (ChunkSaveClass &csave);
34 virtual bool Load (ChunkLoadClass &cload);
35 virtual void On_Post_Load(void);
36protected:
37 void Internal_Update_Visibility_Status(void);
38 bool DirtyVisObjectID; // 0078 0078 0094 0090
39 int VisNodeID; // 007C 007C 0098 0094
40 unsigned int VisStatusLastUpdated; // 0080 0080 009C 0098
41private:
42 static bool _DisableDynamicPhysSimulation;
43 static bool _DisableDynamicPhysRendering;
44 DynamicPhysClass(const DynamicPhysClass &);
45 DynamicPhysClass & operator = (const DynamicPhysClass &);
46}; // 0084 0084 00A0 009C
47
48#endif