[Super-tux-commit] supertux/src sound.cpp,1.15,1.15.2.1 sound.h,1.28,1.28.2.1 worldmap.cpp,1.68.2.13
Brought to you by:
wkendrick
From: Ricardo C. <rm...@us...> - 2004-08-10 22:50:50
|
Update of /cvsroot/super-tux/supertux/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19700/src Modified Files: Tag: supertux_0_1_1_branch sound.cpp sound.h worldmap.cpp worldmap.h Log Message: Added warp sound and removed necessity of the boolean. Marek, should the teleport messages be shown for a period of time, like the passive ones, or what? Index: sound.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/Attic/sound.cpp,v retrieving revision 1.15 retrieving revision 1.15.2.1 diff -u -d -r1.15 -r1.15.2.1 --- sound.cpp 26 Apr 2004 12:21:22 -0000 1.15 +++ sound.cpp 10 Aug 2004 22:50:39 -0000 1.15.2.1 @@ -47,7 +47,8 @@ "/sounds/lifeup.wav", "/sounds/stomp.wav", "/sounds/kick.wav", - "/sounds/explode.wav" + "/sounds/explode.wav", + "/sounds/warp.wav" }; Index: worldmap.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/worldmap.cpp,v retrieving revision 1.68.2.13 retrieving revision 1.68.2.14 diff -u -d -r1.68.2.13 -r1.68.2.14 --- worldmap.cpp 10 Aug 2004 21:18:11 -0000 1.68.2.13 +++ worldmap.cpp 10 Aug 2004 22:50:39 -0000 1.68.2.14 @@ -312,7 +312,7 @@ } Tile* cur_tile = worldmap->at(tile_pos); - if (cur_tile->stop || (level && !level->name.empty()) || (level && level->is_teleporter)) + if (cur_tile->stop || (level && (!level->name.empty() || level->teleport_dest_x != -1))) { stop(); } @@ -474,10 +474,9 @@ level.passive_message = true; reader.read_bool("passive-message", &level.passive_message); - level.is_teleporter = false; - reader.read_bool("teleporter", &level.is_teleporter); - reader.read_int("dest_x", &level.destination_x); - reader.read_int("dest_y", &level.destination_y); + level.teleport_dest_x = level.teleport_dest_y = -1; + reader.read_int("dest_x", &level.teleport_dest_x); + reader.read_int("dest_y", &level.teleport_dest_y); reader.read_string("teleport-message", &level.teleport_message); level.apply_action_north = level.apply_action_south = @@ -793,14 +792,13 @@ return; } } - else if (level && level->is_teleporter) { + else if (level && level->teleport_dest_x != -1 && level->teleport_dest_y != -1) { if (level->x == tux->get_tile_pos().x && level->y == tux->get_tile_pos().y) - { - Point p; - p.x = level->destination_x; - p.y = level->destination_y; - tux->set_tile_pos(p); + { + play_sound(sounds[SND_TELEPORT], SOUND_CENTER_SPEAKER); + tux->back_direction = D_NONE; + tux->set_tile_pos(Point(level->teleport_dest_x, level->teleport_dest_y)); } } else @@ -877,7 +875,7 @@ for(Levels::iterator i = levels.begin(); i != levels.end(); ++i) { if(i->name.empty()) { - if (i->is_teleporter) { + if (i->teleport_dest_x != -1) { leveldot_teleporter->draw(i->x*32 + offset.x, i->y*32 + offset.y); } @@ -932,7 +930,7 @@ { white_text->draw_align(i->title.c_str(), screen->w/2, screen->h, A_HMIDDLE, A_BOTTOM); } - else if (i->is_teleporter) { + else if (i->teleport_dest_x != -1) { if(!i->teleport_message.empty()) gold_text->draw_align(i->teleport_message.c_str(), screen->w/2, screen->h, A_HMIDDLE, A_BOTTOM); } Index: sound.h =================================================================== RCS file: /cvsroot/super-tux/supertux/src/Attic/sound.h,v retrieving revision 1.28 retrieving revision 1.28.2.1 diff -u -d -r1.28 -r1.28.2.1 --- sound.h 26 Apr 2004 12:21:22 -0000 1.28 +++ sound.h 10 Aug 2004 22:50:39 -0000 1.28.2.1 @@ -65,6 +65,7 @@ SND_STOMP, SND_KICK, SND_EXPLODE, + SND_TELEPORT, NUM_SOUNDS }; Index: worldmap.h =================================================================== RCS file: /cvsroot/super-tux/supertux/src/worldmap.h,v retrieving revision 1.28.2.11 retrieving revision 1.28.2.12 diff -u -d -r1.28.2.11 -r1.28.2.12 --- worldmap.h 10 Aug 2004 21:18:11 -0000 1.28.2.11 +++ worldmap.h 10 Aug 2004 22:50:39 -0000 1.28.2.12 @@ -178,9 +178,8 @@ bool passive_message; /** Teleporters */ - bool is_teleporter; - int destination_x; - int destination_y; + int teleport_dest_x; + int teleport_dest_y; std::string teleport_message; /** If false, disables the auto walking after finishing a level */ |