diff --git a/src/clientmap.cpp b/src/clientmap.cpp
index 800549a3b88e0065b75011604015e5920a4e248b..0b30453b830c92beb1e0401f5d504dbd9df51810 100644
--- a/src/clientmap.cpp
+++ b/src/clientmap.cpp
@@ -864,7 +864,7 @@ void ClientMap::renderPostFx()
 	// - If the player is in liquid, draw a semi-transparent overlay.
 	const ContentFeatures& features = nodemgr->get(n);
 	video::SColor post_effect_color = features.post_effect_color;
-	if(features.solidness == 2 && g_settings->getBool("free_move") == false)
+	if(features.solidness == 2 && !(g_settings->getBool("noclip") && m_gamedef->checkLocalPrivilege("noclip")))
 	{
 		post_effect_color = video::SColor(255, 0, 0, 0);
 	}