Example #1
0
        public override void Update(GameTime gt)
        {
            if ((Mouse.LeftMouseDown || Mouse.RightMouseDown) && Mouse.CanPress)
            {
                Point coords = GetCoordinates(Mouse.Position);

                if (Mouse.LeftMouseDown)
                {
                    if (SpotExists(coords))
                    {
                        foreach (int[] pair in Spots)
                        {
                            if (pair[0] == coords.X && pair[1] == coords.Y)
                            {
                                Spots.Remove(pair);

                                break;
                            }
                        }
                    }
                    else
                    {
                        Spots.Add(new int[2] {
                            coords.X, coords.Y
                        });
                    }

                    Console.WriteLine("\n=========================================\nNew Spots:");
                    Spots.ForEach(x => Console.WriteLine("\t\t\t\tnew int[] { " + x[0] + ", " + x[1] + " },"));
                }
                else
                {
                    if (SpotExists(coords))
                    {
                        if (ObstacleExists(coords.X, coords.Y))
                        {
                            foreach (int[] pair in Obstacles)
                            {
                                if (pair[0] == coords.X && pair[1] == coords.Y)
                                {
                                    Obstacles.Remove(pair);

                                    break;
                                }
                            }
                        }
                        else
                        {
                            Obstacles.Add(new int[2] {
                                coords.X, coords.Y
                            });
                        }

                        Console.WriteLine("\n=========================================\nNew Obstacles:");
                        Obstacles.ForEach(x => Console.WriteLine("\t\t\t\tnew int[] { " + x[0] + ", " + x[1] + " },"));
                    }
                }
            }
        }
Example #2
0
 public void AfterClone(Program source, bool fullClone = true)
 {
     Parent   = source.Parent;
     UniqueID = Guid.NewGuid();
     Spots.ForEach(spot =>
     {
         spot.AfterClone(source.Spots.First(sourceSpot => sourceSpot.Date == spot.Date), fullClone);
         spot.Parent = this;
     });
 }
Example #3
0
        public void Dispose()
        {
            Spots.ForEach(s => s.Dispose());
            Spots.Clear();

            Logo?.Dispose();
            Logo = null;

            Parent = null;
        }