- Timestamp:
- Mar 16, 2009, 2:11:14 AM (16 years ago)
- Location:
- code/branches/miniprojects/src/orxonox/objects/controllers
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
code/branches/miniprojects/src/orxonox/objects/controllers/Controller.cc
r2662 r2789 43 43 this->player_ = 0; 44 44 this->controllableEntity_ = 0; 45 this->hud_ = 0;46 this->bUpdateHUD_ = false;47 45 } 48 46 49 47 Controller::~Controller() 50 48 { 51 if (this->isInitialized() && this->hud_)52 delete this->hud_;53 }54 55 void Controller::changedControllableEntity()56 {57 if (this->bUpdateHUD_)58 {59 this->updateHUD();60 this->bUpdateHUD_ = false;61 }62 63 if (this->hud_)64 this->hud_->setOwner(this->getControllableEntity());65 }66 67 void Controller::updateHUD()68 {69 if (this->hud_)70 {71 delete this->hud_;72 this->hud_ = 0;73 }74 75 if (this->hudtemplate_ != "")76 {77 this->hud_ = new OverlayGroup(this);78 this->hud_->addTemplate(this->hudtemplate_);79 this->hud_->setOwner(this->getControllableEntity());80 }81 49 } 82 50 } -
code/branches/miniprojects/src/orxonox/objects/controllers/Controller.h
r2662 r2789 57 57 inline ControllableEntity* getControllableEntity() const 58 58 { return this->controllableEntity_; } 59 virtual void changedControllableEntity(); 60 61 inline void setHUDTemplate(const std::string& name) 62 { 63 if (name != this->hudtemplate_) 64 { 65 this->hudtemplate_ = name; 66 if (this->controllableEntity_) 67 this->updateHUD(); 68 else 69 this->bUpdateHUD_ = true; 70 } 71 } 72 inline const std::string& getHUDTemplate() const 73 { return this->hudtemplate_; } 74 75 inline OverlayGroup* getHUD() const 76 { return this->hud_; } 59 virtual void changedControllableEntity() {} 77 60 78 61 protected: 79 void updateHUD();80 81 62 PlayerInfo* player_; 82 63 ControllableEntity* controllableEntity_; 83 std::string hudtemplate_;84 OverlayGroup* hud_;85 bool bUpdateHUD_;86 64 }; 87 65 }
Note: See TracChangeset
for help on using the changeset viewer.