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

Planes don't trigger idle notifications #16197

Open
pchote opened this Issue Feb 11, 2019 · 2 comments

Comments

Projects
None yet
2 participants
@pchote
Copy link
Member

pchote commented Feb 11, 2019

Regression from #15848.

We saw one major regression from this with #16092, but #16028 correctly points out that this is also an issue for missions that would like to use Trigger.OnIdle from Lua.

INotifyBecomingIdle is triggered from Actor.Tick, which is guaranteed to run before ITick.Tick. We should therefore be able to replace the implementation in Aircraft with an if (self.IsIdle) OnBecomingIdle(self); check at the start of its Tick. This will make sure it only runs if no other trait responds to the notification. It may be necessary to queue it as ActivityUtils.RunActivity to avoid a one-tick pause.

INotifyIdle.TickIdle can be called either from FlyCircle or from Aircraft if self.CurrentActivity is FlyCircle. Note that we will need to be careful to avoid activity loops with ReturnOnIdle.

@pchote pchote added the Regression label Feb 11, 2019

@pchote pchote added this to the Next Release milestone Feb 11, 2019

@pchote

This comment has been minimized.

Copy link
Member Author

pchote commented Feb 11, 2019

On second thought, this is way too risky to put in a final playtest, so lets push this to Next + 1.

@GraionDilach

This comment has been minimized.

Copy link
Contributor

GraionDilach commented Feb 11, 2019

Isn't this a duplicate of #15948?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment