void event_manager::process() { for( auto it = events.begin(); it != events.end(); ) { it->per_turn(); if( it->when <= calendar::turn ) { it->actualize(); it = events.erase( it ); } else { it++; } } }
void CALifeMonsterDetailPathManager::update (const ALife::_TIME_ID &time_delta) { // first update has enormous time delta, therefore just skip it if (!m_last_update_time) return; if (completed()) return; if (!actual()) { actualize (); if (failed()) return; } follow_path (time_delta); }