コード例 #1
0
ファイル: Button.cs プロジェクト: HaKDMoDz/EntityEngineV4
        public Button(Node parent, string name, Vector2 position, Vector2 bounds, RGBColor color)
            : base(parent, name)
        {
            Body.Position = position;
            Body.Bounds = bounds;

            //Make our rectangles
            _bodyImage = new ShapeTypes.Rectangle(this, "BodyImage", true);
            _bodyImage.LinkDependency(ShapeTypes.Rectangle.DEPENDENCY_BODY, Body);
            _bodyImage.Color = color;
        }
コード例 #2
0
ファイル: SimpleBar.cs プロジェクト: HaKDMoDz/EntityEngineV4
        public SimpleBar(Node parent, string name, Body body)
            : base(parent, name)
        {
            _bgBarBody = body;
            _fgBarBody = new Body(this, "FGBarBody");

            _fgBarBody.X = body.X;
            _fgBarBody.Y = body.Y;
            _fgBarBody.Height = body.Height;
            _fgBarBody.Width = body.Width;

            _fgBar = new ShapeTypes.Rectangle(this, "FGBar", true);
            _fgBar.LinkDependency(ShapeTypes.Rectangle.DEPENDENCY_BODY, _fgBarBody);

            _bgBar = new ShapeTypes.Rectangle(this, "BGBar", true);
            _bgBar.LinkDependency(ShapeTypes.Rectangle.DEPENDENCY_BODY, _bgBarBody);
        }
コード例 #3
0
            public ParticleNode(Node parent, string name)
                : base(parent, name)
            {
                Body = new Body(this, "Body");
                Body.Width = 10;
                Body.Height = 10;
                Body.Y = OffsetY;

                Physics = new Physics(this, "Physics");
                Physics.LinkDependency(Physics.DEPENDENCY_BODY, Body);

                Render = new ShapeTypes.Rectangle(this, "Render", true);
                Render.LinkDependency(ShapeTypes.Rectangle.DEPENDENCY_BODY, Body);
                Render.Color = Color.OrangeRed;

                _emitter = new ParticleEmitter(this, "Emitter");
                _emitter.LinkDependency(ParticleEmitter.DEPENDENCY_BODY, Body);
            }
コード例 #4
0
ファイル: TextButton.cs プロジェクト: HaKDMoDz/EntityEngineV4
        public TextButton(Node parent, string name, Vector2 position, RGBColor color)
            : base(parent, name)
        {
            Body.Position = position;

            _textBody = new Body(this, "TextBody");
            TextRender = new TextRender(this, "Render", Assets.Font, "");
            TextRender.LinkDependency(TextRender.DEPENDENCY_BODY, _textBody);
            TextRender.Layer = .9f;

            //Start setting up Render's body
            _textBody.Bounds = TextRender.Bounds;
            Body.Bounds = TextRender.Bounds + Spacing;

            _textBody.Position = new Vector2(Body.Position.X + Body.Bounds.X / 2 - _textBody.Bounds.X / 2,
                Body.Position.Y + Body.Bounds.Y / 2 - _textBody.Bounds.Y / 2);

            //Make our rectangles
            _bodyImage = new ShapeTypes.Rectangle(this, "BodyImage", true);
            _bodyImage.LinkDependency(ShapeTypes.Rectangle.DEPENDENCY_BODY, Body);
            _bodyImage.Color = color;
        }
コード例 #5
0
                public TrailParticle(Node parent, int ttl)
                    : base(parent, ttl)
                {
                    Body = new Body(this, "Body");
                    Body.Origin = new Vector2(.5f, .5f);

                    Physics = new Physics(this, "Physics");
                    Physics.LinkDependency(Physics.DEPENDENCY_BODY, Body);

                    Render = new ShapeTypes.Rectangle(this, "Render", true);
                    Render.LinkDependency(ShapeTypes.Rectangle.DEPENDENCY_BODY, Body);
                    Render.Color = Color.OrangeRed;

                    DeathTimer.LastEvent += () => Destroy();
                }
コード例 #6
0
            public AABBTester(Node parent, string name, float width = 20, float height = 20)
                : base(parent, name)
            {
                AABB = new AABB(this, "AABB");
                AABB.LinkDependency(AABB.DEPENDENCY_BODY, Body);
                AABB.LinkDependency(AABB.DEPENDENCY_COLLISION, Collision);

                Body.Width = width;
                Body.Height = height;

                Render = new ShapeTypes.Rectangle(this, "Render", true);
                Render.LinkDependency(ImageRender.DEPENDENCY_BODY, Body);
                Body.Origin = new Vector2(.5f); //Half of a pixel since that is the size of the brush.

                Collision.LinkDependency(Collision.DEPENDENCY_SHAPE, AABB);
            }
コード例 #7
0
                    public TestSpawn(Node parent)
                        : base(parent, 2000)
                    {
                        Body = new Body(this, "Body");
                        Body.Origin = new Vector2(.5f, .5f);

                        Physics = new Physics(this, "Physics");
                        Physics.LinkDependency(Physics.DEPENDENCY_BODY, Body);

                        RectRender = new ShapeTypes.Rectangle(this, "RectRender", RandomHelper.RandomBool());
                        RectRender.LinkDependency(ShapeTypes.Rectangle.DEPENDENCY_BODY, Body);

                        RectRender.Thickness = 1;
                        Render = RectRender;
                        FadeAge = 1000;

                        DeathTimer.LastEvent += Recycle;
                    }
コード例 #8
0
            public SpinningRect(Node parent, string name, float x, float y, float width, float height, bool fill = false, float thickness = 3)
                : base(parent, name)
            {
                Body.X = x;
                Body.Y = y;
                Body.Width = width;
                Body.Height = height;
                Body.Origin = new Vector2(.5f / thickness, .5f / thickness);

                Rectangle = new ShapeTypes.Rectangle(this, "Rectangle", fill);
                Rectangle.LinkDependency(ShapeTypes.Rectangle.DEPENDENCY_BODY, Body);

                //Rectangle.Origin = fill ? new Vector2(Body.Width / 2f, Body.Height / 2f) : new Vector2(.5f, .5f);
                Rectangle.Thickness = thickness;
                Rectangle.Debug = false;
            }