sfan5
56123b2fbe
Fix bounding box of clouds
...
fixes #15031
2024-08-23 18:46:12 +02:00
sfan5
7968ab6928
Move network protocol implementation behind an interface
2024-08-21 21:40:58 +02:00
sfan5
c6ef5ab259
Sanitize formspec fields server-side ( #14878 )
2024-08-21 21:34:46 +02:00
Gregor Parzefall
ab7af5d15a
Fix trailing whitespace from #14179
2024-08-21 20:30:58 +02:00
grorp
66b3db3601
Fix mods folder being read twice with RUN_IN_PLACE=1 ( #15024 )
2024-08-21 20:25:58 +02:00
Zemtzov7
b2f6a65bc9
Sort clients in minetest.get_server_status
and privs in minetest.privs_to_string
( #15023 )
2024-08-21 20:25:41 +02:00
wrrrzr
1bccb4e48c
Refactor tool.cpp ( #14873 )
...
Co-authored-by: sfan5 <sfan5@live.de>
2024-08-21 20:24:59 +02:00
sfence
f2c66b9ceb
Add possibility to easier override HP and breath engine logic by Lua ( #14179 )
...
Co-authored-by: Lars Mueller <appgurulars@gmx.de>
2024-08-21 20:24:43 +02:00
Lars Müller
dc21924f31
Fix animations not being restartable ( #15016 )
2024-08-20 11:51:52 +02:00
rubenwardy
2664afd832
Fix Windows enabling touch controls due to existence of touchscreen ( #15003 )
...
We want to check for the form factor instead.
2024-08-20 11:50:29 +02:00
Lars Müller
9ccd9d341f
Revert empty form name deprecation warnings
2024-08-20 11:49:41 +02:00
Daniel Hajjar
ec115ffe2a
Make SecureRandom non-failable
2024-08-20 11:49:15 +02:00
cx384
03e600a721
Fix whitespaces
2024-08-17 21:02:54 +02:00
Lars
3df070f352
Remove SAO::onAttach() and SAO::onDetach()
2024-08-17 19:49:38 +02:00
sfan5
5d226268df
Irrlicht cleanups (mostly getting rid of core::array
)
...
Co-authored-by: Lars Müller <34514239+appgurueu@users.noreply.github.com>
2024-08-17 19:49:11 +02:00
1F616EMO~nya
5acc2736db
Translate access denied strings ( #14842 )
2024-08-17 19:48:54 +02:00
j-r
1fb49e9ca7
Add shared mods path to get_modpaths
...
...because the documentation implies it should be.
2024-08-17 19:48:40 +02:00
Lars Mueller
d3ca269c79
Add minetest.is_valid_player_name
utility
2024-08-16 22:13:16 +02:00
Lars Mueller
6874c358ea
Allow managing object observers
...
-----
Co-authored-by: sfan5 <sfan5@live.de>
Co-authored-by: SmallJoker <SmallJoker@users.noreply.github.com>
2024-08-16 22:13:16 +02:00
Lars Mueller
cc8e7a569e
Switch player names to std::string
2024-08-16 22:13:16 +02:00
DS
603eb57943
Fix comment and alpha test node oopsies from #14852
2024-08-16 22:01:16 +02:00
Gregor Parzefall
0fb67ccb34
Add setting to disable smooth scrolling
2024-08-13 18:38:34 +02:00
Loïc Blot
cb0bbea2a5
refacto: rework the GUI element handler function ( #14793 )
...
We have a very very old way to perform this handling.
With this new method, we have a more proper and flexible way to extend our UI with comprehensible handlers with common interface parameters
In terms of performance, it took very few more more memory and scraping is more faster, using the unordered_map benefits
2024-08-12 18:52:33 +02:00
1F616EMO~nya
98e51a0159
Clamp hotbar selection to slots that exist ( #14869 )
2024-08-12 15:35:13 +02:00
sfan5
39c2af9710
Render clouds as flat when thickness is zero ( #14897 )
2024-08-12 15:35:00 +02:00
grorp
013c6ee166
TouchScreenGUI: Replace buttonbars with grid menu ( #14918 )
2024-08-12 15:34:50 +02:00
sfan5
85e717fcd1
Rework object attachment handling to fix bugs ( #14825 )
2024-08-12 15:32:18 +02:00
SmallJoker
e236ad8348
Lua API: fix OOB array access in find_nodes_near ( #14948 )
2024-08-11 20:21:12 +02:00
1F616EMO~nya
f04cdc00a6
Optionally hide player names on the serverlist ( #14820 )
...
This commit adds a setting to anonymize player names when sending data to the server list.
2024-08-11 20:19:53 +02:00
asrelo
cfa9c83d33
Improve fs::PathStartsWith to handle empty strings ( #14877 )
...
`""` does not refer to a proper path, and `fs::PathStartsWith(path, "")` should just return `false`. This is also the case in libraries in other languages where I looked, seems to be common.
The new behavior:
* check early, if `prefix` is empty - return if path is empty or not,
* no special processing for when `path` is empty, the function meets characters in `prefix` and returns false anyway.
2024-08-11 20:19:14 +02:00
Lars Müller
20afc762cc
Fix empty tables / text lists emitting row events ( #14955 )
...
Also makes these elements no longer show a selected nonexisting row
2024-08-11 17:54:05 +02:00
updatepo.sh
dfb23c8db0
Update minetest.conf.example and settings_translation_file.cpp
2024-08-11 17:35:23 +02:00
grorp
95a0cc8f9a
Avoid infinite recursion with unhandled second touch ( #14915 )
2024-08-03 18:48:25 +02:00
SmallJoker
26deb26f17
Sounds: Partial revert of #14436 and #14341 ( #14889 )
...
This reverts functional changes of:
* commit bf52d1e6 (#14436 )
* commit 63a98538 (#14341 )
2024-07-30 21:25:50 +02:00
sfence
4e1661eded
Fix inventory items unresponsive after tab interaction ( #14661 )
...
This was a soft lock until LMB was clicked again.
2024-07-22 19:14:53 +02:00
rubenwardy
60f8c02e18
Add setting to disable Content tab update indicator ( #14827 )
2024-07-22 16:35:47 +02:00
DS
768fd4adee
Restore buggy texture overlay modifier ( #14852 )
...
Required because of backwards compatibility.
2024-07-22 16:35:36 +02:00
sfan5
02f40e5b0d
Fix blockseed for on_generated in mapgen env
2024-07-22 16:31:46 +02:00
sfan5
a7a719261e
Minimize data sent in the default user agent ( #14851 )
2024-07-20 10:27:04 +02:00
sfan5
569df37442
Un-deprecate redis database backend ( #14849 )
...
This reverts commit 83bc362dacfdef2bdf18cae5e2c52f526e8431c5.
2024-07-14 21:56:55 +02:00
Gregor Parzefall
d733e1abea
Don't allow sync. HTTP requests on the main thread anymore
...
Any sync. HTTP request on the main thread is a bug, don't allow introducing one again.
2024-07-12 22:33:17 +02:00
updatepo.sh
f5716ef141
Update minetest.conf.example and settings_translation_file.cpp
2024-07-11 15:13:57 +02:00
sfan5
a6121c7f67
Fix path traversal in mainmenu's extract_zip
2024-07-10 22:37:45 +02:00
grorp
3de42f56c5
Fix and improve particle(spawner) documentation ( #14804 )
2024-07-06 18:02:31 +02:00
grorp
fcb4f258f5
GUITable: Scale images with display density / row height ( #14709 )
2024-07-02 20:57:43 +02:00
Lars Müller
8ed55b3aff
Help modders deal with object invalidation ( #14769 )
...
* Skip invalid objects in raycasts
* Add `ObjectRef:is_valid` method
* Add object inside radius / area iterators which skip invalid objects
* Update docs to clarify object invalidation and how to deal with it
---------
Co-authored-by: sfan5 <sfan5@live.de>
2024-07-01 20:50:38 +02:00
grorp
ea827e4c5d
Fix new texture properties not being sent for minetest.add_particle ( #14760 )
...
Co-authored-by: Lars Müller <appgurulars@gmx.de>
2024-07-01 20:41:54 +02:00
1F616EMO~nya
321b217feb
Log node/ore name when detecting deprecated fields ( #14794 )
2024-07-01 17:26:15 +02:00
grorp
3958c19f83
Remove enable_touch special case for C++ menu scaling ( #14800 )
2024-06-30 20:39:36 +02:00
grorp
7709d92289
Restore old inconsistent minimum digging time behavior ( #14777 )
...
and restore default of 0.16 for repeat_place_time since it was only changed to be in line with repeat_dig_time.
2024-06-30 20:39:28 +02:00
grorp
4c001bd248
Make button sprites (scrollbar arrows) DPI-aware ( #14772 )
2024-06-26 15:25:27 +02:00
l-koehler
fe6da3a16b
Disallow formspec debug if the player does not have the debug privilege ( #14753 )
2024-06-17 15:59:49 +02:00
sfan5
fac9aac821
Move malloc_trim invocations to background thread ( #14744 )
2024-06-17 15:59:35 +02:00
grorp
d7f4ce6cff
Fix broken default sneak keybind on macOS with SDL ( #14754 )
2024-06-16 17:50:02 +02:00
grorp
a9cca5e76c
SDL2: Support highdpi ( #14703 )
...
and handle DPI changes at runtime
2024-06-16 17:49:42 +02:00
cx384
7a64527db5
Fix connected_players on_shutdown ( #14739 )
2024-06-15 16:00:33 +02:00
grorp
bc23a610d3
Fix two problems with toggling fullscreen at runtime ( #14750 )
2024-06-14 16:50:41 +02:00
grorp
85878d894a
Android: Fix back button sometimes not working as ESC ( #14743 )
2024-06-11 22:37:57 +02:00
Lars Mueller
ae4cd1ebf1
Corresponding code changes
2024-06-10 21:15:30 +02:00
sfan5
b7e886a740
Rename sha256 header
...
fixes #14710
2024-06-10 18:49:43 +02:00
sfan5
8268c61b9f
Make safeWriteToFile safe for thread-concurrent use
2024-06-10 18:49:43 +02:00
sfan5
fee6e8e11b
Identify when compiled with openresty LuaJIT
...
Debian testing ships it
2024-06-10 18:49:43 +02:00
sfan5
558d749d54
A few clean ups in log.cpp
2024-06-10 18:49:43 +02:00
sfan5
27cb54c1db
Stop misusing volatile keyword
2024-06-10 18:49:43 +02:00
sfan5
71893807b3
Call malloc_trim() regularly to improve deallocation behavior ( #14707 )
2024-06-07 16:57:30 +02:00
SmallJoker
08485f6781
Chat: Remove tailing punctuation from clickable links
2024-06-05 20:11:47 +02:00
sfan5
87232358d3
Update some workflows to newer Ubuntu versions ( #14668 )
2024-06-03 20:39:02 +02:00
grorp
508b5ccc63
Document keymap_toggle_block_bounds, remove unimplemented BLOCK_BOUNDS_MAX ( #14722 )
2024-06-02 21:05:35 +02:00
grorp
833bb542fc
Allow toggling fullscreen without restart and add keybind ( #14714 )
2024-06-02 21:05:16 +02:00
sfence
140b9e5a5a
Allow game to specify first and last mod in mod loading order ( #14177 )
...
Co-authored-by: Lars Mueller <appgurulars@gmx.de>
Co-authored-by: sfan5 <sfan5@live.de>
2024-06-01 16:36:20 +02:00
Lars Mueller
a4768d1638
Fix fog moon tint not working
2024-06-01 16:34:32 +02:00
SmallJoker
670bb32b2c
Particles: fix crash caused by absent texture
...
Introduced in commit f8bff34. The related code does already expect that
'texture.ref' may be nullptr.
2024-05-29 19:46:24 +02:00
Desour
f836a47bc1
Sound loading: Fix issues where ov_read skips samples
2024-05-27 17:12:58 +02:00
Desour
43df39c4f7
Sound loading: Improve error handling
2024-05-27 17:12:58 +02:00
Desour
9da5c5e2d0
Add precompiled header support
...
Note: the <filesystem> header is not included in the default
precompiled_headers.txt, because we don't use it yet, and it might be big
2024-05-27 17:12:39 +02:00
Desour
cdbbac5b6d
Move sha256.c to lib/
...
Precompiled headers don't work if we're not a pure C++ project.
2024-05-27 17:12:39 +02:00
Gregor Parzefall
f3c91e4f96
Immediately apply gui_scaling changes to IGUISkin
2024-05-26 19:49:48 +02:00
sfan5
83bc362dac
Mark Redis database backend as deprecated ( #14679 )
2024-05-26 14:28:30 +02:00
grorp
728f643ea7
Scale C++ menus down to fit the window ( #14690 )
2024-05-24 12:10:46 +02:00
grorp
d5fc040d2d
Consistent width for internal scrollbars of formspec elements ( #14689 )
...
also: Make sure that very short, wide scrollbars are still usable
2024-05-24 12:10:19 +02:00
JosiahWI
1298374818
Upgrade client active object mgr tests to Catch2 ( #14565 )
...
* Upgrade client active object mgr tests to Catch2
In addition to invoking Catch2's test runner after Minetest's homemade
runner, this refactors the tests to follow the DRY principle, and gives
them expressive names and clear assertions. Catch2 is already bundled
with Minetest, so there are no added dependencies.
* Increment failed modules count for Catch2 tests
* Respect --test-module option for Catch2 tests
* Improve Catch2 --test-module behavior
This switches infostream to rawstream so that test runner output is
displayed, and returns the correct boolean depending on the results. The
tests are now found by setting the configuration instead of invoking the
command line parser.
* Test uniqueness of all IDS instead of just one
Co-Authored-By: Lars Müller <appgurulars@gmx.de>
* Include Catch2 test run in timing and logging
* Flush std::cout after printing Catch results
* Increment total tests run instead of hardcoding to 1
* Flush stderr before printing to stdout
It's necessary to flush stderr before printing to stdout in adition to
flushing stdout before printing to stderr, to make sure all output is
ordered correctly.
* Make Catch write to rawstream
---------
Co-authored-by: Lars Müller <appgurulars@gmx.de>
2024-05-22 18:39:53 +02:00
Xeno333
a078cfee3e
Rename "opaque_water" setting to "translucent_liquids" with inverted meaning ( #14660 )
...
The old setting will be migrated properly.
---------
Co-authored-by: grorp <gregor.parzefall@posteo.de>
2024-05-22 16:46:05 +02:00
sfence
df8a600b22
Fix glitch through ceiling with Sneak Glitch ( #14332 )
2024-05-21 17:52:54 +02:00
sfence
b21a974342
Fix inventory: Quickly picking up item and placing it again no longer works ( #14657 )
2024-05-21 15:38:12 +02:00
chmodsayshello
ab783b9bb2
Display background & moving progress bar on shutdown screen ( #14597 )
...
Co-authored-by: Gregor Parzefall <gregor.parzefall@posteo.de>
2024-05-21 15:37:35 +02:00
OgelGames
8972e829f2
Restore vector type check ( #14663 )
2024-05-20 20:36:44 +02:00
Muhammad Rifqi Priyo Susanto
bceef8f529
Trivial fix (forget to remove semicolon) in gettext.cpp
2024-05-16 21:00:00 +07:00
Lars Müller
5c187363b2
Fix some clang compiler warnings ( #14654 )
...
* Fix some clang compiler warnings
* Get rid of sdl_supports_primary_selection
* Fix draw2DImage hiding overloaded virtual function
2024-05-15 19:56:25 +02:00
sfan5
93f4844c9c
Fix unintentional error message with dynamic media
2024-05-14 23:12:49 +02:00
sfan5
39fd9b93c3
Introduce proper error handling for file streams
2024-05-14 18:33:08 +02:00
sfan5
c38e0d05bf
Reenable fog toggle unless server restricts fog distance ( #14634 )
...
see comments in #14539
2024-05-14 18:31:51 +02:00
Josiah VanderZee
5a4d7fb0d6
Do not bother to assert that a u8 is >= 0
...
This fixes a warning seen in GCC 7 on CI about a comparison in
mapblock.h that is always true.
2024-05-14 16:21:30 +02:00
chmodsayshello
0889048cb5
Add option for random mod load order ( #14637 )
2024-05-12 14:20:18 +02:00
grorp
57b6e74abb
Fix crash if zip file cannot be opened ( #14636 )
...
Helped-by: savilli <78875209+savilli@users.noreply.github.com>
2024-05-12 11:46:39 +02:00
grorp
a8af0c0ca4
Close buttonbars when hiding TouchScreenGUI ( #14630 )
...
To open the inventory or the pause menu, you first need to open the buttonbar
containing the respective button. Before this commit, the buttonbar is still
open after closing the menu, so you have to tap twice before you can continue
playing. After this commit, the buttonbar is already closed after closing the
menu, so you only have to tap once before you can continue playing.
2024-05-10 18:54:22 +02:00
grorp
e0e1d0855d
Close formspecs with a single tap outside ( #14605 )
2024-05-09 19:16:08 +02:00
sfan5
dd475d8af4
Add benchmarks for server::ActiveObjectMgr
2024-05-09 11:31:35 +02:00
sfan5
59bf1d8cd9
Fix curl compatibility issues with colorize_url ( #14615 )
...
Also move the escape code safety check to guiOpenURL.
2024-05-09 11:31:10 +02:00
sfan5
de78ffb551
Fix strings in modified_reason_strings
...
one was also missing
2024-05-09 00:19:24 +02:00
sfan5
1aba7f1fde
Add unit tests for MapBlock (de)serialization ( #14560 )
2024-05-05 22:54:40 +02:00
rubenwardy
3017b0213b
Allow quoting hypertext attribute values ( #14550 )
2024-05-05 14:27:17 +02:00
sfan5
d748c8c653
Gate disabling of fog or camera update behind 'debug' priv
2024-05-05 14:26:56 +02:00
grorp
af8cb63292
Add object's own position for each collision to moveresult ( #14608 )
2024-05-05 13:28:59 +02:00
grorp
d7f9da49eb
Fix shootline not being updated if press and release happen in the same step ( #14606 )
2024-05-05 13:28:50 +02:00
Lars Mueller
70bddcf318
Fix wrong name for bone override interpolation field
2024-05-04 02:09:35 +02:00
SmallJoker
f0bb5313d3
Chat console: Prevent input loss on double open
2024-05-03 16:29:33 +02:00
DS
c352fbf5c9
Warn on unknown CMAKE_BUILD_TYPE values ( #14600 )
2024-05-03 16:29:02 +02:00
sfan5
9c3c286aab
Optimize code patterns around raycasting
2024-05-03 16:28:29 +02:00
sfan5
e10adf83d5
Reduce wasteful memory allocations in update_lighting_nodes()
2024-05-03 16:28:29 +02:00
sfan5
c24a04d246
Optimize pushing collision data for entity on_step
...
Since this is fixed overhead for every entity, this is important to optimize.
This optimizes one very common case.
before:
push_collision_move_result [us] _____________ 64512x 3.562
after:
push_collision_move_result [us] _____________ 72636x 0.831
2024-05-03 16:28:29 +02:00
sfan5
2e89529eef
Optimize env access and structs in collisionMoveSimple
2024-05-03 16:28:29 +02:00
sfan5
92d03f3832
Trivially optimize iteration order in loops
...
Due to how node data is stored iterating X last provides better cache locality.
2024-05-03 16:28:29 +02:00
Lars Müller
2efd0996e6
Document empty string as form name ( #14601 )
2024-04-30 13:50:31 +02:00
sfan5
ac4f13e78f
Add minetest.get_gen_notify to mapgen env ( #14568 )
2024-04-30 13:50:18 +02:00
grorp
2bdd0a6bdb
Add physics overrides for walk speed and Fast Mode ( #14475 )
...
Co-authored-by: Wuzzy <Wuzzy@disroot.org>
2024-04-30 13:50:01 +02:00
SmallJoker
c044a3c1ca
Client: fix unknown texture upon shift-move to full inventory list ( #14586 )
...
Fixes a regression caused by 4245a760
'moveItemSomewhere' attempted to add a leftover stack to an empty stack, resulting
in an empty name with non-0 ItemStack count.
2024-04-28 19:45:09 +02:00
sfence
72cb4e9bea
Allow nil
puncher in object:punch
( #14319 )
2024-04-28 17:55:04 +02:00
sfan5
fc0ac64277
Fix build errors with curl disabled
2024-04-28 12:31:15 +02:00
sfan5
df4c9e2903
Revert "Clean up some getServer() unsafety"
...
Turned out to not be a good idea.
This reverts commit 58eccc7a2a67405744ef4a8d7be29f264021d826.
2024-04-28 00:24:22 +02:00
grorp
73dbd2f0ab
Smooth scrolling ( #14562 )
2024-04-28 00:14:31 +02:00
OgelGames
05d5dc4cec
Fix InvRef
bugs and add unit tests ( #14591 )
2024-04-28 00:13:44 +02:00
Lars Müller
0837d674eb
Fix set_fov-induced grayscreen
2024-04-28 00:12:15 +02:00
Muhammad Rifqi Priyo Susanto
be540043ee
Do not make inventory_items_animations setting static thread_local ( #14573 )
...
This removes restart requirement when toggling the setting after the first play/run.
2024-04-24 09:00:04 +07:00
JosiahWI
de8d80dee0
Fix MSVC warning C4172 in ModifySafeMap::get ( #14576 )
2024-04-23 19:04:26 +02:00
cosin15
15b569fb71
Remove unnecessary copy of a big data structure
2024-04-23 19:03:50 +02:00
sfan5
58eccc7a2a
Clean up some getServer() unsafety
2024-04-23 19:03:35 +02:00
sfan5
e39e47b21f
Reduce needless copying of KeyPress
2024-04-23 19:03:35 +02:00
sfan5
e7f6e7d7b6
Fix Irrlicht log events not being passed through
2024-04-23 19:03:35 +02:00
sfan5
c8e46749a4
Change some profiler values to microseconds
2024-04-23 19:03:35 +02:00
grorp
eb432d3da0
Fix some Game members not being freed after some startup errors ( #14561 )
2024-04-21 15:52:46 +02:00
David Heidelberg
4ab3c54f5b
Basic tablet/phone/watch autodetection ( #14400 )
...
Until we're able to detect touchscreen itself, let's have a detection
based on a form factor of the device.
Tablets and handhelds are usually equiped with touchscreens, so as a
default enable touchscreen GUI there.
- Windows and Linux supports autodetection.
- Android is hardcoded as touch-based.
- MacOS staying same as before without detection.
Signed-off-by: David Heidelberg <david@ixit.cz>
2024-04-21 15:51:58 +02:00
JosiahWI
de1d8ec070
Do not link /latomic on MSVC ( #14564 )
...
MSVC does not recognize /latomic, resulting in a warning upon configure.
2024-04-20 20:37:46 +02:00
SmallJoker
c8a41409d9
HUD: Text element color support ( #14558 )
2024-04-20 20:36:44 +02:00
Josiah VanderZee
d2a089ffd9
Remove <ctgmath> include from particles.h
...
The header is deprecated, and we don't even use it.
2024-04-20 18:01:25 +02:00
sfan5
3bd5169aee
Fix profiler assertion failures
...
oops
2024-04-20 14:32:35 +02:00
sfan5
1b89d4d541
Simplify getBlockNodeIdMapping
...
since commit 0f9c78c3ebf920fac65030e66367b9940055075f nodedef->get()
will never return an entry with empty name, so we can drop the related parts.
2024-04-20 13:03:42 +02:00
sfan5
d8190e1c5f
Some globals (un-)init fixes
2024-04-20 13:03:42 +02:00
sfan5
2af5191070
Optimize MapNode::serializeBulk
...
before
serializeBulk [us] __________________________ 9047x 9.363
after
serializeBulk [us] __________________________ 8458x 1.214
2024-04-20 13:03:42 +02:00
sfan5
4027e08cc8
Print profiler at end of session
2024-04-20 13:03:42 +02:00
sfan5
72eeb9fecb
Refactor profiler and related classes
2024-04-20 13:03:42 +02:00
DS
5a07f5a652
Fix inconsistent rounding in VoxelLineIterator::VoxelLineIterator ( #14555 )
...
floatToInt rounds 0.5 differently depending on sign.
2024-04-20 13:03:34 +02:00
sfan5
df2fd399df
Fix missing DLLs in Windows build
2024-04-17 16:58:31 +02:00
grorp
f2b5c35fa2
TouchScreenGUI dehardcoding refactor ( #14472 )
2024-04-17 15:59:52 +02:00
rubenwardy
b2057a5da7
Hypertext: Fix missing space after single letter word ( #14551 )
...
Fixes #11727
2024-04-16 08:48:16 +01:00
sfan5
7a6ca85081
Expose OpenGL debugging as a normal setting
2024-04-15 17:48:33 +02:00
Wuzzy
9f263319ca
Fix 4dir nodebox sometimes not rendering face ( #14533 )
2024-04-14 11:57:13 +02:00
cx384
8a5e49c856
Refactor builtin HUD ( #14346 )
2024-04-10 11:43:15 +02:00
Gregor Parzefall
07fdf7158d
Migrate the Android port to SDL2
2024-04-08 20:15:37 +02:00
DS
e12db0c182
Sounds: Queue more than two buffers if pitch is high ( #14515 )
...
Pitch changes playback speed. So always enqueuing 2 buffers did not suffice
(and it was unnecessary complicated).
2024-04-07 22:06:34 +02:00
DS
1d673ce075
Print filenames in irrlicht png warnings ( #14525 )
...
Makes warnings like this more informative:
`WARNING[Main]: Irrlicht: PNG warning: iCCP: known incorrect sRGB profile`
2024-04-07 22:06:13 +02:00
sfan5
7e4462e0ac
Better handling of temporary folders
2024-04-06 12:10:21 +02:00
sfan5
ef0c19477c
Fix HAVE_RECENT_LJ false-positives
2024-04-06 12:10:21 +02:00
grorp
9bee6d899b
Fix invisible crosshair with effective HUD scaling < 1
2024-04-06 12:10:12 +02:00
1F616EMO~nya
2d8e4df7bc
Allow optional actor ObjectRef value in node interaction calls ( #14505 )
2024-04-05 13:00:50 +02:00
Gregor Parzefall
fd8e02195e
Fix local server startup and shutdown blocking the main thread
...
Co-authored-by: sfan5 <sfan5@live.de>
2024-04-05 13:00:21 +02:00
Gregor Parzefall
b2982a6f14
Fix all cached media being loaded at once on the main thread
2024-04-05 13:00:21 +02:00
sfan5
a9a0f1e129
Fix GLES shader precision issues ( #14516 )
2024-04-05 13:00:10 +02:00
sfan5
f8bff346f4
Batched rendering of particles ( #14489 )
...
Co-authored-by: x2048 <codeforsmile@gmail.com>
Co-authored-by: Desour <ds.desour@proton.me>
2024-04-03 13:56:49 +02:00
sfan5
57a737c417
Improve logging of driver probing
2024-04-03 13:56:27 +02:00
cx384
3a35db6e67
Turn dos files into unix files
2024-03-31 21:02:47 +02:00
Gregor Parzefall
e79587c934
Add shorthand form for touch_interaction
2024-03-30 11:40:50 +01:00
Gregor Parzefall
8935f2af3c
Make long tap delay customizable and change default to 400ms
2024-03-30 11:40:50 +01:00
Gregor Parzefall
517f1602aa
Re-add "long tap to punch" as a client-side setting
2024-03-30 11:40:50 +01:00
grorp
6e3246c5fd
Limit crosshair scaling to integer multiples to avoid distortion ( #14501 )
2024-03-30 11:07:36 +01:00
sfan5
97066bf795
Sanity-check reliable packet size at earlier point
2024-03-30 11:07:20 +01:00
sfan5
5df60d85f7
Cache iconv context per-thread
2024-03-30 11:07:02 +01:00
sfan5
008d6be900
Rework iconv encoding detection
...
WCHAR_T doesn't seem as portable as we thought, so it's just easier
to detect the right encoding using macros at this point.
2024-03-30 11:07:02 +01:00
sfan5
d1a1aed23e
Reduce unnecessary include in serialize.h
2024-03-30 11:07:02 +01:00
cx384
673d2499e8
Refactor texturepaths.cpp and SourceImageCache
2024-03-30 11:06:44 +01:00
cx384
6ac053bbaa
Extract image generation/cache from texturesource.cpp
2024-03-30 11:06:44 +01:00
sfan5
6c6e48f006
Move values the mainmenu caches to dedicated files ( #14433 )
2024-03-30 11:06:28 +01:00
Elias Åström
bb6782ca58
Add repeat_dig_time setting ( #14295 )
2024-03-30 11:05:58 +01:00
sfan5
d307d01b18
Fix tests that rely on UTF-8 literals
...
and the lowercase function
2024-03-28 16:22:04 +01:00
src-tinkerer
08284e420d
Disable default password check in single player ( #14493 )
2024-03-27 21:46:41 +00:00
sfan5
d53ef90a73
Remove Irrlicht versioning
2024-03-27 20:55:48 +01:00
rubenwardy
b487341c32
Deprecate writing to mod directories ( #14486 )
2024-03-27 18:32:05 +00:00
Desour
9cee9bc279
Build with the imported IrrlichtMt at irr
...
Also remove the now useless options (like IRRLICHT_INCLUDE_DIR)
and update download instructions, CI and similar.
Co-authored-by: sfan5 <sfan5@live.de>
2024-03-26 21:39:02 +01:00
rubenwardy
24cc33e704
Add button_url[] and hypertext element to allow mods to open web pages ( #13825 )
...
Fixes #12500
2024-03-24 17:19:23 +00:00
rubenwardy
6c4a110679
Add world-independent storage directory for mods ( #12315 )
...
Fixes #4821
2024-03-24 17:18:58 +00:00
sfan5
5727d74d37
Avoid including client headers on server builds
2024-03-20 16:37:32 +01:00
sfan5
bc4ab8b99e
General code refactoring/improvements in server, treegen and connection
2024-03-20 16:37:32 +01:00
sfan5
24f2c38093
Split internal parts from connection.h
2024-03-20 16:37:32 +01:00
sfan5
dfba79f8ff
Split servermap.cpp/h off from map.cpp/h
2024-03-20 16:37:32 +01:00
sfan5
0d817ff4ff
Try to fix httpfetch method bug
...
see #14394
2024-03-20 16:37:32 +01:00
sfan5
178943b4b7
Improve ServerEnvironment::getRemovedActiveObjects() in many ways
2024-03-20 16:37:32 +01:00
Desour
751ede516b
ProfilerGraph: Increase buffer size for min/max formatting
...
Fixes values being cut off, e.g. "1.0000e+06" to "1.0000e+0".
2024-03-20 15:28:37 +01:00
HybridDog
cda112493a
Faster blit_with_alpha() ( #14448 )
...
* Add test nodes for alpha compositing and the fill texture modifier
Texture test nodes can be helpful to test if `blit_with_alpha` works correctly.
The alpha compositing test node covers different cases where pixel colors are mixed with each other.
The test currently fails because `blitPixel` does not work correctly if a semi-transparent color
is drawn on top of another semi-transparent color.
The test nodes for the fill texture modifier show if the size and position arguments of the modifier work correctly.
They do not cover special cases such as very large or negative position or size values.
* Faster blit_with_alpha()
The `blit_with_alpha` function has a noticeable effect on the time it takes to join a game.
To reduce the join times, I replace the `blit_with_alpha` function with a new one:
* It does not uses floating-point numbers.
* It directly operates on the raw pixel data instead of using the comparatively
slow `setPixel` and `getPixel` functions from Irrlicht.
Only ECF_A8R8G8B8 base images are supported now.
If the top image does not have the ECF_A8R8G8B8 color format, it is converted;
I assume that this happens rarely.
* There are case distinctions for fully opaque, fully transparent and semi-transparent pixels.
This empirically increases the performance since the mixing between two semi-transparent happens rarely.
* The new function no longer has the `src_pos` argument since it was always the zero vector.
* The function is only documented once where it is declared.
For backwards compatibility, `blit_with_alpha` still mixes colors without gamma correction.
`blit_with_alpha` nonetheless behaves slightly different than before:
If a semi-transparent pixel is drawn on top of another semi-transparent pixel,
the color is mixed in a way which we can consider to be more correct now.
2024-03-19 19:56:47 +01:00
SmallJoker
a862e4290c
Script API: Fix invalid rotation of L-system trees
...
The MapNode struct fields param1 and param2 were previously
not initialized. This commit now sets them to a sane default.
2024-03-17 18:01:48 +01:00
cx384
234b01a8c2
Item meta pointing range ( #14347 )
2024-03-17 15:55:38 +01:00
sfan5
e3b9828f24
Add unit tests for SAO load / unload behaviour
2024-03-17 15:55:24 +01:00
sfan5
8339594206
Handle static_save changes at runtime and between restarts
2024-03-17 15:55:24 +01:00
sfan5
2386bfda7e
Fix static_save=false not working & related cleanups
2024-03-17 15:55:24 +01:00
sfan5
ef0009aea7
Sort out server destruction order
...
fixes #14421
2024-03-17 15:55:24 +01:00
Gregor Parzefall
4f84b01356
Touchscreen: Fix virtual joystick sometimes going backwards
...
This fixes a regression introduced by 34286d77c7ee65be480a372233c5ab7c4b81d9db / #14075 .
2024-03-17 15:00:37 +01:00
grorp
c8b615acc9
Remove excessive touchscreengui.h includes ( #14466 )
2024-03-17 14:59:50 +01:00
SmallJoker
61a5733692
Unittest: Add inventory callback tests
2024-03-16 20:14:05 +01:00
SmallJoker
4245a7604b
Inventory: Fix order of callbacks when swapping items
2024-03-16 20:14:05 +01:00
sfan5
d5d6e36ae0
Create CACHEDIR.TAG in path_cache ( #14458 )
2024-03-15 11:24:08 +01:00
sfan5
658bc9fcc8
Fix infinite loop in Server::stopAttachedSounds
2024-03-13 21:24:50 +01:00
cx384
60810c2d37
Add L-system trees as decorations ( #14355 )
2024-03-12 20:10:28 +01:00
grorp
f07e1026ac
Allow sync HTTP fetches to be interrupted to fix hanging ( #14412 )
...
Co-authored-by: Jude Melton-Houghton <jwmhjwmh@gmail.com>
2024-03-12 20:09:43 +01:00
SmallJoker
32f68f35cf
Avoid packets getting sent to disconnected players ( #14444 )
...
Many functions expect RemotePlayer to have a valid peer ID,
this however is not the case immediately after disconnecting
where the object is still alive and pending for removal.
ServerEnvironment::getPlayer(const char *, bool) now only
returns players that are connected unless forced to.
2024-03-10 13:24:35 +01:00
SmallJoker
02a893d613
Client: fix failing assert on empty texture name
2024-03-10 10:50:04 +01:00
sfan5
d88f0866b7
Reduce translations log spam
2024-03-06 22:33:32 +01:00
Lars Müller
bf52d1e624
Fix attached sounds stopping if objects are removed serverside ( #14436 )
...
Restores backwards compatibility for death sounds or other sounds that are not supposed to be "cut off" abruptly.
---------
Co-authored-by: sfan5 <sfan5@live.de>
Co-authored-by: grorp <gregor.parzefall@posteo.de>
2024-03-06 20:36:02 +01:00
y5nw
fc80f65a6d
Try to preserve metatable when exchanging data with the async env ( #14369 )
...
Co-authored-by: sfan5 <sfan5@live.de>
Co-authored-by: Lars Mueller <appgurulars@gmx.de>
2024-03-06 18:04:49 +01:00
sfan5
badd42789a
Move PlayerSettings class to client code
2024-03-06 18:03:57 +01:00
sfan5
c524c52baa
Fix some common SAO methods to not generate useless update packets
2024-03-06 18:03:57 +01:00
sfan5
585ca90ae0
Reorder ObjectProperties struct
2024-03-06 18:03:57 +01:00
sfan5
e734b3f0d8
Fix core.get_node_or_nil in emerge env
...
"ignore" does not mean unloaded, we have to properly check it.
2024-03-03 20:16:32 +01:00
sfan5
9b97147637
Fix assertion failure in clientlauncher.cpp
2024-03-03 19:11:37 +01:00
DS
d4d4712361
Implement get_node with a get_node_raw ( #14384 )
...
Add /bench_bulk_get_node
Considerably improves the execution speed of core.get_node
2024-03-03 15:53:23 +01:00
cx384
879f7e9f03
Refactor tile.cpp/h parts except texturesource.cpp
2024-03-03 15:52:05 +01:00
cx384
aaf77025b6
Split up tile.cpp/h
2024-03-03 15:52:05 +01:00
Desour
cdce33dd05
Fix some narrowing warnings
2024-03-02 01:56:25 +01:00
Desour
b10797b3d5
Add missing include in container.h
...
BUILD_BENCHMAKRS builds were broken.
2024-03-02 01:47:03 +01:00
sfan5
e73e562a63
Allow curl to use all content encodings
2024-03-01 18:22:59 +01:00
grorp
e40417f687
Allow giving "pointabilities" to Lua raycasts ( #14390 )
2024-03-01 17:12:13 +01:00
Gregor Parzefall
aac616fcc5
Avoid visible camera jumps because of touchscreen_threshold
2024-03-01 17:11:46 +01:00
Gregor Parzefall
fa0745f7da
Adjust touchscreen_sensitivity to display density
2024-03-01 17:11:46 +01:00
Gregor Parzefall
00a3e6bbd7
Touchscreen: Allow camera movement while digging without touch_use_crosshair
2024-03-01 17:11:46 +01:00
sfan5
bb7f57b095
VBO-related optimizations and improvements ( #14395 )
2024-02-29 17:20:57 +01:00
sfan5
d85c842ce9
Refactor fog shader to reuse Irrlicht values
2024-02-29 17:20:50 +01:00
sfan5
dce166dc93
Support deleting shader materials
2024-02-29 17:20:50 +01:00
sfan5
13a0e5fb4a
Share FpsControl code between game and menu
2024-02-29 17:20:50 +01:00
sfan5
0c3a4cc7b9
Improve ergonomics of CachedShaderSetting
2024-02-29 17:20:49 +01:00
sfan5
e9ab5bc223
Factor shadow constants out of MainShaderConstantSetter
2024-02-29 17:20:49 +01:00
sfan5
5da18d34ba
Properly warn that shader queue is unimplemented
2024-02-29 17:20:49 +01:00
sfan5
09d542dfe0
Drop enable_vbo setting
...
Consistently applying this setting requires some code work,
because Irrlicht does not provide a global toggle.
At the same time I don't see any reason for someone to disable this.
2024-02-29 17:20:49 +01:00
sfan5
5280863300
Set VBO hints in more places
2024-02-29 17:20:49 +01:00
sfan5
fbec378869
Fix more type promotion mistakes
...
Someone of these are probably actual bugs and gcc totally doesn't care to warn about them, wtf?
This issue seems to be new with the IrrlichtMt update.
2024-02-26 22:07:40 +01:00
sfan5
9fcd7f2dc0
Fix clang-tidy type promotion errors
2024-02-26 20:47:47 +01:00
sfan5
5d8a22066c
Change how max_lag is calculated and reported ( #14378 )
...
-Change how max_lag is calculated and reported
- Cap singleplayer step at 60Hz
- Clarify dedicated_server_step
2024-02-26 20:46:57 +01:00
sfence
63a9853811
Remove attached sounds when the active object is removed ( #14341 )
2024-02-25 22:10:39 +00:00
rubenwardy
f4eba3bfba
Add support for ContentDB package translation ( #14410 )
2024-02-25 22:09:52 +00:00
sfan5
762fca538c
Expose SHA256 algorithm to Lua ( #14403 )
...
Co-authored-by: chmodsayshello <chmodsayshello@hotmail.com>
2024-02-25 18:12:23 +01:00
SmallJoker
fa1d80b53b
MetaData: restore undocumented set_string behaviour ( #14396 )
2024-02-25 16:03:05 +01:00
rubenwardy
b4be483d3e
Add support for translating content titles and descriptions ( #12208 )
2024-02-24 19:13:07 +00:00
grorp
57de599a29
Restore pre-5.9.0-dev behavior of touch_use_crosshair=false shootline ( #14389 )
...
* Fix incorrect shootline after releasing pointer if touch_use_crosshair=false
This happened because Android reuses pointer IDs.
Also includes a refactor to merge "m_known_ids" and "m_pointer_pos".
* Restore pre-5.9.0-dev behavior of shootline when !m_has_move_id
2024-02-24 13:12:53 +01:00
sfan5
492aab20fe
Fix compiler warnings
2024-02-24 12:39:12 +01:00
lhofhansl
0d4b489545
Detect air-only blocks instead of day/night differences ( #14264 )
...
* Detect air-only blocks instead day/night differences
* Write !is_air into the former day-night-diff bit on disk, so that old server can still read maps written by new servers
* Only set is_air bit when reading from disk
2024-02-22 21:47:42 -08:00
numzero
0d30a3071a
Add meshgen tests
2024-02-22 15:45:17 +00:00
numzero
753f03ff6a
Add mesh comparison functions, for tests
2024-02-22 15:45:17 +00:00
numzero
bf2098c07f
Decouple MeshMakeData from Client
2024-02-22 15:45:17 +00:00
numzero
2f35b121a4
Const correctness
2024-02-22 15:45:17 +00:00
David Heidelberg
34286d77c7
Allow toggling touchscreen mode at runtime ( #14075 )
...
Signed-off-by: David Heidelberg <david@ixit.cz>
Co-authored-by: Gregor Parzefall <gregor.parzefall@posteo.de>
2024-02-22 15:44:49 +00:00
sfan5
e3cc26cb7c
Irrlicht support changes ( #14383 )
2024-02-19 21:14:47 +01:00
Lars Müller
4acbd59162
Support absent scene node names ( #14330 )
...
Contains a hack to support IrrlichtMT revision 14 for now (until we release revision 15)
2024-02-18 11:39:16 +01:00
DS
1e316a9704
Don't use a reference for RaycastState::m_pointabilities ( #14376 )
2024-02-17 18:36:20 +01:00
sfan5
6ca214fefc
Introduce std::string_view
into wider use ( #14368 )
2024-02-17 15:35:33 +01:00