[Super-tux-commit] supertux/src worldmap.cpp,1.111,1.112 worldmap.h,1.43,1.44
Brought to you by:
wkendrick
From: Ricardo C. <rm...@us...> - 2004-07-28 20:42:10
|
Update of /cvsroot/super-tux/supertux/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23520/src Modified Files: worldmap.cpp worldmap.h Log Message: Improved passive messages code. Fixed bug of showing a previous passive message when a new one should be being displayed now. A bug still to fix is that when going from a passive message to a map one, both will be displayed. Anyway, first we need to test if this all code of passive/map messages is working. Index: worldmap.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/worldmap.cpp,v retrieving revision 1.111 retrieving revision 1.112 diff -u -d -r1.111 -r1.112 --- worldmap.cpp 28 Jul 2004 16:07:08 -0000 1.111 +++ worldmap.cpp 28 Jul 2004 20:41:59 -0000 1.112 @@ -37,7 +37,7 @@ #include "app/gettext.h" #include "misc.h" -#define DISPLAY_MAP_MESSAGE_TIME 2600 +#define DISPLAY_MAP_MESSAGE_TIME 2800 Menu* worldmap_menu = 0; @@ -298,7 +298,10 @@ WorldMap::SpecialTile* special_tile = worldmap->at_special_tile(); if(special_tile && special_tile->passive_message) - special_tile->display_map_message_timer.start(DISPLAY_MAP_MESSAGE_TIME); + { + worldmap->passive_message = special_tile->display_map_message; + worldmap->passive_message_timer.start(DISPLAY_MAP_MESSAGE_TIME); + } if (worldmap->at(tile_pos)->stop || (special_tile && !special_tile->passive_message)) @@ -470,7 +473,6 @@ special_tile.passive_message = false; if(!special_tile.display_map_message.empty()) special_tile.passive_message = true; - special_tile.display_map_message_timer.init(true); reader.read_string("map-message", special_tile.display_map_message); reader.read_string("next-world", special_tile.next_worldmap); reader.read_string("level", special_tile.level_name, true); @@ -537,7 +539,7 @@ LispReader* reader = LispReader::load(datadir + "/levels/" + special_tile.level_name, "supertux-level"); if(!reader) { - std::cerr << "Error: Could not open special_tile file. Ignoring...\n"; + std::cerr << "Error: Could not open level file. Ignoring...\n"; return; } @@ -995,18 +997,11 @@ } } } - for(SpecialTiles::iterator i = special_tiles.begin(); i != special_tiles.end(); ++i) - { - /* Display a passive message in the map, if any as been selected */ - if(i->display_map_message_timer.check()) - { - if(!i->display_map_message.empty()) - context.draw_text_center(gold_text, i->display_map_message, - Vector(0, screen->h - white_text->get_height() - 60), - LAYER_FOREGROUND1); - break; - } - } + /* Display a passive message in the map, if needed */ + if(passive_message_timer.check()) + context.draw_text_center(gold_text, passive_message, + Vector(0, screen->h - white_text->get_height() - 60), + LAYER_FOREGROUND1); } void Index: worldmap.h =================================================================== RCS file: /cvsroot/super-tux/supertux/src/worldmap.h,v retrieving revision 1.43 retrieving revision 1.44 diff -u -d -r1.43 -r1.44 --- worldmap.h 28 Jul 2004 16:04:25 -0000 1.43 +++ worldmap.h 28 Jul 2004 20:41:59 -0000 1.44 @@ -160,7 +160,6 @@ /** Message to show in the Map */ std::string display_map_message; - Timer display_map_message_timer; bool passive_message; /** Go to this world */ @@ -179,6 +178,10 @@ bool west; }; + /** Variables to deal with the passive map messages */ + Timer passive_message_timer; + std::string passive_message; + private: std::string map_filename; |