public FinishLayer(Player winner, OnExitCallback exitCallback)
        {
            this.exitCallback = exitCallback;
            domain            = new Domain();
            camera            = new Camera(domain);

            { // Fade
                var entity = new Entity(domain);
                entity.AddComponent(new Transform());
                entity.AddComponent(new Sprite(Assets.Textures.SQUARE, 1280, 720, new Color(0.0f, 0.0f, 0.0f, 0.5f)));
            }

            // Chat layout
            var scroll = new Entity(domain);

            scroll.AddComponent(new Transform(0, 0));
            scroll.AddComponent(new Sprite(Assets.Textures.Chat, 300, 250));

            EntityUtility.CreateMessage(domain, $"{winner.Name} wins!", 0, -40, 30);
            EntityUtility.CreateMessage(domain, $"Press 'enter' to return to lobby", 0, 10, 14);

            domain.Clean();
        }
Esempio n. 2
0
        protected override void OnExitComplete()
        {
            OnExitCallback.InvokeGracefully(this);

            gameObject.Inactive();
        }