Skip to content
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

Make VisualMove uninterruptible by making Turn a Child of Drag. #16852

Merged
merged 1 commit into from Aug 4, 2019

Conversation

@tovl
Copy link
Contributor

commented Jul 27, 2019

Fixes #16826.

IMove.MoveIntoWorld is queued as a child by Enter when Enter gets cancelled. If it then gets cancelled again while the unit is still turning, Enter exits immediately while still off-grid because Turn is an interruptible activity (unlike Drag). This can cause units to teleport when a move order is given twice while entering a transport or deploy inside a transport when a deploy order is given twice while entering.

This PR solves the issue by making the Turn inside IMove.VisualMove a childactivity of Drag.

@pchote pchote added this to the Next Release milestone Jul 28, 2019

@teinarss teinarss merged commit 8c7ff3b into OpenRA:bleed Aug 4, 2019

2 checks passed

continuous-integration/appveyor/pr AppVeyor build succeeded
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
4 participants
You can’t perform that action at this time.