#ifndef OBJECTS_OBJECT_BOSS_HAKUGIN_H
#define OBJECTS_OBJECT_BOSS_HAKUGIN_H 1

#include "align_asset_macro.h"

#define dgGohtThawAndBreakWallAnim "__OTR__objects/object_boss_hakugin/gGohtThawAndBreakWallAnim"
static const ALIGN_ASSET(2) char gGohtThawAndBreakWallAnim[] = dgGohtThawAndBreakWallAnim;

#define dgGohtWritheOnSideAnim "__OTR__objects/object_boss_hakugin/gGohtWritheOnSideAnim"
static const ALIGN_ASSET(2) char gGohtWritheOnSideAnim[] = dgGohtWritheOnSideAnim;

#define dgGohtTwitchOnSideAnim "__OTR__objects/object_boss_hakugin/gGohtTwitchOnSideAnim"
static const ALIGN_ASSET(2) char gGohtTwitchOnSideAnim[] = dgGohtTwitchOnSideAnim;

#define dgGohtFallOnSideAnim "__OTR__objects/object_boss_hakugin/gGohtFallOnSideAnim"
static const ALIGN_ASSET(2) char gGohtFallOnSideAnim[] = dgGohtFallOnSideAnim;

#define dgGohtStationaryAnim "__OTR__objects/object_boss_hakugin/gGohtStationaryAnim"
static const ALIGN_ASSET(2) char gGohtStationaryAnim[] = dgGohtStationaryAnim;

#define dgGohtPelvisDL "__OTR__objects/object_boss_hakugin/gGohtPelvisDL"
static const ALIGN_ASSET(2) char gGohtPelvisDL[] = dgGohtPelvisDL;

#define dgGohtBackLeftHoofDL "__OTR__objects/object_boss_hakugin/gGohtBackLeftHoofDL"
static const ALIGN_ASSET(2) char gGohtBackLeftHoofDL[] = dgGohtBackLeftHoofDL;

#define dgGohtBackLeftPasternDL "__OTR__objects/object_boss_hakugin/gGohtBackLeftPasternDL"
static const ALIGN_ASSET(2) char gGohtBackLeftPasternDL[] = dgGohtBackLeftPasternDL;

#define dgGohtBackLeftShinDL "__OTR__objects/object_boss_hakugin/gGohtBackLeftShinDL"
static const ALIGN_ASSET(2) char gGohtBackLeftShinDL[] = dgGohtBackLeftShinDL;

#define dgGohtBackLeftThighDL "__OTR__objects/object_boss_hakugin/gGohtBackLeftThighDL"
static const ALIGN_ASSET(2) char gGohtBackLeftThighDL[] = dgGohtBackLeftThighDL;

#define dgGohtBackRightHoofDL "__OTR__objects/object_boss_hakugin/gGohtBackRightHoofDL"
static const ALIGN_ASSET(2) char gGohtBackRightHoofDL[] = dgGohtBackRightHoofDL;

#define dgGohtBackRightPasternDL "__OTR__objects/object_boss_hakugin/gGohtBackRightPasternDL"
static const ALIGN_ASSET(2) char gGohtBackRightPasternDL[] = dgGohtBackRightPasternDL;

#define dgGohtBackRightShinDL "__OTR__objects/object_boss_hakugin/gGohtBackRightShinDL"
static const ALIGN_ASSET(2) char gGohtBackRightShinDL[] = dgGohtBackRightShinDL;

#define dgGohtBackRightThighDL "__OTR__objects/object_boss_hakugin/gGohtBackRightThighDL"
static const ALIGN_ASSET(2) char gGohtBackRightThighDL[] = dgGohtBackRightThighDL;

#define dgGohtHeadDL "__OTR__objects/object_boss_hakugin/gGohtHeadDL"
static const ALIGN_ASSET(2) char gGohtHeadDL[] = dgGohtHeadDL;

#define dgGohtJawDL "__OTR__objects/object_boss_hakugin/gGohtJawDL"
static const ALIGN_ASSET(2) char gGohtJawDL[] = dgGohtJawDL;

#define dgGohtThoraxDL "__OTR__objects/object_boss_hakugin/gGohtThoraxDL"
static const ALIGN_ASSET(2) char gGohtThoraxDL[] = dgGohtThoraxDL;

#define dgGohtFrontLeftHoofDL "__OTR__objects/object_boss_hakugin/gGohtFrontLeftHoofDL"
static const ALIGN_ASSET(2) char gGohtFrontLeftHoofDL[] = dgGohtFrontLeftHoofDL;

#define dgGohtFrontLeftLowerLegDL "__OTR__objects/object_boss_hakugin/gGohtFrontLeftLowerLegDL"
static const ALIGN_ASSET(2) char gGohtFrontLeftLowerLegDL[] = dgGohtFrontLeftLowerLegDL;

#define dgGohtFrontLeftUpperLegDL "__OTR__objects/object_boss_hakugin/gGohtFrontLeftUpperLegDL"
static const ALIGN_ASSET(2) char gGohtFrontLeftUpperLegDL[] = dgGohtFrontLeftUpperLegDL;

#define dgGohtFrontRightHoofDL "__OTR__objects/object_boss_hakugin/gGohtFrontRightHoofDL"
static const ALIGN_ASSET(2) char gGohtFrontRightHoofDL[] = dgGohtFrontRightHoofDL;

#define dgGohtFrontRightLowerLegDL "__OTR__objects/object_boss_hakugin/gGohtFrontRightLowerLegDL"
static const ALIGN_ASSET(2) char gGohtFrontRightLowerLegDL[] = dgGohtFrontRightLowerLegDL;

#define dgGohtFrontRightUpperLegDL "__OTR__objects/object_boss_hakugin/gGohtFrontRightUpperLegDL"
static const ALIGN_ASSET(2) char gGohtFrontRightUpperLegDL[] = dgGohtFrontRightUpperLegDL;

#define dgGohtMachineryTex "__OTR__objects/object_boss_hakugin/gGohtMachineryTex"
static const ALIGN_ASSET(2) char gGohtMachineryTex[] = dgGohtMachineryTex;

#define dgGohtMetalPlateWithCirclePatternTex "__OTR__objects/object_boss_hakugin/gGohtMetalPlateWithCirclePatternTex"
static const ALIGN_ASSET(2) char gGohtMetalPlateWithCirclePatternTex[] = dgGohtMetalPlateWithCirclePatternTex;

#define dgGohtMetalPlateWithMulticoloredPatternTex "__OTR__objects/object_boss_hakugin/gGohtMetalPlateWithMulticoloredPatternTex"
static const ALIGN_ASSET(2) char gGohtMetalPlateWithMulticoloredPatternTex[] = dgGohtMetalPlateWithMulticoloredPatternTex;

#define dgGohtEyeTex "__OTR__objects/object_boss_hakugin/gGohtEyeTex"
static const ALIGN_ASSET(2) char gGohtEyeTex[] = dgGohtEyeTex;

#define dgGohtFaceAndKneePatternTex "__OTR__objects/object_boss_hakugin/gGohtFaceAndKneePatternTex"
static const ALIGN_ASSET(2) char gGohtFaceAndKneePatternTex[] = dgGohtFaceAndKneePatternTex;

#define dgGohtHornTex "__OTR__objects/object_boss_hakugin/gGohtHornTex"
static const ALIGN_ASSET(2) char gGohtHornTex[] = dgGohtHornTex;

#define dgGohtRockMaterialDL "__OTR__objects/object_boss_hakugin/gGohtRockMaterialDL"
static const ALIGN_ASSET(2) char gGohtRockMaterialDL[] = dgGohtRockMaterialDL;

#define dgGohtRockModelDL "__OTR__objects/object_boss_hakugin/gGohtRockModelDL"
static const ALIGN_ASSET(2) char gGohtRockModelDL[] = dgGohtRockModelDL;

#define dgGohtRockTex "__OTR__objects/object_boss_hakugin/gGohtRockTex"
static const ALIGN_ASSET(2) char gGohtRockTex[] = dgGohtRockTex;

#define dgGohtStalactiteMaterialDL "__OTR__objects/object_boss_hakugin/gGohtStalactiteMaterialDL"
static const ALIGN_ASSET(2) char gGohtStalactiteMaterialDL[] = dgGohtStalactiteMaterialDL;

#define dgGohtStalactiteModelDL "__OTR__objects/object_boss_hakugin/gGohtStalactiteModelDL"
static const ALIGN_ASSET(2) char gGohtStalactiteModelDL[] = dgGohtStalactiteModelDL;

#define dgGohtLightningMaterialDL "__OTR__objects/object_boss_hakugin/gGohtLightningMaterialDL"
static const ALIGN_ASSET(2) char gGohtLightningMaterialDL[] = dgGohtLightningMaterialDL;

#define dgGohtLightningModelDL "__OTR__objects/object_boss_hakugin/gGohtLightningModelDL"
static const ALIGN_ASSET(2) char gGohtLightningModelDL[] = dgGohtLightningModelDL;

#define dgGohtLightningTex "__OTR__objects/object_boss_hakugin/gGohtLightningTex"
static const ALIGN_ASSET(2) char gGohtLightningTex[] = dgGohtLightningTex;

#define dgGohtUnusedZeroesBlob "__OTR__objects/object_boss_hakugin/gGohtUnusedZeroesBlob"
static const ALIGN_ASSET(2) char gGohtUnusedZeroesBlob[] = dgGohtUnusedZeroesBlob;

#define dgGohtLightOrbTex "__OTR__objects/object_boss_hakugin/gGohtLightOrbTex"
static const ALIGN_ASSET(2) char gGohtLightOrbTex[] = dgGohtLightOrbTex;

#define dgGohtLightOrbMaterialDL "__OTR__objects/object_boss_hakugin/gGohtLightOrbMaterialDL"
static const ALIGN_ASSET(2) char gGohtLightOrbMaterialDL[] = dgGohtLightOrbMaterialDL;

#define dgGohtLightOrbModelDL "__OTR__objects/object_boss_hakugin/gGohtLightOrbModelDL"
static const ALIGN_ASSET(2) char gGohtLightOrbModelDL[] = dgGohtLightOrbModelDL;

#define dgGohtSkel "__OTR__objects/object_boss_hakugin/gGohtSkel"
static const ALIGN_ASSET(2) char gGohtSkel[] = dgGohtSkel;

#define dgGohtFallDownAnim "__OTR__objects/object_boss_hakugin/gGohtFallDownAnim"
static const ALIGN_ASSET(2) char gGohtFallDownAnim[] = dgGohtFallDownAnim;

#define dgGohtRunAnim "__OTR__objects/object_boss_hakugin/gGohtRunAnim"
static const ALIGN_ASSET(2) char gGohtRunAnim[] = dgGohtRunAnim;

#define dgGohtGetUpFromSideAnim "__OTR__objects/object_boss_hakugin/gGohtGetUpFromSideAnim"
static const ALIGN_ASSET(2) char gGohtGetUpFromSideAnim[] = dgGohtGetUpFromSideAnim;

#define dgGohtTitleCardTex "__OTR__objects/object_boss_hakugin/gGohtTitleCardTex"
static const ALIGN_ASSET(2) char gGohtTitleCardTex[] = dgGohtTitleCardTex;

typedef enum GohtLimb {
    /* 0x00 */ GOHT_LIMB_NONE,
    /* 0x01 */ GOHT_LIMB_ROOT,
    /* 0x02 */ GOHT_LIMB_PELVIS,
    /* 0x03 */ GOHT_LIMB_THORAX_ROOT,
    /* 0x04 */ GOHT_LIMB_THORAX_WRAPPER,
    /* 0x05 */ GOHT_LIMB_FRONT_RIGHT_LEG_ROOT,
    /* 0x06 */ GOHT_LIMB_FRONT_RIGHT_UPPER_LEG,
    /* 0x07 */ GOHT_LIMB_FRONT_RIGHT_LOWER_LEG_ROOT,
    /* 0x08 */ GOHT_LIMB_FRONT_RIGHT_LOWER_LEG,
    /* 0x09 */ GOHT_LIMB_FRONT_RIGHT_HOOF,
    /* 0x0A */ GOHT_LIMB_FRONT_LEFT_LEG_ROOT,
    /* 0x0B */ GOHT_LIMB_FRONT_LEFT_UPPER_LEG,
    /* 0x0C */ GOHT_LIMB_FRONT_LEFT_LOWER_LEG_ROOT,
    /* 0x0D */ GOHT_LIMB_FRONT_LEFT_LOWER_LEG,
    /* 0x0E */ GOHT_LIMB_FRONT_LEFT_HOOF,
    /* 0x0F */ GOHT_LIMB_THORAX,
    /* 0x10 */ GOHT_LIMB_HEAD,
    /* 0x11 */ GOHT_LIMB_JAW_ROOT,
    /* 0x12 */ GOHT_LIMB_JAW,
    /* 0x13 */ GOHT_LIMB_BACK_RIGHT_LEG_ROOT,
    /* 0x14 */ GOHT_LIMB_BACK_RIGHT_LEG_WRAPPER,
    /* 0x15 */ GOHT_LIMB_BACK_RIGHT_THIGH,
    /* 0x16 */ GOHT_LIMB_BACK_RIGHT_SHIN,
    /* 0x17 */ GOHT_LIMB_BACK_RIGHT_PASTERN_ROOT,
    /* 0x18 */ GOHT_LIMB_BACK_RIGHT_PASTERN,
    /* 0x19 */ GOHT_LIMB_BACK_RIGHT_HOOF,
    /* 0x1A */ GOHT_LIMB_BACK_LEFT_LEG_ROOT,
    /* 0x1B */ GOHT_LIMB_BACK_LEFT_LEG_WRAPPER,
    /* 0x1C */ GOHT_LIMB_BACK_LEFT_THIGH,
    /* 0x1D */ GOHT_LIMB_BACK_LEFT_SHIN,
    /* 0x1E */ GOHT_LIMB_BACK_LEFT_PASTERN_ROOT,
    /* 0x1F */ GOHT_LIMB_BACK_LEFT_PASTERN,
    /* 0x20 */ GOHT_LIMB_BACK_LEFT_HOOF,
    /* 0x21 */ GOHT_LIMB_MAX
} GohtLimb;

#endif // OBJECTS_OBJECT_BOSS_HAKUGIN_H
