#define DWARF_Y 72
#define DWARF2_Y 186
#define DWARF_FRAMES 8
-#define DWARF_FPS 10
+#define DWARF_DELAY 5
#define DWARF_STEPSIZE 4
#define JUMPER_XSIZE 48
#define JUMPER_YSIZE 56
#define JUMPER_X 2
#define JUMPER_Y 125
#define JUMPER_FRAMES 8
-#define JUMPER_FPS 10
+#define JUMPER_DELAY 5
#define JUMPER_STEPSIZE 4
#define CLOWN_XSIZE 80
#define CLOWN_YSIZE 110
#define CLOWN_X 327
#define CLOWN_Y 10
#define CLOWN_FRAMES 1
-#define CLOWN_FPS 10
+#define CLOWN_DELAY 5
#define CLOWN_STEPSIZE 4
#define BIRD_XSIZE 32
#define BIRD_YSIZE 30
#define BIRD2_X 2
#define BIRD2_Y 37
#define BIRD_FRAMES 8
-#define BIRD_FPS 20
+#define BIRD_DELAY 2
#define BIRD_STEPSIZE 4
-#define GAMETOON_XSIZE TILEX
-#define GAMETOON_YSIZE TILEY
-#define GAMETOON_FRAMES_4 4
-#define GAMETOON_FRAMES_8 8
-#define GAMETOON_FPS 20
-#define GAMETOON_STEPSIZE 4
-
struct ToonInfo toons[NUM_TOONS] =
{
{
- PIX_TOONS,
+ IMG_GLOBAL_TOONS,
DWARF_XSIZE, DWARF_YSIZE,
DWARF_X, DWARF_Y,
DWARF_FRAMES,
- DWARF_FPS,
+ DWARF_DELAY,
DWARF_STEPSIZE,
- ANIM_NORMAL,
+ ANIM_LOOP,
ANIMDIR_RIGHT,
ANIMPOS_DOWN
},
{
- PIX_TOONS,
+ IMG_GLOBAL_TOONS,
DWARF_XSIZE, DWARF_YSIZE,
DWARF_X, DWARF2_Y,
DWARF_FRAMES,
- DWARF_FPS,
+ DWARF_DELAY,
DWARF_STEPSIZE,
- ANIM_NORMAL,
+ ANIM_LOOP,
ANIMDIR_LEFT,
ANIMPOS_DOWN
},
{
- PIX_TOONS,
+ IMG_GLOBAL_TOONS,
JUMPER_XSIZE, JUMPER_YSIZE,
JUMPER_X, JUMPER_Y,
JUMPER_FRAMES,
- JUMPER_FPS,
+ JUMPER_DELAY,
JUMPER_STEPSIZE,
- ANIM_NORMAL,
+ ANIM_LOOP,
ANIMDIR_RIGHT,
ANIMPOS_DOWN
},
{
- PIX_TOONS,
+ IMG_GLOBAL_TOONS,
CLOWN_XSIZE, CLOWN_YSIZE,
CLOWN_X, CLOWN_Y,
CLOWN_FRAMES,
- CLOWN_FPS,
+ CLOWN_DELAY,
CLOWN_STEPSIZE,
- ANIM_NORMAL,
+ ANIM_LOOP,
ANIMDIR_UP,
ANIMPOS_ANY
},
{
- PIX_TOONS,
+ IMG_GLOBAL_TOONS,
BIRD_XSIZE, BIRD_YSIZE,
BIRD1_X, BIRD1_Y,
BIRD_FRAMES,
- BIRD_FPS,
+ BIRD_DELAY,
BIRD_STEPSIZE,
- ANIM_OSCILLATE,
+ ANIM_PINGPONG,
ANIMDIR_RIGHT,
ANIMPOS_UPPER
},
{
- PIX_TOONS,
+ IMG_GLOBAL_TOONS,
BIRD_XSIZE, BIRD_YSIZE,
BIRD2_X, BIRD2_Y,
BIRD_FRAMES,
- BIRD_FPS,
+ BIRD_DELAY,
BIRD_STEPSIZE,
- ANIM_OSCILLATE,
+ ANIM_PINGPONG,
ANIMDIR_LEFT,
ANIMPOS_UPPER
},
{
- PIX_HEROES,
- GAMETOON_XSIZE, GAMETOON_YSIZE,
- ((GFX_SPIELER1_LEFT - GFX_START_ROCKSHEROES) % HEROES_PER_LINE)*TILEX,
- ((GFX_SPIELER1_LEFT - GFX_START_ROCKSHEROES) / HEROES_PER_LINE)*TILEY,
- GAMETOON_FRAMES_4,
- GAMETOON_FPS,
- GAMETOON_STEPSIZE,
- ANIM_NORMAL,
+ IMG_PLAYER1_LEFT_MOVING,
+ -1, -1,
+ -1, -1,
+ -1,
+ -1,
+ -1,
+ -1,
ANIMDIR_LEFT,
ANIMPOS_DOWN
},
{
- PIX_HEROES,
- GAMETOON_XSIZE, GAMETOON_YSIZE,
- ((GFX_SPIELER1_RIGHT - GFX_START_ROCKSHEROES) % HEROES_PER_LINE)*TILEX,
- ((GFX_SPIELER1_RIGHT - GFX_START_ROCKSHEROES) / HEROES_PER_LINE)*TILEY,
- GAMETOON_FRAMES_4,
- GAMETOON_FPS,
- GAMETOON_STEPSIZE,
- ANIM_NORMAL,
+ IMG_PLAYER1_RIGHT_MOVING,
+ -1, -1,
+ -1, -1,
+ -1,
+ -1,
+ -1,
+ -1,
ANIMDIR_RIGHT,
ANIMPOS_DOWN
},
{
- PIX_HEROES,
- GAMETOON_XSIZE, GAMETOON_YSIZE,
- ((GFX_PINGUIN_LEFT - GFX_START_ROCKSHEROES) % HEROES_PER_LINE)*TILEX,
- ((GFX_PINGUIN_LEFT - GFX_START_ROCKSHEROES) / HEROES_PER_LINE)*TILEY,
- GAMETOON_FRAMES_4,
- GAMETOON_FPS,
- GAMETOON_STEPSIZE,
- ANIM_NORMAL,
+ IMG_PENGUIN_LEFT_MOVING,
+ -1, -1,
+ -1, -1,
+ -1,
+ -1,
+ -1,
+ -1,
ANIMDIR_LEFT,
ANIMPOS_DOWN
},
{
- PIX_HEROES,
- GAMETOON_XSIZE, GAMETOON_YSIZE,
- ((GFX_PINGUIN_RIGHT - GFX_START_ROCKSHEROES) % HEROES_PER_LINE)*TILEX,
- ((GFX_PINGUIN_RIGHT - GFX_START_ROCKSHEROES) / HEROES_PER_LINE)*TILEY,
- GAMETOON_FRAMES_4,
- GAMETOON_FPS,
- GAMETOON_STEPSIZE,
- ANIM_NORMAL,
+ IMG_PENGUIN_RIGHT_MOVING,
+ -1, -1,
+ -1, -1,
+ -1,
+ -1,
+ -1,
+ -1,
ANIMDIR_RIGHT,
ANIMPOS_DOWN
},
{
- PIX_HEROES,
- GAMETOON_XSIZE, GAMETOON_YSIZE,
- ((GFX_MOLE_LEFT - GFX_START_ROCKSHEROES) % HEROES_PER_LINE)*TILEX,
- ((GFX_MOLE_LEFT - GFX_START_ROCKSHEROES) / HEROES_PER_LINE)*TILEY,
- GAMETOON_FRAMES_4,
- GAMETOON_FPS,
- GAMETOON_STEPSIZE,
- ANIM_NORMAL,
+ IMG_MOLE_LEFT_MOVING,
+ -1, -1,
+ -1, -1,
+ -1,
+ -1,
+ -1,
+ -1,
ANIMDIR_LEFT,
ANIMPOS_DOWN
},
{
- PIX_HEROES,
- GAMETOON_XSIZE, GAMETOON_YSIZE,
- ((GFX_MOLE_RIGHT - GFX_START_ROCKSHEROES) % HEROES_PER_LINE)*TILEX,
- ((GFX_MOLE_RIGHT - GFX_START_ROCKSHEROES) / HEROES_PER_LINE)*TILEY,
- GAMETOON_FRAMES_4,
- GAMETOON_FPS,
- GAMETOON_STEPSIZE,
- ANIM_NORMAL,
+ IMG_MOLE_RIGHT_MOVING,
+ -1, -1,
+ -1, -1,
+ -1,
+ -1,
+ -1,
+ -1,
ANIMDIR_RIGHT,
ANIMPOS_DOWN
},
{
- PIX_HEROES,
- GAMETOON_XSIZE, GAMETOON_YSIZE,
- ((GFX_SCHWEIN_LEFT - GFX_START_ROCKSHEROES) % HEROES_PER_LINE)*TILEX,
- ((GFX_SCHWEIN_LEFT - GFX_START_ROCKSHEROES) / HEROES_PER_LINE)*TILEY,
- GAMETOON_FRAMES_4,
- GAMETOON_FPS,
- GAMETOON_STEPSIZE,
- ANIM_NORMAL,
+ IMG_PIG_LEFT_MOVING,
+ -1, -1,
+ -1, -1,
+ -1,
+ -1,
+ -1,
+ -1,
ANIMDIR_LEFT,
ANIMPOS_DOWN
},
{
- PIX_HEROES,
- GAMETOON_XSIZE, GAMETOON_YSIZE,
- ((GFX_SCHWEIN_RIGHT - GFX_START_ROCKSHEROES) % HEROES_PER_LINE)*TILEX,
- ((GFX_SCHWEIN_RIGHT - GFX_START_ROCKSHEROES) / HEROES_PER_LINE)*TILEY,
- GAMETOON_FRAMES_4,
- GAMETOON_FPS,
- GAMETOON_STEPSIZE,
- ANIM_NORMAL,
+ IMG_PIG_RIGHT_MOVING,
+ -1, -1,
+ -1, -1,
+ -1,
+ -1,
+ -1,
+ -1,
ANIMDIR_RIGHT,
ANIMPOS_DOWN
},
{
- PIX_HEROES,
- GAMETOON_XSIZE, GAMETOON_YSIZE,
- ((GFX_DRACHE_LEFT - GFX_START_ROCKSHEROES) % HEROES_PER_LINE)*TILEX,
- ((GFX_DRACHE_LEFT - GFX_START_ROCKSHEROES) / HEROES_PER_LINE)*TILEY,
- GAMETOON_FRAMES_4,
- GAMETOON_FPS,
- GAMETOON_STEPSIZE,
- ANIM_NORMAL,
+ IMG_DRAGON_LEFT_MOVING,
+ -1, -1,
+ -1, -1,
+ -1,
+ -1,
+ -1,
+ -1,
ANIMDIR_LEFT,
ANIMPOS_DOWN
},
{
- PIX_HEROES,
- GAMETOON_XSIZE, GAMETOON_YSIZE,
- ((GFX_DRACHE_RIGHT - GFX_START_ROCKSHEROES) % HEROES_PER_LINE)*TILEX,
- ((GFX_DRACHE_RIGHT - GFX_START_ROCKSHEROES) / HEROES_PER_LINE)*TILEY,
- GAMETOON_FRAMES_4,
- GAMETOON_FPS,
- GAMETOON_STEPSIZE,
- ANIM_NORMAL,
+ IMG_DRAGON_RIGHT_MOVING,
+ -1, -1,
+ -1, -1,
+ -1,
+ -1,
+ -1,
+ -1,
ANIMDIR_RIGHT,
ANIMPOS_DOWN
},
{
- PIX_HEROES,
- GAMETOON_XSIZE, GAMETOON_YSIZE,
- ((GFX_SONDE - GFX_START_ROCKSHEROES) % HEROES_PER_LINE)*TILEX,
- ((GFX_SONDE - GFX_START_ROCKSHEROES) / HEROES_PER_LINE)*TILEY,
- GAMETOON_FRAMES_8,
- GAMETOON_FPS,
- GAMETOON_STEPSIZE,
- ANIM_NORMAL,
+ IMG_SATELLITE_MOVING,
+ -1, -1,
+ -1, -1,
+ -1,
+ -1,
+ -1,
+ -1,
ANIMDIR_LEFT,
ANIMPOS_ANY
},
{
- PIX_HEROES,
- GAMETOON_XSIZE, GAMETOON_YSIZE,
- ((GFX_SONDE - GFX_START_ROCKSHEROES) % HEROES_PER_LINE)*TILEX,
- ((GFX_SONDE - GFX_START_ROCKSHEROES) / HEROES_PER_LINE)*TILEY,
- GAMETOON_FRAMES_8,
- GAMETOON_FPS,
- GAMETOON_STEPSIZE,
- ANIM_NORMAL,
+ IMG_SATELLITE_MOVING,
+ -1, -1,
+ -1, -1,
+ -1,
+ -1,
+ -1,
+ -1,
ANIMDIR_RIGHT,
ANIMPOS_ANY
},
void InitToons()
{
- InitToonScreen(pix, pix[PIX_DB_DOOR],
+ int i;
+
+ for (i=0; i<NUM_TOONS; i++)
+ {
+ int graphic = toons[i].graphic;
+
+ toons[i].bitmap = new_graphic_info[graphic].bitmap;
+
+ if (toons[i].src_x == -1 && toons[i].src_y == -1)
+ {
+ int anim_frames = new_graphic_info[graphic].anim_frames;
+ int anim_delay = new_graphic_info[graphic].anim_delay;
+ int anim_mode = new_graphic_info[graphic].anim_mode;
+ int start_frame = new_graphic_info[graphic].anim_start_frame;
+
+ toons[i].src_x = new_graphic_info[graphic].src_x;
+ toons[i].src_y = new_graphic_info[graphic].src_y;
+
+ toons[i].width = TILEX;
+ toons[i].height = TILEY;
+
+ toons[i].anim_frames = anim_frames;
+ toons[i].anim_delay = anim_delay;
+ toons[i].anim_mode = anim_mode;
+ toons[i].start_frame = start_frame;
+
+ toons[i].move_delay = 1;
+ toons[i].stepsize = TILEX / 8;
+ }
+ else
+ {
+ toons[i].anim_delay = 1; /* no delay between frames */
+ toons[i].start_frame = 0; /* always start with first */
+ }
+ }
+
+ InitToonScreen(bitmap_db_door,
BackToFront, PrepareBackbuffer, ToonNeedsRedraw,
toons, NUM_TOONS,
- REAL_SX, REAL_SY, FULL_SXSIZE, FULL_SYSIZE);
+ REAL_SX, REAL_SY, FULL_SXSIZE, FULL_SYSIZE,
+ GAME_FRAME_DELAY);
}