mirror of
				https://github.com/luanti-org/luanti.git
				synced 2025-10-30 23:15:32 +01:00 
			
		
		
		
	Merge remote-tracking branch 'upstream/master'
This commit is contained in:
		| @@ -84,8 +84,9 @@ minetest.register_entity("__builtin:item", { | |||||||
| 		local p = self.object:getpos() | 		local p = self.object:getpos() | ||||||
| 		p.y = p.y - 0.3 | 		p.y = p.y - 0.3 | ||||||
| 		local nn = minetest.env:get_node(p).name | 		local nn = minetest.env:get_node(p).name | ||||||
| 		-- If node is not registered or node is walkably solid | 		-- If node is not registered or node is walkably solid and resting on nodebox | ||||||
| 		if not minetest.registered_nodes[nn] or minetest.registered_nodes[nn].walkable then | 		local v = self.object:getvelocity() | ||||||
|  | 		if not minetest.registered_nodes[nn] or minetest.registered_nodes[nn].walkable and v.y == 0 then | ||||||
| 			if self.physical_state then | 			if self.physical_state then | ||||||
| 				self.object:setvelocity({x=0,y=0,z=0}) | 				self.object:setvelocity({x=0,y=0,z=0}) | ||||||
| 				self.object:setacceleration({x=0, y=0, z=0}) | 				self.object:setacceleration({x=0, y=0, z=0}) | ||||||
|   | |||||||
| @@ -159,7 +159,7 @@ void LocalPlayer::move(f32 dtime, Map &map, f32 pos_max_d, | |||||||
| 		If sneaking, keep in range from the last walked node and don't | 		If sneaking, keep in range from the last walked node and don't | ||||||
| 		fall off from it | 		fall off from it | ||||||
| 	*/ | 	*/ | ||||||
| 	if(control.sneak && m_sneak_node_exists) | 	if(control.sneak && m_sneak_node_exists && !g_settings->getBool("free_move")) | ||||||
| 	{ | 	{ | ||||||
| 		f32 maxd = 0.5*BS + sneak_max; | 		f32 maxd = 0.5*BS + sneak_max; | ||||||
| 		v3f lwn_f = intToFloat(m_sneak_node, BS); | 		v3f lwn_f = intToFloat(m_sneak_node, BS); | ||||||
| @@ -540,7 +540,7 @@ void LocalPlayer::applyControl(float dtime) | |||||||
| 	// The speed of the player (Y is ignored)
 | 	// The speed of the player (Y is ignored)
 | ||||||
| 	if(superspeed) | 	if(superspeed) | ||||||
| 		speed = speed.normalize() * walkspeed_max * 5.0; | 		speed = speed.normalize() * walkspeed_max * 5.0; | ||||||
| 	else if(control.sneak) | 	else if(control.sneak && !free_move) | ||||||
| 		speed = speed.normalize() * walkspeed_max / 3.0; | 		speed = speed.normalize() * walkspeed_max / 3.0; | ||||||
| 	else | 	else | ||||||
| 		speed = speed.normalize() * walkspeed_max; | 		speed = speed.normalize() * walkspeed_max; | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user