X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Fsupertux.cpp;h=c29d7f3b7ca9c122832469720245ddf21c964c33;hb=935c2f6a2a27248de63fba86b74a724675761487;hp=7c46b74942a6b1d7ea62b85df472b68adfa9451c;hpb=4768775a296265eea1afae5cf971b1706fc049fd;p=supertux.git diff --git a/src/supertux.cpp b/src/supertux.cpp index 7c46b7494..c29d7f3b7 100644 --- a/src/supertux.cpp +++ b/src/supertux.cpp @@ -23,38 +23,44 @@ #include #include -#include "exceptions.h" +#include "utils/exceptions.h" #include "defines.h" -#include "globals.h" -#include "setup.h" +#include "app/globals.h" +#include "app/setup.h" #include "intro.h" #include "title.h" #include "gameloop.h" #include "leveleditor.h" -#include "screen/screen.h" +#include "video/screen.h" #include "worldmap.h" #include "resources.h" -#include "screen/surface.h" +#include "video/surface.h" #include "tile_manager.h" -#include "gettext.h" +#include "app/gettext.h" +#include "player.h" +#include "misc.h" +#include "utils/configfile.h" int main(int argc, char * argv[]) { #ifndef DEBUG try { #endif + config = new MyConfig; setlocale(LC_ALL, ""); bindtextdomain(PACKAGE, LOCALEDIR); textdomain(PACKAGE); bind_textdomain_codeset(PACKAGE, "ISO-8859-1"); - - st_directory_setup(); - parseargs(argc, argv); + + Setup::info(PACKAGE_NAME,PACKAGE,PACKAGE_VERSION); + + Setup::directories(); + Setup::parseargs(argc, argv); - st_audio_setup(); - st_video_setup(); - st_joystick_setup(); - st_general_setup(); + Setup::audio(); + Setup::video(SCREEN_W,SCREEN_H); + Setup::joystick(); + Setup::general(); st_menu(); loadshared(); @@ -67,6 +73,18 @@ int main(int argc, char * argv[]) else leveleditor.run(); } + else if (launch_worldmap_mode && level_startup_file) + { + // hack to make it possible for someone to give an absolute path + std::string str(level_startup_file); + unsigned int i = str.find_last_of("/", str.size()); + if(i != std::string::npos) + str.erase(0, i+1); + + WorldMapNS::WorldMap worldmap; + worldmap.loadmap(str); + worldmap.display(); + } else if (level_startup_file) { GameSession session(level_startup_file, ST_GL_LOAD_LEVEL_FILE); @@ -81,12 +99,13 @@ int main(int argc, char * argv[]) //SDL_Flip(screen); unloadshared(); - st_general_free(); + Setup::general_free(); + st_menu_free(); TileManager::destroy_instance(); #ifdef DEBUG Surface::debug_check(); #endif - st_shutdown(); + Termination::shutdown(); #ifndef DEBUG // we want to see the backtrace in gdb when in debug mode } catch (SuperTuxException &e)