oweals/minetest.git
7 years agoLint fix
Loic Blot [Wed, 27 Sep 2017 20:41:50 +0000 (22:41 +0200)]
Lint fix

7 years agoAdd session_t typedef + remove unused functions (#6470)
Loïc Blot [Wed, 27 Sep 2017 17:47:36 +0000 (19:47 +0200)]
Add session_t typedef + remove unused functions (#6470)

* Add session_t typedef + remove unused functions

u16 peer_id is used everywhere, to be more consistent and permit some evolutions on this type in the future (i'm working on a PoC), uniformize u16 peer_id to SessionId peer_id

7 years agoUpdate version correctly again (#6462)
SmallJoker [Tue, 26 Sep 2017 18:30:42 +0000 (20:30 +0200)]
Update version correctly again (#6462)

* Update version correctly again
Partial revert of PR 6331

* It doesn't update automatically

7 years agoUpdate JsonCPP to 1.8.3 (#6466)
Loïc Blot [Tue, 26 Sep 2017 18:30:14 +0000 (20:30 +0200)]
Update JsonCPP to 1.8.3 (#6466)

* Update JsonCPP to 1.8.3

* Fix deprecated functions

Json::FastWriter, Json::StyledWriter and Json::Reader are marked deprecated since 1.1 and are deprecated in 0.8 but not shown at compilation time.

Use new methods to serialize/deserialize

7 years agopreview: try to send mod channel messages 4 seconds after joining, not after loading mod
Loic Blot [Tue, 26 Sep 2017 06:31:56 +0000 (08:31 +0200)]
preview: try to send mod channel messages 4 seconds after joining, not after loading mod

7 years agoAdd mute setting (toggled by the mute key and in the volume menu) (#6415)
DTA7 [Tue, 26 Sep 2017 06:17:50 +0000 (08:17 +0200)]
Add mute setting (toggled by the mute key and in the volume menu) (#6415)

* Add mute setting (toggled by the mute key and in the volume menu)

7 years agoImplement mod communication channels (#6351)
Loïc Blot [Mon, 25 Sep 2017 22:11:20 +0000 (00:11 +0200)]
Implement mod communication channels (#6351)

Implement network communication for channels

* Implement ModChannel manager server side to route incoming messages from clients to other clients
* Add signal handler switch on client & ModChannelMgr on client to handle channels
* Add Lua API bindings + client packet sending + unittests
* Implement server message sending
* Add callback from received message handler to Lua API using registration method

7 years agoCan_zoom player object property: Add missing documentation
paramat [Mon, 25 Sep 2017 18:28:46 +0000 (19:28 +0100)]
Can_zoom player object property: Add missing documentation

7 years agoPositional sound: Limit volume when closer than 1 node
paramat [Sat, 23 Sep 2017 07:38:22 +0000 (08:38 +0100)]
Positional sound: Limit volume when closer than 1 node

Change OpenAL distance model from AL_INVERSE_DISTANCE to
AL_INVERSE_DISTANCE_CLAMPED to avoid excessive volume when very close
to the sound location, for example MTG doors, and MTG fire sounds which
are combined at an average position and often located in air nodes.

Because AL_REFERENCE_DISTANCE has been reduced to 1 node (the distance
under which gain is clamped), multiply volume by the same factor to keep
sound gains the same as before, since the gain is calculated as:

gain = (AL_REFERENCE_DISTANCE / distance)

7 years agoFix blocks written by vmanip not being marked as modified
sfan5 [Sat, 23 Sep 2017 15:05:55 +0000 (17:05 +0200)]
Fix blocks written by vmanip not being marked as modified

This bug can be triggered by e.g. calling minetest.place_schematic()
and stopping the server immediately afterwards.

7 years agoSet placer to nil instead of a non-functional one in item_OnPlace (#6449)
DTA7 [Thu, 21 Sep 2017 19:52:52 +0000 (21:52 +0200)]
Set placer to nil instead of a non-functional one in item_OnPlace (#6449)

* Set placer to nil instead of a non-functional one

This requires nil checks in core.rotate_node and core.rotate_and_place.

7 years agoon_death: Fix callback number of pushed arguments (Fixes #6451)
SmallJoker [Thu, 21 Sep 2017 17:56:11 +0000 (19:56 +0200)]
on_death: Fix callback number of pushed arguments (Fixes #6451)

7 years agokeycode.cpp: use std::unordered_map for keypress cache
Loic Blot [Thu, 21 Sep 2017 16:47:42 +0000 (18:47 +0200)]
keycode.cpp: use std::unordered_map for keypress cache

7 years agoFix compile error in openbsd (#6430)
jcalve [Wed, 20 Sep 2017 21:29:47 +0000 (23:29 +0200)]
Fix compile error in openbsd (#6430)

Include the header that defines AF_INET and AF_INET6

7 years agoRooted plantlike drawtype: Add remaining documentation
paramat [Tue, 19 Sep 2017 07:10:07 +0000 (08:10 +0100)]
Rooted plantlike drawtype: Add remaining documentation

Plus a small clarification of 'glasslike framed' documentation.

7 years agoLeveled nodebox: Change levels from 1/63rds to 1/64ths
paramat [Mon, 18 Sep 2017 04:08:56 +0000 (05:08 +0100)]
Leveled nodebox: Change levels from 1/63rds to 1/64ths

Add missing documentation of leveled nodebox to lua_api.txt, plus
a little cleaning up nearby.

7 years agoBiome API: Revert biomes, decos, ores being relative to water level
paramat [Sat, 16 Sep 2017 23:26:20 +0000 (00:26 +0100)]
Biome API: Revert biomes, decos, ores being relative to water level

Feature is unnecessary and would greatly complicate future development,
it would also make 'get biome at pos' extremely complex.
Mgv7: Revert option to repeat surface biomes in floatlands, which
depended on the above.

7 years agoBiome generation: Fix layers of 'filler' nodes at biome y limits
paramat [Sun, 17 Sep 2017 01:54:17 +0000 (02:54 +0100)]
Biome generation: Fix layers of 'filler' nodes at biome y limits

Error was exposed by commit a1389c38658fe69c3bd25c3099bae9a4e51ed401
'nplaced' was not set to U16_MAX when biome 'stone' was placed, so when
biome was recalculated in a column of stone, the 'nplaced' value
caused a few remaining filler nodes to be placed.
Occurs when the lower biome has a deeper depth of 'top' plus 'filler'
than the upper biome.

7 years agoFix Rotate Node Placement (#6424)
tenplus1 [Sat, 16 Sep 2017 20:39:38 +0000 (21:39 +0100)]
Fix Rotate Node Placement (#6424)

This properly checks for creative mode or privilege when using fixed rotate_node() function.

7 years agoCorrect tooltip_append_itemstring terminology (#6421)
DTA7 [Sat, 16 Sep 2017 16:42:17 +0000 (18:42 +0200)]
Correct tooltip_append_itemstring terminology (#6421)

7 years agoFix addModsFormConfig typo (#6420)
Greg [Sat, 16 Sep 2017 16:40:19 +0000 (09:40 -0700)]
Fix addModsFormConfig typo (#6420)

7 years agoGenerate biomes: Recalculate biome at biome lower limit
paramat [Sat, 16 Sep 2017 01:46:26 +0000 (02:46 +0100)]
Generate biomes: Recalculate biome at biome lower limit

Prevents biome nodes passing below the defined y_min of that biome.

7 years agoAdd setting to display the itemstring after the tooltip in the inventory. (#6413)
DTA7 [Fri, 15 Sep 2017 12:31:32 +0000 (14:31 +0200)]
Add setting to display the itemstring after the tooltip in the inventory. (#6413)

* Add setting to display the itemstring after the tooltip in the inventory.

7 years agoServerEnv: Clean up object lifecycle handling (#6414)
sfan5 [Fri, 15 Sep 2017 10:19:01 +0000 (12:19 +0200)]
ServerEnv: Clean up object lifecycle handling (#6414)

* ServerEnv: Clean up object lifecycle handling

7 years agoCustomizeable max breath for players (#6411)
SmallJoker [Fri, 15 Sep 2017 10:18:47 +0000 (12:18 +0200)]
Customizeable max breath for players (#6411)

* Customizeable maximal breath for players

7 years agoCavegen: Avoid unsupported biome 'top' or 'filler' nodes
paramat [Mon, 11 Sep 2017 20:23:43 +0000 (21:23 +0100)]
Cavegen: Avoid unsupported biome 'top' or 'filler' nodes

For 3D noise tunnels only, replace unsupported biome 'top' and 'filler'
nodes in tunnel roof with the defined biome 'stone'.
This makes terrain created by 3D noise tunnels consistent with the rest
of mapgen, which does exactly the same in this situation.

7 years agoObject properties: Add 'glow', disables light's effect if negative
Rob Blanckaert [Sat, 2 Sep 2017 06:12:15 +0000 (23:12 -0700)]
Object properties: Add 'glow', disables light's effect if negative

The 'glow' value is added to the ambient light value.
Negative 'glow' disables light's effect on object colour, for faking
self-lighting, UI-style entities, or programmatic colouring in mods.

7 years agoItem drop: Tune to land exactly 2 nodes away with level view (#6410)
Paramat [Tue, 12 Sep 2017 22:01:50 +0000 (23:01 +0100)]
Item drop: Tune to land exactly 2 nodes away with level view (#6410)

7 years agoNetwork: Fix logging into older worlds with base64 hashes
SmallJoker [Tue, 12 Sep 2017 18:26:03 +0000 (20:26 +0200)]
Network: Fix logging into older worlds with base64 hashes

7 years agoNetwork: Remove large parts of deprecated legacy code (#6404)
SmallJoker [Tue, 12 Sep 2017 17:48:09 +0000 (19:48 +0200)]
Network: Remove large parts of deprecated legacy code (#6404)

Also remove the setting 'send_pre_v25_init'
Keep old enum entries for obsolete commands

7 years agoFix failing linter (travis)
sfan5 [Tue, 12 Sep 2017 17:35:31 +0000 (19:35 +0200)]
Fix failing linter (travis)

7 years agoFix core.wrap_text and make its behaviour consistent with the docs
sfan5 [Mon, 11 Sep 2017 14:25:20 +0000 (16:25 +0200)]
Fix core.wrap_text and make its behaviour consistent with the docs

Code based on initial implementation by @dsohler.

7 years agoMake INodeDefManager::getIds return a vector, not a set
Kahrl [Mon, 11 Sep 2017 13:51:40 +0000 (15:51 +0200)]
Make INodeDefManager::getIds return a vector, not a set

7 years agoImplement client node dig prediction
Auke Kok [Mon, 11 Sep 2017 12:50:06 +0000 (14:50 +0200)]
Implement client node dig prediction

Dig prediction allows clients to remove dug nodes without
waiting for server acknowledgement.
This patch allows mods to override dig prediction,
it can either be turned off or a different "prediction node"
can be selected.

7 years agoAllow the join/leave message to be overridden by mods.
red-001 [Sun, 16 Oct 2016 16:35:07 +0000 (17:35 +0100)]
Allow the join/leave message to be overridden by mods.

7 years agoFix dropped item look (#6370)
you [Mon, 11 Sep 2017 06:20:06 +0000 (08:20 +0200)]
Fix dropped item look (#6370)

* Abort set_item when it does nothing

* Do not adjust dropped item size linearly

Instead use cube root because the item count is proportional to the volume, not to the length.

* Make the item rotate slower when it's bigger

Bigger items chafe more on the ground, so they can't rotate as fast as small ones

* Fix items flying in air

7 years agoObject properties: Fix loss of custom selectionbox
SmallJoker [Sun, 10 Sep 2017 18:16:25 +0000 (20:16 +0200)]
Object properties: Fix loss of custom selectionbox
Only adjust it to the collisionbox value when the collisionbox was really set.

7 years agoFix incorrect buffer size calculation on creation of HUD status messages
rubenwardy [Sun, 10 Sep 2017 01:39:37 +0000 (02:39 +0100)]
Fix incorrect buffer size calculation on creation of HUD status messages

Fixes #6400

7 years agoSchematic decorations: Add 'place_offset_y' placement parameter
paramat [Wed, 6 Sep 2017 21:20:09 +0000 (22:20 +0100)]
Schematic decorations: Add 'place_offset_y' placement parameter

For precise control of schematic vertical position relative to the
'place_on' node.
Avoids workarounds that add empty nodes to a schematic and therefore
reduce performance.

Also remove long-unused decoration cutoff code.

7 years agoFix empty legacy meta being persisted
rubenwardy [Sat, 19 Aug 2017 18:43:02 +0000 (19:43 +0100)]
Fix empty legacy meta being persisted

7 years agoFix crash on revocation of removed privilege
rubenwardy [Fri, 8 Sep 2017 22:45:56 +0000 (23:45 +0100)]
Fix crash on revocation of removed privilege

7 years agoServer: Calculate maximal total block sends dynamically (#6393)
SmallJoker [Fri, 8 Sep 2017 22:36:48 +0000 (00:36 +0200)]
Server: Calculate maximal total block sends dynamically (#6393)

The block sends per client is 1/2 when reaching the maximal player count.

7 years agoParticles: Do not add digging particles for airlike nodes (#6392)
SmallJoker [Fri, 8 Sep 2017 16:39:24 +0000 (18:39 +0200)]
Particles: Do not add digging particles for airlike nodes (#6392)

7 years agoPrevent /spawnentity from spawning unknown entity (#6388)
Wuzzy [Fri, 8 Sep 2017 16:39:02 +0000 (18:39 +0200)]
Prevent /spawnentity from spawning unknown entity (#6388)

7 years agomain.cpp: server-only builds should not include client headers
Loic Blot [Thu, 7 Sep 2017 21:51:06 +0000 (23:51 +0200)]
main.cpp: server-only builds should not include client headers

7 years agoUse a Buffer instead of SharedBuffer in ConnectionCommand
Loic Blot [Tue, 5 Sep 2017 20:14:56 +0000 (22:14 +0200)]
Use a Buffer instead of SharedBuffer in ConnectionCommand

This fixes #6373

7 years agoMake HUD status messages translatable (#5795)
Wuzzy [Tue, 5 Sep 2017 19:57:29 +0000 (21:57 +0200)]
Make HUD status messages translatable (#5795)

* Make HUD status messages translatable

* Make strings in showStatusTextSimple translatable

7 years agoRemove DSTACK keybind setting (#6378)
Rui [Tue, 5 Sep 2017 18:00:36 +0000 (03:00 +0900)]
Remove DSTACK keybind setting (#6378)

7 years agoConf.example: Update using auto-generation
paramat [Mon, 4 Sep 2017 23:14:32 +0000 (00:14 +0100)]
Conf.example: Update using auto-generation

7 years agoNetwork protocol documentation: Add 'can_zoom' to version 36
paramat [Mon, 4 Sep 2017 22:45:47 +0000 (23:45 +0100)]
Network protocol documentation: Add 'can_zoom' to version 36

7 years agoImplement minetest.register_can_bypass_userlimit (#6369)
Loïc Blot [Mon, 4 Sep 2017 20:08:59 +0000 (22:08 +0200)]
Implement minetest.register_can_bypass_userlimit (#6369)

* Implement minetest.register_on_userlimit_check

This new callback permits to bypass the max_users parameter with new mods condition, based on player name or IP
Only one mod needs to permit it.

Move core part for builtin privileges checks to builtin

7 years agoRe-apply previous commit with a typo fix
Loïc Blot [Mon, 4 Sep 2017 14:46:03 +0000 (16:46 +0200)]
Re-apply previous commit with a typo fix

7 years agoRevert "Network: fix a concurrency problem, by re-adding a copy in ConnectionCommand"
Loïc Blot [Mon, 4 Sep 2017 15:28:29 +0000 (17:28 +0200)]
Revert "Network: fix a concurrency problem, by re-adding a copy in ConnectionCommand"

This reverts commit 5b04f5e7d231437b534f4cad39da78624d97c584.

7 years agoNetwork: fix a concurrency problem, by re-adding a copy in ConnectionCommand
Loïc Blot [Mon, 4 Sep 2017 14:46:03 +0000 (16:46 +0200)]
Network: fix a concurrency problem, by re-adding a copy in ConnectionCommand

7 years agoWorld start time: Add setting for this, default unchanged
paramat [Sat, 2 Sep 2017 02:18:42 +0000 (03:18 +0100)]
World start time: Add setting for this, default unchanged

7 years agoAdd build date to minetest --version and increase readability (#6331)
you [Sun, 3 Sep 2017 20:32:30 +0000 (22:32 +0200)]
Add build date to minetest --version and increase readability (#6331)

7 years agoOres: Add stratum ore (#6352)
Paramat [Sun, 3 Sep 2017 20:32:21 +0000 (21:32 +0100)]
Ores: Add stratum ore (#6352)

Creates a single undulating ore stratum that is continuous across mapchunk
borders and horizontally spans the world.
Due to being continuous is ideal for creating bands of alternative stone
type running through cliffs and mountains, or underground layers.

Add missing documentation of 'ore_param2' parameter.

7 years agoUse member initialization list instead of the constructor's body (#6371)
Dharkael [Sun, 3 Sep 2017 17:33:22 +0000 (19:33 +0200)]
Use member initialization list instead of the constructor's body (#6371)

* Use member initialization list instead of the constructor's body

7 years agoNetwork part requires SharedBuffers to be pass as value
Loic Blot [Sun, 3 Sep 2017 17:01:53 +0000 (19:01 +0200)]
Network part requires SharedBuffers to be pass as value
This can trigger unreproductible crashes due to concurrency problem on SharedBuffers

This fixes #6354

7 years agoRemove 3D noise from getSteps function (#6360)
Vaughan Lapsley [Sat, 2 Sep 2017 16:01:13 +0000 (02:01 +1000)]
Remove 3D noise from getSteps function (#6360)

7 years agoRemove nodeupdate completely (#6358)
Rui [Fri, 1 Sep 2017 11:40:09 +0000 (20:40 +0900)]
Remove nodeupdate completely (#6358)

7 years agoFix animation frame_speed and blend loosing precision due to incorrec… (#6357)
sapier [Fri, 1 Sep 2017 09:15:12 +0000 (11:15 +0200)]
Fix animation frame_speed and blend loosing precision due to incorrec… (#6357)

* Fix animation frame_speed and blend loosing precision due to incorrect data type
Add lua function set_animation_frame_speed to update the frame speed without resetting the animation to start

7 years agoRemove nodeupdate and nodeupdate_single
Rui [Wed, 30 Aug 2017 08:00:51 +0000 (17:00 +0900)]
Remove nodeupdate and nodeupdate_single

7 years agoZoom: Move enabling zoom to a new player object property
paramat [Mon, 28 Aug 2017 21:46:12 +0000 (22:46 +0100)]
Zoom: Move enabling zoom to a new player object property

Default enabled for no change in default behaviour.
Remove 'zoom' privilege.

7 years agoRemove DSTACK support (#6346)
Loïc Blot [Wed, 30 Aug 2017 06:09:41 +0000 (08:09 +0200)]
Remove DSTACK support (#6346)

Debugstacks is not useful, we don't really use it, the DebugStack is not pertinent, gdb and lldb are better if we really want to debug.

7 years agoDocumentation for 'slippery' node group (#6345)
Ben Deutsch [Tue, 29 Aug 2017 19:48:43 +0000 (21:48 +0200)]
Documentation for 'slippery' node group (#6345)

7 years agoNetwork proto handlers/container fixes (#6334)
Loïc Blot [Tue, 29 Aug 2017 18:37:54 +0000 (20:37 +0200)]
Network proto handlers/container fixes (#6334)

* Fix HP transport + some double <-> float problems

TOCLIENT_HP transport u16 hp as a u8, use u16 HP, this prevent HP over 255 to overflow across network

* Fix more double/float problem in serverpackethandler & remove implicit struct type for TileAnimationParams

* Fix connection unittests container

7 years agoPushing typo fix introduced in b7ee608e70f8e031e3e01c9672bedb16efa648b8
Loic Blot [Tue, 29 Aug 2017 18:21:14 +0000 (20:21 +0200)]
Pushing typo fix introduced in b7ee608e70f8e031e3e01c9672bedb16efa648b8

7 years agoBump minimal protocol version to 36 (#6319)
SmallJoker [Tue, 29 Aug 2017 17:26:55 +0000 (19:26 +0200)]
Bump minimal protocol version to 36 (#6319)

* Bump minimal protocol version to 36
Item/Node/TileDef, NodeBox, TileAnimation: Remove old compat code

* Accept future serialisation versions

7 years agoFormspec: Add options to set background color and opacity (fullscreen mode + default...
Loïc Blot [Tue, 29 Aug 2017 17:25:16 +0000 (19:25 +0200)]
Formspec: Add options to set background color and opacity (fullscreen mode + default mode) (#5493)

* Formspec: Add options to set background color and opacity (fullscreen mode)

* Enhance previous comment: Set formspec background when regenerate UI.

* This permit to do the calcul only at regen and override it with bgcolor tag
* Add a setting for default background color into formspec, separated from fullscreen
* Add a little performance gain on formspecs using a const ref instead of copying formspec string

7 years agoFix mistake when calling on_priv_grant/revoke, and document them (#6341)
rubenwardy [Tue, 29 Aug 2017 05:57:56 +0000 (06:57 +0100)]
Fix mistake when calling on_priv_grant/revoke, and document them (#6341)

7 years agoAdvanced settings: Make 'controls', 'graphics', 'sound' more accessible
paramat [Sun, 27 Aug 2017 22:48:51 +0000 (23:48 +0100)]
Advanced settings: Make 'controls', 'graphics', 'sound' more accessible

Move client 'controls', 'graphics' and 'sound' into the first level to be
immediately visible to players who may not realise these come under 'client'.
These are the settings that new players or players on a server are likely to
want to access while not having understanding of what comes under 'client'.

Leave client 'network' and 'advanced' under 'client' as these are more
advanced.

Move 'show entity selection boxes' from the bizarre location in
'client'>'network' to 'graphics'>'in game'>'advanced'.

7 years agomapblock_mesh.cpp: Fix code style and simplify a bit code (#4558)
you [Mon, 28 Aug 2017 18:02:51 +0000 (20:02 +0200)]
mapblock_mesh.cpp: Fix code style and simplify a bit code (#4558)

* mapblock_mesh.cpp: Fix code style and simplify a bit code

7 years agoClientevent refactor (#6320)
Loïc Blot [Mon, 28 Aug 2017 18:02:23 +0000 (20:02 +0200)]
Clientevent refactor (#6320)

* Refactor clientevent structure

* Move structure outside of client header

* Create client events on heap not stack, this remove the ClientEvent object copy

* Use clientEventHandler to route events

7 years agoPass SharedBuffer as value to increment reference count
Loïc Blot [Mon, 28 Aug 2017 15:12:30 +0000 (17:12 +0200)]
Pass SharedBuffer as value to increment reference count
This should fix #6332
Refcount is not increased due to reference, it can make this refcount incorrect in a multithread context

7 years agoUse crack animation on all tile layers (#6104)
Dániel Juhász [Mon, 28 Aug 2017 05:51:55 +0000 (05:51 +0000)]
Use crack animation on all tile layers (#6104)

7 years agoStatbars: fix incorrect half-images in non-standard orientations (fixes #6198)
Nathanaël Courant [Sun, 27 Aug 2017 17:06:40 +0000 (19:06 +0200)]
Statbars: fix incorrect half-images in non-standard orientations (fixes #6198)

7 years agoLua API: Add function to deregister single biomes (#5445)
zeuner [Sun, 27 Aug 2017 16:39:47 +0000 (16:39 +0000)]
Lua API: Add function to deregister single biomes (#5445)

7 years agocore.get_objects_inside_radius: Omit removed objects (#6318)
you [Sun, 27 Aug 2017 16:38:50 +0000 (18:38 +0200)]
core.get_objects_inside_radius: Omit removed objects (#6318)

Fixes #6294

7 years agoMore readable default controls in README
Dharkael [Sun, 27 Aug 2017 13:12:52 +0000 (15:12 +0200)]
More readable default controls in README

7 years agoAdd '@n' escape sequences and some documentation on translated strings.
Nathanaël Courant [Sat, 26 Aug 2017 07:43:08 +0000 (09:43 +0200)]
Add '@n' escape sequences and some documentation on translated strings.

7 years agoAlternative code for slipping (#6256)
Ben Deutsch [Sat, 26 Aug 2017 07:01:09 +0000 (09:01 +0200)]
Alternative code for slipping (#6256)

* Alternative code for slipping

- does not depend on frame rate
- controllable via environment variables for now

* Adjust slipping speed for item entities too.

* Final version of framerate-independent slippery code

* Remove dead code and fix formatting

* getStandingNodePos should only look 0.05 nodes downwards

This ensures that, even if the player is standing on a partially
filled node, this node is used as the standing node and not the
node below it.

Specific use: enables slippery slabs

* Exchange global getStandingPosNode change for local inline change

Reverts previous commit

* Revert the item movement changes

* Slippery nodes now slip over cliffs and edges

Players no longer suddenly stop before falling off.
Also refactored slippery code into getSlipFactor method.

* Slipping over an edge gated by player's is_slipping state

A new flag for just this case, to reduce costly node lookups in
the normal case of leaning over a non-slippery edge.
Public access for consistency and potential future uses.

* Minor code tweaks / cosmetics

* Add temp variable to improve readability and fix indentation issues

7 years agoAndroid stepheight: Only increase if 'touching ground' (#6313)
Paramat [Sat, 26 Aug 2017 06:45:09 +0000 (07:45 +0100)]
Android stepheight: Only increase if 'touching ground' (#6313)

7 years agoMgfractal: Use 'switch case' instead of 'if else' (#6314)
Paramat [Sat, 26 Aug 2017 06:43:50 +0000 (07:43 +0100)]
Mgfractal: Use 'switch case' instead of 'if else' (#6314)

7 years agoAdd on_grant and on_revoke callbacks (#4713)
rubenwardy [Sat, 26 Aug 2017 06:17:05 +0000 (07:17 +0100)]
Add on_grant and on_revoke callbacks (#4713)

* Add register_on_priv_grant/revoke, and on_grant/revoke to privs. Call from /grant and /revoke

* Call on_grant and on_revoke callbacks from set_privs

7 years agoCheck item_drop amount clientside (#6242)
rubenwardy [Sat, 26 Aug 2017 06:11:59 +0000 (07:11 +0100)]
Check item_drop amount clientside (#6242)

7 years agoNetwork cleanup (#6310)
Loïc Blot [Fri, 25 Aug 2017 13:53:56 +0000 (15:53 +0200)]
Network cleanup  (#6310)

* Move Connection threads to dedicated files + various cleanups

* ConnectionReceiveThread::processPacket now uses function pointer table to route MT packet types
* Various code style fixes

* Code style with clang-format

* Various SharedBuffer copy removal

* SharedBuffer cannot be copied anymore using Buffer
* Fix many SharedBuffer copy (thanks to delete operator)

7 years agoOverlays for wield and inventory images (#6107)
Dániel Juhász [Fri, 25 Aug 2017 11:20:53 +0000 (11:20 +0000)]
Overlays for wield and inventory images (#6107)

* Overlays for wield and inventory images

7 years agoTranslations: prevent remote crash with invalid translations
Ekdohibs [Fri, 25 Aug 2017 11:06:59 +0000 (13:06 +0200)]
Translations: prevent remote crash with invalid translations

7 years agoBuiltin item: Tidy up (#4370)
SmallJoker [Thu, 24 Aug 2017 21:06:36 +0000 (23:06 +0200)]
Builtin item: Tidy up (#4370)

New code structure
Use setting movement_gravity
Reset age on merge
Set merge radius to 1.0m

7 years agoAdd translation of LANG_CODE in all languages
Ekdohibs [Thu, 24 Aug 2017 16:55:31 +0000 (18:55 +0200)]
Add translation of LANG_CODE in all languages

7 years agoFix updatepo.sh and run it.
Ekdohibs [Thu, 24 Aug 2017 16:44:38 +0000 (18:44 +0200)]
Fix updatepo.sh and run it.
It was broken due to the presence of "µ" utf-8 characters in builtin/profiler/reporter.lua.

7 years agoAdd clientside translations.
Ekdohibs [Tue, 31 Jan 2017 17:05:03 +0000 (18:05 +0100)]
Add clientside translations.

7 years agoVerify compiler version before building anything (#6293)
Loïc Blot [Thu, 24 Aug 2017 15:16:55 +0000 (17:16 +0200)]
Verify compiler version before building anything (#6293)

GCC 4.9 and Clang 3.4 are the minimum

7 years agoDont define min/max macros in minwindef.h (#6308)
adrido [Thu, 24 Aug 2017 15:13:53 +0000 (17:13 +0200)]
Dont define min/max macros in minwindef.h (#6308)

7 years agoFix OSX builds caused by __WORDSIZE again (#6307)
Pavel Puchkin [Thu, 24 Aug 2017 08:02:23 +0000 (10:02 +0200)]
Fix OSX builds caused by __WORDSIZE again (#6307)

7 years agoMake entity selection and collision boxes independently settable (#6218)
stujones11 [Thu, 24 Aug 2017 08:01:16 +0000 (09:01 +0100)]
Make entity selection and collision boxes independently settable (#6218)

* Make entity selection and collision boxes independently settable

7 years agoFix Android node selection distance (#6187)
Dániel Juhász [Thu, 24 Aug 2017 06:31:33 +0000 (06:31 +0000)]
Fix Android node selection distance (#6187)

7 years agoSafe digging and placing (#6127)
Ben Deutsch [Thu, 24 Aug 2017 06:30:46 +0000 (08:30 +0200)]
Safe digging and placing (#6127)

* Setting: Safe digging and placing

* New setting 'safe_dig_and_place' under Controls
* If set, digging and placing will not auto-repeat
* Releasing buttons unblocks the respective action again
* Useful for inexperienced users in creative mode where default
  repeat times may be too short

* Safe placing (right click repetition) does not need a guarding flag

* Added new setting to minetest.conf.example

7 years agoNetwork cleanup (#6302)
Loïc Blot [Thu, 24 Aug 2017 06:28:54 +0000 (08:28 +0200)]
Network cleanup (#6302)

* Cleanup network headers

* Move peerhandler to a specific header to reduce compilation times
* Move socket.cpp/h to network folder

* More work

* Network code cleanups

* Move socket.{cpp,h} to network folder
* Move Address object to network/address.{cpp,h}
* Move network exceptions to network/networkexceptions.h
* Client: use unique_ptr for Connection
* Server/ClientIface: use shared_ptr for Connection

* Format fixes

* Remove socket.cpp socket.h from clang-format whitelist

* Also fix NetworkPacket code style & make it under clang-format