Reorganize config.h

This commit is contained in:
Sergeanur 2021-07-12 03:15:41 +03:00
parent 3515363df5
commit b4364c3672
2 changed files with 51 additions and 132 deletions

View File

@ -16,7 +16,7 @@ jobs:
strategy: strategy:
matrix: matrix:
platform: [win-amd64-librw_d3d9-oal, win-amd64-librw_gl3_glfw-oal] platform: [win-amd64-librw_d3d9-oal, win-amd64-librw_gl3_glfw-oal]
buildtype: [Debug, Release, Vanilla] buildtype: [Debug, Release]
steps: steps:
- name: Add msbuild to PATH - name: Add msbuild to PATH
uses: microsoft/setup-msbuild@v1.0.2 uses: microsoft/setup-msbuild@v1.0.2

View File

@ -1,7 +1,9 @@
#pragma once #pragma once
// disables (most) stuff that wasn't in original gta3.exe - check section at the bottom of this file // disables (most) stuff that wasn't in original gta3.exe
//#define VANILLA_DEFINES #ifdef __MWERKS__
#define VANILLA_DEFINES
#endif
enum Config { enum Config {
NUMPLAYERS = 1, // 4 on PS2 NUMPLAYERS = 1, // 4 on PS2
@ -11,7 +13,7 @@ enum Config {
MAX_CDCHANNELS = 5, MAX_CDCHANNELS = 5,
MODELINFOSIZE = 5500, // 3150 on PS2 MODELINFOSIZE = 5500, // 3150 on PS2
#if defined __MWERKS__ || defined VANILLA_DEFINES #ifdef VANILLA_DEFINES
TXDSTORESIZE = 850, TXDSTORESIZE = 850,
#else #else
TXDSTORESIZE = 1024, // for Xbox map TXDSTORESIZE = 1024, // for Xbox map
@ -146,8 +148,30 @@ enum Config {
//#define GTA_PS2 //#define GTA_PS2
//#define GTA_XBOX //#define GTA_XBOX
// This enables things from the PS2 version on PC // Version defines
#define GTA_PS2_STUFF #define GTA3_PS2_140 300
#define GTA3_PS2_160 301
#define GTA3_PC_10 310
#define GTA3_PC_11 311
#define GTA3_PC_STEAM 312
// TODO? maybe something for xbox or android?
#define GTA_VERSION GTA3_PC_11
#if defined GTA_PS2
# define GTA_PS2_STUFF
# define RANDOMSPLASH
# define USE_CUSTOM_ALLOCATOR
# define VU_COLLISION
# define ANIM_COMPRESSION
# define PS2_MENU
#elif defined GTA_PC
# define PC_PLAYER_CONTROLS // mouse player/cam mode
# define GTA_REPLAY
# define GTA_SCENE_EDIT
# define PC_MENU
#elif defined GTA_XBOX
#endif
// This is enabled for all released games. // This is enabled for all released games.
// any debug stuff that isn't left in any game is not in FINAL // any debug stuff that isn't left in any game is not in FINAL
@ -166,19 +190,25 @@ enum Config {
#define FINAL #define FINAL
#endif #endif
// Version defines // these are placed here to work with VANILLA_DEFINES for compatibility
#define GTA3_PS2_140 300 #define NO_CDCHECK // skip audio CD check
#define GTA3_PS2_160 301 #define DEFAULT_NATIVE_RESOLUTION // Set default video mode to your native resolution (fixes Windows 10 launch)
#define GTA3_PC_10 310
#define GTA3_PC_11 311
#define GTA3_PC_STEAM 312
// TODO? maybe something for xbox or android?
#define GTA_VERSION GTA3_PC_11 #ifdef VANILLA_DEFINES
#define FINAL
#define MASTER
//#define USE_MY_DOCUMENTS
#define THIS_IS_STUPID
#define PC_PARTICLE
#define DONT_FIX_REPLAY_BUGS
#define USE_TXD_CDIMAGE // generate and load textures from txd.img
//#define USE_TEXTURE_POOL // not possible because R* used custom RW33
#else
// This enables things from the PS2 version on PC
#define GTA_PS2_STUFF
// quality of life fixes that should also be in FINAL // quality of life fixes that should also be in FINAL
#define NASTY_GAME // nasty game for all languages #define NASTY_GAME // nasty game for all languages
#define NO_CDCHECK
// those infamous texts // those infamous texts
#define DRAW_GAME_VERSION_TEXT #define DRAW_GAME_VERSION_TEXT
@ -194,22 +224,10 @@ enum Config {
//#define COMPRESSED_COL_VECTORS // use compressed vectors for collision vertices //#define COMPRESSED_COL_VECTORS // use compressed vectors for collision vertices
//#define ANIM_COMPRESSION // only keep most recently used anims uncompressed //#define ANIM_COMPRESSION // only keep most recently used anims uncompressed
#if defined GTA_PS2 #if defined GTA_PC && defined GTA_PS2_STUFF
# define GTA_PS2_STUFF
# define RANDOMSPLASH
# define USE_CUSTOM_ALLOCATOR
# define VU_COLLISION
# define ANIM_COMPRESSION
#elif defined GTA_PC
# ifdef GTA_PS2_STUFF
# define USE_PS2_RAND # define USE_PS2_RAND
# define RANDOMSPLASH // use random splash as on PS2 # define RANDOMSPLASH // use random splash as on PS2
# define PS2_MATFX # define PS2_MATFX
# endif
# define PC_PLAYER_CONTROLS // mouse player/cam mode
# define GTA_REPLAY
# define GTA_SCENE_EDIT
#elif defined GTA_XBOX
#endif #endif
#ifdef VU_COLLISION #ifdef VU_COLLISION
@ -249,7 +267,7 @@ enum Config {
#define ASCII_STRCMP // use faster ascii str comparisons #define ASCII_STRCMP // use faster ascii str comparisons
#if !defined _WIN32 || defined __MWERKS__ || defined __MINGW32__ || defined VANILLA_DEFINES #if !defined _WIN32 || defined __MINGW32__
#undef ASCII_STRCMP #undef ASCII_STRCMP
#endif #endif
@ -439,103 +457,4 @@ enum Config {
#undef PEDS_REPORT_CRIMES_ON_PHONE #undef PEDS_REPORT_CRIMES_ON_PHONE
#endif #endif
// ------- #endif // VANILLA_DEFINES
#if defined __MWERKS__ || defined VANILLA_DEFINES
#define FINAL
#undef CHATTYSPLASH
#undef TIMEBARS
//#define USE_MY_DOCUMENTS
#define MASTER
#undef VALIDATE_SAVE_SIZE
#undef NO_MOVIES
#undef DEBUGMENU
//#undef NASTY_GAME
//#undef NO_CDCHECK
#undef DRAW_GAME_VERSION_TEXT
#undef DRAW_MENU_VERSION_TEXT
#undef GTA_PS2_STUFF
#undef USE_PS2_RAND
#undef RANDOMSPLASH
#undef PS2_MATFX
#undef FIX_BUGS
#define THIS_IS_STUPID
#undef MORE_LANGUAGES
#undef COMPATIBLE_SAVES
#undef FIX_INCOMPATIBLE_SAVES
#undef LOAD_INI_SETTINGS
#undef ASPECT_RATIO_SCALE
#undef PROPER_SCALING
//#undef DEFAULT_NATIVE_RESOLUTION
#undef PS2_ALPHA_TEST
#undef IMPROVED_VIDEOMODE
#undef DISABLE_LOADING_SCREEN
#undef DISABLE_VSYNC_ON_TEXTURE_CONVERSION
#undef ANISOTROPIC_FILTERING
//#define USE_TEXTURE_POOL // not possible because R* used custom RW33
#undef EXTENDED_COLOURFILTER
#undef EXTENDED_PIPELINES
#undef SCREEN_DROPLETS
#undef NEW_RENDERER
#undef FIX_SPRITES
#define PC_PARTICLE
#undef XINPUT
#undef DETECT_PAD_INPUT_SWITCH
#undef KANGAROO_CHEAT
#undef ALLCARSHELI_CHEAT
#undef ALT_DODO_CHEAT
#undef REGISTER_START_BUTTON
#undef BIND_VEHICLE_FIREWEAPON
#undef BUTTON_ICONS
#undef HUD_ENHANCEMENTS
#undef TRIANGULAR_BLIPS
#undef FIX_RADAR
#undef RADIO_OFF_TEXT
#undef MENU_MAP
#undef GAMEPAD_MENU
#undef SCROLLABLE_STATS_PAGE
#undef CUSTOM_FRONTEND_OPTIONS
#undef GRAPHICS_MENU_OPTIONS
#undef NO_ISLAND_LOADING
#undef CUTSCENE_BORDERS_SWITCH
#undef MULTISAMPLING
#undef INVERT_LOOK_FOR_PAD
#undef PED_CAR_DENSITY_SLIDERS
#undef USE_DEBUG_SCRIPT_LOADER
#undef USE_MEASUREMENTS_IN_METERS
#undef USE_PRECISE_MEASUREMENT_CONVERTION
#undef MISSION_REPLAY
#undef USE_ADVANCED_SCRIPT_DEBUG_OUTPUT
#undef USE_BASIC_SCRIPT_DEBUG_OUTPUT
#define DONT_FIX_REPLAY_BUGS
#undef EXPLODING_AIRTRAIN
#undef CAMERA_PICKUP
#undef PED_SKIN
#undef ANIMATE_PED_COL_MODEL
#undef CANCELLABLE_CAR_ENTER
#undef IMPROVED_CAMERA
#undef FREE_CAM
#undef RADIO_SCROLL_TO_PREV_STATION
#undef AUDIO_CACHE
#undef PS2_AUDIO_CHANNELS
#undef PAUSE_RADIO_IN_FRONTEND
#undef MULTITHREADED_AUDIO
#undef BIG_IMG
#endif