public ItemTile(Vector2 p, float l, ItemTileType t) { this.tile = texture = Game1.content.Load<Texture2D>("Sprites/kenney_32x32"); this.Position = p; layer = l; type = t; if (t == ItemTileType.Blank) rect = new Rectangle(0, 0, 1, 1); else if (t == ItemTileType.Block) rect = new Rectangle(1473, 702, 32, 32); // rect = new Rectangle(290, 160, 32, 32); //rect = new Rectangle(12, 0, 32, 32); else if (t == ItemTileType.BlockC) rect = new Rectangle(1473, 734, 32, 32); else if (t == ItemTileType.DarkBrick) rect = new Rectangle(1824, 512, 32, 32); //Set rigidbody behaivior here rigidbody = BodyFactory.CreateRectangle(Game1.world, ConvertUnits.ToSimUnits(rect.Width), ConvertUnits.ToSimUnits(rect.Height), 1.0f, ConvertUnits.ToSimUnits(Position)); //default 1:64 ratio 1 meter = 64 pixel rigidbody.BodyType = BodyType.Kinematic; rigidbody.UserData = (string)"Tile"; rigidbody.Restitution = 0f; // No bounciness rigidbody.Friction = 1f; rigidbody.CollisionCategories = Category.Cat4; // <- cat4 is floor cat LoadBlock(p); }
public ItemTile(Vector2 p, float l, ItemTileType t) { this.tile = texture = Game1.content.Load <Texture2D>("Sprites/kenney_32x32"); this.Position = p; layer = l; type = t; if (t == ItemTileType.Blank) { rect = new Rectangle(0, 0, 1, 1); } else if (t == ItemTileType.Block) { rect = new Rectangle(1473, 702, 32, 32); } // rect = new Rectangle(290, 160, 32, 32); //rect = new Rectangle(12, 0, 32, 32); else if (t == ItemTileType.BlockC) { rect = new Rectangle(1473, 734, 32, 32); } else if (t == ItemTileType.DarkBrick) { rect = new Rectangle(1824, 512, 32, 32); } //Set rigidbody behaivior here rigidbody = BodyFactory.CreateRectangle(Game1.world, ConvertUnits.ToSimUnits(rect.Width), ConvertUnits.ToSimUnits(rect.Height), 1.0f, ConvertUnits.ToSimUnits(Position)); //default 1:64 ratio 1 meter = 64 pixel rigidbody.BodyType = BodyType.Kinematic; rigidbody.UserData = (string)"Tile"; rigidbody.Restitution = 0f; // No bounciness rigidbody.Friction = 1f; rigidbody.CollisionCategories = Category.Cat4; // <- cat4 is floor cat LoadBlock(p); }