X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Fresources.cpp;h=e57ee37bf0145654c03fe02d9fe15b0387eb6dd7;hb=62ff7f7776875e9389d10ae2e7b6348e9e5cb9c7;hp=d6e73647f525f9e8dacdb5a612bb0f33b7d443fb;hpb=d46c78c842ab4090a3f46e560c891234167f124b;p=supertux.git diff --git a/src/resources.cpp b/src/resources.cpp index d6e73647f..e57ee37bf 100644 --- a/src/resources.cpp +++ b/src/resources.cpp @@ -25,11 +25,10 @@ #include "gui/menu.h" #include "gui/button.h" #include "scene.h" -#include "player.h" -#include "badguy.h" -#include "gameobjs.h" #include "resources.h" -#include "badguy_specs.h" +#include "tile_manager.h" +#include "object/gameobjs.h" +#include "object/player.h" Surface* img_waves[3]; Surface* img_water; @@ -54,6 +53,7 @@ MusicRef herring_song; MusicRef level_end_song; SpriteManager* sprite_manager = 0; +TileManager* tile_manager = 0; char * soundfilenames[NUM_SOUNDS] = { "/sounds/jump.wav", @@ -116,7 +116,9 @@ void loadshared() int i; - sprite_manager = new SpriteManager(datadir + "/images/supertux.strf"); + sprite_manager = new SpriteManager( + get_resource_filename("/images/supertux.strf")); + tile_manager = new TileManager("/images/tilesets/supertux.stgt"); /* Tuxes: */ smalltux_star = sprite_manager->create("smalltux-star"); @@ -157,9 +159,6 @@ void loadshared() ice_tux->arms = sprite_manager->create("big-tux-arms"); ice_tux->feet = sprite_manager->create("big-tux-feet"); - /* Load Bad Guys resources */ - badguyspecs_manager = new BadGuySpecsManager(datadir + "/badguys.strf"); - /* Water: */ img_water = new Surface(datadir + "/images/shared/water.png", false); @@ -254,7 +253,7 @@ void loadshared() /* Herring song */ herring_song = SoundManager::get - ()->load_music(datadir + "/music/SALCON.MOD"); + ()->load_music(datadir + "/music/salcon.mod"); level_end_song = SoundManager::get ()->load_music(datadir + "/music/leveldone.mod"); } @@ -307,5 +306,20 @@ void unloadshared(void) delete sprite_manager; sprite_manager = 0; + delete tile_manager; + tile_manager = 0; } +std::string get_resource_filename(const std::string& resource) +{ + std::string filepath = st_dir + resource; + if(access(filepath.c_str(), R_OK) == 0) + return filepath; + + filepath = datadir + resource; + if(access(filepath.c_str(), R_OK) == 0) + return filepath; + + std::cerr << "Couldn't find resource: '" << resource << "'." << std::endl; + return ""; +}