Commit Graph

12594 Commits

Author SHA1 Message Date
teknomunk 1e621ab0e7 Mostly fix carts stopping between powered rails (there is still some strangeness with acceleration physics) 2024-11-10 02:46:38 +01:00
teknomunk cd32b7865f Fix diagonal movement 2024-11-10 02:46:38 +01:00
teknomunk 0050b2dd62 Add diagonal track movement on zig-zag track, rewrite mcl_minecarts:get_rail_direction 2024-11-10 02:46:38 +01:00
teknomunk 397ad0c64f Make TNT minecarts available in creative menu 2024-11-10 02:46:38 +01:00
teknomunk 83ad76d3ba Implement custom item dropper handlers, implement droppers placing minecarts 2024-11-10 02:46:38 +01:00
teknomunk f122e38f3c Hopper minecarts pull from containers above rail 2024-11-10 02:46:38 +01:00
teknomunk 698d038e10 Rework in preparation to add code to pull from containers into the hopper minecart 2024-11-10 02:46:38 +01:00
teknomunk 9b89b200aa Move fiction constant to top of file, suppress cart flips when direction reverses due to gravity or end of track 2024-11-10 02:46:38 +01:00
teknomunk 1fb1865052 Add code to reattach carts to rail when data corruption occurs, fix bug in last commit that caused carts to bury into the ground 2024-11-10 02:46:38 +01:00
teknomunk 66164e1f0e Remove dip into the ground that occured when gravity caused the cart to reverse directions 2024-11-10 02:46:38 +01:00
teknomunk 865a278554 Implement gravity, move orientation update to own function, fix cart stopping in process_acceleration 2024-11-10 02:46:38 +01:00
teknomunk c13c800cd8 Change connected railcar behavior to fix unreliable end of track stopping, set maximum acceleration of powered rails to 8 blocks per second (per https://minecraft.fandom.com/wiki/Powered_Rail), stop powered rails from powering the block underneath it (allows below rail hopper to work while the rail is powered like in https://www.youtube.com/watch?v=szjO0-duTAk), modify mcl_hoppers to allow triggering a hopper pull once the minecart is stopped on top of the hopper and wait before allowing the cart to move to allow redstone circuits time to process 2024-11-10 02:46:38 +01:00
teknomunk bb8a2ee637 Make minecart always stop at correct location at end of track, fix crash when placing chest minecart after changing how staticdata is handled 2024-11-10 02:46:38 +01:00
teknomunk a67203c378 Modify do_movement_step to move to always move to the edge of the current rail segment before updating the direction to prevent oscillations at corners, fix end of track stop location with new movement behavior, disable experimental controls, swap code to detach the driver on float with a call to detach_driver() 2024-11-10 02:46:38 +01:00
teknomunk 0828372339 Add DEBUG flag, stop small do_movement_step's from occuring (this improves but doesn't eliminate the bug I with the a6be179ed commit), add recovery when staticdata field gets lost 2024-11-10 02:46:38 +01:00
teknomunk f476e43084 Fix initial_properties for minecarts 2024-11-10 02:46:38 +01:00
teknomunk d45bf2d65f Change left,right and back vectors to matrix math results with no branching 2024-11-10 02:46:38 +01:00
teknomunk 89867adbfe Remove now unused properties from minecart definition, convert more vectors to use vector.new syntax 2024-11-10 02:46:38 +01:00
teknomunk 7c898db3a2 Complete rewrite of minecart movement that resolves MineClone2/MineClone2#2446 and MineClone2/MineClone2#247 (comment) but has a bug where carts will synchronize movements that I am still investigating 2024-11-10 02:46:38 +01:00
teknomunk afbe257bee Change staticdata serialization (with migration from old data), disable debugging code used to investigate MineClone2/MineClone2#2446 2024-11-10 02:46:38 +01:00
teknomunk c64d9eea02 Change to vector.new from {x=...}, relocate movement code to own function for future changes 2024-11-10 02:46:38 +01:00
kno10 b540e6c77b Improve head swivel code (#4622)
* Utilize the minetest 5.9.0 API that uses radians not degree.
* Simplify computations to make this more efficient, in particular by querying and updating the bone position less frequently.
* Resolves minetest warning `Deprecated call to set_bone_position, use set_bone_override instead` in this location, but other uses remain.
* `mcl_util.set_bone_position` not modified, because it redundantly compares to the previous rotation once more.

Reviewed-on: VoxeLibre/VoxeLibre#4622
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:41:55 +01: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: VoxeLibre/VoxeLibre#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
the-real-herowl 2b7b7f1872 Merge pull request 'Improve plant growth system, add moisture level' (#4681) from kno10/VoxeLibre:pumpkin-melon-growth-1 into master
Reviewed-on: VoxeLibre/VoxeLibre#4681
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
2024-11-10 02:11:37 +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
the-real-herowl e3b7847df1 Merge pull request 'Shield improvements and bugfixes (fixes #2756)' (#4582) from shieldy_shields into master
Reviewed-on: VoxeLibre/VoxeLibre#4582
Reviewed-by: kno10 <kno10@noreply.git.minetest.land>
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
2024-11-10 01:34:50 +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
Loveaabb 04e29c5796 Several improvements to the Shield 2024-11-10 01:34:50 +01:00
Elias Åström 45ae170447 Deduplicate shield slowdown removal code 2024-11-10 01:34:50 +01:00
Elias Åström d0d1217dec Remove unused code in mcl_privs 2024-11-10 01:34:50 +01:00
Elias Åström cffc8e0145 Fix loosing interact bug in mcl_shields 2024-11-10 01:34:50 +01:00
the-real-herowl b136cbf9bb Changed bamboo cap drawtype (#4658)
Reviewed-on: VoxeLibre/VoxeLibre#4658
Co-authored-by: the-real-herowl <wiktor_t-i@proton.me>
Co-committed-by: the-real-herowl <wiktor_t-i@proton.me>
2024-11-02 21:04:00 +01:00
the-real-herowl e6d8d840db Merge pull request 'Fix missing protection checks in smithing tables' (#4659) from smithing_table_patch into master
Reviewed-on: VoxeLibre/VoxeLibre#4659
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
2024-11-02 21:00:19 +01:00
Mikita Wiśniewski 78125f425a Fix taking items out of protected smithing tables 2024-11-02 21:00:19 +01:00
cora cb1999414b Fix putting items in protected smithing tables 2024-11-02 21:00:19 +01:00
Mikita Wiśniewski 41b188caea Remove "double drop" mechanics for bamboo (fixes #4514) (#4642)
Reviewed-on: VoxeLibre/VoxeLibre#4642
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: Mikita Wiśniewski <rudzik8@protonmail.com>
Co-committed-by: Mikita Wiśniewski <rudzik8@protonmail.com>
2024-10-27 14:16:06 +01:00