//===========================================================================//
// File:	btmssn.hpp                                                          //
// Project: BattleTech				    													  //
// Contents: Implementation Details for missions   								  //
//---------------------------------------------------------------------------//
//   Date    Who  Modification                                               //
// --------  ---  ---------------------------------------------------------- //
// 04/07/95  ECH  Initial coding.                                            //
// 09/12/95  JM   added scenario							  								  //
//---------------------------------------------------------------------------//
// Copyright (C) 1995, Virtual World Entertainment, Inc.                     //
// All Rights reserved worldwide                                             //
// This unpublished sourcecode is PROPRIETARY and CONFIDENTIAL               //
//===========================================================================//

#if !defined(BTMSSN_HPP)
#	define BTMSSN_HPP

#	if !defined(MISSION_HPP)
#		include <mission.hpp>
#	endif

//##########################################################################
//###########################  BTMission    ################################
//##########################################################################


class BTMission :
	public Mission
{

		public:
		enum {
			NoviceMode = 0,
			StandardMode,
			VeteranMode,
			ExpertMode,
			ExperienceLevelModeCount
		};

		protected:

		Enumeration experienceLevel;

		CString
			roleName;
		CString
      	teamName;

		Logical
			advancedDamageOn;

		Scalar
			missionTemperature;

		CString
			patchName;

		public:

			BTMission(
				NotationFile *notation_file,
				ResourceFile *resources
			);

			~BTMission();

			void
				SetPlayerData(NotationFile *notation_file);

			CString
				GetRoleName() const
			{ Check(this); return roleName; }

			CString
				GetTeamName() const
			{ Check(this); return teamName; }

			const CString
			GetPatchName()
			  {Check(this); return patchName;}

			const Scalar
			GetMissionTemperature()
			  {Check(this); return missionTemperature;}

			const Enumeration
			ExperienceLevel()
			  {Check(this); return experienceLevel;}

			const Logical
			AdvancedDamageOn()
			  {Check(this); return advancedDamageOn;}

};
#endif
