public static Sprite CreateDog( Vector2 location, Texture2D texture, Vector2 velocity, float rotation) { Sprite sprite = new Sprite("sprite", location, texture, SpriteCreators.spriteSourceRectangles["rover00"], velocity, BodyType.Dynamic, false); //FarseerPhysics.Common.Vertices verts = new FarseerPhysics.Common.Vertices(); Fixture bodyfixture = FixtureFactory.AttachRectangle(ConvertUnits.ToSimUnits(sprite.BoundingBoxRect.Width), ConvertUnits.ToSimUnits(sprite.BoundingBoxRect.Height), 1, Vector2.Zero, sprite.PhysicsBody); bodyfixture.Restitution = 1; bodyfixture.Friction = 1; SpriteCreators.AddFrames(sprite, "rover", 12); sprite.Rotation = rotation; return(sprite); }
public static Sprite CreateCat( Vector2 location, Texture2D texture, Vector2 velocity, float rotation) { Sprite sprite = new Sprite("sprite", location, texture, SpriteCreators.spriteSourceRectangles["cat00"], velocity, BodyType.Dynamic, true); SpriteCreators.AddFrames(sprite, "cat", 10); /* * for (int i = 1; i <= 10; i++) * { * string key = "cat" + i.ToString().PadLeft(2, '0'); * sprite.AddFrame(SpriteCreators.spriteSourceRectangles[key]); * } */ sprite.Rotation = rotation; return(sprite); }
public static Sprite CreatePlane(Vector2 location, Texture2D texture, Vector2 velocity, float rotation) { Sprite sprite = new Sprite("sprite", location, texture, SpriteCreators.spriteSourceRectangles["plane00"], velocity, BodyType.Static, false); //sprite.FrameTime = 0.06f; SpriteCreators.AddFrames(sprite, "plane", 3); sprite.Rotation = rotation; return(sprite); }
public static Sprite CreateSun(Vector2 location, Texture2D texture, Vector2 velocity, float rotation) { Sprite sprite = new Sprite("sprite", location, texture, SpriteCreators.spriteSourceRectangles["sun00"], velocity, BodyType.Static, true); sprite.PhysicsBody.CollidesWith = Category.None; sprite.FrameTime = 0.06f; SpriteCreators.AddFrames(sprite, "sun", 4); sprite.Rotation = rotation; return(sprite); }
public static Sprite CreateDog( Vector2 location, Texture2D texture, Vector2 velocity, float rotation) { Sprite sprite = new Sprite("sprite", location, texture, SpriteCreators.spriteSourceRectangles["rover00"], velocity, BodyType.Dynamic, false); //FarseerPhysics.Common.Vertices verts = new FarseerPhysics.Common.Vertices(); SpriteCreators.AddFrames(sprite, "rover", 12); sprite.Rotation = rotation; //option 1 with two fixtures //rects //45, 16, 153, 114 //0, 60, 45, 70 //sprite.PhysicsBodyFixture = FixtureFactory.AttachRectangle(ConvertUnits.ToSimUnits(153), ConvertUnits.ToSimUnits(114), 1, ConvertUnits.ToSimUnits(new Vector2(45, 16)), sprite.PhysicsBody); //sprite.PhysicsBodyFixture = FixtureFactory.AttachRectangle(ConvertUnits.ToSimUnits(45), ConvertUnits.ToSimUnits(70), 1, ConvertUnits.ToSimUnits(new Vector2(0, 60)), sprite.PhysicsBody); //option 2 with one fixture //rects //16, 12, 175, 125 sprite.PhysicsBodyFixture = FixtureFactory.AttachRectangle(ConvertUnits.ToSimUnits(175), ConvertUnits.ToSimUnits(100), 10, ConvertUnits.ToSimUnits(new Vector2(16, 12)), sprite.PhysicsBody); sprite.PhysicsBodyFixture.Friction = 15f; sprite.PhysicsBodyFixture.OnCollision += new OnCollisionEventHandler(sprite.HandleCollision); sprite.PhysicsBody.Mass = 30f; return(sprite); }
public static Sprite CreateCat( Vector2 location, Texture2D texture, Vector2 velocity, float rotation) { Sprite sprite = new Sprite("sprite", location, texture, SpriteCreators.spriteSourceRectangles["cat00"], velocity, BodyType.Dynamic, false); SpriteCreators.AddFrames(sprite, "cat", 10); sprite.Frame = rand.Next(0, 10); /* * for (int i = 1; i <= 10; i++) * { * string key = "cat" + i.ToString().PadLeft(2, '0'); * sprite.AddFrame(SpriteCreators.spriteSourceRectangles[key]); * } */ sprite.Rotation = rotation; //rects //9, 19, 95, 111 sprite.PhysicsBodyFixture = FixtureFactory.AttachRectangle(ConvertUnits.ToSimUnits(95), ConvertUnits.ToSimUnits(100), 1, ConvertUnits.ToSimUnits(new Vector2(9, 10)), sprite.PhysicsBody); sprite.PhysicsBodyFixture.OnCollision += new OnCollisionEventHandler(sprite.HandleCollision); return(sprite); }