/// <summary> /// When the Fading In event is done, we remove the CameraFadeIn event and reset the fading effect parameters /// </summary> private void OnFadeInEnded(OnFadingInEndedEvent _) { Entities.ForEach((Entity e, ref CameraFadeParameters cameraFade) => { EntityManager.RemoveComponent <CameraFadeIn>(e); CameraFadeSystem.ResetParameters(ref cameraFade); }); }
/// <summary> /// When the Fading Out event is done, we remove the CameraFadeOut event and reset the fading effect parameters. /// If a FadeIn effect is requested as soon as we're done with the FadeOut effect, then we raise the new event with the override speed specified before. /// </summary> private void OnFadeOutEnded(OnFadingOutEndedEvent info) { Entities.ForEach((Entity e, ref CameraFadeParameters cameraFade) => { EntityManager.RemoveComponent <CameraFadeOut>(e); var overrideSpeed = cameraFade.FadingSpeed; CameraFadeSystem.ResetParameters(ref cameraFade); if (cameraFade.ShouldImmediatlyFadeIn) { new StartFadingInEvent(overrideSpeed); } cameraFade.ShouldImmediatlyFadeIn = false; }); }