Commit graph

1679 commits

Author SHA1 Message Date
modmuss
9d6d003f62
24w09a - Transfer API (#3626)
* First pass on transfer API

* More fixes

* Another fix

* Small fixes

* Move transfer API tests to junit

* Fix client run

* Small fixes

* Copy stack when component changes

* Small improvement

* More tests and docs fixes

* Mutate existing stack
2024-03-01 17:46:49 +00:00
modmuss50
2f977a43d9 Bump version 2024-02-29 19:21:21 +00:00
modmuss
1172e89799
24w09a (#3623)
* In game

* More fixes

* Small fixes + changes

* Rename

* Fix test
2024-02-29 19:16:35 +00:00
modmuss50
c81ced1dbb Bump version 2024-02-25 13:50:20 +00:00
maityyy
24791db907 Fire the MOB_CONVERSION event after shearing the mushroom cow (#3612)
* Fire the MOB_CONVERSION event after shearing the mushroom cow

* checkstyle

* Add license header

(cherry picked from commit 09fc25012b)
2024-02-25 13:31:21 +00:00
Fabric Bot
b65f60eeee Translastion updates (#3605)
* New translations en_us.json (Spanish)

* New translations en_us.json (Bulgarian)

* New translations en_us.json (German)

* New translations en_us.json (Greek)

* New translations en_us.json (Finnish)

* New translations en_us.json (Japanese)

* New translations en_us.json (Korean)

* New translations en_us.json (Polish)

* New translations en_us.json (Swedish)

* New translations en_us.json (Turkish)

* New translations en_us.json (Chinese Simplified)

* New translations en_us.json (Chinese Traditional)

* New translations en_us.json (Vietnamese)

* New translations en_us.json (Portuguese, Brazilian)

* New translations en_us.json (Spanish, Mexico)

* New translations en_us.json (Estonian)

* New translations en_us.json (Tatar)

* New translations en_us.json (French)

* New translations en_us.json (Spanish)

* New translations en_us.json (Polish)

* New translations en_us.json (Russian)

* New translations en_us.json (Ukrainian)

* New translations en_us.json (Chinese Traditional)

* New translations en_us.json (Estonian)

* New translations en_us.json (Russian)

* New translations en_us.json (French)

* New translations en_us.json (Spanish)

* New translations en_us.json (Polish)

* New translations en_us.json (Russian)

* New translations en_us.json (Ukrainian)

* New translations en_us.json (Estonian)

* New translations en_us.json (Dutch)

* New translations en_us.json (Dutch)

* New translations en_us.json (Dutch)

* New translations en_us.json (Finnish)

* New translations en_us.json (Finnish)

* New translations en_us.json (Italian)

* New translations en_us.json (Italian)

* New translations en_us.json (Swedish)

* New translations en_us.json (German)

* New translations en_us.json (German)

* New translations en_us.json (German)

* New translations en_us.json (Chinese Simplified)

* New translations en_us.json (German)

(cherry picked from commit 58f8c01215)
2024-02-25 13:31:19 +00:00
modmuss
64682a9eb4 Setup crowdin (#3604)
(cherry picked from commit 892bf04af7)
2024-02-25 13:31:17 +00:00
Technici4n
a167fc4d2d
Remove now unneeded OverlayVertexConsumerMixin (#3613) 2024-02-25 13:30:26 +00:00
modmuss50
4fcbeea9b2 Bump version 2024-02-18 13:23:47 +00:00
modmuss
793274c90b
Fix ClientPlayNetworking.Contexnt.player() being null (#3603)
* Fix ClientPlayNetworking.Contexnt.player() being null

* Minor cleanup
2024-02-18 13:18:07 +00:00
Syst3ms
a9531dc707 Improve handling of empty item groups in the creative menu (#3600)
* Better handling of empty item groups in pagination

Empty/non-displayable item groups are now put after all other groups and only then are they split into pages.

* Serendipitious bugfix

Fixed an issue where empty item groups could get selected when switching pages

* checkstyle

(cherry picked from commit f9b333cc5c)
2024-02-18 13:08:30 +00:00
Syst3ms
e2e84a3c66 Remove unnecessary recreation of identifiers in VillagerTypeHelper.register (#3597)
(cherry picked from commit c0751a9cc4)
2024-02-18 13:08:28 +00:00
PepperCode1
2c869ded7d Fluid rendering fixes (#3593)
* Fluid rendering fixes

- Fix default overlay block check using TransparentBlock instead of TranslucentBlock
- Fix setBlockTransparency/isBlockTransparent not being thread-safe
- Reuse the same render handler objects for water and lava

* Fix implementation issues

- Fix custom geometry being buffered twice if FluidRenderHandler#renderFluid is invoked directly
- Fix calling FluidRenderHandler.super.renderFluid not using passed arguments to calculate color
- Fix calling FluidRenderHandler.super.renderFluid more than once producing incorrect geometry
- Fix fluids with no handler never receiving water overlay instead of using default behavior

* Add way to render fluid with non-vanilla default

- Fix testmod

(cherry picked from commit e761c6698e)
2024-02-18 13:08:26 +00:00
modmuss
ea0cfbb1f5
Fix registry sync (#3598)
* Fix registry sync

* Don't use read/writeByteArray, as we know the whole payload is the bytearray

* Add unit tests
2024-02-18 13:04:57 +00:00
modmuss
98c5af8bcb
Fix teal sign testmod crash by registering the wood type. (#3599) 2024-02-18 13:04:36 +00:00
modmuss
ac5f7177e8
[1.20.5] Misc networking cleanup (#3594)
* Misc networking cleanup

* Dont invoke event twice

* Review tweaks
2024-02-18 13:04:12 +00:00
modmuss50
548b1e1b9e 24w07a 2024-02-14 19:17:38 +00:00
modmuss50
44ed7ba466 Bump version 2024-02-12 18:07:29 +00:00
modmuss
6de560bbe1 Fix empty data attachments being saved. (#3588)
* Fix empty data attachments being saved.

* Checkstyle

(cherry picked from commit b90db5748f)
2024-02-12 18:02:40 +00:00
Jochen Jacobs
2ee1668c3c Fix data attachment testmod (#3586)
* fix data attachment testmod: use marker file to determine first/second launch

* fix typos

* one more typo

(cherry picked from commit 4e3ec63309)
2024-02-12 15:37:54 +00:00
modmuss
3335cde7ee
Fix coverage task (#3583) 2024-02-10 21:24:55 +00:00
modmuss50
24d3f0ed2d Bump version 2024-02-09 17:57:56 +00:00
apple502j
109a837c6e
24w06a porting fixes (#3578)
* Bump yarn

* Fix TagsLoaded event again

* Resource Loader: internal refactor (name to ID)

* More refactors

* Reset ignoreFallDamageAboveY when using custom elytra

* fix checkstyle
2024-02-09 17:36:06 +00:00
modmuss50
ab78bd8247 Fix build after cherry-pick 2024-02-09 15:12:10 +00:00
PepperCode1
7e4ca3e18b Add Support for Custom ColorResolvers (#3503)
* Add support for custom color resolvers

* Add ColorResolverRegistry

* Fix checkstyle

* Statically initialize all BiomeColorCaches

(cherry picked from commit 6fd945a052)
2024-02-09 14:06:53 +00:00
MrNavaStar
1dcf7c2a51 Add Save Events to Server Lifecycle Events (#3533)
* Add Server Begin Save and Server End Save event

* rename events

* add tests

* pass more params through

(cherry picked from commit a67ffb5d0a)
2024-02-09 14:06:50 +00:00
Jochen Jacobs
6a60afdd2e Extend Data Attachment API to ProtoChunk (#3548)
* allow data-attachment on ProtoChunks

- moved interfaceInjection from WorldChunk to Chunk
- dataAttachment saving on ProtoChunks in ChunkSerializer
- copy attachment from ProtoChunk to WorldChunk on creation.
- make WrapperProtoChunk wrap attachment calls to WorldChunk

* add test for data-attachment on ProtoChunks, and extend testmod.

* code style and license headers

* fix typos in javadoc

* extend testmod to test setting attachment during worldgen.

* code formatting

* fix testmod: don't crash when feature isn't placed (i.e. on GameTest server)

* add warning when adding persistent attachment to chunk with status EMPTY.

* update javadoc

* update javadoc to reference ServerLivingEntityEvents#MOB_CONVERSION

(cherry picked from commit 32782cfdc7)
2024-02-09 14:06:46 +00:00
JellySquid
6e2af442ba Expose a function for querying the non-default fluid renderer (#3558)
* Expose a function for querying the non-default fluid renderer

* Do not register default handlers as overrides

* Add @Nullable to getOverride

* Add @Nullable to get

---------

Co-authored-by: modmuss50 <modmuss50@gmail.com>
(cherry picked from commit d74054c1e7)
2024-02-09 14:06:14 +00:00
modmuss50
54b4400cee 24w06a 2024-02-07 19:01:58 +00:00
modmuss50
b77b568afd Bump version 2024-02-05 11:32:53 +00:00
Kevin
bab36248d7
Fix WorldRenderEvents.AFTER_TRANSLUCENT (#3563)
* Fix WorldRenderEvents.AFTER_TRANSLUCENT

* Add test for WorldRenderEvents.AFTER_TRANSLUCENT

* Reset matrixStack
2024-02-05 11:30:21 +00:00
apple502j
04ac8cf319
Improve 24w05a port (#3565)
* Fix wrong ops being used in AttachmentSerializingImpl

* Remove unused private method

* Require and use registry future in advancements and loot tables
2024-02-05 11:30:14 +00:00
modmuss
03be9f1df2
Port to 24w05a (#3560)
Co-authored-by: Drex <nicknamedrex@gmail.com>
2024-01-31 20:24:57 +00:00
apple502j
ac6e104df9 Fix duplicate resource pack names (#3557)
(cherry picked from commit b66dcf78f1)
2024-01-31 19:53:04 +00:00
modmuss50
f3561f053e Bump version 2024-01-28 13:53:02 +00:00
TelepathicGrunt
6dfe4c9bf6 Make chunk sections only convert vanilla air blocks to AIR (#3535)
* Make chunk sections only convert vanilla air blocks to AIR

* angry checkstyles calmed

* Comments added for future reference

(cherry picked from commit 3e2216cb03)
2024-01-28 13:32:39 +00:00
ErrorCraft
b6679678d4 Allow FabricCodecDataProvider to access dynamic registries (#3522)
* Add CompletableFuture to FabricCodecDataProvider

* Deprecate the old method and constructor, and fix the style

* Fix the style for real this time

* Add exceptions to the configure methods

* Apply suggestions from code review

---------

Co-authored-by: modmuss <modmuss50@gmail.com>

(cherry picked from commit 5c013344f0)
2024-01-28 13:03:05 +00:00
apple502j
3feeb09499 Refactor resource loader internals (#3473)
* First step toward fixing resource pack grouping

* Placeholder pack and pack dependency

* Various fixes

* Fix wrong variable in serialization code

* Hide packs in PackScreen and DatapackCommand

* Apparently Japanese people aren't alone in having their currency signs used as special chars...

* Inject directly to Pack

* Add temporary logging, fix bug

* Add proper sorting

* Improve logging

* Fix duplicate name registration

* Fix client pack handling

* Fix FMJ

* Stop using interface injection for internal interface

* Delete unused GroupResourcePack

* Move refreshAutoEnabledPacks to util

* Improve logging

* Make a few things private

* Use vanilla metadata serialization logic

* Improve javadoc

* Add junit test

* Some final refactors

* Update ja_jp.json

---------

Co-authored-by: modmuss <modmuss50@gmail.com>
(cherry picked from commit 707e4d1bfd)
2024-01-28 13:01:25 +00:00
apple502j
bbf5165de7
Fix porting issues in Dynamic Registries API (#3555)
* Fix TAGS_LOADED event not being invoked on client join

* Skip loading empty dynamic registries (client-side)

* Update ClientTest to handle 24w04a

* Skip syncing empty dynamic registries (server-side)

* Fix dynamic registry using wrong codec, tag syncing depending on class load order

* Fix DynamicRegistrySetupEvent being called on client

* Test syncing empty registry's tag

* Actually check skipOnEmpty

* Downgrade AssertionError to log due to MC-268096
2024-01-28 12:56:20 +00:00
modmuss50
9bfa344c7d 24w04a 2024-01-24 19:59:21 +00:00
apple502j
3945d7aeb7
Fix some registries being unsynced (#3550) 2024-01-24 16:21:02 +00:00
modmuss
7b70ea8a7a
Port to 24w03b (#3537)
* Deprecate FabricBlockSettings

* Deprecate FabricItemSettings

* Start on 24w03a

* Main menu :)

* Update mappings

* PayloadTypeRegistry

* Networking part 2 of many

* Networking part 3 of many

* Networking part 4 of many

* Recipe api

* Port Item API to 1.20.5

* Is this even right?

* Port FabricParticleTypes to 1.20.5

* Remove redundant fuel caching logic

* Remove fabric-containers-v0, deprecated since 2020

* Regsync work

* Adapt screen handler to new networking

* Update yarn + more work

* More mapping updates

* Compile fixes

* Checkstyle + small fixes

* Single and multiplayer fixes

* Handle play packets on main thread.

* Update mappings

* Even more networking

* Networking tests

* Fix todo's

* Update javadocs

* Networking API improvements

* Some small regsync refactors

* Fix handling of null NBT in NbtIngredient

* Update fabric-object-builder-api-v1/src/main/java/net/fabricmc/fabric/api/object/builder/v1/block/FabricBlockSettings.java

Co-authored-by: ErrorCraft <51973682+ErrorCraft@users.noreply.github.com>

* Update fabric-object-builder-api-v1/src/main/java/net/fabricmc/fabric/api/object/builder/v1/block/FabricBlockSettings.java

Co-authored-by: ErrorCraft <51973682+ErrorCraft@users.noreply.github.com>

* Add context objects

* ChannelInfoHolder.getPendingChannelsNames -> fabric_getPendingChannelsNames

* Fix crash

* send `c:register` packet for play phase instead of config (#3544)

* Bump version

---------

Co-authored-by: ErrorCraft <51973682+ErrorCraft@users.noreply.github.com>
Co-authored-by: apple502j <33279053+apple502j@users.noreply.github.com>
Co-authored-by: Drex <nicknamedrex@gmail.com>
Co-authored-by: deirn <deirn@bai.lol>
2024-01-22 18:24:37 +00:00
PepperCode1
e89ad72381 Add AtlasSourceTypeRegistry (#3504)
(cherry picked from commit 0d29db7657)
2024-01-19 11:15:50 +00:00
Syst3ms
93072209fd Data Attachment API (#3476)
* Data Attachment API

* javadoc

* Remove AttachmentSerializer & independent syncability and persistence

- removed AttachmentSerializer in favor of codecs
- renamed serializability to "persistence"
- made persistence and syncability independent switches
- reworked convenience registry methods to use Suppliers from the get-go

* Move some serialization-related methods to impl

- changed logger name

* rename Attachment to AttachmentType

* Added DefaultedAttachmentType and reworded Javadoc

* add warning in getAttached

* javadoc

* fix defaulted API

* Add unit tests

* remove DefaultedAttachmentType, add helper methods

bikeshedding inbound

* add more unit tests

* add testmod

it works

* stash syncing for a further PR

* missed license header

* address most reviews

* more reviews

* naming convention

* fix tyop

* fix invalid file name error

* simplify API in the absence of sync

It was established that the presence of a codec might be useful for other things than persistence, and while this seems to couple the two, the API can be changed later in a backward-compatible way if need be.

* couple codec with persistence

committing to the change I mentioned previously

* little fixes

* Fix mixins + requests

- Copy attachments on entity copy,& with a customizable flag in the case of player respawn
- Call relevant change-notifying methods when calling setAttached on BEs and chunks
- Change persistence key
- Fix mixin visibility

* Write tests for entity copy

* replace mixin by COPY_FROM event

* missed license header

* more advanced copy mechanics

- attachments require an EntityCopyHandler to be copied across entities
- a copy handler is automatically derived if there's a codec
- updated javadoc for chunk and BE targets

* Revert "more advanced copy mechanics"

This reverts commit 3f53b554fb.

* replaced complicated API by a stern warning

- also handled cross-world entity teleportation

* add gametest

* fix compilation

* flipped boolean

* forgot some more bools to flip

* requests

* fix FMJ

* fix BE mixin and add gametest

* add client player entity copying

* Use new mob conversion event

---------

Co-authored-by: modmuss <modmuss50@gmail.com>

(cherry picked from commit 25e1b4769d)
2024-01-19 11:15:42 +00:00
deirn
c22763908d fix login network addon not properly initialized (#3531)
(cherry picked from commit bf1eca5483)
2024-01-17 18:02:31 +00:00
modmuss50
80f8cf516f Update Fabric Loader 2024-01-17 17:15:38 +00:00
modmuss50
c10e41a5b1 Bump version 2024-01-15 13:54:51 +00:00
Jared
ab3cc93a49 Don't tick gametests if the server isn't ticking (#3528)
* Don't tick gametests if the server isn't ticking

* Fix import order

(cherry picked from commit 85d85a93b5)
2024-01-15 13:42:23 +00:00
modmuss
fd154599a6 Stack aware getFoodComponent (#3520)
* Stack aware `getFoodComponent`

Co-authored-by: Phoupraw <50520903+phoupraw@users.noreply.github.com>

* Back to redirects

---------

Co-authored-by: Phoupraw <50520903+phoupraw@users.noreply.github.com>
(cherry picked from commit d6f2b0841c)
2024-01-15 13:42:21 +00:00
Syst3ms
92bc82c0df Add mob conversion event (#3511)
* Add mob conversion event

* spacing

* use a smarter mixin strategy

* add pig and villager lightning triggers

* tyop

Co-authored-by: haykam821 <24855774+haykam821@users.noreply.github.com>

* handle tadpole -> frog conversion

- update javadoc to clarify the handled cases
- document keepEquipment parameter
- improve mixin handler names

---------

Co-authored-by: haykam821 <24855774+haykam821@users.noreply.github.com>
(cherry picked from commit 44c0f8c656)
2024-01-15 13:42:19 +00:00