#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_aisatu3_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_aisatu3_tbl[] = { 3, 5, 5, 3, 5, 2, 3, 5, 5, 2, 5, 2, 2, 5, 5, 3, 5, 5, 2, 5, 2, 2, 5, 5, 2, 5, 6,
                                   2, 7, 7, 2, 5, 2, 5, 4, 5, 2, 9, 2, 5, 4, 5, 2, 9, 2, 2, 2, 2, 2, 4, 2, 3, 7, 3 };

s16 cKF_c_npc_1_aisatu3_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_aisatu3_tbl[] = {
    1,  0,    0,     16, 0,    0,    31, 0,    0,     1,  1000, 0,     8,  950,  0,    14, 1000, 0,
    17, 1000, 0,     31, 1000, 0,    1,  0,    0,     9,  125,  0,     14, -25,  0,    17, -25,  0,
    31, 0,    0,     1,  0,    0,    16, 0,    0,     31, 0,    0,     1,  0,    0,    8,  -80,  -299,
    14, -110, 0,     17, -110, 0,    31, 0,    0,     1,  0,    0,     31, 0,    0,    1,  -175, 0,
    16, -175, 0,     31, -175, 0,    1,  -100, 0,     8,  -200, 0,     14, -190, 0,    17, -190, 0,
    31, -100, 0,     1,  25,   0,    8,  50,   0,     14, 10,   0,     17, 10,   0,    31, 25,   0,
    1,  0,    0,     31, 0,    0,    1,  200,  0,     8,  450,  0,     14, 100,  0,    16, 100,  0,
    31, 200,  0,     1,  0,    0,    31, 0,    0,     1,  0,    0,     31, 0,    0,    1,  -100, 0,
    8,  -310, 0,     14, -20,  0,    17, -20,  0,     31, -100, 0,     1,  0,    0,    8,  0,    0,
    14, 40,   0,     17, 40,   0,    31, 0,    0,     1,  175,  0,     16, 175,  0,    31, 175,  0,
    1,  -100, 0,     8,  -200, 0,    14, -190, 0,     17, -190, 0,     31, -100, 0,    1,  -25,  0,
    8,  -50,  0,     14, -10,  0,    17, -10,  0,     31, -25,  0,     1,  0,    0,    31, 0,    0,
    1,  200,  0,     8,  450,  0,    14, 100,  0,     16, 100,  0,     31, 200,  0,    1,  0,    0,
    31, 0,    0,     1,  0,    0,    31, 0,    0,     1,  -100, 0,     8,  -310, 0,    14, -20,  0,
    17, -20,  0,     31, -100, 0,    1,  0,    0,     8,  0,    0,     14, -40,  0,    17, -40,  0,
    31, 0,    0,     1,  0,    0,    31, 0,    0,     1,  60,   0,     9,  -250, 0,    16, -50,  0,
    21, -200, 0,     31, 60,   0,    1,  0,    0,     6,  70,   -224,  11, -30,  0,    14, 0,    0,
    20, 0,    0,     31, 0,    0,    1,  0,    0,     31, 0,    0,     1,  82,   0,    5,  120,  -197,
    12, -250, 0,     14, -200, 1532, 17, 120,  0,     23, -150, 0,     31, 82,   0,    1,  0,    0,
    3,  -40,  0,     8,  50,   0,    13, -50,  0,     17, 30,   0,     20, 0,    0,    31, 0,    0,
    1,  0,    0,     31, 0,    0,    1,  2,    -78,   8,  120,  0,     15, -120, 0,    16, -120, 0,
    31, 2,    -78,   1,  0,    0,    31, 0,    0,     1,  0,    0,     10, -350, 0,    13, -200, 1466,
    15, -150, 0,     31, 0,    0,    1,  58,   0,     10, -650, 0,     15, -250, 0,    31, 58,   0,
    1,  -564, 0,     9,  -200, 0,    12, -250, -1479, 15, -450, 0,     31, -564, 0,    1,  0,    0,
    31, 0,    0,     1,  -57,  0,    5,  -690, -3206, 9,  -900, 0,     13, -810, 1508, 16, -600, 2196,
    17, -640, -1623, 22, -710, 627,  25, -550, 2018,  31, -57,  0,     1,  0,    0,    31, 0,    0,
    1,  0,    0,     10, 350,  0,    13, 200,  -1460, 15, 150,  0,     31, 0,    0,    1,  58,   0,
    10, -650, 0,     15, -250, 0,    31, 58,   0,     1,  564,  0,     9,  200,  0,    12, 250,  1514,
    15, 450,  0,     31, 564,  0,    1,  0,    0,     31, 0,    0,     1,  -57,  0,    5,  -690, -3206,
    9,  -900, 0,     13, -810, 1503, 16, -600, 2208,  17, -640, -1629, 22, -710, 622,  25, -550, 2018,
    31, -57,  0,     1,  0,    0,    31, 0,    0,     1,  0,    0,     31, 0,    0,    1,  0,    0,
    31, 0,    0,     1,  0,    0,    31, 0,    0,     1,  0,    0,     31, 0,    0,    1,  0,    0,
    8,  20,   299,   16, 150,  0,    31, 0,    0,     1,  0,    0,     31, 0,    0,    1,  0,    0,
    16, 0,    0,     31, 0,    0,    1,  0,    0,     9,  0,    0,     12, -200, 0,    14, -200, 0,
    16, -180, 618,   19, 0,    0,    31, 0,    0,     1,  0,    0,     16, 0,    0,    31, 0,    0
};

u8 npc_1_aisatu30_tex_index[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 2, 2, 2,
                                  2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };

u8 npc_1_aisatu31_tex_index[] = { 0, 1, 2, 2, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
                                  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 2, 2, 1, 0 };

aNPC_Animation_c cKF_ba_r_npc_1_aisatu3 = {
    { cKF_ckcb_r_npc_1_aisatu3_tbl, cKF_ds_npc_1_aisatu3_tbl, cKF_kn_npc_1_aisatu3_tbl, cKF_c_npc_1_aisatu3_tbl, -1,
      31 },
    1.0f,
    31.0f,
    cKF_FRAMECONTROL_STOP,
    -5.0f,
    npc_1_aisatu31_tex_index,
    aNPC_EYE_TEX0,
    -1,
    npc_1_aisatu30_tex_index,
    aNPC_MOUTH_TEX0,
    -1,
    -1,
    -1,
    NULL,
    NULL,
};
