-
-
Notifications
You must be signed in to change notification settings - Fork 81
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Entity Events module #42
Conversation
...ntity/entity-events/src/main/java/org/quiltmc/qsl/entity/api/event/EntityKilledCallback.java
Outdated
Show resolved
Hide resolved
...ry/entity/entity-events/src/main/java/org/quiltmc/qsl/entity/api/event/EntityLoadEvents.java
Outdated
Show resolved
Hide resolved
.../entity/entity-events/src/main/java/org/quiltmc/qsl/entity/api/event/EntityTickCallback.java
Outdated
Show resolved
Hide resolved
...y/entity/entity-events/src/main/java/org/quiltmc/qsl/entity/api/event/TryReviveCallback.java
Outdated
Show resolved
Hide resolved
.../entity/entity-events/src/main/java/org/quiltmc/qsl/entity/api/event/EntityTickCallback.java
Outdated
Show resolved
Hide resolved
...ry/entity/entity-events/src/main/java/org/quiltmc/qsl/entity/api/event/EntityLoadEvents.java
Outdated
Show resolved
Hide resolved
...y/entity/entity-events/src/main/java/org/quiltmc/qsl/entity/api/event/TryReviveCallback.java
Outdated
Show resolved
Hide resolved
marking as ready for review just for hacktoberfest, sorry :( |
Could you add events for copying player data on respawn and travel from end? |
Going to rebase onto 1.18 and force push. |
...ry/entity/entity-events/src/main/java/org/quiltmc/qsl/entity/api/event/EntityLoadEvents.java
Outdated
Show resolved
Hide resolved
...ry/entity/entity-events/src/main/java/org/quiltmc/qsl/entity/api/event/EntityLoadEvents.java
Outdated
Show resolved
Hide resolved
...ry/entity/entity-events/src/main/java/org/quiltmc/qsl/entity/api/event/EntityLoadEvents.java
Outdated
Show resolved
Hide resolved
...ry/entity/entity-events/src/main/java/org/quiltmc/qsl/entity/api/event/EntityLoadEvents.java
Outdated
Show resolved
Hide resolved
.../entity/entity-events/src/main/java/org/quiltmc/qsl/entity/api/event/EntityReviveEvents.java
Outdated
Show resolved
Hide resolved
.../entity/entity-events/src/main/java/org/quiltmc/qsl/entity/api/event/EntityReviveEvents.java
Outdated
Show resolved
Hide resolved
Not sure why checks are failing, they're passing locally |
@BasiqueEvangelist added ServerPlayerEntityCopyCallback (name subject to change because that's quite long) - does this fit what you'd need? |
This seems to fit all common use cases, so yes. |
...ty-events/src/main/java/org/quiltmc/qsl/entity/api/event/ServerPlayerEntityCopyCallback.java
Outdated
Show resolved
Hide resolved
is this API still WIP? |
There are a couple more events to be added, but I think I'd be happy to merge these existing ones as-is. (with the caveat that I'd like someone to have a look at the the tryrevive events and see if they can be done with the event phase system, which I'm having trouble wrapping my head around) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some of those events could be AwareListeners to allow them to be used in entrypoints.
Package also seems to be wrong: https://github.com/QuiltMC/quilt-standard-libraries/blob/1.18/CONTRIBUTING.md#packages
...ntity/entity-events/src/main/java/org/quiltmc/qsl/entity/api/event/EntityKilledCallback.java
Outdated
Show resolved
Hide resolved
.../entity/entity-events/src/main/java/org/quiltmc/qsl/entity/api/event/EntityReviveEvents.java
Outdated
Show resolved
Hide resolved
.../entity/entity-events/src/main/java/org/quiltmc/qsl/entity/api/event/EntityReviveEvents.java
Outdated
Show resolved
Hide resolved
...ity-events/src/main/java/org/quiltmc/qsl/entity/api/event/client/ClientEntityLoadEvents.java
Outdated
Show resolved
Hide resolved
...ity-events/src/main/java/org/quiltmc/qsl/entity/api/event/client/ClientEntityLoadEvents.java
Outdated
Show resolved
Hide resolved
library/entity/entity-events/src/main/resources/fabric.mod.json
Outdated
Show resolved
Hide resolved
library/entity/entity-events/src/main/resources/fabric.mod.json
Outdated
Show resolved
Hide resolved
...y/entity/entity-events/src/testmod/java/org/quiltmc/qsl/entity/test/EntityEventsTestMod.java
Outdated
Show resolved
Hide resolved
...tity/entity_events/src/main/java/org/quiltmc/qsl/entity_events/api/EntityKilledCallback.java
Outdated
Show resolved
Hide resolved
...entity/entity_events/src/main/java/org/quiltmc/qsl/entity_events/api/EntityReviveEvents.java
Outdated
Show resolved
Hide resolved
...entity/entity_events/src/main/java/org/quiltmc/qsl/entity_events/api/EntityReviveEvents.java
Outdated
Show resolved
Hide resolved
...y_events/src/main/java/org/quiltmc/qsl/entity_events/api/ServerPlayerEntityCopyCallback.java
Outdated
Show resolved
Hide resolved
...entity_events/src/main/java/org/quiltmc/qsl/entity_events/mixin/ServerPlayerEntityMixin.java
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We're almost there! With the Checkstyle clean-ups, I could spot few potential problems
...y/entity_events/src/main/java/org/quiltmc/qsl/entity_events/api/EntityWorldChangeEvents.java
Outdated
Show resolved
Hide resolved
...y/entity_events/src/main/java/org/quiltmc/qsl/entity_events/api/EntityWorldChangeEvents.java
Outdated
Show resolved
Hide resolved
...y/entity_events/src/main/java/org/quiltmc/qsl/entity_events/api/EntityWorldChangeEvents.java
Outdated
Show resolved
Hide resolved
...entity_events/src/main/java/org/quiltmc/qsl/entity_events/api/LivingEntityDeathCallback.java
Outdated
Show resolved
Hide resolved
...y_events/src/main/java/org/quiltmc/qsl/entity_events/api/ServerPlayerEntityCopyCallback.java
Outdated
Show resolved
Hide resolved
…ity_events/api/ServerPlayerEntityCopyCallback.java Co-authored-by: Ennui Langeweile <85590273+EnnuiL@users.noreply.github.com>
…ity_events/api/LivingEntityDeathCallback.java Co-authored-by: Ennui Langeweile <85590273+EnnuiL@users.noreply.github.com>
All addressed I think - maybe this'll get merged before its birthday! :P |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have a final barrage of nitpicks
...y/entity_events/src/main/java/org/quiltmc/qsl/entity_events/api/EntityWorldChangeEvents.java
Outdated
Show resolved
Hide resolved
...y/entity_events/src/main/java/org/quiltmc/qsl/entity_events/api/EntityWorldChangeEvents.java
Outdated
Show resolved
Hide resolved
...y/entity_events/src/main/java/org/quiltmc/qsl/entity_events/api/EntityWorldChangeEvents.java
Outdated
Show resolved
Hide resolved
...entity/entity_events/src/main/java/org/quiltmc/qsl/entity_events/api/EntityReviveEvents.java
Outdated
Show resolved
Hide resolved
...entity/entity_events/src/main/java/org/quiltmc/qsl/entity_events/api/EntityReviveEvents.java
Outdated
Show resolved
Hide resolved
…ity_events/api/EntityReviveEvents.java Co-authored-by: Ennui Langeweile <85590273+EnnuiL@users.noreply.github.com>
…ity_events/api/EntityWorldChangeEvents.java Co-authored-by: Ennui Langeweile <85590273+EnnuiL@users.noreply.github.com>
…ity_events/api/EntityWorldChangeEvents.java Co-authored-by: Ennui Langeweile <85590273+EnnuiL@users.noreply.github.com>
…ity_events/api/EntityReviveEvents.java Co-authored-by: Ennui Langeweile <85590273+EnnuiL@users.noreply.github.com>
…ity_events/api/EntityWorldChangeEvents.java Co-authored-by: Ennui Langeweile <85590273+EnnuiL@users.noreply.github.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
After months of work, I believe that this is finally ready!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actually, no, I have a final objection
...entity/entity_events/src/main/java/org/quiltmc/qsl/entity_events/api/EntityReviveEvents.java
Outdated
Show resolved
Hide resolved
…ity_events/api/EntityReviveEvents.java Co-authored-by: Ennui Langeweile <85590273+EnnuiL@users.noreply.github.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For such a large number of events, its surprising how few mixins are needed
This PR adds:
entity
(as described in RFC #9)entity_events
The events included are:
EntityKilledCallback
, with similar purpose to Fabric'sAfterKilledOtherEntity
.TryReviveCallback
- theAllowDeathEvent
I wrote for FAPI was merged in a state I was unhappy with. This is closer to how I imagined it.EntityWorldChangedEvents
- unchanged from FAPI'sServerEntityWorldChangedEvents
, other than name.EntityLoadEvents
, two events for when entities are loaded and unloaded on the server.ClientEntityLoadEvents
, ditto but for the client.ServerPlayerEntityCopyCallback
, for copying data after player respawn.There is certainly space for more events.