Commit Graph

12637 Commits

Author SHA1 Message Date
teknomunk fbb3da2fd0 Add documentation on file structure and overviewes of each file 2024-10-27 16:00:44 +01:00
teknomunk 4c5050162a Fix crashes, fix link in documentation 2024-10-27 16:00:44 +01:00
teknomunk b677b4d4e2 More documentation, add myself to copyright list in README.txt 2024-10-27 16:00:44 +01:00
teknomunk 14d55742ac More minor changes to API.md, start overall implementation documentation 2024-10-27 16:00:44 +01:00
teknomunk 233a907528 Fix table of contents 2024-10-27 16:00:44 +01:00
teknomunk fa6fdf52f8 Finish writing API documentation, remove drop_railcarts (replaced by try_detach_minecart), rename constants to ALL CAPS for consistency, change mcl_minecarts. to mod. for API function definitions 2024-10-27 16:00:44 +01:00
teknomunk 6c70df163a Nearly finish API documentation, create mcl_minecarts.add_blocks_to_map() 2024-10-27 16:00:44 +01:00
teknomunk b062ebb2ee Continue writing API documentation, update call signatures for a couple of API functions 2024-10-27 16:00:44 +01:00
teknomunk 9bd37e2ef1 Change document formatting, finally move cactus cart dropping to node definition for mcl_core:cactus 2024-10-27 16:00:44 +01:00
teknomunk 18dc75b207 Correct crashes/item duplication with dropping carts, start API documentation 2024-10-27 16:00:44 +01:00
teknomunk d4858464c3 Fix cart controls, cart pushing 2024-10-27 16:00:44 +01:00
teknomunk be8697a056 Fix typo in rail replacement mapping, fix several crashes 2024-10-27 16:00:44 +01:00
teknomunk 93de7d0384 Implement movement thru tee rails 2024-10-27 16:00:44 +01:00
teknomunk 08313c596d Tune respawn distance limit 2024-10-27 16:00:44 +01:00
teknomunk 663710bfd2 Fix crashes 2024-10-27 16:00:44 +01:00
teknomunk 562f488d6f Remove memory leak for cart data, check distance to players before respawning distant carts to prevent adding entities that are immediately inactivated 2024-10-27 16:00:44 +01:00
teknomunk bb4e3276a4 Implement offline/out of range minecart movement and fix minecart respawning, remove railtype tracking 2024-10-27 16:00:44 +01:00
teknomunk dbb96ec23e Remove do_movement dependency on the existence of a cart luaentity 2024-10-27 16:00:44 +01:00
teknomunk 734631733c Fix undefined global warning, move player off to the side of a cart when dismounting so trains don't get pushed apart when getting out 2024-10-27 16:00:44 +01:00
teknomunk dccb054690 Make trains containing a player in a minecart function, minor cleanup in mcl_playerinfo 2024-10-27 16:00:44 +01:00
teknomunk b3a5579b6e Fix crashes in train logic, allow breaking apart trains 2024-10-27 16:00:44 +01:00
teknomunk 985b11e999 Implement train reversing 2024-10-27 16:00:44 +01:00
teknomunk 2009222e01 Repair vectors in cart data, mostly fix train movement bugs (still possible to have a furnace minecart flip, without the train also flipping) 2024-10-27 16:00:44 +01:00
teknomunk a56174233b Add cart entity respawn/destroy to match cart data (partially working) 2024-10-27 16:00:44 +01:00
teknomunk 375ef8e9f7 Give furnace minecart minimum velocity when lit, add train separation code, update logging code, add sequence number to entity staticdata to allow respawn/despawn when carts move when the entity is unloaded 2024-10-27 16:00:44 +01:00
teknomunk a57c34757e Fix rail detach crash, make tnt minecarts explode if they hit something hard (off rails) 2024-10-27 16:00:44 +01:00
teknomunk 7c858d1575 Make sure carts get detatch if the rail under them is removed 2024-10-27 16:00:44 +01:00
teknomunk 2e04794e0e Fixish reorganizing, initial train implementation 2024-10-27 16:00:44 +01:00
teknomunk 1156ab8604 Major reorganization, start setup for trains 2024-10-27 16:00:44 +01:00
teknomunk 268f4368cb Make sure carts that collide move in the same direction the colliding cart was 2024-10-27 16:00:44 +01:00
teknomunk 4291e4f51a Add utilities to convert between an ObjectRef, it's active object id and a 128bit uuid, move minecart data from entity staticdata to mod storage to eventually allow updating carts when out of range of players and also track what carts are alive, implement on-rail cart collisions 2024-10-27 16:00:44 +01:00
teknomunk cf1f404362 Harden against unknown nodes 2024-10-27 16:00:44 +01:00
teknomunk a00ca4d97c Allow players to push minecarts that are not on track 2024-10-27 16:00:44 +01:00
teknomunk 996fc3f203 Fix rails in creative inventory, make minecart with tnt not crash server when exploding, make minecart with tnt slightly more powerful than regular tnt 2024-10-27 16:00:44 +01:00
teknomunk 1e1fe814ac Fix rail movement regressions 2024-10-27 16:00:44 +01:00
teknomunk 48d8a64e6b Move cart code to its own file, more code cleanup, add aliases for old track items 2024-10-27 16:00:44 +01:00
teknomunk f8c56c2fc2 Cleanup code, restore uphill/downhill cart movement, completely remove old rail 2024-10-27 16:00:44 +01:00
teknomunk 740b48ac06 Get rail reattachment (especially after jumps) working correctly 2024-10-27 16:00:44 +01:00
teknomunk 892c2d3e95 Make legacy rail update apply to all old rail types, add basic detached railcart physics with a stub to use mcl_physics when it gets merged 2024-10-27 16:00:44 +01:00
teknomunk 9d41eed732 Silence unmaskable print statements 2024-10-27 16:00:44 +01:00
teknomunk 7db52f9b7c Add immortal item entity support, add legacy rail conversion that uses immortal item drops for corners/tees/crosses that are no longer possible 2024-10-27 16:00:44 +01:00
teknomunk d85e998ab0 Fix more rail connection bugs 2024-10-27 16:00:44 +01:00
teknomunk f1b23796cc Get sloped connections working correctly 2024-10-27 16:00:44 +01:00
teknomunk ab5e556cfc Re-enable rule for powering rail from underneath, have stairs block minecart movement, fix crash when lightning strikes a minecart 2024-10-27 16:00:44 +01:00
teknomunk c32433bd71 Fix mcl_util.table_merge where a standard value overwrites a table, fix base definition usage, implement behavior difference when there is a solid block after a straight piece of track (this will eventually allow minecarts to fly off the end of the track) 2024-10-27 16:00:44 +01:00
teknomunk 2321376462 Update all rail types to new version 2024-10-27 16:00:44 +01:00
teknomunk c1eddc8f40 Reorganize 2024-10-27 16:00:44 +01:00
teknomunk a614020859 Finish reverting 08b41a3b39 2024-10-27 16:00:44 +01:00
teknomunk 512236c9ce Enable new track with get_next_dir handlers 2024-10-27 16:00:44 +01:00
teknomunk 00eb02b643 Change connection rules again to allow building parallel track, tees and crosses), start implementing rail rules callbacks 2024-10-27 16:00:44 +01:00