From 73748aac6c8e6c7d7a8545bb448041f654a86434 Mon Sep 17 00:00:00 2001 From: arnaucube Date: Wed, 19 Jun 2019 22:55:45 +0200 Subject: [PATCH] add points and countdown --- buildings.html | 3 +++ buildings.js | 58 ++++++++++++++++++++++++++++++++------------------ calc.js | 5 ++++- dashboard.html | 2 ++ user.js | 4 +++- 5 files changed, 49 insertions(+), 23 deletions(-) diff --git a/buildings.html b/buildings.html index 1d1e322..6ff7a3e 100644 --- a/buildings.html +++ b/buildings.html @@ -62,9 +62,12 @@
User Name:
+ Points: +
Planet Name:

+

diff --git a/buildings.js b/buildings.js index b902817..23cebd4 100644 --- a/buildings.js +++ b/buildings.js @@ -1,14 +1,13 @@ -function secondsToTime(secs) -{ - var h = Math.floor(secs / (60 * 60)); +function secondsToTime(secs) { + var h = Math.floor(secs / (60 * 60)); - var divisor_for_minutes = secs % (60 * 60); - var m = Math.floor(divisor_for_minutes / 60); + var divisor_for_minutes = secs % (60 * 60); + var m = Math.floor(divisor_for_minutes / 60); - var divisor_for_seconds = divisor_for_minutes % 60; - var s = Math.ceil(divisor_for_seconds); + var divisor_for_seconds = divisor_for_minutes % 60; + var s = Math.ceil(divisor_for_seconds); - return h + "h " + m + "m " + s + "s"; + return h + "h " + m + "m " + s + "s"; } function printNeededResources(r) { @@ -54,6 +53,21 @@ function printResources(r) { document.getElementById("energy").innerHTML = r.Energy; } +function coundown(t) { + document.getElementById("countdown").innerHTML = ` + Countdown: ` + secondsToTime(t) + ``; + let timer = setInterval(function() { + if (t > 0) { + t--; + document.getElementById("countdown").innerHTML = ` + Countdown: ` + secondsToTime(t) + ``; + } else { + clearInterval(timer); + getUser(); + } + }, 1000); +} + function printBuildings(planet) { let r = {}; let resrourcesHtml = {}; @@ -65,8 +79,10 @@ function printBuildings(planet) {
Finishes at: ` + planet.CurrentBuild.Ends + ` ` + coundown(planet.CurrentBuild.CountDown); } else { document.getElementById("currentBuild").innerHTML = ""; + document.getElementById("countdown").innerHTML = ""; } // metalmine @@ -82,7 +98,7 @@ function printBuildings(planet) { document.getElementById("metalmineLevel").innerHTML = "(Level " + planet.Buildings.metalmine + ")"; document.getElementById("btnBuildMetalMine").innerHTML = `
Build level ` + (+ (planet.Buildings.metalmine) + + (1)) + `
`; r = metalmineCost((+ (planet.Buildings.metalmine) + + (1))); - t = constructionTime(r, (+ (planet.Buildings.metalmine) + + (1))); + t = constructionTime(r, (+ (planet.Buildings.roboticsfactory) + + (1))); resrourcesHtml = printNeededResources(r); document.getElementById("metalmineResources").innerHTML = resrourcesHtml.html + `
@@ -108,7 +124,7 @@ function printBuildings(planet) { document.getElementById("crystalmineLevel").innerHTML = "(Level " + planet.Buildings.crystalmine + ")"; document.getElementById("btnBuildCrystalMine").innerHTML = `
Build level ` + (+ (planet.Buildings.crystalmine) + + (1)) + `
`; r = crystalmineCost((+ (planet.Buildings.crystalmine) + + (1))); - t = constructionTime(r, (+ (planet.Buildings.crystalmine) + + (1))); + t = constructionTime(r, (+ (planet.Buildings.roboticsfactory) + + (1))); resrourcesHtml = printNeededResources(r); document.getElementById("crystalmineResources").innerHTML = resrourcesHtml.html + `
@@ -134,7 +150,7 @@ function printBuildings(planet) { document.getElementById("deuteriummineLevel").innerHTML = "(Level " + planet.Buildings.deuteriummine + ")"; document.getElementById("btnBuildDeuteriumMine").innerHTML = `
Build level ` + (+ (planet.Buildings.deuteriummine) + + (1)) + `
`; r = deuteriummineCost((+ (planet.Buildings.deuteriummine) + + (1))); - t = constructionTime(r, (+ (planet.Buildings.deuteriummine) + + (1))); + t = constructionTime(r, (+ (planet.Buildings.roboticsfactory) + + (1))); resrourcesHtml = printNeededResources(r); document.getElementById("deuteriummineResources").innerHTML = resrourcesHtml.html + `
@@ -160,7 +176,7 @@ function printBuildings(planet) { document.getElementById("energymineLevel").innerHTML = "(Level " + planet.Buildings.energymine + ")"; document.getElementById("btnBuildEnergyMine").innerHTML = `
Build level ` + (+ (planet.Buildings.energymine) + + (1)) + `
`; r = energymineCost((+ (planet.Buildings.energymine) + + (1))); - t = constructionTime(r, (+ (planet.Buildings.energymine) + + (1))); + t = constructionTime(r, (+ (planet.Buildings.roboticsfactory) + + (1))); resrourcesHtml = printNeededResources(r); document.getElementById("energymineResources").innerHTML = resrourcesHtml.html + `
@@ -186,7 +202,7 @@ function printBuildings(planet) { document.getElementById("fusionreactorLevel").innerHTML = "(Level " + planet.Buildings.fusionreactor + ")"; document.getElementById("btnBuildFusionReactor").innerHTML = `
Build level ` + (+ (planet.Buildings.fusionreactor) + + (1)) + `
`; r = fusionreactorCost((+ (planet.Buildings.fusionreactor) + + (1))); - t = constructionTime(r, (+ (planet.Buildings.fusionreactor) + + (1))); + t = constructionTime(r, (+ (planet.Buildings.roboticsfactory) + + (1))); resrourcesHtml = printNeededResources(r); document.getElementById("fusionreactorResources").innerHTML = resrourcesHtml.html + `
@@ -238,7 +254,7 @@ function printBuildings(planet) { document.getElementById("shipyardLevel").innerHTML = "(Level " + planet.Buildings.shipyard + ")"; document.getElementById("btnBuildShipyard").innerHTML = `
Build level ` + (+ (planet.Buildings.shipyard) + + (1)) + `
`; r = shipyardCost((+ (planet.Buildings.shipyard) + + (1))); - t = constructionTime(r, (+ (planet.Buildings.shipyard) + + (1))); + t = constructionTime(r, (+ (planet.Buildings.roboticsfactory) + + (1))); resrourcesHtml = printNeededResources(r); document.getElementById("shipyardResources").innerHTML = resrourcesHtml.html + `
@@ -264,7 +280,7 @@ function printBuildings(planet) { document.getElementById("metalstorageLevel").innerHTML = "(Level " + planet.Buildings.metalstorage + ")"; document.getElementById("btnBuildMetalStorage").innerHTML = `
Build level ` + (+ (planet.Buildings.metalstorage) + + (1)) + `
`; r = metalstorageCost((+ (planet.Buildings.metalstorage) + + (1))); - t = constructionTime(r, (+ (planet.Buildings.metalstorage) + + (1))); + t = constructionTime(r, (+ (planet.Buildings.roboticsfactory) + + (1))); resrourcesHtml = printNeededResources(r); document.getElementById("metalstorageResources").innerHTML = resrourcesHtml.html + `
@@ -290,7 +306,7 @@ function printBuildings(planet) { document.getElementById("crystalstorageLevel").innerHTML = "(Level " + planet.Buildings.crystalstorage + ")"; document.getElementById("btnBuildCrystalStorage").innerHTML = `
Build level ` + (+ (planet.Buildings.crystalstorage) + + (1)) + `
`; r = crystalstorageCost((+ (planet.Buildings.crystalstorage) + + (1))); - t = constructionTime(r, (+ (planet.Buildings.crystalstorage) + + (1))); + t = constructionTime(r, (+ (planet.Buildings.roboticsfactory) + + (1))); resrourcesHtml = printNeededResources(r); document.getElementById("crystalstorageResources").innerHTML = resrourcesHtml.html + `
@@ -316,7 +332,7 @@ function printBuildings(planet) { document.getElementById("deuteriumstorageLevel").innerHTML = "(Level " + planet.Buildings.deuteriumstorage + ")"; document.getElementById("btnBuildDeuteriumStorage").innerHTML = `
Build level ` + (+ (planet.Buildings.deuteriumstorage) + + (1)) + `
`; r = deuteriumstorageCost((+ (planet.Buildings.deuteriumstorage) + + (1))); - t = constructionTime(r, (+ (planet.Buildings.deuteriumstorage) + + (1))); + t = constructionTime(r, (+ (planet.Buildings.roboticsfactory) + + (1))); resrourcesHtml = printNeededResources(r); document.getElementById("deuteriumstorageResources").innerHTML = resrourcesHtml.html + `
@@ -342,7 +358,7 @@ function printBuildings(planet) { document.getElementById("ressearchlabLevel").innerHTML = "(Level " + planet.Buildings.ressearchlab + ")"; document.getElementById("btnBuildRessearchLab").innerHTML = `
Build level ` + (+ (planet.Buildings.ressearchlab) + + (1)) + `
`; r = ressearchlabCost((+ (planet.Buildings.ressearchlab) + + (1))); - t = constructionTime(r, (+ (planet.Buildings.ressearchlab) + + (1))); + t = constructionTime(r, (+ (planet.Buildings.roboticsfactory) + + (1))); resrourcesHtml = printNeededResources(r); document.getElementById("ressearchlabResources").innerHTML = resrourcesHtml.html + `
@@ -368,7 +384,7 @@ function printBuildings(planet) { document.getElementById("alliancedepotLevel").innerHTML = "(Level " + planet.Buildings.alliancedepot + ")"; document.getElementById("btnBuildAllianceDepot").innerHTML = `
Build level ` + (+ (planet.Buildings.alliancedepot) + + (1)) + `
`; r = alliancedepotCost((+ (planet.Buildings.alliancedepot) + + (1))); - t = constructionTime(r, (+ (planet.Buildings.alliancedepot) + + (1))); + t = constructionTime(r, (+ (planet.Buildings.roboticsfactory) + + (1))); resrourcesHtml = printNeededResources(r); document.getElementById("alliancedepotResources").innerHTML = resrourcesHtml.html + `
@@ -394,7 +410,7 @@ function printBuildings(planet) { document.getElementById("missilesiloLevel").innerHTML = "(Level " + planet.Buildings.missilesilo + ")"; document.getElementById("btnBuildMissileSilo").innerHTML = `
Build level ` + (+ (planet.Buildings.missilesilo) + + (1)) + `
`; r = missilesiloCost((+ (planet.Buildings.missilesilo) + + (1))); - t = constructionTime(r, (+ (planet.Buildings.missilesilo) + + (1))); + t = constructionTime(r, (+ (planet.Buildings.roboticsfactory) + + (1))); resrourcesHtml = printNeededResources(r); document.getElementById("missilesiloResources").innerHTML = resrourcesHtml.html + `
@@ -420,7 +436,7 @@ function printBuildings(planet) { document.getElementById("spacedockLevel").innerHTML = "(Level " + planet.Buildings.spacedock + ")"; document.getElementById("btnBuildSpacedock").innerHTML = `
Build level ` + (+ (planet.Buildings.spacedock) + + (1)) + `
`; r = spacedockCost((+ (planet.Buildings.spacedock) + + (1))); - t = constructionTime(r, (+ (planet.Buildings.spacedock) + + (1))); + t = constructionTime(r, (+ (planet.Buildings.roboticsfactory) + + (1))); resrourcesHtml = printNeededResources(r); document.getElementById("spacedockResources").innerHTML = resrourcesHtml.html + `
diff --git a/calc.js b/calc.js index 63574d8..0a4c1ea 100644 --- a/calc.js +++ b/calc.js @@ -1,4 +1,4 @@ -const universespeed = 1; +const universespeed = 5; function metalmineCost(lvl) { const base = { @@ -214,6 +214,9 @@ function spacedockCost(lvl) { function constructionTime(r, roboticsLvl) { const naniteLvl = 1; + if(isNaN(roboticsLvl)) { + roboticsLvl=0; + } // T(h) = (metal + crystal) / (2500 * (1+roboticsLvl) * 2^naniteLvl * universespeed) tHours = (r.Metal + r.Crystal) / (2500 * (1 + roboticsLvl) * 2**naniteLvl * universespeed); return Math.floor(tHours * 3600); diff --git a/dashboard.html b/dashboard.html index 2a36645..7673b61 100644 --- a/dashboard.html +++ b/dashboard.html @@ -62,6 +62,8 @@

Dashboard

User Name: +
+ Points:
diff --git a/user.js b/user.js index 1732cf7..21e7d9b 100644 --- a/user.js +++ b/user.js @@ -26,6 +26,7 @@ function getUser() { user = res.data.user; console.log(user); document.getElementById("name").innerHTML = user.Name; + document.getElementById("points").innerHTML = Math.floor(user.Points/1000); // if (localStorage.getItem("mainplanet") === null) { @@ -42,6 +43,7 @@ let planetid = localStorage.getItem("mainplanet"); let planet = {}; // get user data function getPlanet() { + planetid = localStorage.getItem("mainplanet"); axios.get(url + "/planets/" + planetid, config).then(function(res) { console.log("planet", res.data); planet = res.data.planet; @@ -57,4 +59,4 @@ function getPlanet() { } getUser(); -setInterval(getUser, 5000); +setInterval(getUser, 10000);