diff options
author | Bjørn Lindeijer <bjorn@lindeijer.nl> | 2008-02-20 18:06:03 +0000 |
---|---|---|
committer | Bjørn Lindeijer <bjorn@lindeijer.nl> | 2008-02-20 18:06:03 +0000 |
commit | d8214f7e46ec507dac603ea2a108410f5f64a4bd (patch) | |
tree | 1a04035a97c81ef0aa9e2c43d205653af17b004c /src/game.cpp | |
parent | 9200c6879214c7ebca52c271e29ad0ee7f69d0b6 (diff) | |
download | mana-d8214f7e46ec507dac603ea2a108410f5f64a4bd.tar.gz mana-d8214f7e46ec507dac603ea2a108410f5f64a4bd.tar.bz2 mana-d8214f7e46ec507dac603ea2a108410f5f64a4bd.tar.xz mana-d8214f7e46ec507dac603ea2a108410f5f64a4bd.zip |
Merged revisions 3790,3799,3801-3807,3809-3810,3812-3813,3815-3816,3818-3821 via svnmerge from
https://themanaworld.svn.sourceforge.net/svnroot/themanaworld/tmw/branches/0.0
........
r3790 | b_lindeijer | 2007-12-18 14:54:17 +0100 (Tue, 18 Dec 2007) | 3 lines
Remember to delete the progressbar and label also when the game was not
started.
........
r3801 | b_lindeijer | 2007-12-21 12:56:23 +0100 (Fri, 21 Dec 2007) | 2 lines
Fixed shop list box not to scroll up when the selection is removed.
........
r3802 | b_lindeijer | 2007-12-21 13:37:17 +0100 (Fri, 21 Dec 2007) | 2 lines
Added logging of error on PHYSFS_addToSearchPath.
........
r3803 | b_lindeijer | 2007-12-21 15:56:38 +0100 (Fri, 21 Dec 2007) | 3 lines
Fixed inventory size not matching the size assumed by eAthena and related
memory corruption and increased default chat log length.
........
r3804 | the_enemy | 2007-12-21 16:07:20 +0100 (Fri, 21 Dec 2007) | 1 line
Attempted to fix client freeze when unable to connect to update host, and added exit dialog
........
r3805 | b_lindeijer | 2007-12-22 16:24:14 +0100 (Sat, 22 Dec 2007) | 2 lines
Updated version to 0.0.24. Release data set to tomorrow, we'll see.
........
r3806 | b_lindeijer | 2007-12-22 21:42:35 +0100 (Sat, 22 Dec 2007) | 2 lines
Make sure chat messages are also trimmed for the local player.
........
r3809 | crush_tmw | 2007-12-23 03:16:53 +0100 (Sun, 23 Dec 2007) | 1 line
Particle images are now reference-counted properly. Avoided attempts to load "data/graphics/" when a monster or equipment piece has no sprite. Error placeholder is now used when attempting to load a sprite definition file that doesn't exist.
........
r3810 | b_lindeijer | 2007-12-24 02:20:42 +0100 (Mon, 24 Dec 2007) | 2 lines
Updated release date.
........
r3812 | the_enemy | 2007-12-24 15:16:15 +0100 (Mon, 24 Dec 2007) | 1 line
Minor update, fixed disconnection dialog
........
r3813 | b_lindeijer | 2007-12-24 15:45:34 +0100 (Mon, 24 Dec 2007) | 2 lines
Fixed compile warning.
........
r3816 | b_lindeijer | 2007-12-25 13:31:21 +0100 (Tue, 25 Dec 2007) | 2 lines
Fixed year. :)
........
r3818 | b_lindeijer | 2007-12-25 23:11:55 +0100 (Tue, 25 Dec 2007) | 2 lines
Updated CMake file.
........
r3821 | b_lindeijer | 2007-12-26 19:06:15 +0100 (Wed, 26 Dec 2007) | 2 lines
Fixed year in README too.
........
Diffstat (limited to 'src/game.cpp')
-rw-r--r-- | src/game.cpp | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/game.cpp b/src/game.cpp index 7ae21009..cf6dc547 100644 --- a/src/game.cpp +++ b/src/game.cpp @@ -60,6 +60,7 @@ #include "gui/ministatus.h" #include "gui/npclistdialog.h" #include "gui/npc_text.h" +#include "gui/ok_dialog.h" #include "gui/sdlinput.h" #include "gui/sell.h" #include "gui/setup.h" @@ -96,6 +97,7 @@ Joystick *joystick = NULL; extern Window *weightNotice; extern Window *deathNotice; QuitDialog *quitDialog = NULL; +OkDialog *disconnectedDialog = NULL; ChatWindow *chatWindow; MenuWindow *menuWindow; @@ -128,6 +130,21 @@ Particle *particleEngine = NULL; const int MAX_TIME = 10000; /** + * Listener used for exitting handling. + */ +namespace { + struct ExitListener : public gcn::ActionListener + { + void action(const gcn::ActionEvent &event) + { + if (event.getId() == "yes" || event.getId() == "ok") { + done = true; + } + } + } exitListener; +} + +/** * Advances game logic counter. */ Uint32 nextTick(Uint32 interval, void *param) @@ -407,6 +424,20 @@ void Game::logic() // Handle network stuff Net::flush(); + + // TODO: Fix notification when the connection is lost + if (false /*!mNetwork->isConnected() */) + { + if (!disconnectedDialog) + { + disconnectedDialog = new + OkDialog("Network Error", + "The connection to the server was lost, the program will now quit"); + disconnectedDialog->addActionListener(&exitListener); + } + + disconnectedDialog->requestMoveToTop(); + } } } |