#pragma once

#include "versions.h"

enum MsgIndex_ {
    // BMGGroup_maingame
    MsgIndex_ViewTrain,
    MsgIndex_GetItemNothing,
    MsgIndex_GetItemNormalShield,
    MsgIndex_GetItemBombBag,
    MsgIndex_Empty_04,
    MsgIndex_GetItemSmallKey,
    MsgIndex_Empty_06,
    MsgIndex_GetItemGreenRupee,
    MsgIndex_GetItemBlueRupee,
    MsgIndex_GetItemRedRupee,
    MsgIndex_GetItemBigGreenRupee,
    MsgIndex_GetItemBigRedRupee,
    MsgIndex_GetItemBigGoldRupee,
    MsgIndex_GetItemForceGem_18,
    MsgIndex_GetItemForceGem_19,
    MsgIndex_GetItemForceGem_20,
    MsgIndex_GetItemFinalTrack,
    MsgIndex_Empty_11,
    MsgIndex_Empty_12,
    MsgIndex_Empty_13,
    MsgIndex_Empty_14,
    MsgIndex_GetItemForceGem_35,
    MsgIndex_GetItemForceGem_36,
    MsgIndex_GetItemForceGem_37,
    MsgIndex_GetItemLetter,
    MsgIndex_GetItemHeartContainer,
    MsgIndex_GetItemMediumQuiver,
    MsgIndex_GetItemMediumBombBag,
    MsgIndex_GetItemForceGem_43,
    MsgIndex_GetItemForceGem_44,
    MsgIndex_GetItemForceGem_45,
    MsgIndex_GetItemForceGem_46,
    MsgIndex_GetItemForceGem_47,
    MsgIndex_GetItemForceGem_48,
    MsgIndex_GetItemForceGem_49,
    MsgIndex_GetItemForceGem_50,
    MsgIndex_GetItemForceGem_51,
    MsgIndex_GetItemForceGem_52,
    MsgIndex_GetItemForceGem_53,
    MsgIndex_GetItemForceGem_54,
    MsgIndex_GetItemForceGem_55,
    MsgIndex_GetItemForceGem_56,
    MsgIndex_GetItemForceGem_57,
    MsgIndex_Empty_2B,
    MsgIndex_Empty_2C,
    MsgIndex_Empty_2D,
    MsgIndex_Empty_2E,
    MsgIndex_Empty_2F,
    MsgIndex_Empty_30,
    MsgIndex_GetItemTenPriceCard,
    MsgIndex_GetItemRedPotion,
    MsgIndex_GetItemPurplePotion,
    MsgIndex_GetItemYellowPotion,
    MsgIndex_GetItemDemonFossil,
    MsgIndex_GetItemStalfosSkull,
    MsgIndex_GetItemStarFragment,
    MsgIndex_GetItemBeeLarvae,
    MsgIndex_GetItemWoodHeart,
    MsgIndex_GetItemDarkPearlLoop,
    MsgIndex_GetItemWhitePearlLoop,
    MsgIndex_GetItemRutoCrown,
    MsgIndex_GetItemDragonScale,
    MsgIndex_GetItemPirateNecklace,
    MsgIndex_GetItemPalaceDish,
    MsgIndex_GetItemGoronAmber,
    MsgIndex_GetItemMysticJade,
    MsgIndex_GetItemAncientCoin,
    MsgIndex_GetItemPricelessStone,
    MsgIndex_GetItemRegalRing,
    MsgIndex_Empty_45,
    MsgIndex_Empty_46,
    MsgIndex_Empty_47,
    MsgIndex_GetItemLargeQuiver,
    MsgIndex_GetItemLargeBombBag,
    MsgIndex_Empty_4A,
    MsgIndex_Empty_4B,
    MsgIndex_Empty_4C,
    MsgIndex_Empty_4D,
    MsgIndex_GetItemScrollSpinAttack,
    MsgIndex_GetItemScrollBeam,
    MsgIndex_GetItemRabbitNet,
    MsgIndex_GetItemBeedleCard,
    MsgIndex_GetItemSilverCard,
    MsgIndex_GetItemGoldCard,
    MsgIndex_GetItemPlatinumCard,
    MsgIndex_GetItemDiamondCard,
    MsgIndex_GetItemFreebieCard,
    MsgIndex_GetItemQuintupleCard,
    MsgIndex_GetItemCarbenLetter,
#if !IS_JP
    MsgIndex_GetItemRecruitUniform2,
    MsgIndex_GetItemEngineerUniform,
#endif
    MsgIndex_Empty_5B,
    MsgIndex_Empty_5C,
    MsgIndex_ShopSell,
    MsgIndex_ShopQuit,
    MsgIndex_ShopOK,
    MsgIndex_Empty_60,
    MsgIndex_Empty_61,
    MsgIndex_Continue1,
    MsgIndex_SaveAndQuit1,
    MsgIndex_Continue2,
    MsgIndex_SaveAndQuit2,
    MsgIndex_Skip1,
    MsgIndex_Skip2,
    MsgIndex_Empty_68,
    MsgIndex_Empty_69,
    MsgIndex_Empty_6A,
    MsgIndex_Empty_6B,
    MsgIndex_Empty_6C,
    MsgIndex_Empty_6D,
    MsgIndex_MapPaintNotAllowed,
    MsgIndex_SaveAsk,
    MsgIndex_SaveProgress,
    MsgIndex_SaveDone,
    MsgIndex_CantReadSign,
    MsgIndex_Empty_73,
    MsgIndex_SaveAskQuit,
#if IS_JP
    MsgIndex_TooDarkToRead,
#endif
    MsgIndex_MiniGameQuit,
    MsgIndex_ItLooksDifferent,
    MsgIndex_NothingHappened,
    MsgIndex_AskDrinkPotion,
    MsgIndex_PlayedSongAwakening,
    MsgIndex_PlayedSongRecovery,
    MsgIndex_PlayedSongBirds,
    MsgIndex_PlayedSongLight,
    MsgIndex_PlayedSongDiscovery,
    MsgIndex_CantHealMore,
    MsgIndex_NothingToWake,
    MsgIndex_CantHealHere,
    MsgIndex_NoBirds,
    MsgIndex_NoLight,
    MsgIndex_NothingHidden,
    MsgIndex_Empty_84,
    MsgIndex_Empty_85,
    MsgIndex_Empty_86,
    MsgIndex_Empty_87,
    MsgIndex_Empty_88,
    MsgIndex_FairyHeal,
    MsgIndex_FairyHealFirstTimePart1,
    MsgIndex_FairyHealFirstTimePart2,
    MsgIndex_Undefined,
    MsgIndex_GossipStoneAskTreasures,
    MsgIndex_GossipStoneNoTreasures,
    MsgIndex_GossipStoneChoice2,
    MsgIndex_GossipStoneChoice1SaidNo,
    MsgIndex_GossipStoneChoice2SaidNo,
    MsgIndex_GossipStoneNoMoney,
    MsgIndex_GossipStonePaid,
    MsgIndex_StampStand,
    MsgIndex_StampStandNoBook,
    MsgIndex_Empty_96,
    MsgIndex_Empty_97,
    MsgIndex_ForestLand,
    MsgIndex_SnowLand,
    MsgIndex_OceanLand,
    MsgIndex_FireLand,
    MsgIndex_TowerOfSpirits,
    MsgIndex_TunnelToTheTower,
    MsgIndex_WoodedTemple,
    MsgIndex_BlizzardTemple,
    MsgIndex_MarineTemple,
    MsgIndex_MountainTemple,
    MsgIndex_DesertTemple,
    MsgIndex_PirateHideout,
    MsgIndex_HyruleCastle,
    MsgIndex_CastleTown,
    MsgIndex_Mayscore,
    MsgIndex_AnoukiVillage,
    MsgIndex_PapuziaVillage,
    MsgIndex_GoronVillage,
    MsgIndex_TradingPost,
    MsgIndex_IcySpring,
    MsgIndex_OutsetVillage,
    MsgIndex_WoodlandSanctuary,
    MsgIndex_SnowfallSanctuary,
    MsgIndex_IslandSanctuary,
    MsgIndex_ValleySanctuary,
    MsgIndex_DuneSanctuary,
    MsgIndex_BridgeWorkersHouse,

#if IS_JP
    //! TODO: add the indices from the other files so we can improve this
    // BMGGroup_dungeon
    MsgIndex_BossStagnox = 0x90,
    MsgIndex_BossFraaz,
    MsgIndex_BossCactops,
    MsgIndex_BossVulcano,
    MsgIndex_BossCapbone,

    // BMGGroup_train_extra
    MsgIndex_BossGhostTrain = 0x1A,

    // BMGGroup_dungeon
    MsgIndex_BossStaven = 0x95,
    MsgIndex_BossMalladus1,
    MsgIndex_BossMalladus2,

    MsgIndex_GoronTargetRange = 0xB2,
    MsgIndex_SnowdriftStation,
    MsgIndex_LostAtSeaStation,
    MsgIndex_DisorientationStation,
    MsgIndex_EndsOfTheEarthStation,
    MsgIndex_DarkOreMine,
    MsgIndex_RabbitHaven,
    MsgIndex_SlipperyStation,
    MsgIndex_ThreeQuestionMarks,
    MsgIndex_Floor1,
    MsgIndex_Floor2,
    MsgIndex_Floor3,
    MsgIndex_ZeldaPhantomTooFar,
#else
    MsgIndex_BossStagnox,
    MsgIndex_BossFraaz,
    MsgIndex_BossCactops,
    MsgIndex_BossVulcano,
    MsgIndex_BossCapbone,
    MsgIndex_BossGhostTrain,
    MsgIndex_BossStaven,
    MsgIndex_BossMalladus1,
    MsgIndex_BossMalladus2,
    MsgIndex_GoronTargetRange,
    MsgIndex_SnowdriftStation,
    MsgIndex_LostAtSeaStation,
    MsgIndex_DisorientationStation,
    MsgIndex_EndsOfTheEarthStation,
    MsgIndex_DarkOreMine,
    MsgIndex_RabbitHaven,
    MsgIndex_SlipperyStation,
    MsgIndex_ThreeQuestionMarks,
    MsgIndex_Floor1,
    MsgIndex_Floor2,
    MsgIndex_Floor3,
    MsgIndex_ZeldaPhantomTooFar,
#endif
};
