Commit Graph

55 Commits

Author SHA1 Message Date
Max
aa008479a1 Fix fluid testmod, add dummy init method to FluidStack (classloading 😍)
Signed-off-by: Max <maxh2709@gmail.com>
2022-05-11 00:49:36 +02:00
shedaniel
bd9b3e73e4 Add fluid block and flowing fluid (#251)
[ci skip]

Squash of the following commits:

* Add way to register fluids and fluid attributes, WIP UNTESTED
* Move to correct package
* Update forge/build.gradle
* Add bucket item wrapper and add test mod
* Make it easier to declare attributes by suppliers
* Fix fabric support
* Change SimpleArchitecturyFluidAttributes to accept Supplier<Optional<T>>
* Make ArchitecturyLiquidBlock and ArchitecturyBucketItem accept Supplier
* Update testmod
* Link javadocs in the builder to make it easier to check
* Add ArchitecturyMobBucketItem and fix caps on ArchitecturyBucketItem
* Make SimpleArchitecturyFluidAttributes accept wildcard fluids
* getContainingFluid -> getContainedFluid
* Add supplier variant of the methods

Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>
Co-authored-by: Max <maxh2709@gmail.com>
2022-05-06 13:51:25 +02:00
shedaniel
3532d24577 Fix some broken features and random crashes (#253)
[ci skip]
2022-05-06 13:40:02 +02:00
shedaniel
03da3e6bfb Fix RegistrySupplier#listen and ArchitecturySpawnEggItem (#228) 2022-03-26 19:56:31 +08:00
shedaniel
36a5aea8aa Big clean up, more details in the PR (#216)
* Big clean up, more details in the PR

* Fix build

* Deprecate BlockProperties, generate AWs for Item constructors, Block constructors and RenderStateShard fields

* Add a few more RenderType AWs

* Deprecate BlockPropertiesExtension

* Set defaultType on resolving the entity type in SpawnEggItem

* Used the wrong object

* Add license information for generating AWs

* Add link to original PR

* Properly add support for forge vanilla registries

* Bump to 4.1
2022-03-12 00:01:49 +08:00
shedaniel
6dff58485f Drop 1.18/1.18.1 Support, it now compiles 2022-02-10 10:03:56 +08:00
Max
5a6f4b1176 Implement ClientLifecycleEvent on Forge (+ testmod)
Signed-off-by: Max <maxh2709@gmail.com>
2022-01-30 03:23:02 +01:00
Max
c38df29d67 Update FAPI / Loader, migrate to new API where possible
Signed-off-by: Max <maxh2709@gmail.com>
2022-01-29 21:06:14 +01:00
Max
8b282f5c5a 3.4 : License and workflow updates, deprecate NbtType, merge #159 and #160
Signed-off-by: Max <maxh2709@gmail.com>
2021-12-31 23:06:44 +01:00
shedaniel
997af6b81a Move EnvExecutor executions to another class 2021-12-23 17:49:24 +08:00
shedaniel
ebbc2a6490 Remove hacks around RegistryEntry (#144) 2021-12-11 19:05:36 +08:00
shedaniel
7857615bfc Migrate to transitive access wideners (#146)
* Migrate to transitive access wideners

* Fix invalid AW

* Bump minor version, changes to gradle buildscript

Co-authored-by: Max <maxh2709@gmail.com>
2021-12-08 22:17:44 +08:00
shedaniel
a7ecdcf578 Removed Deprecated API 2021-11-14 02:32:49 +08:00
shedaniel
ac84414b30 Merge remote-tracking branch 'architectury/1.17' into 1.18
# Conflicts:
#	gradle.properties
2021-10-28 14:52:03 +08:00
shedaniel
a6a361e5e1 Add support for PacketTransformer and a SplitPacketTransformer (#142)
* Add support for PacketTransformer and a SplitPacketTransformer

* Add testmod and make it work

* Add experimental, Remove generics, they are pointless
2021-10-23 18:27:28 +08:00
shedaniel
ffe3fbe3f4 21w37a 2021-09-23 02:44:15 +08:00
shedaniel
c3ffa8d976 Update to Loom 0.10.0 and add Mixins 2021-09-22 23:03:07 +08:00
shedaniel
c8667222a3 Add license headers 2021-08-24 03:34:50 +08:00
Leo40Git
aba773f07a These aren't actually recipes, so... 2021-08-13 12:00:20 +03:00
Leo40Git
32a44239ea Add tool interaction recipe hooks 2021-08-11 12:14:26 +03:00
shedaniel
4ef7f45ae7 Switch to MethodHandlers to avoid wrapping exceptions with InvocationTargetException due to reflection 2021-08-06 17:09:05 +08:00
shedaniel
bf34031711 WIP Forge port 2021-07-29 23:03:06 +08:00
LatvianModder
5b7cb36414 Added SimpleNetworkManager (#120)
Signed-off-by: shedaniel <daniel@shedaniel.me>

Co-authored-by: Juuz <6596629+Juuxel@users.noreply.github.com>
Co-authored-by: shedaniel <daniel@shedaniel.me>
2021-07-12 12:13:07 +08:00
shedaniel
e45dc97e92 Allow adding supplied effects to FoodProperties (#119)
Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-07-04 18:40:27 +08:00
Leo40Git
f6649ae398 Particle Provider API (#110)
Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-06-27 14:08:54 +08:00
lazynessmind
125494399d Entity Event: Animal Tame (#109) 2021-06-24 00:46:14 +08:00
Max
c12524b7aa [norelease] Switch to loom 0.9, crane and quiltflower
(I can't believe that ALL of these work out of the box)
2021-06-22 12:30:45 +02:00
shedaniel
9eea154074 1.17-pre2
Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-06-01 02:18:08 +08:00
shedaniel
8b262d07c0 Refactor and 1.17-pre1 (#96)
* Fix #94

Signed-off-by: shedaniel <daniel@shedaniel.me>

* Add Chunk data save and load events, closes #89 (#92)

* Created Chunk save and load event. Closes #89

* Fixed missing licence

* Update common/src/main/java/me/shedaniel/architectury/event/events/ChunkEvent.java

* Update common/src/main/java/me/shedaniel/architectury/event/events/ChunkEvent.java

* Update common/src/main/java/me/shedaniel/architectury/event/events/ChunkEvent.java

* Supply ServerLevel in ChunkEvent.LOAD, style cleanup

Signed-off-by: shedaniel <daniel@shedaniel.me>

* Add "Data" suffix to Chunk IO Events and mark level as nullable for load

* Update common/src/main/java/me/shedaniel/architectury/event/events/ChunkEvent.java

* Bump to 1.16

Co-authored-by: shedaniel <daniel@shedaniel.me>
Co-authored-by: Max <maxh2709@gmail.com>

* Update pr.yml

* Add NetworkManager hook for Entity spawn packets (#88)

* New utility hook for creating a entity spawn packet. before every mod had to implement this in itself.

* Apply suggestions from code review

Co-authored-by: shedaniel <daniel@shedaniel.me>

* Update common/src/main/java/me/shedaniel/architectury/networking/NetworkManager.java

* Update common/src/main/java/me/shedaniel/architectury/networking/NetworkManager.java

* Properly implement SpawnEntityPacket & Format style

Signed-off-by: shedaniel <daniel@shedaniel.me>

* Format

Signed-off-by: shedaniel <daniel@shedaniel.me>

* createEntitySpawnPacket -> createAddEntityPacket for mojmap consistency

Signed-off-by: shedaniel <daniel@shedaniel.me>

* Bump version to 1.17

Co-authored-by: Max <maxh2709@gmail.com>
Co-authored-by: shedaniel <daniel@shedaniel.me>

* Add Javadocs for all events (#91)

* javadoc for ClientChatEvent

* javadoc for ClientPlayerEvent

* javadoc for ClientRawInputEvent

* Added javadoc for ClientScreenInputEvent

* Bit refactoring and removed javadoc @see to the caller methods

* Add javadoc for BlockEvent

* Add javadoc for ChatEvent

* Add javadoc for CommandPerformEvent and CommandRegistrationEvent

* Add javadoc for EntityEvent

* Add javadoc for ExplosionEvent

* Add javadoc for GuiEvent

* Add javadoc for InteractionEvent

* Add javadoc for LightningEvent, RecipeUpdateEvent & TextureStitchEvent

* Add javadoc for LifecycleEvent & ClientLifecycleEvent

* Add javadoc for TooltipEvent

* Add javadoc for TickEvent and partly PlayerEvent

* More javadoc for PlayerEvent

* Finally all event have javadoc

* Update common/src/main/java/me/shedaniel/architectury/event/events/CommandPerformEvent.java

Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>

* Update common/src/main/java/me/shedaniel/architectury/event/events/CommandPerformEvent.java

Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>

* Update common/src/main/java/me/shedaniel/architectury/event/events/CommandPerformEvent.java

Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>

* Update common/src/main/java/me/shedaniel/architectury/event/events/ChatEvent.java

Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>

* Update common/src/main/java/me/shedaniel/architectury/event/events/CommandRegistrationEvent.java

Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>

* Update common/src/main/java/me/shedaniel/architectury/event/events/EntityEvent.java

Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>

* Update common/src/main/java/me/shedaniel/architectury/event/events/EntityEvent.java

Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>

* Update common/src/main/java/me/shedaniel/architectury/event/events/EntityEvent.java

Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>

* Update common/src/main/java/me/shedaniel/architectury/event/events/EntityEvent.java

Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>

* Update common/src/main/java/me/shedaniel/architectury/event/events/client/ClientScreenInputEvent.java

Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>

* Update common/src/main/java/me/shedaniel/architectury/event/events/client/ClientScreenInputEvent.java

Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>

* Update common/src/main/java/me/shedaniel/architectury/event/events/BlockEvent.java

Co-authored-by: Max <maxh2709@gmail.com>

* Update common/src/main/java/me/shedaniel/architectury/event/events/BlockEvent.java

Co-authored-by: Max <maxh2709@gmail.com>

* Update common/src/main/java/me/shedaniel/architectury/event/events/BlockEvent.java

Co-authored-by: Max <maxh2709@gmail.com>

* Update common/src/main/java/me/shedaniel/architectury/event/events/BlockEvent.java

Co-authored-by: Max <maxh2709@gmail.com>

* Update common/src/main/java/me/shedaniel/architectury/event/events/LifecycleEvent.java

Co-authored-by: Max <maxh2709@gmail.com>

* Update common/src/main/java/me/shedaniel/architectury/event/events/LifecycleEvent.java

Co-authored-by: Max <maxh2709@gmail.com>

* Update common/src/main/java/me/shedaniel/architectury/event/events/LifecycleEvent.java

Co-authored-by: Max <maxh2709@gmail.com>

* Update common/src/main/java/me/shedaniel/architectury/event/events/PlayerEvent.java

Co-authored-by: Max <maxh2709@gmail.com>

* Apply suggestions from code review

Co-authored-by: Max <maxh2709@gmail.com>
Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>
Co-authored-by: Max <maxh2709@gmail.com>

* Apply suggestions from code review

Co-authored-by: Max <maxh2709@gmail.com>
Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Max <maxh2709@gmail.com>
Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Max <maxh2709@gmail.com>
Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>

* Apply suggestions from code review

* Apply suggestions from code review

Co-authored-by: shedaniel <daniel@shedaniel.me>

* Applied some more reviews

* Applied some more reviews

* Applied suggestions

* Reformat and apply some minor suggestions

* Apply suggestions from review (first batch)

* Remove double return javadoc

* Apply suggestions from code review

Co-authored-by: shedaniel <daniel@shedaniel.me>

* Add "scaled" to mouse coordinates

* Final touches

Signed-off-by: shedaniel <daniel@shedaniel.me>

* Remove invalid tips

Signed-off-by: shedaniel <daniel@shedaniel.me>

Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>
Co-authored-by: Max <maxh2709@gmail.com>
Co-authored-by: shedaniel <daniel@shedaniel.me>

* Refactor

Signed-off-by: shedaniel <daniel@shedaniel.me>

* Update common/src/main/java/dev/architectury/event/events/common/InteractionEvent.java

Co-authored-by: Max <maxh2709@gmail.com>

* Apply suggestions from code review

Co-authored-by: Max <maxh2709@gmail.com>

* attack -> hurt

Signed-off-by: shedaniel <daniel@shedaniel.me>

* Update @param for InteractionEvent#FARMLAND_TRAMPLE

Signed-off-by: shedaniel <daniel@shedaniel.me>

* world -> level

Signed-off-by: shedaniel <daniel@shedaniel.me>

* Relocate hooks

Signed-off-by: shedaniel <daniel@shedaniel.me>

* Organize imports

Signed-off-by: shedaniel <daniel@shedaniel.me>

* Registry -> Registrar Please voice out your opinion!!

Signed-off-by: shedaniel <daniel@shedaniel.me>

* Some more renames
itemOptional -> optionalItem
RegistryBuilder -> RegistrarBuilder
RegistryOption -> RegistrarOption
Not forcing RegistryEntry on new registries, vanilla types don't have them

Signed-off-by: shedaniel <daniel@shedaniel.me>

* Java 16-ification

Signed-off-by: shedaniel <daniel@shedaniel.me>

* Optimise imports after the var change

Signed-off-by: shedaniel <daniel@shedaniel.me>

* Un-minimize architectury-common.mixins.json

Signed-off-by: shedaniel <daniel@shedaniel.me>

Co-authored-by: canitzp <12819060+canitzp@users.noreply.github.com>
Co-authored-by: Max <maxh2709@gmail.com>
Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>
2021-05-30 19:08:11 +08:00
shedaniel
1404a33f40 Update to 21w20a
Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-05-20 23:00:12 +08:00
shedaniel
40bcee6a45 Merge remote-tracking branch 'architectury/1.16' into 1.17
Signed-off-by: shedaniel <daniel@shedaniel.me>

# Conflicts:
#	.github/workflows/publish.yml
#	.github/workflows/snapshot.yml
#	build.gradle
#	common/src/main/resources/architectury-common.mixins.json
#	fabric/src/main/java/me/shedaniel/architectury/mixin/fabric/MixinLevelChunk.java
#	fabric/src/main/java/me/shedaniel/architectury/mixin/fabric/MixinServerGamePacketListenerImpl.java
#	fabric/src/main/java/me/shedaniel/architectury/mixin/fabric/MixinServerLevel.java
#	fabric/src/main/java/me/shedaniel/architectury/mixin/fabric/client/MixinMouseHandler.java
#	fabric/src/main/java/me/shedaniel/architectury/mixin/fabric/client/MixinScreen.java
#	forge/gradle.properties
#	gradle.properties
#	gradle/wrapper/gradle-wrapper.properties
#	testmod-fabric/build.gradle
#	testmod-forge/gradle.properties
2021-05-19 22:28:49 +08:00
Max
43c8bae105 [norelease] Update to archloom 0.7.2 and Gradle 7 2021-05-18 17:49:41 +02:00
Max
428f98be44 Reformat and bump version 2021-05-15 00:13:39 +02:00
canitzp
2ff5dd500d Add an easy way to register Villager and Wandering Trader trades (#84)
* Add TradeRegistry to add Trades a bit more easily. Uses the VillagerTradesEvent on forge

* Added TradeRegistry#registerTradeForWanderer which uses the WandererTraderEvent on forge

* Added javadoc

* Use Fabric own Trade implementation and fixed Test Mod

* Update common/src/main/java/me/shedaniel/architectury/registry/TradeRegistry.java

Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>

* Update common/src/main/java/me/shedaniel/architectury/registry/TradeRegistry.java

Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>

* Update common/src/main/java/me/shedaniel/architectury/registry/TradeRegistry.java

Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>

* Update common/src/main/java/me/shedaniel/architectury/registry/TradeRegistry.java

Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>

* Added javadoc for SimpleTrade

* Use two lists instead of Int2ObjectMap

* Use "registerTradeForWanderingTrader" instead of "registerTradeForWanderer" for better clarification

* Use IllegalArgumentException instead of RuntimeException

* Remove level limit (Mods may be able to remove this restriction in VillagerData#canLevelUp), Clean up forge's implementation

Signed-off-by: shedaniel <daniel@shedaniel.me>

* Clean up TestTrades and add licenses

Signed-off-by: shedaniel <daniel@shedaniel.me>

* [ciskip] Reintroduce lower bound validation for level

Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>
Co-authored-by: shedaniel <daniel@shedaniel.me>
Co-authored-by: Max <maxh2709@gmail.com>
2021-05-14 23:59:58 +02:00
shedaniel
2956355ce7 Update to 21w19a and require java 16 for compilation
Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-05-14 19:45:58 +08:00
shedaniel
413f80de6a Update to 20w17a
Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-05-03 01:40:32 +08:00
shedaniel
2c21eeeaf7 Merge remote-tracking branch 'architectury/1.16' into 1.17
Signed-off-by: shedaniel <daniel@shedaniel.me>

# Conflicts:
#	common/src/main/java/me/shedaniel/architectury/event/events/EntityEvent.java
#	common/src/main/java/me/shedaniel/architectury/registry/entity/EntityRenderers.java
#	common/src/main/java/me/shedaniel/architectury/utils/Fraction.java
#	fabric/src/main/java/me/shedaniel/architectury/hooks/fabric/EntityHooksImpl.java
#	fabric/src/main/java/me/shedaniel/architectury/mixin/fabric/MixinCollisionContext.java
#	fabric/src/main/java/me/shedaniel/architectury/mixin/fabric/MixinEntityCollisionContext.java
#	fabric/src/main/java/me/shedaniel/architectury/registry/entity/fabric/EntityRenderersImpl.java
#	fabric/src/main/resources/architectury.mixins.json
#	gradle.properties
2021-05-03 00:58:19 +08:00
Max
ca2a528160 Some more (mostly Entity-based) Events (#75)
* Add FarmlandTrample event

* FarmlandTrample debug event

* Add FILL_BUCKET event and testmod

* Add ENTER_CHUNK event and testmod

* Add CHECK_SPAWN on Forge

* CHECK_SPAWN on Fabric part 1 aka: The Concernening

* CHECK_SPAWN on Fabric part 2: I kinda don't hate this as much

* CHECK_SPAWN on Fabric part 3: Patrols

* CHECK_SPAWN on Fabric part 4: catJAM

* CHECK_SPAWN on Fabric part 5: Phantoms

* Fix CHECK_SPAWN for patrols

* Add mod metadata (#73)

* new event system

* Revert patrol spawner behaviour

* Implement CheckSpawn behaviour for spawners and add test (forgot about that)

* Revert "Revert patrol spawner behaviour"

This reverts commit 1da3fb73

* Change MixinPhantomSpawner to SOFT

* Edit forge mods.toml
We support 1.16.2+ on forge

Co-authored-by: shedaniel <daniel@shedaniel.me>
2021-04-15 23:26:48 +08:00
shedaniel
ac94c33e07 Re-license header 2021-04-13 19:40:44 +08:00
shedaniel
35145b9acb Add getCustomEquipmentSlot 2021-04-10 20:33:26 +08:00
shedaniel
c2cb308655 Update to 21w14a, remove typetools, remove fractions in favor of 81000 2021-04-09 22:45:04 +08:00
shedaniel
c56ca3cc6a Merge remote-tracking branch 'architectury/1.16' into 1.17
# Conflicts:
#	fabric/src/main/java/me/shedaniel/architectury/mixin/fabric/MixinBlockEntityExtension.java
#	fabric/src/main/resources/architectury.mixins.json
#	gradle.properties
2021-04-09 21:54:50 +08:00
Max
28d986a3cc Add EntityHooks.fromCollision to retrieve an entity from block collision (#64) 2021-03-21 20:20:25 +01:00
shedaniel
833d6014ea Rewrite the GuiEvent.SET_SCREEN mixin to fix #35 2021-03-11 21:09:22 +08:00
shedaniel
6cbafd06a7 Add lightning strikes to the debug mod 2021-03-07 21:10:48 +08:00
shedaniel
c8aeff0823 Update architectury-plugin to 3.0.88 2021-02-26 02:16:53 +08:00
shedaniel
a7a98aa19f Add license 2021-02-23 00:58:04 +08:00
shedaniel
4f333f7ec7 Add test mod and fix game rules on forge 2021-02-23 00:56:50 +08:00
Max
b78cce58ee Add LightningEvent, FallingBlock land, move break/place to BlockEvent 2021-02-15 18:59:31 +01:00
shedaniel
7c7c28d909 Update to 21w06a 2021-02-11 21:45:52 +08:00