#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_dance1_tbl[] = { 56, 7, 0, 7, 7, 7, 0, 7, 7, 7, 0, 7, 7, 7, 0, 7, 7, 0, 7, 7, 7, 7, 0, 7, 0, 0 };

s16 cKF_kn_npc_1_dance1_tbl[] = { 9, 17, 5, 13, 13, 13, 11, 13, 13, 2, 13, 2, 2, 13, 9,  12, 13, 13,
                                  2, 13, 2, 2,  13, 9,  2,  18, 6,  2, 16, 9, 6, 13, 13, 9,  9,  9,
                                  2, 16, 2, 9,  9,  9,  2,  16, 2,  2, 2,  2, 6, 14, 14, 2,  2,  2 };

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

s16 cKF_ds_npc_1_dance1_tbl[] = {
    1,  -200, 0,    13, -200, 0,    25, 200,  0,    37, 200,  0,    49, -100, 0,    61, -100, 0,     73, 100,  0,
    85, 100,  0,    97, -200, 0,    1,  1000, 0,    7,  1300, 0,    13, 1000, 0,    19, 1300, 0,     25, 1000, 0,
    31, 1300, 0,    37, 1000, 0,    43, 1300, 0,    49, 1000, 0,    55, 1300, 0,    61, 1000, 0,     67, 1300, 0,
    73, 1000, 0,    79, 1300, 0,    85, 1000, 0,    91, 1300, 0,    97, 1000, 0,    1,  0,    0,     37, 0,    0,
    49, -200, 0,    85, -200, 0,    97, 0,    0,    1,  -25,  0,    7,  0,    0,    13, -25,  0,     25, 0,    0,
    31, -25,  0,    37, 0,    0,    49, -200, 0,    55, -175, 0,    61, -200, 0,    73, 150,  0,     79, 125,  0,
    85, 150,  0,    97, -25,  0,    1,  -400, 0,    7,  -350, 0,    13, -400, 0,    25, -105, 0,     31, -50,  0,
    37, -105, 0,    49, 300,  0,    55, 250,  0,    61, 300,  0,    73, 150,  0,    79, 100,  0,     85, 150,  0,
    97, -400, 0,    1,  175,  0,    7,  150,  0,    13, 175,  0,    25, -150, 0,    31, -125, 0,     37, -150, 0,
    49, -225, 0,    55, -200, 0,    61, -225, 0,    73, 100,  0,    79, 75,   0,    85, 100,  0,     97, 175,  0,
    1,  -200, 0,    7,  -250, 0,    13, -200, 0,    25, -250, 0,    37, -250, 0,    49, -350, 0,     55, -275, 0,
    61, -350, 0,    73, -175, 0,    85, -175, 0,    97, -200, 0,    1,  400,  0,    7,  300,  0,     13, 400,  0,
    25, -200, 0,    31, -50,  0,    37, -200, 0,    49, -450, 0,    55, -375, 0,    61, -450, 0,     73, 25,   0,
    79, 100,  0,    85, 25,   0,    97, 400,  0,    1,  200,  0,    7,  100,  0,    13, 200,  0,     25, 90,   0,
    31, 25,   0,    37, 90,   0,    49, 750,  0,    55, 700,  0,    61, 750,  0,    73, -150, 0,     79, -200, 0,
    85, -150, 0,    97, 200,  0,    1,  0,    0,    97, 0,    0,    1,  250,  0,    7,  450,  0,     13, 250,  0,
    25, 400,  0,    31, 150,  0,    37, 400,  0,    49, 500,  0,    55, 550,  0,    61, 500,  0,     73, 550,  0,
    79, 250,  0,    85, 550,  0,    97, 250,  0,    1,  0,    0,    97, 0,    0,    1,  0,    0,     97, 0,    0,
    1,  100,  0,    7,  200,  0,    13, 100,  0,    25, -320, 0,    31, -60,  0,    37, -320, 0,     49, -205, 0,
    55, -125, 0,    61, -205, 0,    73, -250, 0,    79, -10,  0,    85, -250, 0,    97, 100,  0,     1,  0,    0,
    13, 0,    0,    25, 120,  0,    37, 120,  0,    49, -10,  0,    61, -10,  0,    73, 175,  0,     85, 175,  0,
    97, 0,    0,    1,  300,  0,    7,  200,  0,    13, 300,  0,    25, -250, 0,    37, -250, 0,     49, 220,  0,
    55, 175,  0,    61, 220,  0,    73, 675,  0,    79, 625,  0,    85, 675,  0,    97, 300,  0,     1,  -550, 0,
    7,  -400, 0,    13, -550, 0,    25, 450,  0,    31, 300,  0,    37, 450,  0,    49, 85,   0,     55, 225,  0,
    61, 85,   0,    73, -400, 0,    79, -350, 0,    85, -400, 0,    97, -550, 0,    1,  -180, 0,     7,  -100, 0,
    13, -180, 0,    25, -500, 0,    31, -300, 0,    37, -500, 0,    49, 130,  0,    55, 200,  0,     61, 130,  0,
    73, -750, 0,    79, -700, 0,    85, -750, 0,    97, -180, 0,    1,  0,    0,    97, 0,    0,     1,  500,  0,
    7,  260,  0,    13, 500,  0,    25, 200,  0,    31, 300,  0,    37, 200,  0,    49, 675,  0,     55, 250,  0,
    61, 675,  0,    73, 450,  0,    79, 575,  0,    85, 450,  0,    97, 500,  0,    1,  0,    0,     97, 0,    0,
    1,  0,    0,    97, 0,    0,    1,  -330, 0,    7,  -100, 0,    13, -330, 0,    25, 150,  0,     31, 80,   0,
    37, 150,  0,    49, -210, 0,    55, 50,   0,    61, -210, 0,    73, -100, 0,    79, -50,  0,     85, -100, 0,
    97, -330, 0,    1,  -130, 0,    13, -130, 0,    25, 10,   0,    37, 10,   0,    49, -120, 0,     61, -120, 0,
    73, 80,   0,    85, 80,   0,    97, -130, 0,    1,  0,    0,    97, 0,    0,    1,  55,   -255,  2,  25,   0,
    8,  125,  0,    14, 25,   0,    20, 0,    0,    26, 100,  0,    32, 0,    0,    38, 100,  0,     44, 50,   -621,
    50, -100, 0,    56, 0,    0,    62, -100, 0,    68, -38,  727,  74, 150,  0,    80, 50,   0,     86, 150,  0,
    92, 125,  -344, 97, 55,   -255, 1,  -195, -521, 8,  -300, 0,    32, 300,  0,    56, -50,  0,     80, 50,   0,
    97, -195, -521, 1,  0,    0,    97, 0,    0,    1,  -110, -786, 4,  -150, 0,    10, 150,  0,     16, -150, 0,
    28, 150,  0,    34, -150, 0,    40, 150,  0,    46, -50,  0,    52, 100,  0,    58, -150, 0,     64, 100,  0,
    70, -50,  0,    76, 100,  0,    82, -150, 0,    88, 100,  0,    97, -110, -786, 1,  -160, -599,  16, -300, 0,
    28, 200,  657,  40, 300,  0,    52, 0,    -354, 64, -50,  0,    76, 0,    189,  88, 50,   0,     97, -160, -599,
    1,  -170, -453, 7,  -225, 0,    31, 350,  0,    55, -125, 0,    79, 125,  0,    97, -170, -453,  1,  200,  0,
    7,  100,  0,    13, 200,  0,    25, -150, 0,    31, -250, 0,    37, -150, 0,    49, -250, 0,     55, -150, 0,
    61, -250, 0,    73, -300, 0,    79, -200, 0,    85, -300, 0,    97, 200,  0,    1,  -250, 0,     7,  -200, 0,
    13, -250, 0,    25, -75,  0,    31, -25,  0,    37, -75,  0,    49, 150,  0,    55, 100,  0,     61, 150,  0,
    73, -150, 0,    79, -100, 0,    85, -150, 0,    97, -250, 0,    1,  -500, 0,    13, -400, 0,     25, -725, 0,
    37, -625, 0,    49, -125, 0,    61, -220, 0,    73, -150, 0,    85, -250, 0,    97, -500, 0,     1,  -600, 0,
    13, -500, 0,    25, -375, 0,    37, -475, 0,    49, 350,  0,    61, 250,  0,    73, -475, 0,     85, -375, 0,
    97, -600, 0,    1,  200,  0,    13, 100,  0,    25, 275,  0,    37, 175,  0,    49, -275, 0,     61, -175, 0,
    73, -75,  0,    85, -175, 0,    97, 200,  0,    1,  0,    0,    97, 0,    0,    1,  -618, -1964, 2,  -650, 0,
    8,  -450, 0,    14, -650, 0,    26, 50,   0,    32, -200, 0,    38, 50,   0,    44, -400, 0,     50, -100, 0,
    56, -400, 0,    62, -100, 0,    74, -900, 0,    80, -700, 0,    86, -900, 0,    92, -200, 0,     97, -618, -1964,
    1,  0,    0,    97, 0,    0,    1,  675,  0,    13, 575,  0,    25, 775,  0,    37, 675,  0,     49, 175,  0,
    61, 275,  0,    73, 150,  0,    85, 250,  0,    97, 675,  0,    1,  -250, 0,    13, -150, 0,     25, -650, 0,
    37, -550, 0,    49, -800, 0,    61, -700, 0,    73, 350,  0,    85, 250,  0,    97, -250, 0,     1,  -200, 0,
    13, -100, 0,    25, -550, 0,    37, -450, 0,    49, -150, 0,    61, -250, 0,    73, 225,  0,     85, 130,  0,
    97, -200, 0,    1,  0,    0,    97, 0,    0,    1,  -25,  1756, 2,  0,    0,    8,  -200, 0,     14, 0,    0,
    20, -400, 0,    26, 50,   0,    32, -200, 0,    38, 50,   0,    50, -650, 0,    56, -450, 0,     62, -650, 0,
    74, 0,    0,    80, -200, 0,    86, 0,    0,    92, -400, 0,    97, -25,  1756, 1,  0,    0,     97, 0,    0,
    1,  0,    0,    97, 0,    0,    1,  0,    0,    97, 0,    0,    1,  0,    0,    97, 0,    0,     1,  -40,  272,
    8,  0,    0,    32, -100, 0,    56, 100,  0,    80, -200, 0,    97, -40,  272,  1,  243,  494,   2,  250,  0,
    8,  200,  0,    14, 250,  0,    26, 200,  0,    32, 150,  0,    38, 200,  0,    50, -225, 0,     56, -175, 0,
    62, -225, 0,    74, -75,  0,    80, -125, 0,    86, -75,  0,    97, 243,  494,  1,  50,   0,     2,  50,   0,
    8,  25,   0,    14, 50,   0,    26, 50,   0,    32, 0,    0,    38, 50,   0,    50, 0,    0,     56, 50,   0,
    62, 0,    0,    74, 100,  0,    80, 50,   0,    86, 100,  0,    97, 50,   0,    1,  0,    0,     97, 0,    0,
    1,  0,    0,    97, 0,    0,    1,  0,    0,    97, 0,    0
};

aNPC_Animation_c cKF_ba_r_npc_1_dance1 = {
    { cKF_ckcb_r_npc_1_dance1_tbl, cKF_ds_npc_1_dance1_tbl, cKF_kn_npc_1_dance1_tbl, cKF_c_npc_1_dance1_tbl, -1, 97 },
    1.0f,
    97.0f,
    cKF_FRAMECONTROL_REPEAT,
    -5.0f,
    NULL,
    aNPC_EYE_TEX0,
    5,
    NULL,
    aNPC_MOUTH_TEX0,
    2,
    2,
    eEC_EFFECT_KONPU,
    NULL,
    NULL,
};
