diff options
author | Benoit Bolsee <benoit.bolsee@online.be> | 2009-04-22 22:20:41 +0400 |
---|---|---|
committer | Benoit Bolsee <benoit.bolsee@online.be> | 2009-04-22 22:20:41 +0400 |
commit | 48f483d14f1ff6dd9e5b4c87cb8d75ac862f3157 (patch) | |
tree | 350b36ffc1afe78d8d5da33ba5452854cd656149 /source/gameengine/Ketsji/KX_RadarSensor.cpp | |
parent | b22819f686539f75438938ed45751e7dc3405a0c (diff) |
BGE: some more cleanup, implement proper GetReplica/ProcessReplica workflow for touch/near/radar sensor. Remove duplicated code.
Diffstat (limited to 'source/gameengine/Ketsji/KX_RadarSensor.cpp')
-rw-r--r-- | source/gameengine/Ketsji/KX_RadarSensor.cpp | 28 |
1 files changed, 5 insertions, 23 deletions
diff --git a/source/gameengine/Ketsji/KX_RadarSensor.cpp b/source/gameengine/Ketsji/KX_RadarSensor.cpp index d9b8b6fec5b..bf4b0f67e03 100644 --- a/source/gameengine/Ketsji/KX_RadarSensor.cpp +++ b/source/gameengine/Ketsji/KX_RadarSensor.cpp @@ -80,33 +80,15 @@ KX_RadarSensor::~KX_RadarSensor() CValue* KX_RadarSensor::GetReplica() { KX_RadarSensor* replica = new KX_RadarSensor(*this); - replica->m_colliders = new CListValue(); - replica->Init(); replica->ProcessReplica(); - - replica->m_client_info = new KX_ClientObjectInfo(m_client_info->m_gameobject, KX_ClientObjectInfo::RADAR); - - if (replica->m_physCtrl) - { - replica->m_physCtrl = replica->m_physCtrl->GetReplica(); - if (replica->m_physCtrl) - { - replica->m_physCtrl->setNewClientInfo(replica->m_client_info); - } - } - - //todo: make sure replication works fine! - //>m_sumoObj = new SM_Object(DT_NewCone(m_coneradius, m_coneheight),NULL,NULL,NULL); - //replica->m_sumoObj->setMargin(m_Margin); - //replica->m_sumoObj->setClientObject(replica->m_client_info); - //Wrong: see KX_TouchSensor - //bool parentUpdated = false; - //((KX_GameObject*)replica->GetParent())->GetSGNode()->ComputeWorldTransforms(NULL,parentUpdated); - replica->SynchronizeTransform(); - return replica; } +void KX_RadarSensor::ProcessReplica() +{ + KX_NearSensor::ProcessReplica(); + m_client_info->m_type = KX_ClientObjectInfo::RADAR; +} /** * Transforms the collision object. A cone is not correctly centered |