209 |
case LEVELFINISHED: |
case LEVELFINISHED: |
210 |
if (state==INGAME) { |
if (state==INGAME) { |
211 |
sound::PlaySound("finished"); |
sound::PlaySound("finished"); |
|
display::GetStatusBar()->show_text("Level finished!", display::TEXT_STATIC); |
|
212 |
player::LevelFinished(); // remove player-controlled actors |
player::LevelFinished(); // remove player-controlled actors |
213 |
|
|
214 |
options::SetLevelTime (level_pack->get_name(), |
int level_time = int(overall_level_time+current_state_dtime+.5); |
215 |
level_pack->get_info(icurrent_level)->filename, |
if (options::SetLevelTime (level_pack->get_name(), |
216 |
options::Difficulty, |
level_pack->get_info(icurrent_level)->filename, |
217 |
int(overall_level_time+current_state_dtime+.5)); |
options::Difficulty, |
218 |
|
level_time)) |
219 |
|
{ |
220 |
|
display::GetStatusBar()->show_text("New best time!", display::TEXT_STATIC); |
221 |
|
} else { |
222 |
|
display::GetStatusBar()->show_text("Level finished!", display::TEXT_STATIC); |
223 |
|
} |
224 |
|
|
225 |
if (options::LevelStatusChanged) { |
if (options::LevelStatusChanged) { |
226 |
options::Save(); // save options (Enigma sometimes crashes when loading next level) |
options::Save(); // save options (Enigma sometimes crashes when loading next level) |