diff options
| author | mat <git@matdoes.dev> | 2025-09-25 16:52:45 -1030 |
|---|---|---|
| committer | mat <git@matdoes.dev> | 2025-09-25 16:52:45 -1030 |
| commit | 32a62392cebf268fc6b156bc4c9a24db5da3efed (patch) | |
| tree | 0f1fe6868a82547064b6756236146c3792b05185 /CHANGELOG.md | |
| parent | 730297cf561d42fd9132eb201d1aec0d3d7c7e00 (diff) | |
| download | azalea-drasl-32a62392cebf268fc6b156bc4c9a24db5da3efed.tar.xz | |
ClientsideCloseContainerEvent, MenuOpenedEvent, and CloseContainerEvent are now triggers instead of events
Diffstat (limited to 'CHANGELOG.md')
| -rw-r--r-- | CHANGELOG.md | 175 |
1 files changed, 88 insertions, 87 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md index c439b15b..88b6b056 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,107 +10,108 @@ is breaking anyways, semantic versioning is not followed. ### Added -- Sneaking/crouching. -- `HitResult` now contains the entity that's being looked at. -- A `QueuedServerBlockUpdates` component that keeps track of block updates per `Update`. -- Local clients now have a `TicksConnected` component. (@Kumpelinus) -- There is now a `azalea_inventory::default_components::get_default_component` function to get the default value of a component for a registry item. -- `ItemStack` now has a `get_component` function that supports default components. -- `Client::nearest_entity_by`. -- `BitSet::len`, `BitSet::get`, `BitSet::iter_ones`. -- All packets are now `PartialEq`. +- Sneaking/crouching. +- `HitResult` now contains the entity that's being looked at. +- A `QueuedServerBlockUpdates` component that keeps track of block updates per `Update`. +- Local clients now have a `TicksConnected` component. (@Kumpelinus) +- There is now a `azalea_inventory::default_components::get_default_component` function to get the default value of a component for a registry item. +- `ItemStack` now has a `get_component` function that supports default components. +- `Client::nearest_entity_by`. +- `BitSet::len`, `BitSet::get`, `BitSet::iter_ones`. +- All packets are now `PartialEq`. ### Changed -- Update to Minecraft 1.21.8. -- Renamed `azalea_entity::EntityKind` to `EntityKindComponent` to disambiguate with `azalea_registry::EntityKind`. -- Moved functions and types related to hit results from `azalea::interact` to `azalea::interact::pick`. -- `Client::attack` now takes `Entity` instead of `MinecraftEntityId`. -- `ItemStackData::components` was renamed to `component_patch`. -- The fields in `LookDirection` have been replaced with getters. -- Renamed `Client::entity_by` to `any_entity_by`, and `Client::entities_by` to `nearest_entities_by`. -- `EyeHeight` was moved into `EntityDimensions`, and `EntityDimensions` is now its own component. -- Replaced `start_goto_without_mining` with `start_goto_with_opts`. -- Rename `send_chat_packet` / `send_command_packet` to `write_chat_packet` / `write_command_packet` (for consistency with `write_packet`). -- Split `ClientInformation` handling out of `BrandPlugin` to `ClientInformationPlugin`. -- `ClientBuilder::start` and `SwarmBuilder::start` now return a `Result<AppExit>` instead of `Result<!>`. +- Update to Minecraft 1.21.8. +- Renamed `azalea_entity::EntityKind` to `EntityKindComponent` to disambiguate with `azalea_registry::EntityKind`. +- Moved functions and types related to hit results from `azalea::interact` to `azalea::interact::pick`. +- `Client::attack` now takes `Entity` instead of `MinecraftEntityId`. +- `ItemStackData::components` was renamed to `component_patch`. +- The fields in `LookDirection` have been replaced with getters. +- Renamed `Client::entity_by` to `any_entity_by`, and `Client::entities_by` to `nearest_entities_by`. +- `EyeHeight` was moved into `EntityDimensions`, and `EntityDimensions` is now its own component. +- Replaced `start_goto_without_mining` with `start_goto_with_opts`. +- Rename `send_chat_packet` / `send_command_packet` to `write_chat_packet` / `write_command_packet` (for consistency with `write_packet`). +- Split `ClientInformation` handling out of `BrandPlugin` to `ClientInformationPlugin`. +- `ClientBuilder::start` and `SwarmBuilder::start` now return a `Result<AppExit>` instead of `Result<!>`. +- `ClientsideCloseContainerEvent`, `MenuOpenedEvent`, and `CloseContainerEvent` are now triggers instead of events. ### Fixed -- Fix packet order for loading (`PlayerLoaded`/`MovePlayerPos`) and sprinting (`PlayerInput`/`PlayerCommand`). -- Clients no longer send invalid look directions if the server teleports us with one. -- Look directions are now rounded based on the default Minecraft sensitivity, which may help avoid flagging anticheats. -- Movement code was updated with the changes from 1.21.5, so it no longer flags Grim. -- Clients can no longer sprint if their food level is too low. -- `azalea-chat` now handles arrays of integers in the `with` field. (@qwqawawow) -- `azalea-chat` no longer incorrectly persists styles of components in the "extra" field. -- Inventories now use the correct max stack sizes. -- Clients now send the correct data component checksums when interacting with items. -- Fix parsing some metadata fields of Display entities. -- Mining blocks in creative mode now works. (@qwqawawow) -- Improved matchers on the `ChatPacket` functions to work on more servers. (@ShayBox) -- Bevy's `AppExit` Event is now handled by Azalea's ECS runner. +- Fix packet order for loading (`PlayerLoaded`/`MovePlayerPos`) and sprinting (`PlayerInput`/`PlayerCommand`). +- Clients no longer send invalid look directions if the server teleports us with one. +- Look directions are now rounded based on the default Minecraft sensitivity, which may help avoid flagging anticheats. +- Movement code was updated with the changes from 1.21.5, so it no longer flags Grim. +- Clients can no longer sprint if their food level is too low. +- `azalea-chat` now handles arrays of integers in the `with` field. (@qwqawawow) +- `azalea-chat` no longer incorrectly persists styles of components in the "extra" field. +- Inventories now use the correct max stack sizes. +- Clients now send the correct data component checksums when interacting with items. +- Fix parsing some metadata fields of Display entities. +- Mining blocks in creative mode now works. (@qwqawawow) +- Improved matchers on the `ChatPacket` functions to work on more servers. (@ShayBox) +- Bevy's `AppExit` Event is now handled by Azalea's ECS runner. ## [0.13.0+mc1.21.5] - 2025-06-15 ### Added -- This changelog. To see changes before this update, look at the git commits. -- azalea and azalea-client now have a `packet-event` feature, which can be disabled for efficiency if you're not using `Event::Packet`. -- `StartJoinServerEvent` can now be used to join servers exclusively from the ECS without a Tokio runtime. -- Add `FormattedText::to_html` and `FormattedText::to_custom_format`. (@Kumpelinus) -- Non-standard legacy hex colors like `§#ff0000` are now supported in azalea-chat. -- Chat signing. -- Add auto-reconnecting which is enabled by default. -- `ClientBuilder` and `SwarmBuilder` are now Send. -- Add `Client::start_use_item`. -- The pathfinder no longer avoids slabs, stairs, and dirt path blocks. -- The pathfinder now immediately recalculates if blocks are placed in its path. -- Bots that use custom pathfinder moves can now keep arbitrary persistent state by using the `CustomPathfinderState` component and `PathfinderCtx::custom_state`. -- The reach distance for the pathfinder `ReachBlockPosGoal` is now configurable. (@x-osc) -- There is now a `retry_on_no_path` option in `GotoEvent` that can be set to false to make the pathfinder give up if no path could be found. -- azalea-brigadier now supports suggestions, command contexts, result consumers, and returning errors with `ArgumentBuilder::executes_result`. -- Proper support for getting biomes at coordinates. -- Add a new `Client::entities_by` which sorts entities that match a criteria by their distance to the client. -- New client event `Event::ReceiveChunk`. -- Several new functions for interacting with inventories (`Client::get_inventory`, `get_held_item`, `ContainerHandleRef::left_click`, `shift_click`, `right_click`, `slots`). -- Add `Client::mine_with_auto_tool`. -- Add `Client::set_selected_hotbar_slot` and `Client::selected_hotbar_slot`. -- Add `Client::attack_cooldown_remaining_ticks` to complement `has_attack_cooldown`. -- Add `BlockPos::length`, `distance_to`, and `center_bottom`. +- This changelog. To see changes before this update, look at the git commits. +- azalea and azalea-client now have a `packet-event` feature, which can be disabled for efficiency if you're not using `Event::Packet`. +- `StartJoinServerEvent` can now be used to join servers exclusively from the ECS without a Tokio runtime. +- Add `FormattedText::to_html` and `FormattedText::to_custom_format`. (@Kumpelinus) +- Non-standard legacy hex colors like `§#ff0000` are now supported in azalea-chat. +- Chat signing. +- Add auto-reconnecting which is enabled by default. +- `ClientBuilder` and `SwarmBuilder` are now Send. +- Add `Client::start_use_item`. +- The pathfinder no longer avoids slabs, stairs, and dirt path blocks. +- The pathfinder now immediately recalculates if blocks are placed in its path. +- Bots that use custom pathfinder moves can now keep arbitrary persistent state by using the `CustomPathfinderState` component and `PathfinderCtx::custom_state`. +- The reach distance for the pathfinder `ReachBlockPosGoal` is now configurable. (@x-osc) +- There is now a `retry_on_no_path` option in `GotoEvent` that can be set to false to make the pathfinder give up if no path could be found. +- azalea-brigadier now supports suggestions, command contexts, result consumers, and returning errors with `ArgumentBuilder::executes_result`. +- Proper support for getting biomes at coordinates. +- Add a new `Client::entities_by` which sorts entities that match a criteria by their distance to the client. +- New client event `Event::ReceiveChunk`. +- Several new functions for interacting with inventories (`Client::get_inventory`, `get_held_item`, `ContainerHandleRef::left_click`, `shift_click`, `right_click`, `slots`). +- Add `Client::mine_with_auto_tool`. +- Add `Client::set_selected_hotbar_slot` and `Client::selected_hotbar_slot`. +- Add `Client::attack_cooldown_remaining_ticks` to complement `has_attack_cooldown`. +- Add `BlockPos::length`, `distance_to`, and `center_bottom`. ### Changed -- `Client::goto` is now async and completes when the client reaches its destination. `Client::start_goto` should be used if the old behavior is desired. -- The `BlockState::id` field is now private, use `.id()` instead. -- Update to [Bevy 0.16](https://bevyengine.org/news/bevy-0-16/). -- Rename `InstanceContainer::insert` to `get_or_insert`. -- Replace `BlockInteractEvent` with the more general-purpose `StartUseItemEvent`. -- Replace `wait_one_tick` and `wait_one_update` with `wait_ticks` and `wait_updates`. -- Functions that took `&Vec3` or `&BlockPos` as arguments now only take them as owned types. -- Rename `azalea_block::Block` to `BlockTrait` to disambiguate with `azalea_registry::Block`. -- `GotoEvent` is now non-enhaustive and should instead be constructed by calling its methods. +- `Client::goto` is now async and completes when the client reaches its destination. `Client::start_goto` should be used if the old behavior is desired. +- The `BlockState::id` field is now private, use `.id()` instead. +- Update to [Bevy 0.16](https://bevyengine.org/news/bevy-0-16/). +- Rename `InstanceContainer::insert` to `get_or_insert`. +- Replace `BlockInteractEvent` with the more general-purpose `StartUseItemEvent`. +- Replace `wait_one_tick` and `wait_one_update` with `wait_ticks` and `wait_updates`. +- Functions that took `&Vec3` or `&BlockPos` as arguments now only take them as owned types. +- Rename `azalea_block::Block` to `BlockTrait` to disambiguate with `azalea_registry::Block`. +- `GotoEvent` is now non-enhaustive and should instead be constructed by calling its methods. ### Fixed -- Clients now validate incoming packets using the correct `MAXIMUM_UNCOMPRESSED_LENGTH` value. -- Several protocol fixes, including for `ClientboundSetPlayerTeam` and a few data components. -- No more chunk errors when the client joins another world with the same name but different height. -- Update the `InstanceName` component correctly when we receive a respawn or second login packet. -- azalea-chat now handles legacy color codes correctly when parsing from NBT. -- Send the correct UUID to servers in `ClientboundHello` when we're joining in offline-mode. -- Block shapes and some properties were using data from `1.20.3-pre4` due to using an old data generator (Pixlyzer), which has now been replaced with the data generator from [Pumpkin](https://github.com/Pumpkin-MC/Extractor). -- When patching the path, don't replace the move we're currently executing. -- The correct sequence number is now sent when interacting with blocks. -- Mining is now generally more reliable and doesn't flag Grim. -- Ghost blocks are now handled correctly due to implementing `ClientboundBlockChangedAck`. -- Player eye height was wrong due to being calculated from height instead of being a special case (was 1.53, should've been 1.62). -- The player inventory is now correctly updated when we close a container. -- Inventory interactions are now predicted on the client-side again, and the remaining click operations were implemented. -- `Client::open_container_at` now waits up to 10 ticks for the block to exist if you try to click air. -- Wrong physics collision code resulted in `HitResult` sometimes containing the wrong coordinates and `inside` value. -- Fix the client being unresponsive for a few seconds after joining due to not sending `ServerboundPlayerLoaded`. -- Fix panic when a client received `ClientboundAddEntity` and `ClientboundStartConfiguration` at the same time. -- Fix panic due to `ClientInformation` being inserted too late. -- `ClientboundTeleportEntity` did not handle relative teleports correctly. -- Pathfinder now gets stuck in water less by automatically trying to jump if it's in water. +- Clients now validate incoming packets using the correct `MAXIMUM_UNCOMPRESSED_LENGTH` value. +- Several protocol fixes, including for `ClientboundSetPlayerTeam` and a few data components. +- No more chunk errors when the client joins another world with the same name but different height. +- Update the `InstanceName` component correctly when we receive a respawn or second login packet. +- azalea-chat now handles legacy color codes correctly when parsing from NBT. +- Send the correct UUID to servers in `ClientboundHello` when we're joining in offline-mode. +- Block shapes and some properties were using data from `1.20.3-pre4` due to using an old data generator (Pixlyzer), which has now been replaced with the data generator from [Pumpkin](https://github.com/Pumpkin-MC/Extractor). +- When patching the path, don't replace the move we're currently executing. +- The correct sequence number is now sent when interacting with blocks. +- Mining is now generally more reliable and doesn't flag Grim. +- Ghost blocks are now handled correctly due to implementing `ClientboundBlockChangedAck`. +- Player eye height was wrong due to being calculated from height instead of being a special case (was 1.53, should've been 1.62). +- The player inventory is now correctly updated when we close a container. +- Inventory interactions are now predicted on the client-side again, and the remaining click operations were implemented. +- `Client::open_container_at` now waits up to 10 ticks for the block to exist if you try to click air. +- Wrong physics collision code resulted in `HitResult` sometimes containing the wrong coordinates and `inside` value. +- Fix the client being unresponsive for a few seconds after joining due to not sending `ServerboundPlayerLoaded`. +- Fix panic when a client received `ClientboundAddEntity` and `ClientboundStartConfiguration` at the same time. +- Fix panic due to `ClientInformation` being inserted too late. +- `ClientboundTeleportEntity` did not handle relative teleports correctly. +- Pathfinder now gets stuck in water less by automatically trying to jump if it's in water. |
