public Texture(string name, string displayName, Sprite sprite, Bitmap image, Vector2 position, DrawManager.ImagePosition orientation) { Sprite = sprite; DisplayName = displayName; Position = position; Orientation = orientation; Image = image; Name = name; Type = ObjectType.Texture; }
public static Vector2 getTexturePosition(this Texture texture, DrawManager.ImagePosition overrideOrientation = DrawManager.ImagePosition.Default) { Vector2 Position = texture.Position; DrawManager.ImagePosition orientation = (overrideOrientation == DrawManager.ImagePosition.Default) ? texture.Orientation : overrideOrientation; switch (orientation) { case DrawManager.ImagePosition.TopLeft: //no change break; case DrawManager.ImagePosition.TopCenter: Position -= new Vector2(texture.Image.Width / 2, 0); break; case DrawManager.ImagePosition.TopRight: Position -= new Vector2(texture.Image.Width, 0); break; case DrawManager.ImagePosition.MiddleLeft: Position -= new Vector2(0, texture.Image.Height / 2); break; case DrawManager.ImagePosition.Center: Position -= new Vector2(texture.Image.Width / 2, texture.Image.Height / 2); break; case DrawManager.ImagePosition.MiddleRight: Position -= new Vector2(texture.Image.Width, texture.Image.Height / 2); break; case DrawManager.ImagePosition.BottomLeft: Position -= new Vector2(0, texture.Image.Height); break; case DrawManager.ImagePosition.BottomCenter: Position -= new Vector2(texture.Image.Width / 2, texture.Image.Height); break; case DrawManager.ImagePosition.BottomRight: Position -= new Vector2(texture.Image.Width, texture.Image.Height); break; } if (overrideOrientation != DrawManager.ImagePosition.Default) { return(Position - (Position - texture.getTexturePosition())); } return(Position); }