Loic Blot [Sun, 30 Oct 2016 15:12:09 +0000 (16:12 +0100)]
Fix overloading problems mentioned by clang
Ner'zhul [Sun, 30 Oct 2016 13:53:26 +0000 (14:53 +0100)]
PlayerSAO/LocalPlayer refactor: (#4612)
* Create UnitSAO, a common part between PlayerSAO & LuaEntitySAO
* Move breath to PlayerSAO & LocalPlayer
* Migrate m_yaw from (Remote)Player & LuaEntitySAO to UnitSAO
* Migrate m_yaw from Player to LocalPlayer for client
* Move some functions outside of player class to PlayerSAO/RemotePlayer or LocalPlayer depending on which class needs it
* Move pitch to LocalPlayer & PlayerSAO
* Move m_position from Player to LocalPlayer
* Move camera_barely_in_ceiling to LocalPlayer as it's used only there
* use PlayerSAO::m_base_position for Server side positions
* remove a unused variable
* ServerActiveObject::setPos now uses const ref
* use ServerEnv::loadPlayer unconditionnaly as it creates RemotePlayer only if it's not already loaded
* Move hp from Player to LocalPlayer
* Move m_hp from LuaEntitySAO to UnitSAO
* Use m_hp from PlayerSAO/UnitSAO instead of RemotePlayer
Hugo Locurcio [Sun, 30 Oct 2016 04:36:57 +0000 (05:36 +0100)]
Rename testsounds/ directory to sounds/ (#1984)
sfan5 [Fri, 28 Oct 2016 13:50:23 +0000 (15:50 +0200)]
Add missing keyname_to_keycode function (needed on Android)
When rewriting keycode.cpp I overlooked this function, fixes #4683 completely
Ner'zhul [Fri, 28 Oct 2016 13:37:19 +0000 (15:37 +0200)]
Add missing remoteplayer.cpp to Android build
this should fix #4683
Ner'zhul [Thu, 27 Oct 2016 07:45:01 +0000 (09:45 +0200)]
Add unittests to test player saving/loading (#4679)
Dániel Juhász [Tue, 25 Oct 2016 21:04:10 +0000 (23:04 +0200)]
Cleanup
Dániel Juhász [Sun, 23 Oct 2016 15:51:13 +0000 (17:51 +0200)]
Use node lighting for liquid spreading
This commit modifies the liquid transforming procedure to light and
unlight nodes instead of whole map blocks.
Dániel Juhász [Thu, 20 Oct 2016 19:41:38 +0000 (21:41 +0200)]
Improved lighting
This commit rewrites the procedure that is responsible for light
updating.
this commit
-provides iterative solutions for unlighting and light spreading
-introduces a new priority queue-like container for the iteration
-creates per-node MapBlock caching to reduce retrieving MapBlocks from
the map
-calculates with map block positions and in-block relative node
coordinates
-skips light updating if it is not necessary since the node's new light
will be the same as its old light was
raymoo [Thu, 27 Oct 2016 03:24:34 +0000 (20:24 -0700)]
Document item use callbacks (#4668)
lhofhansl [Wed, 26 Oct 2016 14:24:45 +0000 (07:24 -0700)]
Shaders: Remove special handling for liquids. (#4670)
Foghrye4 [Sun, 23 Oct 2016 17:45:25 +0000 (20:45 +0300)]
Adding LuaError on attempt to assign vectors with values out of range
Gael-de-Sailly [Tue, 25 Oct 2016 15:12:50 +0000 (17:12 +0200)]
ParticleSpawner: fix offset being added twice
adrido [Mon, 24 Oct 2016 04:49:35 +0000 (06:49 +0200)]
Windows: dont link to libraries that are already linked by cmake
This solves the problem whith building where build fails if the libaries have different names.
Lars Hofhansl [Mon, 24 Oct 2016 15:23:13 +0000 (08:23 -0700)]
Shaders: Apply tone mapping before fog calculation.
Lars Hofhansl [Fri, 21 Oct 2016 05:21:49 +0000 (22:21 -0700)]
Shaders: Harmonize Irrlicht and shader fog calculations
paramat [Fri, 21 Oct 2016 01:09:34 +0000 (02:09 +0100)]
Lua_api.txt: Clarify 'override_meta' bool in 'set mapgen setting'
paramat [Wed, 5 Oct 2016 00:25:02 +0000 (01:25 +0100)]
Damage flash: Reduce maximum alpha. Avoid fade overload
Flash alpha maximum is reduced from 180 to 127 to avoid player blindness
in combat. Flash alpha minimum is unchanged.
The 'damage_flash' value is now limited to max alpha, to avoid multiple
hits creating a huge value that causes flash to stay at maximum alpha
for a long period. Now alpha always starts to fade immediately after
taking damage.
Both problems can be seen in Minetest let's play videos.
Simplify and optimise some code.
paramat [Wed, 19 Oct 2016 00:37:12 +0000 (01:37 +0100)]
Changes to static object storage limit and error message
Move static object storage force-delete message from errorstream to
warningstream.
Increase 'max objects per block' setting to 64.
Add missing spaces in warning code.
red-001 [Mon, 26 Sep 2016 18:07:52 +0000 (19:07 +0100)]
Chat commands: Trim whitespaces from input of `/privs` command
Foghrye4 [Sun, 9 Oct 2016 17:40:29 +0000 (20:40 +0300)]
Fix crash on attaching player to entity
Rename "refresh" to "processInitData"
rubenwardy [Mon, 17 Oct 2016 19:36:38 +0000 (20:36 +0100)]
Builtin: Add vector.floor helper function
Lars Hofhansl [Mon, 17 Oct 2016 06:55:49 +0000 (23:55 -0700)]
Revert changes to toggleNoClip and toggleFreeMove
Lars Hofhansl [Mon, 17 Oct 2016 04:27:21 +0000 (21:27 -0700)]
Don't use day light sky unless noclip and free_move are enabled
ShadowNinja [Sun, 9 Oct 2016 18:36:22 +0000 (14:36 -0400)]
Enable mod security by default
red-001 [Tue, 27 Sep 2016 11:53:01 +0000 (12:53 +0100)]
Builtin/../chatcommands: Add /grantme command
Rogier [Mon, 25 Jul 2016 16:39:29 +0000 (18:39 +0200)]
Emergeblocks: Fix occasional crash
Modification of the emergeblocks internal state was not protected
by a lock, causing a race condition.
This can be reproduced by repeatedly running emergeblocks for an
already-generated section of the map (with multiple emerge threads).
Tim [Sat, 15 Oct 2016 15:59:23 +0000 (17:59 +0200)]
Travis: Only trigger a compile, when C/C++ related files were touched (#4284)
sfan5 [Fri, 14 Oct 2016 11:08:59 +0000 (13:08 +0200)]
Make documentation about ItemStack:set_{name,count,wear} clearer
These methods do not actually fail but instead clear the item stack
and return false if a value like e.g. "" is passed.
tenplus1 [Mon, 10 Oct 2016 17:37:21 +0000 (18:37 +0100)]
Builtin/../falling.lua: Code optimisation
Lars Hofhansl [Wed, 12 Oct 2016 20:38:53 +0000 (13:38 -0700)]
Use range-based fog instead of z-plane based.
raymoo [Thu, 4 Aug 2016 20:09:21 +0000 (13:09 -0700)]
Attached particle spawners
sfan5 [Wed, 12 Oct 2016 16:39:35 +0000 (18:39 +0200)]
Don't use unordered maps for ProfilerGraph (fixes flickering)
red-001 [Tue, 11 Oct 2016 17:11:38 +0000 (18:11 +0100)]
Add a button for disabling all mods to world config. (#3900)
SmallJoker [Sun, 9 Oct 2016 08:53:13 +0000 (10:53 +0200)]
Add missing languages to the settings
Rogier [Sun, 9 Oct 2016 15:57:18 +0000 (17:57 +0200)]
Disable cmake message concerning WIN32 on non-windows systems
Loic Blot [Sun, 9 Oct 2016 14:31:43 +0000 (16:31 +0200)]
A little cleanup since previous commit
Loic Blot [Sat, 8 Oct 2016 21:13:38 +0000 (23:13 +0200)]
Environment cleanup
* Move client list to ServerEnvironment and use RemotePlayer members instead of Player
* ClientEnvironment only use setLocalPlayer to specify the current player
* Remove ClientEnvironment dead code on player list (in fact other players are CAO not Player objects)
* Drop LocalPlayer::getPlayer(xxx) functions which aren't used.
* Improve a little bit performance by using const ref list for ClientEnvironment::getPlayerNames() & Client::getConnectedPlayerNames()
* Drop isLocal() function from (Local)Player which is not needed anymore because of previous changes
This change permits to cleanup shared client list which is very old code.
ClientEnvironment doesn't use player list anymore, it only contains the local player, as addPlayer is only called from Client constructor client side.
Clients are only CAO on client side, this cleanup permit to remove confusion about player list.
Rui [Sun, 9 Oct 2016 08:27:14 +0000 (17:27 +0900)]
Remove unused parameter of GUIVolumeChange
Loic Blot [Sat, 8 Oct 2016 17:08:23 +0000 (19:08 +0200)]
Move RemotePlayer code to its own cpp/header
Loic Blot [Sat, 8 Oct 2016 15:56:38 +0000 (17:56 +0200)]
RemotePlayer/LocalPlayer Player base class proper separation (code cleanup) (patch 3 of X)
* remove IGameDef from Player class, only LocalPlayer has it now
* move many attributes/functions only used by LocalPlayer from Player to LocalPlayer
* move many attributes/functions only used by RemotePlayer from Player to RemotePlayer
* make some functions const
* hudGetHotbarSelectedImage now returns const ref
* RemotePlayer getHotbarSelectedImage now returns const ref
* various code style fixes
Loic Blot [Sat, 8 Oct 2016 14:42:09 +0000 (16:42 +0200)]
Optimize ClientIface::getPlayerNames(): return const ref instead a copy of all names
Loic Blot [Sat, 8 Oct 2016 14:31:22 +0000 (16:31 +0200)]
More code cleanup (UNORDERED + RemotePlayer/LocalPlayer)
* ClientEnvironment now uses UNORDERED MAP for active objects
* Use RemotePlayer and LocalPlayer everywhere it's possible
* Minor code style fixes
* Drop Client::getBreath() unused function
rubenwardy [Sun, 2 Oct 2016 23:30:33 +0000 (00:30 +0100)]
Fix backwards compatibility issue introduced by close_on_enter
SmallJoker [Sat, 8 Oct 2016 14:25:34 +0000 (16:25 +0200)]
Ensure std::unordered_ be used on MSVC 2010 too (#4600)
Loic Blot [Sat, 8 Oct 2016 10:21:41 +0000 (12:21 +0200)]
Player/LocalPlayer/RemotePlayer inheritance cleanup (part 2 on X)
* Server/Client Environments now have an helper to cast Player object in the right type to use it
* Server: use RemotePlayer everywhere and remove previous added casts
* Client: use LocalPlayer where needed
* Environment: remove unused functions (getPlayers(), getRandomConnectedPlayer(), getNearestConnectedPlayer())
gregorycu [Sat, 8 Oct 2016 13:08:35 +0000 (00:08 +1100)]
Speed up emerge thread by using unordered map in a few places. Looking at 25% speedup in Emerge thread on Just Test.
gregorycu [Sat, 8 Oct 2016 12:58:47 +0000 (23:58 +1100)]
Ensure std::unordered_ will be used on supported MSVC compilers
Foghrye4 [Sat, 8 Oct 2016 12:51:25 +0000 (16:51 +0400)]
Prevent attached models from disappearing during parent reload (#4128)
HybridDog [Sat, 8 Oct 2016 12:42:17 +0000 (14:42 +0200)]
VoxelArea: faster iter function (#4490)
Loic Blot [Sat, 8 Oct 2016 09:25:46 +0000 (11:25 +0200)]
Remove some unused attributes/class functions in server.cpp/h
Loic Blot [Sat, 8 Oct 2016 08:38:04 +0000 (10:38 +0200)]
Player/LocalPlayer/RemotePlayer inheritance cleanup (part 1 on X)
* LocalPlayer take ownership of maxHudId as it's the only caller
* RemotePlayer take ownership of day night ratio as it's the only user
* Pass getPlayerControl as const reference to prevent object copy on each call (perf improvement in ObjectRef::l_get_player_control call)
* getPlayerSAO is now only RemotePlayer call
* get/setHotbarItemCount is now RemotePlayer owned
* Server: Use RemotePlayer instead of Player object on concerned call to properly fix the object type
* PlayerSAO now uses RemotePlayer instead of Player because it's only server side
* ObjectRef::getplayer also returns RemotePlayer as it's linked with PlayerSAO
paramat [Thu, 6 Oct 2016 22:03:55 +0000 (23:03 +0100)]
Lua_api.txt: Add biome and nodeupdate documentation
Add missing documentation for 'register_biome' and
'clear_registered_biomes'.
Add documentation for 'nodeupdate_single'. 'nodeupdate'
is not yet documented due to a bug it causes.
SmallJoker [Sun, 17 Jul 2016 20:26:23 +0000 (22:26 +0200)]
Textures: Ignore unknown node in override.txt
sfan5 [Thu, 6 Oct 2016 19:13:04 +0000 (21:13 +0200)]
Fix C++11 Windows build of threading code
The initial problem was that mutex_auto_lock.h tries to use std::unique_lock<std::mutex>
despite mutex.h not using C++11's std::mutex on Windows. The problem here is the mismatch
between C++11 usage conditions of the two headers. This commit moves the decision logic
to threads.h and makes sure mutex.h, mutex_auto_lock.h and event.h all use the same features.
Loic Blot [Thu, 6 Oct 2016 17:20:12 +0000 (19:20 +0200)]
use unordered containers where possible (patch 4 on X)
Also remove some unused parameters/functions
SmallJoker [Thu, 6 Oct 2016 11:49:40 +0000 (13:49 +0200)]
Fix narrow string compiling issue on MSVC2010
Loic Blot [Thu, 6 Oct 2016 06:48:20 +0000 (08:48 +0200)]
Use more unordered_maps to improve performance in c++11 builds
SmallJoker [Thu, 6 Oct 2016 08:12:14 +0000 (10:12 +0200)]
Use relative position for nametags
Loic Blot [Thu, 6 Oct 2016 05:48:49 +0000 (07:48 +0200)]
Fix macosx build by disabling postgresql upgrade
est31 [Thu, 6 Oct 2016 01:32:52 +0000 (03:32 +0200)]
Fix crash regression when chatting in the ncurses console
Fixes #4579, a regression introduced by commit
d4c76258e37337ea585cf24d8e05b50a30fa307d "Chat: new settings to prevent spam"
Loic Blot [Wed, 5 Oct 2016 20:17:22 +0000 (22:17 +0200)]
Travis: build matrix improvements + CPP11 build
Loic Blot [Wed, 5 Oct 2016 18:58:05 +0000 (20:58 +0200)]
Compilation fix
Loic Blot [Wed, 5 Oct 2016 07:03:55 +0000 (09:03 +0200)]
Replace various std::map with UNORDERED_MAP + various cleanups
This is part 2 for
5f084cd98d7b3326b51320455364337539710efd
Other improvements:
* Use the defined ItemGroupList when used
* make Client::checkPrivilege const
* inline some trivial functions
* Add ActiveObjectMap typedef
* Add SettingsEntries typedef
Loic Blot [Tue, 4 Oct 2016 22:13:10 +0000 (00:13 +0200)]
Make some maps unordered to improve performance
* This permit to improve performance on C++11 builds
* use some existing typedefs in tools maps
* minor code style changes
Loic Blot [Tue, 4 Oct 2016 16:17:12 +0000 (18:17 +0200)]
Chat: new settings to prevent spam
Added the following chat coreside features
* Chat messages length limit
* Message rate limiting
* Message rate kicking
Note:
* handleChat now takes RemotePlayer pointer instead of u16 to remove useless
lookups
paramat [Sun, 2 Oct 2016 23:56:17 +0000 (00:56 +0100)]
Mapblock_mesh_generate_special: Improve performance
Remove uses of std::map.
Make sure we use ContentFeatures reference not value.
Original commit by gregorycu.
paramat [Sun, 25 Sep 2016 21:03:35 +0000 (22:03 +0100)]
Textures: New 'smoke puff' texture from TNT mod
est31 [Mon, 3 Oct 2016 13:55:15 +0000 (15:55 +0200)]
Fix build/warning on non X11 platforms
paramat [Sun, 2 Oct 2016 21:04:47 +0000 (22:04 +0100)]
Builtin/falling: Add fallback vector in case of nil 'wallmounted to dir'
The fallback vector is in case 'wallmounted to dir' is nil due
to voxelmanip placing a wallmounted node without resetting a
pre-existing param2 value that is out-of-range for wallmounted.
The fallback vector corresponds to param2 = 0.
raymoo [Sat, 3 Sep 2016 04:37:51 +0000 (21:37 -0700)]
Forceloading: Transient forceloads
Adds a flag to forceload_block which lets you turn off persistence for
that forceload.
rubenwardy [Thu, 7 Jul 2016 20:10:15 +0000 (21:10 +0100)]
Formspec: Add container[] and container_end[] elements
sfan5 [Sun, 2 Oct 2016 13:44:53 +0000 (15:44 +0200)]
Allow nothing to be selected from formspec parameters
Rui [Sat, 1 Oct 2016 14:16:50 +0000 (23:16 +0900)]
Fix typo in core.after (#4560)
Wuzzy [Wed, 28 Sep 2016 01:00:37 +0000 (03:00 +0200)]
Update default controls in README.txt
paramat [Mon, 26 Sep 2016 22:21:33 +0000 (23:21 +0100)]
Mgv7: Avoid mid-air spawn on disabled mountain terrain, optimise function
'getSpawnLevelAtPoint()' did not account for disabled mountains, it
was possible to be spawned in mid-air where a mountain surface would
have been.
Avoid check for river area if rivers are disabled.
est31 [Fri, 30 Sep 2016 12:30:37 +0000 (14:30 +0200)]
Fix android build
Fixes #4493.
sfan5 [Thu, 29 Sep 2016 14:20:05 +0000 (16:20 +0200)]
Only include keycode unittests in client build (fixes #4559)
sfan5 [Thu, 22 Sep 2016 13:23:54 +0000 (15:23 +0200)]
Add keycode.cpp unittests
sfan5 [Wed, 21 Sep 2016 21:40:19 +0000 (23:40 +0200)]
Rewrite keycode.cpp (Keycode handling & names)
paramat [Fri, 23 Sep 2016 16:01:49 +0000 (17:01 +0100)]
Conf.example: Re-add deleted noise parameter documentation
Re-add documentation of noise parameter formats.
Re-add 'mgv5_np_ground' noise parameters in group format.
Both these were deleted through auto-generation of conf.example.
Add note to builtin/mainmenu/dlg_settings_advanced.lua that this
documentation must be preserved.
sfan5 [Tue, 20 Sep 2016 19:50:42 +0000 (21:50 +0200)]
Update library versions in buildbot
The libraries updated in this commit were built with a set of scripts:
https://gist.github.com/sfan5/
780c24313c164d34634e18677683b9a3
Building new library versions or just using a different MinGW version
is now way easier. This means Windows builds no longer need to use
ancient library versions just because nobody knows how to build them.
sfan5 [Tue, 20 Sep 2016 19:40:05 +0000 (21:40 +0200)]
Don't use ZLIB_WINAPI if the required DLL is not provided to CMake
This allows you to use an stdcall zlib (zlib1.dll instead of zlibwapi.dll)
when building Minetest for win32.
sfan5 [Mon, 19 Sep 2016 18:06:39 +0000 (20:06 +0200)]
Do not serialize empty NodeMetadata
This commit fixes #4516, though note that this will gradually fix MapBlocks
as they are used/modified and thus re-serialized.
paramat [Wed, 21 Sep 2016 03:25:10 +0000 (04:25 +0100)]
Builtin: Change error to warning for light_source > 14
James Stevenson [Thu, 15 Sep 2016 15:53:17 +0000 (11:53 -0400)]
Increase default font size by 1
est31 [Mon, 19 Sep 2016 10:11:31 +0000 (12:11 +0200)]
Fix a typo and use proper deprecation notification system
Fix a typo pointed out by @thecow275.
Also, use the deprecated notification system which respects the
deprecated_lua_api_handling setting.
paramat [Thu, 15 Sep 2016 21:40:19 +0000 (22:40 +0100)]
Register.lua: Throw error if node 'light_source' > core.LIGHT_MAX
Add 'core.LIGHT_MAX = 14' to builtin/game/constants.lua with the intention
to replace misplaced 'default.LIGHT_MAX = 14' in Minetest Game.
Add comment in light.h requiring the constant be changed in both places.
Add lighting bug warning to note in lua_api.txt.
There are hundreds of mod uses of 15 which causes a lighting bug.
paramat [Sun, 11 Sep 2016 21:48:04 +0000 (22:48 +0100)]
Lua_api.txt: Add note of maximum value for node 'light_source'
Maximum is 14.
A value of 15 (reserved for direct sunlight) causes a lighting bug.
Thomas--S [Fri, 12 Aug 2016 15:56:31 +0000 (17:56 +0200)]
Add an [invert:<mode> texture modifier
Inverts the given channels of the base image.
Mode may contain the characters "r", "g", "b", "a".
Only the channels that are mentioned in the mode string will be inverted.
ShadowNinja [Sat, 9 Jan 2016 22:07:46 +0000 (17:07 -0500)]
Collision: Improve performance by combining 6 vectors into 1 using a struct
paramat [Sun, 11 Sep 2016 22:34:43 +0000 (23:34 +0100)]
Decorations: Generalise 'spawn by' to be used by all decoration types
In lua_api.txt, make clear that 'place on' and 'spawn by' can be lists.
sfan5 [Sat, 3 Sep 2016 15:53:15 +0000 (17:53 +0200)]
Allow escaping of texture names when passed as an argument to a modifier
Eric Mountain [Wed, 14 Sep 2016 03:05:21 +0000 (05:05 +0200)]
Fix "unknown CMake command "check_library_exists" (#4517)
Adds CMakeLists.txt include to fix this issue:
$ cmake . -DBUILD_SERVER=TRUE -DBUILD_CLIENT=FALSE \
-DCMAKE_BUILD_TYPE=Release -DENABLE_CURL=TRUE -DENABLE_CURSES=FALSE \
-DENABLE_FREETYPE=TRUE -DENABLE_GETTEXT=FALSE \
-DENABLE_POSTGRESQL=FALSE -DENABLE_SOUND=FALSE -DENABLE_LUAJIT=TRUE \
-DIRRLICHT_SOURCE_DIR=$HOME/irrlicht-1.8.4 -LH
...
CMake Error at src/CMakeLists.txt:339 (check_library_exists):
Unknown CMake command "check_library_exists".
...
Auke Kok [Mon, 12 Sep 2016 23:04:13 +0000 (16:04 -0700)]
Plantlike meshoptions: fix degrotate. (#4512)
This snuck in with the meshoptions patch and accidentally kills
degrotate plants. Thanks to @hybriddog for finding this.
raymoo [Thu, 8 Sep 2016 18:42:08 +0000 (11:42 -0700)]
fix missing parameters in some mentions of entity callbacks
James Stevenson [Fri, 9 Sep 2016 15:47:13 +0000 (11:47 -0400)]
Return nil on empty get_area() (#4508)
SmallJoker [Fri, 9 Sep 2016 05:03:36 +0000 (07:03 +0200)]
Anticheat: Use the physics_override modifiers aswell
SmallJoker [Tue, 6 Sep 2016 17:13:52 +0000 (19:13 +0200)]
Make getStackMax return the correct maximal stack size
paly2 [Sun, 10 Jul 2016 13:15:43 +0000 (15:15 +0200)]
Add minetest.unregister_item and minetest.register_alias_force