summaryrefslogtreecommitdiff
path: root/src/network
diff options
context:
space:
mode:
Diffstat (limited to 'src/network')
-rw-r--r--src/network/network_content.cpp8
-rw-r--r--src/network/network_content_gui.cpp7
2 files changed, 15 insertions, 0 deletions
diff --git a/src/network/network_content.cpp b/src/network/network_content.cpp
index 83740c81c..3a558c7d5 100644
--- a/src/network/network_content.cpp
+++ b/src/network/network_content.cpp
@@ -22,6 +22,7 @@
extern bool TarListAddFile(const char *filename);
extern bool HasGraphicsSet(const ContentInfo *ci, bool md5sum);
+extern bool HasScenario(const ContentInfo *ci, bool md5sum);
ClientNetworkContentSocketHandler _network_content_client;
/** Wrapper function for the HasProc */
@@ -86,6 +87,11 @@ DEF_CONTENT_RECEIVE_COMMAND(Client, PACKET_CONTENT_SERVER_INFO)
proc = AI::HasAI; break;
break;
+ case CONTENT_TYPE_SCENARIO:
+ case CONTENT_TYPE_HEIGHTMAP:
+ proc = HasScenario;
+ break;
+
default:
break;
}
@@ -143,6 +149,8 @@ void ClientNetworkContentSocketHandler::RequestContentList(ContentType type)
{
if (type == CONTENT_TYPE_END) {
this->RequestContentList(CONTENT_TYPE_BASE_GRAPHICS);
+ this->RequestContentList(CONTENT_TYPE_SCENARIO);
+ this->RequestContentList(CONTENT_TYPE_HEIGHTMAP);
this->RequestContentList(CONTENT_TYPE_AI);
this->RequestContentList(CONTENT_TYPE_NEWGRF);
this->RequestContentList(CONTENT_TYPE_AI_LIBRARY);
diff --git a/src/network/network_content_gui.cpp b/src/network/network_content_gui.cpp
index a2be8557d..2c2f9eac6 100644
--- a/src/network/network_content_gui.cpp
+++ b/src/network/network_content_gui.cpp
@@ -98,6 +98,13 @@ public:
InvalidateWindowData(WC_NETWORK_WINDOW, 0, 2);
break;
+ case CONTENT_TYPE_SCENARIO:
+ case CONTENT_TYPE_HEIGHTMAP:
+ InvalidateWindowClasses(WC_SAVELOAD);
+ extern void ScanScenarios();
+ ScanScenarios();
+ break;
+
default:
break;
}