private void Init() { darkSprite = CreateChild <UguiSprite>("dark", 0); { darkSprite.Anchor = AnchorType.Fill; darkSprite.Offset = new Offset(0f, MenuBarHeight, 0f, 0f); darkSprite.Color = new Color(0f, 0f, 0f, 0.5f); closeTrigger = darkSprite.CreateChild <UguiTrigger>("close", 0); { closeTrigger.Anchor = AnchorType.Fill; closeTrigger.RawSize = Vector2.zero; closeTrigger.OnPointerDown += () => { OverlayNavigator.Hide(this); }; } container = darkSprite.CreateChild <UguiTrigger>("container", 1); { container.OnPointerEnter += () => { outAni?.Stop(); hoverAni?.PlayFromStart(); }; container.OnPointerExit += () => { hoverAni?.Stop(); outAni?.PlayFromStart(); }; if (UseGlow) { glowSprite = container.CreateChild <UguiSprite>("glow", -1); { glowSprite.Anchor = AnchorType.Fill; glowSprite.Offset = new Offset(-15f); glowSprite.SpriteName = "glow-square-32"; glowSprite.ImageType = Image.Type.Sliced; glowSprite.Color = Color.black; } } } } if (UseGlow) { hoverAni = new Anime(); hoverAni.AnimateColor(color => glowSprite.Color = color) .AddTime(0f, () => glowSprite.Color) .AddTime(0.25f, Color.gray) .Build(); outAni = new Anime(); outAni.AnimateColor(color => glowSprite.Color = color) .AddTime(0f, () => glowSprite.Color) .AddTime(0.25f, Color.black) .Build(); } }