protected override IAnime CreateShowAnime(IDependencyContainer dependencies) { var anime = new Anime(); anime.AnimateFloat(a => darkSprite.Alpha = a) .AddTime(0f, 0f) .AddTime(2f, 1f) .AddTime(2.5f, 1f) .Build(); anime.AddEvent(anime.Duration, () => model.Quit()); return(anime); }
public IAnime GetDefaultScreenHide(INavigationView screen) { IAnime anime = new Anime(); anime.AnimateVector3((scale) => screen.Scale = scale) .AddTime(0f, Vector3.one, EaseType.QuartEaseOut) .AddTime(0.35f, new Vector3(3f, 3f, 1f)) .Build(); anime.AnimateFloat((alpha) => screen.Alpha = alpha) .AddTime(0f, 1f, EaseType.CubicEaseOut) .AddTime(0.35f, 0f) .Build(); return(anime); }
private void Init(IColorPreset colorPreset) { backgroundSprite.Sprite = null; backgroundSprite.Anchor = AnchorType.BottomStretch; backgroundSprite.Y = 2f; backgroundSprite.Height = 4f; backgroundSprite.Alpha = 0.75f; hoverSprite.Offset = Offset.Zero; hoverSprite.Sprite = null; hoverSprite.Tint = Color.white; focusSprite.SpriteName = "glow-bar"; focusSprite.Anchor = AnchorType.BottomStretch; focusSprite.SetOffsetHorizontal(-15f); focusSprite.Y = 2f; focusSprite.Height = 34f; valueLabel.SetOffsetLeft(8f); placeholderLabel.SetOffsetLeft(8f); UseDefaultFocusAni(); hoverInAni = new Anime(); hoverInAni.AnimateFloat(a => hoverSprite.Alpha = a) .AddTime(0f, () => hoverSprite.Alpha) .AddTime(0.25f, 0.25f) .Build(); hoverOutAni = new Anime(); hoverOutAni.AnimateFloat(a => hoverSprite.Alpha = a) .AddTime(0f, () => hoverSprite.Alpha) .AddTime(0.25f, 0f) .Build(); focusAni.AnimateFloat((w) => focusSprite.Width = w) .AddTime(0f, () => focusSprite.Width) .AddTime(0.25f, () => Width + 30f) .Build(); unfocusAni.AnimateFloat((w) => focusSprite.Width = w) .AddTime(0f, () => focusSprite.Width) .AddTime(0.25f, 0f) .Build(); }
private void Init() { GameSession.OnSoftInit += OnSoftInit; GameSession.OnCompletion += OnCompletion; this.Color = new Color(); dimAni = new Anime(); dimAni.AnimateFloat(a => this.Alpha = a) .AddTime(0f, 0f) .AddTime(0.25f, () => GameConfiguration.BackgroundDim.Value) .Build(); brightenAni = new Anime(); brightenAni.AnimateFloat(a => this.Alpha = a) .AddTime(0f, () => GameConfiguration.BackgroundDim.Value) .AddTime(0.25f, 0f) .Build(); }
private void Init() { SpriteName = "glow-128"; IsRaycastTarget = false; Alpha = 0f; AddEffect(new AdditiveShaderEffect()); effectAni = new Anime() { StopMode = StopModeType.None }; effectAni.AnimateVector2(s => this.Size = s) .AddTime(0f, Vector2.zero, EaseType.CubicEaseOut) .AddTime(0.25f, () => new Vector2(targetWidth, 8000)) .Build(); effectAni.AnimateFloat(a => this.Alpha = a) .AddTime(0f, 1f, EaseType.QuadEaseIn) .AddTime(0.25f, 0f) .Build(); effectAni.AddEvent(effectAni.Duration, () => Recycler.Return(this)); }
public IEnumerator Test() { var dependencies = new DependencyContainer(); dependencies.CacheAs <IDependencyContainer>(dependencies); dependencies.CacheAs <IAtlas <Sprite> >(new ResourceSpriteAtlas()); var env = GraphicTestEnvironment.Create(); var root = env.CreateRoot(dependencies); var sprite = root.CreateChild <UguiSprite>("sprite"); sprite.Size = new Vector2(20f, 20f); var anime = new Anime(); anime.AnimateFloat(value => sprite.X = value) .AddTime(0f, 0f, Utils.EaseType.QuadEaseOut) .AddTime(1f, 200f, Utils.EaseType.Linear) .AddTime(2f, 200f, Utils.EaseType.QuadEaseOut) .AddTime(3f, 400f) .Build(); Assert.AreEqual(3f, anime.Duration, Delta); anime.AddEvent(0f, () => Debug.Log("Event 0")); anime.AddEvent(1f, () => Debug.Log("Event 1")); anime.AddEvent(2f, () => Debug.Log("Event 2")); anime.AddEvent(3f, () => Debug.Log("Event 3")); anime.AddEvent(4f, () => Debug.Log("Event 4")); Assert.AreEqual(4f, anime.Duration, Delta); while (env.IsRunning) { if (Input.GetKeyDown(KeyCode.Q)) { anime.Play(); Assert.IsTrue(anime.IsPlaying); } if (Input.GetKeyDown(KeyCode.W)) { anime.PlayFromStart(); Assert.IsTrue(anime.IsPlaying); } if (Input.GetKeyDown(KeyCode.E)) { anime.Pause(); Assert.IsFalse(anime.IsPlaying); } if (Input.GetKeyDown(KeyCode.R)) { anime.Stop(); Assert.IsFalse(anime.IsPlaying); } if (Input.GetKeyDown(KeyCode.BackQuote)) { anime.Seek(0f); Assert.AreEqual(0f, anime.Time, Delta); } if (Input.GetKeyDown(KeyCode.Alpha1)) { anime.Seek(1f); Assert.AreEqual(1f, anime.Time, Delta); } if (Input.GetKeyDown(KeyCode.Alpha2)) { anime.Seek(2f); Assert.AreEqual(2f, anime.Time, Delta); } if (Input.GetKeyDown(KeyCode.Alpha3)) { anime.Seek(3f); Assert.AreEqual(3f, anime.Time, Delta); } if (Input.GetKeyDown(KeyCode.Alpha4)) { anime.Seek(4f); Assert.AreEqual(4f, anime.Time, Delta); } if (Input.GetKeyDown(KeyCode.Equals)) { anime.Speed += 0.25f; } else if (Input.GetKeyDown(KeyCode.Minus)) { anime.Speed -= 0.25f; } if (Input.GetKeyDown(KeyCode.A)) { anime.WrapMode = WrapModeType.None; Debug.Log("Wrapmode set to none"); } if (Input.GetKeyDown(KeyCode.S)) { anime.WrapMode = WrapModeType.Reset; Debug.Log("Wrapmode set to reset"); } if (Input.GetKeyDown(KeyCode.D)) { anime.WrapMode = WrapModeType.Loop; Debug.Log("Wrapmode set to loop"); } if (Input.GetKeyDown(KeyCode.F)) { anime.StopMode = StopModeType.None; Debug.Log("Stopmode set to none"); } if (Input.GetKeyDown(KeyCode.G)) { anime.StopMode = StopModeType.Reset; Debug.Log("Stopmode set to reset"); } if (Input.GetKeyDown(KeyCode.H)) { anime.StopMode = StopModeType.End; Debug.Log("Stopmode set to end"); } yield return(null); } }
private void Init() { hoverSprite.Depth = 1; hoverSprite.Anchor = AnchorType.Fill; hoverSprite.RawSize = new Vector2(28f, 30f); hoverSprite.Color = Color.black; hoverSprite.SpriteName = "glow-parallel-64"; hoverSprite.ImageType = Image.Type.Sliced; hoverSprite.AddEffect(new FlipEffect()).Component.horizontal = true; mask = CreateChild <UguiSprite>("mask", 0); { mask.Anchor = AnchorType.Fill; mask.RawSize = Vector2.zero; mask.Color = HexColor.Create("2A313A"); mask.SpriteName = "parallel-64"; mask.ImageType = Image.Type.Sliced; mask.AddEffect(new MaskEffect()); mask.AddEffect(new FlipEffect()).Component.horizontal = true; imageDisplay = mask.CreateChild <MapImageDisplay>("imageDisplay", 0); { imageDisplay.Anchor = AnchorType.Fill; imageDisplay.RawSize = Vector2.zero; imageGradient = imageDisplay.CreateChild <UguiSprite>("gradient", 100); { imageGradient.Anchor = AnchorType.Fill; imageGradient.RawSize = Vector2.zero; imageGradient.SpriteName = "gradation-left"; imageGradient.Color = new Color(0f, 0f, 0f, 0.5f); } } progressBar = mask.CreateChild <UguiProgressBar>("progress", 1); { progressBar.Anchor = AnchorType.BottomStretch; progressBar.Pivot = PivotType.Bottom; progressBar.SetOffsetHorizontal(22f, 0f); progressBar.Height = 6f; progressBar.Y = 0f; progressBar.Background.Color = new Color(0f, 0f, 0f, 0.5f); progressBar.Foreground.SetOffsetTop(2f); } titleLabel = mask.CreateChild <Label>("title", 2); { titleLabel.Anchor = AnchorType.TopStretch; titleLabel.Pivot = PivotType.Top; titleLabel.SetOffsetHorizontal(20f, 32f); titleLabel.Y = -8f; titleLabel.Height = 30f; titleLabel.IsBold = true; titleLabel.FontSize = 22; titleLabel.Alignment = TextAnchor.UpperLeft; titleLabel.WrapText = true; var shadow = titleLabel.AddEffect(new ShadowEffect()).Component; shadow.style = ShadowStyle.Outline; shadow.effectDistance = Vector2.one; shadow.effectColor = new Color(0f, 0f, 0f, 0.5f); } artistLabel = mask.CreateChild <Label>("artist", 3); { artistLabel.Anchor = AnchorType.BottomStretch; artistLabel.Pivot = PivotType.Bottom; artistLabel.SetOffsetHorizontal(32f, 20f); artistLabel.Y = 8f; artistLabel.Height = 30f; artistLabel.Alignment = TextAnchor.LowerLeft; artistLabel.WrapText = true; var shadow = artistLabel.AddEffect(new ShadowEffect()).Component; shadow.style = ShadowStyle.Outline; shadow.effectDistance = Vector2.one; shadow.effectColor = new Color(0f, 0f, 0f, 0.5f); } } hoverInAni = new Anime(); hoverInAni.AnimateColor(color => hoverSprite.Color = color) .AddTime(0f, () => hoverSprite.Color) .AddTime(0.25f, () => MapSelection.Background.Value.Highlight) .Build(); hoverInAni.AnimateFloat(alpha => imageGradient.Alpha = alpha) .AddTime(0f, () => imageGradient.Alpha) .AddTime(0.25f, 0f) .Build(); hoverOutAni = new Anime(); hoverOutAni.AnimateColor(color => hoverSprite.Color = color) .AddTime(0f, () => hoverSprite.Color) .AddTime(0.25f, Color.black) .Build(); hoverOutAni.AnimateFloat(alpha => imageGradient.Alpha = alpha) .AddTime(0f, () => imageGradient.Alpha) .AddTime(0.25f, 0.5f) .Build(); OnEnableInited(); }