#ifndef OBJECTS_OBJECT_KAMEJIMA_H
#define OBJECTS_OBJECT_KAMEJIMA_H 1

#include "align_asset_macro.h"

#define dgTurtleWaveVtx "__OTR__objects/object_kamejima/gTurtleWaveVtx"
static const ALIGN_ASSET(2) char gTurtleWaveVtx[] = dgTurtleWaveVtx;

#define dgTurtleWaveDL "__OTR__objects/object_kamejima/gTurtleWaveDL"
static const ALIGN_ASSET(2) char gTurtleWaveDL[] = dgTurtleWaveDL;

#define dgTurtleWaveUnusedTex "__OTR__objects/object_kamejima/gTurtleWaveUnusedTex"
static const ALIGN_ASSET(2) char gTurtleWaveUnusedTex[] = dgTurtleWaveUnusedTex;

#define dgTurtleWaveTex "__OTR__objects/object_kamejima/gTurtleWaveTex"
static const ALIGN_ASSET(2) char gTurtleWaveTex[] = dgTurtleWaveTex;

#define dgTurtleWaveTexAnim "__OTR__objects/object_kamejima/gTurtleWaveTexAnim"
static const ALIGN_ASSET(2) char gTurtleWaveTexAnim[] = dgTurtleWaveTexAnim;

#define dgTurtleZoraCapeAsleepCol "__OTR__objects/object_kamejima/gTurtleZoraCapeAsleepCol"
static const ALIGN_ASSET(2) char gTurtleZoraCapeAsleepCol[] = dgTurtleZoraCapeAsleepCol;

#define dgTurtleEmptyTexAnim "__OTR__objects/object_kamejima/gTurtleEmptyTexAnim"
static const ALIGN_ASSET(2) char gTurtleEmptyTexAnim[] = dgTurtleEmptyTexAnim;

#define dgTurtleZoraCapeAwakeCol "__OTR__objects/object_kamejima/gTurtleZoraCapeAwakeCol"
static const ALIGN_ASSET(2) char gTurtleZoraCapeAwakeCol[] = dgTurtleZoraCapeAwakeCol;

#define dgTurtleUnusedCol "__OTR__objects/object_kamejima/gTurtleUnusedCol"
static const ALIGN_ASSET(2) char gTurtleUnusedCol[] = dgTurtleUnusedCol;

#define dgTurtleGlitchy1Anim "__OTR__objects/object_kamejima/gTurtleGlitchy1Anim"
static const ALIGN_ASSET(2) char gTurtleGlitchy1Anim[] = dgTurtleGlitchy1Anim;

#define dgTurtleCoughAnim "__OTR__objects/object_kamejima/gTurtleCoughAnim"
static const ALIGN_ASSET(2) char gTurtleCoughAnim[] = dgTurtleCoughAnim;

#define dgTurtleIdleAnim "__OTR__objects/object_kamejima/gTurtleIdleAnim"
static const ALIGN_ASSET(2) char gTurtleIdleAnim[] = dgTurtleIdleAnim;

#define dgTurtleAsleepDL "__OTR__objects/object_kamejima/gTurtleAsleepDL"
static const ALIGN_ASSET(2) char gTurtleAsleepDL[] = dgTurtleAsleepDL;

#define dgTurtleAsleepTLUT "__OTR__objects/object_kamejima/gTurtleAsleepTLUT"
static const ALIGN_ASSET(2) char gTurtleAsleepTLUT[] = dgTurtleAsleepTLUT;

#define dgTurtleAsleepGrassTex "__OTR__objects/object_kamejima/gTurtleAsleepGrassTex"
static const ALIGN_ASSET(2) char gTurtleAsleepGrassTex[] = dgTurtleAsleepGrassTex;

#define dgTurtleAsleepGrassDirtTex "__OTR__objects/object_kamejima/gTurtleAsleepGrassDirtTex"
static const ALIGN_ASSET(2) char gTurtleAsleepGrassDirtTex[] = dgTurtleAsleepGrassDirtTex;

#define dgTurtleSwimAnim "__OTR__objects/object_kamejima/gTurtleSwimAnim"
static const ALIGN_ASSET(2) char gTurtleSwimAnim[] = dgTurtleSwimAnim;

#define dgTurtleShellDL "__OTR__objects/object_kamejima/gTurtleShellDL"
static const ALIGN_ASSET(2) char gTurtleShellDL[] = dgTurtleShellDL;

#define dgTurtleFrontLeftUpperFlipperDL "__OTR__objects/object_kamejima/gTurtleFrontLeftUpperFlipperDL"
static const ALIGN_ASSET(2) char gTurtleFrontLeftUpperFlipperDL[] = dgTurtleFrontLeftUpperFlipperDL;

#define dgTurtleFrontLeftLowerFlipperDL "__OTR__objects/object_kamejima/gTurtleFrontLeftLowerFlipperDL"
static const ALIGN_ASSET(2) char gTurtleFrontLeftLowerFlipperDL[] = dgTurtleFrontLeftLowerFlipperDL;

#define dgTurtleFrontLeftEndFlipperDL "__OTR__objects/object_kamejima/gTurtleFrontLeftEndFlipperDL"
static const ALIGN_ASSET(2) char gTurtleFrontLeftEndFlipperDL[] = dgTurtleFrontLeftEndFlipperDL;

#define dgTurtleFrontRightUpperFlipperDL "__OTR__objects/object_kamejima/gTurtleFrontRightUpperFlipperDL"
static const ALIGN_ASSET(2) char gTurtleFrontRightUpperFlipperDL[] = dgTurtleFrontRightUpperFlipperDL;

#define dgTurtleFrontRightLowerFlipperDL "__OTR__objects/object_kamejima/gTurtleFrontRightLowerFlipperDL"
static const ALIGN_ASSET(2) char gTurtleFrontRightLowerFlipperDL[] = dgTurtleFrontRightLowerFlipperDL;

#define dgTurtleFrontRightEndFlipperDL "__OTR__objects/object_kamejima/gTurtleFrontRightEndFlipperDL"
static const ALIGN_ASSET(2) char gTurtleFrontRightEndFlipperDL[] = dgTurtleFrontRightEndFlipperDL;

#define dgTurtleBackRightFlipperDL "__OTR__objects/object_kamejima/gTurtleBackRightFlipperDL"
static const ALIGN_ASSET(2) char gTurtleBackRightFlipperDL[] = dgTurtleBackRightFlipperDL;

#define dgTurtleBackLeftFlipperDL "__OTR__objects/object_kamejima/gTurtleBackLeftFlipperDL"
static const ALIGN_ASSET(2) char gTurtleBackLeftFlipperDL[] = dgTurtleBackLeftFlipperDL;

#define dgTurtleTailDL "__OTR__objects/object_kamejima/gTurtleTailDL"
static const ALIGN_ASSET(2) char gTurtleTailDL[] = dgTurtleTailDL;

#define dgTurtleNeckDL "__OTR__objects/object_kamejima/gTurtleNeckDL"
static const ALIGN_ASSET(2) char gTurtleNeckDL[] = dgTurtleNeckDL;

#define dgTurtleHeadDL "__OTR__objects/object_kamejima/gTurtleHeadDL"
static const ALIGN_ASSET(2) char gTurtleHeadDL[] = dgTurtleHeadDL;

#define dgTurtleUpperMouthDL "__OTR__objects/object_kamejima/gTurtleUpperMouthDL"
static const ALIGN_ASSET(2) char gTurtleUpperMouthDL[] = dgTurtleUpperMouthDL;

#define dgTurtleLowerMouthDL "__OTR__objects/object_kamejima/gTurtleLowerMouthDL"
static const ALIGN_ASSET(2) char gTurtleLowerMouthDL[] = dgTurtleLowerMouthDL;

#define dgTurtleSkinTLUT "__OTR__objects/object_kamejima/gTurtleSkinTLUT"
static const ALIGN_ASSET(2) char gTurtleSkinTLUT[] = dgTurtleSkinTLUT;

#define dgTurtleTLUT "__OTR__objects/object_kamejima/gTurtleTLUT"
static const ALIGN_ASSET(2) char gTurtleTLUT[] = dgTurtleTLUT;

#define dgTurtleNostrilTex "__OTR__objects/object_kamejima/gTurtleNostrilTex"
static const ALIGN_ASSET(2) char gTurtleNostrilTex[] = dgTurtleNostrilTex;

#define dgTurtleInsideUpperMouthTex "__OTR__objects/object_kamejima/gTurtleInsideUpperMouthTex"
static const ALIGN_ASSET(2) char gTurtleInsideUpperMouthTex[] = dgTurtleInsideUpperMouthTex;

#define dgTurtleInsideLowerMouthTex "__OTR__objects/object_kamejima/gTurtleInsideLowerMouthTex"
static const ALIGN_ASSET(2) char gTurtleInsideLowerMouthTex[] = dgTurtleInsideLowerMouthTex;

#define dgTurtleSpottedSkinTex "__OTR__objects/object_kamejima/gTurtleSpottedSkinTex"
static const ALIGN_ASSET(2) char gTurtleSpottedSkinTex[] = dgTurtleSpottedSkinTex;

#define dgTurtleSkinTex "__OTR__objects/object_kamejima/gTurtleSkinTex"
static const ALIGN_ASSET(2) char gTurtleSkinTex[] = dgTurtleSkinTex;

#define dgTurtleEyeOpenStraightTex "__OTR__objects/object_kamejima/gTurtleEyeOpenStraightTex"
static const ALIGN_ASSET(2) char gTurtleEyeOpenStraightTex[] = dgTurtleEyeOpenStraightTex;

#define dgTurtleEyeHalfStraightTex "__OTR__objects/object_kamejima/gTurtleEyeHalfStraightTex"
static const ALIGN_ASSET(2) char gTurtleEyeHalfStraightTex[] = dgTurtleEyeHalfStraightTex;

#define dgTurtleEyeClosedTex "__OTR__objects/object_kamejima/gTurtleEyeClosedTex"
static const ALIGN_ASSET(2) char gTurtleEyeClosedTex[] = dgTurtleEyeClosedTex;

#define dgTurtleEyeHalfLeftTex "__OTR__objects/object_kamejima/gTurtleEyeHalfLeftTex"
static const ALIGN_ASSET(2) char gTurtleEyeHalfLeftTex[] = dgTurtleEyeHalfLeftTex;

#define dgTurtleEyeOpenRightTex "__OTR__objects/object_kamejima/gTurtleEyeOpenRightTex"
static const ALIGN_ASSET(2) char gTurtleEyeOpenRightTex[] = dgTurtleEyeOpenRightTex;

#define dgTurtleEyeOpenLeftTex "__OTR__objects/object_kamejima/gTurtleEyeOpenLeftTex"
static const ALIGN_ASSET(2) char gTurtleEyeOpenLeftTex[] = dgTurtleEyeOpenLeftTex;

#define dgTurtleHeadTex "__OTR__objects/object_kamejima/gTurtleHeadTex"
static const ALIGN_ASSET(2) char gTurtleHeadTex[] = dgTurtleHeadTex;

#define dgTurtleShellGrassTex "__OTR__objects/object_kamejima/gTurtleShellGrassTex"
static const ALIGN_ASSET(2) char gTurtleShellGrassTex[] = dgTurtleShellGrassTex;

#define dgTurtleShellScutesTex "__OTR__objects/object_kamejima/gTurtleShellScutesTex"
static const ALIGN_ASSET(2) char gTurtleShellScutesTex[] = dgTurtleShellScutesTex;

#define dgTurtleShellBottomTex "__OTR__objects/object_kamejima/gTurtleShellBottomTex"
static const ALIGN_ASSET(2) char gTurtleShellBottomTex[] = dgTurtleShellBottomTex;

#define dgTurtleSkel "__OTR__objects/object_kamejima/gTurtleSkel"
static const ALIGN_ASSET(2) char gTurtleSkel[] = dgTurtleSkel;

#define dgTurtleGlitchy2Anim "__OTR__objects/object_kamejima/gTurtleGlitchy2Anim"
static const ALIGN_ASSET(2) char gTurtleGlitchy2Anim[] = dgTurtleGlitchy2Anim;

#define dgTurtleSpeak1Anim "__OTR__objects/object_kamejima/gTurtleSpeak1Anim"
static const ALIGN_ASSET(2) char gTurtleSpeak1Anim[] = dgTurtleSpeak1Anim;

#define dgTurtleGlitchyRaiseHeadAnim "__OTR__objects/object_kamejima/gTurtleGlitchyRaiseHeadAnim"
static const ALIGN_ASSET(2) char gTurtleGlitchyRaiseHeadAnim[] = dgTurtleGlitchyRaiseHeadAnim;

#define dgTurtleSpeak2Anim "__OTR__objects/object_kamejima/gTurtleSpeak2Anim"
static const ALIGN_ASSET(2) char gTurtleSpeak2Anim[] = dgTurtleSpeak2Anim;

#define dgTurtleFloatAnim "__OTR__objects/object_kamejima/gTurtleFloatAnim"
static const ALIGN_ASSET(2) char gTurtleFloatAnim[] = dgTurtleFloatAnim;

#define dgTurtleGlitchyLookAroundAnim "__OTR__objects/object_kamejima/gTurtleGlitchyLookAroundAnim"
static const ALIGN_ASSET(2) char gTurtleGlitchyLookAroundAnim[] = dgTurtleGlitchyLookAroundAnim;

#define dgTurtleYawnAnim "__OTR__objects/object_kamejima/gTurtleYawnAnim"
static const ALIGN_ASSET(2) char gTurtleYawnAnim[] = dgTurtleYawnAnim;

typedef enum TurtleLimb {
    /* 0x00 */ TURTLE_LIMB_NONE,
    /* 0x01 */ TURTLE_LIMB_ROOT,
    /* 0x02 */ TURTLE_LIMB_SHELL,
    /* 0x03 */ TURTLE_LIMB_NECK_HEAD_ROOT,
    /* 0x04 */ TURTLE_LIMB_NECK,
    /* 0x05 */ TURTLE_LIMB_HEAD,
    /* 0x06 */ TURTLE_LIMB_UPPER_MOUTH,
    /* 0x07 */ TURTLE_LIMB_LOWER_MOUTH_ROOT,
    /* 0x08 */ TURTLE_LIMB_LOWER_MOUTH,
    /* 0x09 */ TURTLE_LIMB_BACK_LEFT_FLIPPER_ROOT,
    /* 0x0A */ TURTLE_LIMB_BACK_LEFT_FLIPPER,
    /* 0x0B */ TURTLE_LIMB_BACK_RIGHT_FLIPPER_ROOT,
    /* 0x0C */ TURTLE_LIMB_BACK_RIGHT_FLIPPER,
    /* 0x0D */ TURTLE_TAIL_ROOT_LIMB,
    /* 0x0E */ TURTLE_TAIL_LIMB,
    /* 0x0F */ TURTLE_TAIL_END_ROOT_LIMB,
    /* 0x10 */ TURTLE_LIMB_FRONT_LEFT_FLIPPER_ROOT,
    /* 0x11 */ TURTLE_LIMB_FRONT_LEFT_UPPER_FLIPPER,
    /* 0x12 */ TURTLE_LIMB_FRONT_LEFT_LOWER_FLIPPER,
    /* 0x13 */ TURTLE_LIMB_FRONT_LEFT_END_FLIPPER,
    /* 0x14 */ TURTLE_LIMB_FRONT_RIGHT_FLIPPER_ROOT,
    /* 0x15 */ TURTLE_LIMB_FRONT_RIGHT_UPPER_FLIPPER,
    /* 0x16 */ TURTLE_LIMB_FRONT_RIGHT_LOWER_FLIPPER,
    /* 0x17 */ TURTLE_LIMB_FRONT_RIGHT_END_FLIPPER,
    /* 0x18 */ TURTLE_LIMB_MAX
} TurtleLimb;

#endif // OBJECTS_OBJECT_KAMEJIMA_H
