teknomunk
349337042d
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-11-12 01:00:42 +01:00
teknomunk
ac9d1b18d8
Fix crash related to nil _time_in_air
2024-11-12 01:00:42 +01:00
teknomunk
6bcf1ad181
Revert entity->object for three lines
2024-11-12 01:00:42 +01:00
teknomunk
343fe3bc88
Fix typo _ -> .
2024-11-12 01:00:42 +01:00
teknomunk
83e6a4323d
Fix typo in api.md, add TODO, change entity -> object
2024-11-12 01:00:42 +01:00
teknomunk
3f22887639
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-11-12 01:00:42 +01:00
teknomunk
fd144466e4
Resolve more review comments, fix crash
2024-11-12 01:00:42 +01:00
teknomunk
da52e56397
Resolve review comments
2024-11-12 01:00:42 +01:00
teknomunk
6adef58bc4
Remove debug print
2024-11-12 01:00:42 +01:00
teknomunk
69a967c186
Give arrows a maximum lifetime to prevent them from getting stuck in mid-air forever
2024-11-12 01:00:42 +01:00
teknomunk
aacb915ec6
Fix documentation for raycast_collides_with_entities
2024-11-12 01:00:42 +01:00
teknomunk
b1f2ec60e1
Add API documentation, minor API cleanup
2024-11-12 01:00:42 +01:00
teknomunk
a3cfb0c0c4
Convert rocket to use vl_projectile API using mcl_bows:arrow as a template, remove some dead code
2024-11-12 01:00:42 +01:00
teknomunk
cc1d0ce55e
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-11-12 01:00:42 +01:00
teknomunk
85fc508284
Fix crash on startup
2024-11-12 01:00:42 +01:00
teknomunk
ab9fff400f
More refactoring to generalize arrow code into projectile
2024-11-12 01:00:42 +01:00
teknomunk
3961a32fb4
Start mcl_bows:arrow_entity refactor
2024-11-12 01:00:42 +01:00
teknomunk
21465e4efc
Remove _thrower from vl_projectile (uses self._vl_projectile.owner instead), reorder some code
2024-11-12 01:00:42 +01:00
teknomunk
152d200df2
Finish reworking all items in mcl_throwing
2024-11-12 01:00:42 +01:00
teknomunk
e9ec77e932
Add in vl_projectile, add mcl_util.match_node_to_filter
2024-11-12 01:00:42 +01:00
teknomunk
f8d5ed2a7d
Create vl_projectile and refactor snowball and partially refactor ender pearl
2024-11-12 01:00:42 +01:00
marro
4dc5d0939c
Whitespace fix in translation ( #4701 )
...
Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4701
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: marro <marronclement0403@gmail.com>
Co-committed-by: marro <marronclement0403@gmail.com>
2024-11-11 03:49:43 +01:00
grorp
bd9ab16762
Add touch_interaction to (cross)bow and spyglass
2024-11-10 15:14:56 +01:00
teknomunk
94d9e4c881
Address review comments
2024-11-09 20:30:35 -06:00
teknomunk
6b1aa43238
Only show particles if bone meal is consumed, don't continue testing positions if bonemeal was used on the first check position
2024-11-09 20:30:35 -06:00
teknomunk
cfdef2435a
Show particles regardless of success
2024-11-09 20:30:35 -06:00
teknomunk
49c8ae2fa0
Quick patch to get cherry saplings growing pending inclusing of a proper tree API
2024-11-09 20:30:33 -06:00
teknomunk
6ada1a3477
Remove check with mcl_core.check_vines_supported for twisted and crimson vines
2024-11-09 20:24:02 -06:00
teknomunk
189a2c62ad
Address review comments on mcl_util.trace_nodes
2024-11-09 20:24:02 -06:00
teknomunk
981cddddd4
Add growth limits to crimson/twisting vines
2024-11-09 20:24:02 -06:00
teknomunk
66b5a369f1
Add mcl_util.trace_node(), rewrite bamboo growth code to fix bone meal growth
2024-11-09 20:24:02 -06:00
teknomunk
4eda77acd1
Prevent bonemealing grass from making flowers and also bonemealing the block above the grass
2024-11-09 20:24:02 -06:00
teknomunk
afc270195a
Fix crash when bonemealing weaping and twisting vines, fix weaping vine growth
2024-11-09 20:24:02 -06:00
teknomunk
8f53074b58
Reorder functions to prevent crash
2024-11-09 20:24:02 -06:00
teknomunk
70e8ba9a89
Remove TODO pending future discussions, revert timer change in composter code
2024-11-09 20:24:02 -06:00
teknomunk
6741c5a809
Make composter_progress_chance local, as it is not used anywhere except in mcl_composters
2024-11-09 20:24:02 -06:00
teknomunk
d09791db7b
Fix typo that prevented bone mealing pumpkin plants
2024-11-09 20:24:02 -06:00
teknomunk
354160e9e6
Check both above and below in pointed_thing for bonemealing (and pass thru the position as .under), make crimson vines and twisting vines compostable by rightclicking on the composter
2024-11-09 20:24:02 -06:00
teknomunk
cf1325d466
Fix crash at one more spot
2024-11-09 20:24:02 -06:00
teknomunk
7112369917
Fix crashes when using bonemeal on nether nodes
2024-11-09 20:24:02 -06:00
teknomunk
e6e13bdc67
Change _mcl_on_bonemealing to _on_bone_meal, update API.md to reflect this
2024-11-09 20:24:02 -06:00
teknomunk
42d37210c5
Fix mods/ITEMS/mcl_composters/locale/mcl_composters.ru.tr
2024-11-09 20:24:02 -06:00
teknomunk
c3a33ea2c2
Update mod authors, remove a TODO
2024-11-09 20:24:02 -06:00
teknomunk
7f6d456a32
Remove bone to bone meal recipe from mcl_dye as it now resides in mcl_bone_meal
2024-11-09 20:24:02 -06:00
teknomunk
44d154f594
Modify backtrace listing to use minetest.log
2024-11-09 20:24:02 -06:00
teknomunk
eb6131b037
Fix localization errors
2024-11-09 20:24:02 -06:00
teknomunk
3c2f2593db
Only consume bone meal if a _mcl_on_bonemealing callback is defined or the legacy API returns true, convert vines to use new bonemeal API
2024-11-09 20:24:02 -06:00
teknomunk
9e6d49dd38
Fix localization except mcl_composters.ru.tr
2024-11-09 20:24:02 -06:00
teknomunk
4a865fa2df
Enable bamboo bonemealing despite rightclick handling strangeness
2024-11-09 20:24:02 -06:00
teknomunk
55b4d3d5ee
Rename localization files
2024-11-09 20:24:02 -06:00
teknomunk
57678e31bc
Move commented out bamboo bone meal code into mods/ITEMS/mcl_bamboo/bamboo_base.lua
2024-11-09 20:24:02 -06:00
teknomunk
d5684ca305
Add new API call mcl_bone_meal.use_bone_meal and use this to remove duplicate code, update mcl_farming:sweet_berries to use bonemeal API, add stub for bonemeal mod compatibility
2024-11-09 20:24:02 -06:00
teknomunk
a4f1ccd0ee
Update mcl_crimson to use bonemealing API
2024-11-09 20:24:02 -06:00
teknomunk
1e0f7618ba
Remove bone meal definition in mcl_dye, make textures in mcl_cocoas match master branch
2024-11-09 20:24:02 -06:00
teknomunk
f44102c238
Display call stack to assist in removing deprecated function calls
2024-11-09 20:24:02 -06:00
teknomunk
5b1fcf76f6
Fix mod dependencies
2024-11-09 20:24:02 -06:00
kabou
f61a7ab4cb
Remove color specifications from bone meal.
...
* The bone meal craftitem definition still had color specifications
from its past as a dye substitute. These can be removed now.
* Also remove default stack_max setting.
2024-11-09 20:24:02 -06:00
kabou
4449f74742
Remove color specifications from cocoa beans.
...
* The cocoa beans craftitem definition still had color specifications
from its past as a dye substitute. These can be removed now.
2024-11-09 20:24:02 -06:00
kabou
ba1e0e4301
Also generate double grass when bonemealing grass blocks.
2024-11-09 20:24:02 -06:00
kabou
7938fba4a5
Remove expired bone meal API.md from mcl_dye.
2024-11-09 20:24:02 -06:00
kabou
8acddab74f
Bonemealing mechanics bugfix.
...
When applying bonemeal to eg. farm crops, these have a chance to grow in
response to the application of bone meal. When a node can be bonemealed, the
applied bone meal item should always be spent after using it, regardless of
the results. Currently this does not work correctly, if the result of
bonemealing has no effect on the node, the used bone meal item is not spent.
This commit fixes the behavior of the bone meal item to always be taken when
used on a node that defines a `_mcl_on_bonemealing()` callback.
The nodes that implement the callback imay use the handler's return value
only to signal if the bonemealing was succesful, not to signal if it was at
all possible. For this reason, some nodes need to be made more strictly
conforming to the API.
* Always take the used bone meal item (if user is not in creative mode),
regardless of whether the bonemealed node's handler returned `true`.
* Make dispensers spawn particles after succesful bonemealing.
* Trivial comment fix.
* Ripe cocoa pod cannot be bonemealed.
* Update API.md to describe the stricter API semantics.
2024-11-09 20:24:02 -06:00
kabou
c2c7df820f
Improve mcl_bone_meal fr translations.
...
* Changed the wording after suggestions by AFCMS.
2024-11-09 20:24:02 -06:00
kabou
e5cf4bd225
Add missing es translation to mcl_bone_meal.
2024-11-09 20:24:02 -06:00
kabou
810051c591
Move cocoa beans item to mcl_cocoas.
...
* Add `mcl_cocoas:coca_beans` craftitem to mcl_cocoas.
* Remove `mcl_dye:brown` craftitem from mcl_dye.
* Move cocoa beans translations from mcl_dye to mcl_cocoas.
* Add `mcl_dye:brown` alias for `mcl_cocoas:cocoa_beans` to
mcl_dye.
* Abstract cocoa pod node registration into a loop.
* Update chocolate cookies crafting recipe in mcl_farming.
2024-11-09 20:24:02 -06:00
kabou
ae56a864d0
Remove stray line from locale template.
...
* Removed a line from the mcl_bone_meal locale template that had by
accident put there during the bone meal <-> white dye changes.
2024-11-09 20:24:02 -06:00
kabou
7ddcf3f93f
Use better override mechanism.
...
* Use `minetest.override_item()` instead of re-registering the node with
":" prefixed to its name. Thanks again to wsor for mentioning this.
2024-11-09 20:24:02 -06:00
kabou
e8d965e21a
Add more particles when bonemealing grass.
...
* Bonemealing dirt_with_grass spawns new growth over a wide area, so it
looks better if we spawn a few more extra bone meal particles.
* Update mod.conf depends to mcl_bone_meal.
2024-11-09 20:24:02 -06:00
kabou
8855246dd4
Update to new bone meal API.
...
* Update to use new mcl_bone_meal API:
* Use new bone meal item and remove related comment.
* Update mod depends in mod.conf
* Spelling fixes: s/bonemeal/bone meal/g
2024-11-09 20:24:02 -06:00
kabou
3889abbaf4
Add mcl_bone_meal.
...
* New mod mcl_bone_meal, replacing bone meal functionality previously
held in mcl_dye.
* Improve bonemealing API using callbacks in the nodes that support
bonemealing.
* Rename bone meal item to `"mcl_bone_meal:bone_meal"` and updated its
crafting recipe.
* Implement legacy compatibility for older bone meal API.
* Remove all non dye-related bone meal code, texture and translations from
mcl_dye.
* Add legacy compatibility shims to mcl_dye that refer to mcl_bone_meal.
* Add an alias for "mcl_dye:white" to keep mcl_dye and its API working
uniterrupted.
* Update mod depends in mcl_dye mod.conf.
2024-11-09 20:24:02 -06:00
kabou
f6235e8e92
Add bonemealing callback for fern.
...
* Adds a _mcl_on_bonemealing callback to fern.
2024-11-09 20:24:02 -06:00
kabou
2190080832
Add bonemealing callback for tall grass.
...
* Adds a _mcl_on_bonemealing callback to tall grass.
2024-11-09 20:24:02 -06:00
kabou
ea1d52baab
Add bonemealing callback for double flowers.
...
* Adds a _mcl_on_bonemealing callback to the double flowers.
2024-11-09 20:24:02 -06:00
kabou
fdc7f4634d
Add bonemealing callback for dirt with grass.
...
* Add new file mcl_flowers/bonemeal.lua, containing the bonemealing
callback for "mcl_core:dirt_with_grass".
* Override "mcl_core:dirt_with_grass" with a _mcl_on_bonemealing handler
calling a function defined in mcl_flowers. This sidesteps the problem
that bonemealing a node from mcl_core needs knowledge of mcl_flowers,
which would create a circular dependency. H/t to cora for suggesting
this solution. H/t to wsor for suggesting a solution that also works.
2024-11-09 20:24:02 -06:00
kabou
bde0d9b238
Add bonemealing callback to cocoa.
...
* Adds a _mcl_on_bonemealing callback to the unripe cocoa pods.
2024-11-09 20:24:02 -06:00
teknomunk
f644d37332
Keep same selection box size
2024-11-09 20:24:02 -06:00
kabou
17f2d85de9
Refactor beetroots and add bonemealing callback.
...
* Abstract unripe beetroot plant node registrations into a single
indexed definition and do the registration in a loop.
* Adds a _mcl_on_bonemealing callback to the unripe melon plants.
2024-11-09 20:24:02 -06:00
kabou
d07e8d9536
Add bonemealing callback to melons.
...
* Adds a _mcl_on_bonemealing callback to the unripe melon plants.
2024-11-09 20:24:02 -06:00
kabou
5d2fa8072a
Add bonemealing callback to pumpkins.
...
* Adds a _mcl_on_bonemealing callback to the unripe pumpkin plants.
2024-11-09 20:24:02 -06:00
kabou
2d8bb12fad
Add bonemealing callback to carrots.
...
* Adds a _mcl_on_bonemealing callback to the unripe carrot plants.
2024-11-09 20:24:02 -06:00
kabou
69032c3222
Add bonemealing callback to potatoes.
...
* Adds a _mcl_on_bonemealing callback to the unripe potato plants.
2024-11-09 20:24:02 -06:00
kabou
71e6fa9646
Add bonemealing callback to wheat.
...
* Adds a _mcl_on_bonemealing callback to the unripe wheat node definitions.
2024-11-09 20:24:02 -06:00
kabou
9ea52ce9b3
Add bonemealing callback to small mushrooms.
...
* Adds a _mcl_on_bonemealing callback to the mushroom node definitions.
2024-11-09 20:24:02 -06:00
kabou
0422635047
Add bonemealing callback to saplings.
...
* Adds a _mcl_on_bonemealing callback to the sapling node definitions.
2024-11-09 20:24:02 -06:00
kno10
d49426d453
Cleanup of mcl_core/functions ( #4592 )
...
Cleanup of mods/ITEMS/mcl_core/functions.lua
This improves several further ABMs such as vine growing, and uses the `vector` API instead of tables.
Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4592
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-11-10 02:32:51 +01:00
kno10
b5afa34469
Remove "wet" metadata altogether
2024-11-10 02:11:37 +01:00
kno10
ebf6cf32e8
meta:set_private("wet"), require only walkable nodes
2024-11-10 02:11:37 +01:00
kno10
a8318f6600
simplify catch-up LBM logic
2024-11-10 02:11:37 +01:00
kno10
fa7a7f4e81
more fixes to plant growth
2024-11-10 02:11:37 +01:00
kno10
c097c65262
adjust growth rates again
2024-11-10 02:11:37 +01:00
kno10
220a7b06e6
code review feedback
2024-11-10 02:11:37 +01:00
kno10
540a070c59
always use day light level, more fixes
2024-11-10 02:11:37 +01:00
kno10
78a958db4e
Double the odds, to halve the ABM frequencies.
2024-11-10 02:11:37 +01:00
kno10
e9453d6210
Add plant growth speed option, drop average light level
...
Closes : #4683 by removal
2024-11-10 02:11:37 +01:00
kno10
9376cf92b1
Adjust growth speeds
2024-11-10 02:11:37 +01:00
kno10
c4030115c4
improve moisture logic
2024-11-10 02:11:37 +01:00
kno10
e1ace4ad01
pumpkin/melon growth only tests one neighbor every time
2024-11-10 02:11:37 +01:00
Mikita Wiśniewski
f86a641dfa
Improve shield block code and unhardcode offhand group
2024-11-10 01:34:50 +01:00
Mikita Wiśniewski
084741b733
Fix using shield on unknown nodes and cleanup
2024-11-10 01:34:50 +01:00
Mikita Wiśniewski
d5bc0613d8
Make node itemstack check in mcl_shields less hacky
2024-11-10 01:34:50 +01:00
Loveaabb
f26c34e65f
Bugfix: Shield fails to block arrows
2024-11-10 01:34:50 +01:00