Commit Graph

212 Commits

Author SHA1 Message Date
teknomunk
7b7dfd1da3 Finish reverting 08b41a3b39 2024-06-15 14:08:29 +02:00
teknomunk
603577e7a6 Enable new track with get_next_dir handlers 2024-06-15 14:08:29 +02:00
teknomunk
34f394d8dc Change connection rules again to allow building parallel track, tees and crosses), start implementing rail rules callbacks 2024-06-15 14:08:29 +02:00
teknomunk
75f394e5ab Add sloped rail 2024-06-15 14:08:29 +02:00
teknomunk
478c488c85 Fix rail visuals, add switch operation 2024-06-15 14:08:29 +02:00
teknomunk
4265f0b428 Implement initial rail connection logic (no vertical track yet), experiment with texture modifiers and gravel underlay for display (not working) 2024-06-15 14:08:29 +02:00
teknomunk
57ad709bdd Start implementing new rail nodes 2024-06-15 14:08:29 +02:00
teknomunk
296c301669 Implement minecart with command block 2024-06-15 14:08:29 +02:00
teknomunk
4db70fd729 Disable punch to move minecarts, implement punch to drop minecart, enable basic cart keyboard controls (accelerate and brake) 2024-06-15 14:08:29 +02:00
teknomunk
6f7e1df002 Remove cart oscillation when pushed 2024-06-15 14:08:29 +02:00
teknomunk
c18976c0ca Limit top speed of furnace minecarts to 4 blocks/second, limit total fuel time to 27 minutes 2024-06-15 14:08:29 +02:00
teknomunk
ff5e185629 Fix bug with furnace minecart at max velocity (stopped until fuel ran out), move _fueltime into staticdata 2024-06-15 14:08:29 +02:00
teknomunk
64b930ac3e Fix call signature of mcl_util.hopper_pull_to_inventory, move cart-specific behaviors to _mcl_minecarts_on_step handlers, fix typo, change distance used in rail reattach code, move cart_id generation 2024-06-15 14:08:29 +02:00
teknomunk
f9e8f60a1c Add groups to minecart entities (for containers), fix cart node watch handling, relocate hopper_push_to_mc in mcl_hopper/init.lua, implement hopper-to-minecart push using enter/leave hooks for both straight and bent hoppers 2024-06-15 14:08:29 +02:00
teknomunk
ec2d08524e Add API function to remove node watch 2024-06-15 14:08:29 +02:00
teknomunk
6c6bfcfcb2 Refactor enter/leave hook processing, add node watches for implementing hopper-to-minecart functionality (should properly handle heavy server lag without missing any time), temporarily disable hopper push/pull to minecart in mcl_hoppers, prepare to move minecart-specific on_step behavior out of main on_step function and to a minecart-specific handler 2024-06-15 14:08:29 +02:00
teknomunk
b0c075714f Start adding hooks for implpementing minecart with command block 2024-06-15 14:08:29 +02:00
teknomunk
44f9a3e619 Make minecarts solid and add players pushing 2024-06-15 14:08:29 +02:00
teknomunk
1618693726 Fix forwards/backwars tilt in all directions 2024-06-15 14:08:29 +02:00
teknomunk
fd6f4ee80e Prevent players from entering minecarts when sneaking, prevents players from causing https://git.minetest.land/MineClone2/MineClone2/issues/3188 2024-06-15 14:08:29 +02:00
teknomunk
d479bfb711 Increase default track friction, disable right-click to exit minecarts 2024-06-15 14:08:29 +02:00
teknomunk
c2be93e0d5 Initial tuning of acceleration/gravity, fix crash when entering an activator rail, detach mobs from cart on active activator rail, remove commented out code no longer needed 2024-06-15 14:08:29 +02:00
teknomunk
0ef0ae6bee Move code that handles below-rail hoppers to handle_cart_enter, implement timestep-independent cart physics (will need tuning punch, power rail and gravityaccelerations to make game fun) 2024-06-15 14:08:29 +02:00
teknomunk
0fa067d3ee Mostly fix carts stopping between powered rails (there is still some strangeness with acceleration physics) 2024-06-15 14:08:29 +02:00
teknomunk
e4eb38db9c Fix diagonal movement 2024-06-15 14:08:29 +02:00
teknomunk
b4a0ae9c56 Add diagonal track movement on zig-zag track, rewrite mcl_minecarts:get_rail_direction 2024-06-15 14:08:29 +02:00
teknomunk
37d07b6201 Make TNT minecarts available in creative menu 2024-06-15 14:08:29 +02:00
teknomunk
52bca90ae2 Implement custom item dropper handlers, implement droppers placing minecarts 2024-06-15 14:08:29 +02:00
teknomunk
af9409c69f Hopper minecarts pull from containers above rail 2024-06-15 14:08:29 +02:00
teknomunk
0951acd06c Rework in preparation to add code to pull from containers into the hopper minecart 2024-06-15 14:08:29 +02:00
teknomunk
f57d202a9d Move fiction constant to top of file, suppress cart flips when direction reverses due to gravity or end of track 2024-06-15 14:08:29 +02:00
teknomunk
b51496ad8e 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-06-15 14:08:29 +02:00
teknomunk
adddaec69a Remove dip into the ground that occured when gravity caused the cart to reverse directions 2024-06-15 14:08:29 +02:00
teknomunk
a0463b564a Implement gravity, move orientation update to own function, fix cart stopping in process_acceleration 2024-06-15 14:08:29 +02:00
teknomunk
8c6b011c91 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-06-15 14:08:29 +02:00
teknomunk
f2c6f069d0 Make minecart always stop at correct location at end of track, fix crash when placing chest minecart after changing how staticdata is handled 2024-06-15 14:08:29 +02:00
teknomunk
15000be8ec 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-06-15 14:08:29 +02:00
teknomunk
f3fac3586f 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-06-15 14:08:29 +02:00
teknomunk
9be0d27dd8 Fix initial_properties for minecarts 2024-06-15 14:08:29 +02:00
teknomunk
bee32418c4 Change left,right and back vectors to matrix math results with no branching 2024-06-15 14:08:29 +02:00
teknomunk
5d14d43ec4 Remove now unused properties from minecart definition, convert more vectors to use vector.new syntax 2024-06-15 14:08:29 +02:00
teknomunk
8a91f04cf0 Complete rewrite of minecart movement that resolves https://git.minetest.land/MineClone2/MineClone2/issues/2446 and https://git.minetest.land/MineClone2/MineClone2/issues/247#issuecomment-50960 but has a bug where carts will synchronize movements that I am still investigating 2024-06-15 14:08:29 +02:00
teknomunk
2a9aaa02af Change staticdata serialization (with migration from old data), disable debugging code used to investigate https://git.minetest.land/MineClone2/MineClone2/issues/2446 2024-06-15 14:08:29 +02:00
teknomunk
44514e0fad Change to vector.new from {x=...}, relocate movement code to own function for future changes 2024-06-15 14:08:29 +02:00
nixnoxus
08b41a3b39 accelerate non-moving carts on mcl_minecarts:golden_rail_on (#4097)
accelerate a non-moving minecart away from a solid opaque block the powered rail is facing

Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4097
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: nixnoxus <nixnoxus@web.de>
Co-committed-by: nixnoxus <nixnoxus@web.de>
2024-03-24 05:29:44 +00:00
PrWalterB
899c45534f Adding occitan translation for CORE and ENTITIES 2024-01-20 04:28:46 +01:00
JoseDouglas26
df02770470 mcl_minecarts pt_BR translation 2023-12-22 23:45:07 +01:00
Sab Pyrope
5b4a79a26d Update russian translation 2023-08-31 14:16:42 +08:00
ancientmarinerdev
fe501e8021 Change bug fix so that loop carries on processing other items if first one is the issue. 2023-06-28 20:19:49 +00:00
ancientmarinerdev
b05fa5562c Fix crash in hopper minecarts through missing ent 2023-06-28 20:19:49 +00:00
Kristian
cc21b74125 Three fully translated 2023-06-27 21:09:03 +00:00
ancientmarinerdev
be8d9122ee Fix crash when creeper explodes in minecart 2023-05-07 21:11:48 +01:00
ancientmarinerdev
59f4a62fd6 Move hopper minecarts off item entity. Do not run every on_step. Use more accurate object search location. Cut down object search distance. 2023-03-31 13:40:36 -05:00
ancientmarinerdev
ecf72db684 Fix ooops 2023-03-20 13:37:26 +00:00
ancientmarinerdev
bcd7f38fa7 Use new style vectors 2023-03-20 13:37:25 +00:00
ancientmarinerdev
3eab946889 Make death check less frequent. Load passenger in minecart at shutdown. 2023-03-20 13:37:25 +00:00
anarquimico
f817fe7f72 Fix performance issues and better check for mobs death 2023-03-20 13:37:25 +00:00
anarquimico
d5f01e88c4 Make mobs ride minecarts 2023-03-20 13:37:25 +00:00
syl
96b2f6a01d Improve French translation 2023-03-10 22:48:46 +01:00
SmokeyDope
71671f8b5f Make minecart rails unable to be broken with lava 2023-02-09 01:53:52 +00:00
SmokeyDope
c4d60e50cc Make minecart rails unable to be broken with water 2023-02-09 01:53:52 +00:00
Michieal
6265148727 Move textures all into one centralized directory. 2023-01-30 22:55:53 -05:00
Riu Sakura
2b61231f82 add japanese translation 2022-12-19 15:33:31 +09:00
ancientmarinerdev
e6d778b214 Remove WIP flag for hopper minecart 2022-11-14 04:07:41 +01:00
ancientmarinerdev
ce457eb351 Who doesn't love hopper minecarts? 2022-11-14 04:07:41 +01:00
cora
224bbff56b Open minecart inv with regular rightclick 2022-10-15 00:40:03 +02:00
cora
d9f820cb67 Enable chest minecarts 2022-09-23 05:43:31 +02:00
PrairieWind
7451e4734f Enabled furnace minecart crafting and creative entry. 2022-09-18 13:32:45 -06:00
3raven
57d0b29bf5 Add translation 2022-08-23 03:13:32 +00:00
cora
9cea10a706 fix more blast resistance and hardness values 2022-06-13 02:48:00 +02:00
kabou
818cbb2f48 Add check for unknown nodes.
* Check if node has a definition table before attempting to evaluate its
  attributes.
* Define local variable to cache multiple accesses to `registered_nodes[]`
  and improve readability.
2022-03-09 12:11:59 +01:00
NO11
c52fda154b Break minecart if it's near a cactus (Fix #924) 2021-11-02 22:58:03 +01:00
AFCMS
2d1a43396f Merge pull request 'Title HUD API' (#1778) from title-API into master
Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/1778
2021-08-20 12:31:54 +00:00
AFCMS
fe62189019 Update French translation (part 1) 2021-08-13 11:35:18 +02:00
AFCMS
c31c852a6e add documentation 2021-07-20 16:14:34 +02:00
AFCMS
b5f7ae5458 working implementation + support of other mods 2021-07-20 15:47:26 +02:00
marcin-serwin
cbe8583cef Merge branch 'master' into polish-translation 2021-06-02 10:14:25 +00:00
AFCMS
cd33d406b2 fix many codestyle issues (functions, strings, modpaths) 2021-05-29 16:12:33 +02:00
AFCMS
9e074af07f unify code style [1] 2021-05-25 12:52:25 +02:00
AFCMS
fddaacdeae [mcl_item_entity] fix warnings 2021-05-25 00:43:42 +02:00
AFCMS
8286fd2a4d [mcl_minecarts] fix warnings 2021-05-25 00:43:08 +02:00
Elias Fleckenstein
f6d34db76e Update german Minecart translation 2021-04-26 10:36:22 +02:00
Marcin Serwin
9472f86025 Fix spellchecking errors 2021-04-12 17:58:04 +02:00
Marcin Serwin
1fd869b5fb Add polish translation of mcl_minecarts 2021-04-12 08:55:42 +02:00
AFCMS
59c13b6df8 Revert "Revert "remove hard depend to mcl_wip in mcl_minecarts""
This reverts commit 857a0c5565.
2021-03-30 00:58:45 +02:00
AFCMS
857a0c5565 Revert "remove hard depend to mcl_wip in mcl_minecarts"
This reverts commit 369c8b9b8a.
2021-03-30 00:58:36 +02:00
AFCMS
41a8cd0e15 Revert "Revert "remove hard depend to mcl_wip in mcl_minecarts""
This reverts commit 7a5c2d617b.
2021-03-30 00:58:02 +02:00
AFCMS
7a5c2d617b Revert "remove hard depend to mcl_wip in mcl_minecarts"
This reverts commit 369c8b9b8a.
2021-03-30 00:57:46 +02:00
AFCMS
369c8b9b8a remove hard depend to mcl_wip in mcl_minecarts 2021-03-30 00:54:58 +02:00
AFCMS
7ec7012572 fix indentation 2021-03-30 00:50:58 +02:00
Elias Åström
69e38debe5 Revert "Slightly tweak minecarts to be more MC-like"
This reverts commit 8af76f835d.
2021-03-13 12:30:33 +01:00
AFCMS
3635b848d5 add API for mcl_wip 2021-03-07 00:42:34 +01:00
Elias Fleckenstein
d57db0444f Use mod.conf in all mods, part 1 2021-03-04 15:22:14 +01:00
kay27
8af76f835d Slightly tweak minecarts to be more MC-like 2021-03-01 01:43:00 +04:00
kay27
44d3f25767 Leave minecart by Pressing Sneak, https://git.minetest.land/MineClone2/MineClone2/issues/567 2021-02-26 00:26:27 +04:00
Wuzzy
6b30553707 Merge branch 'cart-acceleration' of https://git.minetest.land/2mac/MineClone2 into master 2020-10-23 22:12:40 +02:00
kay27
ba51686e6c Russian translation 2020-07-20 00:11:13 +00:00
Wuzzy
c106a62979 Use minetest.is_creative_enabled 2020-07-10 16:45:40 +02:00
Wuzzy
7cfef25dfe Fix undeclared global in mcl_minecarts 2020-05-16 20:13:22 +02:00
Wuzzy
1a0e979b0c Update incomplete license information and credits 2020-05-11 17:18:04 +02:00