diff options
Diffstat (limited to 'src/main.cpp')
-rw-r--r-- | src/main.cpp | 111 |
1 files changed, 2 insertions, 109 deletions
diff --git a/src/main.cpp b/src/main.cpp index 40d7bc676..de2b1a7a1 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -20,51 +20,7 @@ * along with this program. If not, see <http://www.gnu.org/licenses/>. */ - -#include "main.h" - -#include "client.h" -#include "commandline.h" -#include "settings.h" - -#include "utils/delete2.h" -#ifdef ANDROID -#include "utils/mkdir.h" -#endif -#include "utils/physfscheckutils.h" -#include "utils/physfsrwops.h" -#include "utils/process.h" -#include "utils/xml.h" - -#ifdef UNITTESTS -#include <gtest/gtest.h> -#endif - -#ifdef __MINGW32__ -#include <windows.h> -#endif - -#include <getopt.h> -#include <iostream> -#include <unistd.h> - -#include <SDL_image.h> -#include <SDL_mixer.h> -#include <SDL_version.h> - -#define SDL_IMAGE_COMPILEDVERSION \ - SDL_VERSIONNUM(SDL_IMAGE_MAJOR_VERSION, \ - SDL_IMAGE_MINOR_VERSION, SDL_IMAGE_PATCHLEVEL) - -#define SDL_IMAGE_VERSION_ATLEAST(X, Y, Z) \ - (SDL_IMAGE_COMPILEDVERSION >= SDL_VERSIONNUM(X, Y, Z)) - -#define SDL_MIXER_COMPILEDVERSION \ - SDL_VERSIONNUM(SDL_MIXER_MAJOR_VERSION, \ - SDL_MIXER_MINOR_VERSION, SDL_MIXER_PATCHLEVEL) - -#define SDL_MIXER_VERSION_ATLEAST(X, Y, Z) \ - (SDL_MIXER_COMPILEDVERSION >= SDL_VERSIONNUM(X, Y, Z)) +#include "maingui.h" #ifdef UNITTESTS #define CATCH_CONFIG_MAIN @@ -72,72 +28,9 @@ #endif #include "debug.h" -char *selfName = nullptr; - -#ifdef WIN32 -extern "C" char const *_nl_locale_name_default(void); -#endif - #ifndef UNITTESTS -// main for normal game usage int main(int argc, char *argv[]) { -#if defined(__MINGW32__) - // load mingw crash handler. Won't fail if dll is not present. - // may load libray from current dir, it may not same as program dir - LoadLibrary("exchndl.dll"); -#endif - - selfName = argv[0]; - - parseOptions(argc, argv); - - std::ios::sync_with_stdio(false); - -#ifdef ANDROID - mkdir_r(getSdStoragePath().c_str()); -#endif - - PhysFs::init(argv[0]); - XML::initXML(); -#if SDL_IMAGE_VERSION_ATLEAST(1, 2, 11) - IMG_Init(IMG_INIT_PNG); -#endif -#if SDL_MIXER_VERSION_ATLEAST(1, 2, 11) - Mix_Init(MIX_INIT_OGG); -#endif - -#ifdef WIN32 - SetCurrentDirectory(PhysFs::getBaseDir()); -#endif - setPriority(true); - client = new Client; - int ret = 0; - if (!settings.options.testMode) - { - client->gameInit(); - ret = client->gameExec(); - } - else - { - client->testsInit(); - ret = client->testsExec(); - } - delete2(client); - -#if SDL_MIXER_VERSION_ATLEAST(1, 2, 11) - Mix_Quit(); -#endif -#if SDL_IMAGE_VERSION_ATLEAST(1, 2, 11) - IMG_Quit(); -#endif - -#ifdef DUMP_LEAKED_RESOURCES - reportRWops(); -#endif -#ifdef DEBUG_PHYSFS - reportPhysfsLeaks(); -#endif - return ret; + return mainGui(argc, argv); } #endif |