using System.Text;
using EDPlayerJournal.Entries;
namespace EDPlayerJournal.BGS;
///
/// This class is used when a completed mission gives influence to another
/// faction as well. This happens, for example, when you deliver cargo from one
/// faction to another. Both sometimes gain influence.
///
public class InfluenceSupport : Transaction {
public string Influence { get; set; } = "";
///
/// Relevant mission completed entry
///
public MissionCompletedEntry? RelevantMission { get; set; }
///
/// Mission accepted entry
///
public MissionAcceptedEntry? AcceptedEntry { get; set; }
public override string CompletedAt {
get {
if (RelevantMission == null) {
return "";
}
return RelevantMission.Timestamp.ToString("dd.MM.yyyy hh:mm UTC");
}
}
public override string ToString() {
StringBuilder builder = new StringBuilder();
string? missionname;
if (RelevantMission != null && RelevantMission.Mission != null) {
missionname = RelevantMission.Mission.FriendlyName;
} else {
missionname = "UNKNOWN MISSION";
}
if (missionname == null) {
return "";
}
builder.AppendFormat("Influence gained from \"{0}\": \"{1}\"",
missionname,
string.IsNullOrEmpty(Influence) ? "NONE" : Influence
);
return builder.ToString();
}
}