using System; using System.Threading; using Cysharp.Threading.Tasks; using PrimeTween; using UnityEngine; using UnityEngine.UIElements; namespace DanieleMarotta.RiversongCodeShowcase { [UIView("title-screen")] public class TitleScreenUIView : UIView { private VisualElement _fader; private VisualElement _logo; private VisualElement _panel; private Button _startGameButton; private Label _versionLabel; private CancellationTokenSource _animationCancellation; public event Action StartGame; public override UniTask InitializeAsync(UIService uiService, VisualElement rootElement) { base.InitializeAsync(uiService, rootElement); _fader = rootElement.Q(className: "title-screen__fader"); _logo = rootElement.Q(className: "title-screen__logo-image"); _panel = rootElement.Q(className: "dialog"); _startGameButton = rootElement.Q