* WIP built-in resource packs API.
* Add built-in resource pack register API and fix old injection methods.
* Fix code style.
* Fix code style.
* Add documentation.
* Drop useless else.
* Fix resource packs and data packs isolation issues, and more.
* Move ResourcePackManagerAccessor to its own accessor mixin.
* Make the built-in mod pack test mod work on server too because data pack part.
* Add new argument to built-in pack method and make mod data packs always active.
* Add documentation.
* Complete documentation in GameOptions mixin.
* Remove register built-in pack overload as Player requested.
* Add item renderer with model transformation mode, deprecate old one.
This PR simply adds a new interface which supplies the additional `Mode` parameter.
All old renderers are delegated to an implementation of the new renderer, thereby making this PR still backwards compatable with all existing renderers.
(cherry picked from commit 7c9162e99f48c6e3989eec9a46afaa935d65ce30)
* Update fabric-rendering-v1/src/main/java/net/fabricmc/fabric/api/client/rendering/v1/BuiltinItemRendererWithMode.java
Co-authored-by: shartte <shartte@users.noreply.github.com>
* Rename new interfact to `DynamicItemRenderer`, make it an inner class of the registry class.
* Update fabric-rendering-v1/src/main/java/net/fabricmc/fabric/impl/client/rendering/BuiltinItemRendererRegistryImpl.java
Co-authored-by: liach <7806504+liach@users.noreply.github.com>
* Update BuiltinItemRendererRegistryImpl.java
* Update BuiltinItemRendererRegistryImpl.java
* Imports
* Use ItemConvertible for new render method
* Rename new interfact to `DynamicItemRenderer`, make it an inner class of the registry class.
fabric-rendering-v1/src/main/java/net/fabricmc/fabric/api/client/rendering/v1/BuiltinItemRendererRegistry.java
* Move inner class out, fix formatting issue in loot-tables with linux oses
* why was this multilined
* license header lol
* Apply suggestions from code review
Co-authored-by: liach <7806504+liach@users.noreply.github.com>
* Make renderer a nested class again
* putIfAbsent
Co-authored-by: shartte <shartte@users.noreply.github.com>
Co-authored-by: liach <7806504+liach@users.noreply.github.com>
* Better consistency with vanilla mobs
* Added a new method for just tracking distance
* Renamed param names
* Update FabricEntityTypeBuilder.java
* Updated v0 for backwards compatibility
* Updated descriptions and parameter names of FabricEntityTypeBuilder
* Added compat with new builders
* Style fix
* Fix style again
* Added backwards compat
* Add FabricItemSettings and an API for custom item equipment slots
Closes#952.
* Bump module version
* Rename duck method to have fabric_ prefix and add Unique to mixin field
* Switch to FabricItemInternals + ExtraData like in FabricBlockSettings
* Add ability to define default attributes within the entity type builder.
* Update fabric-object-builder-api-v1/src/main/java/net/fabricmc/fabric/api/object/builder/v1/entity/FabricDefaultAttributeRegistry.java
Co-authored-by: Pyrofab <redstoneinfire@gmail.com>
* Add ability to specify spawn restriction. Add a Living and Mob builder to handle attributes and spawn restrictions seperately from default builder.
* Let's not cast like a maniac
* Add misc overloads for living builder
* Add a few null checks
* Allow factory to be defined in builder
* Make spawn group a builder parameter
Co-authored-by: Pyrofab <redstoneinfire@gmail.com>
* Add callback to allow registration of feature renderers.
* Laymans terms for those who don't map yarn for a living.
* Be a little less generic
* Dispatch events in a better spot, play with generics again, move to renderer-registries.
Also move this to render registries
* Handle players as well
* Tweak generics
* Hide acceptor impl
* Add actual testmod, fix where player events are fired, Simplify to returning a list.
* the old style worked fine
* registerRenderers
* Rename the event interface
* Javadoc fixes
* Create GameRule API
* Some tweaks
* gamerule -> game-rule
* Fix translation keys and update to 20w22a
* Command results and remove unnessecary factory method
* Update to 1.16-pre1
* Update fabric-game-rule-api-v1/src/main/java/net/fabricmc/fabric/api/gamerule/v1/FabricRuleTypeConsumer.java
Co-authored-by: liach <7806504+liach@users.noreply.github.com>
* I like final things
* Update to 1.16-pre3, change enum button style
* checkstyle
* use right min values
* Document ValidatableRule
* Document LiteralRule, clarify generics
* Update to 20w27a
* Rename some parts to compensate for future yarn renames.
Flatten some logic related to EnumRules
* forgot one
* javadoc galore
* finish javadoc
* Start things
* Update to 20w29a, drop float rule
* Make cycle naming more accurate
* Convert colors to hex
Co-authored-by: Erlend Åmdal <erlend@aamdal.com>
* Update to 20w30a
* imports again
Co-authored-by: liach <7806504+liach@users.noreply.github.com>
Co-authored-by: Prospector <6166773+Prospector@users.noreply.github.com>
Co-authored-by: Erlend Åmdal <erlend@aamdal.com>
* Decoupled effective checks and mining speed
* Fixed typo
* Bump major for method sig change
* Fix semvar
* Re-add original API method
* Extend test mod
* Fix bug discovered by testing
* Change current to vanillaResult, update doc for postProcessMiningSpeed
* Remove </p> tag
* Add vanilla tests and rename vars
rendering flat-shaded quads. Use the cull-face (if present)
to determine where the light-value is being sampled from,
and use the light-face to apply diffuse lighting.
Also do not force the light-face to be set to the cull-face,
since some blocks use faces where these are both set and different
(see the insides of a Cauldron for example).
* Make Indigo more closely aligned with vanilla's behavior when
rendering flat-shaded quads. Use the cull-face (if present)
to determine where the light-value is being sampled from,
and use the light-face to apply diffuse lighting.
* Bump Indigo version to 0.3.4
* Add a few new server lifecycle events
Server starting, Load World, Before server resource reload, After server resource reload
* Save event
* Split world load into ServerWorldEvents, add failure event for data pack reload
* cause
* Merge fail and regular end.
* Present tense lol
* So we can just plainly specify the system properties
* use handleAsync instead