Example #1
0
        private static IControllerButton CreateButton(int index, float x, float y)
        {
            var defaultColor = new asd.Color(150, 150, 150);
            var hoverColor   = new asd.Color(255, 255, 255);
            //var holdColor =  new asd.Color(50, 50, 50);

            var stage_button = new asd.TextureObject2D();

            stage_button.Texture = asd.Engine.Graphics.CreateTexture2D($"Resources/stage{index}.png");

            var size       = new asd.Vector2DF(250.0f, 75.0f);
            var buttonArea = new asd.RectF(-size / 2.0f, size);

            var buttonObj =
                new asd.TextureObject2D()
            {
                Texture = asd.Engine.Graphics.CreateTexture2D($"Resources/stage{index}.png")

                ,
                Color = defaultColor

                ,
                CenterPosition = new asd.Vector2DF(stage_button.Texture.Size.X / 2.0f, stage_button.Texture.Size.Y / 2.0f)

                ,
                Position =
                    asd.Engine.WindowSize.To2DF() / 2.0f
                    + (new asd.Vector2DF(x, y))
            }
            ;

            var button =
                new ControllerButtonComponent
                <asd.TextureObject2D>("Button");

            //button.DefaultEvent += owner => { };
            //button.HoverEvent += owner => { };
            //button.HoldEvent += owner => { };
            button.OnEnteredEvent += owner => {
                Console.WriteLine("Button{0}: OnEntered", index);
                owner.Color = hoverColor;
            };
            button.OnPushedEvent += owner => {
                Console.WriteLine("Button{0}: OnPushed", index);
                asd.Engine.ChangeSceneWithTransition(new CharSelectScene(index), new asd.TransitionFade(1.0f, 1.0f));
                owner.Color = hoverColor;
            };
            button.OnReleasedEvent += owner => {
                Console.WriteLine("Button{0}: OnReleased", index);
                owner.Color = hoverColor;
            };
            button.OnExitedEvent += owner => {
                Console.WriteLine("Button{0}: OnExited", index);
                owner.Color = defaultColor;
            };

            buttonObj.AddComponent(button, button.Name);

            return(button);
        }
Example #2
0
        private static IControllerButton CreateButton(PlayerType type, float x, float y, List <PlayerType> list)
        {
            var defaultColor = new asd.Color(150, 150, 150);
            var hoverColor   = new asd.Color(255, 255, 255);
            //var holdColor =  new asd.Color(50, 50, 50);

            var stage_button = new asd.TextureObject2D();

            stage_button.Texture = asd.Engine.Graphics.CreateTexture2D($"Resources/{type.ToString()}Player.png");

            var size       = new asd.Vector2DF(250.0f, 75.0f);
            var buttonArea = new asd.RectF(-size / 2.0f, size);

            var buttonObj =
                new asd.TextureObject2D()
            {
                Texture = asd.Engine.Graphics.CreateTexture2D($"Resources/{type.ToString()}Player.png")

                ,
                Color = defaultColor

                ,
                CenterPosition = new asd.Vector2DF(stage_button.Texture.Size.X / 2.0f, stage_button.Texture.Size.Y / 2.0f)

                ,
                Position =
                    asd.Engine.WindowSize.To2DF() / 2.0f
                    + (new asd.Vector2DF(x, y))
            }
            ;

            var button =
                new ControllerButtonComponent
                <asd.TextureObject2D>("Button");

            //button.DefaultEvent += owner => { };
            //button.HoverEvent += owner => { };
            //button.HoldEvent += owner => { };
            button.OnEnteredEvent += owner => {
                owner.Color = hoverColor;
            };
            button.OnPushedEvent += owner => {
                //asd.Engine.ChangeSceneWithTransition(new GameScene(type, stage), new asd.TransitionFade(1.0f, 1.0f));
                list.Add(type);
                owner.Color = hoverColor;
            };
            button.OnReleasedEvent += owner => {
                owner.Color = hoverColor;
            };
            button.OnExitedEvent += owner => {
                owner.Color = defaultColor;
            };

            buttonObj.AddComponent(button, button.Name);

            return(button);
        }
        private static IControllerButton CreateButton(int index, float x, float y)
        {
            var defaultColor = new asd.Color(255, 255, 255);
            var hoverColor   = new asd.Color(150, 150, 150);
            var holdColor    = new asd.Color(50, 50, 50);

            var size       = new asd.Vector2DF(150.0f, 150.0f);
            var buttonArea = new asd.RectF(-size / 2.0f, size);

            var buttonObj =
                new asd.GeometryObject2D()
            {
                Shape = new asd.RectangleShape()
                {
                    DrawingArea = buttonArea
                }
                ,
                Color = defaultColor
                ,
                Position =
                    asd.Engine.WindowSize.To2DF() / 2.0f
                    + (new asd.Vector2DF(x, y))
            }
            ;

            var button =
                new ControllerButtonComponent
                <asd.GeometryObject2D>("Button");

            //button.DefaultEvent += owner => { };
            //button.HoverEvent += owner => { };
            //button.HoldEvent += owner => { };
            button.OnEnteredEvent += owner => {
                Console.WriteLine("Button{0}: OnEntered", index);
                owner.Color = hoverColor;
            };
            button.OnPushedEvent += owner => {
                Console.WriteLine("Button{0}: OnPushed", index);
                owner.Color = holdColor;
            };
            button.OnReleasedEvent += owner => {
                Console.WriteLine("Button{0}: OnReleased", index);
                owner.Color = hoverColor;
            };
            button.OnExitedEvent += owner => {
                Console.WriteLine("Button{0}: OnExited", index);
                owner.Color = defaultColor;
            };

            buttonObj.AddComponent(button, button.Name);

            return(button);
        }