- Make new config fields final
- Do not add item cooldown if cooldown is less than or equal to 0
- Tweak rotation math for depots and billboard potato projectiles
- Refactor custom rendered items; The renderer now creates the model
instead of the other way around
- Only tick wrench cog rotation and linked controller renderer if client
is not paused
- Move all model swapping code from CreateClient to ModelSwapper
- Register client resource reload listener before initial resource
reload
- Use TextureStitchEvent.Post event instead of resource reload listener
for filling sprites of SpriteShiftEntries
- Reuse Random instance in PartialItemModelRenderer
- Make all config fields final
- Merge package foundation.renderState into foundation.render
- Move BreakProgressHook from package foundation to foundation.block
- Rename ResourceReloadHandler to ClientResourceReloadListener
- Rename ProperDirectionalBlock to WrenchableDirectionalBlock
- Connected Mechanical Crafters now strictly distribute added items from top to bottom, left to right
- Fixed smart pipe ponder scene no longer showing milk in the basin
- Added timed invalidation to refresh fluid handler references observed by pipe ends
- Stockpile Switches can now be used with Fluid Tanks
- Content Observers can now be used with Fluid Containers and Fluid Pipes
- Fixed Pumps not updating pressure when reversed
- Remove NbtPacket and add safe packets for configuring symmetry wand
and worldshaper separately
- Expand internal functionality of AllTags and use optional tags in most
cases
- Datagen tags forge:stone, forge:wg_stone, and forge:buckets/honey
- Fix attribute filter screen being shifted by one pixel
- Add translations for "fluid_container" and "renamed" item attributes
- Remove Create namespace restriction in CTSpriteShifter
- Add method to register ponder chapter lang
- Clean up palette block code; Closes#386
- Clean up tag code
- Use Create.asResource in as many places as possible
- Organize imports
- Allow defining custom potato cannon projectile types through JSON in
datapacks
- Separate PotatoCannonProjectileTypes into PotatoCannonProjectileType,
PotatoProjectileTypeManager, and BuiltinPotatoProjectileTypes
- Allow setting a custom render mode when building a projectile type
- Prevent the potato cannon itself from being used as ammo
- Toolboxes keep nbt on pickup
- Toolbox radial menu supports mouse wheel
- Added Dispose-all buttons
- Synced slots detach when moving stacks back into the toolbox
- Fixed missing data on client on login
- Fixed idle blaze burners sending packets every tick
- Fixed placement indicator rendering behind the crosshair
- Added an Event allowing additional tileentitybehaviour objects to be attached to STEs from outside
- added an event to add custom deploying recipes for addons(that partly need more data and therefore can't use the existing deploying recipe json format)
- made deploying recipe scanning cancelable by event
- added a safety check to tile entity behaviours to prevent concurrent modification exceptions when loading old worlds (0.2 time, dev 0.3)
- Renamed SpawnerMovementSetting to ContraptionMovementSetting and moved it to its own class
- Added a contraption movement setting registry
- Made checks previously checking only spawner movement setting and the block being a spawner to check using ContraptionMovementSetting.get(block)
- Remove utility methods from PonderRegistry and only leave the one
essential method
- Move utility registration methods to PonderRegistrationHelper
- Move entry builder methods to entry class, PonderStoryBoardEntry
- Move listed tags list to tag registry
- Make ponder chapters namespaced
- Add localization and language datagen support for ponder chapters
- Fixed Chutes pulling from inventories causing major framerate drops
- Fixed Chutes sending update packets when idling
- Added a max range for filter slot rendering of blocks
- Synced TEs are no longer able to cause side-effects by calling sendData on the Render Thread