Changeset 2973 for code/trunk/src/orxonox/objects/worldentities
- Timestamp:
- May 12, 2009, 9:24:58 PM (16 years ago)
- Location:
- code/trunk/src/orxonox/objects/worldentities
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
code/trunk/src/orxonox/objects/worldentities/ControllableEntity.cc
r2896 r2973 42 42 #include "objects/worldentities/Camera.h" 43 43 #include "objects/worldentities/CameraPosition.h" 44 #include "objects/gametypes/Gametype.h"45 44 #include "overlays/OverlayGroup.h" 46 45 … … 67 66 this->mouseLookSpeed_ = 200; 68 67 69 this->gtinfo_ = 0;70 this->gtinfoID_ = OBJECTID_UNKNOWN;71 this->changedGametype();72 73 68 this->server_position_ = Vector3::ZERO; 74 69 this->client_position_ = Vector3::ZERO; … … 125 120 { 126 121 SetConfigValue(mouseLookSpeed_, 3.0f); 127 }128 129 void ControllableEntity::changedGametype()130 {131 //SUPER(ControllableEntity, changedGametype);132 WorldEntity::changedGametype();133 134 this->gtinfo_ = 0;135 this->gtinfoID_ = OBJECTID_UNKNOWN;136 137 if (this->getGametype() && this->getGametype()->getGametypeInfo())138 {139 this->gtinfo_ = this->getGametype()->getGametypeInfo();140 this->gtinfoID_ = this->gtinfo_->getObjectID();141 }142 122 } 143 123 … … 283 263 } 284 264 285 void ControllableEntity::networkcallback_changedgtinfoID()286 {287 if (this->gtinfoID_ != OBJECTID_UNKNOWN)288 {289 this->gtinfo_ = dynamic_cast<GametypeInfo*>(Synchronisable::getSynchronisable(this->gtinfoID_));290 291 if (!this->gtinfo_)292 this->gtinfoID_ = OBJECTID_UNKNOWN;293 }294 }295 296 265 void ControllableEntity::startLocalHumanControl() 297 266 { … … 394 363 395 364 registerVariable(this->playerID_, variableDirection::toclient, new NetworkCallback<ControllableEntity>(this, &ControllableEntity::networkcallback_changedplayerID)); 396 registerVariable(this->gtinfoID_, variableDirection::toclient, new NetworkCallback<ControllableEntity>(this, &ControllableEntity::networkcallback_changedgtinfoID));397 365 } 398 366 -
code/trunk/src/orxonox/objects/worldentities/ControllableEntity.h
r2851 r2973 48 48 void setConfigValues(); 49 49 50 virtual void changedGametype();51 50 virtual void changedPlayer() {} 52 51 … … 126 125 { return this->bHasHumanController_; } 127 126 128 inline const GametypeInfo* getGametypeInfo() const129 { return this->gtinfo_; }130 131 127 inline bool isInMouseLook() const 132 128 { return this->bMouseLook_; } … … 157 153 158 154 void networkcallback_changedplayerID(); 159 void networkcallback_changedgtinfoID();160 155 161 156 // Bullet btMotionState related … … 190 185 std::list<CameraPosition*> cameraPositions_; 191 186 std::string cameraPositionTemplate_; 192 193 const GametypeInfo* gtinfo_;194 unsigned int gtinfoID_;195 187 }; 196 188 }
Note: See TracChangeset
for help on using the changeset viewer.