The following classes have been made final and unconstructible:
- All convention tags classes
- `FluidVariantAttributes`
- `FluidVariantRendering`
The following classes have been made unconstructible:
- `BiomeModifications`
- `ClientEntityEvents`
- `ClientTickEvents`
- `LootTableEvents`
- `FabricDefaultAttributeRegistry`
- `MinecartComparatorLogicRegistry`
- `StorageUtil`
The following classes have been explicitly marked as final. Note that actually extending such class has always been impossible due to missing public constructor:
- `VillagerInteractionRegistries`
- `VillagerPlantableRegistry`
- `ModelHelper`
- `StoragePreconditions`
While the first two are technically breaking changes, there is no actual or observed usage for any of those.
* Add TagUtil
* Allow for the registry manager to passed in allowing for dynamic tags to be used
* Update JD
* Remove redundant fallback
* Make TagUtil final
Co-authored-by: haykam821 <24855774+haykam821@users.noreply.github.com>
* Make TagUtil uninititializable
* Add test mod
* Fix spotless for test mod
* JD indent
Co-authored-by: Technici4n <13494793+Technici4n@users.noreply.github.com>
* Apply suggestions
* Fix checkstyle
* Apply feedback
Co-authored-by: haykam821 <24855774+haykam821@users.noreply.github.com>
Co-authored-by: Technici4n <13494793+Technici4n@users.noreply.github.com>
* Add development guidelines (CONTRIBUTING.md)
* Fix typos
Co-authored-by: apple502j <33279053+apple502j@users.noreply.github.com>
* Address remaining TODOs, a few formatting changes
* Apply feedback
- Add links to sections in summary
- Add note about thread-safe caching
- Functionalities added by vanilla MC don't need to be ported to new module versions
- Do not use deprecated to generate compiler/IDE warnings
- TAW updates
- Interface injection indents
- A few more fixes
Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>
Co-authored-by: liach <7806504+liach@users.noreply.github.com>
* Apply suggestions from code review
Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>
* Apply suggestions from Juuz
* Remove mention of self types
Co-authored-by: apple502j <33279053+apple502j@users.noreply.github.com>
Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>
Co-authored-by: liach <7806504+liach@users.noreply.github.com>
This resolves an issue where the chat signing chains for players would be broken when the server cancels a signed player message. This could lead to clients disconnecting after receiving any following message due to the broken chain.
* Make disconnected screen reason text scrollable
* Remove redundant mixin.
* wrong unique
* fix max scroll having additional line-sized gap
* turns out it's the testmod fault for having an extra new line
Co-authored-by: modmuss50 <modmuss50@gmail.com>
* Fix AO calculation
- Ensure calcFastVanilla and computeFace have parity with vanilla
- Ensure BlockStates are not queried more than once for the same position
- Replace deprecated FabricLoader#getConfigDirectory call with FabricLoader#getConfigDir
* Revert opaque sides fix
* More AO fixes and optimizations
* Sculk Sensor Frequency Registry
- Mixin'd to `SculkSensorBlock` to make its `FREQUENCIES` map modifiable.
- Created `SculkSensorFrequencyRegistry` with a dedicated method for registering these frequencies, with all necessary checks to avoid issues, and javadoc to assist in understanding.
- Added tests to the test mod, as well as a block that emits a test event, to ensure it all works.
Unfortunately, the mixin currently uses a Redirect. If this is undesired, feel free to suggest other ways of achieving the end result of being able to modify the frequencies map.
* Update SculkSensorFrequencyRegistry.java
* cleaner javadoc
* Update fabric-content-registries-v0/src/main/resources/fabric-content-registries-v0.mixins.json
Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>
* Final touches
...get it?
(oh and removed that Dynamic because tech didn't like it)
* Whoops
Forgot to remove the Dynamic import
Also restored the actual contents of the dynamic, as javadoc.
Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>
The bitwise comparison is doing the opposite of what we want. It's currently checking for the *absence* of the BAKE_NORMALIZED flag. And if the flag is absent, it is normalizing. This should do the opposite.
- Added transitive-accessible wideners for `BlockStateModelGenerator$TintType`, `BlockStateModelGenerator$BlockTexturePool`, `BlockStateModelGenerator$LogTexturePool`, and `BlockStateModelGenerator$BuiltinModelPool` classes
- Added transitive-accessible widener for `TexturedModel#makeFactory` method
- Moved transitive-accessible wideners for `ItemModelGenerator` methods to the generate run, so it covers the 2 new methods and any future ones
- Fixed `generateAccessWideners` task so it can now find the jar
- Tweaked the whitespace in the accesswidener file a bit