X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fanim.c;h=c3948745602ad2cbbfeb5ac56ee6a575b4a47717;hb=b4d6d8ae51658490fd6d0a23b81a0d98c99df925;hp=f109b874f39b75b0109e8d18af437e2f995a6e86;hpb=9ac63ed68417dba413c129c1c14c179f2437fd44;p=rocksndiamonds.git diff --git a/src/anim.c b/src/anim.c index f109b874..c3948745 100644 --- a/src/anim.c +++ b/src/anim.c @@ -37,18 +37,20 @@ #define ANIM_CLASS_BIT_TITLE 1 #define ANIM_CLASS_BIT_MAIN 2 #define ANIM_CLASS_BIT_SCORES 3 -#define ANIM_CLASS_BIT_SUBMENU 4 -#define ANIM_CLASS_BIT_MENU 5 -#define ANIM_CLASS_BIT_TOONS 6 -#define ANIM_CLASS_BIT_NO_TITLE 7 +#define ANIM_CLASS_BIT_SCORESONLY 4 +#define ANIM_CLASS_BIT_SUBMENU 5 +#define ANIM_CLASS_BIT_MENU 6 +#define ANIM_CLASS_BIT_TOONS 7 +#define ANIM_CLASS_BIT_NO_TITLE 8 -#define NUM_ANIM_CLASSES 8 +#define NUM_ANIM_CLASSES 9 #define ANIM_CLASS_NONE 0 #define ANIM_CLASS_TITLE_INITIAL (1 << ANIM_CLASS_BIT_TITLE_INITIAL) #define ANIM_CLASS_TITLE (1 << ANIM_CLASS_BIT_TITLE) #define ANIM_CLASS_MAIN (1 << ANIM_CLASS_BIT_MAIN) #define ANIM_CLASS_SCORES (1 << ANIM_CLASS_BIT_SCORES) +#define ANIM_CLASS_SCORESONLY (1 << ANIM_CLASS_BIT_SCORESONLY) #define ANIM_CLASS_SUBMENU (1 << ANIM_CLASS_BIT_SUBMENU) #define ANIM_CLASS_MENU (1 << ANIM_CLASS_BIT_MENU) #define ANIM_CLASS_TOONS (1 << ANIM_CLASS_BIT_TOONS) @@ -58,6 +60,11 @@ ANIM_CLASS_SCORES | \ ANIM_CLASS_NO_TITLE) +#define ANIM_CLASS_TOONS_SCORESONLY (ANIM_CLASS_TOONS | \ + ANIM_CLASS_SCORES | \ + ANIM_CLASS_SCORESONLY | \ + ANIM_CLASS_NO_TITLE) + #define ANIM_CLASS_TOONS_MENU_MAIN (ANIM_CLASS_TOONS | \ ANIM_CLASS_MENU | \ ANIM_CLASS_MAIN | \ @@ -187,8 +194,9 @@ struct GameModeAnimClass { GAME_MODE_PSEUDO_TYPENAMES, ANIM_CLASS_TOONS_MENU_SUBMENU }, { GAME_MODE_PSEUDO_MAINONLY, ANIM_CLASS_TOONS_MENU_MAIN }, { GAME_MODE_PSEUDO_TYPENAME, ANIM_CLASS_TOONS_MENU_MAIN }, - { GAME_MODE_PSEUDO_SCORESOLD, ANIM_CLASS_TOONS_SCORES }, - { GAME_MODE_PSEUDO_SCORESNEW, ANIM_CLASS_TOONS_SCORES }, + { GAME_MODE_PSEUDO_SCORESOLD, ANIM_CLASS_TOONS_SCORESONLY }, + { GAME_MODE_PSEUDO_SCORESNEW, ANIM_CLASS_TOONS_SCORESONLY }, + { GAME_MODE_SCOREINFO, ANIM_CLASS_TOONS_SCORES }, { GAME_MODE_EDITOR, ANIM_CLASS_NO_TITLE }, { GAME_MODE_PLAYING, ANIM_CLASS_NO_TITLE }, @@ -205,6 +213,7 @@ struct AnimClassGameMode { ANIM_CLASS_BIT_TITLE, GAME_MODE_TITLE }, { ANIM_CLASS_BIT_MAIN, GAME_MODE_MAIN }, { ANIM_CLASS_BIT_SCORES, GAME_MODE_SCORES }, + { ANIM_CLASS_BIT_SCORESONLY, GAME_MODE_PSEUDO_SCORESONLY }, { ANIM_CLASS_BIT_SUBMENU, GAME_MODE_PSEUDO_SUBMENU }, { ANIM_CLASS_BIT_MENU, GAME_MODE_PSEUDO_MENU }, { ANIM_CLASS_BIT_TOONS, GAME_MODE_PSEUDO_TOONS }, @@ -825,8 +834,8 @@ static void DrawGlobalAnimationsExt(int drawing_target, int drawing_stage) gfx.anim_random_frame = last_anim_random_frame; - getFixedGraphicSource(part->graphic, frame, &src_bitmap, - &src_x, &src_y); + getGlobalAnimGraphicSource(part->graphic, frame, &src_bitmap, + &src_x, &src_y); src_x += cut_x; src_y += cut_y; @@ -870,6 +879,8 @@ void DrawGlobalAnimations(int drawing_target, int drawing_stage) ResetGlobalAnim_Clicked(); } + DrawEnvelopeRequestToScreen(drawing_target, drawing_stage); + if (gfx.cursor_mode_override != last_cursor_mode_override) SetMouseCursor(gfx.cursor_mode); }