Canadian century club award added

cbayer-ccc
Christian Bayer 2024-02-18 09:24:31 -05:00
rodzic 02eac05181
commit f37059f12e
Nie znaleziono w bazie danych klucza dla tego podpisu
ID klucza GPG: 090D0F8B431A7C88
3 zmienionych plików z 91 dodań i 2 usunięć

Wyświetl plik

@ -10504,6 +10504,55 @@
},
"sponsor": "RAC",
"tooltip": "Worked All North America Award"
},
"CCC": {
"name": "CCC - Canadian Century Club",
"rule": {
"band": [
"Mixed"
],
"dxcc": "1",
"state": [
"BC",
"QC",
"PE",
"ON",
"AB",
"MB",
"NS",
"SK",
"NU",
"NT",
"NL",
"YT",
"NB"
],
"count": [
100
],
"endorse": [
"2m",
"6m",
"10m",
"12m",
"15m",
"17m",
"20m",
"30m",
"40m",
"60m",
"80m",
"160m"
],
"mode": [
"Digital",
"Phone",
"Mixed"
],
"type": "call"
},
"sponsor": "RAC",
"tooltip": "Canadian Century Club Award"
}
},
"compiledBy": "WA4YA",

Wyświetl plik

@ -5923,7 +5923,7 @@ function finalWsjtxDecode(newMessage, isFox = false, foxMessage)
canPath = true;
}
if (theirQTH in GT.liveGrids)
if (theirQTH in GT.liveGrids)
{
GT.liveGrids[theirQTH].age = GT.timeNow;
}

Wyświetl plik

@ -2733,7 +2733,8 @@ function buildAwardTypeHandlers()
cont2band: { name: "Continents per Band" },
calls2band: { name: "Stations per Band" },
dxcc2band: { name: "DXCC per Band" },
states2band: { name: "States per Band" }
states2band: { name: "States per Band" },
ccc: { name: "Canada Century Award" }
};
CR.awardTypes.IOTA.score = scoreAIOTA;
@ -2757,6 +2758,7 @@ function buildAwardTypeHandlers()
CR.awardTypes.calls2band.score = scoreAcalls2band;
CR.awardTypes.dxcc2band.score = scoreAdxcc2band;
CR.awardTypes.states2band.score = scoreAstates2band;
CR.awardTypes.ccc.score = scoreAccc;
CR.awardTypes.IOTA.test = testAIOTA;
CR.awardTypes.call.test = testAcall;
@ -2779,6 +2781,7 @@ function buildAwardTypeHandlers()
CR.awardTypes.calls2band.test = testAcalls2band;
CR.awardTypes.dxcc2band.test = testAdxcc2band;
CR.awardTypes.states2band.test = testAstates;
CR.awardTypes.ccc.test = testAccc;
CR.awardTypes.IOTA.compile = singleCompile;
CR.awardTypes.call.compile = singleCompile;
@ -2801,6 +2804,7 @@ function buildAwardTypeHandlers()
CR.awardTypes.calls2band.compile = doubleCompile;
CR.awardTypes.dxcc2band.compile = doubleCompile;
CR.awardTypes.states2band.compile = doubleCompile;
CR.awardTypes.ccc.compile = doubleCompile;
}
function scoreAstates(award, obj)
@ -2885,6 +2889,28 @@ function scoreAcont(award, obj)
}
return false;
}
function scoreAccc(award, obj)
{
if (obj.dxcc && obj.state)
{
let dxcc = obj.dxcc;
if (dxcc === 1)
{
let state = obj.state;
if (!(state in award.stat)) award.stat[state] = newAwardCountObject();
if (award.stat[state].unique.length > 20) return false;
return workAwardObject(
award.stat[state],
obj.band,
obj.mode,
obj.digital,
obj.phone,
obj.DEcall
);
}
}
return false;
}
function testAcont(award, obj, baseHash)
{
@ -2901,6 +2927,20 @@ function testAcont(award, obj, baseHash)
return true;
}
function testAccc(award, obj, baseHash)
{
if (obj.dxcc && obj.state)
{
let dxcc = obj.dxcc;
let state = obj.state;
if (dxcc + baseHash in CR.tracker[award.test.look].dxcc && state + baseHash in CR.tracker[award.test.look].state)
{
return false;
}
}
return true;
}
function scoreAcont5(award, obj, baseHash)
{
if (obj.cont)