- Timestamp:
- May 27, 2010, 10:44:10 PM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
code/branches/presentation3/src/orxonox/gametypes/Gametype.cc
r6417 r6996 309 309 if (this->spawnpoints_.size() > 0) 310 310 { 311 SpawnPoint* fallbackSpawnPoint = NULL; 311 312 unsigned int randomspawn = static_cast<unsigned int>(rnd(static_cast<float>(this->spawnpoints_.size()))); 312 313 unsigned int index = 0; 314 std::set<SpawnPoint*> activeSpawnPoints = this->spawnpoints_; 313 315 for (std::set<SpawnPoint*>::const_iterator it = this->spawnpoints_.begin(); it != this->spawnpoints_.end(); ++it) 316 { 317 if (index == randomspawn) 318 fallbackSpawnPoint = (*it); 319 320 if (!(*it)->isActive()) 321 activeSpawnPoints.erase(*it); 322 323 ++index; 324 } 325 326 randomspawn = static_cast<unsigned int>(rnd(static_cast<float>(this->spawnpoints_.size()))); 327 index = 0; 328 for (std::set<SpawnPoint*>::const_iterator it = activeSpawnPoints.begin(); it != activeSpawnPoints.end(); ++it) 314 329 { 315 330 if (index == randomspawn) 316 331 return (*it); 317 332 318 333 ++index; 319 334 } 335 336 return fallbackSpawnPoint; 320 337 } 321 338 return 0;
Note: See TracChangeset
for help on using the changeset viewer.