#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_not_contract1_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_not_contract1_tbl[] = { 2, 6, 4, 5, 5, 5, 7, 6, 6, 2, 5, 2, 2, 7, 6, 6, 6, 6,
                                         2, 6, 2, 2, 8, 8, 2, 2, 2, 2, 2, 2, 5, 5, 3, 6, 5, 6,
                                         2, 5, 2, 4, 3, 5, 2, 3, 2, 2, 2, 2, 4, 4, 5, 2, 2, 2 };

s16 cKF_c_npc_1_not_contract1_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, 0 };

s16 cKF_ds_npc_1_not_contract1_tbl[] = {
    1,  0,    0,    29, 0,    0,     1,  950,  0,     5,  950,  0,     11, 1150, 899,  18, 1200, 0,    25, 1150, -1003,
    29, 1000, 0,    1,  50,   0,     5,  50,   0,     18, 500,  0,     29, 0,    0,    1,  0,    0,    5,  0,    0,
    16, -50,  0,    18, -50,  0,     29, 0,    0,     1,  60,   0,     5,  60,   0,    16, -200, 0,    18, -200, 0,
    29, 0,    0,    1,  100,  0,     5,  100,  0,     16, 25,   0,     18, 25,   0,    29, 0,    0,    1,  -198, 0,
    5,  -198, 0,    12, -175, 0,     16, -200, 0,     18, -200, 0,     22, -185, 91,   29, -175, 0,    1,  90,   0,
    5,  90,   0,    12, -230, 0,     18, -193, 0,     22, -230, 0,     29, -100, 0,    1,  -53,  0,    5,  -53,  0,
    12, -15,  133,  18, 5,    59,    22, 10,   54,    29, 25,   0,     1,  0,    0,    29, 0,    0,    1,  30,   0,
    5,  30,   0,    12, 0,    0,     22, 0,    0,     29, 200,  0,     1,  0,    0,    29, 0,    0,    1,  0,    0,
    29, 0,    0,    1,  -38,  0,     5,  -38,  0,     12, 300,  0,     16, 185,  0,    18, 185,  0,    22, 275,  0,
    29, -100, 0,    1,  -55,  0,     5,  -55,  0,     12, 70,   0,     18, 40,   0,    22, 60,   0,    29, 0,    0,
    1,  163,  0,    5,  163,  0,     9,  168,  0,     12, 138,  -95,   18, 118,  0,    29, 175,  0,    1,  -188, 0,
    5,  -188, 0,    12, 38,   0,     15, 5,    0,     18, 15,   0,     29, -100, 0,    1,  -183, 0,    5,  -183, 0,
    12, -45,  343,  15, -33,  0,     18, -40,  0,     29, -25,  0,     1,  0,    0,    29, 0,    0,    1,  620,  0,
    5,  620,  0,    9,  325,  -3225, 12, 0,    0,     25, 130,  345,   29, 200,  0,    1,  0,    0,    29, 0,    0,
    1,  0,    0,    29, 0,    0,     1,  -360, 0,     5,  -360, 0,     9,  -220, 2321, 12, 10,   310,  15, 20,   0,
    18, -15,  -226, 25, -30,  0,     29, -100, 0,     1,  15,   0,     5,  15,   0,    9,  5,    -69,  12, 0,    -51,
    15, -5,   0,    18, 5,    0,     25, -10,  0,     29, 0,    0,     1,  0,    0,    29, 0,    0,    1,  60,   0,
    29, 60,   0,    1,  0,    0,     29, 0,    0,     1,  0,    0,     29, 0,    0,    1,  102,  0,    29, 82,   1348,
    1,  0,    0,    29, 0,    0,     1,  330,  0,     5,  300,  -448,  14, -100, -743, 18, -150, 0,    29, 0,    0,
    1,  88,   0,    5,  100,  180,   14, 200,  0,     18, 200,  0,     29, 2,    -78,  1,  -50,  0,    14, 0,    0,
    29, 0,    0,    1,  -100, 0,     5,  -100, 0,     14, -350, -1904, 18, -550, 0,    23, -400, 1669, 29, 0,    0,
    1,  25,   0,    5,  25,   0,     14, -550, -2023, 18, -700, 0,     29, 58,   0,    1,  -200, 0,    5,  -200, 0,
    7,  -250, 0,    18, 180,  0,     23, 50,   -2001, 29, -564, 0,     1,  0,    0,    29, 0,    0,    1,  -600, 0,
    5,  -600, 0,    18, 0,    0,     25, -500, 0,     29, -57,  0,     1,  0,    0,    29, 0,    0,    1,  -500, 0,
    9,  -205, 2039, 18, 0,    0,     29, 0,    0,     1,  -200, 0,     21, 150,  0,    29, 58,   0,    1,  500,  0,
    5,  500,  0,    9,  350,  0,     21, 350,  0,     29, 564,  0,     1,  0,    0,    29, 0,    0,    1,  -400, 0,
    21, -150, 0,    29, -57,  0,     1,  0,    0,     29, 0,    0,     1,  0,    0,    29, 0,    0,    1,  0,    0,
    29, 0,    0,    1,  0,    0,     29, 0,    0,     1,  20,   0,     5,  45,   374,  18, 200,  0,    29, 0,    0,
    1,  -350, 0,    5,  -350, 0,     12, -100, 750,   29, 0,    0,     1,  100,  0,    5,  100,  0,    12, -50,  0,
    18, 0,    0,    29, 0,    0,     1,  0,    0,     29, 0,    0,     1,  0,    0,    29, 0,    0,    1,  0,    0,
    29, 0,    0
};

u8 npc_1_not_contract10_tex_index[] = { 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
                                        4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 2, 2, 2 };

aNPC_Animation_c cKF_ba_r_npc_1_not_contract1 = {
    { cKF_ckcb_r_npc_1_not_contract1_tbl, cKF_ds_npc_1_not_contract1_tbl, cKF_kn_npc_1_not_contract1_tbl,
      cKF_c_npc_1_not_contract1_tbl, -1, 29 },
    1.0f,
    29.0f,
    cKF_FRAMECONTROL_STOP,
    -5.0f,
    npc_1_not_contract10_tex_index,
    aNPC_EYE_TEX0,
    -1,
    NULL,
    aNPC_MOUTH_TEX1,
    0,
    -1,
    -1,
    NULL,
    NULL,
};
