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

Replace MoveIntoWorld with ReturnToCell/AssociateWithAirfield. #17235

Merged
merged 3 commits into from Oct 17, 2019

Conversation

@pchote
Copy link
Member

pchote commented Oct 15, 2019

This PR reworks the problematic part of #16938 and the subsequent workarounds.

The specific changes and motivations are:

  • MoveIntoWorld is renamed to ReturnToCell, making it clearer that the actual purpose of this activity is to visually move the CenterPosition to match the already defined Location and ToSubCell. A recalculateSubCell argument allows the subcell calculation to be explicitly deferred until the activity runs. These changes resolve my complaints about the activity relying on undefined state, without throwing the baby out with the bathwater.
  • ReturnToCell is now only queued as a creation activity if CenterPositionInit is defined. This saves us from queuing the activity when it isn't needed, and provides a cleaner fix for #17184 than #17187 did.
  • Transport exits for scripted/initial cargo is now managed by the Passenger trait: ReturnToCell is now queued on idle actors when they are inserted into the transport, which fixes actors that are loaded into the transport (either through Lua or a custom trait) at some point after their initial creation.
  • Aircraft-airfield association is decoupled from ReturnToCell/MoveIntoWorld - this is a creation activity, not a positioning one.

Supersedes #17218.

This should hopefully cover all our current issues and workarounds (except for #17209 and the paradrop issue #17223 fixes), but I may have missed some details while tweaking and testing.

@pchote pchote added this to the Next Release milestone Oct 15, 2019
@pchote pchote changed the title Replace MoveIntoWorld with ReturnToLocation/AssociateWithAirfield. Replace MoveIntoWorld with ReturnToCell/AssociateWithAirfield. Oct 15, 2019
@pchote pchote force-pushed the pchote:return-to-cell branch from d62456e to 30e0d60 Oct 15, 2019
Copy link
Contributor

matjaeck left a comment

LGTM.

@abcdefg30 abcdefg30 merged commit ae34410 into OpenRA:bleed Oct 17, 2019
2 checks passed
2 checks passed
continuous-integration/appveyor/pr AppVeyor build succeeded
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
@abcdefg30

This comment has been minimized.

Copy link
Member

abcdefg30 commented Oct 17, 2019

Changelog

Only two commits since fa1ca98 wasn't picked to prep:
b4b4412
e4602f8

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.