Commit graph

1025 commits

Author SHA1 Message Date
Technici4n
25611bb75a
Stop DefaultResourcePack scanning the entire classpath (#1564)
* Stop DefaultResourcePack scanning the entire classpath

* Use another approach to find the JAR

* Make it work for filesystem assets as well (tested, it works!)

* Only patch what is necessary
2021-07-23 17:06:03 +01:00
modmuss50
fb3bff2eed
Generate a changelog (#1592) 2021-07-23 17:05:52 +01:00
modmuss50
3fe3c3f50c Bump version 2021-07-12 19:25:45 +01:00
Technici4n
c09be4c48a
Fabric Transfer API: "fluid only" edition (#1356)
* Original fluid API design

* Rework the transaction system

* First javadoc pass

* Add a testmod, a base implementation for fluid storages and fix some little bugs

* Fix checkstyle

* Make Movement#move extract from the view and not the whole Storage

* Document and update FluidPreconditions

* Use for-each in CombinedStorage and document a little

* Remove useless overrides in Insertion/ExtractionOnlyStorage

* Move SnapshotParticipant#snapshots to the top of the class, and make updateSnapshots public

* Fix garbage collection of unused CauldronWrappers

* Use ArrayList directly

* Remove locking, reorganize transaction implementation, and add outer close callback

* Add more javadoc

* Rework Storage#forEach into Storage#iterator

* Add a few missing `transaction.addCloseCallback(iterator)`

* Add anyView(), exactView(), capacity() and isEmpty()

* Add Storage#iterable to make iteration friendlier to for loops

* Storages may now have multiple open iterators

Co-authored-by: Devan-Kerman <dev.sel20@gmail.com>

* Make CombinedStorage#supportsInsertion/Extraction iterate through the parts

* Block updates should be used when the supportsInsertion/Extraction status changes

* Fluid -> FluidKey

* Remove all references to ItemKey inside FluidKey, and other minor tweaks

* Cache FluidKeys with a null tag inside Fluid directly

* Fluid unit convention

* Add FluidKeyRendering and RenderHandler

* Bump version for more testing (also published to my maven)

* Add SingleViewIterator, massively reduce code duplication!

* Make API experimental, and add README

* Bump version

* Apparently Fluids.EMPTY is flowing

* Add package info

* Minor adjustements

* 1.17 port, cauldron support, add ResourceKey

* Checkstyle, gas rendering, use record for ResourceAmount

* Add a few helpers, rename some stuff

* Remove anyView, allow nullable in StorageUtil#find*, fix missing try block

* Slight findStoredResource cleanup

* Slightly improve implementation

* Bump version

* Fix wrong transaction

* I wrote in a comment that this could happen...

* Fix SingleFluidStorage bugs, add tests in the testmod, add testmod assets

* Add extract stick

* Rename a few things

* `ResourceKey<T>` -> `TransferKey<O>`
* `ResourceKey#getResource()` -> `TransferKey#getObject()` as resource is already widely used through the API for the keys themselves.
* `tag` -> `nbt`
* Add `get` prefixes to `StorageView` functions

* Bump version

* FluidKey -> FluidVariant

* Bump version

* Expand getVersion() documentation, make it thread-safe and use long.

Co-authored-by: Player <player@player.to>

* empty resource -> blank resource, and update SingleFluidStorage

Co-authored-by: Player <player@player.to>

* Make CauldronFluidContent a final class instead of a record.

Co-authored-by: Player <player@player.to>

* Get rid of CauldronFluidContent#minLevel (was always 1)

* Fix nested commits. (Thanks @warjort!)

* Separate Transaction and TransactionContext

Co-authored-by: Devan-Kerman <dev.sel20@gmail.com>
Co-authored-by: Player <player@player.to>

* Change WorldLocation into a private record

* Bump version

* Guard against exceptions thrown in close callbacks

* Make sure blank fluid variants don't have a tag

* Add documentation, make CauldronStorage clearer

Co-authored-by: frqnny <45723631+frqnny@users.noreply.github.com>

* Allow null storages in StorageUtil#move, and clarify sidedness of FluidStorage

* Add explicit hashCode and equals for transfer variants

* Remove ugly equals and hashCode overrides, and add constant time hashcode spec

Co-authored-by: Devan-Kerman <dev.sel20@gmail.com>
Co-authored-by: liach <liach@users.noreply.github.com>
Co-authored-by: Player <player@player.to>
Co-authored-by: frqnny <45723631+frqnny@users.noreply.github.com>
2021-07-12 18:28:33 +01:00
grondag
5f02c96920
Prevent SpriteFinder from returning Missing sprite for wrong atlas (#1541)
Co-authored-by: grondag <>
2021-07-05 18:47:06 +01:00
modmuss50
6cefd57746 1.17.1-rc2 2021-07-05 18:44:49 +01:00
Player
a722d8c028 Bump versions 2021-06-20 16:57:51 +02:00
Technici4n
2b5c62d085 Add ItemApiLookup (#1352)
* Initial version of Item API API

* Use an ItemStack parameter instead of an Item parameter for API queries

* Add ItemStack modification note

* Kindly ask providers not to modify the stack

* Expose the API and context types

* Bump version to 1.2.0
2021-06-20 16:48:52 +02:00
Frieder Hannenheim
00066f1e8d
Fix ClientPickBlockApplyCallback.EVENT not working as expected Fixes #1493 (#1498)
Co-authored-by: Player <player@player.to>
2021-06-20 14:25:14 +00:00
modmuss50
e369698318 Bump version 2021-06-14 23:07:31 +01:00
frqnny
98295c3114
Fix structure config not applying in every case (#1495)
* Fix structure config not applying in every case

* Make tempmap immutable

* delete unfinished sentence

oop

* Some more cleanup
This was done at the request of Technician

* Update fabric-structure-api-v1/src/main/resources/fabric.mod.json

Co-authored-by: liach <7806504+liach@users.noreply.github.com>

Co-authored-by: liach <7806504+liach@users.noreply.github.com>
2021-06-14 22:58:00 +01:00
Technici4n
155f865cd1
Fix screen testmod. Closes #1477 (#1497) 2021-06-14 22:06:28 +01:00
modmuss50
e2961fee74 Fix datapack driven worldgen not working on dedicated servers. Closes #1478 2021-06-13 00:50:44 +01:00
Player
198a96213c Bump versions 2021-06-11 17:25:45 +02:00
Technici4n
1d383bb698 Make BlockApiLookup expose the API and context classes (#1486)
* Make BlockApiLookup expose the API and context classes

* Test API and context classes in testmod
2021-06-11 17:24:04 +02:00
jackassmc
18ef9af8ec
Fix Screen API ButtonList in 1.17 (#1474)
* Fix Screen API ButtonList in 1.17

* Lint
2021-06-10 20:59:35 +00:00
Player
c345aea85c Fix biome testmod accessor mixin being clientside despite used by the server 2021-06-10 16:02:56 +02:00
Player
676f40fa73 Bump versions 2021-06-10 14:21:32 +02:00
Cool_Mineman
8a5c621a87 Fix #1273 (Make MultipartBakedModel and WeightedBackedModel implement FabricBakedModel properly) (#1301)
* fix #1273

* Expand testmod to test multipart and weighted models with FRAPI submodels

Co-authored-by: Technici4n <13494793+Technici4n@users.noreply.github.com>
2021-06-10 14:09:00 +02:00
modmuss50
be9da31056 1.17-rc (Just mappings)
This is a little behind just wanted to get it building against rc1
2021-06-07 11:01:31 +01:00
modmuss50
b7ab612143 1.17-pre1 2021-05-27 18:40:00 +01:00
Player
9e521e1377 Fix biome modifications not being applied (matching/porting bug)
Co-authored-by: frqnny <45723631+frqnny@users.noreply.github.com>
2021-05-27 04:20:34 +02:00
modmuss50
5d08011ac3 Bump version 2021-05-25 18:33:34 +01:00
TelepathicGrunt
f37e715554 Fixed Biome Modification API not working for datapack provided biomes (#1463)
* Fixed Biome Modification API not working for json biome

* upgraded test to add to all deserts and added json biome. (note the test mod won't load the json biome tho. Make it into a datapack so it works)

* switched set of rgeistrykeys to set of biome instances

* added datapack as backup to test mod

* removed unused imports

* removed the biome json file from the test mod's data folder
2021-05-25 18:26:43 +01:00
Player
75bf7f0f4a Bump versions 2021-05-20 01:32:24 +02:00
Player
8297e96629 21w20a
Co-authored-by: modmuss50 <modmuss50@gmail.com>
2021-05-20 01:15:25 +02:00
modmuss50
4b807cec5b Bump version 2021-05-12 20:24:00 +01:00
modmuss50
a02b4463f9 21w19a 2021-05-12 20:23:04 +01:00
Player
74330c9e99 Fix network api throwing on client/server query disconnects 2021-05-10 14:40:38 +02:00
modmuss50
f08a69e19f 21w18a 2021-05-05 19:53:16 +01:00
Player
daa3672176 Bump versions 2021-05-05 07:59:13 +02:00
Player
f86e309fe5 Fix network api accumulating connection handlers and not firing
some disconnect events
2021-05-05 07:56:12 +02:00
Player
8d89ed54f2 Bump versions 2021-05-01 23:36:32 +02:00
William Bradford Larcombe
6e4bae3683 Add ServerPlayerEvents.ALLOW_DEATH event (#1394)
Co-authored-by: NinjaPhenix <5214513+NinjaPhenix@users.noreply.github.com>
Co-authored-by: liach <7806504+liach@users.noreply.github.com>
2021-05-01 23:24:14 +02:00
Technici4n
4b24d382c1 Change event behavior for one listener, introduce AutoInvokingEvent, update ArrayBackedEvent implementation (#1369)
* Cleanup Events

* Add the AutoInvokingEvent annotation.

Co-authored-by: Player <sfPlayer1@users.noreply.github.com>
Co-authored-by: Technici4n <13494793+Technici4n@users.noreply.github.com>
2021-05-01 23:24:00 +02:00
Technici4n
1f1ad061d4 Fix trade offers by writing to the trade map directly (#1430)
* Write to the trade map directly

* Add warning when TradeOfferHelper#refreshOffers is called

* Correctly use synchronized, just in case

* Add null check - PR should be ready for merge now

* Make ctor private to hide it from javadoc
2021-05-01 23:23:40 +02:00
Player
4e7237c745 21w17a 2021-04-29 00:29:12 +02:00
Player
4d9fb18c78
Bump version to retry after CF API failure 2021-04-27 18:12:58 +00:00
Player
2f893d9760
Bump version 2021-04-27 17:56:23 +00:00
modmuss50
33dd200e73
#1431 - Foce update MCE to fix bad refmap (#1433) 2021-04-27 17:55:20 +00:00
Player
891f9e0762 Bump version 2021-04-26 21:50:10 +02:00
Draylar
f5d458fc56 Update Dynamic Attribute Tool modifier application to fix #1353 (#1355)
* dynamic tool attributes v2, part 1

* move duck interface to impl package

* add licenses

* fix mixin build failure on a dedicated server

* remove unused shadow of getItem()

* add a simple user-context-based attribute tool to the test item suite

* add clarifying comments in DynamicAttributeTool jdoc regarding parameter reliability + extended docs on getDynamicModifiers for attribute freshing

* player -> user because context is not always a player

* add license to TestNullableItem
2021-04-26 21:41:21 +02:00
Player
b90688755c Update mc version to 21w16a 2021-04-26 21:40:28 +02:00
actuallyasmartname
14efdf6ee6
Add missing metadata to dimensions api, remove JCenter (#1428) 2021-04-25 20:29:06 +00:00
Player
ecfd213c4f Bump version 2021-04-18 19:29:34 +02:00
PepperCode1
2263f53eac Allow getting BakedModels using Identifiers (#1390) 2021-04-18 16:53:53 +02:00
modmuss50
12865e786c Version bump 2021-04-14 20:03:08 +01:00
i509VCB
6a8b6a39c8 Create a simple renderer api testmod (#1295)
* Create a simple renderer api testmod

* Update fabric-renderer-api-v1/src/testmod/java/net/fabricmc/fabric/test/renderer/simple/client/RendererClientTest.java

Co-authored-by: liach <7806504+liach@users.noreply.github.com>

Co-authored-by: liach <7806504+liach@users.noreply.github.com>
(cherry picked from commit b0e4dde51b)
2021-04-14 19:29:28 +01:00
Technici4n
78c482ee45 Fix a WorldRenderEvents.BLOCK_OUTLINE bug (#1319)
* Fix bug related to immediate mode VCP

* Add testmod

(cherry picked from commit 6d5e24549f)
2021-04-14 18:57:27 +01:00
PepperCode1
aaa30be003 Allow more flexibility when registering BER (#1392)
(cherry picked from commit f801c28735)
2021-04-14 18:54:29 +01:00