Commit Graph

6683 Commits (master)

Author SHA1 Message Date
SmallJoker 1d07a36552
upright_sprite: Fix walk animation in first person (#12194) 2022-04-15 18:55:08 +02:00
x2048 a5d29fa1d4
Implement shadow offsets for the new SM distortion function (#12191)
* Move shadow position calculation to vertex shaders
* Animate entire scene before rendering shadows to prevent lagging of shadows
* Remove unnecessary use of PolygonOffsetFactor
* Apply normal offset to both nodes and objects
* Rename getPerspectiveFactor -> applyPerspectiveDistortion
* Remove perspective distortion from fragment shaders
2022-04-14 22:49:30 +02:00
Lars Müller 1f27bf6380
Remove unneeded ObjectRef setter return values (#12179) 2022-04-10 23:20:51 +02:00
ShadowNinja 2d8eac4e0a Don't test overflow behavior for VoxelArea extents 2022-04-08 14:55:21 +01:00
ShadowNinja 80db8804c7 Fix typo and update settings files 2022-04-08 14:55:21 +01:00
ShadowNinja f5e54cd398 Fix OOB read in trim("") 2022-04-08 14:55:21 +01:00
ShadowNinja c9317a16c5 Remove duplicate test for trim 2022-04-08 14:55:21 +01:00
ShadowNinja dae6fe91a1 Update directory name sanitization
Only ASCII spaces have to be handles specially, and leading spaces are
also disallowed.
2022-04-08 14:55:21 +01:00
ShadowNinja 65fdc7ae50 Add tests for sanitizeDirName 2022-04-08 14:55:21 +01:00
ShadowNinja 00ebedad93 Add additional reserved directory names 2022-04-08 14:55:21 +01:00
ShadowNinja 8af332c9a7 Remove duplication in config.h 2022-04-08 14:55:21 +01:00
ShadowNinja 7993909fab Spacing fixes 2022-04-08 14:55:21 +01:00
ShadowNinja 88b21a72f1 Treat empty XDG_CACHE_HOME same as unset
This matches the XDG base directory spec.
2022-04-08 14:55:21 +01:00
ShadowNinja 5683bb76cc Fix compiler warnings 2022-04-08 14:55:21 +01:00
Dmitry Kostenko 23516acd0b Remove obsolete commented code (follow up to #12166) 2022-04-07 22:38:01 +02:00
x2048 48f7c5603e
Adjust shadowmap distortion to use entire SM texture (#12166) 2022-04-07 22:13:50 +02:00
Jude Melton-Houghton 0b5b2b2633
Disentangle map implementations (#12148)
Fixes violation of Liskov substitution principle
Fixes #12144
2022-04-07 21:58:04 +02:00
Jude Melton-Houghton 21f17e871e
Compile Lua as C++ (#11683)
Co-authored-by: sfan5 <sfan5@live.de>
2022-04-07 15:54:17 +01:00
sfan5 837cea6b4a Fix -mwindows flag not being applied anymore
closes #12165
2022-04-03 21:44:22 +02:00
x2048 b0b9732359
Add depth sorting for node faces (#11696)
Use BSP tree to order transparent triangles
https://en.wikipedia.org/wiki/Binary_space_partitioning
2022-04-02 10:42:27 +02:00
Dmitry Kostenko 26c046a563 Increase the ratio between shadow range and viewing range 2022-04-02 10:39:43 +02:00
x2048 3dd7d7867b
Limit shadow map to the viewing range (#12158) 2022-03-31 22:40:59 +02:00
x2048 31578303a4
Tune shadow perspective distortion (#12146)
* Pass perspective distortion parameters as uniforms
* Set all perspective bias parameters via ShadowRenderer
* Recalibrate perspective distortion and shadow range to render less shadow geometry with the same quality and observed shadow distance
2022-03-31 22:40:06 +02:00
Jude Melton-Houghton 06d197cdd0
Store vector metatable in registry 2022-03-29 18:07:00 +02:00
Jude Melton-Houghton 11aab4198b
Optimize swapping nodes with equivalent lighting 2022-03-29 18:06:44 +02:00
DS 8d387433b1
Fix the documentation of InvRef:get_lists() and clean up code (#12150) 2022-03-29 18:06:16 +02:00
x2048 0f25fa7af6
Add API to control shadow intensity from the game/mod (#11944)
* Also Disable shadows when sun/moon is hidden. Fixes #11972.
2022-03-26 16:58:26 +01:00
Daroc Alden e54f5e544f
Fix memory leak in EmergeManager
EmergeManager keeps a copy of the BiomeGen that it creates, but
never deletes it.
2022-03-14 21:01:36 +01:00
Gregor Parzefall 289c3ff377
Fix footsteps for players whose collision box min y != 0 (#12110) 2022-03-14 21:01:18 +01:00
Daroc Alden 11f3f72f1c
Fix undefined behavior in TileLayer (#12125)
Initialize the values properly
2022-03-11 21:22:49 +01:00
sfan5 ad7c72c164 Remove direct OpenGL(ES) dependency
IrrlichtMt now provides this for us (see last commit)
fixes #12041
2022-03-09 22:37:34 +01:00
sfan5 51294163bb Use Irrlicht bindings for GL call 2022-03-09 22:37:34 +01:00
Daroc Alden 598efbf7f9
Fix memory leak from SpatialAreaStore (#12120) 2022-03-09 19:28:12 +01:00
Dmitry Kostenko 4801bdf45a Correct normal bias for entities
Remove use of magic constants.
Apply cameraOffset
Calculate distance projected on SM plane
2022-03-07 23:45:26 +01:00
Dmitry Kostenko 8f652f4e31 Fix shadows for upright sprite nodes
Avoid using read only materials in mesh scene node, as
it confuses shadow renderer.
2022-03-07 23:45:26 +01:00
Dmitry Kostenko d2a3bed240 Avoid possible buffer overflow when checking face normals 2022-03-07 23:45:26 +01:00
Dmitry Kostenko e4583cb9b7 Use correct indexes when checking mesh normals 2022-03-07 23:45:26 +01:00
Dmitry Kostenko 1175f48d05 Detect 'insane' normals in checkMeshNormals.
Detect non-zero normals which point in the opposite direction from the
face plane normal.
2022-03-07 23:45:26 +01:00
Dmitry Kostenko 54dccc480e Improve lighting of entities.
Pass correct natural & artificial light to the shaders
Use natural/artificial light ratio for correct rendering of shadows
2022-03-07 23:45:26 +01:00
Dmitry Kostenko 4e39cdef94 Apply shadow texture to wield-based entities
For example, dropped nodes and items.
2022-03-07 23:45:26 +01:00
Dmitry Kostenko 2bba53b2c3 Render shadows on entities.
Fixes problem with mod 'drawers'.
2022-03-07 23:45:26 +01:00
Lars Müller b9e886726c
Readd basic_debug as a HUD flag (#12020) 2022-03-05 22:16:17 +01:00
Zughy 44fc888bd6
Allow get_sky to return a table (#11963) 2022-03-05 22:15:41 +01:00
sfan5 f2d1295fe6 Fix segfault with autoscale_mode (again)
closes #12100
This time add some asserts so there is no misunderstanding about the NULL-ness of layer->texture.
2022-03-02 17:49:45 +01:00
sfan5 04bd253390 Move the codebase to C++14 2022-02-26 14:39:41 +01:00
SmallJoker f7311e0d97
Lua API documentation: Various fixes (#12059)
Change 1: Clarify when on_step collision information is provided
Change 2: Document PostgreSQL and Redis settings
Change 3: Overall AreaStore documentation improvements including consistent parameter naming based on community suggestions
2022-02-23 21:21:37 +01:00
DS 633e23bd65
FormspecMenu: make drawing of backgrounds less hacky (#9517) 2022-02-22 19:17:53 +01:00
sfan5 c31b301722 Clean up ClientReady packet handling
fixes #12073
2022-02-17 23:20:33 +01:00
pecksin 5d0b18a0d0
Use absolute value for bouncy in collision (#11969)
* use abs(bouncy) in collision
* test case for negative bouncy
* send abs(bouncy) to old clients
2022-02-16 17:06:00 -05:00
DS a8707158a5
Allow to set the displayed item count and its alignment via meta (#8448)
* Allow to set the displayed item count and its offset via meta

* fix rect constr call

* devtest: add dump_item chatcommand

* fix rect2 constr call (sdim is a position (typedef for v2s32), not a dimension) and remove background because it would work now

* add missing utf8 to wide conversion

* rename to count_meta
2022-02-10 06:17:52 -05:00
Lars Müller ad1da994b2
Increase max objects per block defaults (#12055) 2022-02-08 19:33:10 +01:00
sfan5 ba6fbc417e Remove awful Mingw32 workarounds
Instead a warning is triggered if an affected compiler is detected.
closes #12022
2022-02-08 19:31:24 +01:00
Lars Müller b9ee29a945
Send HUD flags only if changed 2022-02-08 19:28:32 +01:00
sfan5 afb061c374
Fix broken server startup if curl is disabled (#12046) 2022-02-04 20:29:28 +01:00
Lars Müller 1ee37148a8
Fix types of get_mapgen_setting_noiseparams (#12025) 2022-02-04 20:28:43 +01:00
Jude Melton-Houghton 1c73902005 Clean up ClientInterface locking 2022-02-03 11:43:51 +01:00
rubenwardy c61998bd20
Revert "Disable dynamic shadows for the 5.5.0 release" (#12032) 2022-01-31 21:48:14 +00:00
Lars Mueller 1e4d6672be Fix builtin statbar backgrounds
see #12000
2022-01-31 16:35:30 -05:00
rubenwardy 128f6359e9
Use virtual paths to specify exact mod to enable (#11784) 2022-01-30 22:40:53 +00:00
sfan5 484a4b518f Add another very awful workaround to prevent a crash on Mingw32
This appears to be the same issue as 70df3d54f3.
Hopefully the next MinGW update will remove the need for this.
2022-01-30 22:57:44 +01:00
sfan5 5da204f5bc
Get rid of `basic_debug` last minute
This isn't a revert but rather just disables the codepaths. also see #12011
2022-01-30 21:32:49 +01:00
sfan5 b66477c29f
Abort raycasts that go out-of-bounds (#12006) 2022-01-30 21:31:18 +01:00
sfan5 f69eead62e Get rid of empty test file 2022-01-30 13:49:26 +01:00
sfan5 a9bccb964f Raise max mapgen limit constant to align with mapblock size 2022-01-30 13:49:26 +01:00
SmallJoker a27362de6a Disable dynamic shadows for the 5.5.0 release
The dynamic shadows are yet not in the desired state to justify the
inclusion into version 5.5.0. A stable release is long overdue, hence
this allows fixes to continue in 5.6.0-dev to finally release an
acceptable version of the dynamic shadows feature.

Reverting this commit is highly recommended to proceed in development.
2022-01-29 18:42:55 -05:00
sfan5 66e8aae9f2 Get rid of legacy workaround in SQLite backend
tested on Android 11, fixes #11937
2022-01-28 17:16:02 +01:00
sfan5 91c6728eb8 Add game name to server status string 2022-01-28 17:15:10 +01:00
sfan5 22f0c66abb Request execution on dedicated GPU on Windows 2022-01-27 22:30:02 +01:00
sfan5 7aea5cb88f Enable high-res timers on Windows
This should fix issues like #11891, caused by the fps limiting
code being unable to operate correctly.
2022-01-27 22:30:02 +01:00
sfan5 058846d687 Rework drawtime and related timekeeping code to use microseconds 2022-01-27 22:30:02 +01:00
Jude Melton-Houghton fc161e757c
Automatically migrate client mod storage (#11960) 2022-01-27 22:24:30 +01:00
Lars Müller fe0b2d02bf
Define control(bits) as "unset" for entities (#11995) 2022-01-27 22:22:58 +01:00
updatepo.sh 0d0786e414 Update example config and translation .cpp 2022-01-25 23:18:50 +01:00
Jude Melton-Houghton 1b2176a426
Cancel emerge callbacks on shutdown 2022-01-23 00:56:17 +01:00
Vincent Robinson 95a775cd3a
Bump formspec version (#11980) 2022-01-23 00:55:43 +01:00
sfan5 f8cef52ea0 Fix consistency of sky sun/moon texture behaviour
Also cleans up related code somewhat.
2022-01-22 11:18:34 -05:00
Zughy 37d80784dd
Allow resetting celestial vault elements by leaving its arguments empty (#11922) 2022-01-22 12:42:49 +01:00
sfan5 f66ed2c27f Fix local animation not instantly updating after being set 2022-01-19 23:30:18 +01:00
sfan5 42839fa1db Optimize folder handling in 'files' mod storage backend
This regressed in bf22569019.
2022-01-17 21:49:18 +01:00
Dmitry Kostenko b6555ee6af Reset override material in anaglyph
Reset override material properties before applying the color filter.
2022-01-16 13:10:33 +01:00
Alex 7c93b2d7a3
Give the ASCII console splash a facelift 2022-01-15 17:45:33 +01:00
sfan5 9a12e4499e Minor improvements to Lua sandbox 2022-01-15 17:45:08 +01:00
sfan5 379473b670 Improve situation around race condition with dynamic_add_media during client join 2022-01-15 17:45:08 +01:00
savilli 72b14bd994
Don't call on_dieplayer callback two times (#11874) 2022-01-15 17:44:55 +01:00
SmallJoker b2eb44afc5
Fix NodeDef backwards compatibility to 5.3.0 (#11942)
1. Fixes crashes on older clients when [png is used as base image
2. Fixes liquid type assertion fails on debug builds
2022-01-12 18:49:14 +01:00
sfan5 4c8c649779
Mainmenu game-related changes (#11887)
fixes:
* Switching between games does not immediately hide creative mode / damage buttons if so specified
* World creation menu has a game selection list even though the menu already provides a gamebar
* Showing gameid in world list is unnecessary
* Choice of mapgen parameters in menu persists between games (and was half-broken)
2022-01-09 21:15:35 +01:00
SmallJoker 8fab406c28 Formspec: Fix bgcolor and set_focus checks 2022-01-09 18:47:12 +01:00
sfan5 5eb45e1ea0
Restore pass-through of direction keys (#11924)
This moves relevant code into the PlayerControl class and gets rid of separate keyPressed variable.
2022-01-09 18:46:36 +01:00
sfan5 76dbd0d2d0
Fully remove bitmap font support (#11863)
Freetype is now a build requirement.
2022-01-08 14:53:25 +01:00
Jude Melton-Houghton bf22569019
Use a database for mod storage (#11763) 2022-01-07 20:28:49 +02:00
Wuzzy b81948a14c
Fix damage wraparound if very high damage (#11872) 2022-01-06 21:16:35 +01:00
Vincent Robinson e39b159845 Base formspec coordinate size on padded screensize 2022-01-04 17:47:32 -08:00
SmallJoker d33ab97434 Inventory: Add ServerEnv checks for calls during script init
This fixes 'minetest.get_inventory' calls to players or nodes during the load phase.
2022-01-04 18:39:27 +01:00
Wuzzy 84fdd369d4
Cap damage overlay duration to 1 second (#11871) 2022-01-02 22:14:02 -05:00
x2048 e030d9cff0
Recalculate normals before adding mesh to the scene 2022-01-02 14:32:13 +01:00
ShadowNinja 29d2b2ccd0
Print announce error response (#11878)
Fix HTTPFetch caller and request ID to 64 bits
Check that allocated caller ID is not DISCARD
Print body if serverlist request returns error
Don't print control characters from HTTP responses
Document special HTTPFetch caller IDs
Allow unicode to be printed
2022-01-01 22:44:56 +01:00
Vincent Robinson 544b9d5c72
Add padding[] element to formspecs (#11821) 2021-12-30 12:54:47 -08:00
Vincent Robinson 4a16ab3585
Improve TTF support for pixel-style fonts (#11848) 2021-12-30 12:54:21 -08:00
SmallJoker 14c7fae378
Formspec: Unify argument checks (#11851) 2021-12-29 23:58:26 +01:00
sfan5 0ea8df4d64
Socket-related cleanups
Improve error handling on Windows and reduce the size of the `Address` class
2021-12-29 23:01:26 +01:00
ROllerozxa 05573d6d8d
Remove unused (de)serializeAttributes() methods 2021-12-29 23:00:16 +01:00
Vitaliy 9b650b9efb
Add more neighbors on mesh update (#6765) 2021-12-29 22:59:53 +01:00
SmallJoker 481bb90eac Fix segfault in drawItems() due to missing inventory list
This fixes a nullptr dereference when the specified inventory list is not known.
Happens when HUD elements are sent before the required inventory list is created.
2021-12-29 19:20:49 +01:00
savilli 0fa54531d4
Fix check that denies new clients from a singleplayer session 2021-12-28 14:08:21 +01:00
William L. DeRieux IV cc64a0405a
Automatically use SSE registers for FP operations on i386 (#11853)
use SSE for floating-point operations to avoid issues with improper fp-rounding and
loss of precision when moving fp-data to incompatible or less-precise
registers/storage locations

https://gcc.gnu.org/wiki/FloatingPointMath
https://gcc.gnu.org/wiki/x87note
2021-12-28 14:06:24 +01:00
JosiahWI 7f6306ca96
Restore GCC 5 compatibility (#11778) 2021-12-28 14:05:49 +01:00
sfan5 49f7d2494c Protect font initialization with mutex
fixes #4532
2021-12-18 20:38:33 +01:00
sfan5 b2409b14d0 Refactor trusted mod checking code 2021-12-18 20:37:13 +01:00
sfan5 f405459548 Remove setlocal and setupvalue from `debug` table whitelist
It's likely that these could be used trick mods into revealing the insecure
environment even if they do everything right (which is already hard enough).
2021-12-18 20:37:13 +01:00
sfan5 8c99f2232b Don't let HTTP API pass through untrusted function
This has been a problem since the first day, oops.
2021-12-18 20:37:13 +01:00
sfan5 8472141b79
Restructure devtest's unittests and run them in CI (#11859) 2021-12-18 20:36:43 +01:00
ROllerozxa fcf86ded8f
Disable inventory if player's inventory formspec is blank (#11827) 2021-12-13 17:43:29 +01:00
Wuzzy f71091bf52 Remove creative/damage info in Esc/Pause menu 2021-12-13 17:33:21 +01:00
sfan5 d9d219356a Fix get_bone_position() on unset bones modifying their position
closes #11840
2021-12-06 00:06:49 +01:00
sfan5 ff934d538c
Fix various code & correctness issues (#11815) 2021-12-05 14:40:30 +01:00
SmallJoker 57a59ae92d
Network: Delete copy constructor and use std::move instead (#11642)
This is a follow-up change which disables class copies where possible to avoid unnecessary memory movements.
2021-12-01 20:22:33 +01:00
updatepo.sh a157256706 Update minetest.conf.example and dummy cpp file 2021-11-27 19:41:45 +01:00
Corey Powell 413be76c63
Implemented disconnect_player (#10492)
Co-authored-by: rubenwardy <rw@rubenwardy.com>
2021-11-26 19:19:40 +00:00
sfan5 87ab97da2a
Fix find_nodes_in_area misbehaving with out-of-map coordinates (#11770)
This ensures that no overflows (side-effects) happen within the find_nodes_in_area function by limiting coordinates like done in the map generation code.
2021-11-26 19:32:41 +01:00
Lejo b9051386ae
Add Lua bitop library (#9847) 2021-11-26 19:31:05 +01:00
HybridDog 7a1464d783
Minimap: gamma-correct average texture colour calculation (#9249)
This calculates the average texture colour while heeding the sRGB colourspace.
2021-11-26 19:30:49 +01:00
sfan5 206e131854
Add backwards-compatible behaviour if too few CAO textures specified
(#11766)
2021-11-22 17:27:49 +00:00
ExeVirus 52bfbf6ed0
Allow for Game-Specific Menu Music (#11241) 2021-11-22 17:26:46 +00:00
savilli c9070e54bc
Fix local digging animation (#11772) 2021-11-19 22:31:04 +00:00
Elijah Duffy cbf658f83d
Lua API: Add `rmdir`, `cpdir` and `mvdir` (#9638)
Co-authored-by: rubenwardy <rw@rubenwardy.com>
2021-11-10 19:10:20 +01:00
Riceball LEE 693f98373b
Localize error messages in mainmenu (#11495)
Co-authored-by: sfan5 <sfan5@live.de>
Co-authored-by: rubenwardy <rw@rubenwardy.com>
2021-11-01 12:27:46 +00:00
Wuzzy 6910c8d920
Fix number of tool uses being off by 1..32767 (#11110) 2021-10-31 22:33:33 +00:00
sfan5 0b95da7ad3 Automatically package MinGW runtime in buildbot 2021-10-31 22:32:48 +00:00
Isabelle COWAN-BERGMAN 532d5b21fd
Add joystick layout for DragonRise GameCube controller (#11467) 2021-10-31 19:17:47 +01:00
rubenwardy 8dfeba02b9 Fix crash on hypertext[] with not enough parts
The length check used < rather than <=, disabling the check when the formspec version
matches the client's FORMSPEC_API_VERSION.

Additionally, it was possible to have fewer parts than required if the formspec version
was greater than the client's FORMSPEC_API_VERSION.
2021-10-25 21:39:40 +01:00
sfan5 4ee643f472 Fixes around emerge handling 2021-10-25 20:31:52 +02:00
Jude Melton-Houghton 1e26e45530
Limit stepheight smoothing to the stepheight and stop smoothing during jumps (#11705) 2021-10-25 20:31:14 +02:00
sfan5 660e63dbae
Fix item duplication if player dies during interact callback (alternative) (#11662) 2021-10-25 20:30:27 +02:00
Wuzzy d4b89eb106 Fix no_texture.png activation w/ simple leaves 2021-10-22 11:01:42 +02:00
Lars Müller 0d345dc1bd
Fix view bobbing not resetting when resting
partially fixes #11694, also fixes #11692
2021-10-20 21:51:21 +02:00
Wuzzy 86b44ecd82
Add no_texture.png as fallback for unspecified textures 2021-10-20 21:50:16 +02:00
LoneWolfHT c82ec8b210
Fix compiling on Windows with Visual Studio 2021-10-15 18:16:09 +02:00
rubenwardy 6901c5fae5
Use scoped app storage on Android (#11466)
From November 2021, the Play Store will no longer be accepting
apps which use the deprecated getExternalStorageDirectory() API.

Therefore, this commit replaces uses of deprecated API with the new
scoped API (`getExternalFilesDir()` and `getExternalCacheDir()`).
It also provides a temporary migration to move user data from the
shared external directory to new storage.

Fixes #2097,  #11417 and #11118
2021-10-15 18:14:48 +02:00
Wuzzy fe7195badb Make /status message easier to read 2021-10-15 18:13:57 +02:00
hecks 02292e03e4
Add embedded PNG texture modifier (#11498) 2021-10-13 17:51:37 +02:00
sfan5 fe5cb2cdfb Remove broken timeout behaviour
Code that relies on `resend_count` was added in 7ea4a03 and 247a1eb, but never worked.
This was fixed in #11607 which caused the problem to surface.
Hence undo the first commit entirely and change the logic of the second.
2021-10-12 20:13:09 +02:00
savilli 6ea558f8ac
Fix player HP desync between client and server 2021-10-12 20:12:49 +02:00
SmallJoker ecc6f4ba25
Remove a few unused functions reported by callcatcher (#11658) 2021-10-12 20:12:20 +02:00
sfan5 6de8d77e17 Move instead of copy during content install if possible 2021-10-07 00:20:01 +02:00
sfan5 2b5075f0e2 Move archive extraction in content store to async job 2021-10-07 00:20:01 +02:00
sfan5 2d5b7b5fb4 Make fs::extractZipFile thread-safe 2021-10-07 00:20:01 +02:00
emixa-d 9fab5d594c
Add "MINETEST_MOD_PATH" environment variable (#11515)
This adds an environment variable MINETEST_MOD_PATH.
When it exists, Minetest will look there for mods in addition to ~/.minetest/mods/.
2021-10-07 00:19:41 +02:00
lhofhansl b4b9bee5f2
Reduce shadow jitter (#11668) 2021-10-05 21:54:01 +02:00
Wuzzy bc71622d21
Fix crash when calling remove/kick/ban_player on start (#11672) 2021-10-05 21:53:47 +02:00
Jude Melton-Houghton 5aa95fef10
Make MetaDataRef:get return nil instead of nothing (#11666) 2021-10-05 15:38:33 +03:00
Wuzzy 4fca601e0c
Add get_server_max_lag() (#11671) 2021-10-05 15:35:55 +03:00
x2048 982e03f60d
Improvements to colored shadows (#11516) 2021-10-01 16:21:53 +02:00
Wuzzy 21113ad410
Split liquid_viscosity to liquid_viscosity and move_resistance (#10810) 2021-10-01 16:21:24 +02:00
x2048 f5040707fe
Order drawlist by distance to the camera when rendering (#11651) 2021-09-27 17:46:08 +02:00
SmallJoker d51d0f3a5a
Various code improvements
* Camera: Fix division by 0 after view bobbing
* Remove ignored constness
* Connection: Improve window size range limits
2021-09-27 17:45:44 +02:00
TheBrokenRail 3dcf9e963e
Touch UI support for desktop builds (#10729) 2021-09-26 18:04:09 +02:00
sfan5 9f85862b7c Fix "Could not create ITexture, texture needs to have a non-empty name" warning 2021-09-22 18:43:40 +02:00
nia 2628316842
Fix src/util/string.cpp on NetBSD
- iconv() prototype changed from traditional Unix defintion
  to POSIX definition in 9.99.x.
- wchar_t is not a valid character set for iconv. Share code
  with Android for using UTF-32.
2021-09-19 20:23:52 +02:00
DS e79d6154fc
Fix client-side performance of chat UI (#11612) 2021-09-19 20:23:35 +02:00
Lars Müller 40ea4ddef1
Fix HUD multiline text alignment (#10795) 2021-09-19 20:23:22 +02:00
sfan5 e0529da5c8 Fix trivial typos 2021-09-19 13:54:20 +02:00
sfan5 ad076ede85 Add preprocessor check for weird (incorrect) build configurations 2021-09-19 13:53:44 +02:00
sfan5 fd8a8501bc
Shave off buffer copies in networking code (#11607) 2021-09-17 18:14:25 +02:00
sfan5 ea250ff5c5 Fix GLES2 discard behaviour (texture transparency) 2021-09-17 18:13:50 +02:00
HybridDog d1e0f73b77 Hide Wself-assign-overloaded and Wself-move unittest compilation warnings
The warnings occured with the clang compiler
2021-09-17 18:13:04 +02:00
ROllerozxa 6fedee16f0
Readd TGA to the list of valid texture formats. (#11598) 2021-09-15 11:12:24 +01:00
Lars Müller 719a12ecac
Chop game background in mainmenu (#10796) 2021-09-14 20:46:02 +02:00
sfan5 4feb799b7e Add Windows-specific CreateTempFile() implementation
Once again MSVC is the only compiler not supporting basic POSIX functionality.
2021-09-14 20:45:41 +02:00
sfan5 b480a3e9fd Fix broken handling of NodemetaChanged packets
fixes #11610
2021-09-12 14:42:01 +02:00
sfan5 75bf9b75ca
Make sure relevant std::stringstreams are set to binary 2021-09-11 21:06:57 +02:00
sfan5 766e885a1b
Clean up/improve some scriptapi error handling code 2021-09-10 23:16:46 +02:00
Jude Melton-Houghton 7423c4c11e
Send to clients node metadata that changed to become empty (#11597) 2021-09-10 23:16:34 +02:00
sfan5 bbfae0cc67
Dynamic_Add_Media v2 (#11550) 2021-09-09 16:51:35 +02:00
NeroBurner 7f3401412e
Fix movement in random_input mode (#11592) 2021-09-05 19:58:50 +02:00
sfan5 31d2b9edcd Don't look for zlib and zstd manually on Windows 2021-09-01 22:20:38 +02:00
lhofhansl d1624a5521
Switch MapBlock compression to zstd (#10788)
* Add zstd support.
* Rearrange serialization order
* Compress entire mapblock

Co-authored-by: sfan5 <sfan5@live.de>
2021-08-31 17:32:31 -07:00
pecksin 040aed37ab Remove closing paren as weblink delimiter 2021-08-29 19:30:33 +02:00
sfan5 6a1424f2b1
Async-related script cleanups 2021-08-28 12:15:12 +02:00
savilli 3f1adb49ae
Remove redundant on_dieplayer calls 2021-08-28 12:14:16 +02:00
NeroBurner 1d69a23ba4
Joystick sensitivity for player movement (#11262)
This commit deprecates the forward, backward, left, and right binary
inputs currently used for player movement in the PlayerControl struct.
In their place, it adds the movement_speed and movement_direction
values, which represents the player movement is a polar coordinate
system.

movement_speed is a scalar from 0.0 to 1.0. movement_direction is
an angle from 0 to +-Pi:

	       FWD
	        0
	        _
	 LFT   / \   RGT
	-Pi/2 |   | +Pi/2
	       \_/
	       +-Pi
	       BCK

Boolean movement bits will still be set for server telegrams and
Lua script invocations to provide full backward compatibility.
When generating these values from an analog input, a direction is
considered active when it is 22.5 degrees away from either
orthogonal axis.

Co-authored-by: Markus Koch <markus@notsyncing.net>
Co-authored-by: sfan5 <sfan5@live.de>
2021-08-27 20:24:24 +02:00
Wuzzy 63e8224636
Fix 6th line of infotext being cut off in half (#11456) 2021-08-23 22:13:17 +02:00
SmallJoker eea488ed75
Inventory: Fix rare out-of-bounds access
Co-authored-by: Thomas--S <info@thomas-stangl.de>
2021-08-23 14:10:17 +02:00
DS dad87a360b
Use utf-8 for the Irrlicht clipboard (#11538) 2021-08-23 14:09:50 +02:00
SmallJoker 0c1e9603db
HUD: Reject and warn on invalid stat types (#11548)
This comes into play on older servers which do not know the "stat" type.
Warnings are only logged once to avoid spam within globalstep callbacks
2021-08-21 20:04:04 +02:00
Wuzzy 6fd8aede48
Show status message when changing block bounds (#11556) 2021-08-21 13:53:49 +02:00
sfan5 e7b05beb7d
Validate staticdata and object property length limits (#11511)
Some games provide users with enough freedom to create items
with metadata longer than 64KB, preventing this from causing
issues is on them but we'll still do the minimum not to abort
the server if this happens.
2021-08-19 20:14:22 +02:00
Wuzzy 1320c51d8e
Fix scaled world-aligned textures being aligned inconsistently for non-normal drawtypes 2021-08-19 20:14:04 +02:00
rubenwardy 24b66dede0
Add fwgettext util function 2021-08-19 20:13:25 +02:00
SmallJoker 3b842a7e02 Fix inconsistent integer comparison warnings 2021-08-17 20:00:47 +02:00
Lean Rada 328d949225
Start sprite animation at the beginning (#11509)
When setting a sprite animation, do not keep the last animation's frame number. Setting a new animation should start the animation at the start of the new animation.
2021-08-16 17:56:38 +02:00
sfan5 4419e311a9 Cap iterations of imageCleanTransparent sanely
fixes #11513 performance regression with 256x textures
2021-08-16 17:56:11 +02:00
Treer 963fbd1572
Fix access violation in create_schematic() (#11534)
fixes #11533

Schematics saved from y locations greater than 0 would cause an access violation if layer probabilities were specified
2021-08-16 17:55:35 +02:00
SmallJoker b3b075ea02 Fix segfault caused by shadow map on exit 2021-08-12 20:08:39 +02:00
x2048 442e48b84f
Move updating shadows outside of RenderingCore::drawAll. (#11491)
Fixes indirect rendering modes such as some 3D modes mentioned in #11437 and undersampled rendering.
Does not fully fix anaglyph 3d mode.
2021-08-12 20:07:09 +02:00
DS 0709946c75
Fix a segfault caused by wrong textdomain lines in translation files (#11530)
* The problem were lines like these:
  "# textdomain:"
* str_split does not add an empty last part if there is a delimiter
  at the end, but this was probably assumed here.
2021-08-12 20:06:18 +02:00
DS 1ab29f1716
Fix GUIEditBoxWithScrollBar using a smaller steps than intlGUIEditBox (#11519) 2021-08-08 18:59:45 +02:00
Pevernow c6eddb0bae
Gettext support on Android (#11435)
Co-authored-by: sfan5 <sfan5@live.de>
Co-authored-by: =?UTF-8?q?Olivier=20Samyn=20=F0=9F=8E=BB?= <code@oleastre.be>
2021-08-08 18:59:07 +02:00
SmallJoker 4a3728d828 OpenAL: Free buffers on quit 2021-08-03 20:29:55 +02:00
SmallJoker 32cb9d0828
Mods: Combine mod loading checks and deprection logging (#11503)
This limits the logged deprecation messages to the mods that are loaded
Unifies the mod naming convention check for CSM & SSM
2021-07-31 19:54:52 +02:00
Wuzzy e7cd4cfa25
Fix /emergeblocks crashing in debug builds (#11461)
The reason for the bug was an u16 overflow, thus failing the assert. This only happened in Debug build but not in Release builds.
2021-07-31 19:54:40 +02:00