#include "libforest/gbi_extensions.h"
#include "PR/gbi.h"
#include "evw_anime.h"
#include "c_keyframe.h"
#include "ac_npc.h"
#include "ef_effect_control.h"

u8 cKF_ckcb_r_npc_1_taisou4_b_tbl[] = { 56, 7, 0, 7, 7, 7, 0, 7, 7, 7, 0, 7, 7, 7, 0, 7, 7, 0, 7, 2, 7, 7, 0, 7, 0, 0 };

s16 cKF_kn_npc_1_taisou4_b_tbl[] = {
    8, 8, 5, 2, 8, 8, 8, 8, 8, 2, 8, 2, 2, 8, 7, 11, 11, 10, 2, 11, 2, 2, 11, 8, 2, 8,
    7, 2, 8, 7, 7, 7, 7, 6, 6, 9, 2, 7, 2, 7, 7, 9,  7,  2,  2, 2,  7, 8, 7,  2, 2, 2
};

s16 cKF_c_npc_1_taisou4_b_tbl[] = { 0, 0, 900, 0, 0, 1800, 0,    0, 1800, 0, 900, 0, 0, 0,   -900,
                                    0, 0, 900, 0, 0, 0,    -900, 0, 0,    0, 0,   0, 0, -900 };

s16 cKF_ds_npc_1_taisou4_b_tbl[] = {
    1,  250,   501,   11, 500,   0,     21, 350,  0,     31, 500,  0,     41, 250,  -493,  51, 200,   0,
    71, 200,   0,     81, 150,   -499,  1,  900,  -187,  11, 850,  0,     21, 900,  0,     31, 850,   0,
    51, 950,   0,     61, 1000,  0,     71, 950,  0,     81, 900,  -231,  1,  0,    0,     51, 0,     0,
    61, 100,   0,     71, 0,     0,     81, 0,    0,     1,  0,    0,     81, 0,    0,     1,  -40,   -45,
    11, -50,   0,     21, -40,   0,     31, -50,  0,     51, -30,  0,     61, -40,  0,     71, -30,   0,
    81, -40,   -45,   1,  10,    0,     11, -100, 0,     21, -50,  0,     31, -100, 0,     41, 10,    0,
    51, 0,     0,     71, 0,     0,     81, -10,  0,     1,  -348, -857,  11, -540, 0,     21, -525,  0,
    31, -540,  0,     51, -155,  0,     61, -173, 0,     71, -155, 0,     81, -123, 0,     1,  -240,  -178,
    11, -280,  0,     21, -140,  0,     31, -280, 0,     51, -200, 0,     61, 15,   0,     71, -200,  0,
    81, -275,  0,     1,  376,   865,   11, 570,  0,     21, 453,  0,     31, 570,  0,     51, 183,   0,
    61, 135,   0,     71, 183,   0,     81, 243,  245,   1,  0,    0,     81, 0,    0,     1,  535,   827,
    11, 720,   0,     21, 325,   0,     31, 720,  0,     51, 350,  0,     61, 0,    0,     71, 350,   0,
    81, 490,   0,     1,  0,     0,     81, 0,    0,     1,  0,    0,     81, 0,    0,     1,  -183,  -192,
    11, -225,  0,     21, 48,    0,     31, -225, 0,     51, -140, 0,     61, -5,   0,     71, -140,  0,
    81, -210,  0,     1,  -140,  -23,   11, -145, 0,     21, -173, 0,     31, -145, 0,     51, -135,  0,
    71, -135,  0,     81, -203,  -428,  1,  123,  0,     6,  145,  341,   11, 225,  0,     21, 160,   0,
    31, 225,   0,     36, 145,   -340,  41, 123,  0,     51, 155,  0,     61, 173,  0,     71, 155,   0,
    81, 348,   866,   1,  -275,  0,     6,  -185, 1361,  11, -60,  0,     21, -153, 0,     31, -60,   0,
    36, -185,  -1331, 41, -275,  0,     51, -200, 0,     61, 15,   0,     71, -200, 0,     81, -240,  -181,
    1,  -250,  -248,  6,  -275,  0,     11, -275, 0,     21, -225, 0,     31, -275, 0,     36, -275,  0,
    51, -183,  0,     61, -135,  0,     71, -183, 0,     81, -376, -871,  1,  0,    0,     81, 0,     0,
    1,  490,   0,     6,  288,   -3038, 11, 0,    0,     21, 230,  0,     31, 0,    0,     36, 288,   3028,
    41, 490,   0,     51, 350,   0,     61, 0,    0,     71, 350,  0,     81, 535,  827,   1,  0,     0,
    81, 0,     0,     1,  0,     0,     81, 0,    0,     1,  -210, 0,     6,  -70,  2105,  11, 185,   0,
    21, -45,   0,     31, 185,   0,     36, -70,  -2093, 41, -210, 0,     51, -140, 0,     61, -5,    0,
    71, -140,  0,     81, -183,  -186,  1,  203,  418,   6,  285,  603,   11, 345,  0,     21, 235,   0,
    31, 345,   0,     36, 285,   -599,  51, 135,  0,     81, 135,  0,     1,  0,    0,     81, 0,     0,
    1,  30,    -432,  13, -100,  0,     23, 50,   0,     33, -100, 0,     53, 100,  0,     63, -50,   0,
    73, 100,   0,     81, 30,    -432,  1,  73,   64,    3,  75,   0,     13, -50,  0,     23, 50,    0,
    33, -75,   0,     56, 25,    0,     81, -74,  -37,   1,  0,    0,     81, 0,    0,     1,  104,   -506,
    16, -150,  0,     26, 60,    0,     36, -150, 0,     56, 150,  0,     66, -100, 0,     76, 150,   0,
    81, 104,   -506,  1,  125,   295,   6,  150,  0,     16, -100, 0,     26, 100,  0,     36, -150,  0,
    61, 100,   0,     81, -124,  -290,  1,  95,   403,   12, 200,  0,     22, 100,  0,     32, 200,   0,
    52, 0,     0,     71, 0,     0,     81, -93,  -432,  1,  87,   190,   22, 200,  0,     43, 130,   -299,
    52, 50,    0,     61, 130,   0,     71, 50,   0,     81, 87,   190,   1,  -85,  -375,  12, -180,  0,
    22, -80,   0,     32, -180,  0,     52, 0,    0,     71, 0,    0,     81, 93,   428,   1,  300,   1329,
    11, 600,   0,     31, 600,   0,     51, 0,    0,     71, 0,    0,     81, -263, -1179, 1,  125,   558,
    11, 250,   0,     31, 250,   0,     51, 0,    0,     71, 0,    0,     81, -150, -674,  1,  -250,  756,
    11, -150,  0,     31, -150,  0,     41, -100, 0,     51, -700, 0,     57, -400, 897,   65, -400,  -898,
    71, -700,  0,     81, -163,  2410,  1,  0,    0,     81, 0,    0,     1,  -600, -2703, 11, -1200, 0,
    21, -1100, 0,     31, -1200, 0,     51, 0,    0,     71, 0,    0,     81, -150, -675,  1,  0,     0,
    81, 0,     0,     1,  263,   1182,  11, 525,  0,     21, 450,  0,     31, 525,  0,     51, 0,     0,
    71, 0,     0,     81, -300,  -1354, 1,  -150, -670,  11, -300, 0,     21, -175, 0,     31, -300,  0,
    51, 0,     0,     71, 0,     0,     81, 125,  562,   1,  162,  -2434, 11, -375, 0,     21, -50,   0,
    31, -375,  0,     51, 700,   0,     57, 400,  -894,  65, 400,  907,   71, 700,  0,     81, 250,   -738,
    1,  -150,  -676,  11, -300,  0,     21, -200, 0,     31, -300, 0,     51, 0,    0,     71, 0,     0,
    81, -600,  -2699, 1,  0,     0,     81, 0,    0,     1,  0,    0,     81, 0,    0,     1,  0,     0,
    81, 0,     0,     1,  -23,   -98,   12, -50,  0,     22, 0,    0,     32, -50,  0,     52, 0,     0,
    71, 0,     0,     81, 23,    104,   1,  -80,  0,     12, -150, -200,  32, -150, 202,   43, -80,   0,
    52, -160,  0,     61, -80,   0,     71, -160, 0,     81, -80,  0,     1,  -70,  -308,  12, -150,  0,
    22, 0,     0,     32, -150,  0,     52, 0,    0,     71, 0,    0,     81, 70,   321,   1,  0,     0,
    81, 0,     0,     1,  0,     0,     81, 0,    0,     1,  0,    0,     81, 0,    0
};

aNPC_Animation_c cKF_ba_r_npc_1_taisou4_b = {
    { cKF_ckcb_r_npc_1_taisou4_b_tbl, cKF_ds_npc_1_taisou4_b_tbl, cKF_kn_npc_1_taisou4_b_tbl, cKF_c_npc_1_taisou4_b_tbl,
      -1, 81 },
    1.0f,
    81.0f,
    cKF_FRAMECONTROL_STOP,
    0.0f,
    NULL,
    aNPC_EYE_TEX0,
    0,
    NULL,
    aNPC_MOUTH_TEX0,
    0,
    -1,
    -1,
    NULL,
    NULL,
};
