teknomunk
6581757b88
Move raycast_line_of_sight function to mcl_mobs/functions.lua, rework group spawn point selection code, add line of sight check to group origin
2024-08-06 06:14:59 -05:00
teknomunk
2453406392
Change logging default and one log message
2024-08-06 06:14:57 -05:00
teknomunk
45ffe8ea27
Refactor spawn_group() so that each spawn point can only be used once and protection is respected
2024-08-06 06:10:36 -05:00
teknomunk
8cf0660f37
Fix passive spawning, disable some debug logging
2024-08-06 06:10:36 -05:00
teknomunk
6028cbaa88
Stop mobs that require ground from spawning in water, remove unused code and variables, some minor microoptimizations
2024-08-06 06:10:36 -05:00
teknomunk
4b3edcaed8
Drop biome group generation and replace with spawn state checks for much improved performance (but has regressions), change logging of failure to find spawn point, increase spawn attempts to 4 per second with no position retries and only a single mob or group per attempt
2024-08-06 06:10:36 -05:00
teknomunk
ba1ed47747
Replace biome_check() with table.find()
2024-08-06 06:10:36 -05:00
teknomunk
6abf980d98
Implement generating biome groups for spawning (not actually used yet)
2024-08-06 06:10:36 -05:00
teknomunk
d5edaaa688
Move table.* functions to separate file in mcl_utils, add table.find() and table.intersect()
2024-08-06 06:10:36 -05:00
teknomunk
9b958bed62
Move modpath to separate variable to make it easier to add new files without merge conflicts
2024-08-06 06:10:36 -05:00
teknomunk
f985fcf5c5
Have the list of biomes automatically generated
2024-08-06 06:10:36 -05:00
teknomunk
52f8814876
Initial changes to spawn_check() and spawn_a_mob(), add profiling for mob spawning
2024-08-06 06:10:34 -05:00
kno10
77382d930e
Typo in setting name, default should be false ( #4492 )
...
Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4492
Reviewed-by: Mikita Wiśniewski <rudzik8@protonmail.com>
Co-authored-by: kno10 <kno10@noreply.git.minetest.land>
Co-committed-by: kno10 <kno10@noreply.git.minetest.land>
2024-08-03 17:52:51 +02:00
the-real-herowl
5e366a8916
Merge pull request 'Implement water freezing (mostly taken from mcla)' ( #4478 ) from WillConker/VoxeLibre:water_freezing into master
...
Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4478
Reviewed-by: Mikita Wiśniewski <rudzik8@protonmail.com>
2024-08-03 15:13:41 +02:00
WillConker
6c614d8376
Added line breaks in water freezing condition
2024-08-03 14:21:33 +02:00
WillConker
a785be59d9
Changed node light check to artificial light so that water can freeze in the day
2024-08-03 14:21:33 +02:00
cora
f23014005f
Only freeze water under open air
...
and if light level < 10
2024-08-03 14:21:33 +02:00
cora
c2098d777f
Prevent water freezing and ice melting ABMs from fighting
2024-08-03 14:21:33 +02:00
cora
dc07eea590
Freeze water in cold areas
2024-08-03 14:21:33 +02:00
tacotexmex
3460e27468
Update OpenCollective link ( #4465 )
...
Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4465
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: tacotexmex <tacotexmex@noreply.git.minetest.land>
Co-committed-by: tacotexmex <tacotexmex@noreply.git.minetest.land>
2024-08-03 12:47:37 +02:00
OgelGames
0012bdb71e
Clear itemstring when picking up or merging items ( #4530 )
...
Prevents possible item duplication with other mods. Matches the behavior of the default `__builtin:item`.
See also https://github.com/mt-mods/pipeworks/issues/130
Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4530
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: OgelGames <ogelgames@noreply.git.minetest.land>
Co-committed-by: OgelGames <ogelgames@noreply.git.minetest.land>
2024-07-31 03:26:28 +02:00
kno10
b8d7139792
Fix iron golem attack animation ( #4542 )
...
C.f. MCLA
Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4542
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: kno10 <erich.schubert@gmail.com>
Co-committed-by: kno10 <erich.schubert@gmail.com>
2024-07-31 03:18:53 +02:00
WillConker
cddc1982be
Fix first loot pool not being used in shipwrecks or ocean temples ( #4523 )
...
Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4523
Reviewed-by: Mikita Wiśniewski <rudzik8@protonmail.com>
Co-authored-by: WillConker <willconker@noreply.git.minetest.land>
Co-committed-by: WillConker <willconker@noreply.git.minetest.land>
2024-07-31 03:00:27 +02:00
kno10
9595b0df59
Inconsistent bed bouncyness, make top match bottom ( #4495 )
...
Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4495
Reviewed-by: teknomunk <teknomunk@protonmail.com>
Co-authored-by: kno10 <kno10@noreply.git.minetest.land>
Co-committed-by: kno10 <kno10@noreply.git.minetest.land>
2024-07-31 02:58:38 +02:00
WillConker
ff21d1eab1
Make eggs spawn chicks when hitting entities ( #4484 )
...
Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4484
Reviewed-by: Mikita Wiśniewski <rudzik8@protonmail.com>
Co-authored-by: WillConker <willconker@noreply.git.minetest.land>
Co-committed-by: WillConker <willconker@noreply.git.minetest.land>
2024-07-31 02:57:20 +02:00
WillConker
9d5b46c28a
Slow ender dragon regeneration ( #4481 )
...
Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4481
Reviewed-by: Mikita Wiśniewski <rudzik8@protonmail.com>
Co-authored-by: WillConker <waj01@joanes.net>
Co-committed-by: WillConker <waj01@joanes.net>
2024-07-31 02:56:33 +02:00
kno10
80a6a6efb0
Choose direction vectors uniformly for spawning ( #4467 )
...
The previous code was biased towards placing mobs on top or below the
player, because it chose the theta inclination angle uniformly,
but the sphere is more narrow at the top and bottom.
This code is also simpler.
Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4467
Reviewed-by: teknomunk <teknomunk@protonmail.com>
Co-authored-by: kno10 <erich.schubert@gmail.com>
Co-committed-by: kno10 <erich.schubert@gmail.com>
2024-07-31 02:30:29 +02:00
the-real-herowl
32148262e1
Merge pull request 'Grand Chests Refactor ( fixes #281 )' ( #4453 ) from mcl_chests_redo into master
...
Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4453
Reviewed-by: teknomunk <teknomunk@protonmail.com>
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
2024-07-31 02:28:18 +02:00
Mikita Wiśniewski
567d112942
Fix deprecated get_metadata() usage
...
Items are instead written as a serialized string into ItemStackMetaRef, and read from there as well. Old itemstacks get converted to the new format automatically.
2024-07-31 02:27:26 +02:00
Mikita Wiśniewski
347305eaea
Fix ender chests rotate crash
2024-07-31 02:27:26 +02:00
Mikita Wiśniewski
508bc19f6a
Remove nil fields from trapped chest definition
2024-07-31 02:27:26 +02:00
Mikita Wiśniewski
c1e9e4b1a2
Fix typos in API.md
2024-07-31 02:27:26 +02:00
Mikita Wiśniewski
7bf15642ca
Resolve teknomunk's comments
2024-07-31 02:27:26 +02:00
Mikita Wiśniewski
f1fa6240bb
Fix shift-clicking and a few luacheck warnings
2024-07-31 02:27:26 +02:00
Mikita Wiśniewski
c5bc6ff189
Cleanup comments (don't use \=, it's annoying)
2024-07-31 02:27:26 +02:00
Mikita Wiśniewski
70e903b716
Simplify double inventory inv logic
2024-07-31 02:27:26 +02:00
Mikita Wiśniewski
209b24a2fb
Move LBMs out of init.lua and fix API.md
2024-07-31 02:27:26 +02:00
cora
ac05f8bad6
Remove unused variables in chests example.lua
2024-07-31 02:27:26 +02:00
Mikita Wiśniewski
76cff76d91
Add an introduction text to API.md
2024-07-31 02:27:26 +02:00
Mikita Wiśniewski
49b6d09985
Add documentation (README.md, API.md)
2024-07-31 02:27:26 +02:00
Mikita Wiśniewski
a66c35a9ea
Fix double chests once more (hoppers this time)
2024-07-31 02:27:26 +02:00
Mikita Wiśniewski
a28e55160f
Make the chest opening/closing sound customizable + fix double chests
2024-07-31 02:27:26 +02:00
Mikita Wiśniewski
6bbb6b8dec
Add title field for mcl_chests.register_chest
2024-07-31 02:27:26 +02:00
Mikita Wiśniewski
b4b5bf8391
Move some groups (api.lua → chests.lua)
2024-07-31 02:27:26 +02:00
Mikita Wiśniewski
16dd8694a6
Refactor mcl_chests.register_chest AGAIN + cleanup
...
Now you can define custom groups for the chests, as shown in the trapped
chests example (now they show up under "Mechanisms" tab in creative!).
I'm a bit suspicious of the new return-wrapped functions, as in *they
might break under some circumstances I didn't observe*. It will require
some heavy testing to make sure nothing crashes in the future.
Also, `on_rightclick` for double chests is something I really want to
return-wrap as well, but failed to do so. 🤷
2024-07-31 02:27:26 +02:00
Jürgen Rühle
7a5ee4e6e2
Better detection of properly serialized data
...
Remove entity if initialization data is missing. Downgrade message in that case
to a warning.
2024-07-31 02:27:26 +02:00
Jürgen Rühle
d0d9600709
Fix invisible chests
...
Pass chest entity initialization data to on_activate as staticdata so
initialization is atomic, preventing premature deletion of chest entity
by concurrent server steps.
2024-07-31 02:27:26 +02:00
cora
709b73295c
Fix meta:set_string being called with nil
2024-07-31 02:27:26 +02:00
Mikita Wiśniewski
1d77017ca9
Refactor mcl_chests.register_chest and clean-up
2024-07-31 02:27:26 +02:00
Mikita Wiśniewski
d6d64d8837
Fix long doc strings
2024-07-31 02:27:26 +02:00