private void SetMeterPosition(IScreen screen) { //update the meter position var position = TransitionObject.Position(screen, Rect); Meter.Position = new Rectangle(position.X, position.Y, Meter.Position.Width, Meter.Position.Height); }
public IEnumerator FinishTransition() { for (var elapsed = 0.0f; elapsed < CurrentTransition.DurationIn; elapsed += Time.unscaledDeltaTime) { CurrentTransition.TransitionIn(elapsed); yield return(null); } TransitionObject.SetActive(false); CurrentTransition.End(); CurrentTransition = null; }
protected Vector2 TextPosition(IScreen screen) { //get the draw position switch (Horizontal) { case HorizontalAlignment.Left: { return(TransitionObject.Position(screen.Transition, new Point(Rect.X, Rect.Y))); } case HorizontalAlignment.Center: { return(TransitionObject.Position(screen.Transition, new Point(Rect.Center.X, Rect.Y))); } default: { return(TransitionObject.Position(screen.Transition, new Point(Rect.Right, Rect.Y))); } } }
public IEnumerator StartTransition(Transition transition) { while (CurrentTransition) { yield return(null); } CurrentTransition = transition; CurrentTransition.Start(); MeshFilter.mesh = transition.GetMesh() ?? _defaultQuad; Renderer.material.shader = transition.GetShader() ?? _defaultShader; Renderer.material.mainTexture = transition.GetTexture() ?? _defaultTexture; TransitionObject.SetActive(true); for (var elapsed = 0.0f; elapsed < CurrentTransition.DurationOut; elapsed += Time.unscaledDeltaTime) { CurrentTransition.TransitionOut(elapsed); yield return(null); } }
/// <summary> /// Get teh position to draw this widget /// </summary> /// <returns></returns> protected virtual Point DrawPosition(IScreen screen) { //take the transition position into account return(TransitionObject.Position(screen.Transition, Rect)); }