Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenoit Bolsee <benoit.bolsee@online.be>2009-04-22 22:20:41 +0400
committerBenoit Bolsee <benoit.bolsee@online.be>2009-04-22 22:20:41 +0400
commit48f483d14f1ff6dd9e5b4c87cb8d75ac862f3157 (patch)
tree350b36ffc1afe78d8d5da33ba5452854cd656149 /source/gameengine/Ketsji/KX_RadarSensor.cpp
parentb22819f686539f75438938ed45751e7dc3405a0c (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.cpp28
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