summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Deutsch <ben@bendeutsch.de>2016-08-02 21:36:34 +0200
committerest31 <MTest31@outlook.com>2016-08-10 12:18:25 +0200
commit82494b8cc199fb92248c6c30ce7ef18b7e7133ae (patch)
tree651de3a5c07ebbe75321621c04b07ae0728d46a8
parentd1df09841d0eac7a88f638676b80ec848522cca5 (diff)
downloadminetest-82494b8cc199fb92248c6c30ce7ef18b7e7133ae.tar.gz
minetest-82494b8cc199fb92248c6c30ce7ef18b7e7133ae.tar.bz2
minetest-82494b8cc199fb92248c6c30ce7ef18b7e7133ae.zip
Zooming the camera requires the 'zoom' privilege
-rw-r--r--builtin/game/privileges.lua4
-rw-r--r--src/camera.cpp2
2 files changed, 5 insertions, 1 deletions
diff --git a/builtin/game/privileges.lua b/builtin/game/privileges.lua
index 5838b9374..05c79440c 100644
--- a/builtin/game/privileges.lua
+++ b/builtin/game/privileges.lua
@@ -54,4 +54,8 @@ core.register_privilege("noclip", {
give_to_singleplayer = false,
})
core.register_privilege("rollback", "Can use the rollback functionality")
+core.register_privilege("zoom", {
+ description = "Can zoom the camera",
+ give_to_singleplayer = false,
+})
diff --git a/src/camera.cpp b/src/camera.cpp
index e1d6dd910..e1fec4a3e 100644
--- a/src/camera.cpp
+++ b/src/camera.cpp
@@ -390,7 +390,7 @@ void Camera::update(LocalPlayer* player, f32 frametime, f32 busytime,
// Get FOV
f32 fov_degrees;
- if (player->getPlayerControl().zoom) {
+ if (player->getPlayerControl().zoom && m_gamedef->checkLocalPrivilege("zoom")) {
fov_degrees = m_cache_zoom_fov;
} else {
fov_degrees = m_cache_fov;