#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_warmup1_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_warmup1_tbl[] = { 8, 2,  2, 8, 9,  2,  9, 9,  9,  2, 9,  2, 2, 9,  9, 9, 9,  9,
                                   2, 9,  2, 2, 9,  9,  2, 10, 10, 2, 10, 8, 9, 9,  8, 5, 10, 10,
                                   2, 10, 2, 5, 10, 10, 2, 10, 2,  2, 2,  2, 9, 10, 8, 2, 2,  2 };

s16 cKF_c_npc_1_warmup1_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_warmup1_tbl[] = {
    1,  0,    372,   9,  100,  0,     16, 50,   0,     23, 100,  0,     39, -100, 0,    46, -50,  0,
    53, -100, 0,     61, 0,    372,   1,  1000, 0,     61, 1000, 0,     1,  0,    0,    61, 0,    0,
    1,  0,    701,   9,  150,  0,     16, 50,   0,     23, 150,  0,     39, -150, 0,    46, -50,  0,
    53, -150, 0,     61, 0,    706,   1,  0,    0,     9,  -75,  0,     16, -25,  0,    23, -75,  0,
    31, 0,    0,     39, -75,  0,     46, -25,  0,     53, -75,  0,     61, 0,    0,    1,  0,    0,
    61, 0,    0,     1,  -175, 804,   9,  -40,  0,     16, -135, 0,     23, -40,  0,    31, -175, -811,
    39, -353, 0,     46, -235, 0,     53, -353, 0,     61, -175, 843,   1,  -100, -646, 9,  -231, 0,
    16, -163, 0,     23, -231, 0,     31, -100, 638,   39, 10,   0,     46, -50,  0,    53, 10,   0,
    61, -100, -672,  1,  140,  -447,  9,  21,   0,     16, 100,  0,     23, 21,   0,    31, 140,  453,
    39, 190,  0,     46, 165,  0,     53, 190,  0,     61, 140,  -499,  1,  0,    0,    61, 0,    0,
    1,  200,  0,     9,  200,  0,     16, 233,  0,     23, 200,  0,     31, 200,  0,    39, 0,    0,
    46, 100,  0,     53, 0,    0,     61, 200,  0,     1,  0,    0,     61, 0,    0,    1,  0,    0,
    61, 0,    0,     1,  -60,  0,     9,  -40,  0,     16, -75,  0,     23, -40,  0,    31, -60,  0,
    39, 38,   0,     46, -11,  0,     53, 38,   0,     61, -60,  0,     1,  -104, 338,  9,  -30,  0,
    16, -68,  0,     23, -30,  0,     31, -104, -364,  39, -185, 0,     46, -140, 0,    53, -185, 0,
    61, -104, 364,   1,  175,  722,   9,  353,  0,     16, 235,  0,     23, 353,  0,    31, 175,  -911,
    39, 40,   0,     46, 135,  0,     53, 40,   0,     61, 175,  722,   1,  -100, 614,  9,  10,   0,
    16, -50,  0,     23, 10,   0,     31, -100, -616,  39, -231, 0,     46, -164, 0,    53, -231, 0,
    61, -100, 704,   1,  -140, -542,  9,  -190, 0,     16, -165, 0,     23, -190, 0,    31, -140, 434,
    39, -21,  0,     46, -100, 0,     53, -21,  0,     61, -140, -542,  1,  0,    0,    61, 0,    0,
    1,  200,  0,     9,  0,    0,     16, 100,  0,     23, 0,    0,     31, 200,  0,    39, 200,  0,
    46, 233,  0,     53, 200,  0,     61, 200,  0,     1,  0,    0,     61, 0,    0,    1,  0,    0,
    61, 0,    0,     1,  -60,  0,     9,  38,   0,     16, -11,  0,     23, 38,   0,    31, -60,  0,
    39, -40,  0,     46, -75,  0,     53, -40,  0,     61, -60,  0,     1,  104,  362,  9,  185,  0,
    16, 140,  0,     23, 185,  0,     31, 104,  -373,  39, 30,   0,     46, 68,   0,    53, 30,   0,
    61, 104,  390,   1,  0,    0,     61, 0,    0,     1,  124,  792,   3,  150,  0,    11, -100, 0,
    18, 100,  0,     25, -100, 0,     33, 150,  0,     41, -100, 0,     48, 100,  0,    55, -100, 0,
    61, 124,  792,   1,  -80,  909,   3,  0,    1442,  11, 150,  0,     18, 100,  0,    25, 150,  0,
    33, 0,    -1431, 41, -150, 0,     48, -100, 0,     55, -150, 0,     61, -80,  909,  1,  0,    0,
    61, 0,    0,     1,  -10,  781,   5,  83,   0,     13, -100, 0,     20, 100,  0,    27, -100, 0,
    35, 150,  0,     44, -100, 0,     50, 100,  0,     57, -100, 0,     61, -10,  781,  1,  -101, 586,
    13, 150,  0,     20, 50,   0,     27, 150,  0,     43, -150, 0,     50, -50,  0,    57, -150, 0,
    61, -103, 586,   1,  0,    4374,  9,  450,  0,     16, 350,  0,     23, 450,  0,    31, 0,    -4751,
    39, -450, 0,     46, -350, 0,     53, -450, 0,     61, 0,    5248,  1,  2,    0,    9,  225,  0,
    16, 75,   0,     23, 225,  0,     31, 2,    0,     39, 225,  0,     46, 75,   0,    53, 225,  0,
    61, 2,    0,     1,  0,    250,   9,  50,   0,     16, 0,    0,     23, 50,   0,    39, -50,  0,
    46, 0,    0,     53, -50,  0,     61, 0,    250,   1,  -66,  -502,  17, -300, 0,    32, 0,    0,
    54, 0,    0,     61, -66,  -502,  1,  -440, 1048,  2,  -403, 1257,  10, 450,  0,    17, 175,  0,
    24, 450,  0,     32, 300,  -1251, 40, -550, 0,     47, -375, 0,     54, -550, 0,    61, -440, 1048,
    1,  0,    0,     2,  0,    0,     10, -100, -941,  17, -300, 0,     24, -100, 0,    32, -250, 0,
    40, -100, 0,     47, -200, 0,     54, -98,  937,   61, 0,    0,     1,  0,    0,    61, 0,    0,
    1,  -510, 571,   2,  -500, 0,     10, -600, 0,     17, -300, 0,     24, -600, 0,    32, -500, 0,
    40, -750, 0,     47, -400, 0,     54, -750, 0,     61, -510, 571,   1,  0,    0,    61, 0,    0,
    1,  5,    -295,  2,  0,    0,     24, 0,    0,     47, 300,  0,     61, 5,    -295, 1,  339,  -1113,
    2,  300,  -1250, 10, -550, 0,     17, -375, 0,     24, -550, 0,     32, -403, 1249, 40, 450,  0,
    47, 175,  0,     54, 450,  0,     61, 339,  -1113, 1,  249,  382,   2,  250,  0,    10, 100,  0,
    17, 200,  0,     24, 100,  -941,  32, 0,    0,     40, 100,  938,   47, 300,  0,    54, 100,  0,
    61, 249,  382,   1,  0,    0,     61, 0,    0,     1,  -505, 299,   2,  -500, 0,    10, -750, 0,
    17, -400, 0,     24, -750, 0,     32, -500, 0,     40, -600, 0,     47, -300, 0,    54, -600, 0,
    61, -505, 299,   1,  0,    0,     61, 0,    0,     1,  630,  0,     61, 630,  0,    1,  -495, 0,
    61, -495, 0,     1,  348,  0,     61, 348,  0,     3,  0,    -1447, 11, -150, 0,    18, -50,  0,
    25, -150, 0,     33, 0,    1473,  41, 150,  0,     48, 50,   0,     55, 150,  0,    61, 77,   -908,
    1,  0,    0,     9,  -150, 0,     16, 10,   0,     23, -150, 0,     31, 0,    0,    39, -150, 0,
    46, 10,   0,     53, -150, 0,     59, -24,  624,   61, 0,    0,     3,  0,    415,  11, 75,   0,
    18, 25,   0,     25, 75,   0,     41, -75,  0,     48, -25,  0,     55, -75,  0,    61, -27,  403,
    1,  0,    0,     61, 0,    0,     1,  0,    0,     61, 0,    0,     1,  0,    0,    61, 0,    0
};

aNPC_Animation_c cKF_ba_r_npc_1_warmup1 = {
    { cKF_ckcb_r_npc_1_warmup1_tbl, cKF_ds_npc_1_warmup1_tbl, cKF_kn_npc_1_warmup1_tbl, cKF_c_npc_1_warmup1_tbl, -1,
      61 },
    1.0f,
    61.0f,
    cKF_FRAMECONTROL_REPEAT,
    -8.0f,
    NULL,
    aNPC_EYE_TEX0,
    0,
    NULL,
    aNPC_MOUTH_TEX0,
    3,
    -1,
    -1,
    NULL,
    NULL,
};
