private void MouseGroundLevel(MouseEventArgs e, int RealX, int RealY) { if (e.Button == MouseButtons.Left) { if (SelectionChoice == SelectionChoices.Move) { LayerViewer.SelectedPolygonTriangle.Move(e.X - MouseEventOld.X, e.Y - MouseEventOld.Y); } } else { LayerViewer.SelectedPolygonTriangle = null; SelectionChoice = SelectionChoices.None; if (LayerViewer.SelectedPolygonTriangle == null) { for (int V = 0; V < ActiveLayer.GroundLevelCollision.ArrayVertex.Length; V++) { if (RealX >= ActiveLayer.GroundLevelCollision.ArrayVertex[V].X - 2 && RealX <= ActiveLayer.GroundLevelCollision.ArrayVertex[V].X + 2 && RealY >= ActiveLayer.GroundLevelCollision.ArrayVertex[V].Y - 2 && RealY <= ActiveLayer.GroundLevelCollision.ArrayVertex[V].Y + 2) { LayerViewer.SelectedPolygonTriangle = PolygonTriangle.VertexSelection(ActiveLayer.GroundLevelCollision, V); SelectionChoice = SelectionChoices.Move; break; } } } if (Control.ModifierKeys == Keys.Control && LayerViewer.SelectedPolygonTriangle != null) { LayerViewer.SelectedPolygonTriangle.SelectionType = PolygonTriangle.SelectionTypes.Polygon; } } }