Included supertux.h stuff into it.
[supertux.git] / src / supertux.cpp
1 /*
2   supertux.c
3   
4   Super Tux
5   
6   by Bill Kendrick & Tobias Glaesser <tobi.web@gmx.de>
7   bill@newbreedsoftware.com
8   http://www.newbreedsoftware.com/supertux/
9   
10   April 11, 2000 - March 15, 2004
11 */
12
13
14 #include <sys/types.h>
15 #include <ctype.h>
16
17 #include "defines.h"
18 #include "globals.h"
19 #include "setup.h"
20 #include "intro.h"
21 #include "title.h"
22 #include "gameloop.h"
23 #include "leveleditor.h"
24 #include "screen.h"
25 #include "worldmap.h"
26 #include "resources.h"
27
28 int main(int argc, char * argv[])
29 {
30   bool done;
31   
32   st_directory_setup();
33   parseargs(argc, argv);
34   
35   st_audio_setup();
36   st_video_setup();
37   st_joystick_setup();
38   st_general_setup();
39   st_menu();
40   loadshared();
41
42   if (launch_worldmap_mode)
43     {
44       worldmap_run();
45     }
46   else if (level_startup_file)
47     {
48       GameSession session(level_startup_file, 1, ST_GL_LOAD_LEVEL_FILE);
49       session.run();
50     }
51   else
52     {  
53       done = false;
54       while (!done)
55         {
56           done = title();
57         }
58     }
59   
60   clearscreen(0, 0, 0);
61   updatescreen();
62
63   unloadshared();
64   st_shutdown();
65   
66   return 0;
67 }