heretic2-sdk/Toolkit/Programming/GameCode/game/m_imp_anim.c

379 lines
19 KiB
C
Raw Normal View History

1998-11-24 00:00:00 +00:00
#include "m_imp_anim.h"
#include "g_local.h"
#include "m_imp.h"
#include "random.h"
/*----------------------------------------------------
imp dying 1
----------------------------------------------------*/
animframe_t imp_frames_die1[] =
{
FRAME_death1, NULL, 0, 0, 0, NULL, 0, imp_fix_angles,
FRAME_death2, NULL, 0, 0, 0, NULL, 0, imp_fix_angles,
FRAME_death3, NULL, 0, 0, 0, NULL, 0, imp_fix_angles,
FRAME_death4, NULL, 0, 0, 0, NULL, 0, imp_fix_angles,
FRAME_death5, NULL, 0, 0, 0, NULL, 0, imp_fix_angles,
FRAME_death6, NULL, 0, 0, 0, NULL, 0, imp_fix_angles,
FRAME_death7, NULL, 0, 0, 0, NULL, 0, imp_fix_angles,
FRAME_death8, NULL, 0, 0, 0, NULL, 0, imp_fix_angles,
FRAME_death9, NULL, 0, 0, 0, NULL, 0, imp_fix_angles,
FRAME_death10, NULL, 0, 0, 0, NULL, 0, imp_fix_angles,
FRAME_death11, NULL, 0, 0, 0, NULL, 0, imp_fix_angles,
FRAME_death12, NULL, 0, 0, 0, NULL, 0, imp_fix_angles,
FRAME_death13, NULL, 0, 0, 0, NULL, 0, imp_fix_angles,
FRAME_death14, NULL, 0, 0, 0, NULL, 0, imp_fix_angles,
};
animmove_t imp_move_die1 = {14,imp_frames_die1, imp_dead};
/*----------------------------------------------------
imp flying 1
----------------------------------------------------*/
animframe_t imp_frames_fly1[] =
{
FRAME_impfly1, imp_ai_fly, 32, 0, 0, NULL, 15, imp_flap_noise,
FRAME_impfly2, imp_ai_fly, 32, 0, 0, NULL, 15, move_imp_fly,
FRAME_impfly3, imp_ai_fly, 32, 0, 0, NULL, 15, move_imp_fly,
FRAME_impfly4, imp_ai_fly, 36, 0, 0, NULL, 15, move_imp_fly,
FRAME_impfly5, imp_ai_fly, 36, 0, 0, NULL, 15, move_imp_fly,
FRAME_impfly6, imp_ai_fly, 64, 0, 0, NULL, 15, move_imp_fly,
FRAME_impfly7, imp_ai_fly, 64, 0, 0, NULL, 15, move_imp_fly,
FRAME_impfly8, imp_ai_fly, 57, 0, 0, NULL, 15, move_imp_fly,
FRAME_impfly9, imp_ai_fly, 54, 0, 0, NULL, 15, move_imp_fly,
FRAME_impfly9, imp_ai_fly, 54, 0, 0, NULL, 15, move_imp_fly,
FRAME_impfly11, imp_ai_fly, 42, 0, 0, NULL, 15, move_imp_fly,
FRAME_impfly11, imp_ai_fly, 42, 0, 0, NULL, 15, move_imp_fly,
FRAME_impfly13, imp_ai_fly, 36, 0, 0, NULL, 15, move_imp_fly,
FRAME_impfly14, imp_ai_fly, 32, 0, 0, NULL, 15, move_imp_fly,
FRAME_impfly14, imp_ai_fly, 32, 0, 0, NULL, 15, move_imp_fly,
FRAME_impfly16, imp_ai_fly, 26, 0, 0, NULL, 15, move_imp_fly,
FRAME_impfly16, imp_ai_fly, 26, 0, 0, NULL, 15, move_imp_fly,
FRAME_impfly18, imp_ai_fly, 24, 0, 0, NULL, 15, move_imp_fly,
FRAME_impfly18, imp_ai_fly, 24, 0, 0, NULL, 15, move_imp_fly,
FRAME_impfly20, imp_ai_fly, 26, 0, 0, NULL, 15, move_imp_fly
};
animmove_t imp_move_fly1 = {20, imp_frames_fly1, imp_pause};
/*------------------------------------------------------
imp flying backwards 1
------------------------------------------------------*/
animframe_t imp_frames_flyback[] =
{
FRAME_impfly1, imp_ai_fly, -16, 0, 8, NULL, 0, imp_flap_noise,
FRAME_impfly2, imp_ai_fly, -32, 0, 32, NULL, 0, move_imp_fly,
FRAME_impfly3, imp_ai_fly, -26, 0, 27, NULL, 0, move_imp_fly,
FRAME_impfly4, imp_ai_fly, -24, 0, 24, NULL, 0, move_imp_fly,
FRAME_impfly5, imp_ai_fly, -21, 0, 16, NULL, 0, move_imp_fly,
FRAME_impfly6, imp_ai_fly, -18, 0, 24, NULL, 0, move_imp_fly,
FRAME_impfly7, imp_ai_fly, -16, 0, 8, NULL, 0, imp_flap_noise,
FRAME_impfly8, imp_ai_fly, -32, 0, 32, NULL, 0, move_imp_fly,
FRAME_impfly9, imp_ai_fly, -26, 0, 27, NULL, 0, move_imp_fly,
FRAME_impfly10, imp_ai_fly, -24, 0, 24, NULL, 0, move_imp_fly,
FRAME_impfly11, imp_ai_fly, -21, 0, 16, NULL, 0, move_imp_fly,
FRAME_impfly12, imp_ai_fly, -18, 0, 24, NULL, 0, move_imp_fly,
FRAME_impfly13, imp_ai_fly, -16, 0, 8, NULL, 0, imp_flap_noise,
FRAME_impfly14, imp_ai_fly, -32, 0, 32, NULL, 0, move_imp_fly,
FRAME_impfly15, imp_ai_fly, -26, 0, 27, NULL, 0, move_imp_fly,
FRAME_impfly16, imp_ai_fly, -24, 0, 24, NULL, 0, move_imp_fly,
FRAME_impfly17, imp_ai_fly, -21, 0, 16, NULL, 0, move_imp_fly,
FRAME_impfly18, imp_ai_fly, -18, 0, 24, NULL, 0, move_imp_fly,
FRAME_impfly19, imp_ai_fly, -26, 0, 27, NULL, 0, move_imp_fly,
FRAME_impfly20, imp_ai_fly, -24, 0, 24, NULL, 0, move_imp_fly,
};
animmove_t imp_move_flyback = { 20, imp_frames_flyback, imp_pause};
/*------------------------------------------------------
imp hit from swoop
------------------------------------------------------*/
animframe_t imp_frames_dive_end[] =
{
FRAME_swpend1, imp_ai_fly, -32, 0, 16, NULL, 0, imp_flap_noise,
FRAME_swpend2, imp_ai_fly, -64, 0, 64, NULL, 0, move_imp_fly,
FRAME_swpend3, imp_ai_fly, -52, 0, 54, NULL, 0, move_imp_fly,
FRAME_swpend4, imp_ai_fly, -48, 0, 48, NULL, 0, move_imp_fly,
FRAME_swpend5, imp_ai_fly, -42, 0, 32, NULL, 0, move_imp_fly,
FRAME_swpend6, imp_ai_fly, -36, 0, 24, NULL, 0, move_imp_fly,
FRAME_swpend7, imp_ai_fly, -32, 0, 16, NULL, 0, imp_flap_noise,
FRAME_swpend8, imp_ai_fly, -64, 0, 64, NULL, 0, move_imp_fly,
FRAME_swpend9, imp_ai_fly, -52, 0, 54, NULL, 0, move_imp_fly,
FRAME_swpend10, imp_ai_fly, -48, 0, 48, NULL, 0, move_imp_fly,
FRAME_swpend11, imp_ai_fly, -42, 0, 32, NULL, 0, move_imp_fly,
FRAME_swpend12, imp_ai_fly, -36, 0, 24, NULL, 0, move_imp_fly,
FRAME_swpend13, imp_ai_fly, -32, 0, 16, NULL, 0, imp_flap_noise,
FRAME_swpend14, imp_ai_fly, -64, 0, 64, NULL, 0, move_imp_fly,
FRAME_swpend15, imp_ai_fly, -52, 0, 54, NULL, 0, move_imp_fly,
};
animmove_t imp_move_dive_end = { 15, imp_frames_dive_end, imp_flyback};
/*------------------------------------------------------
imp hit from swoop
------------------------------------------------------*/
animframe_t imp_frames_dive_out[] =
{
FRAME_swpout1, imp_ai_fly, -32, 0, 16, NULL, 0, imp_flap_noise,
FRAME_swpout2, imp_ai_fly, -64, 0, 64, NULL, 0, move_imp_fly,
FRAME_swpout3, imp_ai_fly, -52, 0, 54, NULL, 0, move_imp_fly,
FRAME_swpout4, imp_ai_fly, -48, 0, 48, NULL, 0, move_imp_fly,
FRAME_swpout5, imp_ai_fly, -42, 0, 32, NULL, 0, move_imp_fly,
FRAME_swpout6, imp_ai_fly, -36, 0, 24, NULL, 0, move_imp_fly,
FRAME_swpout7, imp_ai_fly, -32, 0, 16, NULL, 0, imp_flap_noise,
FRAME_swpout8, imp_ai_fly, -64, 0, 64, NULL, 0, move_imp_fly,
FRAME_swpout9, imp_ai_fly, -52, 0, 54, NULL, 0, move_imp_fly,
FRAME_swpout10, imp_ai_fly, -48, 0, 48, NULL, 0, move_imp_fly,
FRAME_swpout11, imp_ai_fly, -42, 0, 32, NULL, 0, move_imp_fly,
FRAME_swpout12, imp_ai_fly, -36, 0, 24, NULL, 0, move_imp_fly,
FRAME_swpout13, imp_ai_fly, -32, 0, 16, NULL, 0, imp_flap_noise,
FRAME_swpout14, imp_ai_fly, -64, 0, 64, NULL, 0, move_imp_fly,
FRAME_swpout15, imp_ai_fly, -52, 0, 54, NULL, 0, move_imp_fly,
};
animmove_t imp_move_dive_out = { 15, imp_frames_dive_out, imp_flyback};
/*-------------------------------------------------------
imp hovering
-------------------------------------------------------*/
animframe_t imp_frames_hover1[] =
{
FRAME_impfly1, NULL, 0, 0, 0, imp_ai_hover, 2, imp_flap_noise,
FRAME_impfly2, NULL, 0, 0, 0, imp_ai_hover, 2, imp_check_dodge,
FRAME_impfly3, NULL, 0, 0, 0, imp_ai_hover, 1, NULL,
FRAME_impfly4, NULL, 0, 0, 0, imp_ai_hover, 1, NULL,
FRAME_impfly5, NULL, 0, 0, 0, imp_ai_hover, -1, imp_check_dodge,
FRAME_impfly6, NULL, 0, 0, 0, imp_ai_hover, -1, NULL,
FRAME_impfly7, NULL, 0, 0, 0, imp_ai_hover, -1, NULL,
FRAME_impfly8, NULL, 0, 0, 0, imp_ai_hover, -2, imp_check_dodge,
FRAME_impfly9, NULL, 0, 0, 0, imp_ai_hover, -2, NULL,
FRAME_impfly10, NULL, 0, 0, 0, imp_ai_hover, -2, NULL,
FRAME_impfly11, NULL, 0, 0, 0, imp_ai_hover, -2, imp_check_dodge,
FRAME_impfly12, NULL, 0, 0, 0, imp_ai_hover, -1, NULL,
FRAME_impfly13, NULL, 0, 0, 0, imp_ai_hover, -1, NULL,
FRAME_impfly14, NULL, 0, 0, 0, imp_ai_hover, -1, imp_check_dodge,
FRAME_impfly15, NULL, 0, 0, 0, imp_ai_hover, 1, NULL,
FRAME_impfly16, NULL, 0, 0, 0, imp_ai_hover, 1, NULL,
FRAME_impfly17, NULL, 0, 0, 0, imp_ai_hover, 2, imp_check_dodge,
FRAME_impfly18, NULL, 0, 0, 0, imp_ai_hover, 2, NULL,
FRAME_impfly19, NULL, 0, 0, 0, imp_ai_hover, 2, NULL,
FRAME_impfly20, NULL, 0, 0, 0, imp_ai_hover, 2, imp_check_dodge,
};
animmove_t imp_move_hover1 = {20, imp_frames_hover1, move_imp_hover};
animframe_t imp_frames_tumble[] =
{
FRAME_impfly1, NULL, 0, 0, 0, imp_ai_hover, 2, move_imp_tumble,
FRAME_impfly2, NULL, 0, 0, 0, imp_ai_hover, 2, move_imp_tumble,
FRAME_impfly3, NULL, 0, 0, 0, imp_ai_hover, 1, move_imp_tumble,
FRAME_impfly4, NULL, 0, 0, 0, imp_ai_hover, 1, move_imp_tumble,
FRAME_impfly5, NULL, 0, 0, 0, imp_ai_hover, -1, move_imp_tumble,
FRAME_impfly6, NULL, 0, 0, 0, imp_ai_hover, -1, move_imp_tumble,
FRAME_impfly7, NULL, 0, 0, 0, imp_ai_hover, -1, move_imp_tumble,
FRAME_impfly8, NULL, 0, 0, 0, imp_ai_hover, -1, move_imp_tumble,
FRAME_impfly9, NULL, 0, 0, 0, imp_ai_hover, -2, move_imp_tumble,
FRAME_impfly10, NULL, 0, 0, 0, imp_ai_hover, -2, move_imp_tumble,
FRAME_impfly11, NULL, 0, 0, 0, imp_ai_hover, -2, move_imp_tumble,
FRAME_impfly12, NULL, 0, 0, 0, imp_ai_hover, -2, move_imp_tumble,
FRAME_impfly13, NULL, 0, 0, 0, imp_ai_hover, -1, move_imp_tumble,
FRAME_impfly14, NULL, 0, 0, 0, imp_ai_hover, -1, move_imp_tumble,
FRAME_impfly15, NULL, 0, 0, 0, imp_ai_hover, -1, move_imp_tumble,
FRAME_impfly16, NULL, 0, 0, 0, imp_ai_hover, -1, move_imp_tumble,
FRAME_impfly17, NULL, 0, 0, 0, imp_ai_hover, 1, move_imp_tumble,
FRAME_impfly18, NULL, 0, 0, 0, imp_ai_hover, 1, move_imp_tumble,
FRAME_impfly19, NULL, 0, 0, 0, imp_ai_hover, 2, move_imp_tumble,
FRAME_impfly20, NULL, 0, 0, 0, imp_ai_hover, 2, move_imp_tumble,
};
animmove_t imp_move_tumble = {20, imp_frames_tumble, NULL};
/*-------------------------------------------------------
imp firing fireball
-------------------------------------------------------*/
animframe_t imp_frames_fireball[] =
{
FRAME_impfir1, NULL, 0, 0, 0, imp_ai_hover, 2, imp_flap_noise,
FRAME_impfir2, NULL, 0, 0, 0, imp_ai_hover, 1, NULL,
FRAME_impfir3, NULL, 0, 0, 0, imp_ai_hover, -1, NULL,
FRAME_impfir4, NULL, 0, 0, 0, imp_ai_hover, -2, imp_check_dodge,
FRAME_impfir5, NULL, 0, 0, 0, imp_ai_hover, -2, NULL,
FRAME_impfir6, NULL, 0, 0, 0, imp_ai_hover, -1, NULL,
FRAME_impfir7, NULL, 0, 0, 0, imp_ai_hover, 1, imp_check_dodge,
FRAME_impfir8, NULL, 0, 0, 0, imp_ai_hover, 2, NULL,
FRAME_impfir9, NULL, 0, 0, 0, imp_ai_hover, 2, NULL,
FRAME_impfir10, NULL, 0, 0, 0, imp_ai_hover, 1, NULL,
FRAME_impfir11, NULL, 0, 0, 0, imp_ai_hover, -1, imp_check_dodge,
FRAME_impfir12, NULL, 0, 0, 0, imp_ai_hover, -2, NULL,
FRAME_impfir13, NULL, 0, 0, 0, imp_ai_hover, -2, NULL,
FRAME_impfir14, NULL, 0, 0, 0, imp_ai_hover, -1, NULL,
FRAME_impfir15, NULL, 0, 0, 0, imp_ai_hover, 1, NULL,
FRAME_impfir16, NULL, 0, 0, 0, imp_ai_hover, 2, imp_fireball,
FRAME_impfir15, NULL, 0, 0, 0, imp_ai_hover, -2, NULL,
FRAME_impfir16, NULL, 0, 0, 0, imp_ai_hover, -1, NULL,
FRAME_impfir17, NULL, 0, 0, 0, imp_ai_hover, 1, NULL,
FRAME_impfir18, NULL, 0, 0, 0, imp_ai_hover, 2, NULL,
FRAME_impfir19, NULL, 0, 0, 0, imp_ai_hover, 2, imp_check_dodge,
FRAME_impfir20, NULL, 0, 0, 0, imp_ai_hover, 1, NULL,
FRAME_impfir21, NULL, 0, 0, 0, imp_ai_hover, -1, NULL
};
animmove_t imp_move_fireball = {21, imp_frames_fireball, move_imp_hover};
/*-------------------------------------------------------
imp diving and attacking
-------------------------------------------------------*/
animframe_t imp_frames_dive_go[] =
{
FRAME_swoop1, NULL, 0, 0, 0, NULL, 0, imp_dive_noise,
FRAME_swoop2, NULL, 0, 0, 0, NULL, 0, NULL,
FRAME_swoop3, NULL, 0, 0, 0, NULL, 0, NULL,
FRAME_swoop4, NULL, 0, 0, 0, NULL, 0, NULL,
FRAME_swoop5, NULL, 0, 0, 0, NULL, 0, move_imp_dive,
FRAME_swoop6, NULL, 0, 0, 0, NULL, 0, move_imp_dive,
FRAME_swoop7, NULL, 0, 0, 0, NULL, 0, move_imp_dive,
FRAME_swoop8, NULL, 0, 0, 0, NULL, 0, move_imp_dive,
FRAME_swoop9, NULL, 0, 0, 0, NULL, 0, move_imp_dive,
FRAME_swoop10, NULL, 0, 0, 0, NULL, 0, move_imp_dive,
FRAME_swoop11, NULL, 0, 0, 0, NULL, 0, move_imp_dive,
FRAME_swoop12, NULL, 0, 0, 0, NULL, 0, move_imp_dive,
FRAME_swoop13, NULL, 0, 0, 0, NULL, 0, move_imp_dive,
FRAME_swoop14, NULL, 0, 0, 0, NULL, 0, move_imp_dive,
FRAME_swoop15, NULL, 0, 0, 0, NULL, 0, move_imp_dive,
FRAME_swoop16, NULL, 0, 0, 0, imp_hit, 0, move_imp_dive,
FRAME_swoop17, NULL, 0, 0, 0, imp_hit, 0, move_imp_dive,
FRAME_swoop18, NULL, 0, 0, 0, imp_hit, 0, move_imp_dive,
FRAME_swoop19, NULL, 0, 0, 0, imp_hit, 0, move_imp_dive,
FRAME_swoop20, NULL, 0, 0, 0, imp_hit, 0, move_imp_dive,
};
animmove_t imp_move_dive_go = {6, imp_frames_dive_go, imp_dive_loop};
animframe_t imp_frames_dive_loop[] =
{
FRAME_swpcyc1, NULL, 0, 0, 0, imp_hit, 0, move_imp_dive,
FRAME_swpcyc2, NULL, 0, 0, 0, imp_hit, 0, move_imp_dive,
FRAME_swpcyc3, NULL, 0, 0, 0, imp_hit, 0, move_imp_dive,
FRAME_swpcyc4, NULL, 0, 0, 0, imp_hit, 0, move_imp_dive,
FRAME_swpcyc1, NULL, 0, 0, 0, imp_hit, 0, move_imp_dive,
FRAME_swpcyc2, NULL, 0, 0, 0, imp_hit, 0, move_imp_dive,
FRAME_swpcyc3, NULL, 0, 0, 0, imp_hit, 0, move_imp_dive,
FRAME_swpcyc4, NULL, 0, 0, 0, imp_hit, 0, move_imp_dive,
FRAME_swpcyc1, NULL, 0, 0, 0, imp_hit, 0, move_imp_dive,
FRAME_swpcyc2, NULL, 0, 0, 0, imp_hit, 0, move_imp_dive,
FRAME_swpcyc3, NULL, 0, 0, 0, imp_hit, 0, move_imp_dive,
FRAME_swpcyc4, NULL, 0, 0, 0, imp_hit, 0, move_imp_dive,
FRAME_swpcyc1, NULL, 0, 0, 0, imp_hit, 0, move_imp_dive,
FRAME_swpcyc2, NULL, 0, 0, 0, imp_hit, 0, move_imp_dive,
FRAME_swpcyc3, NULL, 0, 0, 0, imp_hit, 0, move_imp_dive,
FRAME_swpcyc4, NULL, 0, 0, 0, imp_hit, 0, move_imp_dive,
FRAME_swpcyc1, NULL, 0, 0, 0, imp_hit, 0, move_imp_dive,
FRAME_swpcyc2, NULL, 0, 0, 0, imp_hit, 0, move_imp_dive,
FRAME_swpcyc3, NULL, 0, 0, 0, imp_hit, 0, move_imp_dive,
FRAME_swpcyc4, NULL, 0, 0, 0, imp_hit, 0, move_imp_dive,
FRAME_swpcyc1, NULL, 0, 0, 0, imp_hit, 0, move_imp_dive,
FRAME_swpcyc2, NULL, 0, 0, 0, imp_hit, 0, move_imp_dive,
FRAME_swpcyc3, NULL, 0, 0, 0, imp_hit, 0, move_imp_dive,
FRAME_swpcyc4, NULL, 0, 0, 0, imp_hit, true, move_imp_dive,
};
animmove_t imp_move_dive_loop = {24, imp_frames_dive_loop, NULL};
/*-------------------------------------------------------
imp pain
-------------------------------------------------------*/
animframe_t imp_frames_pain1 [] =
{
FRAME_death1, NULL, 0, 0, 0, NULL, 2, move_imp_hover,
FRAME_death2, NULL, 0, 0, 0, NULL, 1, move_imp_hover,
FRAME_death3, NULL, 0, 0, 0, NULL, -1, move_imp_hover,
FRAME_death2, NULL, 0, 0, 0, NULL, -2, move_imp_hover,
FRAME_death1, NULL, 0, 0, 0, NULL, -2, move_imp_hover,
};
animmove_t imp_move_pain1 = { 5, imp_frames_pain1, imp_pause};
//perch
animframe_t imp_frames_perch[] =
{
FRAME_impwat1 , NULL, 0, 0, 0, NULL, 0, imp_ai_pirch,
FRAME_impwat2 , NULL, 0, 0, 0, NULL, 0, imp_ai_pirch,
FRAME_impwat3 , NULL, 0, 0, 0, NULL, 0, imp_ai_pirch,
FRAME_impwat4 , NULL, 0, 0, 0, NULL, 0, imp_ai_pirch,
FRAME_impwat5 , NULL, 0, 0, 0, NULL, 0, imp_ai_pirch,
FRAME_impwat6 , NULL, 0, 0, 0, NULL, 0, imp_ai_pirch,
FRAME_impwat7 , NULL, 0, 0, 0, NULL, 0, imp_ai_pirch,
FRAME_impwat8 , NULL, 0, 0, 0, NULL, 0, imp_ai_pirch,
FRAME_impwat9 , NULL, 0, 0, 0, NULL, 0, imp_ai_pirch,
FRAME_impwat10 , NULL, 0, 0, 0, NULL, 0, imp_ai_pirch,
FRAME_impwat11 , NULL, 0, 0, 0, NULL, 0, imp_ai_pirch,
FRAME_impwat12 , NULL, 0, 0, 0, NULL, 0, imp_ai_pirch,
FRAME_impwat13 , NULL, 0, 0, 0, NULL, 0, imp_ai_pirch,
FRAME_impwat14 , NULL, 0, 0, 0, NULL, 0, imp_ai_pirch,
FRAME_impwat15 , NULL, 0, 0, 0, NULL, 0, imp_ai_pirch,
FRAME_impwat16 , NULL, 0, 0, 0, NULL, 0, imp_ai_pirch,
FRAME_impwat17 , NULL, 0, 0, 0, NULL, 0, imp_ai_pirch,
FRAME_impwat18 , NULL, 0, 0, 0, NULL, 0, imp_ai_pirch,
FRAME_impwat19 , NULL, 0, 0, 0, NULL, 0, imp_ai_pirch,
FRAME_impwat20 , NULL, 0, 0, 0, NULL, 0, imp_ai_pirch,
FRAME_impwat21 , NULL, 0, 0, 0, NULL, 0, imp_ai_pirch,
FRAME_impwat22 , NULL, 0, 0, 0, NULL, 0, imp_ai_pirch,
FRAME_impwat23 , NULL, 0, 0, 0, NULL, 0, imp_ai_pirch,
FRAME_impwat24 , NULL, 0, 0, 0, NULL, 0, imp_ai_pirch,
};
animmove_t imp_move_perch = { 24, imp_frames_perch, NULL};
animframe_t imp_frames_takeoff [] =
{
FRAME_impup1, NULL, 0, 0, 0, NULL, 0, NULL,
FRAME_impup2, NULL, 0, 0, 0, NULL, 0, NULL,
FRAME_impup3, NULL, 0, 0, 0, NULL, 0, NULL,
FRAME_impup4, NULL, 0, 0, 0, NULL, 0, NULL,
FRAME_impup5, NULL, 0, 0, 0, NULL, 0, NULL,
FRAME_impup6, NULL, 0, 0, 0, NULL, 0, NULL,
FRAME_impup7, imp_ai_fly, 16, 0, 16, NULL, 0, imp_flap_noise,
FRAME_impup8, imp_ai_fly, 18, 0, 16, NULL, 0, NULL,
FRAME_impup9, imp_ai_fly, 24, 0, 32, NULL, 0, NULL,
FRAME_impup10, imp_ai_fly, 36, 0, 64, NULL, 0, NULL,
FRAME_impup11, imp_ai_fly, 24, 0, 32, NULL, 0, NULL,
FRAME_impup12, imp_ai_fly, 18, 0, 16, NULL, 0, NULL,
FRAME_impup13, imp_ai_fly, 16, 0, 32, NULL, 0, NULL,
FRAME_impup14, imp_ai_fly, 12, 0, 64, NULL, 0, NULL,
FRAME_impup15, imp_ai_fly, 8, 0, 32, NULL, 0, NULL,
FRAME_impup16, imp_ai_fly, 6, 0, 32, NULL, 0, NULL,
FRAME_impup17, imp_ai_fly, 4, 0, 16, NULL, 0, imp_flap_noise,
FRAME_impup18, imp_ai_fly, 2, 0, 16, NULL, 0, NULL,
FRAME_impup19, imp_ai_fly, -2, 0, 32, NULL, 0, NULL,
FRAME_impup20, imp_ai_fly, -4, 0, 64, NULL, 0, NULL,
FRAME_impup21, imp_ai_fly, -6, 0, 32, NULL, 0, NULL,
FRAME_impup22, imp_ai_fly, -8, 0, 16, NULL, 0, NULL,
FRAME_impup23, imp_ai_fly, -16, 0, 32, NULL, 0, NULL,
};
animmove_t imp_move_takeoff = { 23, imp_frames_takeoff, imp_pause};
animframe_t imp_frames_dup[] =
{
FRAME_swpend6, imp_ai_fly, -36, 0, 24, NULL, 0, move_imp_fly,
FRAME_swpend7, imp_ai_fly, -32, 0, 16, NULL, 0, imp_flap_noise,
FRAME_swpend8, imp_ai_fly, -64, 0, 64, NULL, 0, move_imp_fly,
FRAME_swpend9, imp_ai_fly, -52, 0, 54, NULL, 0, move_imp_fly,
FRAME_swpend10, imp_ai_fly, -48, 0, 48, NULL, 0, move_imp_fly,
FRAME_swpend11, imp_ai_fly, -42, 0, 32, NULL, 0, move_imp_fly,
FRAME_swpend12, imp_ai_fly, -36, 0, 24, NULL, 0, move_imp_fly,
FRAME_swpend13, imp_ai_fly, -32, 0, 16, NULL, 0, imp_flap_noise,
FRAME_swpend14, imp_ai_fly, -64, 0, 64, NULL, 0, move_imp_fly,
FRAME_swpend15, imp_ai_fly, -52, 0, 54, NULL, 0, move_imp_fly,
};
animmove_t imp_move_dup = { 10, imp_frames_dup, imp_pause};
animframe_t imp_frames_ddown[] =
{
FRAME_swoop1, NULL, 0, 0, 0, NULL, 0, imp_dive_noise,
FRAME_swoop2, NULL, 0, 0, 0, NULL, 0, NULL,
FRAME_swoop4, NULL, 0, 0, 0, NULL, 0, NULL,
FRAME_swoop5, NULL, 0, 0, 0, NULL, 0, NULL,
FRAME_swoop7, NULL, 0, 0, 0, NULL, 0, NULL,
FRAME_swoop10, NULL, 0, 0, 0, NULL, 0, NULL,
FRAME_swoop14, NULL, 0, 0, 0, NULL, 0, NULL,
FRAME_swoop17, NULL, 0, 0, 0, NULL, 0, NULL,
FRAME_swoop20, NULL, 0, 0, 0, NULL, 0, NULL,
FRAME_swpout1, NULL, 0, 0, 0, NULL, 0, NULL,
FRAME_swpout4, NULL, 0, 0, 0, NULL, 0, NULL,
FRAME_swpout6, NULL, 0, 0, 0, NULL, 0, NULL,
FRAME_swpout9, NULL, 0, 0, 0, NULL, 0, NULL,
FRAME_swpout12, NULL, 0, 0, 0, NULL, 0, NULL,
FRAME_swpout15, NULL, 0, 0, 0, NULL, 0, NULL,
};
animmove_t imp_move_ddown = {15, imp_frames_ddown , imp_pause};