# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
See the full changelog at https://github.com/iamkaf/amber
## 9.0.0
### Changed
- **Updated to Minecraft 1.21.11**
### Added
- Added consolidated API utility classes in `api.functions.v1` package:
- **PlayerFunctions** - Player operations, experience, abilities, inventory, messaging
- **ItemFunctions** - Item/inventory operations, armor management, crafting utilities
- **WorldFunctions** - World utilities, sounds, dimension checks, distance calculations
- **ClientFunctions** - Client-side utilities, HUD rendering, tooltips
- **MathFunctions** - Mathematical operations, probability, random generation
- Added `ItemEvents.MODIFY_DEFAULT_COMPONENTS` - Allows mods to modify default item properties and add custom data components with cross-platform support
- Added `PlayerEvents.SHIELD_BLOCK` - Fires when players block damage with shields, providing access to shield data for combat mechanics and shield systems
### Deprecated
- Deprecated legacy utility classes in favor of consolidated `api.functions.v1` package:
- `InventoryHelper`, `ItemHelper`, `ArmorTierHelper` → Use `ItemFunctions`
- `LevelHelper`, `SoundHelper`, `CommonUtils`, `BoundingBoxMerger` → Use `WorldFunctions`
- `FeedbackHelper` → Use `PlayerFunctions`
- `CommonClientUtils`, `SmartTooltip` → Use `ClientFunctions`
- `Chance` → Use `MathFunctions`
- Legacy utility classes will be removed in Amber 10.0
- Creative tabs moved to `registry.v1` package
### Removed
- Removed deprecated and unused classes:
- `JsonFileReader` - Unused configuration class that was deprecated in favor of `JsonConfigManager`
- `LiteralSetHolder` - Unused utility class that had no references in the codebase
- `AmberMod` (deprecated v1 version) - Unused legacy initialization class, replaced by `AmberInitializer`
- `BrewingHelper` - Never implemented brewing functionality that was planned but never developed
- Removed deprecated `SmartTooltip.into()` method in favor of the Consumer-based implementation
## Types of changes
- `Added` for new features.
- `Changed` for changes in existing functionality.
- `Deprecated` for soon-to-be removed features.
- `Removed` for now removed features.
- `Fixed` for any bug fixes.
- `Security` in case of vulnerabilities.
Developer information
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle.
maven { name = "Modrinth"; url = "https://api.modrinth.com/maven" }