summaryrefslogtreecommitdiff
path: root/apps/plugins/star.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/plugins/star.c')
-rw-r--r--apps/plugins/star.c30
1 files changed, 19 insertions, 11 deletions
diff --git a/apps/plugins/star.c b/apps/plugins/star.c
index 663c9dfca3..e40fa5a2dc 100644
--- a/apps/plugins/star.c
+++ b/apps/plugins/star.c
@@ -728,7 +728,8 @@ static void star_display_board_info(int current_level)
728 label_pos_y, "C:"); 728 label_pos_y, "C:");
729 729
730 rb->lcd_bitmap_part(star_tiles, 0, control == STAR_CONTROL_BALL ? 730 rb->lcd_bitmap_part(star_tiles, 0, control == STAR_CONTROL_BALL ?
731 BALL*TILE_HEIGHT : BLOCK*TILE_HEIGHT, TILE_WIDTH, 731 BALL*TILE_HEIGHT : BLOCK*TILE_HEIGHT,
732 STRIDE(BMPWIDTH_star_tiles, BMPHEIGHT_star_tiles),
732 STAR_OFFSET_X + (STAR_WIDTH-1) * TILE_WIDTH, 733 STAR_OFFSET_X + (STAR_WIDTH-1) * TILE_WIDTH,
733 tile_pos_y, TILE_WIDTH, TILE_HEIGHT); 734 tile_pos_y, TILE_WIDTH, TILE_HEIGHT);
734 735
@@ -764,12 +765,15 @@ static int star_load_level(int current_level)
764 board[y][x] = *ptr_tab; 765 board[y][x] = *ptr_tab;
765 switch (*ptr_tab) 766 switch (*ptr_tab)
766 { 767 {
767# define DRAW_TILE( a ) \ 768# define DRAW_TILE( a ) \
768 rb->lcd_bitmap_part( star_tiles, 0, \ 769 rb->lcd_bitmap_part( star_tiles, 0, \
769 a*TILE_HEIGHT, TILE_WIDTH, \ 770 a*TILE_HEIGHT, \
770 STAR_OFFSET_X + x * TILE_WIDTH, \ 771 STRIDE( BMPWIDTH_star_tiles, \
771 STAR_OFFSET_Y + y * TILE_HEIGHT, \ 772 BMPHEIGHT_star_tiles), \
772 TILE_WIDTH, TILE_HEIGHT); 773 STAR_OFFSET_X + x * TILE_WIDTH, \
774 STAR_OFFSET_Y + y * TILE_HEIGHT, \
775 TILE_WIDTH, TILE_HEIGHT);
776
773 case STAR_VOID: 777 case STAR_VOID:
774 DRAW_TILE( SPACE ); 778 DRAW_TILE( SPACE );
775 break; 779 break;
@@ -815,9 +819,11 @@ static void star_animate_tile(int tile_no, int start_x, int start_y,
815 for (i = 1 ; i <= TILE_WIDTH ; i++) 819 for (i = 1 ; i <= TILE_WIDTH ; i++)
816 { 820 {
817 STAR_SLEEP 821 STAR_SLEEP
818 rb->lcd_bitmap_part(star_tiles, 0, SPACE * TILE_HEIGHT, TILE_WIDTH, 822 rb->lcd_bitmap_part(star_tiles, 0, SPACE * TILE_HEIGHT,
823 STRIDE(BMPWIDTH_star_tiles, BMPHEIGHT_star_tiles),
819 start_x, start_y, TILE_WIDTH, TILE_HEIGHT); 824 start_x, start_y, TILE_WIDTH, TILE_HEIGHT);
820 rb->lcd_bitmap_part(star_tiles, 0, tile_no * TILE_HEIGHT, TILE_WIDTH, 825 rb->lcd_bitmap_part(star_tiles, 0, tile_no * TILE_HEIGHT,
826 STRIDE(BMPWIDTH_star_tiles, BMPHEIGHT_star_tiles),
821 start_x + delta_x * i, start_y, TILE_WIDTH, TILE_HEIGHT); 827 start_x + delta_x * i, start_y, TILE_WIDTH, TILE_HEIGHT);
822 rb->lcd_update_rect(start_x + delta_x * i - (delta_x>0?1:0), 828 rb->lcd_update_rect(start_x + delta_x * i - (delta_x>0?1:0),
823 start_y, TILE_WIDTH + 1, TILE_HEIGHT); 829 start_y, TILE_WIDTH + 1, TILE_HEIGHT);
@@ -828,9 +834,11 @@ static void star_animate_tile(int tile_no, int start_x, int start_y,
828 for (i = 1 ; i <= TILE_HEIGHT ; i++) 834 for (i = 1 ; i <= TILE_HEIGHT ; i++)
829 { 835 {
830 STAR_SLEEP 836 STAR_SLEEP
831 rb->lcd_bitmap_part(star_tiles, 0, SPACE * TILE_HEIGHT, TILE_WIDTH, 837 rb->lcd_bitmap_part(star_tiles, 0, SPACE * TILE_HEIGHT,
838 STRIDE(BMPWIDTH_star_tiles, BMPHEIGHT_star_tiles),
832 start_x, start_y, TILE_WIDTH, TILE_HEIGHT); 839 start_x, start_y, TILE_WIDTH, TILE_HEIGHT);
833 rb->lcd_bitmap_part(star_tiles, 0, tile_no * TILE_HEIGHT, TILE_WIDTH, 840 rb->lcd_bitmap_part(star_tiles, 0, tile_no * TILE_HEIGHT,
841 STRIDE(BMPWIDTH_star_tiles, BMPHEIGHT_star_tiles),
834 start_x, start_y + delta_y * i, TILE_WIDTH, TILE_HEIGHT); 842 start_x, start_y + delta_y * i, TILE_WIDTH, TILE_HEIGHT);
835 rb->lcd_update_rect(start_x, start_y + delta_y * i - (delta_y>0?1:0), 843 rb->lcd_update_rect(start_x, start_y + delta_y * i - (delta_y>0?1:0),
836 TILE_WIDTH, TILE_HEIGHT + 1); 844 TILE_WIDTH, TILE_HEIGHT + 1);