Compare commits
2 Commits
e724955ec8
...
c8e985cb39
Author | SHA1 | Date | |
---|---|---|---|
c8e985cb39 | |||
dd4cc8ba5f |
@ -11,6 +11,11 @@ namespace NonaBGS.BGS {
|
||||
public string Station { get; set; }
|
||||
public string System { get; set; }
|
||||
public string Faction { get; set; }
|
||||
/// <summary>
|
||||
/// Whether this entry was manually added. Manually added entries are not deleted
|
||||
/// when a new scan is made. Instead they are preserved.
|
||||
/// </summary>
|
||||
public bool ManuallyAdded { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Whether this entry only benefits the controlling faction or not, default: no
|
||||
|
@ -16,6 +16,12 @@ namespace NonaBGS.BGS {
|
||||
get => entries;
|
||||
set => entries = value;
|
||||
}
|
||||
public void Clear() {
|
||||
if (entries == null) {
|
||||
return;
|
||||
}
|
||||
entries.RemoveAll(x => !x.ManuallyAdded);
|
||||
}
|
||||
|
||||
public int Matches(LogEntry e) {
|
||||
int match_count = 0;
|
||||
|
@ -54,7 +54,7 @@ namespace NonaBGS.BGS {
|
||||
string current_station = null;
|
||||
string controlling_faction = null;
|
||||
|
||||
this.objectives.ForEach(x => x.LogEntries.Clear());
|
||||
objectives.ForEach(x => x.Clear());
|
||||
|
||||
foreach (var e in relevant) {
|
||||
LogEntry entry = null;
|
||||
@ -145,12 +145,14 @@ namespace NonaBGS.BGS {
|
||||
|
||||
LogEntry existing = null;
|
||||
|
||||
try {
|
||||
existing = objective.LogEntries.Find(x => x.CompareTo(entry) == 0);
|
||||
} catch (NotImplementedException) {
|
||||
// Equivalent to not having found anything
|
||||
existing = null;
|
||||
}
|
||||
existing = objective.LogEntries.Find(x => {
|
||||
try {
|
||||
return x.CompareTo(entry) == 0;
|
||||
} catch (NotImplementedException) {
|
||||
return false;
|
||||
}
|
||||
});
|
||||
|
||||
if (collate && existing != null) {
|
||||
existing.Entries.Add(e);
|
||||
} else if (!collate || existing == null) {
|
||||
|
@ -264,6 +264,7 @@ namespace NonaBGS {
|
||||
|
||||
CombatZone zone = new CombatZone();
|
||||
|
||||
zone.ManuallyAdded = true;
|
||||
zone.Faction = objective.Faction;
|
||||
zone.System = objective.System;
|
||||
zone.Station = objective.Station;
|
||||
|
Reference in New Issue
Block a user