beautify, hints, play time clock icon
This commit is contained in:
parent
74f4cad282
commit
7330375f86
6 changed files with 90 additions and 72 deletions
2
.gitignore
vendored
2
.gitignore
vendored
|
|
@ -1,4 +1,4 @@
|
||||||
fontello-7bf7a0b6/
|
fontello/
|
||||||
css/
|
css/
|
||||||
font/
|
font/
|
||||||
images/
|
images/
|
||||||
|
|
|
||||||
|
|
@ -48,11 +48,11 @@ const HK_BOSSES = {
|
||||||
killedMawlek: "Brooding Mawlek (Forgotten Crossroads)",
|
killedMawlek: "Brooding Mawlek (Forgotten Crossroads)",
|
||||||
killedBurstingBouncer: "Gruz Mother (Forgotten Crossroads)",
|
killedBurstingBouncer: "Gruz Mother (Forgotten Crossroads)",
|
||||||
defeatedDungDefender: "Dung Defender (Royal Waterways)",
|
defeatedDungDefender: "Dung Defender (Royal Waterways)",
|
||||||
mageLordDefeated: "Soul Master (City of Tears)",
|
mageLordDefeated: "Soul Master (City of Tears: Soul Sanctum)",
|
||||||
killedBlackKnight: "Watcher Knights (City of Tears)",
|
killedBlackKnight: "Watcher Knights (City of Tears: Watcher's Spire)",
|
||||||
collectorDefeated: "The Collector (Tower of Love)",
|
collectorDefeated: "The Collector (City of Tears: Tower of Love)",
|
||||||
defeatedMantisLords: "Mantis Lords (Mantis Village)",
|
defeatedMantisLords: "Mantis Lords (Mantis Village)",
|
||||||
defeatedMegaJelly: "Uumuu (Fog Canyon / Teacher's Archives)",
|
defeatedMegaJelly: "Uumuu (Fog Canyon: Teacher's Archives)",
|
||||||
hornet1Defeated: "Hornet Protector (Greenpath)",
|
hornet1Defeated: "Hornet Protector (Greenpath)",
|
||||||
hornetOutskirtsDefeated: "Hornet Sentinel (Kingdom's Edge)",
|
hornetOutskirtsDefeated: "Hornet Sentinel (Kingdom's Edge)",
|
||||||
killedInfectedKnight: "Broken Vessel (Ancient Basin)",
|
killedInfectedKnight: "Broken Vessel (Ancient Basin)",
|
||||||
|
|
@ -107,79 +107,78 @@ const HK_COLOSSEUM = {
|
||||||
};
|
};
|
||||||
|
|
||||||
const HK_DREAMERS = {
|
const HK_DREAMERS = {
|
||||||
lurienDefeated: "Lurien the Watcher",
|
lurienDefeated: "Lurien the Watcher (City of Tears: Watcher's Spire)",
|
||||||
monomonDefeated: "Monomon the Teacher",
|
monomonDefeated: "Monomon the Teacher (Fog Canyon: Teacher's Archives)",
|
||||||
hegemolDefeated: "Herrah the Beast"
|
hegemolDefeated: "Herrah the Beast (Deepnest: Distant Village)"
|
||||||
};
|
};
|
||||||
|
|
||||||
const HK_DREAMNAIL = {
|
const HK_DREAMNAIL = {
|
||||||
hasDreamNail: "Dream Nail acquired",
|
hasDreamNail: "Dream Nail acquired (Resting Grounds)",
|
||||||
dreamNailUpgraded: "Awoken Dream Nail (Seer - 1800 Essence)",
|
dreamNailUpgraded: "Awoken Dream Nail (Seer: 1800 Essence)",
|
||||||
mothDeparted: "Hear the Seer's final words (Seer - 2400 Essence)"
|
mothDeparted: "Hear the Seer's final words (Seer: 2400 Essence)"
|
||||||
};
|
};
|
||||||
|
|
||||||
const HK_EQUIPMENT = {
|
const HK_EQUIPMENT = {
|
||||||
hasKingsBrand: "King's Brand",
|
hasDash: "Mothwing Cloak / Dash (Greenpath)",
|
||||||
hasSuperDash: "Crystal Heart",
|
hasWalljump: "Mantis Claw / Wall Jump (Mantis Village)",
|
||||||
hasWalljump: "Mantis Claw",
|
hasSuperDash: "Crystal Heart / Super Dash (Crystal Peak)",
|
||||||
hasDoubleJump: "Monarch Wings",
|
hasAcidArmour: "Isma's Tear / Acid Armour (Royal Waterways)",
|
||||||
hasAcidArmour: "Isma's Tear",
|
hasDoubleJump: "Monarch Wings / Double Jump (Ancient Basin)",
|
||||||
hasDash: "Mothwing Cloak",
|
hasKingsBrand: "King's Brand (Kingdom's Edge)",
|
||||||
hasShadowDash: "Shade Cloak"
|
hasShadowDash: "Shade Cloak / Shadow Dash (The Abyss)"
|
||||||
};
|
};
|
||||||
|
|
||||||
const HK_MASKSHARDS = {
|
const HK_MASKSHARDS = {
|
||||||
slyShellFrag1: "Mask Shard #1 (Sly - 150 Geo)",
|
slyShellFrag1: "Mask Shard #1 (Sly: 150 Geo)",
|
||||||
slyShellFrag2: "Mask Shard #2 (Sly - 500 Geo)",
|
slyShellFrag2: "Mask Shard #2 (Sly: 500 Geo)",
|
||||||
slyShellFrag3: "Mask Shard #3 (Sly - 800 Geo)",
|
slyShellFrag3: "Mask Shard #3 (Sly: 800 Geo + Shopkeeper's Key)",
|
||||||
slyShellFrag4: "Mask Shard #4 (Sly - 1500 Geo)",
|
slyShellFrag4: "Mask Shard #4 (Sly: 1500 Geo + Shopkeeper's Key)",
|
||||||
dreamReward7: "Mask Shard #5 (Seer - 1500 Essence)"
|
dreamReward7: "Mask Shard #5 (Seer: 1500 Essence)"
|
||||||
};
|
};
|
||||||
|
|
||||||
// "Heart Piece" sceneData.persistentBoolItems[n].id
|
// "Heart Piece" sceneData.persistentBoolItems.id
|
||||||
const HK_MASKSHARDS_WORLD = {
|
const HK_MASKSHARDS_WORLD = {
|
||||||
Crossroads_13: "Mask Shard #6 (Forgotten Crossroads - below Hot Springs)",
|
Crossroads_13: "Mask Shard #6 (Forgotten Crossroads: below Hot Springs)",
|
||||||
Crossroads_09: "Mask Shard #7 (Forgotten Crossroads - Brooding Mawlek)",
|
Crossroads_09: "Mask Shard #7 (Forgotten Crossroads: Brooding Mawlek)",
|
||||||
Crossroads_38: "Mask Shard #8 (Grubfather - rescue 5 Grubs)",
|
Crossroads_38: "Mask Shard #8 (Grubfather: rescue 5 Grubs)",
|
||||||
Room_Bretta: "Mask Shard #9 (Dirtmouth - Bretta's Room)",
|
Room_Bretta: "Mask Shard #9 (Dirtmouth: Bretta's Room)",
|
||||||
Fungus2_01: "Mask Shard #10 (Queen's Station)",
|
Fungus2_01: "Mask Shard #10 (Queen's Station)",
|
||||||
Waterways_04b: "Mask Shard #11 (Royal Waterways)",
|
Waterways_04b: "Mask Shard #11 (Royal Waterways)",
|
||||||
Fungus1_36: "Mask Shard #12 (Greenpath - Stone Sanctuary)",
|
Fungus1_36: "Mask Shard #12 (Greenpath: Stone Sanctuary)",
|
||||||
Mines_32: "Mask Shard #13 (Crystal Peak - Enraged Guardian)",
|
Mines_32: "Mask Shard #13 (Crystal Peak: Enraged Guardian)",
|
||||||
Fungus2_25: "Mask Shard #14 (Deepnest - entrance from Fungal Wastes)",
|
Fungus2_25: "Mask Shard #14 (Deepnest: entrance from Fungal Wastes)",
|
||||||
Hive_04: "Mask Shard #15 (The Hive)",
|
Hive_04: "Mask Shard #15 (The Hive)",
|
||||||
Room_Mansion: "Mask Shard #16 (Resting Grounds - Delicate Flower)"
|
Room_Mansion: "Mask Shard #16 (Resting Grounds: Delicate Flower)"
|
||||||
};
|
};
|
||||||
|
|
||||||
const HK_VESSELFRAGMENTS = {
|
const HK_VESSELFRAGMENTS = {
|
||||||
slyVesselFrag1: "Vessel Fragment #1 (Sly - 550 Geo)",
|
slyVesselFrag1: "Vessel Fragment #1 (Sly: 550 Geo)",
|
||||||
slyVesselFrag2: "Vessel Fragment #2 (Sly - 900 Geo)",
|
slyVesselFrag2: "Vessel Fragment #2 (Sly: 900 Geo)",
|
||||||
dreamReward5: "Vessel Fragment #3 (Seer - 700 Essence)",
|
dreamReward5: "Vessel Fragment #3 (Seer: 700 Essence)",
|
||||||
vesselFragStagNest: "Vessel Fragment #4 (Stag Nest)"
|
vesselFragStagNest: "Vessel Fragment #4 (Stag Nest)"
|
||||||
};
|
};
|
||||||
|
|
||||||
// "Vessel Fragment" sceneData.persistentBoolItems[n].id
|
// "Vessel Fragment" sceneData.persistentBoolItems.id
|
||||||
const HK_VESSELFRAGMENTS_WORLD = {
|
const HK_VESSELFRAGMENTS_WORLD = {
|
||||||
Fungus1_13: "Vessel Fragment #5 (Greenpath - near Queen's Gardens exit)",
|
Fungus1_13: "Vessel Fragment #5 (Greenpath: near Queen's Gardens exit)",
|
||||||
Crossroads_37: "Vessel Fragment #6 (Forgotten Crossroads - unlock lift in City of Tears)",
|
Crossroads_37: "Vessel Fragment #6 (Forgotten Crossroads: unlock City of Tears lift)",
|
||||||
Ruins2_09: "Vessel Fragment #7 (Above King's Station)",
|
Ruins2_09: "Vessel Fragment #7 (Above King's Station)",
|
||||||
Deepnest_38: "Vessel Fragment #8 (Deepnest - Goam platforming challenge)",
|
Deepnest_38: "Vessel Fragment #8 (Deepnest: Goam platforming challenge)",
|
||||||
Abyss_04: "Vessel Fragment #9 (Ancient Basin Fountain - 3000 Geo)"
|
Abyss_04: "Vessel Fragment #9 (Ancient Basin Fountain: 3000 Geo)"
|
||||||
};
|
};
|
||||||
|
|
||||||
const HK_NAILARTS = {
|
const HK_NAILARTS = {
|
||||||
hasAllNailArts: "All Nail Arts",
|
|
||||||
hasUpwardSlash: "Great Slash",
|
hasUpwardSlash: "Great Slash",
|
||||||
hasDashSlash: "Dash Slash",
|
hasDashSlash: "Dash Slash",
|
||||||
hasCyclone: "Cyclone Slash"
|
hasCyclone: "Cyclone Slash"
|
||||||
};
|
};
|
||||||
|
|
||||||
const HK_NAILUPGRADES = [
|
const HK_NAILUPGRADES = [
|
||||||
"Old Nail",
|
"#0 Old Nail (Starting Weapon)",
|
||||||
"Sharpened Nail",
|
"#1 Sharpened Nail (Nailsmith: 250 Geo)",
|
||||||
"Channeled Nail",
|
"#2 Channeled Nail (Nailsmith: 800 Geo + 1 Pale Ore)",
|
||||||
"Coiled Nail",
|
"#3 Coiled Nail (Nailsmith: 2000 Geo + 2 Pale Ore)",
|
||||||
"Pure Nail"
|
"#4 Pure Nail (Nailsmith: 4000 Geo + 3 Pale Ore)"
|
||||||
];
|
];
|
||||||
|
|
||||||
const HK_SPELLS = {
|
const HK_SPELLS = {
|
||||||
|
|
@ -208,26 +207,26 @@ const HK_WARRIORDREAMS = {
|
||||||
};
|
};
|
||||||
|
|
||||||
const HK_GRIMMTROUPE = {
|
const HK_GRIMMTROUPE = {
|
||||||
gotCharm_40: "Grimmchild / Carefree Melody",
|
gotCharm_37: "Charm #37 Sprintmaster (Sly: 400 Geo + Shopkeeper's Key)",
|
||||||
gotCharm_38: "Dreamshield",
|
gotCharm_38: "Charm #38 Dreamshield (Resting Grounds)",
|
||||||
gotCharm_37: "Sprintmaster",
|
gotCharm_39: "Charm #39 Weaversong (Deepnest: Weaver's Den)",
|
||||||
gotCharm_39: "Weaversong",
|
gotCharm_40: "Charm #40 Grimmchild / Carefree Melody (Dirtmouth)",
|
||||||
gotGrimmNotch: "Troupe Leader Grimm"
|
killedGrimm: "Troupe Leader Grimm (Dirtmouth)"
|
||||||
};
|
};
|
||||||
|
|
||||||
const HK_LIFEBLOOD = {
|
const HK_LIFEBLOOD = {
|
||||||
killedHiveKnight: "Hive Knight"
|
killedHiveKnight: "Hive Knight (The Hive)"
|
||||||
};
|
};
|
||||||
|
|
||||||
const HK_GODMASTER = {
|
const HK_GODMASTER = {
|
||||||
hasGodfinder: "Godtuner"
|
hasGodfinder: "Godtuner (Junk Pit)"
|
||||||
};
|
};
|
||||||
|
|
||||||
const HK_GODMASTER_DOORS = [
|
const HK_GODMASTER_DOORS = [
|
||||||
"Pantheon of the Master",
|
"#1 Pantheon of the Master (Godhome)",
|
||||||
"Pantheon of the Artist",
|
"#2 Pantheon of the Artist (Godhome)",
|
||||||
"Pantheon of the Sage",
|
"#3 Pantheon of the Sage (Godhome)",
|
||||||
"Pantheon of the Knight"
|
"#4 Pantheon of the Knight (Godhome)"
|
||||||
];
|
];
|
||||||
|
|
||||||
function HKCheckCompletion(jsonObject) {
|
function HKCheckCompletion(jsonObject) {
|
||||||
|
|
@ -272,23 +271,28 @@ function HKCheckCompletion(jsonObject) {
|
||||||
// ---------------- Game Completion Status ----------------- //
|
// ---------------- Game Completion Status ----------------- //
|
||||||
|
|
||||||
if (i === "completionPercentage") {
|
if (i === "completionPercentage") {
|
||||||
if (HKPlayerData.completionPercentage >= 112) CurrentDataTrue(HKPlayerData.completionPercentage);
|
if (HKPlayerData.completionPercentage >= 112) CurrentDataTrue();
|
||||||
else CurrentDataFalse(HKPlayerData.completionPercentage);
|
|
||||||
FillHTML(DIV_ID.intro, "Game Completion: ", " %");
|
let textFill = "Game Completion: <b>" + HKPlayerData.completionPercentage + " %</b> (out of 112 %)";
|
||||||
|
document.getElementById(DIV_ID.intro).innerHTML += divStart + completionSymbol + textFill + divEnd;
|
||||||
|
|
||||||
|
CurrentDataFalse();
|
||||||
}
|
}
|
||||||
|
|
||||||
// ---------------- Time Played ----------------- //
|
// ---------------- Time Played ----------------- //
|
||||||
|
|
||||||
if (i === "playTime") {
|
if (i === "playTime") {
|
||||||
|
let icon = "<i class='icon-clock'></i>";
|
||||||
let seconds = Math.floor(HKPlayerData.playTime);
|
let seconds = Math.floor(HKPlayerData.playTime);
|
||||||
let minutes = Math.round((seconds / 60) % 60);
|
let minutes = Math.round((seconds / 60) % 60);
|
||||||
let hours = Math.round(seconds / 3600);
|
let hours = Math.round(seconds / 3600);
|
||||||
let sec = Math.round(seconds % 60);
|
let sec = Math.round(seconds % 60);
|
||||||
|
|
||||||
if (sec <= 10) sec = "0" + sec;
|
if (sec <= 10) sec = "0" + sec;
|
||||||
if (minutes <= 10) minutes = "0" + minutes;
|
if (minutes <= 10) minutes = "0" + minutes;
|
||||||
CurrentDataTrue();
|
let textFill = "Time Played: <b>" + hours + " h " + minutes + " min " + sec + " sec</b>";
|
||||||
FillHTML(DIV_ID.intro, "Time Played: " + hours + " h " + minutes + " min " + sec + " sec");
|
|
||||||
CurrentDataFalse();
|
document.getElementById(DIV_ID.intro).innerHTML += divStart + icon + textFill + divEnd;
|
||||||
}
|
}
|
||||||
|
|
||||||
// ---------------- Bosses (Base Game) --------------------- //
|
// ---------------- Bosses (Base Game) --------------------- //
|
||||||
|
|
|
||||||
|
|
@ -35,6 +35,12 @@
|
||||||
"css": "ok-circled",
|
"css": "ok-circled",
|
||||||
"code": 59395,
|
"code": 59395,
|
||||||
"src": "fontawesome"
|
"src": "fontawesome"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"uid": "8663320a860b00f26e94d3d15c9ba99a",
|
||||||
|
"css": "clock",
|
||||||
|
"code": 59396,
|
||||||
|
"src": "entypo"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
10
index.html
10
index.html
|
|
@ -4,7 +4,7 @@
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||||
<link href="https://fonts.googleapis.com/css2?family=Heebo:wght@300;400;700&display=swap" rel="stylesheet">
|
<link href="https://fonts.googleapis.com/css2?family=Heebo:wght@300;400;500;700&display=swap" rel="stylesheet">
|
||||||
<link href="css/fontello.css" rel="stylesheet" type="text/css">
|
<link href="css/fontello.css" rel="stylesheet" type="text/css">
|
||||||
<link href="style.css" rel="stylesheet" type="text/css">
|
<link href="style.css" rel="stylesheet" type="text/css">
|
||||||
<title>Hollow Knight Completion Check Tool</title>
|
<title>Hollow Knight Completion Check Tool</title>
|
||||||
|
|
@ -75,14 +75,14 @@
|
||||||
<h2>Equipment</h2>
|
<h2>Equipment</h2>
|
||||||
<div id="hk-equipment"></div>
|
<div id="hk-equipment"></div>
|
||||||
|
|
||||||
<h2>Spells</h2>
|
<h2>Nail Upgrades</h2>
|
||||||
<div id="hk-spells"></div>
|
<div id="hk-nailupgrades"></div>
|
||||||
|
|
||||||
<h2>Nail Arts</h2>
|
<h2>Nail Arts</h2>
|
||||||
<div id="hk-nailarts"></div>
|
<div id="hk-nailarts"></div>
|
||||||
|
|
||||||
<h2>Nail Upgrades</h2>
|
<h2>Spells</h2>
|
||||||
<div id="hk-nailupgrades"></div>
|
<div id="hk-spells"></div>
|
||||||
|
|
||||||
<h2>Mask Shards</h2>
|
<h2>Mask Shards</h2>
|
||||||
<div id="hk-maskshards"></div>
|
<div id="hk-maskshards"></div>
|
||||||
|
|
|
||||||
|
|
@ -31,7 +31,7 @@ function loadJSON(filename, callback) {
|
||||||
xobj.send(null);
|
xobj.send(null);
|
||||||
}
|
}
|
||||||
|
|
||||||
loadJSON(fileName[2],
|
loadJSON(fileName[1],
|
||||||
function JSONparse(response) {
|
function JSONparse(response) {
|
||||||
// Parse JSON string into object
|
// Parse JSON string into object
|
||||||
jsonObj = JSON.parse(response);
|
jsonObj = JSON.parse(response);
|
||||||
|
|
|
||||||
14
style.css
14
style.css
|
|
@ -1,15 +1,23 @@
|
||||||
html {
|
html {
|
||||||
font-size: 16px;
|
font-size: 17px;
|
||||||
|
font-weight: 300;
|
||||||
}
|
}
|
||||||
body {
|
body {
|
||||||
font-family: 'Heebo', sans-serif;
|
font-family: 'Heebo', sans-serif;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
}
|
}
|
||||||
|
b {
|
||||||
|
font-weight: 500;
|
||||||
|
}
|
||||||
|
strong {
|
||||||
|
font-weight: 700;
|
||||||
|
}
|
||||||
#content {
|
#content {
|
||||||
max-width: 530px;
|
max-width: 550px;
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
}
|
}
|
||||||
h1 {
|
h1 {
|
||||||
|
font-size: 1.9rem;
|
||||||
margin: 0.6rem 0;
|
margin: 0.6rem 0;
|
||||||
}
|
}
|
||||||
#h1-title {
|
#h1-title {
|
||||||
|
|
@ -52,7 +60,7 @@ a,
|
||||||
a:active,
|
a:active,
|
||||||
a:visited {
|
a:visited {
|
||||||
color: black;
|
color: black;
|
||||||
font-weight: bold;
|
font-weight: 700;
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
}
|
}
|
||||||
a:hover {
|
a:hover {
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue