#ifndef ENHANCEMENTS_H
#define ENHANCEMENTS_H

enum AlwaysWinDoggyRaceOptions {
    ALWAYS_WIN_DOGGY_RACE_OFF,
    ALWAYS_WIN_DOGGY_RACE_MASKOFTRUTH,
    ALWAYS_WIN_DOGGY_RACE_ALWAYS,
};

enum TimeStopOptions {
    TIME_STOP_OFF,
    TIME_STOP_TEMPLES,
    TIME_STOP_TEMPLES_DUNGEONS,
};

enum ClockTypeOptions {
    CLOCK_TYPE_ORIGINAL,
    CLOCK_TYPE_3DS,
    CLOCK_TYPE_TEXT_BASED,
};

enum CremiaRewardsOptions {
    CREMIA_REWARD_RANDOM,
    CREMIA_REWARD_ALWAYS_HUG,
    CREMIA_REWARD_ALWAYS_RUPEE,
};

enum AmmoBuybackOptions {
    AMMO_BUYBACK_VANILLA,
    AMMO_BUYBACK_FULL_PRICE,
    AMMO_BUYBACK_HALF_PRICE,
};

enum GibdoTradeSequenceOptions {
    GIBDO_TRADE_SEQUENCE_VANILLA,
    GIBDO_TRADE_SEQUENCE_MM3D,
    GIBDO_TRADE_SEQUENCE_NO_TRADE,
};

enum DekuGuardSearchBallsOptions {
    DEKU_GUARD_SEARCH_BALLS_NIGHT_ONLY,
    DEKU_GUARD_SEARCH_BALLS_NEVER,
    DEKU_GUARD_SEARCH_BALLS_ALWAYS,
};

enum HiddenGrottosVisibilityOptions {
    HIDDEN_GROTTOS_VISIBLITY_OFF,
    HIDDEN_GROTTOS_VISIBLITY_WEAR_MASK_OF_TRUTH,
    HIDDEN_GROTTOS_VISIBLITY_HAVE_MASK_OF_TRUTH,
    HIDDEN_GROTTOS_VISIBLITY_ALWAYS,
};

enum TimerDisplayOptions {
    TIMER_DISPLAY_NONE,
    TIMER_DISPLAY_RTA,
    TIMER_DISPLAY_IGT,
};

enum GoronRaceDifficultyOptions {
    GORON_RACE_DIFFICULTY_VANILLA,
    GORON_RACE_DIFFICULTY_BALANCED,
    GORON_RACE_DIFFICULTY_SKIP,
};

enum MirroredWorldModeOptions {
    MIRRORED_WORLD_OFF,
    MIRRORED_WORLD_ALWAYS,
    MIRRORED_WORLD_RANDOM,
    MIRRORED_WORLD_RANDOM_SEEDED,
    MIRRORED_WORLD_DUNGEONS_TEMPLES,
    MIRRORED_WORLD_DUNGEONS_SPIDERS,
    MIRRORED_WORLD_DUNGEONS_ALL,
    MIRRORED_WORLD_DUNGEONS_RANDOM,
    MIRRORED_WORLD_DUNGEONS_RANDOM_SEEDED,
};

#endif // ENHANCEMENTS_H
