You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

228 lines
12 KiB

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