Exemplo n.º 1
0
 public PhysicsComponent(Entity rootEntity)
 {
     root       = rootEntity;
     bodyType   = PhysicBodyType.Static;
     collider2D = new Collider();
     collider2D.ColliderType = Collider2DType.Box;
     collider2D.Size         = new Point(1, 1);
     direction = Vector2.Zero;
     velocity  = 0f;
     isTrigger = false;
 }
Exemplo n.º 2
0
        /// <summary>
        /// Creates a Sprite
        /// </summary>
        /// <param name="name">Sprite Name.</param>
        /// <param name="x">X position.</param>
        /// <param name="y">Y posisition.</param>
        /// <param name="fileName">Sprite filename.</param>
        /// <param name="isKinematic">Physic IsKinetic Sprite Parameter.</param>
        /// <param name="mass">Physic Mass Sprite Parameter.</param>
        /// <returns></returns>
        private Entity CreateSquareSprite(string name, int x, int y, string fileName, PhysicBodyType bodyType, float mass)
        {
            Entity sprite = new Entity(name)
                            .AddComponent(new Transform2D()
            {
                X = x, Y = y, Origin = Vector2.Center
            })
                            .AddComponent(new RectangleCollider())
                            .AddComponent(new Sprite(fileName))
                            .AddComponent(new RigidBody2D()
            {
                PhysicBodyType = bodyType
            })
                            .AddComponent(new SpriteRenderer(DefaultLayers.Alpha));

            if (mass != -1)
            {
                sprite.FindComponent <RigidBody2D>().Mass = mass;
            }

            return(sprite);
        }
Exemplo n.º 3
0
        /// <summary>
        /// Creates a Sprite
        /// </summary>
        /// <param name="name">Sprite Name.</param>
        /// <param name="x">X position.</param>
        /// <param name="y">Y posisition.</param>
        /// <param name="fileName">Sprite filename.</param>
        /// <param name="isKinematic">Physic IsKinetic Sprite Parameter.</param>
        /// <param name="mass">Physic Mass Sprite Parameter.</param>
        /// <returns></returns>
        private Entity CreateSquareSprite(string name, int x, int y, string fileName, PhysicBodyType bodyType, float mass)
        {
            Entity sprite = new Entity(name)
                .AddComponent(new Transform2D() { X = x, Y = y, Origin = Vector2.Center })
                .AddComponent(new RectangleCollider())
                .AddComponent(new Sprite(fileName))
                .AddComponent(new RigidBody2D() { PhysicBodyType = bodyType })
                .AddComponent(new SpriteRenderer(DefaultLayers.Alpha));

            if (mass != -1)
            {
                sprite.FindComponent<RigidBody2D>().Mass = mass;
            }

            return sprite;
        }