Commit Graph

12738 Commits

Author SHA1 Message Date
teknomunk
389e2c4fa6 Prevent projectiles from crashing server when removed when it punched something (wither skull hitting the wither will cause this), mark wither skull with _removed = true when death timer removes it 2024-12-01 16:41:06 +01:00
teknomunk
514755336c Allow mob projectiles to hit their owner after 2 seconds (used by ghast fireball) 2024-12-01 16:41:06 +01:00
teknomunk
220594e1c2 Make snowballs have the same collision conditions as before 2024-12-01 16:41:06 +01:00
teknomunk
f86d800bd9 Undo conversions to use mcl_bows:arrow_entity and use arrow_item.."_entity" like master 2024-12-01 16:41:06 +01:00
teknomunk
ef8f88472f Convert flying bobber to vl_projectile, modify mcl_throwing.register_throwable_object() to check for _vl_projectile field 2024-12-01 16:41:06 +01:00
teknomunk
8d3e34c8df Remove redundant check 2024-12-01 16:41:06 +01:00
teknomunk
d8675b6aba Correct behavior when ignore_gravity flag is true, fix mob projectile velocity calculation, add missing entity_def lookup 2024-12-01 16:41:06 +01:00
teknomunk
0e663aaaf3 Convert mcl_mobs.register_arrow() to use vl_projectile, tested only with shulker bullet so far 2024-12-01 16:41:06 +01:00
teknomunk
052316fd1b Restore tipped arrow entity registration as near copy of mcl_bows:arrow_entity 2024-12-01 16:41:06 +01:00
teknomunk
b2ae4a09d0 Small optimization for calculating _allow_punch 2024-12-01 16:41:06 +01:00
teknomunk
a3c2e36e01 Remove unnecessary vectory copy 2024-12-01 16:41:06 +01:00
teknomunk
32a5dca904 Make splash, lingering and othe projectiles hit players 2024-12-01 16:41:06 +01:00
teknomunk
9f4b7d243c Stop minimum draw arrows from hitting player that shot them 2024-12-01 16:41:06 +01:00
teknomunk
9c05009190 Prevent collisions with entities until projectile is at least one node from where it started (to prevent always hitting yourself), modify mcl_bows.shoot_arrow() and mcl_bows_s.shoot_arrow_crossbow() to use vl_projectile.create(), fix projectiles damaging players 2024-12-01 16:41:06 +01:00
teknomunk
a9fed79685 Inline dir_to_pitch() and use correct formula for pitch 2024-12-01 16:41:06 +01:00
teknomunk
72b15d6f76 Address most of kno10's comments about mcl_utils/node.lua and a couple others, fix lingering potion sound 2024-12-01 16:41:06 +01:00
teknomunk
9f423a73e9 Address more review comments 2024-12-01 16:41:06 +01:00
teknomunk
f09cd7a37c Make arrows damage players, update API documentation, fix several crashes that occurred when arrows hit a player 2024-12-01 16:41:06 +01:00
teknomunk
5836718add Fix picking up tipped arrows 2024-12-01 16:41:06 +01:00
teknomunk
6d985708d0 Fix crash with splash potions of harming, make splash particles match potion color 2024-12-01 16:41:06 +01:00
teknomunk
865c497a8e Fix splash potions, fix crash when projectiles hit unknown nodes 2024-12-01 16:41:06 +01:00
teknomunk
fbadca4aaa Remove logging in tipped_arrows, prevent crash when spawning chicks, add extra safety check in vl_projectile.collides_with_solids 2024-12-01 16:41:06 +01:00
teknomunk
087c54ad60 Lingering potions should not collide with liquids, change behaviors assersion loop to catch nil members 2024-12-01 16:41:06 +01:00
teknomunk
495477977b Convert lingering potion to vl_projectile 2024-12-01 16:41:06 +01:00
teknomunk
dbf1fcd2f4 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-12-01 16:41:06 +01:00
teknomunk
b903c724ec Fix crash related to nil _time_in_air 2024-12-01 16:41:06 +01:00
teknomunk
1b3dcf1f00 Revert entity->object for three lines 2024-12-01 16:41:06 +01:00
teknomunk
a0a634facc Fix typo _ -> . 2024-12-01 16:41:06 +01:00
teknomunk
671e385697 Add empty line 2024-12-01 16:41:06 +01:00
teknomunk
6ff2280bf7 Fix typo in api.md, add TODO, change entity -> object 2024-12-01 16:41:06 +01:00
teknomunk
0f3af79de1 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-12-01 16:41:06 +01:00
teknomunk
1b5baef889 Update mcl_util.get_double_container_neighbor_pos() to use vector.offset 2024-12-01 16:41:06 +01:00
teknomunk
a69db8c31e Resolve more review comments, fix crash 2024-12-01 16:41:06 +01:00
teknomunk
3dac6de48f Resolve review comments 2024-12-01 16:41:06 +01:00
teknomunk
ea60af3dcd Remove debug print 2024-12-01 16:41:06 +01:00
teknomunk
756ac8f27a Give arrows a maximum lifetime to prevent them from getting stuck in mid-air forever 2024-12-01 16:41:06 +01:00
teknomunk
9a3fcaf984 Fix documentation for raycast_collides_with_entities 2024-12-01 16:41:06 +01:00
teknomunk
58ddb91e03 Add API documentation, minor API cleanup 2024-12-01 16:41:06 +01:00
teknomunk
f1883a81b0 Convert rocket to use vl_projectile API using mcl_bows:arrow as a template, remove some dead code 2024-12-01 16:41:06 +01:00
teknomunk
a2d69f377b 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-12-01 16:41:06 +01:00
teknomunk
8fdf29d321 Fix crash on startup 2024-12-01 16:41:06 +01:00
teknomunk
dc6444172d More refactoring to generalize arrow code into projectile 2024-12-01 16:41:06 +01:00
teknomunk
eabfe441e4 Start mcl_bows:arrow_entity refactor 2024-12-01 16:41:06 +01:00
teknomunk
1adcd65491 Remove _thrower from vl_projectile (uses self._vl_projectile.owner instead), reorder some code 2024-12-01 16:41:06 +01:00
teknomunk
0d86d4e0a1 Finish reworking all items in mcl_throwing 2024-12-01 16:41:06 +01:00
teknomunk
8a08e3b4bb Add in vl_projectile, add mcl_util.match_node_to_filter 2024-12-01 16:41:06 +01:00
teknomunk
28ebcebfd4 Move node related functions to mods/CORE/mcl_util/nodes.lua 2024-12-01 16:41:06 +01:00
teknomunk
b720f1f0c1 Create vl_projectile and refactor snowball and partially refactor ender pearl 2024-12-01 16:41:06 +01:00
THE-NERD2
a399182375 Fix elytra enchantability and allow Unbreaking to be applied (#4708)
Putting elytra into an enchanting table no longer causes any enchantments to appear in the formspec. Also, it should now be possible to use an anvil to add unbreaking.

Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4708
Reviewed-by: Mikita Wiśniewski <rudzik8@protonmail.com>
Co-authored-by: THE-NERD2 <pdp9729@gmail.com>
Co-committed-by: THE-NERD2 <pdp9729@gmail.com>
2024-12-01 15:38:51 +01:00
THE-NERD2
da44995528 Fix upside-down corner stair placement (#4709)
Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4709
Reviewed-by: Mikita Wiśniewski <rudzik8@protonmail.com>
Co-authored-by: THE-NERD2 <pdp9729@gmail.com>
Co-committed-by: THE-NERD2 <pdp9729@gmail.com>
2024-12-01 15:27:30 +01:00