// Missiles launched from the chemical's helicopter...
if ((HelicoScale < 6) && (!Chars[61]->Dead ()) && (!GamePause))
{
   MissileLaunch--;

   if (((MissileLaunch % 30) == 0) && ((MissileLaunch / 30) < Difficulty) &&
       ((MissileLaunch / 30) < 6))
   {
      i = MissileLaunch / 30;
      int rnd = (rnd + 1) % 6;
      while (Chars[72 + rnd]->Dead ())
         rnd = (rnd + 1) % 6;
      if ((Chars[72 + rnd]->Coordinate ().x > 343) &&
          (Chars[72 + rnd]->Coordinate ().x < 538))
      {
         point put = Chars[72 + rnd]->Coordinate ();
         Chars[81 + i]->Set_Location (put.x, put.y);
         Chars[81 + i]->StartAction (0, ~rnd & 1);
      }
   }
   if (MissileLaunch == 0)
      MissileLaunch = MisLnchTime[Difficulty];
}

if (HelicoScale == 8)
{
   HelicoScale = 9;

   point pio = Chars[61]->Coordinate ();    // Time for the pilot
   Chars[79]->Set_Location (pio.x, pio.y);  // to appear...
   AddAttach (Chars[79], Chars[61], 0,0);
   Chars[79]->SetDepth (7);
   Chars[79]->StartAction (0, 0);
}

if (NightVision == 1)
{
   bkgnd[0].BuildDestClut (2);
   for (i = 17; i < 55; i++)
      Chars[i]->BuildDestClut (2);
   for (i = 87; i < 95; i++)
      Chars[i]->BuildDestClut (2);
   NightVision = 2;
}
else if (NightVision == 3)
{
   bkgnd[0].BuildDestClut (3);
   for (i = 17; i < 55; i++)
      Chars[i]->BuildDestClut (3);
   for (i = 87; i < 95; i++)
      Chars[i]->BuildDestClut (3);
   NightVision = 4;
}
else if (NightVision == 5)
   NightVision = 6;
else if (NightVision == 7)
{
   bkgnd[0].BuildDestClut (4);
   for (i = 17; i < 55; i++)
      Chars[i]->BuildDestClut (4);
   for (i = 87; i < 95; i++)
      Chars[i]->BuildDestClut (4);
   NightVision = 8;
}

if (FrameCounter == 2840)
{
   bkgnd[0].BuildDestClut (1);
   for (i = 17; i < 55; i++)
      Chars[i]->BuildDestClut (1);
   for (i = 87; i < 95; i++)
      Chars[i]->BuildDestClut (1);
   NightVision = 5;
   Chars[80]->Clear ();
}

if (NightVisionCnt == 300)
{
   Chars[80]->SetDepth (14);
   Chars[80]->Set_Location (160, 120);
   Chars[80]->StartAction (0, 0);
}
if (NightVisionCnt)
{
   if (VSync (-1) & 16)
   {
      FontCenterOn (160, 150);
      SetFontColor (1);
      Print ("NIGHT VISION");
   }
   NightVisionCnt--;
}

//-------------------------------------
point frok = Chars[87]->Coordinate ();      // 1st tank
if ((frok.x == 67) && (Chars[91]->HasBeenShot ()))
{
   Chars[87]->Move (-1, 0);
   Chars[87]->StopAction ();
}

frok = Chars[89]->Coordinate ();            // 2nd tank
if ((frok.x == 210) && (Chars[93]->HasBeenShot ()))
{
   Chars[89]->Move (-1, 0);
   Chars[89]->StopAction ();
}

frok = Chars[88]->Coordinate ();            // 3rd tank
if ((frok.x == 600) && (Chars[92]->HasBeenShot ()))
{
   Chars[88]->Move (1, 0);
   Chars[88]->StopAction ();
}

frok = Chars[90]->Coordinate ();            // 4rd tank
if ((frok.x == 600) && (Chars[94]->HasBeenShot ()))
{
   Chars[90]->Move (1, 0);
   Chars[90]->StopAction ();
}
