summaryrefslogtreecommitdiff
path: root/src/engine.cpp
diff options
context:
space:
mode:
authorBjørn Lindeijer <bjorn@lindeijer.nl>2009-05-25 23:10:29 +0200
committerBjørn Lindeijer <bjorn@lindeijer.nl>2009-05-25 23:10:29 +0200
commita1dc06196ddcee0fa2b9357be86c9c8bace967e3 (patch)
tree608c182350ca2548380709f4b5605ac9ab63deba /src/engine.cpp
parentd76a9210b07cdcf97ae4f94af429b5fa3e72b239 (diff)
parenta36909f5c3408153c9b5f9477adde9b27d8c7482 (diff)
downloadmana-client-a1dc06196ddcee0fa2b9357be86c9c8bace967e3.tar.gz
mana-client-a1dc06196ddcee0fa2b9357be86c9c8bace967e3.tar.bz2
mana-client-a1dc06196ddcee0fa2b9357be86c9c8bace967e3.tar.xz
mana-client-a1dc06196ddcee0fa2b9357be86c9c8bace967e3.zip
Merge branch '0.0.29'
Diffstat (limited to 'src/engine.cpp')
-rw-r--r--src/engine.cpp20
1 files changed, 11 insertions, 9 deletions
diff --git a/src/engine.cpp b/src/engine.cpp
index 1bd6c30f..d33607ec 100644
--- a/src/engine.cpp
+++ b/src/engine.cpp
@@ -31,6 +31,7 @@
#include "gui/gui.h"
#include "gui/minimap.h"
+#include "gui/okdialog.h"
#include "gui/viewport.h"
#include "net/maphandler.h"
@@ -40,6 +41,7 @@
#include "resources/monsterdb.h"
#include "resources/resourcemanager.h"
+#include "utils/gettext.h"
#include "utils/stringutils.h"
Engine::Engine():
@@ -81,7 +83,11 @@ bool Engine::changeMap(const std::string &mapPath)
Map *newMap = MapReader::readMap(map_path);
if (!newMap)
- logger->error("Could not find map file");
+ {
+ logger->log("Error while loading %s", map_path.c_str());
+ new OkDialog(_("Could not load map"),
+ strprintf(_("Error while loading %s"), map_path.c_str()));
+ }
// Notify the minimap and beingManager about the map change
minimap->setMap(newMap);
@@ -90,16 +96,12 @@ bool Engine::changeMap(const std::string &mapPath)
viewport->setMap(newMap);
// Initialize map-based particle effects
- newMap->initializeParticleEffects(particleEngine);
+ if (newMap)
+ newMap->initializeParticleEffects(particleEngine);
// Start playing new music file when necessary
- std::string oldMusic = "";
-
- if (mCurrentMap)
- oldMusic = mCurrentMap->getProperty("music");
-
- std::string newMusic = newMap->getProperty("music");
-
+ std::string oldMusic = mCurrentMap ? mCurrentMap->getMusicFile() : "";
+ std::string newMusic = newMap ? newMap->getMusicFile() : "";
if (newMusic != oldMusic)
sound.playMusic(newMusic);