1 /***********************************************************
2 * Artsoft Retro-Game Library *
3 *----------------------------------------------------------*
4 * (c) 1995-2002 Artsoft Entertainment *
6 * Detmolder Strasse 189 *
9 * e-mail: info@artsoft.org *
10 *----------------------------------------------------------*
12 ***********************************************************/
20 /* values for animation mode (frame order and direction) */
22 #define ANIM_LOOP (1 << 0)
23 #define ANIM_LINEAR (1 << 1)
24 #define ANIM_PINGPONG (1 << 2)
25 #define ANIM_PINGPONG2 (1 << 3)
26 #define ANIM_REVERSE (1 << 4)
27 #define ANIM_RANDOM (1 << 5)
30 /* values for toon animation direction */
31 #define ANIMDIR_LEFT 1
32 #define ANIMDIR_RIGHT 2
34 #define ANIMDIR_DOWN 8
37 #define ANIMPOS_LEFT 1
38 #define ANIMPOS_RIGHT 2
40 #define ANIMPOS_DOWN 8
41 #define ANIMPOS_UPPER 16
48 void (*update_function)(void);
49 void (*prepare_backbuffer_function)(void);
50 boolean (*redraw_needed_function)(void);
52 struct ToonInfo *toons;
58 int frame_delay_value;
76 Bitmap *bitmap; /* dynamically initialized */
98 int getAnimationFrame(int, int, int, int, int);
100 void InitToonScreen(Bitmap *, void (*update_function)(void),
101 void (*prepare_backbuffer_function)(void),
102 boolean (*redraw_needed_function)(void),
103 struct ToonInfo *, int, int, int, int, int, int);
104 void InitAnimation(void);
105 void StopAnimation(void);
106 void DoAnimation(void);