X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Fresources.cpp;h=a39da2af3b34abba22a3e25c85f8b768e44b9b03;hb=546364c9567ef212ea9276201facf73f5ada696a;hp=1664f20e8b83a9a09865a9516138dbc75f305eb3;hpb=c1f63ef63bb685e2379e280684049bf9bc733dd4;p=supertux.git diff --git a/src/resources.cpp b/src/resources.cpp index 1664f20e8..a39da2af3 100644 --- a/src/resources.cpp +++ b/src/resources.cpp @@ -18,17 +18,18 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #include "app/globals.h" +#include "special/sprite_manager.h" +#include "audio/sound_manager.h" +#include "app/setup.h" +#include "gui/button.h" #include "scene.h" #include "player.h" #include "badguy.h" #include "gameobjs.h" #include "special.h" #include "resources.h" -#include "special/sprite_manager.h" -#include "audio/sound_manager.h" -#include "app/setup.h" #include "door.h" -#include "gui/button.h" +#include "badguy_specs.h" Surface* img_waves[3]; Surface* img_water; @@ -74,7 +75,9 @@ char * soundfilenames[NUM_SOUNDS] = { "/sounds/lifeup.wav", "/sounds/stomp.wav", "/sounds/kick.wav", - "/sounds/explosion.wav" + "/sounds/explosion.wav", + "/sounds/warp.wav", + "/sounds/fireworks.wav" }; @@ -114,11 +117,11 @@ void loadshared() int i; - sprite_manager = new SpriteManager(datadir + "/supertux.strf"); + sprite_manager = new SpriteManager(datadir + "/images/supertux.strf"); /* Tuxes: */ smalltux_star = sprite_manager->load("smalltux-star"); - largetux_star = sprite_manager->load("largetux-star"); + bigtux_star = sprite_manager->load("bigtux-star"); smalltux_gameover = sprite_manager->load("smalltux-gameover"); char img_name[1024]; @@ -131,63 +134,32 @@ void loadshared() growingtux_right[i] = new Surface(img_name, true); } - smalltux.stand_left = sprite_manager->load("smalltux-stand-left"); - smalltux.stand_right = sprite_manager->load("smalltux-stand-right"); - smalltux.walk_left = sprite_manager->load("smalltux-walk-left"); - smalltux.walk_right = sprite_manager->load("smalltux-walk-right"); - smalltux.jump_left = sprite_manager->load("smalltux-jump-left"); - smalltux.jump_right = sprite_manager->load("smalltux-jump-right"); - smalltux.kick_left = sprite_manager->load("smalltux-kick-left"); - smalltux.kick_right = sprite_manager->load("smalltux-kick-right"); - smalltux.skid_left = sprite_manager->load("smalltux-skid-left"); - smalltux.skid_right = sprite_manager->load("smalltux-skid-right"); - smalltux.grab_left = sprite_manager->load("smalltux-grab-left"); - smalltux.grab_right = sprite_manager->load("smalltux-grab-right"); - - largetux.stand_left = sprite_manager->load("largetux-stand-left"); - largetux.stand_right = sprite_manager->load("largetux-stand-right"); - largetux.walk_left = sprite_manager->load("largetux-walk-left"); - largetux.walk_right = sprite_manager->load("largetux-walk-right"); - largetux.jump_left = sprite_manager->load("largetux-jump-left"); - largetux.jump_right = sprite_manager->load("largetux-jump-right"); - largetux.kick_left = sprite_manager->load("largetux-kick-left"); - largetux.kick_right = sprite_manager->load("largetux-kick-right"); - largetux.skid_right = sprite_manager->load("largetux-skid-right"); - largetux.skid_left = sprite_manager->load("largetux-skid-left"); - largetux.grab_left = sprite_manager->load("largetux-grab-left"); - largetux.grab_right = sprite_manager->load("largetux-grab-right"); - largetux.duck_left = sprite_manager->load("largetux-duck-left"); - largetux.duck_right = sprite_manager->load("largetux-duck-right"); - - firetux.stand_left = sprite_manager->load("firetux-stand-left"); - firetux.stand_right = sprite_manager->load("firetux-stand-right"); - firetux.walk_left = sprite_manager->load("firetux-walk-left"); - firetux.walk_right = sprite_manager->load("firetux-walk-right"); - firetux.jump_left = sprite_manager->load("firetux-jump-left"); - firetux.jump_right = sprite_manager->load("firetux-jump-right"); - firetux.kick_left = sprite_manager->load("firetux-kick-left"); - firetux.kick_right = sprite_manager->load("firetux-kick-right"); - firetux.skid_right = sprite_manager->load("firetux-skid-right"); - firetux.skid_left = sprite_manager->load("firetux-skid-left"); - firetux.grab_left = sprite_manager->load("firetux-grab-left"); - firetux.grab_right = sprite_manager->load("firetux-grab-right"); - firetux.duck_left = sprite_manager->load("firetux-duck-left"); - firetux.duck_right = sprite_manager->load("firetux-duck-right"); - - icetux.stand_left = sprite_manager->load("icetux-stand-left"); - icetux.stand_right = sprite_manager->load("icetux-stand-right"); - icetux.walk_left = sprite_manager->load("icetux-walk-left"); - icetux.walk_right = sprite_manager->load("icetux-walk-right"); - icetux.jump_left = sprite_manager->load("icetux-jump-left"); - icetux.jump_right = sprite_manager->load("icetux-jump-right"); - icetux.kick_left = sprite_manager->load("icetux-kick-left"); - icetux.kick_right = sprite_manager->load("icetux-kick-right"); - icetux.skid_right = sprite_manager->load("icetux-skid-right"); - icetux.skid_left = sprite_manager->load("icetux-skid-left"); - icetux.grab_left = sprite_manager->load("icetux-grab-left"); - icetux.grab_right = sprite_manager->load("icetux-grab-right"); - icetux.duck_left = sprite_manager->load("icetux-duck-left"); - icetux.duck_right = sprite_manager->load("icetux-duck-right"); + small_tux = new TuxBodyParts(); + small_tux->head = NULL; + small_tux->body = sprite_manager->load("small-tux-body"); + small_tux->arms = sprite_manager->load("small-tux-arms"); + small_tux->feet = NULL; + + big_tux = new TuxBodyParts(); + big_tux->head = sprite_manager->load("big-tux-head"); + big_tux->body = sprite_manager->load("big-tux-body"); + big_tux->arms = sprite_manager->load("big-tux-arms"); + big_tux->feet = sprite_manager->load("big-tux-feet"); + + fire_tux = new TuxBodyParts(); + fire_tux->head = sprite_manager->load("big-fire-tux-head"); + fire_tux->body = sprite_manager->load("big-tux-body"); + fire_tux->arms = sprite_manager->load("big-tux-arms"); + fire_tux->feet = sprite_manager->load("big-tux-feet"); + + ice_tux = new TuxBodyParts(); + ice_tux->head = sprite_manager->load("big-tux-head"); + ice_tux->body = sprite_manager->load("big-tux-body"); + ice_tux->arms = sprite_manager->load("big-tux-arms"); + ice_tux->feet = sprite_manager->load("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); @@ -198,6 +170,7 @@ void loadshared() img_waves[1] = new Surface(datadir + "/images/shared/waves-1.png", true); + img_waves[2] = new Surface(datadir + "/images/shared/waves-2.png", true); @@ -244,10 +217,6 @@ void loadshared() img_cloud[1][3] = new Surface(datadir + "/images/shared/cloud-13.png", true); - - /* Bad guys: */ - load_badguy_gfx(); - /* Upgrades: */ load_special_gfx(); @@ -317,7 +286,6 @@ void unloadshared(void) int i; free_special_gfx(); - free_badguy_gfx(); delete img_water; for (i = 0; i < 3; i++) @@ -338,6 +306,11 @@ void unloadshared(void) delete tux_life; + delete small_tux; + delete big_tux; + delete fire_tux; + delete ice_tux; + for (int i = 0; i < GROWING_FRAMES; i++) { delete growingtux_left[i];