diff options
author | tenplus1 <tenplus1@users.noreply.github.com> | 2017-09-16 21:39:38 +0100 |
---|---|---|
committer | SmallJoker <SmallJoker@users.noreply.github.com> | 2017-09-16 22:39:38 +0200 |
commit | 5b6d4482eeee1925331d6ec122dd10cdc1aa7a30 (patch) | |
tree | 1e2c766c567b64a8b41ebe02f3708c540fb9f0e0 /builtin/common/misc_helpers.lua | |
parent | 45e9f8081140bfcf45f83508621a94df8f2bce20 (diff) | |
download | minetest-5b6d4482eeee1925331d6ec122dd10cdc1aa7a30.tar.gz minetest-5b6d4482eeee1925331d6ec122dd10cdc1aa7a30.tar.bz2 minetest-5b6d4482eeee1925331d6ec122dd10cdc1aa7a30.zip |
Fix Rotate Node Placement (#6424)
This properly checks for creative mode or privilege when using fixed rotate_node() function.
Diffstat (limited to 'builtin/common/misc_helpers.lua')
-rw-r--r-- | builtin/common/misc_helpers.lua | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/builtin/common/misc_helpers.lua b/builtin/common/misc_helpers.lua index 87561726e..31d335fe2 100644 --- a/builtin/common/misc_helpers.lua +++ b/builtin/common/misc_helpers.lua @@ -425,11 +425,15 @@ if INIT == "game" then --Wrapper for rotate_and_place() to check for sneak and assume Creative mode --implies infinite stacks when performing a 6d rotation. -------------------------------------------------------------------------------- - + local creative_mode_cache = core.settings:get_bool("creative_mode") + local function is_creative(name) + return creative_mode_cache or + core.check_player_privs(name, {creative = true}) + end core.rotate_node = function(itemstack, placer, pointed_thing) core.rotate_and_place(itemstack, placer, pointed_thing, - core.settings:get_bool("creative_mode"), + is_creative(placer:get_player_name()), {invert_wall = placer:get_player_control().sneak}) return itemstack end |