diff --git a/dGame/dComponents/PhysicsSystemComponent.h b/dGame/dComponents/PhysicsSystemComponent.h index cf1b6c2ab..e81834ab5 100644 --- a/dGame/dComponents/PhysicsSystemComponent.h +++ b/dGame/dComponents/PhysicsSystemComponent.h @@ -1,17 +1,21 @@ #ifndef PHYSICSSYSTEMCOMPONENT_H #define PHYSICSSYSTEMCOMPONENT_H -#include "Component.h" +#include "Entity.h" +#include "PhysicsComponent.h" #include "eReplicaComponentType.h" /** - * Physics system, as the client's physics system component makes it from the registry. Nothing of it is sent or done on the server yet. + * Physics system, as the client's physics system component makes it from the registry; like the client's, a physics component (LWOBasePhysComponent). Nothing of it is sent or done on the server yet. */ -class PhysicsSystemComponent final : public Component { +class PhysicsSystemComponent final : public PhysicsComponent { public: static constexpr eReplicaComponentType ComponentType = eReplicaComponentType::PHYSICS_SYSTEM; - PhysicsSystemComponent(Entity* parent, const int32_t componentID) : Component(parent, componentID) {} + PhysicsSystemComponent(Entity* parent, const int32_t componentID) : PhysicsComponent(parent, componentID) { + m_Position = m_Parent->GetDefaultPosition(); + m_Rotation = m_Parent->GetDefaultRotation(); + } }; #endif // PHYSICSSYSTEMCOMPONENT_H diff --git a/dGame/dComponents/VehiclePhysicsComponent.h b/dGame/dComponents/VehiclePhysicsComponent.h index 394089260..5a67ebb51 100644 --- a/dGame/dComponents/VehiclePhysicsComponent.h +++ b/dGame/dComponents/VehiclePhysicsComponent.h @@ -1,17 +1,21 @@ #ifndef VEHICLEPHYSICSCOMPONENT_H #define VEHICLEPHYSICSCOMPONENT_H -#include "Component.h" +#include "Entity.h" +#include "PhysicsComponent.h" #include "eReplicaComponentType.h" /** - * Vehicle physics (not the havok vehicle physics, 30), as LWOVehiclePhysicsComponent makes it from the registry. Nothing of it is sent or done on the server yet. + * Vehicle physics (not the havok vehicle physics, 30), as LWOVehiclePhysicsComponent makes it from the registry; like the client's, a physics component (LWOBasePhysComponent). Nothing of it is sent or done on the server yet. */ -class VehiclePhysicsComponent final : public Component { +class VehiclePhysicsComponent final : public PhysicsComponent { public: static constexpr eReplicaComponentType ComponentType = eReplicaComponentType::VEHICLE_PHYSICS; - VehiclePhysicsComponent(Entity* parent, const int32_t componentID) : Component(parent, componentID) {} + VehiclePhysicsComponent(Entity* parent, const int32_t componentID) : PhysicsComponent(parent, componentID) { + m_Position = m_Parent->GetDefaultPosition(); + m_Rotation = m_Parent->GetDefaultRotation(); + } }; #endif // VEHICLEPHYSICSCOMPONENT_H