// ==UserScript== // @name MH Timers+ // @author Warden Slayer - Warden Slayer#2302 // @namespace https://greasyfork.org/en/users/227259-wardenslayer // @version 1.5 // @description Handy script to keep track of the various MH location timers // @resource https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js // @resource YOUR_CSS https://cdnjs.cloudflare.com/ajax/libs/jquery-confirm/3.3.2/jquery-confirm.min.css // @require https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.11.2/js/all.js // @require https://cdnjs.cloudflare.com/ajax/libs/jquery-confirm/3.3.2/jquery-confirm.min.js // @include http://www.mousehuntgame.com/* // @include https://www.mousehuntgame.com/* // @grant GM_setClipboard // @grant GM_addStyle // @grant GM_getResourceText // @downloadURL none // ==/UserScript== $(document).ready(function() { var cssTxt = GM_getResourceText ("YOUR_CSS"); GM_addStyle (cssTxt); buildTimerBox(); buildControlPanels(); buildTinkerPanel(); startTimers(); }); function buildTimerBox() { if ($(".timerBox").length > 0) return; if ($(".accordion").length > 0) return; var container = $("#mousehuntContainer"); var accordion = document.createElement("div"); accordion.classList.add("accordion"); $(accordion).css({ 'background-image': "url('https://www.toptal.com/designers/subtlepatterns/patterns/interlaced.png')", 'width': '98%', 'height': '15px', 'padding': '5px', 'border': '2px solid black', 'cursor': 'pointer' }); var accordionPrompt = document.createElement("div"); accordionPrompt.classList.add("accordionPrompt"); var accordionTitle = document.createElement("div"); accordionTitle.classList.add("accordionTitle"); $(accordionTitle).text("MouseHunt Timers+").css({ 'float': 'left', 'padding': '1px 0', 'font-size': '12px', 'font-weight': 'bold' }) $(accordionPrompt).text("Click to Hide").css({ 'float': 'right', 'padding': '1px 0', 'font-size': '11px', 'font-weight': 'bold' }) accordion.appendChild(accordionTitle) accordion.appendChild(accordionPrompt) var timerBox = document.createElement("div"); if (localStorage.getItem('HideTimers') == "Y") { timerBox.classList.add("timerBox") timerBox.classList.add("hide"); $(accordionPrompt).text("Click to Show") } else { timerBox.classList.add("timerBox"); } $(timerBox).css({ 'background-image': "url('https://www.toptal.com/designers/subtlepatterns/patterns/interlaced.png')" }); $(timerBox).css({ 'height': 150 + "px", 'padding': 2 + "px" }); let forbiddenGrove = buildForbiddenGrove(); if (localStorage.getItem('RemindGrove') == null) { localStorage.setItem('RemindGrove', 'N') } let balacksCove = buildBalacksCove(); if (localStorage.getItem('RemindCove') == null) { localStorage.setItem('RemindCove', 'N') } let seasonalGarden = buildSeasonalGarden(); if (localStorage.getItem('RemindGarden') == null) { localStorage.setItem('RemindGarden', 'N') } let toxicSpill = buildToxicSpill(); if (localStorage.getItem('RemindSpill') == null) { localStorage.setItem('RemindSpill', 'N') } timerBox.appendChild(forbiddenGrove) timerBox.appendChild(balacksCove) timerBox.appendChild(seasonalGarden) timerBox.appendChild(toxicSpill) $(forbiddenGrove).css({ 'float': 'left' }) $(balacksCove).css({ 'float': 'left', 'marginLeft': 1 + "px" }) $(seasonalGarden).css({ 'float': 'left', 'marginLeft': 1 + "px" }) $(toxicSpill).css({ 'float': 'left', 'marginLeft': 1 + "px" }) //LAST container.prepend(timerBox) container.prepend(accordion) } $(document).on('click', '.accordion', function() { if (localStorage.getItem('HideTimers') == "Y") { //show $('.timerBox').removeClass("hide") $('.accordionPrompt').text("Click to Hide") localStorage.setItem('HideTimers', "N") } else { //hide $('.timerBox').find('*').removeClass("hide") $('.timerBox').addClass("hide") $('.accordionPrompt').text("Click to Show") $('.tinkerPanel').addClass("hide"); $('.tinkerButton').text("Tinker"); localStorage.setItem('HideTimers', "Y") } }) function buildControlPanels() { var timerBox = $(".timerBox"); //FG const remindGrove = localStorage.getItem('RemindGrove'); var forbiddenGroveControlPanel = document.createElement("div"); forbiddenGroveControlPanel.classList.add("forbiddenGroveControlPanel"); var forbiddenGroveButton = document.createElement("button"); forbiddenGroveButton.id = "forbiddenGroveButton"; forbiddenGroveButton.innerText = "Travel"; forbiddenGroveControlPanel.appendChild(forbiddenGroveButton); $(forbiddenGroveControlPanel).css({ 'float': 'left', 'width': '21.5%', 'marginTop': 10 + "px" }) $(forbiddenGroveButton).css({ 'width': '75px', 'float': 'left', 'marginRight': 5 + "px" }) var forbiddenGroveCb = document.createElement('input'); forbiddenGroveCb.type = "checkbox"; forbiddenGroveCb.name = "forbiddenGroveCb"; forbiddenGroveCb.value = "value"; forbiddenGroveCb.id = "forbiddenGroveCb"; if (remindGrove.search("N") < 0) { forbiddenGroveCb.checked = "Yes"; } else { forbiddenGroveCb.checked = ""; } var forbiddenGroveCbLabel = document.createElement('label') forbiddenGroveCbLabel.htmlFor = "forbiddenGroveCbLabel"; forbiddenGroveCbLabel.appendChild(document.createTextNode('Remind ')); forbiddenGroveControlPanel.appendChild(forbiddenGroveCbLabel); forbiddenGroveControlPanel.appendChild(forbiddenGroveCb) $(forbiddenGroveCbLabel).css({ 'float': 'left', 'fontSize': "14px", 'width': '45px', }) $(forbiddenGroveCb).css({ 'float': 'left', 'width': '20px' }) timerBox.append(forbiddenGroveControlPanel); //BC const remindCove = localStorage.getItem('RemindCove'); var balacksCoveControlPanel = document.createElement("div"); balacksCoveControlPanel.classList.add("balacksCoveControlPanel"); var balacksCoveButton = document.createElement("button"); balacksCoveButton.id = "balacksCoveButton"; balacksCoveButton.innerText = "Travel"; balacksCoveControlPanel.appendChild(balacksCoveButton); $(balacksCoveControlPanel).css({ 'float': 'left', 'width': '25%', 'marginLeft': 5 + "px", 'marginTop': 10 + "px" }) $(balacksCoveButton).css({ 'width': '75px', 'float': 'left', 'marginRight': 5 + "px" }) var balacksCoveCb = document.createElement('input'); balacksCoveCb.type = "checkbox"; balacksCoveCb.name = "balacksCoveCb"; balacksCoveCb.value = "value"; balacksCoveCb.id = "balacksCoveCb"; if (remindCove.search("N") < 0) { balacksCoveCb.checked = "Yes"; } else { balacksCoveCb.checked = ""; } var balacksCoveCbLabel = document.createElement('label') balacksCoveCbLabel.htmlFor = "balacksCoveCbLabel"; balacksCoveCbLabel.appendChild(document.createTextNode('Remind ')); balacksCoveControlPanel.appendChild(balacksCoveCbLabel); balacksCoveControlPanel.appendChild(balacksCoveCb) $(balacksCoveCbLabel).css({ 'float': 'left', 'fontSize': "14px", 'width': '45px', }) $(balacksCoveCb).css({ 'float': 'left', 'width': '20px' }) timerBox.append(balacksCoveControlPanel); //SG const remindGarden = localStorage.getItem('RemindGarden'); var seasonalGardenControlPanel = document.createElement("div"); seasonalGardenControlPanel.classList.add("seasonalGardenControlPanel"); var seasonalGardenButton = document.createElement("button"); seasonalGardenButton.id = "seasonalGardenButton"; seasonalGardenButton.innerText = "Travel"; seasonalGardenControlPanel.appendChild(seasonalGardenButton); $(seasonalGardenControlPanel).css({ 'float': 'left', 'width': '24%', 'marginLeft': 5 + "px", 'marginTop': 10 + "px" }) $(seasonalGardenButton).css({ 'width': '75px', 'float': 'left', 'marginRight': 5 + "px" }) var seasonalGardenCb = document.createElement('input'); seasonalGardenCb.type = "checkbox"; seasonalGardenCb.name = "seasonalGardenCb"; seasonalGardenCb.value = "value"; seasonalGardenCb.id = "seasonalGardenCb"; if (remindGarden.search("N") < 0) { seasonalGardenCb.checked = "Yes"; } else { seasonalGardenCb.checked = ""; } var seasonalGardenCbLabel = document.createElement('label') seasonalGardenCbLabel.htmlFor = "seasonalGardenCbLabel"; seasonalGardenCbLabel.appendChild(document.createTextNode('Remind ')); seasonalGardenControlPanel.appendChild(seasonalGardenCbLabel); seasonalGardenControlPanel.appendChild(seasonalGardenCb) $(seasonalGardenCbLabel).css({ 'float': 'left', 'fontSize': "14px", 'width': '45px', }) $(seasonalGardenCb).css({ 'float': 'left', 'width': '20px' }) timerBox.append(seasonalGardenControlPanel); //TS const remindSpill = localStorage.getItem('RemindSpill'); var toxicSpillControlPanel = document.createElement("div"); toxicSpillControlPanel.classList.add("toxicSpillControlPanel"); var toxicSpillButton = document.createElement("button"); toxicSpillButton.id = "toxicSpillButton"; toxicSpillButton.innerText = "Travel"; toxicSpillControlPanel.appendChild(toxicSpillButton); $(toxicSpillControlPanel).css({ 'float': 'left', 'width': '26%', 'marginLeft': 10 + "px", 'marginTop': 10 + "px" }) $(toxicSpillButton).css({ 'width': '75px', 'float': 'left', 'marginRight': 5 + "px" }) var toxicSpillCb = document.createElement('input'); toxicSpillCb.type = "checkbox"; toxicSpillCb.name = "toxicSpillCb"; toxicSpillCb.value = "value"; toxicSpillCb.id = "toxicSpillCb"; if (remindSpill.search("N") < 0) { toxicSpillCb.checked = "Yes"; } else { toxicSpillCb.checked = ""; } var toxicSpillCbLabel = document.createElement('label') toxicSpillCbLabel.htmlFor = "toxicSpillCbLabel"; toxicSpillCbLabel.appendChild(document.createTextNode('Remind ')); toxicSpillControlPanel.appendChild(toxicSpillCbLabel); toxicSpillControlPanel.appendChild(toxicSpillCb) $(toxicSpillCbLabel).css({ 'float': 'left', 'fontSize': "14px", 'width': '45px', }) $(toxicSpillCb).css({ 'float': 'left', 'width': '20px' }) //tinker button var tinkerButton = document.createElement("div"); tinkerButton.classList.add("tinkerButton"); $(tinkerButton).text("Tinker"); toxicSpillControlPanel.appendChild(tinkerButton); $(tinkerButton).css({ 'width': '30px', 'float': 'right', 'padding': 3 + 'px', 'color': 'rgb(4, 44, 202)', 'marginRight': 5 + "px" }) timerBox.append(toxicSpillControlPanel); } $('.tinkerButton').mouseover(function() { $('.tinkerButton').attr('title', 'Tinker Menu'); $('.tinkerButton').css('cursor', 'pointer'); }); $(document).on('click', '.tinkerButton', function() { var fg = $('.forbiddenGrove'); var bc = $('.balacksCove'); var sg = $('.seasonalGarden'); var ts = $('.toxicSpill'); var tp = $('.tinkerPanel'); if (fg.hasClass("hide")) { //show fg.removeClass("hide"); bc.removeClass("hide"); sg.removeClass("hide"); ts.removeClass("hide"); tp.addClass("hide"); $('.tinkerButton').text("Tinker"); } else { //hide fg.addClass("hide"); bc.addClass("hide"); sg.addClass("hide"); ts.addClass("hide"); tp.removeClass("hide"); $('.tinkerButton').text("Close"); } }); function buildTinkerPanel() { var timerBox = $(".timerBox"); var tinkerPanel = document.createElement("div"); tinkerPanel.classList.add("tinkerPanel"); tinkerPanel.classList.add("hide"); $(tinkerPanel).css({ 'height': '70%', 'width': '99%', 'float': 'left', 'padding': 2 + "px", 'background-image': "url('https://www.toptal.com/designers/subtlepatterns/patterns/interlaced.png')", 'border': '1px solid black' }); //FG Options const remindGrove = localStorage.getItem('RemindGrove'); var forbiddenGroveOptions = document.createElement("div"); forbiddenGroveOptions.classList.add("forbiddenGroveOptions"); var forbiddenGroveOptionsLabel = document.createElement("div"); forbiddenGroveOptionsLabel.classList.add("forbiddenGroveOptionsLabel"); var forbiddenGroveOptionsLabelText = document.createTextNode("Forbidden Grove"); forbiddenGroveOptionsLabel.appendChild(forbiddenGroveOptionsLabelText); forbiddenGroveOptions.appendChild(forbiddenGroveOptionsLabel); $(forbiddenGroveOptions).css({ 'float': 'left', 'width': '12%', }) $(forbiddenGroveOptionsLabel).css({ 'float': 'left', 'width': '100%', 'font-weight': 700, "marginRight": "5px" }) var forbiddenGroveOpenCb = document.createElement('input'); forbiddenGroveOpenCb.type = "checkbox"; forbiddenGroveOpenCb.name = "forbiddenGroveOpenCb"; forbiddenGroveOpenCb.value = "value"; forbiddenGroveOpenCb.id = "forbiddenGroveOpenCb"; if (remindGrove.search("O") >= 0) { forbiddenGroveOpenCb.checked = "Yes"; } else { forbiddenGroveOpenCb.checked = ""; } var forbiddenGroveOpenCbLabel = document.createElement('label') forbiddenGroveOpenCbLabel.htmlFor = "forbiddenGroveOpenCbLabel"; forbiddenGroveOpenCbLabel.appendChild(document.createTextNode('Open')); $(forbiddenGroveOpenCbLabel).css({ 'float': 'left', 'width': '30px', 'padding': '1px' }) $(forbiddenGroveOpenCb).css({ 'float': 'left', 'width': '20px' }) forbiddenGroveOptions.appendChild(forbiddenGroveOpenCbLabel); forbiddenGroveOptions.appendChild(forbiddenGroveOpenCb); // var forbiddenGroveCloseCb = document.createElement('input'); forbiddenGroveCloseCb.type = "checkbox"; forbiddenGroveCloseCb.name = "forbiddenGroveCloseCb"; forbiddenGroveCloseCb.value = "value"; forbiddenGroveCloseCb.id = "forbiddenGroveCloseCb"; if (remindGrove.search("C") >= 0) { forbiddenGroveCloseCb.checked = "Yes"; } else { forbiddenGroveCloseCb.checked = ""; } var forbiddenGroveCloseCbLabel = document.createElement('label') forbiddenGroveCloseCbLabel.htmlFor = "forbiddenGroveCloseCbLabel"; forbiddenGroveCloseCbLabel.appendChild(document.createTextNode('Closed')); $(forbiddenGroveCloseCbLabel).css({ 'float': 'left', 'width': '30px', 'padding': '1px' }) $(forbiddenGroveCloseCb).css({ 'float': 'left', 'width': '20px' }) forbiddenGroveOptions.appendChild(forbiddenGroveCloseCbLabel); forbiddenGroveOptions.appendChild(forbiddenGroveCloseCb); //BC Options const remindCove = localStorage.getItem('RemindCove'); var balacksCoveOptions = document.createElement("div"); balacksCoveOptions.classList.add("balacksCoveOptions"); var balacksCoveOptionsLabel = document.createElement("div"); balacksCoveOptionsLabel.classList.add("balacksCoveOptionsLabel"); var balacksCoveOptionsLabelText = document.createTextNode("Balack's Cove"); balacksCoveOptionsLabel.appendChild(balacksCoveOptionsLabelText); balacksCoveOptions.appendChild(balacksCoveOptionsLabel); $(balacksCoveOptions).css({ 'float': 'left', 'width': '12%', }) $(balacksCoveOptionsLabel).css({ 'float': 'left', 'width': '100%', 'font-weight': 700, "marginRight": "5px" }) var balacksCoveLowCb = document.createElement('input'); balacksCoveLowCb.type = "checkbox"; balacksCoveLowCb.name = "balacksCoveLowCb"; balacksCoveLowCb.value = "value"; balacksCoveLowCb.id = "balacksCoveLowCb"; if ((remindCove.search("L") >= 0) && (remindCove.search("N") < 0)) { balacksCoveLowCb.checked = "Yes"; } else { balacksCoveLowCb.checked = ""; } var balacksCoveLowCbLabel = document.createElement('label') balacksCoveLowCbLabel.htmlFor = "balacksCoveLowCbLabel"; balacksCoveLowCbLabel.appendChild(document.createTextNode('Low')); $(balacksCoveLowCbLabel).css({ 'float': 'left', 'width': '30px', 'padding': '1px' }) $(balacksCoveLowCb).css({ 'float': 'left', 'width': '20px' }) balacksCoveOptions.appendChild(balacksCoveLowCbLabel); balacksCoveOptions.appendChild(balacksCoveLowCb); // var balacksCoveMidCb = document.createElement('input'); balacksCoveMidCb.type = "checkbox"; balacksCoveMidCb.name = "balacksCoveMidCb"; balacksCoveMidCb.value = "value"; balacksCoveMidCb.id = "balacksCoveMidCb"; if (remindCove.search("M") >= 0) { balacksCoveMidCb.checked = "Yes"; } else { balacksCoveMidCb.checked = ""; } var balacksCoveMidCbLabel = document.createElement('label') balacksCoveMidCbLabel.htmlFor = "balacksCoveMidCbLabel"; balacksCoveMidCbLabel.appendChild(document.createTextNode('Mid')); $(balacksCoveMidCbLabel).css({ 'float': 'left', 'width': '30px', 'padding': '1px' }) $(balacksCoveMidCb).css({ 'float': 'left', 'width': '20px' }) balacksCoveOptions.appendChild(balacksCoveMidCbLabel); balacksCoveOptions.appendChild(balacksCoveMidCb); // var balacksCoveHighCb = document.createElement('input'); balacksCoveHighCb.type = "checkbox"; balacksCoveHighCb.name = "balacksCoveHighCb"; balacksCoveHighCb.value = "value"; balacksCoveHighCb.id = "balacksCoveHighCb"; if (remindCove.search("H") >= 0) { balacksCoveHighCb.checked = "Yes"; } else { balacksCoveHighCb.checked = ""; } var balacksCoveHighCbLabel = document.createElement('label') balacksCoveHighCbLabel.htmlFor = "balacksCoveHighCbLabel"; balacksCoveHighCbLabel.appendChild(document.createTextNode('High')); $(balacksCoveHighCbLabel).css({ 'float': 'left', 'width': '30px', 'padding': '1px' }) $(balacksCoveHighCb).css({ 'float': 'left', 'width': '20px' }) balacksCoveOptions.appendChild(balacksCoveHighCbLabel); balacksCoveOptions.appendChild(balacksCoveHighCb); //SG Options const remindGarden = localStorage.getItem('RemindGarden'); var seasonalGardenOptions = document.createElement("div"); seasonalGardenOptions.classList.add("seasonalGardenOptions"); var seasonalGardenOptionsLabel = document.createElement("div"); seasonalGardenOptionsLabel.classList.add("seasonalGardenOptionsLabel"); var seasonalGardenOptionsLabelText = document.createTextNode("Seasonal Garden"); seasonalGardenOptionsLabel.appendChild(seasonalGardenOptionsLabelText); seasonalGardenOptions.appendChild(seasonalGardenOptionsLabel); $(seasonalGardenOptions).css({ 'float': 'left', 'width': '13%', }) $(seasonalGardenOptionsLabel).css({ 'float': 'left', 'width': '100%', 'font-weight': 700, "marginRight": "5px" }) var seasonalGardenFallCb = document.createElement('input'); seasonalGardenFallCb.type = "checkbox"; seasonalGardenFallCb.name = "seasonalGardenFallCb"; seasonalGardenFallCb.value = "value"; seasonalGardenFallCb.id = "seasonalGardenFallCb"; if (remindGarden.search("F") >= 0) { seasonalGardenFallCb.checked = "Yes"; } else { seasonalGardenFallCb.checked = ""; } var seasonalGardenFallCbLabel = document.createElement('label') seasonalGardenFallCbLabel.htmlFor = "seasonalGardenFallCbLabel"; seasonalGardenFallCbLabel.appendChild(document.createTextNode('Fall')); $(seasonalGardenFallCbLabel).css({ 'float': 'left', 'width': '40px', 'padding': '1px', }) $(seasonalGardenFallCb).css({ 'float': 'left', 'width': '20px', "marginRight": "25px" }) seasonalGardenOptions.appendChild(seasonalGardenFallCbLabel); seasonalGardenOptions.appendChild(seasonalGardenFallCb); // var seasonalGardenWinterCb = document.createElement('input'); seasonalGardenWinterCb.type = "checkbox"; seasonalGardenWinterCb.name = "seasonalGardenWinterCb"; seasonalGardenWinterCb.value = "value"; seasonalGardenWinterCb.id = "seasonalGardenWinterCb"; if (remindGarden.search("W") >= 0) { seasonalGardenWinterCb.checked = "Yes"; } else { seasonalGardenWinterCb.checked = ""; } var seasonalGardenWinterCbLabel = document.createElement('label') seasonalGardenWinterCbLabel.htmlFor = "seasonalGardenWinterCbLabel"; seasonalGardenWinterCbLabel.appendChild(document.createTextNode('Winter')); $(seasonalGardenWinterCbLabel).css({ 'float': 'left', 'width': '40px', 'padding': '1px' }) $(seasonalGardenWinterCb).css({ 'float': 'left', 'width': '20px', "marginRight": "25px" }) seasonalGardenOptions.appendChild(seasonalGardenWinterCbLabel); seasonalGardenOptions.appendChild(seasonalGardenWinterCb); // var seasonalGardenSpringCb = document.createElement('input'); seasonalGardenSpringCb.type = "checkbox"; seasonalGardenSpringCb.name = "seasonalGardenSpringCb"; seasonalGardenSpringCb.value = "value"; seasonalGardenSpringCb.id = "seasonalGardenSpringCb"; if (remindGarden.search("S") >= 0) { seasonalGardenSpringCb.checked = "Yes"; } else { seasonalGardenSpringCb.checked = ""; } var seasonalGardenSpringCbLabel = document.createElement('label') seasonalGardenSpringCbLabel.htmlFor = "seasonalGardenSpringCbLabel"; seasonalGardenSpringCbLabel.appendChild(document.createTextNode('Spring')); $(seasonalGardenSpringCbLabel).css({ 'float': 'left', 'width': '40px', 'padding': '1px' }) $(seasonalGardenSpringCb).css({ 'float': 'left', 'width': '20px', "marginRight": "25px" }) seasonalGardenOptions.appendChild(seasonalGardenSpringCbLabel); seasonalGardenOptions.appendChild(seasonalGardenSpringCb); // var seasonalGardenSummerCb = document.createElement('input'); seasonalGardenSummerCb.type = "checkbox"; seasonalGardenSummerCb.name = "seasonalGardenSummerCb"; seasonalGardenSummerCb.value = "value"; seasonalGardenSummerCb.id = "seasonalGardenSummerCb"; if (remindGarden.search("R") >= 0) { seasonalGardenSummerCb.checked = "Yes"; } else { seasonalGardenSummerCb.checked = ""; } var seasonalGardenSummerCbLabel = document.createElement('label') seasonalGardenSummerCbLabel.htmlFor = "seasonalGardenSummerCbLabel"; seasonalGardenSummerCbLabel.appendChild(document.createTextNode('Summer')); $(seasonalGardenSummerCbLabel).css({ 'float': 'left', 'width': '40px', 'padding': '1px' }) $(seasonalGardenSummerCb).css({ 'float': 'left', 'width': '20px', "marginRight": "25px" }) seasonalGardenOptions.appendChild(seasonalGardenSummerCbLabel); seasonalGardenOptions.appendChild(seasonalGardenSummerCb); //TS Options const remindSpill = localStorage.getItem('RemindSpill'); var toxicSpillOptions = document.createElement("div"); toxicSpillOptions.classList.add("toxicSpillOptions"); var toxicSpillOptionsLabel = document.createElement("div"); toxicSpillOptionsLabel.classList.add("toxicSpillOptionsLabel"); var toxicSpillOptionsLabelText = document.createTextNode("Toxic Spill"); toxicSpillOptionsLabel.appendChild(toxicSpillOptionsLabelText); toxicSpillOptions.appendChild(toxicSpillOptionsLabel); $(toxicSpillOptions).css({ 'float': 'left', 'width': '18%', 'marginLeft': '10px', }) $(toxicSpillOptionsLabel).css({ 'float': 'left', 'width': '100%', 'font-weight': 700, }) var toxicSpillHeroCb = document.createElement('input'); toxicSpillHeroCb.type = "checkbox"; toxicSpillHeroCb.name = "toxicSpillHeroCb"; toxicSpillHeroCb.value = "value"; toxicSpillHeroCb.id = "toxicSpillHeroCb"; if (remindSpill.search("H") >= 0) { toxicSpillHeroCb.checked = "Yes"; } else { toxicSpillHeroCb.checked = ""; } var toxicSpillHeroCbLabel = document.createElement('label') toxicSpillHeroCbLabel.htmlFor = "toxicSpillHeroCbLabel"; toxicSpillHeroCbLabel.appendChild(document.createTextNode('Hero')); $(toxicSpillHeroCbLabel).css({ 'float': 'left', 'width': '35px', 'padding': '1px', }) $(toxicSpillHeroCb).css({ 'float': 'left', 'width': '20px', "marginRight": "5px" }) toxicSpillOptions.appendChild(toxicSpillHeroCbLabel); toxicSpillOptions.appendChild(toxicSpillHeroCb); // var toxicSpillKnightCb = document.createElement('input'); toxicSpillKnightCb.type = "checkbox"; toxicSpillKnightCb.name = "toxicSpillKnightCb"; toxicSpillKnightCb.value = "value"; toxicSpillKnightCb.id = "toxicSpillKnightCb"; if (remindSpill.search("K") >= 0) { toxicSpillKnightCb.checked = "Yes"; } else { toxicSpillKnightCb.checked = ""; } var toxicSpillKnightCbLabel = document.createElement('label') toxicSpillKnightCbLabel.htmlFor = "toxicSpillKnightCbLabel"; toxicSpillKnightCbLabel.appendChild(document.createTextNode('Knight')); $(toxicSpillKnightCbLabel).css({ 'float': 'left', 'width': '35px', 'padding': '1px', }) $(toxicSpillKnightCb).css({ 'float': 'left', 'width': '20px', "marginRight": "5px" }) toxicSpillOptions.appendChild(toxicSpillKnightCbLabel); toxicSpillOptions.appendChild(toxicSpillKnightCb); // var toxicSpillLordCb = document.createElement('input'); toxicSpillLordCb.type = "checkbox"; toxicSpillLordCb.name = "toxicSpillLordCb"; toxicSpillLordCb.value = "value"; toxicSpillLordCb.id = "toxicSpillLordCb"; if (remindSpill.search("L") >= 0) { toxicSpillLordCb.checked = "Yes"; } else { toxicSpillLordCb.checked = ""; } var toxicSpillLordCbLabel = document.createElement('label') toxicSpillLordCbLabel.htmlFor = "toxicSpillLordCbLabel"; toxicSpillLordCbLabel.appendChild(document.createTextNode('Lord')); $(toxicSpillLordCbLabel).css({ 'float': 'left', 'width': '35px', 'padding': '1px', }) $(toxicSpillLordCb).css({ 'float': 'left', 'width': '20px', "marginRight": "5px" }) toxicSpillOptions.appendChild(toxicSpillLordCbLabel); toxicSpillOptions.appendChild(toxicSpillLordCb); // var toxicSpillBaronCb = document.createElement('input'); toxicSpillBaronCb.type = "checkbox"; toxicSpillBaronCb.name = "toxicSpillBaronCb"; toxicSpillBaronCb.value = "value"; toxicSpillBaronCb.id = "toxicSpillBaronCb"; if (remindSpill.search("B") >= 0) { toxicSpillBaronCb.checked = "Yes"; } else { toxicSpillBaronCb.checked = ""; } var toxicSpillBaronCbLabel = document.createElement('label') toxicSpillBaronCbLabel.htmlFor = "toxicSpillBaronCbLabel"; toxicSpillBaronCbLabel.appendChild(document.createTextNode('Baron')); $(toxicSpillBaronCbLabel).css({ 'float': 'left', 'width': '35px', 'padding': '1px', }) $(toxicSpillBaronCb).css({ 'float': 'left', 'width': '20px', "marginRight": "5px" }) toxicSpillOptions.appendChild(toxicSpillBaronCbLabel); toxicSpillOptions.appendChild(toxicSpillBaronCb); // var toxicSpillCountCb = document.createElement('input'); toxicSpillCountCb.type = "checkbox"; toxicSpillCountCb.name = "toxicSpillCountCb"; toxicSpillCountCb.value = "value"; toxicSpillCountCb.id = "toxicSpillCountCb"; if (remindSpill.search("C") >= 0) { toxicSpillCountCb.checked = "Yes"; } else { toxicSpillCountCb.checked = ""; } var toxicSpillCountCbLabel = document.createElement('label') toxicSpillCountCbLabel.htmlFor = "toxicSpillCountCbLabel"; toxicSpillCountCbLabel.appendChild(document.createTextNode('Count')); $(toxicSpillCountCbLabel).css({ 'float': 'left', 'width': '35px', 'padding': '1px', }) $(toxicSpillCountCb).css({ 'float': 'left', 'width': '20px', "marginRight": "5px" }) toxicSpillOptions.appendChild(toxicSpillCountCbLabel); toxicSpillOptions.appendChild(toxicSpillCountCb); // var toxicSpillDukeCb = document.createElement('input'); toxicSpillDukeCb.type = "checkbox"; toxicSpillDukeCb.name = "toxicSpillDukeCb"; toxicSpillDukeCb.value = "value"; toxicSpillDukeCb.id = "toxicSpillDukeCb"; if (remindSpill.search("D") >= 0) { toxicSpillDukeCb.checked = "Yes"; } else { toxicSpillDukeCb.checked = ""; } var toxicSpillDukeCbLabel = document.createElement('label') toxicSpillDukeCbLabel.htmlFor = "toxicSpillDukeCbLabel"; toxicSpillDukeCbLabel.appendChild(document.createTextNode('Duke')); $(toxicSpillDukeCbLabel).css({ 'float': 'left', 'width': '35px', 'padding': '1px', }) $(toxicSpillDukeCb).css({ 'float': 'left', 'width': '20px', "marginRight": "5px" }) toxicSpillOptions.appendChild(toxicSpillDukeCbLabel); toxicSpillOptions.appendChild(toxicSpillDukeCb); // var toxicSpillGrandDukeCb = document.createElement('input'); toxicSpillGrandDukeCb.type = "checkbox"; toxicSpillGrandDukeCb.name = "toxicSpillGrandDukeCb"; toxicSpillGrandDukeCb.value = "value"; toxicSpillGrandDukeCb.id = "toxicSpillGrandDukeCb"; if (remindSpill.search("G") >= 0) { toxicSpillGrandDukeCb.checked = "Yes"; } else { toxicSpillGrandDukeCb.checked = ""; } var toxicSpillGrandDukeCbLabel = document.createElement('label') toxicSpillGrandDukeCbLabel.htmlFor = "toxicSpillGrandDukeCbLabel"; toxicSpillGrandDukeCbLabel.appendChild(document.createTextNode('GDuke')); $(toxicSpillGrandDukeCbLabel).css({ 'float': 'left', 'width': '35px', 'padding': '1px', }) $(toxicSpillGrandDukeCb).css({ 'float': 'left', 'width': '20px', "marginRight": "5px" }) toxicSpillOptions.appendChild(toxicSpillGrandDukeCbLabel); toxicSpillOptions.appendChild(toxicSpillGrandDukeCb); // var toxicSpillArchdukeCb = document.createElement('input'); toxicSpillArchdukeCb.type = "checkbox"; toxicSpillArchdukeCb.name = "toxicSpillArchdukeCb"; toxicSpillArchdukeCb.value = "value"; toxicSpillArchdukeCb.id = "toxicSpillArchdukeCb"; if (remindSpill.search("A") >= 0) { toxicSpillArchdukeCb.checked = "Yes"; } else { toxicSpillArchdukeCb.checked = ""; } var toxicSpillArchdukeCbLabel = document.createElement('label') toxicSpillArchdukeCbLabel.htmlFor = "toxicSpillArchdukeCbLabel"; toxicSpillArchdukeCbLabel.appendChild(document.createTextNode('ADuke')); $(toxicSpillArchdukeCbLabel).css({ 'float': 'left', 'width': '35px', 'padding': '1px', }) $(toxicSpillArchdukeCb).css({ 'float': 'left', 'width': '20px', "marginRight": "5px" }) toxicSpillOptions.appendChild(toxicSpillArchdukeCbLabel); toxicSpillOptions.appendChild(toxicSpillArchdukeCb); // //Timer Options var timerOptions = document.createElement("div"); timerOptions.classList.add("timerOptions"); var timerOptionsLabel = document.createElement("div"); timerOptionsLabel.classList.add("timerOptionsLabel"); var timerOptionsLabelText = document.createTextNode("Timer Options"); timerOptionsLabel.appendChild(timerOptionsLabelText); timerOptions.appendChild(timerOptionsLabel); $(timerOptions).css({ 'float': 'left', 'width': '40%', 'marginLeft': '25px', }) $(timerOptionsLabel).css({ 'float': 'left', 'width': '100%', 'font-weight': 700, "marginRight": "5px", }) var timerOptionsUpdate = document.createElement("div"); timerOptionsUpdate.classList.add("timerOptionsUpdate"); var timerOptionsUpdateLabel = document.createElement("div"); timerOptionsUpdateLabel.classList.add("timerOptionsUpdateLabel"); var timerOptionsUpdateLabelText = document.createTextNode('Update Interval (min)'); $(timerOptionsUpdate).css({ 'float': 'left', 'width': '100%', 'vertical-align': 'middle', 'margin-bottom': '3px' }) $(timerOptionsUpdateLabel).css({ 'float': 'left', 'width': '40%', 'vertical-align': 'middle', }) timerOptionsUpdateLabel.appendChild(timerOptionsUpdateLabelText); timerOptionsUpdate.appendChild(timerOptionsUpdateLabel) //Timer Interval var updateInterval = localStorage.getItem('UpdateInterval'); var timerOptionsUpdateRadioA = document.createElement('input'); timerOptionsUpdateRadioA.type = "radio"; timerOptionsUpdateRadioA.name = "timerOptionsUpdateRadioA"; timerOptionsUpdateRadioA.value = "value"; timerOptionsUpdateRadioA.id = "timerOptionsUpdateRadioA"; if (updateInterval == 1) { timerOptionsUpdateRadioA.checked = true; } var timerOptionsUpdateRadioALabel = document.createElement('label') timerOptionsUpdateRadioALabel.htmlFor = "timerOptionsUpdateRadioLabel"; timerOptionsUpdateRadioALabel.appendChild(document.createTextNode('1')); $(timerOptionsUpdateRadioALabel).css({ 'float': 'left', 'width': '10px', 'vertical-align': 'middle' }) $(timerOptionsUpdateRadioA).css({ 'float': 'left', 'width': '15px', 'vertical-align': 'middle' }) timerOptionsUpdate.appendChild(timerOptionsUpdateRadioA); timerOptionsUpdate.appendChild(timerOptionsUpdateRadioALabel); // var timerOptionsUpdateRadioB = document.createElement('input'); timerOptionsUpdateRadioB.type = "radio"; timerOptionsUpdateRadioB.name = "timerOptionsUpdateRadioB"; timerOptionsUpdateRadioB.value = "value"; timerOptionsUpdateRadioB.id = "timerOptionsUpdateRadioB"; if ((updateInterval == null) || (updateInterval == 5)) { timerOptionsUpdateRadioB.checked = true; } var timerOptionsUpdateRadioBLabel = document.createElement('label') timerOptionsUpdateRadioBLabel.htmlFor = "timerOptionsUpdateRadioBLabel"; timerOptionsUpdateRadioBLabel.appendChild(document.createTextNode('5')); $(timerOptionsUpdateRadioBLabel).css({ 'float': 'left', 'width': '10px', 'vertical-align': 'middle' }) $(timerOptionsUpdateRadioB).css({ 'float': 'left', 'width': '15px', 'vertical-align': 'middle' }) timerOptionsUpdate.appendChild(timerOptionsUpdateRadioB); timerOptionsUpdate.appendChild(timerOptionsUpdateRadioBLabel); // var timerOptionsUpdateRadioC = document.createElement('input'); timerOptionsUpdateRadioC.type = "radio"; timerOptionsUpdateRadioC.name = "timerOptionsUpdateRadioC"; timerOptionsUpdateRadioC.value = "value"; timerOptionsUpdateRadioC.id = "timerOptionsUpdateRadioC"; if (updateInterval == 15) { timerOptionsUpdateRadioC.checked = true; } var timerOptionsUpdateRadioCLabel = document.createElement('label') timerOptionsUpdateRadioCLabel.htmlFor = "timerOptionsUpdateRadioCLabel"; timerOptionsUpdateRadioCLabel.appendChild(document.createTextNode('15')); $(timerOptionsUpdateRadioCLabel).css({ 'float': 'left', 'width': '10px', 'vertical-align': 'middle' }) $(timerOptionsUpdateRadioC).css({ 'float': 'left', 'width': '15px', 'vertical-align': 'middle' }) timerOptionsUpdate.appendChild(timerOptionsUpdateRadioC); timerOptionsUpdate.appendChild(timerOptionsUpdateRadioCLabel); timerOptions.appendChild(timerOptionsUpdate); //Reminder Window var remindInterval = localStorage.getItem('RemindInterval'); var timerOptionsWindow = document.createElement("div"); timerOptionsWindow.classList.add("timerOptionsWindow"); var timerOptionsWindowLabel = document.createElement("div"); timerOptionsWindowLabel.classList.add("timerOptionsWindowLabel"); var timerOptionsWindowLabelText = document.createTextNode('Remind Me Within (min)'); $(timerOptionsWindow).css({ 'float': 'left', 'width': '100%', 'vertical-align': 'middle', 'margin-bottom': '3px' }) $(timerOptionsWindowLabel).css({ 'float': 'left', 'width': '40%', 'vertical-align': 'middle' }) timerOptionsWindowLabel.appendChild(timerOptionsWindowLabelText); timerOptionsWindow.appendChild(timerOptionsWindowLabel); var timerOptionsWindowRadioA = document.createElement('input'); timerOptionsWindowRadioA.type = "radio"; timerOptionsWindowRadioA.name = "timerOptionsWindowRadioA"; timerOptionsWindowRadioA.value = "value"; timerOptionsWindowRadioA.id = "timerOptionsWindowRadioA"; if (remindInterval == 5) { timerOptionsWindowRadioA.checked = true; } var timerOptionsWindowRadioALabel = document.createElement('label') timerOptionsWindowRadioALabel.htmlFor = "timerOptionsWindowRadioALabel"; timerOptionsWindowRadioALabel.appendChild(document.createTextNode('5')); $(timerOptionsWindowRadioALabel).css({ 'float': 'left', 'width': '10px', 'vertical-align': 'middle' }) $(timerOptionsWindowRadioA).css({ 'float': 'left', 'width': '15px', 'vertical-align': 'middle' }) timerOptionsWindow.appendChild(timerOptionsWindowRadioA); timerOptionsWindow.appendChild(timerOptionsWindowRadioALabel); // var timerOptionsWindowRadioB = document.createElement('input'); timerOptionsWindowRadioB.type = "radio"; timerOptionsWindowRadioB.name = "timerOptionsWindowRadioB"; timerOptionsWindowRadioB.value = "value"; timerOptionsWindowRadioB.id = "timerOptionsWindowRadioB"; if ((remindInterval == null) || (remindInterval == 10)) { timerOptionsWindowRadioB.checked = true; } var timerOptionsWindowRadioBLabel = document.createElement('label') timerOptionsWindowRadioBLabel.htmlFor = "timerOptionsWindowRadioBLabel"; timerOptionsWindowRadioBLabel.appendChild(document.createTextNode('10')); $(timerOptionsWindowRadioBLabel).css({ 'float': 'left', 'width': '10px', 'vertical-align': 'middle' }) $(timerOptionsWindowRadioB).css({ 'float': 'left', 'width': '15px', 'vertical-align': 'middle' }) timerOptionsWindow.appendChild(timerOptionsWindowRadioB); timerOptionsWindow.appendChild(timerOptionsWindowRadioBLabel); // var timerOptionsWindowRadioC = document.createElement('input'); timerOptionsWindowRadioC.type = "radio"; timerOptionsWindowRadioC.name = "timerOptionsWindowRadioC"; timerOptionsWindowRadioC.value = "value"; timerOptionsWindowRadioC.id = "timerOptionsWindowRadioC"; if (remindInterval == 15) { timerOptionsWindowRadioC.checked = true; } var timerOptionsWindowRadioCLabel = document.createElement('label') timerOptionsWindowRadioCLabel.htmlFor = "timerOptionsWindowRadioCLabel"; timerOptionsWindowRadioCLabel.appendChild(document.createTextNode('15')); $(timerOptionsWindowRadioCLabel).css({ 'float': 'left', 'width': '10px', 'vertical-align': 'middle' }) $(timerOptionsWindowRadioC).css({ 'float': 'left', 'width': '15px', 'vertical-align': 'middle' }) timerOptionsWindow.appendChild(timerOptionsWindowRadioC); timerOptionsWindow.appendChild(timerOptionsWindowRadioCLabel); timerOptions.appendChild(timerOptionsWindow); //Other Options const killSwitch = localStorage.getItem('KillSwitch') var killSwitchCB = document.createElement('input'); killSwitchCB.type = "checkbox"; killSwitchCB.name = "killSwitchCB"; killSwitchCB.value = "value"; killSwitchCB.id = "killSwitchCB"; if (killSwitch == "Y") { killSwitchCB.checked = "Yes"; } else { killSwitchCB.checked = ""; } var killSwitchCBLabel = document.createElement('label') killSwitchCBLabel.htmlFor = "killSwitchCBLabel"; killSwitchCBLabel.appendChild(document.createTextNode('Remind Me Only Once')); $(killSwitchCBLabel).css({ 'float': 'left', 'width': '118px', 'padding': '1px', }) $(killSwitchCB).css({ 'float': 'left', 'width': '20px', "marginRight": "100px" }) timerOptions.appendChild(killSwitchCBLabel); timerOptions.appendChild(killSwitchCB); // const disarm = localStorage.getItem('DAT') var disarmCB = document.createElement('input'); disarmCB.type = "checkbox"; disarmCB.name = "disarmCB"; disarmCB.value = "value"; disarmCB.id = "disarmCB"; if (disarm == "Y") { disarmCB.checked = "Yes"; } else { disarmCB.checked = ""; } var disarmCBLabel = document.createElement('label') disarmCBLabel.htmlFor = "disarmCBLabel"; disarmCBLabel.appendChild(document.createTextNode('Disarm Bait After Travel')); $(disarmCBLabel).css({ 'float': 'left', 'width': '118px', 'padding': '1px', }) $(disarmCB).css({ 'float': 'left', 'width': '20px', "marginRight": "5px" }) timerOptions.appendChild(disarmCBLabel); timerOptions.appendChild(disarmCB); //Panic Button var panicButton = document.createElement("button"); panicButton.id = "panicButton"; panicButton.innerText = "Travel Back"; timerOptions.appendChild(panicButton); $(panicButton).css({ 'width': '100px', 'float': 'left', 'marginRight': 5 + "px", 'marginLeft': 35 + "px" }) // tinkerPanel.appendChild(forbiddenGroveOptions); tinkerPanel.appendChild(balacksCoveOptions); tinkerPanel.appendChild(seasonalGardenOptions); tinkerPanel.appendChild(toxicSpillOptions); tinkerPanel.appendChild(timerOptions); //Last timerBox.prepend(tinkerPanel) } $(document).on('click', '#timerOptionsUpdateRadioA', function() { $('#timerOptionsUpdateRadioB').prop("checked", false); $('#timerOptionsUpdateRadioC').prop("checked", false); localStorage.setItem('UpdateInterval', 1) }) $(document).on('click', '#timerOptionsUpdateRadioB', function() { $('#timerOptionsUpdateRadioA').prop("checked", false); $('#timerOptionsUpdateRadioC').prop("checked", false); localStorage.setItem('UpdateInterval', 5) }) $(document).on('click', '#timerOptionsUpdateRadioC', function() { $('#timerOptionsUpdateRadioA').prop("checked", false); $('#timerOptionsUpdateRadioB').prop("checked", false); localStorage.setItem('UpdateInterval', 15) }) $(document).on('click', '#timerOptionsWindowRadioA', function() { $('#timerOptionsWindowRadioB').prop("checked", false); $('#timerOptionsWindowRadioC').prop("checked", false); localStorage.setItem('RemindInterval', 5) }) $(document).on('click', '#timerOptionsWindowRadioB', function() { $('#timerOptionsWindowRadioA').prop("checked", false); $('#timerOptionsWindowRadioC').prop("checked", false); localStorage.setItem('RemindInterval', 10) }) $(document).on('click', '#timerOptionsWindowRadioC', function() { $('#timerOptionsWindowRadioA').prop("checked", false); $('#timerOptionsWindowRadioB').prop("checked", false); localStorage.setItem('RemindInterval', 15) }) $(document).on('change', '#killSwitchCB', function() { if (this.checked) { this.checked = "Yes"; localStorage.setItem('KillSwitch', 'Y') } else { this.checked = ""; localStorage.setItem('KillSwitch', 'N') } }) $(document).on('change', '#disarmCB', function() { if (this.checked) { this.checked = "Yes"; localStorage.setItem('DAT', 'Y') } else { this.checked = ""; localStorage.setItem('DAT', 'N') } }) //===================================== Timers ====================================== // // //=================================================================================== function startTimers() { localStorage.setItem("mainTimer", 0); runTimers(); } function runTimers() { updateText(); var myTimer = ""; const updateInterval = parseInt(localStorage.getItem('UpdateInterval'), 10) if (updateInterval == null) { myTimer = setInterval(updateText, 60000); } else { myTimer = setInterval(updateText, updateInterval * 60000); } } function updateText() { if ($(".forbiddenGrove").length > 0) updateForbiddenGroveTimer(); if ($(".balacksCove").length > 0) updateBalacksCoveTimer(); if ($(".seasonalGarden").length > 0) updateSeasonalGardenTimer(); if ($(".toxicSpill").length > 0) updateToxicSpillTimer(); } //===================================== Forbidden Grove ====================================== function buildForbiddenGrove() { if ($(".forbiddenGrove").length > 0) return; var timerBox = $(".timerBox"); var forbiddenGrove = document.createElement("div"); forbiddenGrove.classList.add("forbiddenGrove"); $(forbiddenGrove).css({ 'border': '1px solid black', 'width': '21%', 'height': '70%', 'padding': 2 + "px" }); //Header var forbiddenGroveHeader = document.createElement("div"); forbiddenGroveHeader.classList.add("forbiddenGroveHeader"); var forbiddenGroveHeaderLabel = document.createElement("div"); forbiddenGroveHeaderLabel.classList.add("forbiddenGroveHeaderLabel"); var forbiddenGroveHeaderLabelText = document.createTextNode("Forbidden Grove is:"); forbiddenGroveHeaderLabel.appendChild(forbiddenGroveHeaderLabelText); var forbiddenGroveHeaderValue = document.createElement("div"); forbiddenGroveHeaderValue.classList.add("forbiddenGroveHeaderValue"); var forbiddenGroveHeaderValueText = document.createTextNode("Open"); forbiddenGroveHeaderValue.appendChild(forbiddenGroveHeaderValueText); $(forbiddenGroveHeaderLabel).css({ 'float': 'left', 'font-weight': 700, "marginRight": "5px" }) $(forbiddenGroveHeaderValue).css({ "marginLeft": "100px" }); forbiddenGroveHeader.appendChild(forbiddenGroveHeaderLabel); forbiddenGroveHeader.appendChild(forbiddenGroveHeaderValue); //Close var forbiddenGroveCloses = document.createElement("div"); forbiddenGroveCloses.classList.add("forbiddenGroveCloses"); var forbiddenGroveClosesLabel = document.createElement("div"); forbiddenGroveClosesLabel.classList.add("forbiddenGroveClosesLabel"); var forbiddenGroveClosesLabelText = document.createTextNode("Closes in:"); forbiddenGroveClosesLabel.appendChild(forbiddenGroveClosesLabelText); var forbiddenGroveClosesValue = document.createElement("div"); forbiddenGroveClosesValue.classList.add("forbiddenGroveClosesValue"); var forbiddenGroveClosesValueText = document.createTextNode("?"); forbiddenGroveClosesValue.appendChild(forbiddenGroveClosesValueText); $(forbiddenGroveClosesLabel).css({ 'float': 'left', 'font-weight': 700, "marginRight": "5px" }) forbiddenGroveCloses.appendChild(forbiddenGroveClosesLabel); forbiddenGroveCloses.appendChild(forbiddenGroveClosesValue); //Open var forbiddenGroveOpens = document.createElement("div"); forbiddenGroveOpens.classList.add("forbiddenGroveOpens"); var forbiddenGroveOpensLabel = document.createElement("div"); forbiddenGroveOpensLabel.classList.add("forbiddenGroveOpensLabel"); var forbiddenGroveOpensLabelText = document.createTextNode("Opens in:"); forbiddenGroveOpensLabel.appendChild(forbiddenGroveOpensLabelText); var forbiddenGroveOpensValue = document.createElement("div"); forbiddenGroveOpensValue.classList.add("forbiddenGroveOpensValue"); var forbiddenGroveOpensValueText = document.createTextNode("??"); forbiddenGroveOpensValue.appendChild(forbiddenGroveOpensValueText); $(forbiddenGroveOpensLabel).css({ 'float': 'left', 'font-weight': 700, "marginRight": "5px" }) forbiddenGroveOpens.appendChild(forbiddenGroveOpensLabel); forbiddenGroveOpens.appendChild(forbiddenGroveOpensValue); //Append forbiddenGrove.appendChild(forbiddenGroveHeader); forbiddenGrove.appendChild(forbiddenGroveCloses); forbiddenGrove.appendChild(forbiddenGroveOpens); return forbiddenGrove; } function updateForbiddenGroveTimer() { if ($(".forbiddenGrove").length < 1) return; const remind = localStorage.getItem('RemindGrove'); const remindInterval = parseInt(localStorage.getItem('RemindInterval'), 10); var forbiddenGrove = $(".forbiddenGrove"); var firstGroveOpen = 1285704000; var now = todayNow(); let timePassedHours = (now - firstGroveOpen) / 3600; var rotaionLenght = 20; var rotationsExact = timePassedHours / rotaionLenght; var rotationsInteger = Math.trunc(rotationsExact); var partialrotation = (rotationsExact - rotationsInteger) * rotaionLenght; if (partialrotation < 16) { //Open $(".forbiddenGroveHeaderValue").text(" OPEN"); $(".forbiddenGroveHeaderValue").css({ 'color': 'green' }) var timeCloses = (16 - partialrotation).toPrecision(4); var closesHours = Math.trunc(timeCloses); var closesMinutes = Math.ceil((timeCloses - closesHours) * 60); $(".forbiddenGroveClosesValue").text(formatOutput(0, closesHours, closesMinutes)); $(".forbiddenGroveClosesValue").css({ 'float': 'right' }), $(".forbiddenGroveOpensLabel").text("Opens Again in:"); $(".forbiddenGroveOpensValue").text(formatOutput(0, (closesHours + 4), closesMinutes)); $(".forbiddenGroveOpensValue").css({ 'float': 'right' }), forbiddenGrove.append($(".forbiddenGroveOpens")) if ((closesHours == 0) && (closesMinutes <= remindInterval) && (remind.search('C') >= 0) && (remind.search('N') < 0)) { myConfirm('grove','closing') if (localStorage.getItem('KillSwitch') == 'Y') { $("#forbiddenGroveCb").click(); } } } else { //Closed $(".forbiddenGroveHeaderValue").text("CLOSED") $(".forbiddenGroveHeaderValue").css({ 'color': 'red' }) var timeOpens = (rotaionLenght - partialrotation).toPrecision(4); var opensHours = Math.trunc(timeOpens); var opensMinutes = Math.ceil((timeOpens - opensHours) * 60); $(".forbiddenGroveOpensValue").text(formatOutput(0, opensHours, opensMinutes)); $(".forbiddenGroveOpensValue").css({ 'float': 'right' }), $(".forbiddenGroveClosesLabel").text("Next Close in:"); $(".forbiddenGroveClosesValue").text(formatOutput(0, (opensHours + 16), opensMinutes)); $(".forbiddenGroveClosesValue").css({ 'float': 'right' }), forbiddenGrove.append($(".forbiddenGroveCloses")) if ((opensHours == 0) && (opensMinutes <= remindInterval) && (remind.search('O') >= 0) && (remind.search('N') < 0)) { myAlert('The forbidden grove is opening soon') if (localStorage.getItem('KillSwitch') == 'Y') { $("#forbiddenGroveCb").click(); } } } } $(document).on('change', '#forbiddenGroveCb', function() { if (this.checked) { this.checked = "Yes"; } else { this.checked = ""; } remindGrove(this.name, this.checked); }) $(document).on('change', '#forbiddenGroveOpenCb', function() { if (this.checked) { this.checked = "Yes"; } else { this.checked = ""; } remindGrove(this.name, this.checked); }) $(document).on('change', '#forbiddenGroveCloseCb', function() { if (this.checked) { this.checked = "Yes"; } else { this.checked = ""; } remindGrove(this.name, this.checked); }) //if master checked and no other - remind all //if master not checked - no reminder //if master checked and 1 or more checked - remind the ones checked. // N none // O open // C closed function remindGrove(cb, checked) { var main = $('#forbiddenGroveCb'); var open = $('#forbiddenGroveOpenCb'); var closed = $('#forbiddenGroveCloseCb'); const mName = main.prop("name"); const oName = open.prop("name"); const cName = closed.prop("name");; const mChecked = main.prop("checked"); const oChecked = open.prop("checked"); const cChecked = closed.prop("checked"); //----------------------------------------------------------------------- var remindGrove = localStorage.getItem('RemindGrove') var remindNone = remindGrove.search("N"); var remindOpen = remindGrove.search("O"); var remindClosed = remindGrove.search("C"); //main was checked if ((cb == mName) && (checked == true)) { if ((oChecked == false) && (cChecked == false)) { remindGrove = "CO"; } else if ((oChecked == true) && (cChecked == true)) { remindGrove = "CO"; } else if ((oChecked == true) && (cChecked == false)) { remindGrove = remindGrove.replace("N", ""); if (remindOpen < 0) { remindGrove = remindGrove.concat("O"); } } else if ((oChecked == false) && (cChecked == true)) { remindGrove = remindGrove.replace("N", ""); if (remindClosed < 0) { remindGrove = remindGrove.concat("C"); } } //main was unchecked } else if ((cb == mName) && (checked == false)) { if ((oChecked == false) && (cChecked == false)) { remindGrove = 'N'; } else if (remindNone < 0) { remindGrove = remindGrove.concat("N"); } //open was checked } else if ((cb == oName) && (checked == true)) { if (mChecked == false) { if (remindOpen < 0) { remindGrove = remindGrove.concat("O"); } } else if (cChecked == true) { remindGrove = remindGrove.replace("N", ""); if (remindOpen < 0) { remindGrove = remindGrove.concat("O"); } } else { remindGrove = "O"; } //open was unchecked } else if ((cb == oName) && (checked == false)) { if (mChecked == false) { if (remindOpen >= 0) { remindGrove = remindGrove.replace("O", ""); } } else if (cChecked == true) { if (remindOpen >= 0) { remindGrove = remindGrove.replace("O", ""); } } else if ((oChecked == false) && (cChecked == false)) { remindGrove = "CO"; } //closed was checked } else if ((cb == cName) && (checked == true)) { if (mChecked == false) { if (remindClosed < 0) { remindGrove = remindGrove.concat("C"); } } else if (oChecked == true) { remindGrove = remindGrove.replace("N", ""); if (remindClosed < 0) { remindGrove = remindGrove.concat("C"); } } else { remindGrove = "C"; } //closed was unchecked } else if ((cb == cName) && (checked == false)) { if (mChecked == false) { if (remindClosed >= 0) { remindGrove = remindGrove.replace("C", ""); } } else if (oChecked == true) { if (remindClosed >= 0) { remindGrove = remindGrove.replace("C", ""); } } else if ((oChecked == false) && (cChecked == false)) { remindGrove = "CO"; } } localStorage.setItem('RemindGrove', remindGrove) } //====================================== Balacks's Cove ====================================== function buildBalacksCove() { if ($(".balacksCove").length > 0) return; var timerBox = $(".timerBox"); var balacksCove = document.createElement("div"); balacksCove.classList.add("balacksCove"); $(balacksCove).css({ 'border': '1px solid black', 'width': '25%', 'height': '70%', 'padding': 2 + "px" }); //Header var balacksCoveHeader = document.createElement("div"); balacksCoveHeader.classList.add("balacksCoveHeader"); var balacksCoveHeaderLabel = document.createElement("div"); balacksCoveHeaderLabel.classList.add("balacksCoveHeaderLabel"); var balacksCoveHeaderLabelText = document.createTextNode("Balack's Cove Tide is:"); balacksCoveHeaderLabel.appendChild(balacksCoveHeaderLabelText); var balacksCoveHeaderValue = document.createElement("div"); balacksCoveHeaderValue.classList.add("balacksCoveHeaderValue"); var balacksCoveHeaderValueText = document.createTextNode("Low"); balacksCoveHeaderValue.appendChild(balacksCoveHeaderValueText); $(balacksCoveHeaderLabel).css({ 'float': 'left', 'font-weight': 700, "marginRight": "5px" }) $(balacksCoveHeaderValue).css({ "marginLeft": "100px" }); balacksCoveHeader.appendChild(balacksCoveHeaderLabel); balacksCoveHeader.appendChild(balacksCoveHeaderValue); //Low var balacksCoveLow = document.createElement("div"); balacksCoveLow.classList.add("balacksCoveLow"); var balacksCoveLowLabel = document.createElement("div"); balacksCoveLowLabel.classList.add("balacksCoveLowLabel"); var balacksCoveLowLabelText = document.createTextNode("Low Tide in:"); balacksCoveLowLabel.appendChild(balacksCoveLowLabelText); var balacksCoveLowValue = document.createElement("div"); balacksCoveLowValue.classList.add("balacksCoveLowValue"); var balacksCoveLowValueText = document.createTextNode("?"); balacksCoveLowValue.appendChild(balacksCoveLowValueText); $(balacksCoveLowLabel).css({ 'float': 'left', 'width': '100px', 'font-weight': 700, "marginRight": "5px" }) balacksCoveLow.appendChild(balacksCoveLowLabel); balacksCoveLow.appendChild(balacksCoveLowValue); //Medium var balacksCoveMid = document.createElement("div"); balacksCoveMid.classList.add("balacksCoveMid"); var balacksCoveMidLabel = document.createElement("div"); balacksCoveMidLabel.classList.add("balacksCoveMidLabel"); var balacksCoveMidLabelText = document.createTextNode("Mid Tide in:"); balacksCoveMidLabel.appendChild(balacksCoveMidLabelText); var balacksCoveMidValue = document.createElement("div"); balacksCoveMidValue.classList.add("balacksCoveMidValue"); var balacksCoveMidValueText = document.createTextNode("??"); balacksCoveMidValue.appendChild(balacksCoveMidValueText); $(balacksCoveMidLabel).css({ 'float': 'left', 'width': '100px', 'font-weight': 700, "marginRight": "5px" }) balacksCoveMid.appendChild(balacksCoveMidLabel); balacksCoveMid.appendChild(balacksCoveMidValue); //High var balacksCoveHigh = document.createElement("div"); balacksCoveHigh.classList.add("balacksCoveHigh"); var balacksCoveHighLabel = document.createElement("div"); balacksCoveHighLabel.classList.add("balacksCoveHighLabel"); var balacksCoveHighLabelText = document.createTextNode("High Tide in:"); balacksCoveHighLabel.appendChild(balacksCoveHighLabelText); var balacksCoveHighValue = document.createElement("div"); balacksCoveHighValue.classList.add("balacksCoveHighValue"); var balacksCoveHighValueText = document.createTextNode("??"); balacksCoveHighValue.appendChild(balacksCoveHighValueText); $(balacksCoveHighLabel).css({ 'float': 'left', 'width': '100px', 'font-weight': 700, "marginRight": "5px" }) balacksCoveHigh.appendChild(balacksCoveHighLabel); balacksCoveHigh.appendChild(balacksCoveHighValue); //Append balacksCove.appendChild(balacksCoveHeader); balacksCove.appendChild(balacksCoveLow); balacksCove.appendChild(balacksCoveMid); balacksCove.appendChild(balacksCoveHigh); return balacksCove; } function updateBalacksCoveTimer() { if ($(".balacksCove").length < 1) return; const remind = localStorage.getItem('RemindCove'); const remindInterval = parseInt(localStorage.getItem('RemindInterval'), 10); var balacksCove = $(".balacksCove"); var firstCoveLow = 1294680060; var now = todayNow(); let timePassedHours = (now - firstCoveLow) / 3600; var rotaionLenght = 18.6666666666666666666666666666666666666667; var rotationsExact = timePassedHours / rotaionLenght; var rotationsInteger = Math.trunc(rotationsExact); var partialrotation = (rotationsExact - rotationsInteger) * rotaionLenght; if (partialrotation < 16) { //Low $(".balacksCoveHeaderValue").text("LOW"); $(".balacksCoveHeaderValue").css({ 'color': 'green' }) var timeMid = (16 - partialrotation).toPrecision(4); var midHours = Math.trunc(timeMid); var midMinutes = Math.ceil((timeMid - midHours) * 60); $(".balacksCoveMidValue").text(formatOutput(0, midHours, midMinutes)); $(".balacksCoveMidLabel").text("Mid-Flooding in:") $(".balacksCoveHighValue").text(formatOutput(0, (midHours + 1), midMinutes)); $(".balacksCoveLowLabel").text("Low Again in:"); $(".balacksCoveMidValue").css({ 'float': 'right' }) $(".balacksCoveHighValue").css({ 'float': 'right' }) $(".balacksCoveLowValue").css({ 'float': 'right' }) var lowHours = midHours + 2; var lowMinutes = midMinutes + 40; if (lowMinutes >= 60) { lowMinutes = lowMinutes - 60; lowHours++; } $(".balacksCoveLowValue").text(formatOutput(0, lowHours, lowMinutes)); balacksCove.append($(".balacksCoveLow")) if ((midHours == 0) && (midMinutes <= remindInterval) && (remind.search('M') >= 0) && (remind.search('N') < 0)) { myConfirm('cove','mid') if (localStorage.getItem('KillSwitch') == 'Y') { $("#balacksCoveCb").click(); } } } else if ((partialrotation >= 16) && (partialrotation < 17)) { //Mid (flooding) $(".balacksCoveHeaderValue").text("MID-Flooding"); $(".balacksCoveHeaderValue").css({ 'color': 'orange' }) var timeHigh = (17 - partialrotation).toPrecision(4); var highHours = Math.trunc(timeHigh); var highMinutes = Math.ceil((timeHigh - highHours) * 60); $(".balacksCoveHighValue").text(formatOutput(0, highHours, highMinutes)); $(".balacksCoveMidLabel").text("Mid-Ebbing in:") var midHours = highHours; var midMinutes = highMinutes + 40; if (midMinutes >= 60) { midMinutes = midMinutes - 60; midHours++; } $(".balacksCoveMidValue").text(formatOutput(0, midHours, midMinutes)); $(".balacksCoveLowLabel").text("Low Tide in:"); $(".balacksCoveLowValue").text(formatOutput(0, (midHours + 1), midMinutes)); $(".balacksCoveMidValue").css({ 'float': 'right' }) $(".balacksCoveHighValue").css({ 'float': 'right' }) $(".balacksCoveLowValue").css({ 'float': 'right' }) balacksCove.append($(".balacksCoveMid")) balacksCove.append($(".balacksCoveLow")) if ((highHours == 0) && (highMinutes <= remindInterval) && (remind.search('H') >= 0) && (remind.search('N') < 0)) { myConfirm('cove','high') if (localStorage.getItem('KillSwitch') == 'Y') { $("#balacksCoveCb").click(); } } } else if ((partialrotation >= 17) && (partialrotation < 17.6666666667)) { //High $(".balacksCoveHeaderValue").text("HIGH"); $(".balacksCoveHeaderValue").css({ 'color': 'red' }) var timeMid = (17.6666666667 - partialrotation).toPrecision(4); var midHours = Math.trunc(timeMid); var midMinutes = Math.ceil((timeMid - midHours) * 60); $(".balacksCoveMidValue").text(formatOutput(0, midHours, midMinutes)); $(".balacksCoveMidLabel").text("Mid-Ebbing in:") $(".balacksCoveLowLabel").text("Low Tide in:") $(".balacksCoveLowValue").text(formatOutput(0, (midHours + 1), midMinutes)); $(".balacksCoveMidValue").css({ 'float': 'right' }) $(".balacksCoveLowValue").css({ 'float': 'right' }) $(".balacksCoveHigh").hide(); balacksCove.append($(".balacksCoveLow")) if ((midHours == 0) && (midMinutes <= remindInterval) && (remind.search('M') >= 0) && (remind.search('N') < 0)) { myConfirm('cove','mid') if (localStorage.getItem('KillSwitch') == 'Y') { $("#balacksCoveCb").click(); } } } else if (partialrotation >= 17.6666666667) { //Mid (ebbing) $(".balacksCoveHeaderValue").text("MID-Ebbing"); $(".balacksCoveHeaderValue").css({ 'color': 'orange' }) var timeLow = (rotaionLenght - partialrotation).toPrecision(4); var lowHours = Math.trunc(timeLow); var lowMinutes = Math.ceil((timeLow - lowHours) * 60); $(".balacksCoveLowLabel").text("Low Tide in:") $(".balacksCoveLowValue").text(formatOutput(0, lowHours, lowMinutes)); $(".balacksCoveMidLabel").text("Mid-Filling in:") $(".balacksCoveMidValue").text(formatOutput(0, lowHours + 16, lowMinutes)); $(".balacksCoveHighLabel").text("High Tide in:"); $(".balacksCoveHighValue").text(formatOutput(0, lowHours + 17, lowMinutes)); $(".balacksCoveMidValue").css({ 'float': 'right' }) $(".balacksCoveHighValue").css({ 'float': 'right' }) $(".balacksCoveLowValue").css({ 'float': 'right' }) balacksCove.append($(".balacksCoveHigh").show()) if ((lowHours == 0) && (lowMinutes <= remindInterval) && (remind.search('L') >= 0) && (remind.search('N') < 0)) { myConfirm('cove','low') if (localStorage.getItem('KillSwitch') == 'Y') { $("#balacksCoveCb").click(); } } } } $(document).on('change', '#balacksCoveCb', function() { if (this.checked) { this.checked = "Yes"; } else { this.checked = ""; } remindCove(this.name, this.checked); }) $(document).on('change', '#balacksCoveLowCb', function() { if (this.checked) { this.checked = "Yes"; } else { this.checked = ""; } remindCove(this.name, this.checked); }) $(document).on('change', '#balacksCoveMidCb', function() { if (this.checked) { this.checked = "Yes"; } else { this.checked = ""; } remindCove(this.name, this.checked); }) $(document).on('change', '#balacksCoveHighCb', function() { if (this.checked) { this.checked = "Yes"; } else { this.checked = ""; } remindCove(this.name, this.checked); }) //if master checked and no other - remind all //if master not checked - no reminder //if master checked and 1 or more checked - remind the ones checked. // N none // L low // M mid // H high function remindCove(cb, checked) { var main = $('#balacksCoveCb'); var low = $('#balacksCoveLowCb'); var mid = $('#balacksCoveMidCb'); var high = $('#balacksCoveHighCb'); const mainName = main.prop("name"); const lName = low.prop("name"); const mName = mid.prop("name"); const hName = high.prop("name"); const mainChecked = main.prop("checked"); const lChecked = low.prop("checked"); const mChecked = mid.prop("checked"); const hChecked = high.prop("checked"); var remindCove = localStorage.getItem('RemindCove') var remindNone = remindCove.search("N"); var remindLow = remindCove.search("L"); var remindMid = remindCove.search("M"); var remindHigh = remindCove.search("H"); //main was checked if ((cb == mainName) && (checked == true)) { if ((lChecked == false) && (mChecked == false) && (hChecked == false)) { remindCove = "LMH"; } else if ((lChecked == true) && (mChecked == true) && (hChecked == true)) { remindCove = "LMH"; } else if ((lChecked == true) && (mChecked == false) && (hChecked == false)) { remindCove = remindCove.replace("N", ""); if (remindLow < 0) { remindCove = remindCove.concat("L"); } } else if ((lChecked == false) && (mChecked == true) && (hChecked == false)) { remindCove = remindCove.replace("N", ""); if (remindMid < 0) { remindCove = remindCove.concat("M"); } } else if ((lChecked == false) && (mChecked == false) && (hChecked == true)) { remindCove = remindCove.replace("N", ""); if (remindHigh < 0) { remindCove = remindCove.concat("H"); } } else if ((lChecked == true) && (mChecked == true) && (hChecked == false)) { remindCove = remindCove.replace("N", ""); if (remindLow < 0) { remindCove = remindCove.concat("L"); } if (remindMid < 0) { remindCove = remindCove.concat("M"); } } else if ((lChecked == true) && (mChecked == false) && (hChecked == true)) { remindCove = remindCove.replace("N", ""); if (remindLow < 0) { remindCove = remindCove.concat("L"); } if (remindHigh < 0) { remindCove = remindCove.concat("H"); } } else if ((lChecked == false) && (mChecked == true) && (hChecked == true)) { remindCove = remindCove.replace("N", ""); if (remindMid < 0) { remindCove = remindCove.concat("M"); } if (remindHigh < 0) { remindCove = remindCove.concat("H"); } } //main was unchecked } else if ((cb == mainName) && (checked == false)) { if ((lChecked == false) && (mChecked == false) && (hChecked == false)) { remindCove = 'N'; } else if (remindNone < 0) { remindCove = remindCove.concat("N"); } //low was checked } else if ((cb == lName) && (checked == true)) { if (mainChecked == false) { if (remindLow < 0) { remindCove = remindCove.concat("L"); } } else if ((mChecked == true) || (hChecked == true)) { remindCove = remindCove.replace("N", ""); if (remindLow < 0) { remindCove = remindCove.concat("L"); } } else { remindCove = "L"; } //low was unchecked } else if ((cb == lName) && (checked == false)) { if (mainChecked == false) { if (remindLow >= 0) { remindCove = remindCove.replace("L", ""); } } else if ((mChecked == true) || (hChecked == true)) { if (remindLow >= 0) { remindCove = remindCove.replace("L", ""); } } else if ((mChecked == false) && (hChecked == false)) { remindCove = "LMH"; } //mid was checked } else if ((cb == mName) && (checked == true)) { if (mainChecked == false) { if (remindMid < 0) { remindCove = remindCove.concat("M"); } } else if ((lChecked == true) || (hChecked == true)) { remindCove = remindCove.replace("N", ""); if (remindMid < 0) { remindCove = remindCove.concat("M"); } } else { remindCove = "M"; } //mid was unchecked } else if ((cb == mName) && (checked == false)) { if (mainChecked == false) { if (remindMid >= 0) { remindCove = remindCove.replace("M", ""); } } else if ((lChecked == true) || (hChecked == true)) { if (remindMid >= 0) { remindCove = remindCove.replace("M", ""); } } else if ((lChecked == false) && (hChecked == false)) { remindCove = "LMH"; } //high was checked } else if ((cb == hName) && (checked == true)) { if (mainChecked == false) { if (remindHigh < 0) { remindCove = remindCove.concat("H"); } } else if ((lChecked == true) || (mChecked == true)) { remindCove = remindCove.replace("N", ""); if (remindHigh < 0) { remindCove = remindCove.concat("H"); } } else { remindCove = "H"; } //high was unchecked } else if ((cb == hName) && (checked == false)) { if (mainChecked == false) { if (remindHigh >= 0) { remindCove = remindCove.replace("H", ""); } } else if ((lChecked == true) || (mChecked == true)) { if (remindHigh >= 0) { remindCove = remindCove.replace("H", ""); } } else if ((lChecked == false) && (mChecked == false)) { remindCove = "LMH"; } } localStorage.setItem('RemindCove', remindCove) } //====================================== Seasonal Garden ====================================== function buildSeasonalGarden() { if ($(".seasonalGarden").length > 0) return; var timerBox = $(".timerBox"); var seasonalGarden = document.createElement("div"); seasonalGarden.classList.add("seasonalGarden"); $(seasonalGarden).css({ 'border': '1px solid black', 'width': '24%', 'height': '70%', 'padding': 2 + "px" }); //Header var seasonalGardenHeader = document.createElement("div"); seasonalGardenHeader.classList.add("seasonalGardenHeader"); var seasonalGardenHeaderLabel = document.createElement("div"); seasonalGardenHeaderLabel.classList.add("seasonalGardenHeaderLabel"); var seasonalGardenHeaderLabelText = document.createTextNode("Current Garden Season:"); seasonalGardenHeaderLabel.appendChild(seasonalGardenHeaderLabelText); var seasonalGardenHeaderValue = document.createElement("div"); seasonalGardenHeaderValue.classList.add("seasonalGardenHeaderValue"); var seasonalGardenHeaderValueText = document.createTextNode("FALL"); seasonalGardenHeaderValue.appendChild(seasonalGardenHeaderValueText); $(seasonalGardenHeaderLabel).css({ 'float': 'left', 'font-weight': 700, "marginRight": "5px" }) $(seasonalGardenHeaderValue).css({ "marginLeft": "100px" }); seasonalGardenHeader.appendChild(seasonalGardenHeaderLabel); seasonalGardenHeader.appendChild(seasonalGardenHeaderValue); //Fall var seasonalGardenFall = document.createElement("div"); seasonalGardenFall.classList.add("seasonalGardenFall"); var seasonalGardenFallLabel = document.createElement("div"); seasonalGardenFallLabel.classList.add("seasonalGardenFallLabel"); var seasonalGardenFallLabelText = document.createTextNode("Fall in:"); seasonalGardenFallLabel.appendChild(seasonalGardenFallLabelText); var seasonalGardenFallValue = document.createElement("div"); seasonalGardenFallValue.classList.add("seasonalGardenFallValue"); var seasonalGardenFallValueText = document.createTextNode("?"); seasonalGardenFallValue.appendChild(seasonalGardenFallValueText); $(seasonalGardenFallLabel).css({ 'float': 'left', 'width': '100px', 'font-weight': 700, "marginRight": "5px" }) seasonalGardenFall.appendChild(seasonalGardenFallLabel); seasonalGardenFall.appendChild(seasonalGardenFallValue); //Winter var seasonalGardenWinter = document.createElement("div"); seasonalGardenWinter.classList.add("seasonalGardenWinter"); var seasonalGardenWinterLabel = document.createElement("div"); seasonalGardenWinterLabel.classList.add("seasonalGardenWinterLabel"); var seasonalGardenWinterLabelText = document.createTextNode("Winter in:"); seasonalGardenWinterLabel.appendChild(seasonalGardenWinterLabelText); var seasonalGardenWinterValue = document.createElement("div"); seasonalGardenWinterValue.classList.add("seasonalGardenWinterValue"); var seasonalGardenWinterValueText = document.createTextNode("?"); seasonalGardenWinterValue.appendChild(seasonalGardenWinterValueText); $(seasonalGardenWinterLabel).css({ 'float': 'left', 'width': '100px', 'font-weight': 700, "marginRight": "5px" }) seasonalGardenWinter.appendChild(seasonalGardenWinterLabel); seasonalGardenWinter.appendChild(seasonalGardenWinterValue); //Spring var seasonalGardenSpring = document.createElement("div"); seasonalGardenSpring.classList.add("seasonalGardenSpring"); var seasonalGardenSpringLabel = document.createElement("div"); seasonalGardenSpringLabel.classList.add("seasonalGardenSpringLabel"); var seasonalGardenSpringLabelText = document.createTextNode("Spring in:"); seasonalGardenSpringLabel.appendChild(seasonalGardenSpringLabelText); var seasonalGardenSpringValue = document.createElement("div"); seasonalGardenSpringValue.classList.add("seasonalGardenSpringValue"); var seasonalGardenSpringValueText = document.createTextNode("?"); seasonalGardenSpringValue.appendChild(seasonalGardenSpringValueText); $(seasonalGardenSpringLabel).css({ 'float': 'left', 'width': '100px', 'font-weight': 700, "marginRight": "5px" }) seasonalGardenSpring.appendChild(seasonalGardenSpringLabel); seasonalGardenSpring.appendChild(seasonalGardenSpringValue); //Summer var seasonalGardenSummer = document.createElement("div"); seasonalGardenSummer.classList.add("seasonalGardenSummer"); var seasonalGardenSummerLabel = document.createElement("div"); seasonalGardenSummerLabel.classList.add("seasonalGardenSummerLabel"); var seasonalGardenSummerLabelText = document.createTextNode("Summer in:"); seasonalGardenSummerLabel.appendChild(seasonalGardenSummerLabelText); var seasonalGardenSummerValue = document.createElement("div"); seasonalGardenSummerValue.classList.add("seasonalGardenSummerValue"); var seasonalGardenSummerValueText = document.createTextNode("?"); seasonalGardenSummerValue.appendChild(seasonalGardenSummerValueText); $(seasonalGardenSummerLabel).css({ 'float': 'left', 'width': '100px', 'font-weight': 700, "marginRight": "5px" }) seasonalGardenSummer.appendChild(seasonalGardenSummerLabel); seasonalGardenSummer.appendChild(seasonalGardenSummerValue); //Append seasonalGarden.appendChild(seasonalGardenHeader); seasonalGarden.appendChild(seasonalGardenFall); seasonalGarden.appendChild(seasonalGardenWinter); seasonalGarden.appendChild(seasonalGardenSpring); seasonalGarden.appendChild(seasonalGardenSummer); return seasonalGarden; } function updateSeasonalGardenTimer() { if ($(".seasonalGarden").length < 1) return; var seasonalGarden = $(".seasonalGarden"); const remind = localStorage.getItem('RemindGarden'); const remindInterval = parseInt(localStorage.getItem('RemindInterval'), 10); var firstFall = 288000; var now = todayNow(); let timePassedHours = (now - firstFall) / 3600; var rotaionLenght = 320; var rotationsExact = timePassedHours / rotaionLenght; var rotationsInteger = Math.trunc(rotationsExact); var partialrotation = (rotationsExact - rotationsInteger) * rotaionLenght; var fallObj = new season(0, 0, 0); var winterObj = new season(0, 0, 0); var springObj = new season(0, 0, 0); var summerObj = new season(0, 0, 0); if (partialrotation < 80) { //Summer $(".seasonalGardenHeaderValue").text("SUMMER"); $(".seasonalGardenHeaderValue").css({ 'color': 'red' }) var timeFall = (80 - partialrotation).toPrecision(4); fallObj.hours = Math.floor(timeFall); fallObj.minutes = Math.ceil((timeFall - fallObj.hours) * 60); fallObj = convertToDyHrMn(0, fallObj.hours, fallObj.minutes); winterObj = convertToDyHrMn(fallObj.days + 3, fallObj.hours + 8, fallObj.minutes); springObj = convertToDyHrMn(winterObj.days + 3, winterObj.hours + 8, winterObj.minutes) summerObj = convertToDyHrMn(springObj.days + 3, springObj.hours + 8, springObj.minutes); $(".seasonalGardenFallLabel").text("Fall in:") $(".seasonalGardenWinterLabel").text("Winter in:") $(".seasonalGardenSpringLabel").text("Spring in:") $(".seasonalGardenSummerLabel").text("Next Summer in:") seasonalGarden.append($(".seasonalGardenFall")); seasonalGarden.append($(".seasonalGardenWinter")); seasonalGarden.append($(".seasonalGardenSpring")); seasonalGarden.append($(".seasonalGardenSummer")); if ((fallObj.hours == 0) && (fallObj.minutes <= remindInterval) && (remind.search('F') >= 0) && (remind.search('N') < 0)) { myConfirm('garden','fall') if (localStorage.getItem('KillSwitch') == 'Y') { $("#seasonalGardenCb").click(); } } } else if ((partialrotation >= 80) && (partialrotation < 160)) { //Fall $(".seasonalGardenHeaderValue").text("FALL"); $(".seasonalGardenHeaderValue").css({ 'color': 'orange' }) var timeWinter = (160 - partialrotation).toPrecision(4); winterObj.hours = Math.floor(timeWinter); winterObj.minutes = Math.ceil((timeWinter - winterObj.hours) * 60); winterObj = convertToDyHrMn(0, winterObj.hours, winterObj.minutes); springObj = convertToDyHrMn(winterObj.days + 3, winterObj.hours + 8, winterObj.minutes) summerObj = convertToDyHrMn(springObj.days + 3, springObj.hours + 8, springObj.minutes) fallObj = convertToDyHrMn(summerObj.days + 3, summerObj.hours + 8, summerObj.minutes); $(".seasonalGardenFallLabel").text("Next Fall in:") $(".seasonalGardenWinterLabel").text("Winter in:") $(".seasonalGardenSpringLabel").text("Spring in:") $(".seasonalGardenSummerLabel").text("Summer in:") seasonalGarden.append($(".seasonalGardenWinter")); seasonalGarden.append($(".seasonalGardenSpring")); seasonalGarden.append($(".seasonalGardenSummer")); seasonalGarden.append($(".seasonalGardenFall")); if ((winterObj.hours == 0) && (winterObj.minutes <= remindInterval) && (remind.search('W') >= 0) && (remind.search('N') < 0)) { myConfirm('garden','winter') if (localStorage.getItem('KillSwitch') == 'Y') { $("#seasonalGardenCb").click(); } } } else if ((partialrotation >= 160) && (partialrotation < 240)) { //Winter $(".seasonalGardenHeaderValue").text("WINTER"); $(".seasonalGardenHeaderValue").css({ 'color': 'blue' }) var timeSpring = (240 - partialrotation).toPrecision(4); springObj.hours = Math.floor(timeSpring); springObj.minutes = Math.ceil((timeSpring - springObj.hours) * 60); springObj = convertToDyHrMn(0, springObj.hours, springObj.minutes) summerObj = convertToDyHrMn(springObj.days + 3, springObj.hours + 8, springObj.minutes); fallObj = convertToDyHrMn(summerObj.days + 3, summerObj.hours + 8, summerObj.minutes); winterObj = convertToDyHrMn(fallObj.days + 3, fallObj.hours + 8, fallObj.minutes); $(".seasonalGardenFallLabel").text("Fall in:") $(".seasonalGardenWinterLabel").text("Next Winter in:") $(".seasonalGardenSpringLabel").text("Spring in:") $(".seasonalGardenSummerLabel").text("Summer in:") seasonalGarden.append($(".seasonalGardenSpring")); seasonalGarden.append($(".seasonalGardenSummer")); seasonalGarden.append($(".seasonalGardenFall")); seasonalGarden.append($(".seasonalGardenWinter")); if ((springObj.hours == 0) && (springObj.minutes <= remindInterval) && (remind.search('S') >= 0) && (remind.search('N') < 0)) { myConfirm('garden','spring') if (localStorage.getItem('KillSwitch') == 'Y') { $("#seasonalGardenCb").click(); } } } else { //Spring $(".seasonalGardenHeaderValue").text("SPRING"); $(".seasonalGardenHeaderValue").css({ 'color': 'green' }) var timeSummer = (320 - partialrotation).toPrecision(4); summerObj.hours = Math.floor(timeSummer); summerObj.minutes = Math.ceil((timeSummer - summerObj.hours) * 60); summerObj = convertToDyHrMn(0, summerObj.hours, summerObj.minutes) fallObj = convertToDyHrMn(summerObj.days + 3, summerObj.hours + 8, summerObj.minutes); winterObj = convertToDyHrMn(fallObj.days + 3, fallObj.hours + 8, fallObj.minutes); springObj = convertToDyHrMn(winterObj.days + 3, winterObj.hours + 8, winterObj.minutes); $(".seasonalGardenFallLabel").text("Fall in:") $(".seasonalGardenWinterLabel").text("Winter in:") $(".seasonalGardenSpringLabel").text("Next Spring in:") $(".seasonalGardenSummerLabel").text("Summer in:") seasonalGarden.append($(".seasonalGardenSummer")); seasonalGarden.append($(".seasonalGardenFall")); seasonalGarden.append($(".seasonalGardenWinter")); seasonalGarden.append($(".seasonalGardenSpring")); if ((summerObj.hours == 0) && (summerObj.minutes <= remindInterval) && (remind.search('R') >= 0) && (remind.search('N') < 0)) { myConfirm('garden','summer') if (localStorage.getItem('KillSwitch') == 'Y') { $("#seasonalGardenCb").click(); } } } $(".seasonalGardenFallValue").text(formatOutput(fallObj.days, fallObj.hours, fallObj.minutes)); $(".seasonalGardenWinterValue").text(formatOutput(winterObj.days, winterObj.hours, winterObj.minutes)); $(".seasonalGardenSpringValue").text(formatOutput(springObj.days, springObj.hours, springObj.minutes)); $(".seasonalGardenSummerValue").text(formatOutput(summerObj.days, summerObj.hours, summerObj.minutes)); $(".seasonalGardenFallValue").css({ 'float': 'right' }) $(".seasonalGardenWinterValue").css({ 'float': 'right' }) $(".seasonalGardenSpringValue").css({ 'float': 'right' }) $(".seasonalGardenSummerValue").css({ 'float': 'right' }) } function season(days, hours, minutes) { this.days = days; this.hours = hours; this.minutes = minutes; } $(document).on('change', '#seasonalGardenCb', function() { if (this.checked) { this.checked = "Yes"; } else { this.checked = ""; } remindGarden(this.name, this.checked); }) $(document).on('change', '#seasonalGardenFallCb', function() { if (this.checked) { this.checked = "Yes"; } else { this.checked = ""; } remindGarden(this.name, this.checked); }) $(document).on('change', '#seasonalGardenWinterCb', function() { if (this.checked) { this.checked = "Yes"; } else { this.checked = ""; } remindGarden(this.name, this.checked); }) $(document).on('change', '#seasonalGardenSpringCb', function() { if (this.checked) { this.checked = "Yes"; } else { this.checked = ""; } remindGarden(this.name, this.checked); }) $(document).on('change', '#seasonalGardenSummerCb', function() { if (this.checked) { this.checked = "Yes"; } else { this.checked = ""; } remindGarden(this.name, this.checked); }) //if master checked and no other - remind all //if master not checked - no reminder //if master checked and 1 or more checked - remind the ones checked. // N none // F Fall // W Winter // S Spring // R Summer function remindGarden(cb, checked) { var main = $('#seasonalGardenCb'); var fall = $('#seasonalGardenFallCb'); var winter = $('#seasonalGardenWinterCb'); var spring = $('#seasonalGardenSpringCb'); var summer = $('#seasonalGardenSummerCb'); const mainName = main.prop("name"); const fName = fall.prop("name"); const wName = winter.prop("name"); const sName = spring.prop("name"); const rName = summer.prop("name"); const mainChecked = main.prop("checked"); const fChecked = fall.prop("checked"); const wChecked = winter.prop("checked"); const sChecked = spring.prop("checked"); const rChecked = summer.prop("checked"); var remindGarden = localStorage.getItem('RemindGarden') var remindNone = remindGarden.search("N"); var remindFall = remindGarden.search("F"); var remindWinter = remindGarden.search("W"); var remindSpring = remindGarden.search("S"); var remindSummer = remindGarden.search("R"); //main was checked if ((cb == mainName) && (checked == true)) { if ((fChecked == false) && (wChecked == false) && (sChecked == false) && (rChecked == false)) { remindGarden = "FWSR"; } else if ((fChecked == true) && (wChecked == true) && (sChecked == true) && (rChecked == true)) { remindGarden = "FWSR"; } else { remindGarden = remindGarden.replace("N", ""); if ((fChecked == true) && (remindFall < 0)) { remindGarden = remindGarden.concat("F"); } if ((wChecked == true) && (remindWinter < 0)) { remindGarden = remindGarden.concat("W"); } if ((sChecked == true) && (remindSpring < 0)) { remindGarden = remindGarden.concat("S"); } if ((rChecked == true) && (remindSummer < 0)) { remindGarden = remindGarden.concat("R"); } } //main was unchecked } else if ((cb == mainName) && (checked == false)) { if ((fChecked == false) && (wChecked == false) && (sChecked == false) && (rChecked == false)) { remindGarden = 'N'; } else if (remindNone < 0) { remindGarden = remindGarden.concat("N"); } //fall was checked } else if ((cb == fName) && (checked == true)) { if (mainChecked == false) { if (remindFall < 0) { remindGarden = remindGarden.concat("F"); } } else if ((wChecked == true) || (sChecked == true) || (rChecked == true)) { remindGarden = remindGarden.replace("N", ""); if (remindFall < 0) { remindGarden = remindGarden.concat("F"); } } else { remindGarden = "F"; } //fall was unchecked } else if ((cb == fName) && (checked == false)) { if (mainChecked == false) { if (remindFall >= 0) { remindGarden = remindGarden.replace("F", ""); } } else if ((wChecked == false) && (sChecked == false) && (rChecked == false)) { remindGarden = "FWSR"; } else { if (remindFall >= 0) { remindGarden = remindGarden.replace("F", ""); } } //winter was checked } else if ((cb == wName) && (checked == true)) { if (mainChecked == false) { if (remindWinter < 0) { remindGarden = remindGarden.concat("W"); } } else if ((fChecked == true) || (sChecked == true) || (rChecked == true)) { remindGarden = remindGarden.replace("N", ""); if (remindWinter < 0) { remindGarden = remindGarden.concat("W"); } } else { remindGarden = "W"; } //winter was unchecked } else if ((cb == wName) && (checked == false)) { if (mainChecked == false) { if (remindWinter >= 0) { remindGarden = remindGarden.replace("W", ""); } } else if ((fChecked == false) && (sChecked == false) && (rChecked == false)) { remindGarden = "FWSR"; } else { if (remindWinter >= 0) { remindGarden = remindGarden.replace("F", ""); } } //spring was checked } else if ((cb == sName) && (checked == true)) { if (mainChecked == false) { if (remindSpring < 0) { remindGarden = remindGarden.concat("S"); } } else if ((fChecked == true) || (wChecked == true) || (rChecked == true)) { remindGarden = remindGarden.replace("N", ""); if (remindSpring < 0) { remindGarden = remindGarden.concat("S"); } } else { remindGarden = "S"; } //Spring was unchecked } else if ((cb == sName) && (checked == false)) { if (mainChecked == false) { if (remindSpring >= 0) { remindGarden = remindGarden.replace("S", ""); } } else if ((fChecked == false) && (wChecked == false) && (rChecked == false)) { remindGarden = "FWSR"; } else { if (remindSpring >= 0) { remindGarden = remindGarden.replace("S", ""); } } //summer was checked } else if ((cb == rName) && (checked == true)) { if (mainChecked == false) { if (remindSummer < 0) { remindGarden = remindGarden.concat("R"); } } else if ((fChecked == true) || (wChecked == true) || (sChecked == true)) { remindGarden = remindGarden.replace("N", ""); if (remindSpring < 0) { remindGarden = remindGarden.concat("R"); } } else { remindGarden = "R"; } //summer was unchecked } else if ((cb == rName) && (checked == false)) { if (mainChecked == false) { if (remindSummer >= 0) { remindGarden = remindGarden.replace("R", ""); } } else if ((fChecked == false) && (wChecked == false) && (sChecked == false)) { remindGarden = "FWSR"; } else { if (remindSummer >= 0) { remindGarden = remindGarden.replace("R", ""); } } } localStorage.setItem('RemindGarden', remindGarden) } //====================================== Toxic Spill ====================================== function buildToxicSpill() { if ($(".toxicSpill").length > 0) return; var timerBox = $(".timerBox"); var toxicSpill = document.createElement("div"); toxicSpill.classList.add("toxicSpill"); $(toxicSpill).css({ 'border': '1px solid black', 'width': '26%', 'height': '70%', 'padding': 2 + "px" }); //Header var toxicSpillHeader = document.createElement("div"); toxicSpillHeader.classList.add("toxicSpillHeader"); var toxicSpillHeaderLabel = document.createElement("div"); toxicSpillHeaderLabel.classList.add("toxicSpillHeaderLabel"); var toxicSpillHeaderLabelText = document.createTextNode("Current Spill Level:"); toxicSpillHeaderLabel.appendChild(toxicSpillHeaderLabelText); var toxicSpillHeaderValue = document.createElement("div"); toxicSpillHeaderValue.classList.add("toxicSpillHeaderValue"); var toxicSpillHeaderValueText = document.createTextNode("Archduke"); toxicSpillHeaderValue.appendChild(toxicSpillHeaderValueText); $(toxicSpillHeaderLabel).css({ 'float': 'left', 'font-weight': 700, "marginRight": "5px" }) $(toxicSpillHeaderValue).css({ "marginLeft": "100px" }); toxicSpillHeader.appendChild(toxicSpillHeaderLabel); toxicSpillHeader.appendChild(toxicSpillHeaderValue); //Hero var toxicSpillHero = document.createElement("div"); toxicSpillHero.classList.add("toxicSpillHero"); var toxicSpillHeroLabel = document.createElement("div"); toxicSpillHeroLabel.classList.add("toxicSpillHeroLabel"); var toxicSpillHeroLabelText = document.createTextNode("Hero in:"); toxicSpillHeroLabel.appendChild(toxicSpillHeroLabelText); var toxicSpillHeroValue = document.createElement("div"); toxicSpillHeroValue.classList.add("toxicSpillHeroValue"); var toxicSpillHeroValueText = document.createTextNode("?"); toxicSpillHeroValue.appendChild(toxicSpillHeroValueText); $(toxicSpillHeroLabel).css({ 'float': 'left', 'width': '100px', 'font-weight': 700, "marginRight": "5px" }) toxicSpillHero.appendChild(toxicSpillHeroLabel); toxicSpillHero.appendChild(toxicSpillHeroValue); //Knight var toxicSpillKnight = document.createElement("div"); toxicSpillKnight.classList.add("toxicSpillKnight"); var toxicSpillKnightLabel = document.createElement("div"); toxicSpillKnightLabel.classList.add("toxicSpillKnightLabel"); var toxicSpillKnightLabelText = document.createTextNode("Knight in:"); toxicSpillKnightLabel.appendChild(toxicSpillKnightLabelText); var toxicSpillKnightValue = document.createElement("div"); toxicSpillKnightValue.classList.add("toxicSpillKnightValue"); var toxicSpillKnightValueText = document.createTextNode("?"); toxicSpillKnightValue.appendChild(toxicSpillKnightValueText); $(toxicSpillKnightLabel).css({ 'float': 'left', 'width': '100px', 'font-weight': 700, "marginRight": "5px" }) toxicSpillKnight.appendChild(toxicSpillKnightLabel); toxicSpillKnight.appendChild(toxicSpillKnightValue); //Lord var toxicSpillLord = document.createElement("div"); toxicSpillLord.classList.add("toxicSpillLord"); var toxicSpillLordLabel = document.createElement("div"); toxicSpillLordLabel.classList.add("toxicSpillLordLabel"); var toxicSpillLordLabelText = document.createTextNode("Lord in:"); toxicSpillLordLabel.appendChild(toxicSpillLordLabelText); var toxicSpillLordValue = document.createElement("div"); toxicSpillLordValue.classList.add("toxicSpillLordValue"); var toxicSpillLordValueText = document.createTextNode("?"); toxicSpillLordValue.appendChild(toxicSpillLordValueText); $(toxicSpillLordLabel).css({ 'float': 'left', 'width': '100px', 'font-weight': 700, "marginRight": "5px" }) toxicSpillLord.appendChild(toxicSpillLordLabel); toxicSpillLord.appendChild(toxicSpillLordValue); //Baron var toxicSpillBaron = document.createElement("div"); toxicSpillBaron.classList.add("toxicSpillBaron"); var toxicSpillBaronLabel = document.createElement("div"); toxicSpillBaronLabel.classList.add("toxicSpillBaronLabel"); var toxicSpillBaronLabelText = document.createTextNode("Baron in:"); toxicSpillBaronLabel.appendChild(toxicSpillBaronLabelText); var toxicSpillBaronValue = document.createElement("div"); toxicSpillBaronValue.classList.add("toxicSpillBaronValue"); var toxicSpillBaronValueText = document.createTextNode("?"); toxicSpillBaronValue.appendChild(toxicSpillBaronValueText); $(toxicSpillBaronLabel).css({ 'float': 'left', 'width': '100px', 'font-weight': 700, "marginRight": "5px" }) toxicSpillBaron.appendChild(toxicSpillBaronLabel); toxicSpillBaron.appendChild(toxicSpillBaronValue); //Count var toxicSpillCount = document.createElement("div"); toxicSpillCount.classList.add("toxicSpillCount"); var toxicSpillCountLabel = document.createElement("div"); toxicSpillCountLabel.classList.add("toxicSpillCountLabel"); var toxicSpillCountLabelText = document.createTextNode("Count in:"); toxicSpillCountLabel.appendChild(toxicSpillCountLabelText); var toxicSpillCountValue = document.createElement("div"); toxicSpillCountValue.classList.add("toxicSpillCountValue"); var toxicSpillCountValueText = document.createTextNode("?"); toxicSpillCountValue.appendChild(toxicSpillCountValueText); $(toxicSpillCountLabel).css({ 'float': 'left', 'width': '100px', 'font-weight': 700, "marginRight": "5px" }) toxicSpillCount.appendChild(toxicSpillCountLabel); toxicSpillCount.appendChild(toxicSpillCountValue); //Duke var toxicSpillDuke = document.createElement("div"); toxicSpillDuke.classList.add("toxicSpillDuke"); var toxicSpillDukeLabel = document.createElement("div"); toxicSpillDukeLabel.classList.add("toxicSpillDukeLabel"); var toxicSpillDukeLabelText = document.createTextNode("Duke in:"); toxicSpillDukeLabel.appendChild(toxicSpillDukeLabelText); var toxicSpillDukeValue = document.createElement("div"); toxicSpillDukeValue.classList.add("toxicSpillDukeValue"); var toxicSpillDukeValueText = document.createTextNode("?"); toxicSpillDukeValue.appendChild(toxicSpillDukeValueText); $(toxicSpillDukeLabel).css({ 'float': 'left', 'width': '100px', 'font-weight': 700, "marginRight": "5px" }) toxicSpillDuke.appendChild(toxicSpillDukeLabel); toxicSpillDuke.appendChild(toxicSpillDukeValue); //Grand Duke var toxicSpillGrandDuke = document.createElement("div"); toxicSpillGrandDuke.classList.add("toxicSpillGrandDuke"); var toxicSpillGrandDukeLabel = document.createElement("div"); toxicSpillGrandDukeLabel.classList.add("toxicSpillGrandDukeLabel"); var toxicSpillGrandDukeLabelText = document.createTextNode("Grand Duke in:"); toxicSpillGrandDukeLabel.appendChild(toxicSpillGrandDukeLabelText); var toxicSpillGrandDukeValue = document.createElement("div"); toxicSpillGrandDukeValue.classList.add("toxicSpillGrandDukeValue"); var toxicSpillGrandDukeValueText = document.createTextNode("?"); toxicSpillGrandDukeValue.appendChild(toxicSpillGrandDukeValueText); $(toxicSpillGrandDukeLabel).css({ 'float': 'left', 'width': '100px', 'font-weight': 700, "marginRight": "5px" }) toxicSpillGrandDuke.appendChild(toxicSpillGrandDukeLabel); toxicSpillGrandDuke.appendChild(toxicSpillGrandDukeValue); //Archduke var toxicSpillArchduke = document.createElement("div"); toxicSpillArchduke.classList.add("toxicSpillArchduke"); var toxicSpillArchdukeLabel = document.createElement("div"); toxicSpillArchdukeLabel.classList.add("toxicSpillArchdukeLabel"); var toxicSpillArchdukeLabelText = document.createTextNode("Archduke in:"); toxicSpillArchdukeLabel.appendChild(toxicSpillArchdukeLabelText); var toxicSpillArchdukeValue = document.createElement("div"); toxicSpillArchdukeValue.classList.add("toxicSpillArchdukeValue"); var toxicSpillArchdukeValueText = document.createTextNode("?"); toxicSpillArchdukeValue.appendChild(toxicSpillArchdukeValueText); $(toxicSpillArchdukeLabel).css({ 'float': 'left', 'width': '100px', 'font-weight': 700, "marginRight": "5px" }) toxicSpillArchduke.appendChild(toxicSpillArchdukeLabel); toxicSpillArchduke.appendChild(toxicSpillArchdukeValue); //Append toxicSpill.appendChild(toxicSpillHeader); toxicSpill.appendChild(toxicSpillHero); toxicSpill.appendChild(toxicSpillKnight); toxicSpill.appendChild(toxicSpillLord); toxicSpill.appendChild(toxicSpillBaron); toxicSpill.appendChild(toxicSpillCount); toxicSpill.appendChild(toxicSpillDuke); toxicSpill.appendChild(toxicSpillGrandDuke); toxicSpill.appendChild(toxicSpillArchduke); return toxicSpill; } function updateToxicSpillTimer() { if ($(".toxicSpill").length < 1) return; var toxicSpill = $(".toxicSpill"); const remind = localStorage.getItem('RemindSpill'); const remindInterval = parseInt(localStorage.getItem('RemindInterval'), 10); $(".toxicSpill").children().show(); var firstHero = 1503597600; var now = todayNow(); let timePassedHours = (now - firstHero) / 3600; var rotaionLenght = 302; var rotationsExact = timePassedHours / rotaionLenght; var rotationsInteger = Math.floor(rotationsExact); var partialrotation = (rotationsExact - rotationsInteger) * rotaionLenght; var heroObj = new season(0, 0, 0); var knightObj = new season(0, 0, 0); var lordObj = new season(0, 0, 0); var baronObj = new season(0, 0, 0); var countObj = new season(0, 0, 0); var dukeObj = new season(0, 0, 0); var granddukeObj = new season(0, 0, 0); var archdukeObj = new season(0, 0, 0); if (partialrotation < 15) { //Hero Rising $(".toxicSpillHeaderValue").text("HERO-RISING"); $(".toxicSpillHeaderValue").css({ 'color': 'red' }); var timeKnight = (15 - partialrotation).toPrecision(4); knightObj.hours = Math.floor(timeKnight); knightObj.minutes = Math.ceil((timeKnight - knightObj.hours) * 60); knightObj = convertToDyHrMn(0, knightObj.hours, knightObj.minutes); lordObj = convertToDyHrMn(knightObj.days, knightObj.hours + 16, knightObj.minutes); baronObj = convertToDyHrMn(lordObj.days, lordObj.hours + 18, lordObj.minutes); countObj = convertToDyHrMn(baronObj.days, baronObj.hours + 18, baronObj.minutes); dukeObj = convertToDyHrMn(countObj.days + 1, countObj.hours, countObj.minutes); $(".toxicSpillKnightLabel").text("Knight in:"); $(".toxicSpillLordLabel").text("Lord in:"); $(".toxicSpillBaronLabel").text("Baron in:"); $(".toxicSpillCountLabel").text("Count in:"); $(".toxicSpillDukeLabel").text("Duke in:"); toxicSpill.append($(".toxicSpillKnight")); toxicSpill.append($(".toxicSpillLord")); toxicSpill.append($(".toxicSpillBaron")); toxicSpill.append($(".toxicSpillCount")); toxicSpill.append($(".toxicSpillDuke")); $(".toxicSpillHero").hide(); $(".toxicSpillGrandDuke").hide(); $(".toxicSpillArchduke").hide(); if ((knightObj.hours == 0) && (knightObj.minutes <= remindInterval) && (remind.search('K') >= 0) && (remind.search('N') < 0)) { myConfirm('spill','knight'); if (localStorage.getItem('KillSwitch') == 'Y') { $("#toxicSpillCb").click(); } } } else if (partialrotation >= 15 && partialrotation < 31) { //Knight Rising $(".toxicSpillHeaderValue").text("KNIGHT-RISING"); $(".toxicSpillHeaderValue").css({ 'color': 'red' }); var timeLord = (31 - partialrotation).toPrecision(4); lordObj.hours = Math.floor(timeLord); lordObj.minutes = Math.ceil((timeLord - lordObj.hours) * 60); lordObj = convertToDyHrMn(0, lordObj.hours, lordObj.minutes); baronObj = convertToDyHrMn(lordObj.days, lordObj.hours + 18, lordObj.minutes); countObj = convertToDyHrMn(baronObj.days, baronObj.hours + 18, baronObj.minutes); dukeObj = convertToDyHrMn(countObj.days + 1, countObj.hours, countObj.minutes); granddukeObj = convertToDyHrMn(dukeObj.days + 1, dukeObj.hours, dukeObj.minutes); $(".toxicSpillLordLabel").text("Lord in:"); $(".toxicSpillBaronLabel").text("Baron in:"); $(".toxicSpillCountLabel").text("Count in:"); $(".toxicSpillDukeLabel").text("Duke in:"); $(".toxicSpillGrandDukeLabel").text("Grand Duke in:"); toxicSpill.append($(".toxicSpillLord")); toxicSpill.append($(".toxicSpillBaron")); toxicSpill.append($(".toxicSpillCount")); toxicSpill.append($(".toxicSpillDuke")); toxicSpill.append($(".toxicSpillGrandDuke")); $(".toxicSpillHero").hide(); $(".toxicSpillKnight").hide(); $(".toxicSpillArchduke").hide(); if ((lordObj.hours == 0) && (lordObj.minutes <= remindInterval) && (remind.search('L') >= 0) && (remind.search('N') < 0)) { myConfirm('spill','lord'); if (localStorage.getItem('KillSwitch') == 'Y') { $("#toxicSpillCb").click(); } } } else if (partialrotation >= 31 && partialrotation < 49) { //Lord Rising $(".toxicSpillHeaderValue").text("LORD-RISING"); $(".toxicSpillHeaderValue").css({ 'color': 'red' }); var timeBaron = (49 - partialrotation).toPrecision(4); baronObj.hours = Math.floor(timeBaron); baronObj.minutes = Math.ceil((timeBaron - baronObj.hours) * 60); baronObj = convertToDyHrMn(0, baronObj.hours, baronObj.minutes); countObj = convertToDyHrMn(baronObj.days, baronObj.hours + 18, baronObj.minutes); dukeObj = convertToDyHrMn(countObj.days + 1, countObj.hours, countObj.minutes); granddukeObj = convertToDyHrMn(dukeObj.days + 1, dukeObj.hours, dukeObj.minutes); archdukeObj = convertToDyHrMn(granddukeObj.days + 1, granddukeObj.hours, granddukeObj.minutes); $(".toxicSpillBaronLabel").text("Baron in:"); $(".toxicSpillCountLabel").text("Count in:"); $(".toxicSpillDukeLabel").text("Duke in:"); $(".toxicSpillGrandDukeLabel").text("Grand Duke in:"); $(".toxicSpillArchdukeLabel").text("Archduke in:"); toxicSpill.append($(".toxicSpillBaron")); toxicSpill.append($(".toxicSpillCount")); toxicSpill.append($(".toxicSpillDuke")); toxicSpill.append($(".toxicSpillGrandDuke")); toxicSpill.append($(".toxicSpillArchduke")); $(".toxicSpillHero").hide(); $(".toxicSpillKnight").hide(); $(".toxicSpillLord").hide(); if ((baronObj.hours == 0) && (baronObj.minutes <= remindInterval) && (remind.search('B') >= 0) && (remind.search('N') < 0)) { myConfirm('spill','baron'); if (localStorage.getItem('KillSwitch') == 'Y') { $("#toxicSpillCb").click(); } } } else if (partialrotation >= 49 && partialrotation < 67) { //Baron Rising $(".toxicSpillHeaderValue").text("BARON-RISING"); $(".toxicSpillHeaderValue").css({ 'color': 'red' }); var timeCount = (67 - partialrotation).toPrecision(4); countObj.hours = Math.floor(timeCount); countObj.minutes = Math.ceil((timeCount - countObj.hours) * 60); countObj = convertToDyHrMn(0, countObj.hours, countObj.minutes); dukeObj = convertToDyHrMn(countObj.days + 1, countObj.hours, countObj.minutes); granddukeObj = convertToDyHrMn(dukeObj.days + 1, dukeObj.hours, dukeObj.minutes); archdukeObj = convertToDyHrMn(granddukeObj.days + 1, granddukeObj.hours, granddukeObj.minutes); baronObj = convertToDyHrMn(archdukeObj.days + 4, archdukeObj.hours, archdukeObj.minutes); $(".toxicSpillGrandDukeLabel").text("Grand Duke in:"); $(".toxicSpillArchdukeLabel").text("Archduke in:"); $(".toxicSpillDukeLabel").text("Duke in:"); $(".toxicSpillCountLabel").text("Count in:"); $(".toxicSpillBaronLabel").text("Baron Falling in:"); toxicSpill.append($(".toxicSpillCount")); toxicSpill.append($(".toxicSpillDuke")); toxicSpill.append($(".toxicSpillGrandDuke")); toxicSpill.append($(".toxicSpillArchduke")); toxicSpill.append($(".toxicSpillBaron")); $(".toxicSpillHero").hide(); $(".toxicSpillKnight").hide(); $(".toxicSpillLord").hide(); if ((countObj.hours == 0) && (countObj.minutes <= remindInterval) && (remind.search('C') >= 0) && (remind.search('N') < 0)) { myConfirm('spill','count'); if (localStorage.getItem('KillSwitch') == 'Y') { $("#toxicSpillCb").click(); } } } else if (partialrotation >= 67 && partialrotation < 91) { //Count Rising $(".toxicSpillHeaderValue").text("COUNT-RISING"); $(".toxicSpillHeaderValue").css({ 'color': 'red' }); var timeDuke = (91 - partialrotation).toPrecision(4); dukeObj.hours = Math.floor(timeDuke); dukeObj.minutes = Math.ceil((timeDuke - dukeObj.hours) * 60); dukeObj = convertToDyHrMn(0, dukeObj.hours, dukeObj.minutes); granddukeObj = convertToDyHrMn(dukeObj.days + 1, dukeObj.hours, dukeObj.minutes); archdukeObj = convertToDyHrMn(granddukeObj.days + 1, granddukeObj.hours, granddukeObj.minutes); countObj = convertToDyHrMn(archdukeObj.days + 3, archdukeObj.hours, archdukeObj.minutes); baronObj = convertToDyHrMn(countObj.days + 1, countObj.hours, countObj.minutes); $(".toxicSpillGrandDukeLabel").text("Grand Duke in:"); $(".toxicSpillArchdukeLabel").text("Archduke in:"); $(".toxicSpillDukeLabel").text("Duke in:"); $(".toxicSpillCountLabel").text("Count Falling in:"); $(".toxicSpillBaronLabel").text("Baron in:"); toxicSpill.append($(".toxicSpillDuke")); toxicSpill.append($(".toxicSpillGrandDuke")); toxicSpill.append($(".toxicSpillArchduke")); toxicSpill.append($(".toxicSpillCount")); toxicSpill.append($(".toxicSpillBaron")); $(".toxicSpillHero").hide(); $(".toxicSpillKnight").hide(); $(".toxicSpillLord").hide(); if ((dukeObj.hours == 0) && (dukeObj.minutes <= remindInterval) && (remind.search('D') >= 0) && (remind.search('N') < 0)) { myConfirm('spill','duke'); if (localStorage.getItem('KillSwitch') == 'Y') { $("#toxicSpillCb").click(); } } } else if (partialrotation >= 91 && partialrotation < 115) { //Duke Rising $(".toxicSpillHeaderValue").text("DUKE-RISING"); $(".toxicSpillHeaderValue").css({ 'color': 'red' }); var timeGrandDuke = (115 - partialrotation).toPrecision(4); granddukeObj.hours = Math.floor(timeGrandDuke); granddukeObj.minutes = Math.ceil((timeGrandDuke - granddukeObj.hours) * 60); granddukeObj = convertToDyHrMn(0, granddukeObj.hours, granddukeObj.minutes); archdukeObj = convertToDyHrMn(granddukeObj.days + 1, granddukeObj.hours, granddukeObj.minutes); dukeObj = convertToDyHrMn(archdukeObj.days + 2, archdukeObj.hours, archdukeObj.minutes); countObj = convertToDyHrMn(dukeObj.days + 1, dukeObj.hours + 10, dukeObj.minutes); baronObj = convertToDyHrMn(countObj.days + 1, countObj.hours, countObj.minutes); $(".toxicSpillGrandDukeLabel").text("Grand Duke in:"); $(".toxicSpillArchdukeLabel").text("Archduke in:"); $(".toxicSpillDukeLabel").text("Duke Falling in:"); $(".toxicSpillCountLabel").text("Count in:"); $(".toxicSpillBaronLabel").text("Baron in:"); toxicSpill.append($(".toxicSpillGrandDuke")); toxicSpill.append($(".toxicSpillArchduke")); toxicSpill.append($(".toxicSpillDuke")); toxicSpill.append($(".toxicSpillCount")); toxicSpill.append($(".toxicSpillBaron")); $(".toxicSpillHero").hide(); $(".toxicSpillKnight").hide(); $(".toxicSpillLord").hide(); if ((granddukeObj.hours == 0) && (granddukeObj.minutes <= remindInterval) && (remind.search('G') >= 0) && (remind.search('N') < 0)) { myConfirm('spill','grand duke'); if (localStorage.getItem('KillSwitch') == 'Y') { $("#toxicSpillCb").click(); } } } else if (partialrotation >= 115 && partialrotation < 139) { //Grand Duke Rising $(".toxicSpillHeaderValue").text("GD-RISING"); $(".toxicSpillHeaderValue").css({ 'color': 'red' }); var timeArchduke = (139 - partialrotation).toPrecision(4); archdukeObj.hours = Math.floor(timeArchduke); archdukeObj.minutes = Math.ceil((timeArchduke - archdukeObj.hours) * 60); archdukeObj = convertToDyHrMn(0, archdukeObj.hours, archdukeObj.minutes); granddukeObj = convertToDyHrMn(archdukeObj.days, archdukeObj.hours + 24, archdukeObj.minutes); dukeObj = convertToDyHrMn(0, granddukeObj.hours + 24, granddukeObj.minutes); countObj = convertToDyHrMn(dukeObj.days + 1, dukeObj.hours + 10, dukeObj.minutes); baronObj = convertToDyHrMn(countObj.days + 1, countObj.hours, countObj.minutes); $(".toxicSpillArchdukeLabel").text("Archduke in:"); $(".toxicSpillGrandDukeLabel").text("GD Falling in:"); $(".toxicSpillDukeLabel").text("Duke in:"); $(".toxicSpillCountLabel").text("Count in:"); $(".toxicSpillBaronLabel").text("Baron in:"); toxicSpill.append($(".toxicSpillArchduke")); toxicSpill.append($(".toxicSpillGrandDuke")); toxicSpill.append($(".toxicSpillDuke")); toxicSpill.append($(".toxicSpillCount")); toxicSpill.append($(".toxicSpillBaron")); $(".toxicSpillHero").hide(); $(".toxicSpillKnight").hide(); $(".toxicSpillLord").hide(); if ((granddukeObj.hours == 0) && (granddukeObj.minutes <= remindInterval) && (remind.search('A') >= 0) && (remind.search('N') < 0)) { myConfirm('spill','archduke'); if (localStorage.getItem('KillSwitch') == 'Y') { $("#toxicSpillCb").click(); } } } else if (partialrotation >= 139 && partialrotation < 151) { //Archduke Rising $(".toxicSpillHeaderValue").text("AD-RISING"); $(".toxicSpillHeaderValue").css({ 'color': 'red' }); var timeArchduke = (151 - partialrotation).toPrecision(4); archdukeObj.hours = Math.floor(timeArchduke); archdukeObj.minutes = Math.ceil((timeArchduke - archdukeObj.hours) * 60); archdukeObj = convertToDyHrMn(0, archdukeObj.hours, archdukeObj.minutes); granddukeObj = convertToDyHrMn(archdukeObj.days, archdukeObj.hours + 12, archdukeObj.minutes); dukeObj = convertToDyHrMn(0, granddukeObj.hours + 24, granddukeObj.minutes); countObj = convertToDyHrMn(dukeObj.days + 1, dukeObj.hours + 10, dukeObj.minutes); baronObj = convertToDyHrMn(countObj.days + 1, countObj.hours, countObj.minutes); $(".toxicSpillArchdukeLabel").text("AD Falling in:"); $(".toxicSpillGrandDukeLabel").text("Grand Duke in:"); $(".toxicSpillDukeLabel").text("Duke in:"); $(".toxicSpillCountLabel").text("Count in:"); $(".toxicSpillBaronLabel").text("Baron in:"); toxicSpill.append($(".toxicSpillArchduke")); toxicSpill.append($(".toxicSpillGrandDuke")); toxicSpill.append($(".toxicSpillDuke")); toxicSpill.append($(".toxicSpillCount")); toxicSpill.append($(".toxicSpillBaron")); $(".toxicSpillHero").hide(); $(".toxicSpillKnight").hide(); $(".toxicSpillLord").hide(); } else if (partialrotation >= 151 && partialrotation < 163) { //Archduke Falling $(".toxicSpillHeaderValue").text("AD-FALLING"); $(".toxicSpillHeaderValue").css({ 'color': 'green' }); var timeGDuke = (163 - partialrotation).toPrecision(4); granddukeObj.hours = Math.floor(timeGDuke); granddukeObj.minutes = Math.ceil((timeGDuke - granddukeObj.hours) * 60); granddukeObj = convertToDyHrMn(0, granddukeObj.hours, granddukeObj.minutes); dukeObj = convertToDyHrMn(0, granddukeObj.hours + 24, granddukeObj.minutes); countObj = convertToDyHrMn(dukeObj.days + 1, dukeObj.hours + 10, dukeObj.minutes); baronObj = convertToDyHrMn(countObj.days + 1, countObj.hours, countObj.minutes); lordObj = convertToDyHrMn(baronObj.days, baronObj.hours + 18, baronObj.minutes); $(".toxicSpillGrandDukeLabel").text("Grand Duke in:"); $(".toxicSpillDukeLabel").text("Duke in:"); $(".toxicSpillCountLabel").text("Count in:"); $(".toxicSpillBaronLabel").text("Baron in:"); $(".toxicSpillLordLabel").text("Lord in:"); toxicSpill.append($(".toxicSpillGrandDuke")); toxicSpill.append($(".toxicSpillDuke")); toxicSpill.append($(".toxicSpillCount")); toxicSpill.append($(".toxicSpillBaron")); toxicSpill.append($(".toxicSpillLord")); $(".toxicSpillHero").hide(); $(".toxicSpillKnight").hide(); $(".toxicSpillArchduke").hide(); if ((granddukeObj.hours == 0) && (granddukeObj.minutes <= remindInterval) && (remind.search('G') >= 0) && (remind.search('N') < 0)) { myConfirm('spill','grand duke'); if (localStorage.getItem('KillSwitch') == 'Y') { $("#toxicSpillCb").click(); } } } else if (partialrotation >= 163 && partialrotation < 187) { //Grand Duke Falling $(".toxicSpillHeaderValue").text("GD-FALLING"); $(".toxicSpillHeaderValue").css({ 'color': 'green' }); var timeDuke = (187 - partialrotation).toPrecision(4); dukeObj.hours = Math.floor(timeDuke); dukeObj.minutes = Math.ceil((timeDuke - dukeObj.hours) * 60); dukeObj = convertToDyHrMn(0, dukeObj.hours, dukeObj.minutes); countObj = convertToDyHrMn(dukeObj.days + 1, dukeObj.hours + 10, dukeObj.minutes); baronObj = convertToDyHrMn(countObj.days + 1, countObj.hours, countObj.minutes); lordObj = convertToDyHrMn(baronObj.days, baronObj.hours + 18, baronObj.minutes); knightObj = convertToDyHrMn(lordObj.days, lordObj.hours + 18, lordObj.minutes); $(".toxicSpillDukeLabel").text("Duke in:"); $(".toxicSpillCountLabel").text("Count in:"); $(".toxicSpillBaronLabel").text("Baron in:"); $(".toxicSpillLordLabel").text("Lord in:"); $(".toxicSpillKnightLabel").text("Knight in:"); toxicSpill.append($(".toxicSpillDuke")); toxicSpill.append($(".toxicSpillCount")); toxicSpill.append($(".toxicSpillBaron")); toxicSpill.append($(".toxicSpillLord")); toxicSpill.append($(".toxicSpillKnight")); $(".toxicSpillHero").hide(); $(".toxicSpillGrandDuke").hide(); $(".toxicSpillArchduke").hide(); if ((dukeObj.hours == 0) && (dukeObj.minutes <= remindInterval) && (remind.search('D') >= 0) && (remind.search('N') < 0)) { myConfirm('spill','duke'); if (localStorage.getItem('KillSwitch') == 'Y') { $("#toxicSpillCb").click(); } } } else if (partialrotation >= 187 && partialrotation < 211) { //Duke Falling $(".toxicSpillHeaderValue").text("DUKE-FALLING"); $(".toxicSpillHeaderValue").css({ 'color': 'green' }); var timeCount = (211 - partialrotation).toPrecision(4); countObj.hours = Math.floor(timeCount); countObj.minutes = Math.ceil((timeCount - countObj.hours) * 60); countObj = convertToDyHrMn(0, countObj.hours, countObj.minutes); baronObj = convertToDyHrMn(countObj.days + 1, countObj.hours, countObj.minutes); lordObj = convertToDyHrMn(baronObj.days, baronObj.hours + 18, baronObj.minutes); knightObj = convertToDyHrMn(lordObj.days, lordObj.hours + 18, lordObj.minutes); heroObj = convertToDyHrMn(knightObj.days, knightObj.hours + 16, knightObj.minutes); $(".toxicSpillCountLabel").text("Count in:"); $(".toxicSpillBaronLabel").text("Baron in:"); $(".toxicSpillLordLabel").text("Lord in:"); $(".toxicSpillKnightLabel").text("Knight in:"); $(".toxicSpillHeroLabel").text("Hero in:"); toxicSpill.append($(".toxicSpillCount")); toxicSpill.append($(".toxicSpillBaron")); toxicSpill.append($(".toxicSpillLord")); toxicSpill.append($(".toxicSpillKnight")); toxicSpill.append($(".toxicSpillHero")); $(".toxicSpillDuke").hide(); $(".toxicSpillGrandDuke").hide(); $(".toxicSpillArchduke").hide(); if ((countObj.hours == 0) && (countObj.minutes <= remindInterval) && (remind.search('C') >= 0) && (remind.search('N') < 0)) { myConfirm('spill','count'); if (localStorage.getItem('KillSwitch') == 'Y') { $("#toxicSpillCb").click(); } } } else if (partialrotation >= 211 && partialrotation < 235) { //Count Falling $(".toxicSpillHeaderValue").text("COUNT-FALLING"); $(".toxicSpillHeaderValue").css({ 'color': 'green' }); var timeBaron = (235 - partialrotation).toPrecision(4); baronObj.hours = Math.floor(timeBaron); baronObj.minutes = Math.ceil((timeBaron - baronObj.hours) * 60); baronObj = convertToDyHrMn(0, baronObj.hours, baronObj.minutes); lordObj = convertToDyHrMn(baronObj.days, baronObj.hours + 18, baronObj.minutes); knightObj = convertToDyHrMn(lordObj.days, lordObj.hours + 18, lordObj.minutes); heroObj = convertToDyHrMn(knightObj.days, knightObj.hours + 16, knightObj.minutes); countObj = convertToDyHrMn(heroObj.days + 3, heroObj.hours + 10, heroObj.minutes); $(".toxicSpillBaronLabel").text("Baron in:"); $(".toxicSpillLordLabel").text("Lord in:"); $(".toxicSpillKnightLabel").text("Knight in:"); $(".toxicSpillHeroLabel").text("Hero in:"); $(".toxicSpillCountLabel").text("Count Rising in:"); toxicSpill.append($(".toxicSpillBaron")); toxicSpill.append($(".toxicSpillLord")); toxicSpill.append($(".toxicSpillKnight")); toxicSpill.append($(".toxicSpillHero")); toxicSpill.append($(".toxicSpillCount")); $(".toxicSpillDuke").hide(); $(".toxicSpillGrandDuke").hide(); $(".toxicSpillArchduke").hide(); if ((baronObj.hours == 0) && (baronObj.minutes <= remindInterval) && (remind.search('B') >= 0) && (remind.search('N') < 0)) { myConfirm('spill','baron'); if (localStorage.getItem('KillSwitch') == 'Y') { $("#toxicSpillCb").click(); } } } else if (partialrotation >= 235 && partialrotation < 253) { //Baron Falling $(".toxicSpillHeaderValue").text("BARON-FALLING"); $(".toxicSpillHeaderValue").css({ 'color': 'green' }); var timeLord = (253 - partialrotation).toPrecision(4); lordObj.hours = Math.floor(timeLord); lordObj.minutes = Math.ceil((timeLord - lordObj.hours) * 60); lordObj = convertToDyHrMn(0, lordObj.hours, lordObj.minutes); knightObj = convertToDyHrMn(lordObj.days, lordObj.hours + 18, lordObj.minutes); heroObj = convertToDyHrMn(knightObj.days, knightObj.hours + 16, knightObj.minutes); baronObj = convertToDyHrMn(heroObj.days + 2, heroObj.hours + 16, heroObj.minutes); countObj = convertToDyHrMn(baronObj.days, baronObj.hours + 18, baronObj.minutes); $(".toxicSpillCountLabel").text("Count in:"); $(".toxicSpillBaronLabel").text("Baron Rising in:"); $(".toxicSpillLordLabel").text("Lord in:"); $(".toxicSpillKnightLabel").text("Knight in:"); $(".toxicSpillHeroLabel").text("Hero in:"); toxicSpill.append($(".toxicSpillLord")); toxicSpill.append($(".toxicSpillKnight")); toxicSpill.append($(".toxicSpillHero")); toxicSpill.append($(".toxicSpillBaron")); toxicSpill.append($(".toxicSpillCount")); $(".toxicSpillDuke").hide(); $(".toxicSpillGrandDuke").hide(); $(".toxicSpillArchduke").hide(); if ((lordObj.hours == 0) && (lordObj.minutes <= remindInterval) && (remind.search('L') >= 0) && (remind.search('N') < 0)) { myConfirm('spill','lord'); if (localStorage.getItem('KillSwitch') == 'Y') { $("#toxicSpillCb").click(); } } } else if (partialrotation >= 253 && partialrotation < 271) { //Lord Falling $(".toxicSpillHeaderValue").text("LORD-FALLING"); $(".toxicSpillHeaderValue").css({ 'color': 'green' }); var timeKnight = (271 - partialrotation).toPrecision(4); knightObj.hours = Math.floor(timeKnight); knightObj.minutes = Math.ceil((timeKnight - knightObj.hours) * 60); knightObj = convertToDyHrMn(0, knightObj.hours, knightObj.minutes); heroObj = convertToDyHrMn(knightObj.days, knightObj.hours + 16, knightObj.minutes); lordObj = convertToDyHrMn(heroObj.days + 1, heroObj.hours + 22, heroObj.minutes); baronObj = convertToDyHrMn(lordObj.days, lordObj.hours + 18, lordObj.minutes); countObj = convertToDyHrMn(baronObj.days, baronObj.hours + 18, baronObj.minutes); $(".toxicSpillCountLabel").text("Count in:"); $(".toxicSpillBaronLabel").text("Baron in:"); $(".toxicSpillLordLabel").text("Lord Rising in:"); $(".toxicSpillKnightLabel").text("Knight in:"); $(".toxicSpillHeroLabel").text("Hero in:"); toxicSpill.append($(".toxicSpillKnight")); toxicSpill.append($(".toxicSpillHero")); toxicSpill.append($(".toxicSpillLord")); toxicSpill.append($(".toxicSpillBaron")); toxicSpill.append($(".toxicSpillCount")); $(".toxicSpillDuke").hide(); $(".toxicSpillGrandDuke").hide(); $(".toxicSpillArchduke").hide(); if ((knightObj.hours == 0) && (knightObj.minutes <= remindInterval) && (remind.search('K') >= 0) && (remind.search('N') < 0)) { myConfirm('spill','knight'); if (localStorage.getItem('KillSwitch') == 'Y') { $("#toxicSpillCb").click(); } } } else if (partialrotation >= 271 && partialrotation < 287) { //Knight Falling $(".toxicSpillHeaderValue").text("KNIGHT-FALLING"); $(".toxicSpillHeaderValue").css({ 'color': 'green' }); var timeHero = (287 - partialrotation).toPrecision(4); heroObj.hours = Math.floor(timeHero); heroObj.minutes = Math.ceil((timeHero - heroObj.hours) * 60); heroObj = convertToDyHrMn(0, heroObj.hours, heroObj.minutes); knightObj = convertToDyHrMn(heroObj.days + 1, heroObj.hours + 6, heroObj.minutes); lordObj = convertToDyHrMn(knightObj.days, knightObj.hours + 16, knightObj.minutes); baronObj = convertToDyHrMn(lordObj.days, lordObj.hours + 18, lordObj.minutes); countObj = convertToDyHrMn(baronObj.days, baronObj.hours + 18, baronObj.minutes); $(".toxicSpillCountLabel").text("Count in:"); $(".toxicSpillBaronLabel").text("Baron in:"); $(".toxicSpillLordLabel").text("Lord in:"); $(".toxicSpillKnightLabel").text("Knight Rising in:"); $(".toxicSpillHeroLabel").text("Hero in:"); toxicSpill.append($(".toxicSpillHero")); toxicSpill.append($(".toxicSpillKnight")); toxicSpill.append($(".toxicSpillLord")); toxicSpill.append($(".toxicSpillBaron")); toxicSpill.append($(".toxicSpillCount")); $(".toxicSpillDuke").hide(); $(".toxicSpillGrandDuke").hide(); $(".toxicSpillArchduke").hide(); if ((heroObj.hours == 0) && (heroObj.minutes <= remindInterval) && (remind.search('H') >= 0) && (remind.search('N') < 0)) { myConfirm('spill','hero'); if (localStorage.getItem('KillSwitch') == 'Y') { $("#toxicSpillCb").click(); } } } else if (partialrotation >= 287 && partialrotation < 302) { //Hero Falling $(".toxicSpillHeaderValue").text("HERO-FALLING"); $(".toxicSpillHeaderValue").css({ 'color': 'green' }); var timeHero = (302 - partialrotation).toPrecision(4); heroObj.hours = Math.floor(timeHero); heroObj.minutes = Math.ceil((timeHero - heroObj.hours) * 60); heroObj = convertToDyHrMn(0, heroObj.hours, heroObj.minutes); knightObj = convertToDyHrMn(heroObj.days, heroObj.hours + 15, heroObj.minutes); lordObj = convertToDyHrMn(knightObj.days, knightObj.hours + 16, knightObj.minutes); baronObj = convertToDyHrMn(lordObj.days, lordObj.hours + 18, lordObj.minutes); countObj = convertToDyHrMn(baronObj.days, baronObj.hours + 18, baronObj.minutes); $(".toxicSpillCountLabel").text("Count in:"); $(".toxicSpillBaronLabel").text("Baron in:"); $(".toxicSpillLordLabel").text("Lord in:"); $(".toxicSpillKnightLabel").text("Knight in:"); $(".toxicSpillHeroLabel").text("Hero Rising in:"); toxicSpill.append($(".toxicSpillHero")); toxicSpill.append($(".toxicSpillKnight")); toxicSpill.append($(".toxicSpillLord")); toxicSpill.append($(".toxicSpillBaron")); toxicSpill.append($(".toxicSpillCount")); $(".toxicSpillDuke").hide(); $(".toxicSpillGrandDuke").hide(); $(".toxicSpillArchduke").hide(); } else { //WTF are we? } $(".toxicSpillArchdukeValue").text(formatOutput(archdukeObj.days, archdukeObj.hours, archdukeObj.minutes)); $(".toxicSpillGrandDukeValue").text(formatOutput(granddukeObj.days, granddukeObj.hours, granddukeObj.minutes)); $(".toxicSpillDukeValue").text(formatOutput(dukeObj.days, dukeObj.hours, dukeObj.minutes)); $(".toxicSpillCountValue").text(formatOutput(countObj.days, countObj.hours, countObj.minutes)); $(".toxicSpillBaronValue").text(formatOutput(baronObj.days, baronObj.hours, baronObj.minutes)); $(".toxicSpillLordValue").text(formatOutput(lordObj.days, lordObj.hours, lordObj.minutes)); $(".toxicSpillKnightValue").text(formatOutput(knightObj.days, knightObj.hours, knightObj.minutes)); $(".toxicSpillHeroValue").text(formatOutput(heroObj.days, heroObj.hours, heroObj.minutes)); //https://mhwiki.hitgrab.com/wiki/index.php/Toxic_Spill#Pollution_Levels $(".toxicSpillArchdukeValue").css({ 'float': 'right' }) $(".toxicSpillGrandDukeValue").css({ 'float': 'right' }) $(".toxicSpillDukeValue").css({ 'float': 'right' }) $(".toxicSpillCountValue").css({ 'float': 'right' }) $(".toxicSpillBaronValue").css({ 'float': 'right' }) $(".toxicSpillLordValue").css({ 'float': 'right' }) $(".toxicSpillKnightValue").css({ 'float': 'right' }) $(".toxicSpillHeroValue").css({ 'float': 'right' }) } function spillLevel(days, hours, minutes) { this.days = days; this.hours = hours; this.minutes = minutes; } $(document).on('change', '#toxicSpillCb', function() { if (this.checked) { this.checked = "Yes"; } else { this.checked = ""; } remindSpill(this.name, this.checked); }) $(document).on('change', '#toxicSpillHeroCb', function() { if (this.checked) { this.checked = "Yes"; } else { this.checked = ""; } remindSpill(this.name, this.checked); }) $(document).on('change', '#toxicSpillKnightCb', function() { if (this.checked) { this.checked = "Yes"; } else { this.checked = ""; } remindSpill(this.name, this.checked); }) $(document).on('change', '#toxicSpillLordCb', function() { if (this.checked) { this.checked = "Yes"; } else { this.checked = ""; } remindSpill(this.name, this.checked); }) $(document).on('change', '#toxicSpillBaronCb', function() { if (this.checked) { this.checked = "Yes"; } else { this.checked = ""; } remindSpill(this.name, this.checked); }) $(document).on('change', '#toxicSpillCountCb', function() { if (this.checked) { this.checked = "Yes"; } else { this.checked = ""; } remindSpill(this.name, this.checked); }) $(document).on('change', '#toxicSpillDukeCb', function() { if (this.checked) { this.checked = "Yes"; } else { this.checked = ""; } remindSpill(this.name, this.checked); }) $(document).on('change', '#toxicSpillGrandDukeCb', function() { if (this.checked) { this.checked = "Yes"; } else { this.checked = ""; } remindSpill(this.name, this.checked); }) $(document).on('change', '#toxicSpillArchdukeCb', function() { if (this.checked) { this.checked = "Yes"; } else { this.checked = ""; } remindSpill(this.name, this.checked); }) //if master checked and no other - remind all //if master not checked - no reminder //if master checked and 1 or more checked - remind the ones checked. // N none // H Hero // K Knight // L Lord // B Baron // C Count // D Duke // G Grand Duke // A Archduke function remindSpill(cb, checked) { var main = $('#toxicSpillCb'); var hero = $('#toxicSpillHeroCb'); var knight = $('#toxicSpillKnightCb'); var lord = $('#toxicSpillLordCb'); var baron = $('#toxicSpillBaronCb'); var count = $('#toxicSpillCountCb'); var duke = $('#toxicSpillDukeCb'); var gduke = $('#toxicSpillGrandDukeCb'); var aduke = $('#toxicSpillArchdukeCb'); const mainName = main.prop("name"); const hName = hero.prop("name"); const kName = knight.prop("name"); const lName = lord.prop("name"); const bName = baron.prop("name"); const cName = count.prop("name"); const dName = duke.prop("name"); const gName = gduke.prop("name"); const aName = aduke.prop("name"); const mainChecked = main.prop("checked"); const hChecked = hero.prop("checked"); const kChecked = knight.prop("checked"); const lChecked = lord.prop("checked"); const bChecked = baron.prop("checked"); const cChecked = count.prop("checked"); const dChecked = duke.prop("checked"); const gChecked = gduke.prop("checked"); const aChecked = aduke.prop("checked"); var remindSpill = localStorage.getItem('RemindSpill') var remindNone = remindSpill.search("N"); var remindHero = remindSpill.search("H"); var remindKnight = remindSpill.search("K"); var remindLord = remindSpill.search("L"); var remindBaron = remindSpill.search("B"); var remindCount = remindSpill.search("C"); var remindDuke = remindSpill.search("D"); var remindGduke = remindSpill.search("G"); var remindAduke = remindSpill.search("A"); //main was checked if ((cb == mainName) && (checked == true)) { if ((hChecked == false) && (kChecked == false) && (lChecked == false) && (bChecked == false) && (cChecked == false) && (dChecked == false) && (gChecked == false) && (aChecked == false)) { remindSpill = "HKLBCDGA"; } else if ((hChecked == true) && (kChecked == true) && (lChecked == true) && (bChecked == true) && (cChecked == true) && (dChecked == true) && (gChecked == true) && (aChecked == true)) { remindSpill = "HKLBCDGA"; } else { remindSpill = remindSpill.replace("N", ""); if ((hChecked == true) && (remindHero < 0)) { remindSpill = remindSpill.concat("H"); } if ((kChecked == true) && (remindKnight < 0)) { remindSpill = remindSpill.concat("K"); } if ((lChecked == true) && (remindLord < 0)) { remindSpill = remindSpill.concat("L"); } if ((bChecked == true) && (remindBaron < 0)) { remindSpill = remindSpill.concat("B"); } if ((cChecked == true) && (remindCount < 0)) { remindSpill = remindSpill.concat("C"); } if ((dChecked == true) && (remindDuke < 0)) { remindSpill = remindSpill.concat("G"); } if ((gChecked == true) && (remindGduke < 0)) { remindSpill = remindSpill.concat("G"); } if ((aChecked == true) && (remindAduke < 0)) { remindSpill = remindSpill.concat("A"); } } //main was unchecked } else if ((cb == mainName) && (checked == false)) { if ((hChecked == false) && (kChecked == false) && (lChecked == false) && (bChecked == false) && (cChecked == false) && (dChecked == false) && (gChecked == false) && (aChecked == false)) { remindSpill = 'N'; } else if (remindNone < 0) { remindSpill = remindSpill.concat("N"); } //hero was checked } else if ((cb == hName) && (checked == true)) { if (mainChecked == false) { if (remindHero < 0) { remindSpill = remindSpill.concat("H"); } } else if ((kChecked == true) || (lChecked == true) || (bChecked == true) || (cChecked == true) || (dChecked == true) || (gChecked == true) || (aChecked == true)) { remindSpill = remindSpill.replace("N", ""); if (remindHero < 0) { remindSpill = remindSpill.concat("H"); } } else { remindSpill = "H"; } //hero was unchecked } else if ((cb == hName) && (checked == false)) { if (mainChecked == false) { if (remindHero >= 0) { remindSpill = remindSpill.replace("H", ""); } } else if ((kChecked == false) && (lChecked == false) && (bChecked == false) && (cChecked == false) && (dChecked == false) && (gChecked == false) && (aChecked == false)) { remindSpill = "HKLBCDGA"; } else { if (remindHero >= 0) { remindSpill = remindSpill.replace("H", ""); } } //knight was checked } else if ((cb == kName) && (checked == true)) { if (mainChecked == false) { if (remindKnight < 0) { remindSpill = remindSpill.concat("K"); } } else if ((hChecked == true) || (lChecked == true) || (bChecked == true) || (cChecked == true) || (dChecked == true) || (gChecked == true) || (aChecked == true)) { remindSpill = remindSpill.replace("N", ""); if (remindKnight < 0) { remindSpill = remindSpill.concat("K"); } } else { remindSpill = "K"; } //knight was unchecked } else if ((cb == kName) && (checked == false)) { if (mainChecked == false) { if (remindKnight >= 0) { remindSpill = remindSpill.replace("K", ""); } } else if ((hChecked == false) && (lChecked == false) && (bChecked == false) && (cChecked == false) && (dChecked == false) && (gChecked == false) && (aChecked == false)) { remindSpill = "HKLBCDGA"; } else { if (remindKnight >= 0) { remindSpill = remindSpill.replace("K", ""); } } //lord was checked } else if ((cb == lName) && (checked == true)) { if (mainChecked == false) { if (remindLord < 0) { remindSpill = remindSpill.concat("L"); } } else if ((hChecked == true) || (kChecked == true) || (bChecked == true) || (cChecked == true) || (dChecked == true) || (gChecked == true) || (aChecked == true)) { remindSpill = remindSpill.replace("N", ""); if (remindLord < 0) { remindSpill = remindSpill.concat("L"); } } else { remindSpill = "L"; } //lord was unchecked } else if ((cb == lName) && (checked == false)) { if (mainChecked == false) { if (remindLord >= 0) { remindSpill = remindSpill.replace("L", ""); } } else if ((hChecked == false) && (kChecked == false) && (bChecked == false) && (cChecked == false) && (dChecked == false) && (gChecked == false) && (aChecked == false)) { remindSpill = "HKLBCDGA"; } else { if (remindLord >= 0) { remindSpill = remindSpill.replace("L", ""); } } //baron was checked } else if ((cb == bName) && (checked == true)) { if (mainChecked == false) { if (remindBaron < 0) { remindSpill = remindSpill.concat("B"); } } else if ((hChecked == true) || (kChecked == true) || (lChecked == true) || (cChecked == true) || (dChecked == true) || (gChecked == true) || (aChecked == true)) { remindSpill = remindSpill.replace("N", ""); if (remindBaron < 0) { remindSpill = remindSpill.concat("B"); } } else { remindSpill = "B"; } //baron was unchecked } else if ((cb == bName) && (checked == false)) { if (mainChecked == false) { if (remindBaron >= 0) { remindSpill = remindSpill.replace("B", ""); } } else if ((hChecked == false) && (kChecked == false) && (lChecked == false) && (cChecked == false) && (dChecked == false) && (gChecked == false) && (aChecked == false)) { remindSpill = "HKLBCDGA"; } else { if (remindBaron >= 0) { remindSpill = remindSpill.replace("B", ""); } } //count was checked } else if ((cb == cName) && (checked == true)) { if (mainChecked == false) { if (remindCount < 0) { remindSpill = remindSpill.concat("C"); } } else if ((hChecked == true) || (kChecked == true) || (lChecked == true) || (bChecked == true) || (dChecked == true) || (gChecked == true) || (aChecked == true)) { remindSpill = remindSpill.replace("N", ""); if (remindCount < 0) { remindSpill = remindSpill.concat("C"); } } else { remindSpill = "C"; } //count was unchecked } else if ((cb == cName) && (checked == false)) { if (mainChecked == false) { if (remindCount >= 0) { remindSpill = remindSpill.replace("C", ""); } } else if ((hChecked == false) && (kChecked == false) && (lChecked == false) && (bChecked == false) && (dChecked == false) && (gChecked == false) && (aChecked == false)) { remindSpill = "HKLBCDGA"; } else { if (remindCount >= 0) { remindSpill = remindSpill.replace("C", ""); } } //duke was checked } else if ((cb == dName) && (checked == true)) { if (mainChecked == false) { if (remindDuke < 0) { remindSpill = remindSpill.concat("D"); } } else if ((hChecked == true) || (kChecked == true) || (lChecked == true) || (bChecked == true) || (cChecked == true) || (gChecked == true) || (aChecked == true)) { remindSpill = remindSpill.replace("N", ""); if (remindDuke < 0) { remindSpill = remindSpill.concat("D"); } } else { remindSpill = "D"; } //duke was unchecked } else if ((cb == dName) && (checked == false)) { if (mainChecked == false) { if (remindDuke >= 0) { remindSpill = remindSpill.replace("D", ""); } } else if ((hChecked == false) && (kChecked == false) && (lChecked == false) && (bChecked == false) && (cChecked == false) && (gChecked == false) && (aChecked == false)) { remindSpill = "HKLBCDGA"; } else { if (remindDuke >= 0) { remindSpill = remindSpill.replace("D", ""); } } //grand duke was checked } else if ((cb == gName) && (checked == true)) { if (mainChecked == false) { if (remindGduke < 0) { remindSpill = remindSpill.concat("G"); } } else if ((hChecked == true) || (kChecked == true) || (lChecked == true) || (bChecked == true) || (cChecked == true) || (dChecked == true) || (aChecked == true)) { remindSpill = remindSpill.replace("N", ""); if (remindGduke < 0) { remindSpill = remindSpill.concat("G"); } } else { remindSpill = "G"; } //grand duke was unchecked } else if ((cb == gName) && (checked == false)) { if (mainChecked == false) { if (remindGduke >= 0) { remindSpill = remindSpill.replace("G", ""); } } else if ((hChecked == false) && (kChecked == false) && (lChecked == false) && (bChecked == false) && (cChecked == false) && (dChecked == false) && (aChecked == false)) { remindSpill = "HKLBCDGA"; } else { if (remindGduke >= 0) { remindSpill = remindSpill.replace("G", ""); } } //archduke was checked } else if ((cb == aName) && (checked == true)) { if (mainChecked == false) { if (remindAduke < 0) { remindSpill = remindSpill.concat("A"); } } else if ((hChecked == true) || (kChecked == true) || (lChecked == true) || (bChecked == true) || (cChecked == true) || (dChecked == true) || (gChecked == true)) { remindSpill = remindSpill.replace("N", ""); if (remindGduke < 0) { remindSpill = remindSpill.concat("A"); } } else { remindSpill = "G"; } //archduke was unchecked } else if ((cb == gName) && (checked == false)) { if (mainChecked == false) { if (remindGduke >= 0) { remindSpill = remindSpill.replace("A", ""); } } else if ((hChecked == false) && (kChecked == false) && (lChecked == false) && (bChecked == false) && (cChecked == false) && (dChecked == false) && (gChecked == false)) { remindSpill = "HKLBCDGA"; } else { if (remindAduke >= 0) { remindSpill = remindSpill.replace("A", ""); } } } localStorage.setItem('RemindSpill', remindSpill) } //============================================================================================ function todayNow() { var today = new Date(); var todayEpoch = today.getTime() / 1000.0; return todayEpoch; } function convertToDyHrMn(days, hours, minutes) { if (minutes == 60) { hours++; minutes = 0; } if (hours >= 24) { var daysExact = hours / 24; var daysTrunc = Math.floor(daysExact); var partialDays = daysExact - daysTrunc; hours = Math.round(partialDays * 24); days = daysTrunc + days; } return { days, hours, minutes } } function formatOutput(days, hours, minutes) { var dayStr = ""; var hourStr = ""; var minuteStr = ""; if (days > 0) { dayStr = days + "d"; } if (hours > 0) { hourStr = hours + "h"; } if (minutes > 0) { minuteStr = minutes + "m"; } return dayStr + " " + hourStr + " " + minuteStr; } //============================== Travel Functions ============================================== //Forbidden Grove $(document).on('click', '#forbiddenGroveButton', function() { myConfirm('grove','button'); }) function travelToGrove() { const disarm = localStorage.getItem('DAT'); var origin = $('#hudLocationContent').attr('class').replace("hudLocationContent ", ""); if ($('#hudLocationContent').hasClass('hudLocationContent forbidden_grove') == true) { //Do nothing you are already there } else if ($(".forbiddenGroveHeaderValue").text() == "CLOSED") { myAlert('The Forbiddengrove is closed now, you cannot travel there') } else { localStorage.setItem('TravelOrigin', origin); app.pages.TravelPage.travel("forbidden_grove"); if (disarm == "Y") { hg.utils.TrapControl.disarmBait().go() } } } //Balack's Cove $(document).on('click', '#balacksCoveButton', function() { myConfirm('cove','button'); }) function travelToCove() { const disarm = localStorage.getItem('DAT'); var origin = $('#hudLocationContent').attr('class').replace("hudLocationContent ", ""); if ($('#hudLocationContent').hasClass('hudLocationContent balacks_cove') == true) { //Do nothing, you are already there } else { localStorage.setItem('TravelOrigin', origin); app.pages.TravelPage.travel("balacks_cove"); if (disarm == "Y") { hg.utils.TrapControl.disarmBait().go() } } } //Seasonal Garden $(document).on('click', '#seasonalGardenButton', function() { myConfirm('garden','button'); }) function travelToGarden() { const disarm = localStorage.getItem('DAT'); var origin = $('#hudLocationContent').attr('class').replace("hudLocationContent ", ""); if ($('#hudLocationContent').hasClass('hudLocationContent seasonal_garden') == true) { //Do nothing, you are already there } else { localStorage.setItem('TravelOrigin', origin); app.pages.TravelPage.travel("seasonal_garden"); if (disarm == "Y") { hg.utils.TrapControl.disarmBait().go() } } } //Toxic Spill $(document).on('click', '#toxicSpillButton', function() { myConfirm('spill','button'); }) function travelToSpill(skip) { const disarm = localStorage.getItem('DAT'); var origin = $('#hudLocationContent').attr('class').replace("hudLocationContent ", ""); if ($('#hudLocationContent').hasClass('hudLocationContent pollution_outbreak') == true) { //Do nothing, you are already there } else { localStorage.setItem('TravelOrigin', origin); app.pages.TravelPage.travel("pollution_outbreak"); if (disarm == "Y") { hg.utils.TrapControl.disarmBait().go() } } } //Travel Back $(document).on('click', '#panicButton', function() { var origin = localStorage.getItem('TravelOrigin'); myConfirm('back',origin); }) function travelBack() { const disarm = localStorage.getItem('DAT'); var origin = localStorage.getItem('TravelOrigin'); if ($('#hudLocationContent').hasClass(origin) == true) { //Do nothing, you are already there } else { app.pages.TravelPage.travel(origin); if (disarm == "Y") { hg.utils.TrapControl.disarmBait().go() } } } //========== Modals ======================// function myConfirm(location,sub) { var messageText = ""; var icon = ""; var travelFunction = ""; var title = ""; if ((location == 'grove') && (sub == 'closing')) { icon = 'fas fa-dungeon'; messageText = 'The Forbidden Grove is closing soon, travel there now?'; travelFunction = travelToGrove; title = 'Timer Reminder'; } else if ((location == 'grove') && (sub == 'opening')) { icon = 'fas fa-dungeon'; messageText = 'The Forbidden Grove is opening soon, travel there now?'; travelFunction = travelToGrove; title = 'Timer Reminder'; } else if ((location == 'grove') && (sub == 'button')) { icon = 'fas fa-dungeon'; messageText = 'Travel to the Forbidden Grove now?'; travelFunction = travelToGrove; title = 'Quick Travel'; } else if ((location == 'cove') && (sub == 'low')) { icon = 'fas fa-water'; messageText = 'Balacks Cove will be low tide soon, travel there now?'; travelFunction = travelToCove; title = 'Timer Reminder'; } else if ((location == 'cove') && (sub == 'mid')) { icon = 'fas fa-water'; messageText = 'Balacks Cove will be mid tide soon, travel there now?'; travelFunction = travelToCove; title = 'Timer Reminder'; } else if ((location == 'cove') && (sub == 'high')) { icon = 'fas fa-water'; messageText = 'Balacks Cove will be high tide soon, travel there now?'; travelFunction = travelToCove; title = 'Timer Reminder'; } else if ((location == 'cove') && (sub == 'button')) { icon = 'fas fa-water'; messageText = 'Travel to Balacks Cove now?'; travelFunction = travelToCove; title = 'Quick Travel'; } else if ((location == 'garden') && (sub == 'fall')) { icon = 'fab fa-canadian-maple-leaf'; messageText = 'The Seasonal Garden will be fall soon, travel there now?'; travelFunction = travelToGarden; title = 'Timer Reminder'; } else if ((location == 'garden') && (sub == 'winter')) { icon = 'fas fa-icicles'; messageText = 'The Seasonal Garden will be winter soon, travel there now?'; travelFunction = travelToGarden; title = 'Timer Reminder'; } else if ((location == 'garden') && (sub == 'spring')) { icon = 'fas fa-seedling'; messageText = 'The Seasonal Garden will be spring soon, travel there now?'; travelFunction = travelToGarden; title = 'Timer Reminder'; } else if ((location == 'garden') && (sub == 'summer')) { icon = 'fas fa-sun'; messageText = 'The Seasonal Garden will be summer soon, travel there now?'; travelFunction = travelToGarden; title = 'Timer Reminder'; } else if ((location == 'garden') && (sub == 'button')) { var season = $('.seasonalGardenHeaderValue').text(); if (season == 'FALL') { icon = 'fab fa-canadian-maple-leaf'; } else if (season == 'WINTER') { icon = 'fas fa-icicles'; } else if (season == 'SPRING') { icon = 'fas fa-icicles'; } else { icon = 'fas fa-sun'; } messageText = 'Travel to the Seasonal Garden now?'; travelFunction = travelToGarden; title = 'Quick Travel'; } else if ((location == 'spill') && (sub == 'hero')) { icon = 'fas fa-biohazard'; messageText = 'The Toxic Spill will be '+sub+' rank soon, travel there now?'; travelFunction = travelToSpill; title = 'Timer Reminder'; } else if ((location == 'spill') && (sub == 'knight')) { icon = 'fas fa-biohazard'; messageText = 'The Toxic Spill will be '+sub+' rank soon, travel there now?'; travelFunction = travelToSpill; title = 'Timer Reminder'; } else if ((location == 'spill') && (sub == 'lord')) { icon = 'fas fa-biohazard'; messageText = 'The Toxic Spill will be '+sub+' rank soon, travel there now?'; travelFunction = travelToSpill; title = 'Timer Reminder'; } else if ((location == 'spill') && (sub == 'baron')) { icon = 'fas fa-biohazard'; messageText = 'The Toxic Spill will be '+sub+' rank soon, travel there now?'; travelFunction = travelToSpill; title = 'Timer Reminder'; } else if ((location == 'spill') && (sub == 'count')) { icon = 'fas fa-biohazard'; messageText = 'The Toxic Spill will be '+sub+' rank soon, travel there now?'; travelFunction = travelToSpill; title = 'Timer Reminder'; } else if ((location == 'spill') && (sub == 'duke')) { icon = 'fas fa-biohazard'; messageText = 'The Toxic Spill will be '+sub+' rank soon, travel there now?'; travelFunction = travelToSpill; title = 'Timer Reminder'; } else if ((location == 'spill') && (sub == 'grand duke')) { icon = 'fas fa-biohazard'; messageText = 'The Toxic Spill will be '+sub+' rank soon, travel there now?'; travelFunction = travelToSpill; title = 'Timer Reminder'; } else if ((location == 'spill') && (sub == 'archduke')) { icon = 'fas fa-biohazard'; messageText = 'The Toxic Spill will be '+sub+' rank soon, travel there now?'; travelFunction = travelToSpill; title = 'Timer Reminder'; } else if ((location == 'spill') && (sub == 'button')) { icon = 'fas fa-biohazard'; messageText = 'Travel to the Toxic Spill now?'; travelFunction = travelToSpill; title = 'Quick Travel'; } else if (location == 'back') { icon = 'fas fa-history'; messageText = 'Travel to the back to the '+sub+' now?'; travelFunction = travelBack; title = 'Quick Travel'; } // $.confirm({ autoClose: 'cancel|120000', title: title, content: messageText, icon: icon, type: 'dark', typeAnimated: true, boxWidth: '30%', useBootstrap: false, draggable: true, escapeKey: 'cancel', buttons: { confirm: { text: 'Yes', keys: ['enter', 'space'], btnClass: 'btn-green', action: function() { travelFunction("skip") } }, cancel: { text: 'No', btnClass: 'btn-red', action: function(){ } } } }) } function myAlert(messageText) { var icon = 'fas fa-exclamation-circle' var title = "Oops!" $.alert({ autoClose: 'acknowledge|60000', title: title, content: messageText, icon: icon, type: 'dark', typeAnimated: true, boxWidth: '30%', useBootstrap: false, draggable: true, escapeKey: 'aknowledge', buttons: { acknowledge: { text: 'Ok', keys: ['enter', 'space'], btnClass: 'btn-blue', action: function() { } }, } }) }