X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Ftape.c;h=40a5126b160dbcff66f561b2c847e1bc91f81fa6;hb=f857fec3082c785b0dd271b6ad1b7642a2ed4e65;hp=3ee04d6de79956e456384878678028013262c258;hpb=ef8c5a2593702e86fb1566cfc25dda5f35df2ea0;p=rocksndiamonds.git diff --git a/src/tape.c b/src/tape.c index 3ee04d6d..40a5126b 100644 --- a/src/tape.c +++ b/src/tape.c @@ -50,7 +50,7 @@ static struct GadgetInfo *tape_gadget[NUM_TAPE_BUTTONS]; #define VIDEO_DATE_LABEL_YPOS (VIDEO_DISPLAY1_YPOS) #define VIDEO_DATE_LABEL_XSIZE (VIDEO_DISPLAY_XSIZE) #define VIDEO_DATE_LABEL_YSIZE (VIDEO_DISPLAY_YSIZE) -#define VIDEO_DATE_XPOS (VIDEO_DISPLAY1_XPOS + 1) +#define VIDEO_DATE_XPOS (VIDEO_DISPLAY1_XPOS + 2) #define VIDEO_DATE_YPOS (VIDEO_DISPLAY1_YPOS + 14) #define VIDEO_DATE_XSIZE (VIDEO_DISPLAY_XSIZE) #define VIDEO_DATE_YSIZE 16 @@ -78,7 +78,7 @@ static struct GadgetInfo *tape_gadget[NUM_TAPE_BUTTONS]; #define VIDEO_PAUSE_SYMBOL_YPOS (VIDEO_DISPLAY2_YPOS) #define VIDEO_PAUSE_SYMBOL_XSIZE 17 #define VIDEO_PAUSE_SYMBOL_YSIZE 13 -#define VIDEO_TIME_XPOS (VIDEO_DISPLAY2_XPOS + 38) +#define VIDEO_TIME_XPOS (VIDEO_DISPLAY2_XPOS + 39) #define VIDEO_TIME_YPOS (VIDEO_DISPLAY2_YPOS + 14) #define VIDEO_TIME_XSIZE 50 #define VIDEO_TIME_YSIZE 16 @@ -239,12 +239,12 @@ void DrawVideoDisplay(unsigned long state, unsigned long value) int monat = (value/100) % 100; int jahr = (value/10000); - DrawText(VX+VIDEO_DATE_XPOS,VY+VIDEO_DATE_YPOS, - int2str(tag,2),FS_SMALL,FC_SPECIAL1); - DrawText(VX+VIDEO_DATE_XPOS+27,VY+VIDEO_DATE_YPOS, - monatsname[monat],FS_SMALL,FC_SPECIAL1); - DrawText(VX+VIDEO_DATE_XPOS+64,VY+VIDEO_DATE_YPOS, - int2str(jahr,2),FS_SMALL,FC_SPECIAL1); + DrawText(VX + VIDEO_DATE_XPOS, VY + VIDEO_DATE_YPOS, + int2str(tag, 2), FONT_TAPE_RECORDER); + DrawText(VX + VIDEO_DATE_XPOS + 27, VY + VIDEO_DATE_YPOS, + monatsname[monat], FONT_TAPE_RECORDER); + DrawText(VX + VIDEO_DATE_XPOS + 64, VY + VIDEO_DATE_YPOS, + int2str(jahr, 2), FONT_TAPE_RECORDER); } if (state & VIDEO_STATE_TIME_ON) @@ -252,10 +252,10 @@ void DrawVideoDisplay(unsigned long state, unsigned long value) int min = value / 60; int sec = value % 60; - DrawText(VX+VIDEO_TIME_XPOS,VY+VIDEO_TIME_YPOS, - int2str(min,2),FS_SMALL,FC_SPECIAL1); - DrawText(VX+VIDEO_TIME_XPOS+27,VY+VIDEO_TIME_YPOS, - int2str(sec,2),FS_SMALL,FC_SPECIAL1); + DrawText(VX + VIDEO_TIME_XPOS, VY + VIDEO_TIME_YPOS, + int2str(min, 2), FONT_TAPE_RECORDER); + DrawText(VX + VIDEO_TIME_XPOS + 27, VY + VIDEO_TIME_YPOS, + int2str(sec, 2), FONT_TAPE_RECORDER); } if (state & VIDEO_STATE_DATE) @@ -302,6 +302,9 @@ void TapeErase() tape.length = 0; tape.counter = 0; + if (leveldir_current) + setString(&tape.level_identifier, leveldir_current->identifier); + tape.level_nr = level_nr; tape.pos[tape.counter].delay = 0; tape.changed = TRUE; @@ -363,7 +366,7 @@ static void TapeStartGameRecording() else #endif { - game_status = PLAYING; + game_status = GAME_MODE_PLAYING; StopAnimation(); InitGame(); } @@ -508,7 +511,7 @@ static void TapeStartGamePlaying() { TapeStartPlaying(); - game_status = PLAYING; + game_status = GAME_MODE_PLAYING; StopAnimation(); InitGame(); } @@ -588,8 +591,10 @@ void TapeStop() DrawVideoDisplay(VIDEO_STATE_TIME_ON, tape.length_seconds); } +#if 0 if (tape.auto_play) AutoPlayTape(); /* continue automatically playing next tape */ +#endif } unsigned int GetTapeLength() @@ -643,7 +648,7 @@ static void TapeSingleStep() void TapeQuickSave() { - if (game_status == PLAYING) + if (game_status == GAME_MODE_PLAYING) { if (tape.recording) TapeHaltRecording(); /* prepare tape for saving on-the-fly */ @@ -653,13 +658,13 @@ void TapeQuickSave() else SaveTape(tape.level_nr); } - else if (game_status == MAINMENU) + else if (game_status == GAME_MODE_MAIN) Request("No game that can be saved !", REQ_CONFIRM); } void TapeQuickLoad() { - if (game_status == PLAYING || game_status == MAINMENU) + if (game_status == GAME_MODE_PLAYING || game_status == GAME_MODE_MAIN) { TapeStop(); TapeErase(); @@ -727,14 +732,14 @@ void AutoPlayTape() autoplay_level_nr = autoplay_leveldir->first_level; - printf_line('=', 79); + printf_line("=", 79); printf("Automatically playing level tapes\n"); - printf_line('-', 79); + printf_line("-", 79); printf("Level series identifier: '%s'\n", autoplay_leveldir->identifier); printf("Level series name: '%s'\n", autoplay_leveldir->name); printf("Level series author: '%s'\n", autoplay_leveldir->author); printf("Number of levels: %d\n", autoplay_leveldir->levels); - printf_line('=', 79); + printf_line("=", 79); printf("\n"); for (i=0; iidentifier, num_levels_solved, num_levels_played, @@ -791,7 +796,7 @@ void AutoPlayTape() printf(" %03d", i); } printf("\n"); - printf_line('=', 79); + printf_line("=", 79); CloseAllAndExit(0); } @@ -940,7 +945,7 @@ static void HandleTapeButtons(struct GadgetInfo *gi) { int id = gi->custom_id; - if (game_status != MAINMENU && game_status != PLAYING) + if (game_status != GAME_MODE_MAIN && game_status != GAME_MODE_PLAYING) return; switch (id)