teknomunk
1ec732d646
Address review comments
2024-11-12 00:59:50 +01:00
teknomunk
eda99be60e
Change cart punching to impulse on velocity instead of acceleration, make punch impulse larger
2024-11-12 00:59:50 +01:00
teknomunk
a94a9e9bc2
Fix syntax error from rebase, fix cart tilt, change cart speed to 4 blocks/second and make into a setting, make minecart settings compatibily with upcoming dynamic rules PR ( #4662 )
2024-11-12 00:59:50 +01:00
teknomunk
9c8db2b995
Fix crash when train cars leave track
2024-11-12 00:59:50 +01:00
teknomunk
dba226e18c
Flip powered special T-junction textures to match regular rails
2024-11-12 00:59:50 +01:00
teknomunk
db1f504f2e
Add in working curved variants of special rails
2024-11-12 00:59:50 +01:00
teknomunk
80699b405c
Make powered rails always accelerate moving carts
2024-11-12 00:59:50 +01:00
teknomunk
66936c7f07
Fix detector rail strangeness, prevent crash
2024-11-12 00:59:50 +01:00
teknomunk
2295b88e12
Use correct vectors for look directions east/west
2024-11-12 00:59:50 +01:00
teknomunk
99500513c5
Remove debug code
2024-11-12 00:59:50 +01:00
teknomunk
937884083f
Fix minecart entity rotation
2024-11-12 00:59:50 +01:00
teknomunk
bd07311f08
Fix crash
2024-11-12 00:59:50 +01:00
teknomunk
5fc28cb614
Make straight rails with a free end bend towards newly placed rail and form corners
2024-11-12 00:59:50 +01:00
teknomunk
73eee3e344
Finish restricting 45 degree movement code to horizontal plane
2024-11-12 00:59:50 +01:00
teknomunk
5b1b75b0fc
Fix vertical movement that was hitting 45 degree curve code, reset pitch on minecarts
2024-11-12 00:59:50 +01:00
teknomunk
1f83937de9
Fix friction on slopes, fix cart reversal when timestep is very small or zero
2024-11-12 00:59:50 +01:00
teknomunk
c394864546
Allow functions for _rail_acceleration, make powered rail only accelerate carts when one side of the rail is a solid block or stairs
2024-11-12 00:59:50 +01:00
teknomunk
3ede8b4b7c
Remove instance of debug logging, change movement.lua function export
2024-11-12 00:59:50 +01:00
teknomunk
b5892419c5
Fix crash with minecart on activator rail
2024-11-12 00:59:50 +01:00
teknomunk
6cdd72c485
Fix cart pitch when detached
2024-11-12 00:59:50 +01:00
teknomunk
f4f0d01653
Add workaround to prevent random detached inventory doesn't exist warning when right-clicking entities with inventory
2024-11-12 00:59:50 +01:00
teknomunk
8622ee771f
Fix right-clicking nodes while holding rail
2024-11-12 00:59:50 +01:00
teknomunk
29a619555d
Add back shift+punch to immediately drop minecart
2024-11-12 00:59:50 +01:00
teknomunk
2abb7b8f35
Fix another crash, fix rail tee on texture
2024-11-12 00:59:50 +01:00
teknomunk
57bce03a33
Calculate acceleration of trains based on average of acceleration for all carts in the train, make velocity not change on slopes and 45 degree track
2024-11-12 00:59:50 +01:00
teknomunk
53e94e1c38
Prevent trains from slowing on 45 degree track
2024-11-12 00:59:50 +01:00
teknomunk
26c034b985
Add guard that prevents crash when itemstack is nil
2024-11-12 00:59:50 +01:00
teknomunk
a9e1c5ad19
Silence debug prints and logging
2024-11-12 00:59:50 +01:00
teknomunk
8780c8fca6
Prevent removal of old minecarts
2024-11-12 00:59:50 +01:00
teknomunk
11ce4ad18f
Add legacy node conversion to vl_legacy and update rails.lua to use it
2024-11-12 00:59:50 +01:00
teknomunk
f9136730ad
Make activated tnt minecarts glow in the dark, fix crash with lit tnt minecarts
2024-11-12 00:59:50 +01:00
teknomunk
89a0bd6e39
Fix a couple of crashes (TNT minecart trying to update orientation after exploding, trying to punch/push a minecart not on track)
2024-11-12 00:59:50 +01:00
teknomunk
9ca053aa2e
Expand mcl_util.hopper_pull() to mcl_util.hopper_pull_to_inventory()
2024-11-12 00:59:50 +01:00
teknomunk
6142c89dd2
Add profiling code to force_get_node()
2024-11-12 00:59:50 +01:00
teknomunk
78ab49e971
Address additional review comments
2024-11-12 00:59:50 +01:00
teknomunk
7b8705acad
Update API documentation to always use , add compatibility shim to mcl_minecarts.is_rail() and mcl_minecarts.ge_rail_direction()
2024-11-12 00:59:50 +01:00
teknomunk
b2c74dfe1a
Rewrite mcl_util.hopper_pull in terms of mcl_util.hopper_pull_to_inventory
2024-11-12 00:59:50 +01:00
teknomunk
2f4cbfca2d
Correct documentation per review
2024-11-12 00:59:50 +01:00
teknomunk
cf4d6257ae
Switch over to using vl_legacy for item conversion in player inventories
2024-11-12 00:59:50 +01:00
teknomunk
abda23c189
Fix typo
2024-11-12 00:59:50 +01:00
teknomunk
246d681880
Register rail conversions
2024-11-12 00:59:50 +01:00
teknomunk
48e610139b
Implement vl_legacy deprecated function and item conversion APIs
2024-11-12 00:59:50 +01:00
teknomunk
4303697e51
Fix crashes
2024-11-12 00:59:50 +01:00
teknomunk
7d0345b785
Make old rails have a drawtype, make update lbm always run
2024-11-12 00:59:50 +01:00
teknomunk
1cec9d6436
Move the various rails to their own files, code cleanup
2024-11-12 00:59:50 +01:00
teknomunk
68bda2840a
Remove undefined global for optional environmental physics
2024-11-12 00:59:50 +01:00
teknomunk
4056f5b0e2
Remove Emerge-0 warning that occurs when placing mineshafts
2024-11-12 00:59:50 +01:00
teknomunk
d2ac38dba7
Restore 45 degree cart movement, remove warning about unknown global
2024-11-12 00:59:50 +01:00
teknomunk
be3bcbb426
Complete rework of curve/tee rail direction functions
2024-11-12 00:59:50 +01:00
teknomunk
d12896c162
Rework rail_dir_curve to significantly reduce code size
2024-11-12 00:59:50 +01:00
teknomunk
bb0f0747ae
Convert curved rails direction code to use fourdir
2024-11-12 00:59:50 +01:00
teknomunk
644393c856
Change verticle offset for testing reattaching to rail to 0.55, which is a bit more than the stair step height
2024-11-12 00:59:50 +01:00
teknomunk
0f364016ee
Fix cart detaching without unregistering from everything
2024-11-12 00:59:50 +01:00
teknomunk
407133bdd3
Fix typo, set use_texture_alpha = clip for all rail
2024-11-12 00:59:50 +01:00
teknomunk
133184c329
Fix several undefined global warnings, fix cart movement when over maximum speed, fix cart reattachment to sloped track
2024-11-12 00:59:50 +01:00
teknomunk
597147e9cd
Revert changed made to debug minecart-updates integration into tsm_railcorridors
2024-11-12 00:59:50 +01:00
teknomunk
a71ed25496
Make punch move minecarts a little, comment out more debug prints
2024-11-12 00:59:50 +01:00
teknomunk
9ed1d0a059
Fix visual artifacts on the sides of rails
2024-11-12 00:59:50 +01:00
teknomunk
ffd3dbc7b1
Stop carts from reversing when they stop, make stopped carts try to start moving in the direction the player is facing
2024-11-12 00:59:50 +01:00
teknomunk
a7d8b52510
Fix crash after entering a minecart not on rails
2024-11-12 00:59:50 +01:00
teknomunk
a3b3585300
Fix placed rail conversion, start automatic inventory rail conversion
2024-11-12 00:59:50 +01:00
teknomunk
b0f12dfabb
Fix players repelling carts with new player metadata system
2024-11-12 00:59:50 +01:00
teknomunk
b8ed85a004
Cleanup debug prints
2024-11-12 00:59:50 +01:00
teknomunk
edf3b54fd4
Add documentation for newly exposed attach_driver
2024-11-12 00:59:50 +01:00
teknomunk
fad40d9444
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)
2024-11-12 00:59:50 +01:00
teknomunk
d5ab0b5406
More fixes for minecart-hopper movement
2024-11-12 00:59:50 +01:00
teknomunk
2cde46563d
Get rail placement creating corners that lead into a downward sloped rail
2024-11-12 00:59:50 +01:00
teknomunk
e495dbc0a2
Create mcl_util.metadata_timer, fix crashes, add checks to prevent hoppers from pulling from carts that are not in the square above it
2024-11-12 00:59:50 +01:00
teknomunk
0af628a8d4
Fix hopper-minecart interaction, convert ipairs(table) to use for i=1,#table instead
2024-11-12 00:59:50 +01:00
teknomunk
889c89c0e6
Update mineshafts for new rail and minecarts, add loot to generated chest and hopper minecarts (and remove notes about a hack)
2024-11-12 00:59:50 +01:00
teknomunk
a388b6ebff
Give carts a small vertical lift when pushed to allow them to get back on rails
2024-11-12 00:59:50 +01:00
teknomunk
0368cf958b
Stop rail from being placed directly above rail (floating in air)
2024-11-12 00:59:50 +01:00
teknomunk
938c05e68e
Fix sloped power,activator and detector rails, remove debug print
2024-11-12 00:59:50 +01:00
teknomunk
8bcf9388d4
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
2024-11-12 00:59:50 +01:00
teknomunk
4c6a10f613
Add documentation on the rail
2024-11-12 00:59:50 +01:00
teknomunk
d250678689
Add documentation on file structure and overviewes of each file
2024-11-12 00:59:50 +01:00
teknomunk
57525d2072
Fix crashes, fix link in documentation
2024-11-12 00:59:50 +01:00
teknomunk
9df1f9a588
More documentation, add myself to copyright list in README.txt
2024-11-12 00:59:50 +01:00
teknomunk
17705348c3
More minor changes to API.md, start overall implementation documentation
2024-11-12 00:59:50 +01:00
teknomunk
6160534ed5
Fix table of contents
2024-11-12 00:59:50 +01:00
teknomunk
3881cd60f5
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-11-12 00:59:50 +01:00
teknomunk
d22aa7285d
Nearly finish API documentation, create mcl_minecarts.add_blocks_to_map()
2024-11-12 00:59:50 +01:00
teknomunk
c8513d5acd
Continue writing API documentation, update call signatures for a couple of API functions
2024-11-12 00:59:50 +01:00
teknomunk
20bf40a6ec
Change document formatting, finally move cactus cart dropping to node definition for mcl_core:cactus
2024-11-12 00:59:50 +01:00
teknomunk
b17710db9c
Correct crashes/item duplication with dropping carts, start API documentation
2024-11-12 00:59:50 +01:00
teknomunk
1d9ba2211f
Fix cart controls, cart pushing
2024-11-12 00:59:50 +01:00
teknomunk
d41f2f03ce
Fix typo in rail replacement mapping, fix several crashes
2024-11-12 00:59:50 +01:00
teknomunk
14b50faf92
Implement movement thru tee rails
2024-11-12 00:59:50 +01:00
teknomunk
464771b79d
Tune respawn distance limit
2024-11-12 00:59:50 +01:00
teknomunk
1f80628298
Fix crashes
2024-11-12 00:59:50 +01:00
teknomunk
39ca793a43
Remove memory leak for cart data, check distance to players before respawning distant carts to prevent adding entities that are immediately inactivated
2024-11-12 00:59:50 +01:00
teknomunk
b084ec558d
Implement offline/out of range minecart movement and fix minecart respawning, remove railtype tracking
2024-11-12 00:59:50 +01:00
teknomunk
763c59a1a2
Remove do_movement dependency on the existence of a cart luaentity
2024-11-12 00:59:50 +01:00
teknomunk
188aca8c12
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-11-12 00:59:50 +01:00
teknomunk
a0d8e5ad7e
Make trains containing a player in a minecart function, minor cleanup in mcl_playerinfo
2024-11-12 00:59:50 +01:00
teknomunk
e3ca5a84c8
Fix crashes in train logic, allow breaking apart trains
2024-11-12 00:59:50 +01:00
teknomunk
d9bc707800
Implement train reversing
2024-11-12 00:59:50 +01:00
teknomunk
8d15b8e99f
Repair vectors in cart data, mostly fix train movement bugs (still possible to have a furnace minecart flip, without the train also flipping)
2024-11-12 00:59:50 +01:00
teknomunk
9490e4a910
Add cart entity respawn/destroy to match cart data (partially working)
2024-11-12 00:59:50 +01:00
teknomunk
b38d8c3fa9
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-11-12 00:59:50 +01:00
teknomunk
643e6f3de6
Fix rail detach crash, make tnt minecarts explode if they hit something hard (off rails)
2024-11-12 00:59:50 +01:00
teknomunk
dd54270294
Make sure carts get detatch if the rail under them is removed
2024-11-12 00:59:50 +01:00
teknomunk
9927f54ab4
Fixish reorganizing, initial train implementation
2024-11-12 00:59:50 +01:00
teknomunk
17a5b1eee3
Major reorganization, start setup for trains
2024-11-12 00:59:50 +01:00
teknomunk
cf7350418f
Make sure carts that collide move in the same direction the colliding cart was
2024-11-12 00:59:50 +01:00
teknomunk
0511de8876
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-11-12 00:59:50 +01:00
teknomunk
ce8b79fbe2
Harden against unknown nodes
2024-11-12 00:59:50 +01:00
teknomunk
41943522a5
Allow players to push minecarts that are not on track
2024-11-12 00:59:50 +01:00
teknomunk
38ee22c3bd
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-11-12 00:59:50 +01:00
teknomunk
efe190e23c
Fix rail movement regressions
2024-11-12 00:59:50 +01:00
teknomunk
9aacafe52c
Move cart code to its own file, more code cleanup, add aliases for old track items
2024-11-12 00:59:50 +01:00
teknomunk
8517885521
Cleanup code, restore uphill/downhill cart movement, completely remove old rail
2024-11-12 00:59:50 +01:00
teknomunk
826a827db2
Get rail reattachment (especially after jumps) working correctly
2024-11-12 00:59:50 +01:00
teknomunk
0aa45092cf
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-11-12 00:59:50 +01:00
teknomunk
9e16947080
Silence unmaskable print statements
2024-11-12 00:59:50 +01:00
teknomunk
90c8bf35b7
Add immortal item entity support, add legacy rail conversion that uses immortal item drops for corners/tees/crosses that are no longer possible
2024-11-12 00:59:50 +01:00
teknomunk
95d168d8bd
Fix more rail connection bugs
2024-11-12 00:59:50 +01:00
teknomunk
76f4135dde
Get sloped connections working correctly
2024-11-12 00:59:50 +01:00
teknomunk
b2fd8d5339
Re-enable rule for powering rail from underneath, have stairs block minecart movement, fix crash when lightning strikes a minecart
2024-11-12 00:59:50 +01:00
teknomunk
7164063644
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-11-12 00:59:50 +01:00
teknomunk
2724c25e90
Update all rail types to new version
2024-11-12 00:59:50 +01:00
teknomunk
ef5feffb98
Reorganize
2024-11-12 00:59:50 +01:00
teknomunk
0fc7383221
Finish reverting 08b41a3b39
2024-11-12 00:59:50 +01:00
teknomunk
5bf26706fa
Enable new track with get_next_dir handlers
2024-11-12 00:59:50 +01:00
teknomunk
b78c462306
Change connection rules again to allow building parallel track, tees and crosses), start implementing rail rules callbacks
2024-11-12 00:59:50 +01:00
teknomunk
de59535dae
Add sloped rail
2024-11-12 00:59:50 +01:00
teknomunk
7541ef8e03
Fix rail visuals, add switch operation
2024-11-12 00:59:50 +01:00
teknomunk
61bb7f06b5
Implement initial rail connection logic (no vertical track yet), experiment with texture modifiers and gravel underlay for display (not working)
2024-11-12 00:59:50 +01:00
teknomunk
5c3e2c8f90
Start implementing new rail nodes
2024-11-12 00:59:50 +01:00
teknomunk
d4b90a4bd5
Implement minecart with command block
2024-11-12 00:59:50 +01:00
teknomunk
9397e329e7
Create mesecons command API and modify commandblock to use it
2024-11-12 00:59:50 +01:00
teknomunk
d9db08d35b
Disable punch to move minecarts, implement punch to drop minecart, enable basic cart keyboard controls (accelerate and brake)
2024-11-12 00:59:50 +01:00
teknomunk
d78c4593ec
Remove cart oscillation when pushed
2024-11-12 00:59:50 +01:00
teknomunk
371ad8d737
Limit top speed of furnace minecarts to 4 blocks/second, limit total fuel time to 27 minutes
2024-11-12 00:59:50 +01:00
teknomunk
0cb19e5218
Fix bug with furnace minecart at max velocity (stopped until fuel ran out), move _fueltime into staticdata
2024-11-12 00:59:50 +01:00
teknomunk
c17874bc48
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-11-12 00:59:50 +01:00
teknomunk
1dd8f0efef
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-11-12 00:59:50 +01:00
teknomunk
6646c6e84f
Add API function to remove node watch
2024-11-12 00:59:50 +01:00
teknomunk
746780ab1f
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-11-12 00:59:50 +01:00
teknomunk
c3b6cf758c
Start adding hooks for implpementing minecart with command block
2024-11-12 00:59:50 +01:00
teknomunk
58cdc1b66a
Make minecarts solid and add players pushing
2024-11-12 00:59:50 +01:00
teknomunk
390419e67c
Fix forwards/backwars tilt in all directions
2024-11-12 00:59:50 +01:00
teknomunk
c42302cfd2
Prevent players from entering minecarts when sneaking, prevents players from causing MineClone2/MineClone2#3188
2024-11-12 00:59:50 +01:00
teknomunk
5b1ebbff97
Increase default track friction, disable right-click to exit minecarts
2024-11-12 00:59:50 +01:00
teknomunk
c198257ae7
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-11-12 00:59:50 +01:00
teknomunk
12ac5740d3
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-11-12 00:59:50 +01:00
teknomunk
cc84d5efa9
Mostly fix carts stopping between powered rails (there is still some strangeness with acceleration physics)
2024-11-12 00:59:50 +01:00
teknomunk
0b1252a60d
Fix diagonal movement
2024-11-12 00:59:50 +01:00
teknomunk
e04d82b80e
Add diagonal track movement on zig-zag track, rewrite mcl_minecarts:get_rail_direction
2024-11-12 00:59:50 +01:00
teknomunk
88f5796cad
Make TNT minecarts available in creative menu
2024-11-12 00:59:50 +01:00
teknomunk
e82e5f805f
Implement custom item dropper handlers, implement droppers placing minecarts
2024-11-12 00:59:50 +01:00
teknomunk
8ee950d31e
Hopper minecarts pull from containers above rail
2024-11-12 00:59:50 +01:00
teknomunk
356c2c6418
Rework in preparation to add code to pull from containers into the hopper minecart
2024-11-12 00:59:50 +01:00
teknomunk
ce9f92e017
Move fiction constant to top of file, suppress cart flips when direction reverses due to gravity or end of track
2024-11-12 00:59:50 +01:00
teknomunk
435141357d
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-12 00:59:50 +01:00
teknomunk
063c84d2ba
Remove dip into the ground that occured when gravity caused the cart to reverse directions
2024-11-12 00:59:50 +01:00
teknomunk
7a87a8282d
Implement gravity, move orientation update to own function, fix cart stopping in process_acceleration
2024-11-12 00:59:50 +01:00
teknomunk
2dcb790ace
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-12 00:59:50 +01:00
teknomunk
c9d6a417cd
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-12 00:59:50 +01:00
teknomunk
d57d83009d
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-12 00:59:50 +01:00
teknomunk
da4b8ba579
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-12 00:59:50 +01:00
teknomunk
5271375843
Fix initial_properties for minecarts
2024-11-12 00:59:50 +01:00
teknomunk
669d9d0556
Change left,right and back vectors to matrix math results with no branching
2024-11-12 00:59:50 +01:00
teknomunk
2bb1aa7241
Remove now unused properties from minecart definition, convert more vectors to use vector.new syntax
2024-11-12 00:59:50 +01:00
teknomunk
6de06945c1
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-12 00:59:50 +01:00
teknomunk
960309462f
Change staticdata serialization (with migration from old data), disable debugging code used to investigate MineClone2/MineClone2#2446
2024-11-12 00:59:50 +01:00
teknomunk
c008d2ea3a
Change to vector.new from {x=...}, relocate movement code to own function for future changes
2024-11-12 00:59:50 +01:00
marro
4dc5d0939c
Whitespace fix in translation ( #4701 )
...
Reviewed-on: VoxeLibre/VoxeLibre#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