using System;
using System.Collections.Generic;

namespace TeslaConsole.BattleTech;

/// <summary>
/// Base class for a recorded in-match BattleTech event. Mirrors the Red Planet
/// <c>MissionEvent</c>, typed over <see cref="BTPlayer" />.
/// </summary>
[Serializable]
internal abstract class BTMissionEvent
{
	public readonly TimeSpan GameTime;

	public readonly BTPlayer ReportingPilot;

	public abstract IEnumerable<BTPlayer> InvolvedPilots { get; }

	public BTMissionEvent(BTPlayer reportingPilot, TimeSpan missionTime)
	{
		ReportingPilot = reportingPilot;
		GameTime = missionTime;
	}

	protected BTMissionEvent()
	{
	}
}
