- Timestamp:
- Dec 12, 2017, 5:43:22 PM (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
code/branches/Asteroid_HS17/src/modules/asteroids2D/Asteroids2DStone.cc
r11660 r11666 120 120 } 121 121 122 void Asteroids2DStone::damage(float damage, float healthdamage, float shielddamage, Pawn* originator, const btCollisionShape* cs) 123 { 124 split(); 125 //Pawn::damage(damage, healthdamage, shielddamage, originator, cs); 126 if (getGame() && orxonox_cast<Asteroids2DShip*>(originator) != nullptr && getHealth() <= 0) 127 getGame()->addPoints(3*42); 128 } 129 130 Asteroids2D* Asteroids2DStone::getGame() 131 { 132 if (game == nullptr) 133 { 134 for (Asteroids2D* asteroids : ObjectList<Asteroids2D>()) 135 game = asteroids; 136 } 137 return game; 138 } 139 122 140 void Asteroids2DStone::split() 123 141 { 124 142 orxout() << "split" << endl; 125 if(size == 1)143 if(size == 3) 126 144 { 127 this->death(); 145 Asteroids2DStone* newStone1 = new Asteroids2DStone(this->getContext(), 2, this->getPosition()); 146 newStone1->addTemplate("stone2"); 147 Asteroids2DStone* newStone2 = new Asteroids2DStone(this->getContext(), 2, this->getPosition()); 148 newStone2->addTemplate("stone2"); 128 149 129 150 }else if(size == 2){ … … 135 156 Asteroids2DStone* newStone2 = new Asteroids2DStone(this->getContext(), 1, this->getPosition()); 136 157 newStone2->addTemplate("stone1"); 137 138 }else{ 139 Asteroids2DStone* newStone1 = new Asteroids2DStone(this->getContext(), 2, this->getPosition()); 140 newStone1->addTemplate("stone1"); 141 Asteroids2DStone* newStone2 = new Asteroids2DStone(this->getContext(), 2, this->getPosition()); 142 newStone2->addTemplate("stone1"); 143 } 158 } 159 this->death(); 144 160 } 145 161
Note: See TracChangeset
for help on using the changeset viewer.