Changeset 10071 for code/branches/modularships/src/orxonox/items
- Timestamp:
- May 22, 2014, 2:18:47 PM (11 years ago)
- Location:
- code/branches/modularships/src/orxonox/items
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
code/branches/modularships/src/orxonox/items/PartDestructionEvent.cc
r10058 r10071 143 143 switch (this->targetParam_) { 144 144 case null: 145 if (!this->parent_->getParent()->getShipPartByName(targetName_)) 146 return; 145 147 this->parent_->getParent()->getShipPartByName(targetName_)->setEventExecution(false); 146 148 this->parent_->getParent()->killShipPart(targetName_); -
code/branches/modularships/src/orxonox/items/ShipPart.cc
r10068 r10071 55 55 this->setAlive(true); 56 56 this->setEventExecution(true); 57 this->healthMem_ = 100; 57 58 } 58 59 … … 102 103 // Remove this ShipPart from the parent. 103 104 this->parent_->removeShipPart(this); 105 delete this; 104 106 } 105 107 … … 201 203 { 202 204 this->health_ = health; 205 } 206 207 void ShipPart::setAlive(bool var) 208 { 209 this->alive_ = var; 210 orxout() << "ShipPart " << this->getName() << " alive_: " << this->alive_ << endl; 203 211 } 204 212 … … 236 244 237 245 // (Ugly) Chatoutput of health, until a GUI for modularspaceships-shipparts is implemented. 238 if (this->health_ < 0.2 * this->maxHealth_) 239 { 246 if ((this->health_ < 0.2 * this->maxHealth_) && (this->healthMem_ == 40)) 247 { 248 this->healthMem_ = 20; 240 249 ChatManager::message("ShipPart " + this->getName() + " remaining health is 20%!"); 241 250 return; 242 251 } 243 if (this->health_ < 0.4 * this->maxHealth_) 244 { 252 if ((this->health_ < 0.4 * this->maxHealth_) && (this->healthMem_ == 60)) 253 { 254 this->healthMem_ = 40; 245 255 ChatManager::message("ShipPart " + this->getName() + " remaining health is 40%!"); 246 256 return; 247 257 } 248 if (this->health_ < 0.6 * this->maxHealth_) 249 { 258 if ((this->health_ < 0.6 * this->maxHealth_) && (this->healthMem_ == 80)) 259 { 260 this->healthMem_ = 60; 250 261 ChatManager::message("ShipPart " + this->getName() + " remaining health is 60%!"); 251 262 return; 252 263 } 253 if (this->health_ < 0.8 * this->maxHealth_) 254 { 264 if ((this->health_ < 0.8 * this->maxHealth_) && (this->healthMem_ == 100)) 265 { 266 this->healthMem_ = 80; 255 267 ChatManager::message("ShipPart " + this->getName() + " remaining health is 80%!"); 256 268 return; -
code/branches/modularships/src/orxonox/items/ShipPart.h
r10067 r10071 72 72 { return this->parent_; } 73 73 74 inline void setAlive(bool var) 75 { this->alive_ = var; } 74 void setAlive(bool var); 76 75 inline bool isAlive() 77 76 { return this->alive_; } … … 125 124 bool eventExecution_; 126 125 126 float healthMem_; 127 127 128 Vector3 explosionPosition_; 128 129
Note: See TracChangeset
for help on using the changeset viewer.