#include "system.h"
-/* values for toon animation */
-#define ANIMDIR_LEFT 1
-#define ANIMDIR_RIGHT 2
-#define ANIMDIR_UP 4
-#define ANIMDIR_DOWN 8
-
-#define ANIMPOS_ANY 0
-#define ANIMPOS_LEFT 1
-#define ANIMPOS_RIGHT 2
-#define ANIMPOS_UP 4
-#define ANIMPOS_DOWN 8
-#define ANIMPOS_UPPER 16
-
-
struct ToonScreenInfo
{
- Bitmap **toon_bitmap_array;
Bitmap *save_buffer;
void (*update_function)(void);
void (*prepare_backbuffer_function)(void);
int startx, starty;
int width, height;
+
+ int frame_delay_value;
};
struct ToonInfo
{
- int bitmap_nr;
+#if 0
+ int graphic;
int width, height;
int src_x, src_y;
- int frames;
- int frames_per_second;
- int stepsize;
- boolean pingpong;
+ int anim_frames;
+ int step_delay;
+ int step_offset;
+ int anim_mode;
int direction;
int position;
+
+ int anim_delay;
+ int anim_start_frame;
+ Bitmap *bitmap; /* dynamically initialized */
+
+ char *direction_str;
+ char *position_str;
+
+#else
+
+ Bitmap *bitmap;
+ int src_x, src_y;
+ int width, height;
+ int anim_frames;
+ int anim_start_frame;
+ int anim_delay;
+ int anim_mode;
+ int step_offset;
+ int step_delay;
+ char *direction;
+ char *position;
+#endif
};
-void InitToonScreen();
+int getAnimationFrame(int, int, int, int, int);
+
+void InitToonScreen(Bitmap *, void (*update_function)(void),
+ void (*prepare_backbuffer_function)(void),
+ boolean (*redraw_needed_function)(void),
+ struct ToonInfo *, int, int, int, int, int, int);
void InitAnimation(void);
void StopAnimation(void);
void DoAnimation(void);