-/*
- globals.h
-
- Super Tux - Global Variabls
-
- by Bill Kendrick
- bill@newbreedsoftware.com
- http://www.newbreedsoftware.com/supertux/
-
- April 11, 2000 - April 21, 2000
-*/
-
+// $Id$
+//
+// SuperTux
+// Copyright (C) 2004 Bill Kendrick <bill@newbreedsoftware.com>
+// Tobias Glaesser <tobi.web@gmx.de>
+// Ingo Ruhnke <grumbel@gmx.de>
+//
+// This program is free software; you can redistribute it and/or
+// modify it under the terms of the GNU General Public License
+// as published by the Free Software Foundation; either version 2
+// of the License, or (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#ifndef SUPERTUX_GLOBALS_H
#define SUPERTUX_GLOBALS_H
+#include <string>
#include <SDL.h>
+#include "screen/font.h"
+#include "menu.h"
+#include "mousecursor.h"
+
+extern std::string datadir;
+
+struct JoystickKeymap
+{
+ int a_button;
+ int b_button;
+ int start_button;
-SDL_Surface * screen;
-SDL_Surface * letters_black, * letters_gold, * letters_blue, * letters_red;
+ int x_axis;
+ int y_axis;
+
+ int dead_zone;
+
+ JoystickKeymap();
+};
+
+extern JoystickKeymap joystick_keymap;
-int use_joystick, use_fullscreen;
+extern SDL_Surface * screen;
+extern Font* black_text;
+extern Font* gold_text;
+extern Font* silver_text;
+extern Font* white_text;
+extern Font* white_small_text;
+extern Font* white_big_text;
+extern Font* blue_text;
+extern Font* red_text;
+extern Font* green_text;
+extern Font* yellow_nums;
-int game_started;
+extern MouseCursor * mouse_cursor;
+
+extern bool use_gl;
+extern bool use_joystick;
+extern bool use_fullscreen;
+extern bool debug_mode;
+extern bool show_fps;
+
+/** The number of the joystick that will be use in the game */
+extern int joystick_num;
+extern char* level_startup_file;
+extern bool launch_leveleditor_mode;
/* SuperTux directory ($HOME/.supertux) and save directory($HOME/.supertux/save) */
-char *st_dir, *st_save_dir;
+extern char* st_dir;
+extern char* st_save_dir;
+
+extern float game_speed;
+extern SDL_Joystick * js;
-#ifdef JOY_YES
-SDL_Joystick * js;
-#endif
+int wait_for_event(SDL_Event& event,unsigned int min_delay = 0, unsigned int max_delay = 0, bool empty_events = false);
#endif /* SUPERTUX_GLOBALS_H */