Commit graph

12555 commits

Author SHA1 Message Date
teknomunk
7bf6783f8e Lingering potions should not collide with liquids, change behaviors assersion loop to catch nil members 2024-09-22 00:13:03 +02:00
teknomunk
4e4d5e883e Convert lingering potion to vl_projectile 2024-09-22 00:13:03 +02:00
teknomunk
a54c1fa4ea Convert splash potion to vl_projectile, remove dead code, precompute several values in splash potion code, add check of behaviors array in vl_projectile 2024-09-22 00:13:03 +02:00
teknomunk
758d8c5545 Fix crash related to nil _time_in_air 2024-09-22 00:13:03 +02:00
teknomunk
b844f23d82 Revert entity->object for three lines 2024-09-22 00:13:03 +02:00
teknomunk
9b38a4c4f9 Fix typo _ -> . 2024-09-22 00:13:03 +02:00
teknomunk
242bb06aa4 Add empty line 2024-09-22 00:13:03 +02:00
teknomunk
e167bc7f09 Fix typo in api.md, add TODO, change entity -> object 2024-09-22 00:13:03 +02:00
teknomunk
8c55d13a29 Fix typos documentation, add ignore_gravity and liquid_drag options, use vl_projectile.register() for enter pearl, move projectile physics to vl_projectile add hook for future vl_physics support 2024-09-22 00:13:03 +02:00
teknomunk
cba4644fab Update mcl_util.get_double_container_neighbor_pos() to use vector.offset 2024-09-22 00:13:03 +02:00
teknomunk
7d4b342d4d Resolve more review comments, fix crash 2024-09-22 00:13:03 +02:00
teknomunk
37d88038f1 Resolve review comments 2024-09-22 00:13:03 +02:00
teknomunk
3a7ce22621 Remove debug print 2024-09-22 00:13:03 +02:00
teknomunk
4f25f6f58a Give arrows a maximum lifetime to prevent them from getting stuck in mid-air forever 2024-09-22 00:13:03 +02:00
teknomunk
236364f285 Fix documentation for raycast_collides_with_entities 2024-09-22 00:13:03 +02:00
teknomunk
394a08d506 Add API documentation, minor API cleanup 2024-09-22 00:13:03 +02:00
teknomunk
1665541a10 Convert rocket to use vl_projectile API using mcl_bows:arrow as a template, remove some dead code 2024-09-22 00:13:03 +02:00
teknomunk
51644ce1c8 Fold tipped arrows into standard arrows and handle effects via item definition callback, remove arrows when they collide with entities, update handling of removing projectiles 2024-09-22 00:13:03 +02:00
teknomunk
8f8f045905 Fix crash on startup 2024-09-22 00:13:03 +02:00
teknomunk
027b5cda00 More refactoring to generalize arrow code into projectile 2024-09-22 00:13:03 +02:00
teknomunk
99c92fa5e5 Start mcl_bows:arrow_entity refactor 2024-09-22 00:13:03 +02:00
teknomunk
3e376f92f6 Remove _thrower from vl_projectile (uses self._vl_projectile.owner instead), reorder some code 2024-09-22 00:13:03 +02:00
teknomunk
1f12334ca2 Finish reworking all items in mcl_throwing 2024-09-22 00:13:03 +02:00
teknomunk
6f387acbb5 Add in vl_projectile, add mcl_util.match_node_to_filter 2024-09-22 00:13:03 +02:00
teknomunk
f140faca6a Move node related functions to mods/CORE/mcl_util/nodes.lua 2024-09-22 00:13:03 +02:00
teknomunk
bbfcc3beec Create vl_projectile and refactor snowball and partially refactor ender pearl 2024-09-22 00:13:03 +02:00
kno10
d264ba70d8 Fix growth logic, clean up mcl_farming/shared_functions (#4640)
Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4640
Reviewed-by: teknomunk <teknomunk@protonmail.com>
Co-authored-by: kno10 <erich.schubert@gmail.com>
Co-committed-by: kno10 <erich.schubert@gmail.com>
2024-09-20 14:00:49 +02:00
Mikita Wiśniewski
513413afc7 Use remove_node instead of dig_node in mcl_core ABMs (fixes #4628) (#4629)
The mycelium ABM has been left untouched because of the potential destructiveness. If we ever find that to be an issue, it can be fixed as part of a bigger PR.

Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4629
Reviewed-by: teknomunk <teknomunk@protonmail.com>
Co-authored-by: Mikita Wiśniewski <rudzik8@protonmail.com>
Co-committed-by: Mikita Wiśniewski <rudzik8@protonmail.com>
2024-09-19 18:54:39 +02:00
kno10
011be754ca Allow deepslate copper to be mined with stone pickaxe (#4635)
Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4635
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-09-18 10:11:55 +02:00
teknomunk
eea96867c4 Don't add rain skycolor layer if the current layer is already the rain skycolor (#4648)
Fixes #4647 Rain makes the sky black until restart. This also fixes a memory leak caused by rain adding a color layer every time step.

Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4648
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: teknomunk <teknomunk@protonmail.com>
Co-committed-by: teknomunk <teknomunk@protonmail.com>
2024-09-18 10:10:53 +02:00
the-real-herowl
cd2ee49591 Merge pull request 'Make Soul Speed work on Soul Soil' (#4604) from upstream/soul_soil_speed into master
Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4604
Reviewed-by: Mikita Wiśniewski <rudzik8@protonmail.com>
2024-09-18 10:06:03 +02:00
seventeenthShulker
de3b34f5ea Update English translation keys with soul soil 2024-09-18 10:06:03 +02:00
seventeenthShulker
e2bcd129c1 Use soul_block group for soul speed bonus 2024-09-18 10:06:03 +02:00
seventeenthShulker
79e8452f62 Soul speed works on soul soil too
(needs localization)
2024-09-18 10:06:03 +02:00
the-real-herowl
b239549774 Merge pull request 'Correct space check when spawning mobs' (#4445) from fix-has_room into master
Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4445
Reviewed-by: kno10 <kno10@noreply.git.minetest.land>
2024-09-17 11:49:29 +02:00
teknomunk
0b62c827aa Remove has_room debug data 2024-09-16 13:32:06 +02:00
teknomunk
626bdd13d8 Change several places where mobs are created to use mcl_mobs.spawn() instead of minetest.add_entity() 2024-09-16 13:32:06 +02:00
teknomunk
31a3788ce1 Address review comments 2024-09-16 13:32:06 +02:00
teknomunk
e65370b845 Fixes 2024-09-16 13:32:06 +02:00
teknomunk
6c50e0a82b Fix volume used for room check during spawn, make mcl_mobs.spawn check for room before adding entity, change iron golems and mob spawners to use mcl_mobs.spawn 2024-09-16 13:32:06 +02:00
teknomunk
8ef08128b1 Add short circuit if sub-node space check isn't possible: 2024-09-16 13:32:06 +02:00
teknomunk
15efd00a29 Replace second call to minetest.find_nodes_in_area with checking top layer for matching nodes, change p2 calculation to use ceil(value) - 1, fix dx*dy*dz calculation 2024-09-16 13:32:06 +02:00
teknomunk
fa3df0d8c6 Add check for presence of minetest.get_node_boxes before attempting sub-node space checks 2024-09-16 13:32:06 +02:00
teknomunk
c41ce8ba59 Make spiders require 3x1x3 space to spawn 2024-09-16 13:32:06 +02:00
teknomunk
4d58f63485 Implement partial node spawning check 2024-09-16 13:32:06 +02:00
teknomunk
fa09b65010 Add most of the code for sub-node accurate spawning volume check (needs a function to calculate bounding box height of nodes) 2024-09-16 13:32:06 +02:00
teknomunk
d8d39ffd52 Add spawnbox parameter that overrides collision box for spawn volume checks 2024-09-16 13:32:06 +02:00
teknomunk
b6aafedf25 Fix space check function has_room() in mcl_mobs/spawning.lua so it allows spiderproofing 2024-09-16 13:32:06 +02:00
Mikita Wiśniewski
178cb9340d Clean-up set_string(..., nil) usage (fixes #4639) (#4641)
Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4641
Reviewed-by: kno10 <kno10@noreply.git.minetest.land>
Co-authored-by: Mikita Wiśniewski <rudzik8@protonmail.com>
Co-committed-by: Mikita Wiśniewski <rudzik8@protonmail.com>
2024-09-16 12:12:55 +02:00
kno10
f219e5f4ae Fix structure spawns under water + peaceful spawns (#4607)
- peaceful structure spawns would not run in peaceful mode (e.g., parrots)
- water structure spawns (e.g., guardians) would not run because the code required air above
- small code improvements

Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4607
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-09-15 23:15:30 +02:00