Pay Oceania's high bands what they are worth
The band table stopped after 40 metres and gave every other band one point. It should be 20 on 160, 10 on 80, 5 on 40, 1 on 20, 2 on 15 and 3 on 10: from Oceania the high bands are the hard ones, so they pay more than 20 metres does. The WIA scoring table and N1MM's COceania.ComputePoints agree on all six. The catch-all hid a second fault. N1MM's table ends without one, so a band that is not in the contest — the WARC bands, 6 metres — scores nothing; here it scored a point. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0157i7PiZyqBkquxS9A6FTdQ
This commit is contained in:
@@ -64,13 +64,21 @@ public sealed class OceaniaDx : Contest
|
||||
public bool IsWorkable(QsoContext qso) =>
|
||||
qso.Continent == "OC" || qso.Me.Continent == "OC";
|
||||
|
||||
/// What a contact is worth on each of the contest's six bands. The high
|
||||
/// bands pay more than 20 metres, which is the other way round from most
|
||||
/// contests: from Oceania they are the hard ones. A band that is not in
|
||||
/// this table is not in the contest — the WARC bands and 6 metres — and
|
||||
/// scores nothing, which is how N1MM's `COceania.ComputePoints` ends as
|
||||
/// well.
|
||||
private static int PointsOn(Band? band) => band?.Name switch
|
||||
{
|
||||
"160M" => 20,
|
||||
"80M" => 10,
|
||||
"40M" => 5,
|
||||
null => 0,
|
||||
_ => 1,
|
||||
"20M" => 1,
|
||||
"15M" => 2,
|
||||
"10M" => 3,
|
||||
_ => 0,
|
||||
};
|
||||
|
||||
private string ModeLabel() => mode == ModeCategory.Cw ? "CW" : "SSB";
|
||||
|
||||
Reference in New Issue
Block a user