public static LinkedSubmarine CreateDummy(Submarine mainSub, XElement element, Vector2 position) { LinkedSubmarine sl = new LinkedSubmarine(mainSub); sl.GenerateWallVertices(element); sl.Rect = new Rectangle( (int)sl.wallVertices.Min(v => v.X + position.X), (int)sl.wallVertices.Max(v => v.Y + position.Y), (int)sl.wallVertices.Max(v => v.X + position.X), (int)sl.wallVertices.Min(v => v.Y + position.Y)); sl.rect = new Rectangle((int)position.X, (int)position.Y, 1, 1); return(sl); }
public static LinkedSubmarine CreateDummy(Submarine mainSub, XElement element, Vector2 position) { LinkedSubmarine sl = new LinkedSubmarine(mainSub); sl.GenerateWallVertices(element); if (sl.wallVertices.Any()) { sl.Rect = new Rectangle( (int)sl.wallVertices.Min(v => v.X + position.X), (int)sl.wallVertices.Max(v => v.Y + position.Y), (int)sl.wallVertices.Max(v => v.X + position.X), (int)sl.wallVertices.Min(v => v.Y + position.Y)); int width = sl.rect.Width - sl.rect.X; int height = sl.rect.Y - sl.rect.Height; sl.Rect = new Rectangle((int)(position.X - width / 2), (int)(position.Y + height / 2), width, height); } else { sl.Rect = new Rectangle((int)position.X, (int)position.Y, 10, 10); } return(sl); }