Commit Graph

  • cf2a668e3b Add FIFO, implement scheduler timestep teknomunk 2024-04-08 08:45:53 +0000
  • 53204afe2a Move queue to its own file, move test code to a function teknomunk 2024-04-08 08:19:58 +0000
  • 6ca7c277b5 Fix several bugs, test behavior and profile (insert 8-32 microseconds, delete 22-37 microseconds) teknomunk 2024-04-08 08:10:20 +0000
  • 28113cfda7 Restore 45 degree cart movement, remove warning about unknown global teknomunk 2024-04-28 08:09:42 +0000
  • 72e7078a1e Complete rework of curve/tee rail direction functions teknomunk 2024-04-28 06:58:42 +0000
  • f3eb96f540 Rework rail_dir_curve to significantly reduce code size teknomunk 2024-04-28 06:21:46 +0000
  • f9a76cbccb Convert curved rails direction code to use fourdir teknomunk 2024-04-28 05:52:16 +0000
  • 8ee005f0d5 Change verticle offset for testing reattaching to rail to 0.55, which is a bit more than the stair step height teknomunk 2024-04-28 05:35:36 +0000
  • 3119b3941b Fix cart detaching without unregistering from everything teknomunk 2024-04-27 18:46:48 +0000
  • 65b8e3025e Fix typo, set use_texture_alpha = clip for all rail teknomunk 2024-04-27 18:19:47 +0000
  • 4d084a60e4 Fix several undefined global warnings, fix cart movement when over maximum speed, fix cart reattachment to sloped track teknomunk 2024-04-27 18:12:06 +0000
  • 4983f95044 Revert changed made to debug minecart-updates integration into tsm_railcorridors teknomunk 2024-04-25 15:38:08 +0000
  • 2a7ffd1528 Make punch move minecarts a little, comment out more debug prints teknomunk 2024-04-25 08:34:11 +0000
  • 5feb7706a3 Fix visual artifacts on the sides of rails teknomunk 2024-04-25 07:16:31 +0000
  • 5e8d8892f4 Stop carts from reversing when they stop, make stopped carts try to start moving in the direction the player is facing teknomunk 2024-04-23 16:34:39 +0000
  • 521d60192f Fix crash after entering a minecart not on rails teknomunk 2024-04-16 20:06:08 +0000
  • c57e9402fb Fix placed rail conversion, start automatic inventory rail conversion teknomunk 2024-04-12 21:25:40 +0000
  • 2d23d7967f Fix players repelling carts with new player metadata system teknomunk 2024-04-12 20:47:47 +0000
  • 4b8a32ac45 Cleanup debug prints teknomunk 2024-04-12 19:09:23 +0000
  • 2fd1c001f5 Add documentation for newly exposed attach_driver teknomunk 2024-04-12 19:04:53 +0000
  • 4d0c767e66 Add persistent player-specific metadata into mcl_playerinfo, simple cart reattachment (only exists if the luaentity for the cart exists when the player logs in) teknomunk 2024-04-12 19:01:15 +0000
  • cef458a959 More fixes for minecart-hopper movement teknomunk 2024-04-12 18:17:17 +0000
  • 2343b2d3df Get rail placement creating corners that lead into a downward sloped rail teknomunk 2024-04-12 14:44:55 +0000
  • 137c0d0c49 Create mcl_util.metadata_timer, fix crashes, add checks to prevent hoppers from pulling from carts that are not in the square above it teknomunk 2024-04-12 13:31:01 +0000
  • d571f6d8f2 Fix hopper-minecart interaction, convert ipairs(table) to use for i=1,#table instead teknomunk 2024-04-12 12:28:24 +0000
  • ea2d4ac889 Update mineshafts for new rail and minecarts, add loot to generated chest and hopper minecarts (and remove notes about a hack) teknomunk 2024-04-12 09:11:46 +0000
  • c127eb449e Give carts a small vertical lift when pushed to allow them to get back on rails teknomunk 2024-04-12 07:37:34 +0000
  • 51a29ed423 Stop rail from being placed directly above rail (floating in air) teknomunk 2024-04-11 14:02:53 +0000
  • c905b7c9b5 Fix sloped power,activator and detector rails, remove debug print teknomunk 2024-04-11 13:49:00 +0000
  • 51ec5990c3 Modify mcl_entity_invs to add support for save/load items hooks in entities, add save/load hooks to minecarts to store item list in the minecart data and not in the entity data so that respawn doesn't destroy items teknomunk 2024-04-11 13:09:24 +0000
  • e67aeaf800 Add documentation on the rail teknomunk 2024-04-11 12:33:22 +0000
  • 15616cb103 Add documentation on file structure and overviewes of each file teknomunk 2024-04-11 12:14:08 +0000
  • 1db7d4bc0e Fix crashes, fix link in documentation teknomunk 2024-04-11 09:17:06 +0000
  • f18e086da1 More documentation, add myself to copyright list in README.txt teknomunk 2024-04-11 08:33:36 +0000
  • fd81d19a94 More minor changes to API.md, start overall implementation documentation teknomunk 2024-04-11 08:18:52 +0000
  • 0fedfd2e40 Fix table of contents teknomunk 2024-04-11 07:12:08 +0000
  • c54dff1f27 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 teknomunk 2024-04-11 07:08:25 +0000
  • d3bb27c053 Nearly finish API documentation, create mcl_minecarts.add_blocks_to_map() teknomunk 2024-04-11 00:04:59 +0000
  • 077834951f Continue writing API documentation, update call signatures for a couple of API functions teknomunk 2024-04-10 23:30:03 +0000
  • fc3de80bf7 Change document formatting, finally move cactus cart dropping to node definition for mcl_core:cactus teknomunk 2024-04-10 22:48:24 +0000
  • 5145deb273 Correct crashes/item duplication with dropping carts, start API documentation teknomunk 2024-04-10 22:22:17 +0000
  • 62964b4dab Fix cart controls, cart pushing teknomunk 2024-04-10 09:03:59 +0000
  • 83b794060a Fix typo in rail replacement mapping, fix several crashes teknomunk 2024-04-10 08:02:21 +0000
  • 9bb814620d Implement movement thru tee rails teknomunk 2024-04-10 07:40:25 +0000
  • 8eee894429 Tune respawn distance limit teknomunk 2024-04-09 23:27:49 +0000
  • cdc2310e23 Fix crashes teknomunk 2024-04-09 23:09:10 +0000
  • 19da277b3b Remove memory leak for cart data, check distance to players before respawning distant carts to prevent adding entities that are immediately inactivated teknomunk 2024-04-09 22:32:58 +0000
  • 4965d6a24d Implement offline/out of range minecart movement and fix minecart respawning, remove railtype tracking teknomunk 2024-04-09 20:52:11 +0000
  • 8fb5412bb0 Remove do_movement dependency on the existence of a cart luaentity teknomunk 2024-04-09 11:59:45 +0000
  • 8e71c40394 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 teknomunk 2024-04-09 08:14:30 +0000
  • dd9ede59dc Make trains containing a player in a minecart function, minor cleanup in mcl_playerinfo teknomunk 2024-04-09 07:35:57 +0000
  • f4e74a11e8 Fix crashes in train logic, allow breaking apart trains teknomunk 2024-04-09 00:40:04 +0000
  • 95867b5da8 Implement train reversing teknomunk 2024-04-08 21:37:54 +0000
  • 7bdceb1c21 Repair vectors in cart data, mostly fix train movement bugs (still possible to have a furnace minecart flip, without the train also flipping) teknomunk 2024-04-08 19:38:13 +0000
  • 0e899d1bd0 Add cart entity respawn/destroy to match cart data (partially working) teknomunk 2024-04-07 12:27:53 +0000
  • 3252ac7919 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 teknomunk 2024-04-07 10:18:55 +0000
  • 33866ad21f Fix rail detach crash, make tnt minecarts explode if they hit something hard (off rails) teknomunk 2024-04-07 07:44:29 +0000
  • d8bdf7b9d2 Make sure carts get detatch if the rail under them is removed teknomunk 2024-04-07 07:13:40 +0000
  • 74f0542ba7 Fixish reorganizing, initial train implementation teknomunk 2024-04-06 22:10:22 +0000
  • 9ddfd0c4e1 Major reorganization, start setup for trains teknomunk 2024-04-06 17:09:54 +0000
  • 020737266b Make sure carts that collide move in the same direction the colliding cart was teknomunk 2024-04-06 14:23:59 +0000
  • 6203d20e04 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 teknomunk 2024-04-06 13:40:40 +0000
  • 74f9d13361 Harden against unknown nodes teknomunk 2024-04-06 07:33:47 +0000
  • 2f15de0150 Allow players to push minecarts that are not on track teknomunk 2024-04-06 06:50:30 +0000
  • 8a69a80707 Fix rails in creative inventory, make minecart with tnt not crash server when exploding, make minecart with tnt slightly more powerful than regular tnt teknomunk 2024-04-06 06:24:31 +0000
  • 7120365652 Fix rail movement regressions teknomunk 2024-04-06 05:56:21 +0000
  • 1515a9ecbd Move cart code to its own file, more code cleanup, add aliases for old track items teknomunk 2024-04-05 06:39:42 +0000
  • 233495d6f8 Cleanup code, restore uphill/downhill cart movement, completely remove old rail teknomunk 2024-04-04 22:08:20 +0000
  • 47ed64f45b Get rail reattachment (especially after jumps) working correctly teknomunk 2024-04-04 18:20:14 +0000
  • 1315f7ea95 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 teknomunk 2024-04-04 07:33:16 +0000
  • f13f52ac3b Silence unmaskable print statements teknomunk 2024-04-03 22:07:14 +0000
  • 320e36b455 Add immortal item entity support, add legacy rail conversion that uses immortal item drops for corners/tees/crosses that are no longer possible teknomunk 2024-04-03 21:33:48 +0000
  • f322dc9e26 Fix more rail connection bugs teknomunk 2024-04-01 06:12:59 +0000
  • e5f194cdd5 Get sloped connections working correctly teknomunk 2024-03-31 20:20:34 +0000
  • bd4d09b6e2 Re-enable rule for powering rail from underneath, have stairs block minecart movement, fix crash when lightning strikes a minecart teknomunk 2024-03-31 11:49:55 +0000
  • 178719b247 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) teknomunk 2024-03-31 11:13:50 +0000
  • 256018ca1e Update all rail types to new version teknomunk 2024-03-31 10:41:00 +0000
  • 019943346d Reorganize teknomunk 2024-03-31 10:21:07 +0000
  • 98f58cd78f Finish reverting 08b41a3b39 teknomunk 2024-03-30 23:00:17 +0000
  • 6b650511b1 Enable new track with get_next_dir handlers teknomunk 2024-03-30 22:33:40 +0000
  • 65cd8dabd8 Change connection rules again to allow building parallel track, tees and crosses), start implementing rail rules callbacks teknomunk 2024-03-30 22:02:06 +0000
  • 3ed88a8fba Add sloped rail teknomunk 2024-03-29 19:53:13 +0000
  • e27d5a9ae0 Fix rail visuals, add switch operation teknomunk 2024-03-29 18:08:07 +0000
  • 59e2ab01a4 Implement initial rail connection logic (no vertical track yet), experiment with texture modifiers and gravel underlay for display (not working) teknomunk 2024-03-28 15:06:26 +0000
  • 32e626fa6f Start implementing new rail nodes teknomunk 2024-03-28 07:11:59 +0000
  • bdab5b1853 Implement minecart with command block teknomunk 2024-03-28 06:18:50 +0000
  • 253c82eb31 Create mesecons command API and modify commandblock to use it teknomunk 2024-03-28 05:49:46 +0000
  • 62de57b13c Disable punch to move minecarts, implement punch to drop minecart, enable basic cart keyboard controls (accelerate and brake) teknomunk 2024-03-23 09:59:08 +0000
  • 59b32a89e0 Remove cart oscillation when pushed teknomunk 2024-03-23 09:08:17 +0000
  • d07a7d4ae6 Limit top speed of furnace minecarts to 4 blocks/second, limit total fuel time to 27 minutes teknomunk 2024-03-23 08:09:37 +0000
  • 430842f052 Fix bug with furnace minecart at max velocity (stopped until fuel ran out), move _fueltime into staticdata teknomunk 2024-03-23 07:32:32 +0000
  • 52846d67a0 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 teknomunk 2024-03-23 07:09:20 +0000
  • dbd4675856 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 teknomunk 2024-03-23 06:13:53 +0000
  • 8bd5559d13 Add API function to remove node watch teknomunk 2024-03-16 09:21:39 +0000
  • 2265ac1dce 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 teknomunk 2024-03-16 09:17:09 +0000
  • 3efd9d123a Start adding hooks for implpementing minecart with command block teknomunk 2024-03-16 07:59:39 +0000
  • 91964536c7 Make minecarts solid and add players pushing teknomunk 2024-03-13 14:22:23 +0000
  • 9332d828a8 Fix forwards/backwars tilt in all directions teknomunk 2024-03-13 13:07:58 +0000
  • df29329d74 Prevent players from entering minecarts when sneaking, prevents players from causing https://git.minetest.land/MineClone2/MineClone2/issues/3188 teknomunk 2024-03-13 12:26:15 +0000
  • 23c2fa8649 Increase default track friction, disable right-click to exit minecarts teknomunk 2024-03-13 12:08:12 +0000