* feat: Improve straight rail placement logic
Refactors the `compute_placed_rail_shape` function in common.rs to use a more sophisticated logic for determining the shape of placed straight rails. The new logic checks for connections in all four cardinal directions (East, South, West, North) and prioritizes forming straight lines or ascending/descending shapes based on neighboring rails' elevations. If no connections are found, the rail's shape defaults to the player's facing direction. This change aligns the straight rail placement behavior more closely with that of normal rails.
* fix clippy + cargo fmt
---------
Co-authored-by: Alexander Medvedev <lilalexmed@proton.me>
* feat: place flowers, saplings, ... inside the pot
* feat: remove flowers, saplings, ... inside the pot and check when placing block next to the pot
* feat: add changement for eye blossom flower state (open and closed)
* fix: adapt to the BlockState commit (8ebc9ee)
* fix: delete unused import
* fix: refactor
* cargo clippy + fmt
* feat: use extractor to place the flower inside the pot
* All done
* fix: replace blocking_lock() by lock().await
---------
Co-authored-by: Alexander Medvedev <lilalexmed@proton.me>
* Add Fire
* fixes
* fix dropping blocks
* fix logic
* Fix CI
* add support for waterlogged
* fmt
* fix comment
* remove particles and sound from fire breaking
* fmt
* Issue #879: Implemented leaf-litter segmented placement logic
* addressed clippy lints: changed match to if/let for matching
* abstracted segmented logic to implement both leaf litter & flowerbedblock
* implemented state updates so segmented plants break when block broken
* Tick Command Implementation
* Send the current ticking state to the new player so they are in sync.
* extend `/tick query` command with performance tracking
* feat: enhance tick sprint reporting and message formatting
* Add suggestion hints for tick command arguments
* fix: update tick command permission level
* fix: resolve clippy pedantic warnings and refactor tick command
- Refactor oversized execute function in tick command into smaller helper methods:
- handle_query() for query command logic
- handle_non_sprinting_status() for status display
- send_percentiles() for percentile calculations
- handle_step_command() and handle_sprint_command() for respective operations
- Fix format string warnings by using inline format arguments ({tickrate:.1})
- Replace lossless casts (ticks as i64) with From::from() for type safety
- Use Self instead of explicit type name in tick_worlds method signature
- Add Default trait implementation for Ticker struct
- Ensure all match arms return proper Result types
Resolves all clippy::pedantic warnings including too_many_lines, uninlined_format_args, cast_lossless, and use_self violations.
* fix: replace hardcoded tick rate with configurable value from BASIC_CONFIG
* revert back the old comment