- 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
- Call ContraptionRenderDispatcher#invalidate, at some point during a tick, and the structure will be reset.
- Move contraption compartment to SBBContraptionManager
- Contraption compartment uses custom pair with better hash function instead of apache commons pair
- Make PonderRegistry use a ThreadLocal current namespace
- Add synchronized blocks to some methods that modify maps or lists
- Move some non-thread safe method calls to the event.enqueueWork
lambdas
- Different subclasses for flywheel rendering and sbb rendering
- Select which to use on renderer reload, gather context, and when create buffers are invalidated
- Add backtank layer to all player models
- Only add backtank layer if entity renderer returns BipedModel
- Make copper armor considered to be worn only when in the correct armor
slot
- Introduced proper first-person rendering of Potato Cannons, inherited from blockzappers
- Introduced proper dual wield handling for Potato Cannons
- Potato cannons are no longer stackable
- Added a couple more attributes to ammo types
- potatoes and carrots now plant a crop when hitting farmland
- Added a couple particle effects
- Fwoomp sound now slightly randomizes its pitch
- Use Registrate's block and item color registration instead of running
the events manually
- Move utility color handler methods to foundation.utility
- Move all item rendering classes to foundation.item.render
- Move IBlockVertexColor from foundation.block to
foundation.block.render
- Remove unnecessary raw cast in CreateRegistrate
- Separate model-level instance management from object-level instance management
- Separate material management from rendering
- A few things here and there related to entity instancing
- Add a rudimentary command to spawn superglue
- Refactor AllContainerTypes to use Registrate
- Replace RegistryEntry in AllEntityTypes and AllFluids with EntityEntry and FluidEntry, respectively
- Make AllEntityTypes use Registrate to register entity renderers instead of a separate method
- Refactor AllColorHandlers
- Fix error when a POI block is moved by a contraption
- Rename some static final fields to be upper snake case
- Make static fields in Create and CreateClient final
- Add I prefix to Coordinate interface
- Fix typo (BracketedTileEntityBehaviour#isBacketPresent)
- Make mixins go in alphabetical order
- Make pack.mcmeta use 2 spaces for indents
- Program specs are now loaded from json instead of being defined in code and registered manually.
- Within the json spec, a program can define a list of states.
- A state consists of:
- A "when" clause.
- A list of strings to be #defined.
- A list of extensions to apply at program link time.
- Each frame, the first state whose "when" clause returns true will be used.
- A when clause consists of:
- A state provider defined by a resource location.
- A value to match.
- When the value returned by the provider matches the value defined in the when clause, the when clause is considered to be 'true'.
- There is syntactic sugar for when a provider returns a boolean value.
- This system is in its infancy, and there is plenty of room for improvement.
- Move CreateClient.kineticRenderer to Backend
- InstancedTileRenderers keep track of their own queuedUpdates
- Sort of a listener system for some render events
- added tags and chapters to the ponder registry
- slightly changed how scenes are registered
- added a back stack to the screen opener and some animations to go along with it
- added a interface for icons drawn into screens
- Auto-Organize inputs
- runData after lang PRs
- change runWhenOn to non-deprecated unsafeRunWhenOn, now that late forge version is required
- Address a few warnings
- rebrand
- support for particles
- support for fluids
- support for outliner
- coloured text labels
- debug scenes
- proper UI stuff
- proper layered rendering