void OnMarioInstanceVsLucky_blockListCollisionOccurred(Super_Marios_Bros.Entities.Mario first, Entities.Lucky_block second)
        {
            Console.WriteLine("Collsion occured");
            bool wasPushedDown = first.AxisAlignedRectangleInstance.LastMoveCollisionReposition.Y < 0;

            if (wasPushedDown)
            {
                bool hasDestroyedBlock = false;
                Console.WriteLine("was pushed down true");
                for (int i = 0; i < Lucky_blockList.Count; i++)
                {
                    if (Lucky_blockList[i].AxisAlignedRectangleInstance.CollideAgainst(first.CollisionThing) && Lucky_blockList[i].Used3 == false)
                    {
                        Console.WriteLine("Collided");
                        if (Lucky_blockList[i].HasPilzInIt && Lucky_blockList[i].Used3 == false)
                        {
                            var mushroom = Factories.MushroomFactory.CreateNew();
                            mushroom.X        = Lucky_blockList[i].X;
                            mushroom.Y        = Lucky_blockList[i].Y + 17;
                            hasDestroyedBlock = true;
                        }
                        if (Lucky_blockList[i].HasPilzInIt == false && !Lucky_blockList[i].Used3)
                        {
                            PassonClass.Coins += 1;
                        }
                        Lucky_blockList[i].HandleHit();
                        break;
                    }
                }
                if (!hasDestroyedBlock)
                {
                    // New code:
                    Console.WriteLine("The other way");
                    if (second.HasPilzInIt == true && second.Used3 == false)
                    {
                        var mushroom = Factories.MushroomFactory.CreateNew();
                        mushroom.X = second.X;
                        mushroom.Y = second.Y + 17;
                    }
                    if (!second.HasPilzInIt && !second.Used3)
                    {
                        PassonClass.Coins += 1;
                    }
                    second.HandleHit();
                }
            }
        }
 void OnMarioInstanceVsLucky_blockListCollisionOccurredTunnel(Super_Marios_Bros.Entities.Mario first, Entities.Lucky_block second)
 {
     if (this.MarioInstanceVsLucky_blockListCollisionOccurred != null)
     {
         MarioInstanceVsLucky_blockListCollisionOccurred(first, second);
     }
 }