//-------------------------------------------------------------------
//
//  This code is copyright 2001 by G5 Software.
//  Any unauthorized usage, either in part or in whole of this code
//  is strictly prohibited. Violators WILL be prosecuted to the
//  maximum extent allowed by law.
//
//-------------------------------------------------------------------

class CDifficultyLevel
{
  float GetHelicopterHP()
  {
    int DifficultyLevel = Core_CallFunction(
        SOID_GameMenu,
        "GetDifficultyLevel"
      );

    if (0 == DifficultyLevel)
      return 7500.0;
    else
    if (1 == DifficultyLevel)
      return 5000.0;
    else
    if (2 == DifficultyLevel)
      return 2500.0;
    else
    if (3 == DifficultyLevel)
      return 1000.0;

    Core_LogWarning("Invalid difficulty level " + DifficultyLevel);
    return 2500.0;
  }

  float GetCollisionDamageFactor()
  {
    int DifficultyLevel = Core_CallFunction(
        SOID_GameMenu,
        "GetDifficultyLevel"
      );

    if (0 == DifficultyLevel)
      return 0.0;
    else
    if (1 == DifficultyLevel)
      return 0.5;
    else
    if (2 == DifficultyLevel)
      return 1.0;
    else
    if (3 == DifficultyLevel)
      return 2.0;

    Core_LogWarning("Invalid difficulty level " + DifficultyLevel);
    return 2500.0;
  }

  int GetS8MissileQuantity()
  {
    int DifficultyLevel = Core_CallFunction(
        SOID_GameMenu,
        "GetDifficultyLevel"
      );

    if (0 == DifficultyLevel)
      return 40;
    else
    if (1 == DifficultyLevel)
      return 30;
    else
    if (2 == DifficultyLevel)
      return 20;
    else
    if (3 == DifficultyLevel)
      return 10;

    Core_LogWarning("Invalid difficulty level " + DifficultyLevel);
    return 20;
  }

  int GetVikhrMissileQuantity()
  {
    int DifficultyLevel = Core_CallFunction(
        SOID_GameMenu,
        "GetDifficultyLevel"
      );

    if (0 == DifficultyLevel)
      return 12;
    else
    if (1 == DifficultyLevel)
      return 9;
    else
    if (2 == DifficultyLevel)
      return 6;
    else
    if (3 == DifficultyLevel)
      return 3;

    Core_LogWarning("Invalid difficulty level " + DifficultyLevel);
    return 6;
  }
}


