fill completion when save file not analyzed
This commit is contained in:
parent
53e70f745d
commit
6dc7bda490
5 changed files with 126 additions and 127 deletions
152
build/app.js
152
build/app.js
|
|
@ -85,77 +85,81 @@ function HKCheckCompletion(jsonObject) {
|
||||||
HKWorldItems = jsonObject.sceneData.persistentBoolItems;
|
HKWorldItems = jsonObject.sceneData.persistentBoolItems;
|
||||||
} else return false;
|
} else return false;
|
||||||
} else return false; // Pre-Cleaning and filling initial data (h2, id) needed for PrepareHTMLString()
|
} else return false; // Pre-Cleaning and filling initial data (h2, id) needed for PrepareHTMLString()
|
||||||
// PrefillHTML(HK.SECTION);
|
// PrefillHTML(HK.sections);
|
||||||
// Prevents adding current percent data after each function call (each click of Analyze button)
|
// Prevents adding current percent data after each function call (each click of Analyze button)
|
||||||
|
|
||||||
|
|
||||||
ResetCompletion(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION); // ================================================================================== //
|
ResetCompletion(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections); // ================================================================================== //
|
||||||
// ---------------- Time Played ----------------- //
|
// ---------------- Time Played ----------------- //
|
||||||
|
|
||||||
CheckPlayTime(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.intro, HKPlayerData.playTime); // ---------------- Game Completion Status ----------------- //
|
CheckPlayTime(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.intro, HKPlayerData.playTime); // ---------------- Game Completion Status ----------------- //
|
||||||
|
|
||||||
CheckCompletionPercent(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.intro, HKPlayerData.completionPercentage); // ---------------- Game Completion Status ----------------- //
|
CheckCompletionPercent(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.intro, HKPlayerData.completionPercentage); // ---------------- Game Completion Status ----------------- //
|
||||||
|
|
||||||
CheckSaveFileVersion(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.intro, HKPlayerData.version); // ---------------- Fleur Divide ----------------- //
|
CheckSaveFileVersion(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.intro, HKPlayerData.version); // ---------------- Fleur Divide ----------------- //
|
||||||
// AppendHTML(HK.SECTION.intro, FLEUR_DIVIDE);
|
// AppendHTML(HK.sections.intro, FLEUR_DIVIDE);
|
||||||
// ---------------- Health Masks ----------------- //
|
// ---------------- Health Masks ----------------- //
|
||||||
|
|
||||||
CheckHealthMasks(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.intro, HKPlayerData.maxHealthBase, HKPlayerData.permadeathMode); // ---------------- Soul Orbs ----------------- //
|
CheckHealthMasks(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.intro, HKPlayerData.maxHealthBase, HKPlayerData.permadeathMode); // ---------------- Soul Orbs ----------------- //
|
||||||
|
|
||||||
CheckSoulOrbs(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.intro, HKPlayerData.maxMP + HKPlayerData.MPReserveMax); // ---------------- Charm Notches (Slots) ----------------- //
|
CheckSoulOrbs(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.intro, HKPlayerData.maxMP + HKPlayerData.MPReserveMax); // ---------------- Charm Notches (Slots) ----------------- //
|
||||||
|
|
||||||
CheckNotches(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.intro, HKPlayerData.charmSlots, HKPlayerData.charmSlotsFilled); // ---------------- Geo Amount ----------------- //
|
CheckNotches(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.intro, HKPlayerData.charmSlots, HKPlayerData.charmSlotsFilled); // ---------------- Geo Amount ----------------- //
|
||||||
|
|
||||||
CheckGeo(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.intro, HKPlayerData.geo, HKPlayerData.geoPool); // ---------------- Bosses (Base Game) --------------------- //
|
CheckGeo(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.intro, HKPlayerData.geo, HKPlayerData.geoPool); // ---------------- Bosses (Base Game) --------------------- //
|
||||||
|
|
||||||
CheckIfDataTrue(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.bosses, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.bosses.entries, HKPlayerData, HKWorldItems); // ---------------- Charms --------------------- //
|
CheckIfDataTrue(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.bosses, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.bosses.entries, HKPlayerData, HKWorldItems); // ---------------- Charms --------------------- //
|
||||||
|
|
||||||
CheckIfDataTrue(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.charms, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.charms.entries, HKPlayerData); // ---------------- Colosseum of Fools --------------------- //
|
CheckIfDataTrue(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.charms, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.charms.entries, HKPlayerData); // ---------------- Colosseum of Fools --------------------- //
|
||||||
|
|
||||||
CheckIfDataTrue(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.colosseum, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.colosseum.entries, HKPlayerData); // ---------------- Dreamers --------------------- //
|
CheckIfDataTrue(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.colosseum, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.colosseum.entries, HKPlayerData); // ---------------- Dreamers --------------------- //
|
||||||
|
|
||||||
CheckIfDataTrue(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.dreamers, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.dreamers.entries, HKPlayerData); // ---------------- Dream Nail and Essence --------------------- //
|
CheckIfDataTrue(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.dreamers, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.dreamers.entries, HKPlayerData); // ---------------- Dream Nail and Essence --------------------- //
|
||||||
|
|
||||||
CheckIfDataTrue(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.dreamNail, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.dreamNail.entries, HKPlayerData); // ---------------- Equipment --------------------- //
|
CheckIfDataTrue(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.dreamNail, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.dreamNail.entries, HKPlayerData); // ---------------- Equipment --------------------- //
|
||||||
|
|
||||||
CheckIfDataTrue(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.equipment, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.equipment.entries, HKPlayerData); // ---------------- Nail Upgrades --------------------- //
|
CheckIfDataTrue(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.equipment, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.equipment.entries, HKPlayerData); // ---------------- Nail Upgrades --------------------- //
|
||||||
|
|
||||||
CheckNailUpgrades(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.nailUpgrades, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.nailUpgrades.entries, HKPlayerData); // ---------------- Mask Shards --------------------- //
|
CheckNailUpgrades(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.nailUpgrades, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.nailUpgrades.entries, HKPlayerData); // ---------------- Mask Shards --------------------- //
|
||||||
|
|
||||||
CheckIfDataTrue(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.maskShards, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.maskShards.entries, HKPlayerData, HKWorldItems); // ---------------- Nail Arts --------------------- //
|
CheckIfDataTrue(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.maskShards, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.maskShards.entries, HKPlayerData, HKWorldItems); // ---------------- Nail Arts --------------------- //
|
||||||
|
|
||||||
CheckIfDataTrue(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.nailArts, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.nailArts.entries, HKPlayerData); // ---------------- Spells --------------------- //
|
CheckIfDataTrue(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.nailArts, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.nailArts.entries, HKPlayerData); // ---------------- Spells --------------------- //
|
||||||
|
|
||||||
CheckSpellLevel(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.spells, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.spells.entries, HKPlayerData); // ---------------- Vessel Fragments --------------------- //
|
CheckSpellLevel(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.spells, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.spells.entries, HKPlayerData); // ---------------- Vessel Fragments --------------------- //
|
||||||
|
|
||||||
CheckIfDataTrue(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.vesselFragments, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.vesselFragments.entries, HKPlayerData, HKWorldItems); // ---------------- Warrior Dreams --------------------- //
|
CheckIfDataTrue(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.vesselFragments, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.vesselFragments.entries, HKPlayerData, HKWorldItems); // ---------------- Warrior Dreams --------------------- //
|
||||||
|
|
||||||
CheckWarriorDreams(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.warriorDreams, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.warriorDreams.entries, HKPlayerData); // ---------------- Grimm Troupe Content Pack --------------------- //
|
CheckWarriorDreams(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.warriorDreams, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.warriorDreams.entries, HKPlayerData); // ---------------- Grimm Troupe Content Pack --------------------- //
|
||||||
|
|
||||||
CheckIfDataTrue(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.grimmTroupe, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.grimmTroupe.entries, HKPlayerData); // ---------------- Lifeblood Content Pack --------------------- //
|
CheckIfDataTrue(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.grimmTroupe, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.grimmTroupe.entries, HKPlayerData); // ---------------- Lifeblood Content Pack --------------------- //
|
||||||
|
|
||||||
CheckIfDataTrue(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.lifeblood, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.lifeblood.entries, HKPlayerData); // ---------------- Godmaster Content Pack --------------------- //
|
CheckIfDataTrue(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.lifeblood, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.lifeblood.entries, HKPlayerData); // ---------------- Godmaster Content Pack --------------------- //
|
||||||
|
|
||||||
CheckIfDataTrue(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.godmaster, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.godmaster.entries, HKPlayerData); // ---------------- Fleur Divide ----------------- //
|
CheckIfDataTrue(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.godmaster, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.godmaster.entries, HKPlayerData); // ---------------- Fleur Divide ----------------- //
|
||||||
// AppendHTML(HK.SECTION.godmaster, FLEUR_DIVIDE);
|
// AppendHTML(HK.sections.godmaster, FLEUR_DIVIDE);
|
||||||
// ------------------------- Essential Things ----------------------------- //
|
// ------------------------- Essential Things ----------------------------- //
|
||||||
|
|
||||||
CheckAdditionalThings(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.essential, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.essential.entries, HKPlayerData, HKWorldItems); // ---------------- Fleur Divide ----------------- //
|
CheckAdditionalThings(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.essential, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.essential.entries, HKPlayerData, HKWorldItems); // ---------------- Fleur Divide ----------------- //
|
||||||
// AppendHTML(HK.SECTION.essential, FLEUR_DIVIDE);
|
// AppendHTML(HK.sections.essential, FLEUR_DIVIDE);
|
||||||
// ------------------------- Achievements ----------------------------- //
|
// ------------------------- Achievements ----------------------------- //
|
||||||
|
|
||||||
CheckAdditionalThings(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.achievements, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.achievements.entries, HKPlayerData, HKWorldItems); // ---------------- Fleur Divide ----------------- //
|
CheckAdditionalThings(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.achievements, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.achievements.entries, HKPlayerData, HKWorldItems); // ---------------- Fleur Divide ----------------- //
|
||||||
// AppendHTML(HK.SECTION.achievements, FLEUR_DIVIDE);
|
// AppendHTML(HK.sections.achievements, FLEUR_DIVIDE);
|
||||||
// ------------------------- Game Statistics ----------------------------- //
|
// ------------------------- Game Statistics ----------------------------- //
|
||||||
|
|
||||||
CheckAdditionalThings(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.statistics, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.statistics.entries, HKPlayerData, HKWorldItems, HKSceneData); // ------------------------- Godhome Statistics ----------------------------- //
|
CheckAdditionalThings(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.statistics, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.statistics.entries, HKPlayerData, HKWorldItems, HKSceneData); // ------------------------- Godhome Statistics ----------------------------- //
|
||||||
|
|
||||||
CheckAdditionalThings(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.godhomeStatistics, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.godhomeStatistics.entries, HKPlayerData, HKWorldItems, HKSceneData); // ------------------------- Hints ----------------------------- //
|
CheckAdditionalThings(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.godhomeStatistics, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.godhomeStatistics.entries, HKPlayerData, HKWorldItems, HKSceneData); // ------------------------- Hints ----------------------------- //
|
||||||
|
|
||||||
CheckHintsTrue(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.hints, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.hints.entries, HKPlayerData, HKWorldItems); // ------------------------- Fill completion ----------------------------- //
|
CheckHintsTrue(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.hints, _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.hints.entries, HKPlayerData, HKWorldItems); // ------------------------- Fill completion ----------------------------- //
|
||||||
|
|
||||||
(0,_page_functions_js__WEBPACK_IMPORTED_MODULE_1__.CompletionHTML)(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION, HKPlayerData.completionPercentage);
|
/* CompletionHTML(HK.sections, HKPlayerData.completionPercentage); */
|
||||||
(0,_page_functions_js__WEBPACK_IMPORTED_MODULE_1__.GenerateInnerHTML)(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION); // Prevents wrong checkbox behaviour (must run after everything is finished)
|
// ------------------------- Indicate that the save file was loaded and analyzed ----------------------------- //
|
||||||
|
|
||||||
|
_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.saveAnalyzed = true; // ------------------------- Generate everything on the page with updated values ----------------------------- //
|
||||||
|
|
||||||
|
(0,_page_functions_js__WEBPACK_IMPORTED_MODULE_1__.GenerateInnerHTML)(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default); // Prevents wrong checkbox behaviour (must run after everything is finished)
|
||||||
|
|
||||||
(0,_page_functions_js__WEBPACK_IMPORTED_MODULE_1__.CheckboxHintsToggle)();
|
(0,_page_functions_js__WEBPACK_IMPORTED_MODULE_1__.CheckboxHintsToggle)();
|
||||||
(0,_page_functions_js__WEBPACK_IMPORTED_MODULE_1__.CheckboxSpoilersToggle)(); // finish and show benchmark
|
(0,_page_functions_js__WEBPACK_IMPORTED_MODULE_1__.CheckboxSpoilersToggle)(); // finish and show benchmark
|
||||||
|
|
@ -273,7 +277,7 @@ function CheckCompletionPercent(divId, completionPercentage) {
|
||||||
|
|
||||||
|
|
||||||
function CheckSaveFileVersion(divId) {
|
function CheckSaveFileVersion(divId) {
|
||||||
var saveVersion = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION.intro.entries.saveVersion.spoiler;
|
var saveVersion = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.sections.intro.entries.saveVersion.spoiler;
|
||||||
CurrentDataBlank();
|
CurrentDataBlank();
|
||||||
divId.entries.saveVersion.spoiler = "".concat(saveVersion);
|
divId.entries.saveVersion.spoiler = "".concat(saveVersion);
|
||||||
var textFill = "Save Version:".concat(pSpan, "<b>").concat(saveVersion, "</b>").concat(pSpan); // document.getElementById(divId.id).innerHTML += divStart + completionSymbol + textFill + divEnd;
|
var textFill = "Save Version:".concat(pSpan, "<b>").concat(saveVersion, "</b>").concat(pSpan); // document.getElementById(divId.id).innerHTML += divStart + completionSymbol + textFill + divEnd;
|
||||||
|
|
@ -1258,7 +1262,7 @@ function CheckHintsTrue(divId, dataObject, playerData, worldData) {
|
||||||
function HKReadTextArea() {
|
function HKReadTextArea() {
|
||||||
var textAreaId = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : "";
|
var textAreaId = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : "";
|
||||||
// refresh and prepare document for filling with data from the save
|
// refresh and prepare document for filling with data from the save
|
||||||
InitialHTMLPopulate(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION);
|
InitialHTMLPopulate(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default);
|
||||||
var contents = document.getElementById(textAreaId).value;
|
var contents = document.getElementById(textAreaId).value;
|
||||||
|
|
||||||
if (contents.length) {
|
if (contents.length) {
|
||||||
|
|
@ -1274,14 +1278,14 @@ function HKReadTextArea() {
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* Populate all HTML with given ID and their initial data set as false (used at DOM load)
|
* Populate all HTML with given ID and their initial data set as false (used at DOM load)
|
||||||
* @param {object} sections JavaScript Object containing all HTML IDs to populate
|
* @param {object} db JavaScript Object containing all HTML IDs to populate
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
function InitialHTMLPopulate(sections) {
|
function InitialHTMLPopulate(db) {
|
||||||
var sFillText = "";
|
var sFillText = "";
|
||||||
CurrentDataFalse();
|
CurrentDataFalse();
|
||||||
(0,_page_functions_js__WEBPACK_IMPORTED_MODULE_1__.GenerateInnerHTML)(sections); // PrefillHTML(sections);
|
(0,_page_functions_js__WEBPACK_IMPORTED_MODULE_1__.GenerateInnerHTML)(db); // PrefillHTML(sections);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
// Play Time
|
// Play Time
|
||||||
|
|
@ -1443,7 +1447,7 @@ function FillInnerHTML(elementId, textFill) {
|
||||||
|
|
||||||
|
|
||||||
document.addEventListener("DOMContentLoaded", function () {
|
document.addEventListener("DOMContentLoaded", function () {
|
||||||
InitialHTMLPopulate(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default.SECTION);
|
InitialHTMLPopulate(_hk_database_js__WEBPACK_IMPORTED_MODULE_0__.default);
|
||||||
}); // Does an action when the save file location input text is clicked once (auto select & copy to clipboard)
|
}); // Does an action when the save file location input text is clicked once (auto select & copy to clipboard)
|
||||||
|
|
||||||
document.getElementById("save-location-input").addEventListener("click", function (e) {
|
document.getElementById("save-location-input").addEventListener("click", function (e) {
|
||||||
|
|
@ -2476,7 +2480,8 @@ __webpack_require__.r(__webpack_exports__);
|
||||||
This is the whole database for the tool, based on the .json save file data
|
This is the whole database for the tool, based on the .json save file data
|
||||||
*/
|
*/
|
||||||
var HK = {
|
var HK = {
|
||||||
SECTION: {
|
saveAnalyzed: false,
|
||||||
|
sections: {
|
||||||
/* ################ Intro ################### */
|
/* ################ Intro ################### */
|
||||||
intro: {
|
intro: {
|
||||||
h2: "Game Status",
|
h2: "Game Status",
|
||||||
|
|
@ -4733,7 +4738,6 @@ function TranslateMapName(mapCode) {
|
||||||
"use strict";
|
"use strict";
|
||||||
__webpack_require__.r(__webpack_exports__);
|
__webpack_require__.r(__webpack_exports__);
|
||||||
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
||||||
/* harmony export */ "PrefillHTML": () => (/* binding */ PrefillHTML),
|
|
||||||
/* harmony export */ "CompletionHTML": () => (/* binding */ CompletionHTML),
|
/* harmony export */ "CompletionHTML": () => (/* binding */ CompletionHTML),
|
||||||
/* harmony export */ "GenerateInnerHTML": () => (/* binding */ GenerateInnerHTML),
|
/* harmony export */ "GenerateInnerHTML": () => (/* binding */ GenerateInnerHTML),
|
||||||
/* harmony export */ "AppendHTML": () => (/* binding */ AppendHTML),
|
/* harmony export */ "AppendHTML": () => (/* binding */ AppendHTML),
|
||||||
|
|
@ -4806,35 +4810,6 @@ function TogglePageScrollElement(root, element, ratio) {
|
||||||
HideElement(element);
|
HideElement(element);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/**
|
|
||||||
* Cleans "generated" and fills all HTML elements of ids from a given list. Creates only div with id, and h2 with title inside it.
|
|
||||||
* @param {object} jsObj Object with HTML data to fill
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
function PrefillHTML(jsObj) {
|
|
||||||
var element = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "generated";
|
|
||||||
var domElement = document.getElementById(element);
|
|
||||||
var sFillText = ""; // Clean "generated" div
|
|
||||||
// domElement.innerHTML = "";
|
|
||||||
|
|
||||||
var id = "";
|
|
||||||
var h2 = "";
|
|
||||||
var h2id = "";
|
|
||||||
var mp = ""; // max Percent
|
|
||||||
|
|
||||||
var cl = ""; // class
|
|
||||||
|
|
||||||
for (var i in jsObj) {
|
|
||||||
id = jsObj[i].id;
|
|
||||||
h2 = jsObj[i].h2;
|
|
||||||
h2id = "h2-" + jsObj[i].id;
|
|
||||||
mp = "<div class='percent-box'>".concat(i === "intro" ? 0 : jsObj[i].maxPercent, "%</div>");
|
|
||||||
if (!jsObj[i].hasOwnProperty("maxPercent")) mp = "";
|
|
||||||
sFillText += "\n <div id=\"".concat(id, "\" ").concat(cl, ">\n <h2 id='").concat(h2id, "'>").concat(h2).concat(mp, "</h2>\n </div>\n ");
|
|
||||||
} // domElement.innerHTML = sFillText;
|
|
||||||
|
|
||||||
}
|
|
||||||
/**
|
/**
|
||||||
* Replaces the h2 titles with a current percent/max percent values as read from the save file
|
* Replaces the h2 titles with a current percent/max percent values as read from the save file
|
||||||
* @param {object} jsObj Object with HTML data to fill
|
* @param {object} jsObj Object with HTML data to fill
|
||||||
|
|
@ -4886,14 +4861,14 @@ function CompletionHTML(jsObj, hkGameCompletion) {
|
||||||
|
|
||||||
if (jsObj[i].id != "hk-intro") cp += "/";
|
if (jsObj[i].id != "hk-intro") cp += "/";
|
||||||
fillText = "<div class='percent-box".concat(cl, "'>").concat(i === "intro" ? cp : cp + jsObj[i].maxPercent, "%</div>");
|
fillText = "<div class='percent-box".concat(cl, "'>").concat(i === "intro" ? cp : cp + jsObj[i].maxPercent, "%</div>");
|
||||||
} // document.getElementById(h2id).innerHTML = h2 + fillText;
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/* ################################### Optimized Functions ###################################### */
|
/* ################################### Optimized Functions ###################################### */
|
||||||
|
|
||||||
|
|
||||||
function GenerateInnerHTML(sections) {
|
function GenerateInnerHTML(db) {
|
||||||
|
var sections = db.sections;
|
||||||
console.log(sections);
|
console.log(sections);
|
||||||
var finalHTMLFill = "";
|
var finalHTMLFill = "";
|
||||||
var textFill = "";
|
var textFill = "";
|
||||||
|
|
@ -4906,9 +4881,14 @@ function GenerateInnerHTML(sections) {
|
||||||
textFill = SectionStart(sections[section]);
|
textFill = SectionStart(sections[section]);
|
||||||
/* creates a <h2> tag for the current section and fills with current%/max% */
|
/* creates a <h2> tag for the current section and fills with current%/max% */
|
||||||
|
|
||||||
textFill += CompletionFill(sections[section]);
|
if (db.saveAnalyzed === true) {
|
||||||
|
textFill += CompletionFill(sections[section]);
|
||||||
|
} else {
|
||||||
|
textFill += CompletionFillNoSave(sections[section]);
|
||||||
|
}
|
||||||
/* create all main entries */
|
/* create all main entries */
|
||||||
|
|
||||||
|
|
||||||
switch (section) {
|
switch (section) {
|
||||||
case "hints":
|
case "hints":
|
||||||
/* display only one (current) hint */
|
/* display only one (current) hint */
|
||||||
|
|
@ -4939,6 +4919,26 @@ function GenerateInnerHTML(sections) {
|
||||||
function SectionStart(section) {
|
function SectionStart(section) {
|
||||||
return "<div id=\"".concat(section.id, "\">\n");
|
return "<div id=\"".concat(section.id, "\">\n");
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* Replaces the h2 titles with max percent values as read from the database
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
function CompletionFillNoSave(section) {
|
||||||
|
var id = "";
|
||||||
|
var h2 = "";
|
||||||
|
var h2id = "";
|
||||||
|
var mp = ""; // max Percent
|
||||||
|
|
||||||
|
var cl = ""; // class
|
||||||
|
|
||||||
|
id = section.id;
|
||||||
|
h2 = section.h2;
|
||||||
|
h2id = "h2-" + section.id;
|
||||||
|
mp = "<div class='percent-box'>".concat(id === "hk-intro" ? 0 : section.maxPercent, "%</div>");
|
||||||
|
if (!section.hasOwnProperty("maxPercent")) mp = "";
|
||||||
|
return ["<div id=\"".concat(id, "\" ").concat(cl, ">"), "<h2 id='".concat(h2id, "'>").concat(h2).concat(mp, "</h2>"), "</div>\n"].join("");
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* Replaces the h2 titles with a current percent/max percent values as read from the database
|
* Replaces the h2 titles with a current percent/max percent values as read from the database
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
File diff suppressed because one or more lines are too long
|
|
@ -7,7 +7,6 @@ import HK from "./hk-database.js";
|
||||||
/* ----------------- Helper functions --------------------------------------- */
|
/* ----------------- Helper functions --------------------------------------- */
|
||||||
|
|
||||||
import {
|
import {
|
||||||
PrefillHTML,
|
|
||||||
CompletionHTML,
|
CompletionHTML,
|
||||||
GenerateInnerHTML,
|
GenerateInnerHTML,
|
||||||
AppendHTML,
|
AppendHTML,
|
||||||
|
|
@ -224,9 +223,15 @@ function HKCheckCompletion(jsonObject) {
|
||||||
|
|
||||||
// ------------------------- Fill completion ----------------------------- //
|
// ------------------------- Fill completion ----------------------------- //
|
||||||
|
|
||||||
CompletionHTML(HK.sections, HKPlayerData.completionPercentage);
|
/* CompletionHTML(HK.sections, HKPlayerData.completionPercentage); */
|
||||||
|
|
||||||
GenerateInnerHTML(HK.sections);
|
// ------------------------- Indicate that the save file was loaded and analyzed ----------------------------- //
|
||||||
|
|
||||||
|
HK.saveAnalyzed = true;
|
||||||
|
|
||||||
|
// ------------------------- Generate everything on the page with updated values ----------------------------- //
|
||||||
|
|
||||||
|
GenerateInnerHTML(HK);
|
||||||
|
|
||||||
// Prevents wrong checkbox behaviour (must run after everything is finished)
|
// Prevents wrong checkbox behaviour (must run after everything is finished)
|
||||||
CheckboxHintsToggle();
|
CheckboxHintsToggle();
|
||||||
|
|
@ -1311,7 +1316,7 @@ function CheckHintsTrue(divId, dataObject, playerData, worldData) {
|
||||||
function HKReadTextArea(textAreaId = "") {
|
function HKReadTextArea(textAreaId = "") {
|
||||||
|
|
||||||
// refresh and prepare document for filling with data from the save
|
// refresh and prepare document for filling with data from the save
|
||||||
InitialHTMLPopulate(HK.sections);
|
InitialHTMLPopulate(HK);
|
||||||
|
|
||||||
let contents = document.getElementById(textAreaId).value;
|
let contents = document.getElementById(textAreaId).value;
|
||||||
|
|
||||||
|
|
@ -1331,15 +1336,15 @@ function HKReadTextArea(textAreaId = "") {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Populate all HTML with given ID and their initial data set as false (used at DOM load)
|
* Populate all HTML with given ID and their initial data set as false (used at DOM load)
|
||||||
* @param {object} sections JavaScript Object containing all HTML IDs to populate
|
* @param {object} db JavaScript Object containing all HTML IDs to populate
|
||||||
*/
|
*/
|
||||||
function InitialHTMLPopulate(sections) {
|
function InitialHTMLPopulate(db) {
|
||||||
|
|
||||||
let sFillText = "";
|
let sFillText = "";
|
||||||
|
|
||||||
CurrentDataFalse();
|
CurrentDataFalse();
|
||||||
|
|
||||||
GenerateInnerHTML(sections);
|
GenerateInnerHTML(db);
|
||||||
|
|
||||||
// PrefillHTML(sections);
|
// PrefillHTML(sections);
|
||||||
/*
|
/*
|
||||||
|
|
@ -1517,7 +1522,7 @@ function FillInnerHTML(elementId, textFill) {
|
||||||
|
|
||||||
// Populate HTML at load (before img and css)
|
// Populate HTML at load (before img and css)
|
||||||
document.addEventListener("DOMContentLoaded", () => {
|
document.addEventListener("DOMContentLoaded", () => {
|
||||||
InitialHTMLPopulate(HK.sections);
|
InitialHTMLPopulate(HK);
|
||||||
});
|
});
|
||||||
|
|
||||||
// Does an action when the save file location input text is clicked once (auto select & copy to clipboard)
|
// Does an action when the save file location input text is clicked once (auto select & copy to clipboard)
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
|
|
||||||
const HK = {
|
const HK = {
|
||||||
|
|
||||||
saveLoaded: false,
|
saveAnalyzed: false,
|
||||||
|
|
||||||
sections: {
|
sections: {
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -64,41 +64,6 @@ function TogglePageScrollElement(root, element, ratio) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Cleans "generated" and fills all HTML elements of ids from a given list. Creates only div with id, and h2 with title inside it.
|
|
||||||
* @param {object} jsObj Object with HTML data to fill
|
|
||||||
*/
|
|
||||||
function PrefillHTML(jsObj, element = "generated") {
|
|
||||||
|
|
||||||
let domElement = document.getElementById(element);
|
|
||||||
let sFillText = "";
|
|
||||||
// Clean "generated" div
|
|
||||||
// domElement.innerHTML = "";
|
|
||||||
|
|
||||||
let id = "";
|
|
||||||
let h2 = "";
|
|
||||||
let h2id = "";
|
|
||||||
let mp = ""; // max Percent
|
|
||||||
let cl = ""; // class
|
|
||||||
|
|
||||||
for (let i in jsObj) {
|
|
||||||
id = jsObj[i].id;
|
|
||||||
h2 = jsObj[i].h2;
|
|
||||||
h2id = "h2-" + jsObj[i].id;
|
|
||||||
|
|
||||||
mp = `<div class='percent-box'>${(i === "intro") ? 0: jsObj[i].maxPercent}%</div>`;
|
|
||||||
if (!jsObj[i].hasOwnProperty("maxPercent")) mp = "";
|
|
||||||
|
|
||||||
sFillText += `
|
|
||||||
<div id="${id}" ${cl}>
|
|
||||||
<h2 id='${h2id}'>${h2}${mp}</h2>
|
|
||||||
</div>
|
|
||||||
`;
|
|
||||||
}
|
|
||||||
|
|
||||||
// domElement.innerHTML = sFillText;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Replaces the h2 titles with a current percent/max percent values as read from the save file
|
* Replaces the h2 titles with a current percent/max percent values as read from the save file
|
||||||
* @param {object} jsObj Object with HTML data to fill
|
* @param {object} jsObj Object with HTML data to fill
|
||||||
|
|
@ -155,8 +120,6 @@ function CompletionHTML(jsObj, hkGameCompletion) {
|
||||||
|
|
||||||
fillText = `<div class='percent-box${cl}'>${(i === "intro") ? cp: cp + jsObj[i].maxPercent}%</div>`;
|
fillText = `<div class='percent-box${cl}'>${(i === "intro") ? cp: cp + jsObj[i].maxPercent}%</div>`;
|
||||||
}
|
}
|
||||||
|
|
||||||
// document.getElementById(h2id).innerHTML = h2 + fillText;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -164,8 +127,10 @@ function CompletionHTML(jsObj, hkGameCompletion) {
|
||||||
/* ################################### Optimized Functions ###################################### */
|
/* ################################### Optimized Functions ###################################### */
|
||||||
|
|
||||||
|
|
||||||
function GenerateInnerHTML(sections) {
|
function GenerateInnerHTML(db) {
|
||||||
|
|
||||||
|
let sections = db.sections;
|
||||||
|
|
||||||
console.log(sections);
|
console.log(sections);
|
||||||
|
|
||||||
let finalHTMLFill = "";
|
let finalHTMLFill = "";
|
||||||
|
|
@ -180,8 +145,13 @@ function GenerateInnerHTML(sections) {
|
||||||
/* starts a new <div> with the current section id */
|
/* starts a new <div> with the current section id */
|
||||||
textFill = SectionStart(sections[section]);
|
textFill = SectionStart(sections[section]);
|
||||||
|
|
||||||
/* creates a <h2> tag for the current section and fills with current%/max% */
|
/* creates a <h2> tag for the current section and fills with current%/max%
|
||||||
textFill += CompletionFill(sections[section]);
|
If the save file was not analyzed, then fill only max% on blue background*/
|
||||||
|
if (db.saveAnalyzed === true) {
|
||||||
|
textFill += CompletionFill(sections[section]);
|
||||||
|
} else {
|
||||||
|
textFill += CompletionFillNoSave(sections[section]);
|
||||||
|
}
|
||||||
|
|
||||||
/* create all main entries */
|
/* create all main entries */
|
||||||
switch (section) {
|
switch (section) {
|
||||||
|
|
@ -217,6 +187,31 @@ function SectionStart(section) {
|
||||||
return `<div id="${section.id}">\n`;
|
return `<div id="${section.id}">\n`;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Replaces the h2 titles with max percent values as read from the database
|
||||||
|
*/
|
||||||
|
function CompletionFillNoSave(section) {
|
||||||
|
|
||||||
|
let id = "";
|
||||||
|
let h2 = "";
|
||||||
|
let h2id = "";
|
||||||
|
let mp = ""; // max Percent
|
||||||
|
let cl = ""; // class
|
||||||
|
|
||||||
|
id = section.id;
|
||||||
|
h2 = section.h2;
|
||||||
|
h2id = "h2-" + section.id;
|
||||||
|
|
||||||
|
mp = `<div class='percent-box'>${(id === "hk-intro") ? 0: section.maxPercent}%</div>`;
|
||||||
|
if (!section.hasOwnProperty("maxPercent")) mp = "";
|
||||||
|
|
||||||
|
return [
|
||||||
|
`<div id="${id}" ${cl}>`,
|
||||||
|
`<h2 id='${h2id}'>${h2}${mp}</h2>`,
|
||||||
|
"</div>\n"
|
||||||
|
].join("");
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Replaces the h2 titles with a current percent/max percent values as read from the database
|
* Replaces the h2 titles with a current percent/max percent values as read from the database
|
||||||
*/
|
*/
|
||||||
|
|
@ -579,7 +574,6 @@ document.getElementById("checkbox-spoilers").addEventListener("click", CheckboxS
|
||||||
/* ------------------------- Exports ------------------------------- */
|
/* ------------------------- Exports ------------------------------- */
|
||||||
|
|
||||||
export {
|
export {
|
||||||
PrefillHTML,
|
|
||||||
CompletionHTML,
|
CompletionHTML,
|
||||||
GenerateInnerHTML,
|
GenerateInnerHTML,
|
||||||
AppendHTML,
|
AppendHTML,
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue