#ifndef GUARD_CONFIG_H #define GUARD_CONFIG_H // In the Generation 3 games, Asserts were used in various debug builds. // Ruby/Sapphire and Emerald do not have these asserts while Fire Red // still has them in the ROM. This is because the developers forgot // to define NDEBUG before release, however this has been changed as // Ruby's actual debug build does not use the AGBPrint features. #define NDEBUG // To enable printf debugging, comment out "#define NDEBUG". This allows // the various AGBPrint functions to be used. (See include/gba/isagbprint.h). // See below for enabling different pretty printing versions. #ifndef NDEBUG #define PRETTY_PRINT_MINI_PRINTF (0) #define PRETTY_PRINT_LIBC (1) #define LOG_HANDLER_AGB_PRINT (0) #define LOG_HANDLER_NOCASH_PRINT (1) #define LOG_HANDLER_MGBA_PRINT (2) // Use this switch to choose a handler for pretty printing. // NOTE: mini_printf supports a custom pretty printing formatter to display preproc encoded strings. (%S) // some libc distributions (especially dkp arm-libc) will fail to link pretty printing. #define PRETTY_PRINT_HANDLER (PRETTY_PRINT_MINI_PRINTF) // Use this switch to choose a handler for printf output. // NOTE: These will only work on the respective emulators and should not be used in a productive environment. // Some emulators or real hardware might (and is allowed to) crash if they are used. // AGB_PRINT is supported on respective debug units. #define LOG_HANDLER (LOG_HANDLER_MGBA_PRINT) #endif #define ENGLISH #ifdef ENGLISH #define UNITS_IMPERIAL #define CHAR_DEC_SEPARATOR CHAR_PERIOD // Period is used as a decimal separator only in the UK and the US. #else #define UNITS_METRIC #define CHAR_DEC_SEPARATOR CHAR_COMMA #endif // Uncomment to fix some identified minor bugs #define BUGFIX // Various undefined behavior bugs may or may not prevent compilation with // newer compilers. So always fix them when using a modern compiler. #if MODERN || defined(BUGFIX) #ifndef UBFIX #define UBFIX #endif #endif // Compatibility definition for other projects to detect pokeemerald-expansion #define RHH_EXPANSION // Legacy branch-based defines included for backwards compatibility #define BATTLE_ENGINE #define POKEMON_EXPANSION #define ITEM_EXPANSION // Generation constants used in configs to define behavior #define GEN_1 0 #define GEN_2 1 #define GEN_3 2 #define GEN_4 3 #define GEN_5 4 #define GEN_6 5 #define GEN_7 6 #define GEN_8 7 #define GEN_9 8 #define GEN_LATEST GEN_9 // General settings #define EXPANSION_INTRO TRUE // If TRUE, a custom RHH intro will play after the vanilla copyright screen. #define POKEDEX_PLUS_HGSS FALSE // If TRUE, enables the custom HGSS style Pokedex. #define SUMMARY_SCREEN_NATURE_COLORS TRUE // If TRUE, nature-based stat boosts and reductions will be red and blue in the summary screen. #define HQ_RANDOM TRUE // If TRUE, replaces the default RNG with an implementation of SFC32 RNG. May break code that relies on RNG. #endif // GUARD_CONFIG_H