the-real-herowl
|
2860832890
|
Allow changing maximum projectile time live
|
2024-12-26 03:00:38 +01:00 |
|
teknomunk
|
ddba0408e1
|
Correct behavior of projectiles sticking in players forcing the projectile to survive
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
5c1881753b
|
Change object alive check so that projectiles are still removed when the object dies
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
60e3c139cc
|
Change mcl_mobs to use mcl_util.remove_entity() when killing mobs, add guard in vl_projectile against removed mobs
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
b8d2f67dfd
|
Update api.md with rotational offset fields
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
0d82c8f725
|
Replace magic numbers with named constants, add missing 'local'
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
bb934d09ee
|
Break long lines, add space between functions in vl_projectile/init.lua
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
bc321ccae4
|
Add _vl_projectile.can_punch() to mob API and move hard-coded entity behavior from arrow to rover code
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
5db55dde3c
|
Update { ... } to {...}
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
0d8f7515c6
|
Update minetest->Luanti in affected documentation, update minetest. -> core. in affected code, factor out common subexpressions in mods/ITEMS/vl_projectile/init.lua
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
6566304b43
|
Fix bug in solid node collision code (not updating _last_velocity, making delta_v larger if length was small)
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
5f0244ebb1
|
Use creative arrow collection behavior from master (except they make pickup noises in creative), make all creative arrows infinity
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
537f49d57e
|
Rearrange conditions to minimize executed code
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
51ebb26abe
|
Stop infinite loop of arrows stuck in yourself punching you
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
73c66dc888
|
Sound fix, preserve _itemstring as well
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
d42797d48d
|
Make stuck arrows stop processing all other behaviors
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
f1a0c04f52
|
Make it possible to pick up arrows in creative mode
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
17f063c4e5
|
Fix tipped arrow behavior, remove debug code
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
33c70fd677
|
Rework projectile pickup code (to prevent item duplication bugs), always update _last_pos, short circuit processing behaviors if the entity was removed by a behavior but didn't report it
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
174cb5fe1c
|
Let arrows stick in players
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
aa8cec9911
|
Implement mcl_util.remove_entity() and convert projectile code to use it
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
df8db4aa39
|
Add pitch and yaw offset support to vl_projectile
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
1df10c8dd3
|
Correct damage for mob projectiles
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
efa6e7d2d0
|
Move arrow self-collision grace logic to vl_projectile then apply to mob projectiles and splash and linger potions, allow entity luaentity to be passed to mcl_util.get_entity_id()
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
2d56deacf6
|
Replace _puncher with _owner, rework projectile code to make _owner a string, copy mcl_util.gen_uuid() from minecart branch, add mcl_util.get_entity_id(), fix crash
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
96abcd2bcc
|
Remove debug dump, move maximum time to live to vl_projectile
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
3df59a47b0
|
Document vl_projectile.replace_with_item_drop
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
c857d66f5d
|
Move projectile stick logic into vl_projectile
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
32d37b30bf
|
Move tracer to vl_projectile
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
f265f5b52d
|
Change mcl_bows to use standard vl_projectile on_step handler, move burning behavior to vl_projectile
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
c3275eb0b7
|
Resolve luacheck findings
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
e192072a2c
|
Add hook to allow piercing enchantment to be implemented
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
db8bceebf3
|
Fix dispenser arrows so they hit players and entities, minetest.register_entity -> vl_projectile.register for mcl_throwing:egg
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
ee3ea9d3f5
|
Prevent dereferencing nil in wither.lua, fix minor typo in debug statement
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
fe513c321b
|
Add workarround for random velocity change of particles on creation
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
31e08b668d
|
Make sure a projectile sets on fire the thing it collided with
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
b821f3d72f
|
Fix luacheck findings for this PR: remove unused variables, remove overwritten value, add missing dependencies, fix undefined variable usage
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
b8fcc4c02e
|
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-25 11:52:24 +01:00 |
|
teknomunk
|
2864e8fa30
|
Correct behavior when ignore_gravity flag is true, fix mob projectile velocity calculation, add missing entity_def lookup
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
b4e6417b92
|
Convert mcl_mobs.register_arrow() to use vl_projectile, tested only with shulker bullet so far
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
48937b3083
|
Make splash, lingering and othe projectiles hit players
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
dbbc53173c
|
Stop minimum draw arrows from hitting player that shot them
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
3b7fb6613e
|
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-25 11:52:24 +01:00 |
|
teknomunk
|
dd5ef7312c
|
Inline dir_to_pitch() and use correct formula for pitch
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
d71d9f5bf2
|
Address more review comments
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
c4df080af5
|
Make arrows damage players, update API documentation, fix several crashes that occurred when arrows hit a player
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
fa390b5752
|
Fix splash potions, fix crash when projectiles hit unknown nodes
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
ebdc5a5914
|
Remove logging in tipped_arrows, prevent crash when spawning chicks, add extra safety check in vl_projectile.collides_with_solids
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
9a877cf7b0
|
Lingering potions should not collide with liquids, change behaviors assersion loop to catch nil members
|
2024-12-25 11:52:24 +01:00 |
|
teknomunk
|
5474e31a8f
|
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-25 11:52:24 +01:00 |
|