[Orxonox-commit 1607] r6325 - code/branches/presentation2/src/orxonox/worldentities
rgrieder at orxonox.net
rgrieder at orxonox.net
Fri Dec 11 17:52:59 CET 2009
Author: rgrieder
Date: 2009-12-11 17:52:59 +0100 (Fri, 11 Dec 2009)
New Revision: 6325
Modified:
code/branches/presentation2/src/orxonox/worldentities/ControllableEntity.cc
code/branches/presentation2/src/orxonox/worldentities/ControllableEntity.h
Log:
Disabled drag in mouse look.
Modified: code/branches/presentation2/src/orxonox/worldentities/ControllableEntity.cc
===================================================================
--- code/branches/presentation2/src/orxonox/worldentities/ControllableEntity.cc 2009-12-11 16:24:32 UTC (rev 6324)
+++ code/branches/presentation2/src/orxonox/worldentities/ControllableEntity.cc 2009-12-11 16:52:59 UTC (rev 6325)
@@ -69,6 +69,7 @@
this->reverseCamera_ = 0;
this->bDestroyWhenPlayerLeft_ = false;
this->cameraPositionRootNode_ = this->node_->createChildSceneNode();
+ this->currentCameraPosition_ = 0;
this->bMouseLook_ = false;
this->mouseLookSpeed_ = 200;
@@ -173,6 +174,7 @@
if (this->camera_->getParent() == this && this->cameraPositions_.size() > 0)
{
this->cameraPositions_.front()->attachCamera(this->camera_);
+ this->currentCameraPosition_ = this->cameraPositions_.front().get();
}
else if (this->cameraPositions_.size() > 0)
{
@@ -182,9 +184,15 @@
{
++it;
if (it != this->cameraPositions_.end())
+ {
(*it)->attachCamera(this->camera_);
+ this->currentCameraPosition_ = *it;
+ }
else
+ {
(*this->cameraPositions_.begin())->attachCamera(this->camera_);
+ this->currentCameraPosition_ = *this->cameraPositions_.begin();
+ }
break;
}
}
@@ -192,6 +200,7 @@
else
{
this->camera_->attachToNode(this->cameraPositionRootNode_);
+ this->currentCameraPosition_ = 0;
}
}
}
@@ -202,6 +211,13 @@
if (!this->bMouseLook_)
this->cameraPositionRootNode_->setOrientation(Quaternion::IDENTITY);
+ if (this->getCamera())
+ {
+ if (!this->bMouseLook_&& this->currentCameraPosition_->getDrag())
+ this->getCamera()->setDrag(true);
+ else
+ this->getCamera()->setDrag(false);
+ }
}
void ControllableEntity::rotateYaw(const Vector2& value)
@@ -319,9 +335,15 @@
if (this->cameraPositionTemplate_ != "")
this->addTemplate(this->cameraPositionTemplate_);
if (this->cameraPositions_.size() > 0)
+ {
this->cameraPositions_.front()->attachCamera(this->camera_);
+ this->currentCameraPosition_ = this->cameraPositions_.front();
+ }
else
+ {
this->camera_->attachToNode(this->cameraPositionRootNode_);
+ this->currentCameraPosition_ = 0;
+ }
}
if (!this->hud_ && GameMode::showsGraphics())
Modified: code/branches/presentation2/src/orxonox/worldentities/ControllableEntity.h
===================================================================
--- code/branches/presentation2/src/orxonox/worldentities/ControllableEntity.h 2009-12-11 16:24:32 UTC (rev 6324)
+++ code/branches/presentation2/src/orxonox/worldentities/ControllableEntity.h 2009-12-11 16:52:59 UTC (rev 6325)
@@ -209,6 +209,7 @@
float mouseLookSpeed_;
Ogre::SceneNode* cameraPositionRootNode_;
std::list<SmartPtr<CameraPosition> > cameraPositions_;
+ CameraPosition* currentCameraPosition_;
std::string cameraPositionTemplate_;
Controller* xmlcontroller_;
Controller* controller_;
More information about the Orxonox-commit
mailing list