badguys can now have multiple hitpoints (default is 1)
[supertux.git] / src / resources.h
index d57d57b..dee4ee0 100644 (file)
 #define SUPERTUX_RESOURCES_H
 
 #include "audio/musicref.h"
-#include "gui/menu.h"
 
 using namespace SuperTux;
 
 namespace SuperTux {
 class SpriteManager;
 class SoundManager;
+class Menu;
+class Font;
+class Surface;
 }
 
+class TileManager;
+
 /* Sound files: */
 enum {
   SND_JUMP,
@@ -51,25 +55,20 @@ enum {
   SND_STOMP,
   SND_KICK,
   SND_EXPLODE,
+  SND_WARP,
+  SND_FIREWORKS,
   NUM_SOUNDS
 };
 
 extern char* soundfilenames[NUM_SOUNDS];
 
-extern Surface* img_waves[3]; 
-extern Surface* img_water;
-extern Surface* img_pole;
-extern Surface* img_poletop;
-extern Surface* img_flag[2];
-extern Surface* img_cloud[2][4];
-
 extern Surface* img_super_bkgd;
 
 extern MusicRef herring_song;
 extern MusicRef level_end_song;
 
 extern SpriteManager* sprite_manager;
-extern SoundManager* sound_manager;
+extern TileManager* tile_manager;
 
 extern Menu* contrib_menu;
 extern Menu* contrib_subset_menu;
@@ -82,10 +81,22 @@ extern Menu* highscore_menu;
 extern Menu* load_game_menu;
 extern Menu* save_game_menu;
 
+extern Font* gold_text;
+extern Font* white_text;
+extern Font* blue_text;
+extern Font* gray_text;
+extern Font* white_small_text;
+extern Font* white_big_text;
+extern Font* yellow_nums;
+
+/** maps a virtual resource path to a real path (ie. levels/bla is mapped to
+ * $DATADIR/levels/bla or $HOME/.supertux/levels/bla)
+ * All paths inside the game should be handled in as virtual paths and then
+ * expanded with this function just before the call to fopen or std::ifstream.
+ */
+std::string get_resource_filename(const std::string& resource);
+
 void loadshared();
 void unloadshared();
 
 #endif
-
-/* EOF */
-