X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fscreens.c;h=26983cdb22c788c00c9e1534302f07bde8b7de69;hb=1e4a6b46371858fdb85052eec3e7143732ff91b5;hp=5f93823be4ef19aba7c5ca36d33d747a6ffa4bcf;hpb=4fe9164460ddbdc1077604bac5c418f02fd8fa2b;p=rocksndiamonds.git diff --git a/src/screens.c b/src/screens.c index 5f93823b..26983cdb 100644 --- a/src/screens.c +++ b/src/screens.c @@ -346,6 +346,7 @@ void DrawMainMenu() OpenDoor(DOOR_CLOSE_1 | DOOR_OPEN_2); } +#if 0 static void gotoTopLevelDir() { /* move upwards to top level directory */ @@ -374,6 +375,7 @@ static void gotoTopLevelDir() leveldir_current = leveldir_current->node_parent; } } +#endif void HandleMainMenu(int mx, int my, int dx, int dy, int button) { @@ -3030,6 +3032,29 @@ void HandleGameActions() TimeFrames = 0; TapeTime++; + if (!level.use_step_counter) + { + TimePlayed++; + + if (TimeLeft > 0) + { + TimeLeft--; + + if (TimeLeft <= 10 && setup.time_limit) + PlaySoundStereo(SND_GAME_RUNNING_OUT_OF_TIME, SOUND_MIDDLE); + + DrawGameValue_Time(TimeLeft); + + if (!TimeLeft && setup.time_limit) + level.native_em_level->lev->killed_out_of_time = TRUE; + } + else if (level.time == 0 && level.native_em_level->lev->home > 0) + DrawGameValue_Time(TimePlayed); + + level.native_em_level->lev->time = + (level.time == 0 ? TimePlayed : TimeLeft); + } + if (tape.recording || tape.playing) DrawVideoDisplay(VIDEO_STATE_TIME_ON, TapeTime); }