public void altRemove()
 {
     RangeCircle r = new RangeCircle();
     r.CenterX = centerX;
     r.CenterY = centerY;
     r.TagVal = tagVal;
     window.addNewRange(r);
     window.addTagDefinition(tagVal);
     window.removeCircle(tagVal);
 }
 private void lockUnlock(object sender, RoutedEventArgs e)
 {
     for (int i = 0; i < window.squadGroups[window.getUnit(tagVal).SquadNo].Units.Count; i++)
     {
         if (!window.squadGroups[window.getUnit(tagVal).SquadNo].Units[i].Equals(window.getUnit(tagVal))){
             window.circles[window.squadGroups[window.getUnit(tagVal).SquadNo].Units[i].UnitID].altRemove();
             i--;
         }
     }
     window.getUnit(tagVal).FirstToMove = true;
     RangeCircle r = new RangeCircle();
     r.CenterX = centerX;
     r.CenterY = centerY;
     r.Width = window.getUnit(tagVal).MaxMove * 96;
     r.Height = window.getUnit(tagVal).MaxMove * 96;
     r.TagVal = tagVal;
     window.addNewRange(r);
     window.addTagDefinition(tagVal);
     window.removeCircle(tagVal);
 }
 /// <summary>
 /// Adds new cohesion circle to the canvas
 /// </summary>
 /// <param name="r">rangecircle to be added</param>
 public void addNewCohesion(RangeCircle r)
 {
     movementRangeCanvas.Children.Add(r);
     r.Window = this;
     Canvas.SetLeft(r, r.CenterX - 192);
     Canvas.SetTop(r, r.CenterY - 192);
     cohesions[r.TagVal] = r;
 }
 /// <summary>
 /// Adds the specified RangeCircle to the Range Circle Canvas
 /// </summary>
 /// <param name="r">Range Circle to be added</param>
 public void addNewRange(RangeCircle r)
 {
     movementRangeCanvas.Children.Add(r);
     r.Window = this;
     Canvas.SetLeft(r, r.CenterX - 300);
     Canvas.SetTop(r, r.CenterY - 300);
     ranges[r.TagVal] = r;
 }
 private void lockUnlock(object sender, RoutedEventArgs e)
 {
     Unit checkunit = window.getUnit(tagVal);
     Point here = this.Center;
     if (checkunit.IsInitialPlacement)
     {
         if (window.getUnit(tagVal).SquadNo != 1337)
         {
             if (window.SquadExists(window.getUnit(tagVal).SquadNo))
             {
                 if (window.checkCohesion(here, checkunit, window.getUnit(tagVal).SquadNo))
                 {
                     PlacedCircle newCircle = new PlacedCircle();
                     newCircle.TagVal = tagVal;
                     window.addNewCircle(this, newCircle, here);
                     window.removeTagDefinition(tagVal);
                     checkunit.IsInitialPlacement = false;
                     if (window.isFullUnitPlaced(window.getUnit(tagVal).SquadNo))
                     {
                         window.removeCohesionCircles(window.getUnit(tagVal).SquadNo);
                     }
                     else
                     {
                         RangeCircle r = new RangeCircle();
                         r.CenterX = here.X;
                         r.CenterY = here.Y;
                         r.VisibleCircle.Fill = Brushes.Red;
                         r.VisibleCircle.Width = 384;
                         r.VisibleCircle.Height = 384;
                         r.TagVal = tagVal;
                         window.addNewCohesion(r);
                     }
                 }
                 else
                 {
                     window.FlashWarning(tagVal);
                 }
             }
             else
             {
                 PlacedCircle newCircle = new PlacedCircle();
                 newCircle.TagVal = tagVal;
                 window.addNewCircle(this, newCircle, here);
                 window.removeTagDefinition(tagVal);
                 checkunit.IsInitialPlacement = false;
                 RangeCircle r = new RangeCircle();
                 r.CenterX = here.X;
                 r.CenterY = here.Y;
                 r.VisibleCircle.Fill = Brushes.Red;
                 r.VisibleCircle.Width = 384;
                 r.VisibleCircle.Height = 384;
                 r.TagVal = tagVal;
                 window.addNewCohesion(r);
             }
         }
         else
         {
             PlacedCircle newCircle = new PlacedCircle();
             newCircle.TagVal = tagVal;
             window.addNewCircle(this, newCircle, here);
             window.removeTagDefinition(tagVal);
             checkunit.IsInitialPlacement = false;
         }
     }
     else
     {
         if (window.getUnit(tagVal).SquadNo != 1337)
         {
             if (window.getUnit(tagVal).FirstToMove)
             {
                 if (window.isWithinRange(tagVal, here))
                 {
                     PlacedCircle newCircle = new PlacedCircle();
                     newCircle.TagVal = tagVal;
                     window.addNewCircle(this, newCircle, here);
                     window.removeTagDefinition(tagVal);
                     window.removeRange(tagVal);
                     RangeCircle r = new RangeCircle();
                     r.CenterX = here.X;
                     r.CenterY = here.Y;
                     r.VisibleCircle.Fill = Brushes.Red;
                     r.VisibleCircle.Width = 384;
                     r.VisibleCircle.Height = 384;
                     r.TagVal = tagVal;
                     window.addNewCohesion(r);
                 }
                 else
                 {
                     window.FlashWarning(tagVal);
                 }
             }
             else
             {
                 if ((window.isWithinRange(tagVal, here)) && (window.checkCohesion(here, window.getUnit(tagVal), window.getUnit(tagVal).SquadNo)))
                 {
                     PlacedCircle newCircle = new PlacedCircle();
                     newCircle.TagVal = tagVal;
                     window.addNewCircle(this, newCircle, here);
                     window.removeTagDefinition(tagVal);
                     window.removeRange(tagVal);
                     if (!window.isFullUnitPlaced(window.getUnit(tagVal).SquadNo))
                     {
                         window.removeCohesionCircles(window.getUnit(tagVal).SquadNo);
                     }
                     else
                     {
                         RangeCircle r = new RangeCircle();
                         r.CenterX = here.X;
                         r.CenterY = here.Y;
                         r.VisibleCircle.Fill = Brushes.Red;
                         r.VisibleCircle.Width = 384;
                         r.VisibleCircle.Height = 384;
                         r.TagVal = tagVal;
                         window.addNewCohesion(r);
                     }
                 }
                 else
                 {
                     window.FlashWarning(tagVal);
                 }
             }
         }
         else
         {
             if (window.isWithinRange(tagVal, here))
             {
                 PlacedCircle newCircle = new PlacedCircle();
                 newCircle.TagVal = tagVal;
                 window.addNewCircle(this, newCircle, here);
                 window.removeTagDefinition(tagVal);
                 window.removeRange(tagVal);
             }
             else
             {
                 window.FlashWarning(tagVal);
             }
         }
     }
 }