1
0
mirror of https://github.com/luanti-org/luanti.git synced 2025-10-13 08:35:20 +02:00
Commit Graph

156 Commits

Author SHA1 Message Date
Lars Mueller
747857bffa Implement helpful __tostring for all userdata-based classes 2025-05-04 16:32:17 +02:00
Erich Schubert
78293404c7 Rename perlin noise to value noise (#15858) 2025-04-10 14:39:40 +02:00
sfan5
a99e985674 Centralize arbitrary area volume limit and raise it (#15696) 2025-01-23 12:18:20 +01:00
cx384
c7fe2ee5c9 Add core.spawn_tree_on_vmanip (#15415)
This function works like `core.spawn_tree`, but spawns an L-system tree onto a VoxelManip object instead on the map.
2024-12-08 20:27:22 +01:00
sfence
d849d51c2d Replace licensing text in headers (LGPLv2.1) (#15321) 2024-10-28 15:57:39 +01:00
sfan5
37095f3e49 Change the preprocessor macro that differs server/client builds 2024-10-16 19:39:59 +02:00
sfan5
0220d0d492 Encapsulate envlock 2024-09-26 17:31:49 +02:00
Elias Åström
f65fe80e81 Add minetest.bulk_swap_node (#15043)
Co-authored-by: sfan5 <sfan5@live.de>
2024-09-24 22:25:34 +02:00
Erich Schubert
4ac86db8e3 Simplify getGameTime function usage (#15187) 2024-09-20 15:05:51 +02:00
sfan5
7ae51382c8 Refactor ABM/LBM related code 2024-09-20 15:05:26 +02:00
SmallJoker
e236ad8348 Lua API: fix OOB array access in find_nodes_near (#14948) 2024-08-11 20:21:12 +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
1F616EMO~nya
2d8e4df7bc Allow optional actor ObjectRef value in node interaction calls (#14505) 2024-04-05 13:00:50 +02:00
sfan5
bc4ab8b99e General code refactoring/improvements in server, treegen and connection 2024-03-20 16:37:32 +01:00
cx384
60810c2d37 Add L-system trees as decorations (#14355) 2024-03-12 20:10:28 +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
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
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
grorp
e40417f687 Allow giving "pointabilities" to Lua raycasts (#14390) 2024-03-01 17:12:13 +01:00
sfan5
3cac17d23e Lua on each mapgen thread (#13092) 2024-02-13 22:47:30 +01:00
grorp
f2b99332d9 Add Lua API function to resolve node/collision/selection boxes (#13964) 2024-02-06 20:45:16 +01:00
cx384
5958714309 Tool specific pointing and blocking pointable type (#13992) 2024-01-22 18:27:08 +01:00
DS
11ec75c2ad ActiveObjectMgr fixes (#13560) 2023-10-09 17:13:04 +02:00
sfan5
659828b142 Rename ModApiEnvMod and ModApiItemMod
The 'mod' could have meant module in the past but no other classes do this.
2023-06-23 09:05:26 +02:00
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
524d446757 Minor script api fixes/cleanups 2023-06-23 09:05:26 +02:00
Desour
e700182f44 Replace Optional with std::optional 2023-06-15 10:38:44 +02:00
Jude Melton-Houghton
d13b12b791 Store MapEditEvent blocks in a vector (#13071) 2022-12-24 12:21:59 -05:00
sfan5
37386b9c3c Expose dtime_s to LBM handler 2022-12-04 12:35:14 +01:00
Jude Melton-Houghton
b38ffdec27 Implement vector and node conversion in Lua (#12609)
Co-authored-by: sfan5 <sfan5@live.de>
2022-10-18 18:01:44 -04:00
Jude Melton-Houghton
cb725a4555 Speed up find_nodes_in_area (#12845) 2022-10-13 09:35:19 -04:00
Jude Melton-Houghton
9676364c1f Optimize lighting calculation (#12797) 2022-10-09 10:50:26 -04:00
Jude Melton-Houghton
7632af3c73 Consolidate API object code (#12728)
Co-authored-by: sfan5 <sfan5@live.de>
2022-10-04 08:31:36 -04:00
JosiahWI
4163c872af Fix two memleak reports from Coverity (#12466) 2022-06-26 14:37:50 +01:00
sfan5
e9e721b937 Fix entity related bugs
* Make minetest.add_entity() binary-safe
* Fix on_death pushing dummy ObjectRef instead of nil
2022-06-15 17:20:07 +02:00
ShadowNinja
7993909fab Spacing fixes 2022-04-08 14:55:21 +01: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
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
sfan5
660e63dbae Fix item duplication if player dies during interact callback (alternative) (#11662) 2021-10-25 20:30:27 +02:00
SmallJoker
c9144ae5e2 Add core.compare_block_status function (#11247)
Makes it possible to check the status of the mapblock in a future-extensible way.
2021-05-30 20:24:12 +02:00
sfan5
a0047d6edc script: Replace calls to depreated luaL_openlib 2021-05-30 11:40:14 +02:00
Elias Fleckenstein
9250b5205a Add minetest.get_objects_in_area (#10668) 2020-12-29 16:50:09 +01:00
Zughy
7499ebe46a Fix float argument check in minetest.set_timeofday() (#10483)
Co-authored-by: Zughy <4279489-marco_a@users.noreply.gitlab.com>
2020-10-13 20:28:53 +01:00
HybridDog
2f4037752b Add minetest.get_artificial_light and minetest.get_natural_light (#5680)
Add more detailed light detection functions, a function to get the artificial light (torches) and a function to get the sunlight as seen by the player (you can specify timeofday).

Co-authored-by: rubenwardy <rw@rubenwardy.com>
2020-10-06 20:49:46 +02:00
rubenwardy
9ec75d7765 Clean up server-side translations, remove global variable (#10075) 2020-09-16 14:51:11 +01:00
sfan5
4b4513a67d Implement grouped mode for find_nodes_in_area (#9888)
plus general improvements to find_node_* functions
2020-07-14 22:36:53 +02:00
Wuzzy
c94d37827d Rework functionality of leveled nodes (#9852)
Co-authored-by: sfan5 <sfan5@live.de>
Co-authored-by: SmallJoker <SmallJoker@users.noreply.github.com>
2020-05-19 21:08:37 +02:00
sfan5
36d35f2fe3 CSM: Bugfixes to camera:get_pos() and camera:get_fov()
closes #9857
2020-05-14 21:16:45 +02:00
sfan5
f6f6dd140f script: Fix add_entity returning unusable ref if object deleted in on_activate 2020-04-27 06:58:34 +02:00