-
Notifications
You must be signed in to change notification settings - Fork 121
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
ActionDiffs are not being networking correctly when an action is consumed #443
Comments
have this fixed by #480? |
Nope; the problem is not with the the problem is that consumed actions are immediately marked as JustReleased, and then become Personally I have a solution that creates action diffs for Maybe another solution would be to have a |
yeah, I'll also take a look when I have some time, mostly because my holiday is ending soon (Chinese New Year and Lantern Festival). I'd like to get some work done on #483 first. |
Yes I don't think it's a priority, especially because the system is not added in the plugin itself so users can just use it for reference but roll out their own implementation |
Version
The release number or commit hash of the version you're using.
What you did
In my
Update
schedule, I have something like:and in
PreUpdate
, I generateActionDiffs
using the diff-generation system afterInputSystemSet::Update
.However I don't get any diffs for the action that was consumed.
My understanding is that the flow is this:
pressed
consumed
(consumed=true
andstate=JustReleased
)JustReleased
toReleased
...
consumed=false
.state=Released
and notJustReleased
because the button was already marked asReleased
. The diff-generation system only networksJustReleased
events, so I never get the information that the key was released.What you expected to happen
The release of the button is networked, either when the button is consumed, or when I actually released the key.
What actually happened
Nothing is networked.
Potential solutions:
I could try to be more clever in where I use the diff-generation system (maybe run it once before
InputSystem::Tick
as well so that the consumed action is still JustReleasedMaybe when a key was consumed, we still trigger a
JustReleased
when the actual key isReleased
.(so
release()
would be something like:release
diff for every action that is consumed, even if it's not aJustRelease
. We could get potentially a lot of duplicateRelease
ActionDiffs
, but it's a good short-term solutionThe text was updated successfully, but these errors were encountered: