public void Move(Directions direction)
{
switch(direction)
{
case Directions.North:
m_position = Vector2.Transform(m_position, Matrix.CreateTranslation(0, -1, 0));
break;
case Directions.Northeast:
m_position = Vector2.Transform(m_position, Matrix.CreateTranslation(1, -1, 0));
break;
case Directions.East:
m_position = Vector2.Transform(m_position, Matrix.CreateTranslation(1, 0, 0));
break;
case Directions.Northwest:
m_position = Vector2.Transform(m_position, Matrix.CreateTranslation(-1, -1, 0));
break;
case Directions.Southeast:
m_position = Vector2.Transform(m_position, Matrix.CreateTranslation(1, 1, 0));
break;
case Directions.South:
m_position = Vector2.Transform(m_position, Matrix.CreateTranslation(0, 1, 0));
break;
case Directions.Southwest:
m_position = Vector2.Transform(m_position, Matrix.CreateTranslation(-1, 1, 0));
break;
case Directions.West:
m_position = Vector2.Transform(m_position, Matrix.CreateTranslation(-1, 0, 0));
break;
}
m_player.Bounds = new System.Drawing.RectangleF(m_position.X, m_position.Y, 1, 1);
}