Commit Graph

169 Commits

Author SHA1 Message Date
shedaniel
140f8d857b Support loader 0.13.0 2022-02-01 23:20:11 +08:00
Max
f05b800881 Backport buildscript, license and workflow changes from 1.18
Signed-off-by: Max <maxh2709@gmail.com>
2021-12-31 23:25:45 +01:00
shedaniel
55e997e80c (Backport) Entity Model Layer Reg, and move to new package (#159)
Signed-off-by: Max <maxh2709@gmail.com>
2021-12-31 23:18:29 +01:00
shedaniel
7771981ae6 (Backport) Introduce EntitySpawnExtension (#160)
* Introduce EntitySpawnExtension

* Add to mixins

* Update common/src/main/java/dev/architectury/extensions/network/EntitySpawnExtension.java

* Update common/src/main/java/dev/architectury/networking/NetworkManager.java

Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>
2021-12-31 23:18:28 +01:00
Max
4b468a2b70 Backport of #154 and #172 to 1.17
Contains the following changes:
- Explicitly add `remap=true` to fix mixin failing in prod (#172)
- @Redirect workaround for closing #152 (#154)

Co-authored-by: shedaniel <daniel@shedaniel.me>
Co-authored-by: Mitchell Skaggs <skaggsm333@gmail.com>

Signed-off-by: Max <maxh2709@gmail.com>
2021-12-31 18:41:34 +01:00
Mitchell Skaggs
2169738b58 Fix LVTs (#167)
* Fix ServerGamePacketListenerImpl

Closes #165, closes #166

* Fix MixinGameRenderer by giving it an explicit ordering

The Fabric API mixin uses the default priority of 1000, so we use 1100 priority to apply before it. This results in this bytecode structure, where "F" is the Fabric API injections, "A" is the Architectury API injections, and "M" is the Minecraft function being injected pre/post: `FAMAF`.

* Fix MixinPhantomSpawner captures

* Fix MixinPatrolSpawner captures

* Fix MixinChunkSerializer captures
2021-12-27 16:42:36 +08:00
Max
7604846cd3 Fix MixinFallingBlockEntity on 1.17, closes #164
Signed-off-by: Max <maxh2709@gmail.com>
2021-12-27 00:48:29 +01:00
Max
5284b7cdd7 Add fabricloader and Fabric API to fmj depends on 1.17 (#151)
Signed-off-by: Max <maxh2709@gmail.com>
2021-12-26 23:34:18 +01:00
shedaniel
09835da2de Add LifecycleEvent.SETUP for manipulating things after normal init (#148)
* Add LifecycleEvent.SETUP for manipulating things after normal initialization

* Improve javadocs

* Fix broken english

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

Co-authored-by: BasiqueEvangelist <basiqueevangelist@yandex.ru>
2021-12-26 20:15:51 +01:00
shedaniel
499a95f7e6 Move EnvExecutor executions to another class 2021-12-23 17:50:07 +08:00
shedaniel
55375ae875 Try to guard against NoClassDefFoundError for #158 2021-12-23 17:20:01 +08:00
shedaniel
ae4ebbb736 Add ClientReloadShadersEvent (#149) 2021-12-20 03:39:17 +01:00
Ivan Molodetskikh
83a4ca436e ScreenInputDelegate: Call MOUSE_DRAGGED_POST correctly
It was erroneously calling the PRE event twice.
2021-12-18 17:04:30 +08:00
shedaniel
3d8fbda68b 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:13:12 +08:00
shedaniel
7d721c8521 Add Registries#forRegistry and delay getting forge mod event bus (#82) 2021-11-27 00:18:55 +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
f636b1ad96 Switch to gradle components 2021-10-13 22:08:53 +08:00
Juuxel
404db2782a Update deps in fabric.mod.json (#141) 2021-10-11 13:59:02 +08:00
davidalb97
ad35504c21 Fixed PlayerAttackInvoker mixing loading crash on server side (#137)
Signed-off-by: apple <davidalb97@hotmail.com>
2021-10-01 05:22:09 +08:00
shedaniel
c3ffa8d976 Update to Loom 0.10.0 and add Mixins 2021-09-22 23:03:07 +08:00
shedaniel
88dbf04c9b Implement item properties (#132) 2021-08-30 02:56:33 +08:00
Leo40Git
32a44239ea Add tool interaction recipe hooks 2021-08-11 12:14:26 +03:00
shedaniel
74069d1bb0 Should be fine now, right? 2021-08-02 03:05:41 +08:00
shedaniel
bf34031711 WIP Forge port 2021-07-29 23:03:06 +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
shedaniel
734a310c98 Make ColorHandlers wildcard, fix #114
Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-07-01 19:23:39 +02:00
shedaniel
15ffb25551 Wrapper for BlockEntityType.Builder (#115)
Signed-off-by: shedaniel <daniel@shedaniel.me>

Co-authored-by: Max <maxh2709@gmail.com>
2021-07-01 18:38:16 +02:00
Leo40Git
f6649ae398 Particle Provider API (#110)
Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-06-27 14:08:54 +08:00
shedaniel
f05b795c6b Fix #111
Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-06-26 00:07:26 +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
4635479058 Fix shedaniel/RoughlyEnoughItems#566
Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-06-22 16:13:02 +08:00
shedaniel
d1e8d82ddb Publish the sources properly
Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-06-20 20:35:42 +08:00
shedaniel
9f1809ce33 Merge remote-tracking branch 'architectury/1.17' into 1.17 2021-06-14 15:17:14 +08:00
shedaniel
a3ef9705b9 Guard against unregistered fluid renderers
Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-06-14 15:15:12 +08:00
Max
cccdb141f2 Bump Mixin Java Level 2021-06-10 13:30:20 +00:00
shedaniel
56ebb43da4 1.17
Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-06-09 00:49:14 +08:00
shedaniel
08fa6f05b6 Fix BiomeModifications phases on fabric
Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-05-31 19:52:33 +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
53cc9133e4 Merge remote-tracking branch 'architectury/1.16' into 1.17 2021-05-20 23:14:47 +08:00
shedaniel
d0972fbe57 Fix CF Publish
Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-05-20 23:14:37 +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
canitzp
98e06736ee Fix TradeRegistryImpl throwing an AssertionError at runtime (#87) 2021-05-17 22:16:00 +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
d2952b0462 Merge remote-tracking branch 'architectury/1.16' into 1.17
# Conflicts:
#	common/src/main/java/me/shedaniel/architectury/event/events/ChatEvent.java
#	common/src/main/java/me/shedaniel/architectury/registry/BlockEntityRenderers.java
#	common/src/main/java/me/shedaniel/architectury/utils/Fraction.java
#	fabric/src/main/java/me/shedaniel/architectury/registry/fabric/BlockEntityRenderersImpl.java
#	gradle.properties
2021-05-14 19:22:33 +08:00
shedaniel
c675bf6625 Adds EntityAttributes (#83)
* Adds EntityAttributes

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

* Switch to ConcurrentHashMap

Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-05-13 13:13:40 +08:00
shedaniel
cfef5f28b7 Allow being more flexible in registering
Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-05-12 15:05:04 +08:00