Commit Graph

154 Commits

Author SHA1 Message Date
Max
5d276f04ed [ci skip] Some cleanup for Platform class and other platform-specific stuff (#201)
* Ensure paths returned by Platform are absolute, add javadocs to Platform

Signed-off-by: Max <maxh2709@gmail.com>

* Use putIfAbsent for event buses to clean up some minor nastyness

Signed-off-by: Max <maxh2709@gmail.com>

* Remove explicit NotNull annotation
2022-02-19 00:48:21 +08:00
shedaniel
c7d7ce5129 Support loader 0.13.0 2022-02-01 23:46:45 +08:00
Max
c8470cc109 Update buildscripts and license headers
Signed-off-by: Max <maxh2709@gmail.com>
2022-01-01 00:14:02 +01:00
shedaniel
9913b1ea5d (Backport) Introduce EntitySpawnExtension (#160)
Signed-off-by: Max <maxh2709@gmail.com>
2021-12-31 23:46:02 +01:00
Max
c68a637975 Backport of #154 and #172 to 1.16
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:52:27 +01:00
Max
71041f688c (Try to) fix LVTs, backport of #167 2021-12-29 23:07:07 +01:00
davidalb97
4d8303f749 Backported #137 PR to 1.16 fabric:
Fixed PlayerAttackInvoker mixing loading crash on server side (#137)

Signed-off-by: apple <davidalb97@hotmail.com>
2021-12-27 18:55:43 +01:00
shedaniel
d6644b78d0 Backport #148 (LifecycleEvent.SETUP) to 1.16
* 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>
Signed-off-by: Max <maxh2709@gmail.com>
2021-12-27 18:52:05 +01:00
Max
037442c77b Add fabricloader and Fabric API to fmj depends (#151)
Signed-off-by: Max <maxh2709@gmail.com>
2021-12-26 23:33:31 +01:00
shedaniel
cb42c935c0 Move EnvExecutor executions to another class 2021-12-23 17:52:07 +08:00
shedaniel
62c985db3f Try to guard against NoClassDefFoundError for #158 2021-12-23 17:21:47 +08:00
Ivan Molodetskikh
2e2ecc366d ScreenInputDelegate: Call MOUSE_DRAGGED_POST correctly
It was erroneously calling the PRE event twice.
2021-12-18 17:05:37 +08:00
shedaniel
5e338b40da Update to Loom 0.10 2021-12-09 01:40:05 +08:00
shedaniel
0a64ecda1d 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-09 01:34:31 +08:00
shedaniel
b0a80e0c73 Add Registries#forRegistry and delay getting forge mod event bus (#82)
* Add forRegistry

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

* Update gradle.properties
2021-11-26 01:58:29 +08:00
shedaniel
6b2506d1fd 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:44:16 +08:00
lythowastaken
0fcbf40c7f Feature/villager trades (#122)
* Add modify and removing for villager trades

- Add mixin for villager trades
- Add methods to register modify and removing
- Implement base for VillagerMixin to provide additional villager data
- Basic Access & Mixin change
- Add AT and AW
- Add overriding for max offers a villager or the wanderer can have

* Add rare check for wandering trader

* Remove todo comment

* rename some methods

* Solve reviews for #122

Move non api stuff into TradeRegistryData
Rename fields in MerchantOfferAccess
Move trade stuff into internal package
Mark internal trade classes as ApiStatus.Internal

* Minor refactors (discussed on Discord)

* Add doc for AbstractVillagerMixin

* Reformat code

* Update gradle.properties

Co-authored-by: Max <maxh2709@gmail.com>
2021-09-17 16:36:12 +02:00
shedaniel
1c2468735f Implement item properties 2021-08-24 04:16:50 +08:00
Leo40Git
98395b6735 Add tool interaction hooks (#128)
Co-authored-by: shedaniel <daniel@shedaniel.me>
2021-08-24 03:28:18 +08:00
shedaniel
9a5de11b59 Switch to MethodHandlers to avoid wrapping exceptions with InvocationTargetException due to reflection 2021-08-06 17:18:00 +08:00
shedaniel
5e0091e533 Merge remote-tracking branch 'Leo40Git/feature/food-props' into 1.16
Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-07-04 18:36:29 +08:00
Leo40Git
f019deb815 Testmod
Restore variance
2021-07-01 15:52:49 +03:00
Leo40Git
b644d103fa Forge implementation 2021-07-01 15:16:23 +03:00
Leo40Git
b7c5a106c1 Repackaging and such 2021-07-01 15:13:49 +03:00
Leo40Git
62dbfbd3b9 oops, forgot license 2021-07-01 15:06:29 +03:00
Leo40Git
1d10df6bb3 Make Fabric impl way simpler
Yeet NonNull annotations
2021-07-01 15:06:26 +03:00
Leo40Git
b682f3d9b7 Allow adding supplied effects to FoodProperties 2021-07-01 15:06:13 +03:00
shedaniel
790dafb0b5 Make ColorHandlers wildcard, fix #114
Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-07-01 03:00:40 +08:00
Max
f9b04fc040 Merge pull request #110 from ModsByLeo/features/particle-factory
Particle Provider API
2021-06-27 02:18:06 +02:00
shedaniel
a22077a825 Fix #111
Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-06-26 00:06:26 +08:00
shedaniel
9f8140fdec Some changes
- Migrate from ParticleFactories to ParticleProviderRegistry (We are not yarn)
- Format Code

Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-06-25 18:57:31 +03:00
Leo40Git
2c16f7ac09 Requested changes
PendingParticleProvider -> DeferredParticleProvider
parameter constructor -> provider
2021-06-25 15:06:26 +03:00
Leo40Git
81b0cc5821 Particle Factory API (closes architectury#93) 2021-06-20 17:30:32 +03:00
shedaniel
867764c200 Guard against unregistered fluid renderers
Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-06-14 15:19:27 +08:00
shedaniel
c26b24a697 Fix BiomeModifications phases on fabric
Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-05-31 19:50:40 +08:00
canitzp
371925b28d 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>
2021-05-27 19:34:50 +02:00
canitzp
582ededddd 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>
2021-05-27 01:03:20 +02:00
shedaniel
d0972fbe57 Fix CF Publish
Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-05-20 23:14:37 +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
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
shedaniel
2eef26f632 Add FuelRegistry (#81)
* Add FuelRegistry

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

* Fix compilation

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

* Remove redundant generic

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

* Change to MinecraftForge.EVENT_BUS

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

* A few docs, and switch to returning 0 for non-fuels

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

* Bump to 1.13
2021-05-12 13:43:03 +08:00
shedaniel
8de2c936b5 Fixes CME with Platform#getMod
Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-05-08 19:21:10 +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
27addc91d9 Close #39 2021-04-10 20:13:19 +08:00
Max
28d986a3cc Add EntityHooks.fromCollision to retrieve an entity from block collision (#64) 2021-03-21 20:20:25 +01:00