Read the .udc CallHist multiplier and BonusPoints2
MultSqlString = CallHist counts every station the call history file lists, once per callsign, which is how N1MM dedups it. The file reaches the scoring code through ContestLog.History, and a QsoContext now carries it; without a file loaded nothing counts. BonusPoints2 = +50, calls.txt reads the callsigns from the support-files folder and adds 50 to the contact, *2 doubles it and a plain 50 scores 50 instead. The folder comes from the registry, which the app passes when it reads the .udc files. N1MM's other form, where the file is grids.txt and the bonus is looked up by grid square, is not read. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01RoGtneMQaz4M9w7Kk49AVD
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
using Nonemm.Core;
|
||||
using Nonemm.Core.Calls;
|
||||
using Nonemm.Core.Country;
|
||||
|
||||
namespace Nonemm.Contests;
|
||||
@@ -7,6 +8,10 @@ namespace Nonemm.Contests;
|
||||
/// score by country, zone or continent without looking anything up itself.
|
||||
public sealed record QsoContext(Qso Qso, CountryLookup? Country, StationInfo Me, ContestEntry Entry)
|
||||
{
|
||||
/// The call history file the operator loaded, which a contest can count a
|
||||
/// multiplier from. Empty when there is none.
|
||||
public CallHistory History { get; init; } = CallHistory.Empty;
|
||||
|
||||
public Band? Band => Qso.Band;
|
||||
|
||||
public ModeCategory ModeCategory => Qso.Mode.Category;
|
||||
|
||||
Reference in New Issue
Block a user