arnaucube
arnaucube/gogame-old-frontendPublic Self-hosted repository
gogame-old-frontend/buildings.js
buildings.jsRaw
  1function printResources(r) {
  2  let html = "";
  3  html += `Requires:`;
  4  if (r.Metal <= user.Resources.Metal) {
  5    html += ` Metal: <b style="color:lime;">` + r.Metal + `</b>`;
  6  } else {
  7    html += ` Metal: <b style="color:red;">` + r.Metal + `</b>`;
  8  }
  9
 10  if (r.Crystal <= user.Resources.Crystal) {
 11    html += ` Crystal: <b style="color:lime;">` + r.Crystal + `</b>`;
 12  } else {
 13    html += ` Crystal: <b style="color:red;">` + r.Crystal + `</b>`;
 14  }
 15
 16  if (r.Deuterium <= user.Resources.Deuterium) {
 17    html += ` Deuterium: <b style="color:lime;">` + r.Deuterium + `</b>`;
 18  } else {
 19    html += ` Deuterium: <b style="color:red;">` + r.Deuterium + `</b>`;
 20  }
 21
 22  if (r.Energy <= user.Resources.Energy) {
 23    html += ` Energy: <b style="color: lime;">` + r.Energy + `</b>`;
 24  } else {
 25    html += ` Energy: <b style="color: red;">` + r.Energy + `</b>`;
 26  }
 27
 28  return html;
 29}
 30function printPlanet(planet) {
 31  let r = {};
 32  document.getElementById("planetname").innerHTML = planet.Name;
 33
 34  // metalmine
 35  document.getElementById("metalmineLevel").innerHTML = "(Level " + planet.Buildings.metalmine + ")";
 36  if (planet.Buildings.metalmine == undefined) {
 37    document.getElementById("btnBuildMetalMine").innerHTML = `<div onclick="buildBuilding('metalmine')">Build building</div>`;
 38    r = metalmineCost(1);
 39    document.getElementById("metalmineResources").innerHTML = printResources(r);
 40  } else {
 41    document.getElementById("btnBuildMetalMine").innerHTML = `<div onclick="buildBuilding('metalmine')">Build level ` + (+ (planet.Buildings.metalmine) + + (1)) + `</div>`;
 42    r = metalmineCost((+ (planet.Buildings.metalmine) + + (1)));
 43    document.getElementById("metalmineResources").innerHTML = printResources(r);
 44  }
 45
 46  // crystalmine
 47  document.getElementById("crystalmineLevel").innerHTML = "(Level " + planet.Buildings.crystalmine + ")";
 48  if (planet.Buildings.crystalmine == undefined) {
 49    document.getElementById("btnBuildCrystalMine").innerHTML = `<div onclick="buildBuilding('crystalmine')">Build building</div>`;
 50    r = crystalmineCost(1);
 51    document.getElementById("crystalmineResources").innerHTML = printResources(r);
 52  } else {
 53    document.getElementById("btnBuildCrystalMine").innerHTML = `<div onclick="buildBuilding('crystalmine')">Build level ` + (+ (planet.Buildings.crystalmine) + + (1)) + `</div>`;
 54    r = crystalmineCost((+ (planet.Buildings.crystalmine) + + (1)));
 55    document.getElementById("crystalmineResources").innerHTML = printResources(r);
 56  }
 57
 58  // deuteriummine
 59  document.getElementById("deuteriummineLevel").innerHTML = "(Level " + planet.Buildings.deuteriummine + ")";
 60  if (planet.Buildings.deuteriummine == undefined) {
 61    document.getElementById("btnBuildDeuteriumMine").innerHTML = `<div onclick="buildBuilding('deuteriummine')">Build building</div>`;
 62    r = deuteriummineCost(1);
 63    document.getElementById("deuteriummineResources").innerHTML = printResources(r);
 64  } else {
 65    document.getElementById("btnBuildDeuteriumMine").innerHTML = `<div onclick="buildBuilding('deuteriummine')">Build level ` + (+ (planet.Buildings.deuteriummine) + + (1)) + `</div>`;
 66    r = deuteriummineCost((+ (planet.Buildings.deuteriummine) + + (1)));
 67    document.getElementById("deuteriummineResources").innerHTML = printResources(r);
 68  }
 69
 70  // energymine
 71  document.getElementById("energymineLevel").innerHTML = "(Level " + planet.Buildings.energymine + ")";
 72  if (planet.Buildings.energymine == undefined) {
 73    document.getElementById("btnBuildEnergyMine").innerHTML = `<div onclick="buildBuilding('energymine')">Build building</div>`;
 74    r = energymineCost(1);
 75    document.getElementById("energymineResources").innerHTML = printResources(r);
 76  } else {
 77    document.getElementById("btnBuildEnergyMine").innerHTML = `<div onclick="buildBuilding('energymine')">Build level ` + (+ (planet.Buildings.energymine) + + (1)) + `</div>`;
 78    r = energymineCost((+ (planet.Buildings.energymine) + + (1)));
 79    document.getElementById("energymineResources").innerHTML = printResources(r);
 80  }
 81
 82  // fusionreactor
 83  document.getElementById("fusionreactorLevel").innerHTML = "(Level " + planet.Buildings.fusionreactor + ")";
 84  if (planet.Buildings.fusionreactor == undefined) {
 85    document.getElementById("btnBuildFusionReactor").innerHTML = `<div onclick="buildBuilding('fusionreactor')">Build building</div>`;
 86    r = fusionreactorCost(1);
 87    document.getElementById("fusionreactorResources").innerHTML = printResources(r);
 88  } else {
 89    document.getElementById("btnBuildFusionReactor").innerHTML = `<div onclick="buildBuilding('fusionreactor')">Build level ` + (+ (planet.Buildings.fusionreactor) + + (1)) + `</div>`;
 90    r = fusionreactorCost((+ (planet.Buildings.fusionreactor) + + (1)));
 91    document.getElementById("fusionreactorResources").innerHTML = printResources(r);
 92  }
 93
 94  // roboticsfactory
 95  document.getElementById("roboticsfactoryLevel").innerHTML = "(Level " + planet.Buildings.roboticsfactory + ")";
 96  if (planet.Buildings.roboticsfactory == undefined) {
 97    document.getElementById("btnBuildRoboticsFactory").innerHTML = `<div onclick="buildBuilding('roboticsfactory')">Build building</div>`;
 98    r = roboticsfactoryCost(1);
 99    document.getElementById("roboticsfactoryResources").innerHTML = printResources(r);
100  } else {
101    document.getElementById("btnBuildRoboticsFactory").innerHTML = `<div onclick="buildBuilding('roboticsfactory')">Build level ` + (+ (planet.Buildings.roboticsfactory) + + (1)) + `</div>`;
102    r = roboticsfactoryCost((+ (planet.Buildings.roboticsfactory) + + (1)));
103    document.getElementById("roboticsfactoryResources").innerHTML = printResources(r);
104  }
105
106  // shipyard
107  document.getElementById("shipyardLevel").innerHTML = "(Level " + planet.Buildings.shipyard + ")";
108  if (planet.Buildings.shipyard == undefined) {
109    document.getElementById("btnBuildShipyard").innerHTML = `<div onclick="buildBuilding('shipyard')">Build building</div>`;
110    r = shipyardCost(1);
111    document.getElementById("shipyardResources").innerHTML = printResources(r);
112  } else {
113    document.getElementById("btnBuildShipyard").innerHTML = `<div onclick="buildBuilding('shipyard')">Build level ` + (+ (planet.Buildings.shipyard) + + (1)) + `</div>`;
114    r = shipyardCost((+ (planet.Buildings.shipyard) + + (1)));
115    document.getElementById("shipyardResources").innerHTML = printResources(r);
116  }
117
118  // metalstorage
119  document.getElementById("metalstorageLevel").innerHTML = "(Level " + planet.Buildings.metalstorage + ")";
120  if (planet.Buildings.metalstorage == undefined) {
121    document.getElementById("btnBuildMetalStorage").innerHTML = `<div onclick="buildBuilding('metalstorage')">Build building</div>`;
122    r = metalstorageCost(1);
123    document.getElementById("metalstorageResources").innerHTML = printResources(r);
124  } else {
125    document.getElementById("btnBuildMetalStorage").innerHTML = `<div onclick="buildBuilding('metalstorage')">Build level ` + (+ (planet.Buildings.metalstorage) + + (1)) + `</div>`;
126    r = metalstorageCost((+ (planet.Buildings.metalstorage) + + (1)));
127    document.getElementById("metalstorageResources").innerHTML = printResources(r);
128  }
129
130  // crystalstorage
131  document.getElementById("crystalstorageLevel").innerHTML = "(Level " + planet.Buildings.crystalstorage + ")";
132  if (planet.Buildings.crystalstorage == undefined) {
133    document.getElementById("btnBuildCrystalStorage").innerHTML = `<div onclick="buildBuilding('crystalstorage')">Build building</div>`;
134    r = crystalstorageCost(1);
135    document.getElementById("crystalstorageResources").innerHTML = printResources(r);
136  } else {
137    document.getElementById("btnBuildCrystalStorage").innerHTML = `<div onclick="buildBuilding('crystalstorage')">Build level ` + (+ (planet.Buildings.crystalstorage) + + (1)) + `</div>`;
138    r = crystalstorageCost((+ (planet.Buildings.crystalstorage) + + (1)));
139    document.getElementById("crystalstorageResources").innerHTML = printResources(r);
140  }
141
142  // deuteriumstorage
143  document.getElementById("deuteriumstorageLevel").innerHTML = "(Level " + planet.Buildings.deuteriumstorage + ")";
144  if (planet.Buildings.deuteriumstorage == undefined) {
145    document.getElementById("btnBuildDeuteriumStorage").innerHTML = `<div onclick="buildBuilding('deuteriumstorage')">Build building</div>`;
146    r = deuteriumstorageCost(1);
147    document.getElementById("deuteriumstorageResources").innerHTML = printResources(r);
148  } else {
149    document.getElementById("btnBuildDeuteriumStorage").innerHTML = `<div onclick="buildBuilding('deuteriumstorage')">Build level ` + (+ (planet.Buildings.deuteriumstorage) + + (1)) + `</div>`;
150    r = deuteriumstorageCost((+ (planet.Buildings.deuteriumstorage) + + (1)));
151    document.getElementById("deuteriumstorageResources").innerHTML = printResources(r);
152  }
153
154  // ressearchlab
155  document.getElementById("ressearchlabLevel").innerHTML = "(Level " + planet.Buildings.ressearchlab + ")";
156  if (planet.Buildings.ressearchlab == undefined) {
157    document.getElementById("btnBuildRessearchLab").innerHTML = `<div onclick="buildBuilding('ressearchlab')">Build building</div>`;
158    r = ressearchlabCost(1);
159    document.getElementById("ressearchlabResources").innerHTML = printResources(r);
160  } else {
161    document.getElementById("btnBuildRessearchLab").innerHTML = `<div onclick="buildBuilding('ressearchlab')">Build level ` + (+ (planet.Buildings.ressearchlab) + + (1)) + `</div>`;
162    r = ressearchlabCost((+ (planet.Buildings.ressearchlab) + + (1)));
163    document.getElementById("ressearchlabResources").innerHTML = printResources(r);
164  }
165
166  // alliancedepot
167  document.getElementById("alliancedepotLevel").innerHTML = "(Level " + planet.Buildings.alliancedepot + ")";
168  if (planet.Buildings.alliancedepot == undefined) {
169    document.getElementById("btnBuildAllianceDepot").innerHTML = `<div onclick="buildBuilding('alliancedepot')">Build building</div>`;
170    r = alliancedepotCost(1);
171    document.getElementById("alliancedepotResources").innerHTML = printResources(r);
172  } else {
173    document.getElementById("btnBuildAllianceDepot").innerHTML = `<div onclick="buildBuilding('alliancedepot')">Build level ` + (+ (planet.Buildings.alliancedepot) + + (1)) + `</div>`;
174    r = alliancedepotCost((+ (planet.Buildings.alliancedepot) + + (1)));
175    document.getElementById("alliancedepotResources").innerHTML = printResources(r);
176  }
177
178  // missilesilo
179  document.getElementById("missilesiloLevel").innerHTML = "(Level " + planet.Buildings.missilesilo + ")";
180  if (planet.Buildings.missilesilo == undefined) {
181    document.getElementById("btnBuildMissileSilo").innerHTML = `<div onclick="buildBuilding('missilesilo')">Build building</div>`;
182    r = missilesiloCost(1);
183    document.getElementById("missilesiloResources").innerHTML = printResources(r);
184  } else {
185    document.getElementById("btnBuildMissileSilo").innerHTML = `<div onclick="buildBuilding('missilesilo')">Build level ` + (+ (planet.Buildings.missilesilo) + + (1)) + `</div>`;
186    r = missilesiloCost((+ (planet.Buildings.missilesilo) + + (1)));
187    document.getElementById("missilesiloResources").innerHTML = printResources(r);
188  }
189
190  // spacedock
191  document.getElementById("spacedockLevel").innerHTML = "(Level " + planet.Buildings.spacedock + ")";
192  if (planet.Buildings.spacedock == undefined) {
193    document.getElementById("btnBuildSpacedock").innerHTML = `<div onclick="buildBuilding('spacedock')">Build building</div>`;
194    r = spacedockCost(1);
195    document.getElementById("spacedockResources").innerHTML = printResources(r);
196  } else {
197    document.getElementById("btnBuildSpacedock").innerHTML = `<div onclick="buildBuilding('spacedock')">Build level ` + (+ (planet.Buildings.spacedock) + + (1)) + `</div>`;
198    r = spacedockCost((+ (planet.Buildings.spacedock) + + (1)));
199    document.getElementById("spacedockResources").innerHTML = printResources(r);
200  }
201}
202
203let planetid = localStorage.getItem("mainplanet");
204let planet = {};
205// get user data
206axios.get(url + "/planets/" + planetid, config).then(function(res) {
207  console.log("buildings", res.data);
208  planet = res.data.planet;
209  printPlanet(planet);
210}).catch(function(error) {
211  console.log(error);
212});
213
214
215function buildBuilding(building) {
216  console.log("build " + building);
217  const data = {
218    planetid: planetid,
219    building: building
220  }
221  axios.post(url + "/buildings", data, config).then(function(res) {
222    console.log("buildings", res.data);
223    planet = res.data.planet;
224    printPlanet(planet);
225  }).catch(function(error) {
226    console.log(error);
227  });
228}