* Update FzzyPort methods with some new registries and other new helper methods
* Add `VariantRegistry` system, for easy creation of mobs with texture and bahavior variations.
* Fix modifiers duplicating on player death.
* Add `fzzy_core:advancement` Advancement Criterion, allowing advancements to be granted on other advancements being granted.
* Added new data-driven default modifiers system. Default modifiers for any modifiable item can now be defined via datapack. Automatically synced to clients.
- Added `BasicCustomTridentItem` and `BasicCustomTridentEntity` to unify custom trident code across fzzy mods.
- Add `FzzyPort`, a version wrapper for unifying many commonly changed aspects of MC code across versions
- Added `FzzyDamage` to unify `DamageSource` acquisition
- Added `FzzyRegistry` and `FzzyDefaultedRegistry`, wrappers on vanilla Registries to unify imports
- Added FzzyRotation to unify quaternion rotations
- Added XpDroppingBlock to unify OreBlock/ExperienceDroppingBlock
* Fixed issue with C2ME causing crashes due to particle emission on the network loop, not client thread.
* Added ManaHelper methods for finding ManaItems and healing them.
* Added nbt stack deserializer for recipe outputs.
* Added SlotId system for unifying any and all equipment slot methods (in the eyes of FzzyCore), allowing for correct application of attribute modifiers and other slot-specific things.
### Versions below 1.20 are no longer officially being updated. Version 1.20.2 is todo.
* Created a `JsonReader` helper object with some convenience methods for various Json parsing tasks.
* read a defined Entity Attrbiute object
* read Identifier
* read `Modifier`
* read Formatting
* Added `AttributeProviding` interface for creation of Enchantments that add Entity Attributes.
* Improved memory usage
* Re-Implemented Modifiers as a player-based affix, rather than ItemStack based. The raw NBT of modifiers is stored on stacks still, but all of the code management happens in a player container, similar to the `EntityAttributeContainer`.
* Improved Java interoperability. Interfaces in FC are now properly JVM Default'd, so implementing them in Java should go smoothly. Binary compatibility should be maintained..
* Added a `FlavorHelper` to supersede the poorly implemented `Flavorful` interface. Flavorful still operable, but deprecated.
* Improved Java interoperability. Interfaces in FC are now properly JVM Default'd, so implementing them in Java should go smoothly. Binary compatibility should be maintained..
* Added a `FlavorHelper` to supersede the poorly implemented `Flavorful` interface. Flavorful still operable, but deprecated.
* Improved Java interoperability. Interfaces in FC are now properly JVM Default'd, so implementing them in Java should go smoothly. Binary compatibility should be maintained..
* Added a `FlavorHelper` to supersede the poorly implemented `Flavorful` interface. Flavorful still operable, but deprecated.
* Improved Java interoperability. Interfaces in FC are now properly JVM Default'd, so implementing them in Java should go smoothly. Binary compatibility should be maintained..
* Added a `FlavorHelper` to supersede the poorly implemented `Flavorful` interface. Flavorful still operable, but deprecated.
* Port to 1.20/1.20.1
* Add helper method for checking an entire player for enchanted equipment
* Added helper class for building block settings cross-version more easily.
* Added optional recipe data system: Put recipes in `optional_recipes` instead of just `recipes` that you nly want loaded if the recipe type is loaded (if the mod that adds the recipe type exists etc). This allows users to add mod-dependent recipes without spamming the log with errors or having to do weird in-code recipe adding.
* Port to 1.19.4
* Add helper method for checking an entire player for enchanted equipment
* Added helper class for building block settings cross-version more easily.
* Added optional recipe data system: Put recipes in `optional_recipes` instead of just `recipes` that you nly want loaded if the recipe type is loaded (if the mod that adds the recipe type exists etc). This allows users to add mod-dependent recipes without spamming the log with errors or having to do weird in-code recipe adding.
* Add helper method for checking an entire player for enchanted equipment
* Added helper class for building block settings cross-version more easily.
* Added optional recipe data system: Put recipes in `optional_recipes` instead of just `recipes` that you nly want loaded if the recipe type is loaded (if the mod that adds the recipe type exists etc). This allows users to add mod-dependent recipes without spamming the log with errors or having to do weird in-code recipe adding.
* Add helper method for checking an entire player for enchanted equipment
* Added helper class for building block settings cross-version more easily.
* Added optional recipe data system: Put recipes in `optional_recipes` instead of just `recipes` that you nly want loaded if the recipe type is loaded (if the mod that adds the recipe type exists etc). This allows users to add mod-dependent recipes without spamming the log with errors or having to do weird in-code recipe adding.
* Fixed crash caused by me accidentally breaking API on myself... `addModifier` implementations that call the old method without the optional parameters are now fixed
* Fixed crash caused by me accidentally breaking API on myself... `addModifier` implementations that call the old method without the optional parameters are now fixed
* Implemented a (currently unused by me for the moment) system for storing modifiers directly on Living Entities. This hasn't been tested yet.
* Improved thread safety of `PersistentEffectHelper`
* Added a `flush` to `PersistentEffectHelper` that processes all the outstanding persistent effects before game close.
* Implemented temporary modifiers. This utilizes the PersistentEffectHelper, hence the flush addition. This is also not used by me yet.
* Heavily cleaned up the `AbstractModifierHelper`; added some new helper methods like `removeAll`
* Added zh_cn lang support.
* Implemented a (currently unused by me for the moment) system for storing modifiers directly on Living Entities. This hasn't been tested yet.
* Improved thread safety of `PersistentEffectHelper`
* Added a `flush` to `PersistentEffectHelper` that processes all the outstanding persistent effects before game close.
* Implemented temporary modifiers. This utilizes the PersistentEffectHelper, hence the flush addition. This is also not used by me yet.
* Heavily cleaned up the `AbstractModifierHelper`; added some new helper methods like `removeAll`
* Added zh_cn lang support.
Added some synchronization and try statements to hopefully handle a rare client crash that is very difficult to replicate, but seems to be thread-related with `gatherActiveModifiers`
Added some synchronization and try statements to hopefully handle a rare client crash that is very difficult to replicate, but seems to be thread-related with `gatherActiveModifiers`
* Overhauled ModifierHelpers. They are now registered by a ModifierHelperType, enabling items to utilize multiple types of modifiers simultaneously.
* Offhand scepters now display their particles in the offhand properly
* CustomFlavorItems now automagically build their flavor in most cases, ignoring flavor or descriptions that don't exist.
* ManaItems now properly ignore sending a message and making a noise when passed a blank text.
* Overhauled ModifierHelpers. They are now registered by a ModifierHelperType, enabling items to utilize multiple types of modifiers simultaneously.
* Offhand scepters now display their particles in the offhand properly
* CustomFlavorItems now automagically build their flavor in most cases, ignoring flavor or descriptions that don't exist.
* ManaItems now properly ignore sending a message and making a noise when passed a blank text.
* Fixed issue where modifiers were not being properly initialized to stacks that should have prior modifiers
* Added new NBT utility for properly creating a stack with NBT before modifier initialization (needed for resolving point above)
* Fixed issue where modifiers were not being properly initialized to stacks that should have prior modifiers
* Added new NBT utility for properly creating a stack with NBT before modifier initialization (needed for resolving point above)
* Fixed issue where modifiers were not being properly initialized to stacks that should have prior modifiers
* Added new NBT utility for properly creating a stack with NBT before modifier initialization (needed for resolving point above)
This is part of the refactor of Amethyst Core, Fzzy Core takes over many of the basic functions previously added into AC. Going forward, any mod that used AC will have to refactor to use Fzzy Core, and AC separately if there are relevant parts still needed from that updated API (now focused solely on Magic Mods)
This is part of the refactor of Amethyst Core, Fzzy Core takes over many of the basic functions previously added into AC. Going forward, any mod that used AC will have to refactor to use Fzzy Core, and AC separately if there are relevant parts still needed from that updated API (now focused solely on Magic Mods)
This is part of the refactor of Amethyst Core, Fzzy Core takes over many of the basic functions previously added into AC. Going forward, any mod that used AC will have to refactor to use Fzzy Core, and AC separately if there are relevant parts still needed from that updated API (now focused solely on Magic Mods)