Skip to content
Permalink
Browse files

Fix client "double saving" simple singleplayer local maps

  • Loading branch information
Zeno- committed Nov 24, 2014
1 parent 5413ed1 commit 26cf98ccfc70909be916d29f0cc480f6929cbb08
Showing with 9 additions and 4 deletions.
  1. +3 −1 src/client.cpp
  2. +1 −0 src/client.h
  3. +5 −3 src/game.cpp
@@ -219,6 +219,7 @@ Client::Client(
IrrlichtDevice *device,
const char *playername,
std::string password,
bool is_simple_singleplayer_game,
MapDrawControl &control,
IWritableTextureSource *tsrc,
IWritableShaderSource *shsrc,
@@ -280,7 +281,8 @@ Client::Client(
m_env.addPlayer(player);
}

if (g_settings->getBool("enable_local_map_saving")) {
if (g_settings->getBool("enable_local_map_saving")
&& !is_simple_singleplayer_game) {
const std::string world_path = porting::path_user + DIR_DELIM + "worlds"
+ DIR_DELIM + "server_" + g_settings->get("address")
+ "_" + g_settings->get("remote_port");
@@ -305,6 +305,7 @@ class Client : public con::PeerHandler, public InventoryManager, public IGameDef
IrrlichtDevice *device,
const char *playername,
std::string password,
bool is_simple_singleplayer_game,
MapDrawControl &control,
IWritableTextureSource *tsrc,
IWritableShaderSource *shsrc,
@@ -2103,9 +2103,11 @@ bool Game::connectToServer(const std::string &playername,
return false;
}

client = new Client(device, playername.c_str(), password, *draw_control,
texture_src, shader_src, itemdef_manager, nodedef_manager, sound,
eventmgr, connect_address.isIPv6());
client = new Client(device,
playername.c_str(), password, simple_singleplayer_mode,
*draw_control, texture_src, shader_src,
itemdef_manager, nodedef_manager, sound, eventmgr,
connect_address.isIPv6());

if (!client)
return false;

0 comments on commit 26cf98c

Please sign in to comment.
You can’t perform that action at this time.