summaryrefslogtreecommitdiff
path: root/src/server.cpp
diff options
context:
space:
mode:
authorparamat <mat.gregory@virginmedia.com>2017-04-28 03:06:49 +0100
committerAuke Kok <sofar+github@foo-projects.org>2017-05-02 20:42:35 -0700
commitad9fcf859ec2347325830e09504ae96968b51ea8 (patch)
tree1f13dd4bdfe3f2aef666fce622634f1d0ee70e3f /src/server.cpp
parentf9fdb48dc85e53253ef93972355d3c7bc9d0ffb0 (diff)
downloadminetest-ad9fcf859ec2347325830e09504ae96968b51ea8.tar.gz
minetest-ad9fcf859ec2347325830e09504ae96968b51ea8.tar.bz2
minetest-ad9fcf859ec2347325830e09504ae96968b51ea8.zip
Set sky API: Add bool for clouds in front of custom skybox
Default true. Add 'm_clouds_enabled' bool to sky.h, set from new bool in 'set sky' API. Make 'getCloudsVisible()' depend on 'm_clouds_enabled' instead of 'm_visible' (whether normal sky is visible).
Diffstat (limited to 'src/server.cpp')
-rw-r--r--src/server.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/server.cpp b/src/server.cpp
index 190a1baf2..bf01fb7eb 100644
--- a/src/server.cpp
+++ b/src/server.cpp
@@ -1871,7 +1871,8 @@ void Server::SendHUDSetParam(u16 peer_id, u16 param, const std::string &value)
}
void Server::SendSetSky(u16 peer_id, const video::SColor &bgcolor,
- const std::string &type, const std::vector<std::string> &params)
+ const std::string &type, const std::vector<std::string> &params,
+ bool &clouds)
{
NetworkPacket pkt(TOCLIENT_SET_SKY, 0, peer_id);
pkt << bgcolor << type << (u16) params.size();
@@ -1879,6 +1880,8 @@ void Server::SendSetSky(u16 peer_id, const video::SColor &bgcolor,
for(size_t i=0; i<params.size(); i++)
pkt << params[i];
+ pkt << clouds;
+
Send(&pkt);
}
@@ -3254,13 +3257,14 @@ bool Server::setPlayerEyeOffset(RemotePlayer *player, v3f first, v3f third)
}
bool Server::setSky(RemotePlayer *player, const video::SColor &bgcolor,
- const std::string &type, const std::vector<std::string> &params)
+ const std::string &type, const std::vector<std::string> &params,
+ bool &clouds)
{
if (!player)
return false;
- player->setSky(bgcolor, type, params);
- SendSetSky(player->peer_id, bgcolor, type, params);
+ player->setSky(bgcolor, type, params, clouds);
+ SendSetSky(player->peer_id, bgcolor, type, params, clouds);
return true;
}