Compare commits

...

4 Commits

6 changed files with 436 additions and 23 deletions

View File

@ -20,7 +20,15 @@ namespace EliteBGS.BGS {
}
public string Influence {
get { return (Entries[0] as MissionCompletedEntry).GetInfluenceForFaction(Faction); }
get {
MissionCompletedEntry e = (Entries[0] as MissionCompletedEntry);
if (SystemAddress == 0) {
return e.GetInfluenceForFaction(Faction);
} else {
return e.GetInfluenceForFaction(Faction, SystemAddress);
}
}
}
public override string ToString() {

View File

@ -146,25 +146,23 @@ namespace EliteBGS.BGS {
"\" was generated, please report this.");
}
if (completed.Influences.Count > 1) {
foreach (var other in completed.Influences) {
string faction = other.Key;
if (string.IsNullOrEmpty(faction)) {
continue;
}
foreach (var influences in other.Value) {
ulong system_address = influences.Key;
if (!faction.Equals(results[0].Faction) ||
(faction.Equals(results[0].Faction) && system_address != current_system_address)) {
string system = systems.TryGetValue(system_address, out string sys) ? sys : "";
results.Add(new InfluenceSupport() {
Faction = faction,
Influence = influences.Value,
System = system,
SystemAddress = system_address,
RelevantMission = results[0] as MissionCompleted
});
}
foreach (var other in completed.Influences) {
string faction = other.Key;
if (string.IsNullOrEmpty(faction)) {
continue;
}
foreach (var influences in other.Value) {
ulong system_address = influences.Key;
if (!faction.Equals(results[0].Faction) ||
(faction.Equals(results[0].Faction) && system_address != current_system_address)) {
string system = systems.TryGetValue(system_address, out string sys) ? sys : "";
results.Add(new InfluenceSupport() {
Faction = faction,
Influence = influences.Value,
System = system,
SystemAddress = system_address,
RelevantMission = results[0] as MissionCompleted
});
}
}
}
@ -266,7 +264,7 @@ namespace EliteBGS.BGS {
/* Find all objectives that generally match.
*/
var matches = objectives
.Where(x => x.Matches(entry) > 0)
.Where(x => x.Matches(entry) >= 3)
.OrderBy(x => x.Matches(entry))
;

View File

@ -186,6 +186,7 @@
<Content Include="main-objectives.png">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
<None Include="TestData\Double-5-Inf.txt" />
<None Include="TestData\SameInfTwice-Log.txt" />
<None Include="TestData\SameInfTwice.txt" />
<None Include="CHANGELOG.md">

View File

@ -8,6 +8,7 @@
Title="Load Entries" Height="450" Width="600">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
@ -16,7 +17,21 @@
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<TextBox x:Name="Lines" AcceptsReturn="True" AcceptsTab="True" TextWrapping="Wrap" Grid.Row="0" Height="Auto" Grid.Column="0" Grid.ColumnSpan="3" VerticalScrollBarVisibility="Visible" />
<Button x:Name="Load" Content="Load Entries" Grid.Row="1" Margin="5,5,5,5" Height="Auto" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center" Click="Load_Click" />
<Label Content="Use this text field to manually load JSON events into the application." Grid.Row="0" Grid.Column="1"/>
<TextBox x:Name="Lines" AcceptsReturn="True" AcceptsTab="True" TextWrapping="Wrap" Grid.Row="1" Height="Auto" Grid.Column="0" Grid.ColumnSpan="3" VerticalScrollBarVisibility="Visible" />
<Grid Grid.Column="1" Grid.Row="2">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Button x:Name="Load" Content="Load Entries" Grid.Row="0" Margin="5,5,5,5" Height="Auto" Grid.Column="2" HorizontalAlignment="Center" VerticalAlignment="Center" Click="Load_Click" />
<Button x:Name="Clear" Content="Clear" Grid.Row="0" Height="Auto" Margin="5,5,5,5" Grid.Column="3" Click="Clear_Click" />
</Grid>
</Grid>
</Window>

View File

@ -48,5 +48,9 @@ namespace EliteBGS {
exception.ToString()));
}
}
private void Clear_Click(object sender, RoutedEventArgs e) {
Lines.Clear();
}
}
}

387
TestData/Double-5-Inf.txt Normal file

File diff suppressed because one or more lines are too long