- Fixed
TextFieldWidget
allowing one more character than the max length
- Fixed
TagGenerator
throwing an error for none block, item, or fluid tags
- Added support for custom tag entry types
- Added a namespace tag entry type
- Allow
ClientRegistrationHandler#registerAtlasSprite
to accept a different namespace
- Added
ConditionalRecipeSerializer#wrapRecipe
to serialize conditional recipes
- Fixed error when a
BaseBlockEntity
returns null client data
- Improved
LootTableGenerator.LootPoolBuilder
with additional helpers BaseBlockEntity#dataChanged
will now be true initially to avoid issues with Create contraptions
- Added
CommonUtils#getLogger
- Initialization of
TextureAtlases
will no longer load theSheets
class
RegistrationHandler
will now register entries in the same order as they are submitted in
- Fixed data generators only running when environment is set to client
- Fixed crash with Emendatus Enigmatica
- Fixed crash when
null
is passed intoBlockProperties#lootTableFrom
- Added
ResourceAggregator
to allow multiple data generators to write to the same file - All data generators will now generate before anything gets saved
- Entries in json files from data generators will now always generate in the same order
- Fixed
ClientUtils#getPartialTicks
returning the wrong value when the game is paused - Fixed
ItemProperties#toUnderlying
causing an exception when durability is set - Fixed loot table handling in
BlockProperties
- Fixed static
CreativeItemGroup#get
methods always returning the decorations tab
- Fix
RecipeGenerator
's smelting smelting recipes not working for multiple smelting types - Fix
ModelGenerator#itemHandheld
using wrong parent model
- Fix
ModelGenerator#cube
methods ignoring parameters
- Fix performance issues with model overwrites in ClientRegistrationHandler
- Fix
ConditionalRecipeSerializer
ignoring recipe conditions
- Fix crash on startup
- Fix crash on dedicated servers when certain containers get forcibly closed
- Fix
CommonUtils#getServer
always returningnull
- Use the given block's namespace for blockstate files in
BlockStateGenerator
- Fix translations inside of
WidgetScreen
andWidgetContainerScreen
- Fix crash when a recipe condition is registered as
RecipeConditionSerializerRegistry
gets initialized
- Fix crash on dedicated servers in certain scenarios
- Fix mixin conflict with certain mods
- All gui functionality has been extracted into
Widget
s - Added
RegistrationHandler
,ClientRegistrationHandler
, andGeneratorRegistrationHandler
for registering everything - Added
CreativeItemGroup
abstraction for dealing with creative tabs - Added abstractions for opening
BaseContainer
s withCommonUtils#openContainer
- Improved caching for
Object
dependent containers and guis - Added abstractions for registries in
Registries
- Added
ResourceGenerator
abstraction for data providers - Added
RenderConfiguration
for setting up OpenGL properties - Added
ResourceCondition
abstraction for use in recipes and advancements - Added
RegistryEntryAcceptor
annotation for getting entries from registries - Added interaction methods in
BaseBlock
,BaseItem
, andBaseBlockItem
- Added methods to
EnergyFormat
to format text - Added custom item and block entity renderers
- Added
BaseBlockEntityType
andBaseContainerType
- Added
TextureAtlases
to obtain locations of all default atlases - Improved information in packet errors
- Renamed all 'TileEntity' classes to 'BlockEntity'
- Backported mining tags for use with
BaseBlock