sfan5
610578e3e2
Use swapNode for set_node_level and add_node_level
...
While this is a behaviour change I don't think the old one made any sense.
It's possible that someone hit this before and wrote a workaround for it,
they won't be affected by this change.
It only makes things work that didn't before.
2023-06-23 09:05:26 +02:00
sfan5
62629939ff
Genericize find_node_near and find_node_in implementations in C++
2023-06-23 09:05:26 +02:00
sfan5
20b10b5691
Refactor EmergeParams owner
2023-06-23 09:05:26 +02:00
sfan5
32ff832108
Save Lua globals after mod loading
...
These are used for the async env currently and will be needed elsewhere soon.
2023-06-23 09:05:26 +02:00
sfan5
524d446757
Minor script api fixes/cleanups
2023-06-23 09:05:26 +02:00
wsor4035
5b6bc8a12b
Remove unsupported media formats from client.cpp
2023-06-22 17:52:48 +02:00
Gregor Parzefall
03ffc2618c
TouchScreenGUI: Add an exit / "ESC" button to the rare controls bar ( #13574 )
2023-06-22 17:50:36 +02:00
numzero
7c26cb1c35
Drop unused tile rotations
2023-06-22 17:50:20 +02:00
numzero
1102f92dac
Use a enum for tile rotation
2023-06-22 17:50:20 +02:00
numzero
729671d6ae
In getNodeTile, use a descriptive struct for the lookup table
2023-06-22 17:50:20 +02:00
numzero
d676520526
Optimize trigonometry out of MapblockMeshGenerator::drawCuboid
2023-06-22 17:50:20 +02:00
numzero
c29d897854
Optimize trigonometry out of MapblockMeshGenerator::drawLiquidTop
2023-06-22 17:50:09 +02:00
numzero
b8ddde0a96
Store liquid data as dimensionless fractions instead of BS multiplies
2023-06-22 17:50:09 +02:00
Desour
03dda13910
OpenALSoundManager: Fix a buffer overflow
2023-06-20 20:54:39 +02:00
lhofhansl
8f25f487fe
Instrument touchMapBlocks and block loading/deserialization. ( #13314 )
2023-06-19 16:59:08 -07:00
Vitaliy
f1feeb319c
Cull liquid back face on liquid-glasslike interface ( #13594 )
2023-06-18 13:52:14 -07:00
DS
edcbfa31c9
Sound refactor and improvements ( #12764 )
2023-06-16 20:15:21 +02:00
Wuzzy
6b3deaa170
Add disable_descend to disable active node sinking
2023-06-16 20:14:08 +02:00
Muhammad Rifqi Priyo Susanto
a4e69d6843
TouchScreenGUI: Read coordinates directly for virtual joystick ( #13567 )
...
The movement's direction and speed are calculated directly from the button's relative screen coordinate. The previous method was to trigger the movement using a keyboard event.
The only virtual joystick status left is Aux1 button.
---------
Co-authored-by: Gregor Parzefall <gregor.parzefall@posteo.de>
2023-06-16 22:40:16 +07:00
Desour
c549e84abb
Silence a -Wsign-compare warning for invlist indices
2023-06-15 13:55:20 +02:00
Desour
dade95e142
Fix curl deprecation warnings, and set minimum curl version to 7.56.0
2023-06-15 13:55:20 +02:00
Desour
f947e2afec
Fix some gcc -Wself-move warnings
2023-06-15 13:55:20 +02:00
Desour
6a05d63993
Use [[noreturn]]
2023-06-15 10:38:44 +02:00
Desour
5e6d144567
Enable -Wimplicit-fallthrough and use [[fallthrough]] attribute
2023-06-15 10:38:44 +02:00
Desour
9c348d057e
Replace the old STATIC_ASSERT macro with static_assert
2023-06-15 10:38:44 +02:00
Desour
8b108ed5f2
Use nicer syntax for nested namespace definitions
2023-06-15 10:38:44 +02:00
Desour
e700182f44
Replace Optional with std::optional
2023-06-15 10:38:44 +02:00
Desour
34ad551efc
Use MutexAutoLock for Thread::m_start_finished_mutex
2023-06-15 10:38:44 +02:00
Pascal Abresch
ba80d1ce1f
Implement check_offset for decorations
2023-06-15 10:36:46 +02:00
DS
c91182e1b3
Move the platform-dependent stuff in renderingengine.cpp to irrlicht ( #13348 )
2023-06-11 14:17:39 +02:00
DS
553dc02deb
Fix some memleaks from GUIButtonImage ( #13564 )
...
* `m_foreground_image` was grabbed, but not dropped in the destructor.
* `m_image` was created with new. It is grabbed by itself and by the env (not only by the env!, so it's an owning ptr). This owning ptr also was never dropped.
2023-06-06 19:01:32 +02:00
Desour
1b51ff333a
Use unique_ptr for ServerInventoryManager::DetachedInventory::inventory
2023-06-05 20:43:33 +02:00
Desour
1780d1bbde
Use unique_ptrs for MapSector::m_blocks
2023-06-05 20:43:33 +02:00
Desour
08ea467bfe
Use unique_ptr for g_httpfetch_thread
2023-06-05 20:43:33 +02:00
Desour
cfb1b879e0
Use unique_ptrs for CurlFetchThread::m_all_ongoing
2023-06-05 20:43:33 +02:00
Desour
d0bcdff5ce
Use unique_ptrs for leveldb db and iterators
2023-06-05 20:43:33 +02:00
Gregor Parzefall
a1463263b5
Auto-detect locale on Android ( #13561 )
2023-06-05 12:02:10 +02:00
Gregor Parzefall
a857c46e6e
Make the settings GUI more usable on Android ( #13543 )
2023-06-05 12:01:54 +02:00
Desour
d9f478cbfb
Remove a misleading MutexAutoLock in l_to_table
...
The temporary is immediately destructed, so the mutex isn't locked
after the line.
Removed the lock, because the Settings member-functions used by
push_settings_table lock the mutex and are thread-safe, but would
cause a dead-lock.
2023-06-05 12:01:08 +02:00
OgelGames
252c79d53a
Inventory mouse shortcut improvements ( #13146 )
...
Co-authored-by: Muhammad Rifqi Priyo Susanto <muhammadrifqipriyosusanto@gmail.com>
2023-06-05 12:00:32 +02:00
Riley Adams
29b7aea38b
Cavegen y biome check ( #13472 )
2023-06-05 11:59:22 +02:00
Muhammad Rifqi Priyo Susanto
7221de6ede
Option to invert direction or disable mouse wheel for hotbar item selection
...
More changed callbacks for the settings are added in readSettings(). Those are also deregistered when the Game object is destroyed.
2023-05-31 12:40:00 +07:00
Treer
8cd1296049
Add additional texture modifiers ( #10100 )
...
* Adjust hue, saturation, and lightness
* Colorize using hue, saturation, and lightness
* Adjust contrast & brightness
* Hard light
* Overlay
* Screen
* Create texture of a given size and color
2023-05-29 20:17:39 +01:00
lhofhansl
a8ec6092e2
Load blocks and objects behind player when in third-persion front-view ( #13431 )
2023-05-29 10:26:42 -07:00
Gregor Parzefall
fc3d6c1dd9
Place nodes with single tap on Android (+ bugfix) ( #13187 )
...
Don't place nodes when closing button bars.
Update docs (also in-game).
Rename "Default controls" -> "Controls" in Android pause menu since players can't change them (normally), so calling them "default" doesn't make sense.
2023-05-29 12:30:30 +07:00
lhofhansl
6832bf044e
Avoid jittering when player is attached ( #12439 )
...
* Avoid very jittering when player is attached.
Co-authored-by: sfan5 <sfan5@live.de>
Co-authored-by: Vitaliy <numzer0@yandex.ru>
2023-05-28 11:36:34 -07:00
sfan5
8cccd75e81
Android build via CMake ( #13528 )
...
* the thing
* the thing 2
2023-05-26 15:21:23 +02:00
Thresher
00c647e4cc
Convert spaces to tabs ( #13506 )
...
* Convert spaces to tabs
* Desour reviews 1-3 fix
* Desour fixes
* Undo alignment changes
2023-05-26 15:13:57 +02:00
ROllerozxa
f4cb16cc2d
Disable desynchronize_mapblock_texture_animation
by default ( #13514 )
2023-05-26 13:48:37 +02:00
Zughy
d6eb6ff973
Reset player lighting when passing no arguments ( #13525 )
...
Co-authored-by: Zughy <4279489-marco_a@users.noreply.gitlab.com>
2023-05-26 13:47:16 +02:00
Zughy
b60d38b7f9
Reset day/night ratio even when passing no arguments ( #13524 )
...
* reset day_night_ratio when passing zero fields
* Update lua_api.md
---------
Co-authored-by: Zughy <4279489-marco_a@users.noreply.gitlab.com>
2023-05-26 13:45:42 +02:00
Thresher
180ec92ef9
Remove trailing whitespace ( #13505 )
2023-05-18 20:34:18 +02:00
SmallJoker
95a9f4ab7c
Inventory: Allow InvRef:set_list with new_size >= old_size ( #13497 )
...
Fixes a regression introduced by enforced checks to work with
valid pointers within inventory actions.
2023-05-18 20:32:55 +02:00
Gregor Parzefall
f393214fef
Settings menu improvements regarding default values ( #13489 )
...
The reset button now removes the setting from minetest.conf instead of setting it to its default value.
The reset button is now shown whenever a value is present in minetest.conf
Float settings now get a .0 suffix if they have no decimal places.
2023-05-18 20:32:26 +02:00
savilli
5ba70cf5ef
Fix crash on handling wallmounted nodes with invalid param2 ( #13487 )
2023-05-18 20:31:04 +02:00
Zemtzov7
35112f2453
Disable vertical movement when both jump and sneak keys are pressed ( #13426 )
2023-05-18 20:30:21 +02:00
Gregor Parzefall
15fb4cab15
Fix Android segfault when game exits before TouchScreenGUI is initalized
2023-05-11 22:51:16 +02:00
sfan5
15445a0fbe
Raise and clean up _WIN32_WINNT constant
2023-05-11 22:51:01 +02:00
Wuzzy
80574cdbe8
Fix rotation of 4dir in schematic placement ( #13432 )
2023-05-11 22:50:52 +02:00
Buckaroo Banzai
65692ad1b5
Add min/max protocol version to minetest.get_version()
( #13482 )
2023-05-06 16:16:21 +01:00
DS
bec9c68bf3
Release invlist resizelock while doing the recursive callback in move_somewhere mode ( #13470 )
...
Fixes a crash in popular creative inventory mods that set the list when you put
something into trash.
2023-04-30 18:20:48 +02:00
lhofhansl
b35aa10579
Guarantee ActiveObjectMgr::m_active_object is not modified while iterating ( #13468 )
...
Currently if a mod creates new active objects in on_deactivate the server could crash.
2023-04-28 11:17:48 -07:00
Desour
7f6b09dce8
Use json forward-declarations
2023-04-27 18:50:33 +02:00
Desour
8b73743baa
Reduce number of recursively included headers
...
This should improve compilation speed.
Things changed:
* Prefer forward-declarations in headers.
* Move header-includes out of headers if possible.
* Move some functions definitions out of headers.
* Put some member variables into unique_ptrs (see Client).
2023-04-27 18:50:33 +02:00
Desour
e9e8eed360
GUIChatConsole: Use primary selection
2023-04-27 18:50:17 +02:00
Desour
062b4d036a
GUIEditBox: Use primary selection
2023-04-27 18:50:17 +02:00
SmallJoker
0fb6dbab36
InventoryManager: Disallow resizing or deleting inventory lists that are in use ( #13360 )
...
Naive solution to prevent InventoryList UAF and OOB ItemStack access caused by shrink/clear operations on InventoryLists within callbacks of an inventory action.
Co-authored-by: Desour <ds.desour@proton.me>
2023-04-22 17:42:36 +02:00
rubenwardy
4158b72971
Add ability to override item images using meta ( #12614 )
2023-04-17 19:44:41 +01:00
rubenwardy
b1786e88ac
Use .md extension for markdown files
...
Linking to line numbers is brittle, linking to sections/headings is better.
If you still want to link to a line number, you can append ?plain=1 to GitHub's URL
2023-04-16 20:23:53 +01:00
rubenwardy
5cd6a22dd3
Update settingtypes ( #13428 )
...
* Move settings to correct sections
* Improve titles and descriptions
* Make defaults in settingtypes.txt and defaultsettings.cpp match
Fixes #9002
2023-04-14 22:32:25 +01:00
Desour
ccd696c49a
Throw Hocroft-Karp onto shapeless recipes
2023-04-14 21:10:09 +02:00
Desour
50e91b882c
Add some simple unittests for shapeless recipes
...
Note: devtest also has craft unittests (see devtest/mods/unittests/crafting.lua),
but those aren't run at load-time.
2023-04-14 21:10:09 +02:00
DS
ae7271b725
Fix background[] pos-offset lower-right-corner being at least (1,1) ( #13320 )
...
IGUIElement has a MinSize for the RelativeRect, which is at least (1,1).
This means a pos offset of (0,0) will cause a seemingly off-by-1 error at the
lower right corner, and (0.1,0.1) for example will just not work on the lower
right corner.
Ergo, we can't use the AbsoluteRect for storing the pos offset.
2023-04-14 21:05:09 +02:00
DS
d49d80a4a0
Store whether window is maximized ( #12861 )
2023-04-14 21:04:03 +02:00
Lars
f9b1176fa9
Track server's max AsyncRunStep
2023-04-14 00:09:48 +01:00
Lars
3d232e2345
Add MAX profiler option
2023-04-14 00:09:48 +01:00
rubenwardy
9d1ae80e89
Add focused styling to buttons ( #13414 )
2023-04-14 00:09:29 +01:00
Gregor Parzefall
2a1bc82887
Fix black loading screen background if menu_clouds = false
( #13322 )
2023-04-13 18:12:48 +01:00
Wuzzy
d1e5dbefc7
Clarify documentation of punch key ( #13238 )
2023-04-13 18:12:26 +01:00
Desour
fc116ec950
Play object footstep sound at feet
2023-04-13 18:12:13 +01:00
Zardshard
e139749b5c
Simulate all keys being released when when game loses focus ( #13336 )
2023-04-13 18:06:21 +02:00
rubenwardy
2fc7eb3ea2
Remove formspec_default_bg_color/opacity settings ( #13419 )
...
These settings are unnecessary. They only apply when formspecs don't have a background/bgcolor set. In practice, most games do theme their GUIs. Removing low value settings simplifies code and improves UX by decluttering the settings menu
Split out from #12140
2023-04-11 19:57:36 +01:00
Desour
1dd13da37d
Get rid of global dummySoundManager
...
There is no need for this to be globally unique.
2023-04-11 20:06:15 +02:00
Desour
b201c03625
Use smart-ptrs in GUIEngine
2023-04-11 20:06:15 +02:00
Desour
ceec560779
Add make_irr
2023-04-11 20:06:15 +02:00
Riley Adams
73391013f7
Add node pos to node damage HP change reason ( #13196 )
2023-04-10 23:04:52 +01:00
Lars
4a742be73e
Do not call updateDrawList, updateDrawListShadow, and touchMapBlocks in the same frame
2023-04-09 07:10:17 -10:00
Lars
8982998681
Add a default direction light for shadows
2023-04-09 07:10:17 -10:00
sfan5
9d736e8b8b
Drop ENABLE_GLES option
...
ENABLE_GLES predates forking Irrlicht. Its primary use was to distinguish Irrlicht-ogles from upstream version as Minetest could be compiled with either.
That's not necessary anymore and gets in the way sometimes.
2023-04-08 20:19:35 +02:00
sfan5
c26e122485
Move video_driver default selection to runtime
2023-04-08 20:19:35 +02:00
Desour
67068cfaf4
Get rid of wgettext
2023-04-08 20:17:50 +02:00
Vitaliy
35929d27e3
Remove fast faces ( #13216 )
...
Co-authored-by: Lars <larsh@apache.org>
2023-04-08 20:17:15 +02:00
SmallJoker
ba2fee0751
Particle spawner: Fix missing parameters
...
The changes done to clientpackethandler.cpp and server.cpp move the
compatibility code into a protocol version check so that older code
parts can easily be removed in the future (e.g. bump of minimal version).
2023-04-08 17:23:17 +02:00
SmallJoker
f8e0778fc9
Particle spawner: Move definitions to source
...
Long functions were moved to the source file to keep the header
short to speed up compiling. This has no functional change.
2023-04-08 17:23:17 +02:00
SmallJoker
9c9309cdbb
Lua API: Catch serialization error for chat messages ( #13337 )
...
Prevents server errors caused by too long chat messages from the Lua API.
2023-04-07 12:49:35 +02:00
SmallJoker
d975ebdcb9
Limit formspec fields to 640K ( #13380 )
...
Fixes an issue where long inputs could cause issues when dealing with formspecs.
The expected data is usually below 1 KiB, however that's not a technical limit.
2023-04-07 12:49:23 +02:00
Lars
7048fc25dd
Take mesh-bounding-sphere into account in updateDrawListShadow
2023-04-03 13:57:05 -07:00
Lars
b01f85d573
Revert "Add mesh-holding blocks to shadow drawlist. ( #13203 )"
...
This reverts commit 2a8becd650a8adaa86fd7f76122ea75f11f49dad.
2023-04-03 13:57:05 -07:00
SmallJoker
1c1f1b1615
Revert "Enable connected glass by default ( #13242 )"
...
This reverts commit a93f3542d92e87c3d728f067358e6f42b31cfe96 for
the upcoming 5.7.0 release.
See https://github.com/minetest/minetest/issues/8290 for a detailed discussion.
2023-04-02 20:56:31 +02:00
x2048
6c0a6925fc
Corrections to loops and BFS cullers ( #13375 )
...
* Reset usage timers in loops culler
* Correctly touch map blocks when using bfs culler
* Align use of variables
* Report statistics when using loop culler
2023-04-01 22:41:00 +02:00