From 9f9279008c9299f6f1accd0a3b230877caa87930 Mon Sep 17 00:00:00 2001 From: Sokomine Date: Sat, 22 Nov 2014 21:40:23 +0100 Subject: [PATCH] added enable_build_where_you_stand option Signed-off-by: Craig Robbins --- minetest.conf.example | 3 +++ src/defaultsettings.cpp | 1 + src/game.cpp | 1 + 3 files changed, 5 insertions(+) diff --git a/minetest.conf.example b/minetest.conf.example index 6bd2e00b4..0d2c44c61 100644 --- a/minetest.conf.example +++ b/minetest.conf.example @@ -62,6 +62,9 @@ #keymap_quicktune_dec = KEY_NEXT #keymap_quicktune_inc = KEY_PRIOR +#if set to true, you can place blocks at the position (feet + eye level) where you stand; this is helpful when working with nodeboxes +#enable_build_where_you_stand = false + # Minimum FPS # The amount of rendered stuff is dynamically set according to this #wanted_fps = 30 diff --git a/src/defaultsettings.cpp b/src/defaultsettings.cpp index 135fa8762..72eac76c2 100644 --- a/src/defaultsettings.cpp +++ b/src/defaultsettings.cpp @@ -63,6 +63,7 @@ void set_default_settings(Settings *settings) settings->setDefault("keymap_camera_mode", "KEY_F7"); settings->setDefault("keymap_increase_viewing_range_min", "+"); settings->setDefault("keymap_decrease_viewing_range_min", "-"); + settings->setDefault("enable_build_where_you_stand", "false" ); settings->setDefault("3d_mode", "none"); settings->setDefault("3d_paralax_strength", "0.025"); settings->setDefault("aux1_descends", "false"); diff --git a/src/game.cpp b/src/game.cpp index 70d526a9d..4af483bd7 100644 --- a/src/game.cpp +++ b/src/game.cpp @@ -967,6 +967,7 @@ bool nodePlacementPrediction(Client &client, // Dont place node when player would be inside new node // NOTE: This is to be eventually implemented by a mod as client-side Lua if (!nodedef->get(n).walkable || + g_settings->getBool("enable_build_where_you_stand") || (client.checkPrivilege("noclip") && g_settings->getBool("noclip")) || (nodedef->get(n).walkable && neighbourpos != player->getStandingNodePos() + v3s16(0, 1, 0) &&