function vitesse() { var vi; vi = document.getElementsByName("vitesse")[0].value; vi = vi / 10; return(vi); } function target() { var galaxie; var systeme; var planete; galaxie = document.getElementsByName("galaxie_arr")[0].value; systeme = document.getElementsByName("systeme_arr")[0].value; planete = document.getElementsByName("planete_arr")[0].value; return("["+galaxie+":"+systeme+":"+planete+"]"); } function setTarget(galaxie, ss, planete) { document.getElementsByName('galaxie_arr')[0].value = galaxie; document.getElementsByName('systeme_arr')[0].value = ss; document.getElementsByName('planete_arr')[0].value = planete; } function setMission(mission) { document.getElementsByName('ordre')[0].selectedIndex = mission; return; } function setUnion(unionid) { document.getElementsByName('union2')[0].selectedIndex = unionid; } function setTargetLong(galaxie, ss, planete, categorie, mission, cnt) { setTarget(galaxie, ss, planete, categorie); setMission(mission); setUnions(cnt); } function min(a, b) { a = a * 1; b = b * 1; if (a > b) { return b; } else { return a; } } function maxvitesse() { var msp = 1000000000; for (i = 1; i<=14; i++) { if (document.getElementsByName("vaisseau" + i)[0]) { if ((document.getElementsByName("vitesse" + i)[0].value * 1) >= 1 && (document.getElementsByName("vaisseau" + i)[0].value * 1) >= 1) { msp = min(msp, document.getElementsByName("vitesse" + i)[0].value); } } } return(msp); } function distance() { var galaxie_dep; var systeme_dep; var planete_dep; var galaxie_arr; var systeme_arr; var planete_arr; var dist; galaxie_dep = document.getElementsByName("galaxie_dep")[0].value; systeme_dep = document.getElementsByName("systeme_dep")[0].value; planete_dep = document.getElementsByName("planete_dep")[0].value; galaxie_arr = document.getElementsByName("galaxie_arr")[0].value; systeme_arr = document.getElementsByName("systeme_arr")[0].value; planete_arr = document.getElementsByName("planete_arr")[0].value; dist = 0; if ((galaxie_arr - galaxie_dep) != 0) { dist = Math.abs(galaxie_arr - galaxie_dep) * 20000; } else if ((systeme_arr - systeme_dep) != 0) { dist = Math.abs(systeme_arr - systeme_dep) * 95 + 2700; } else if ((planete_arr - planete_dep) != 0) { dist = Math.abs(planete_arr - planete_dep) * 5 + 1000; } else { dist = 5; } return(dist); } function duree() { var coef_vit; coef_vit = document.getElementsByName("facteurvitesse")[0].value; mvit = maxvitesse(); vit = vitesse(); dist = distance(); return Math.ceil(((35000 / vit * Math.sqrt(dist * 10 / mvit) + 10) / coef_vit)); } function conso() { var conso = 0; var conso_base = 0; var valeurs; var i; coef_vit = document.getElementsByName("facteurvitesse")[0].value; dist = distance(); dur = duree(); for (i = 1; i <= 14; i++) { if (document.getElementsByName("vaisseau" + i)[0]) { vitv = document.getElementsByName("vitesse" + i)[0].value; vite = 35000 / (dur * coef_vit - 10) * Math.sqrt(dist * 10 / vitv); conso_base = document.getElementsByName("conso" + i)[0].value * document.getElementsByName("vaisseau" + i)[0].value; conso += conso_base * dist / 35000 * ((vite / 10) + 1) * ((vite / 10) + 1); } } conso = Math.round(conso) + 1; return(conso); } function stockage() { var stockage = 0; for (i=1; i<=14; i++) { if (document.getElementsByName("vaisseau" + i)[0]) { if ((document.getElementsByName("vaisseau" + i)[0].value * 1) >= 1) { stockage += document.getElementsByName("vaisseau" + i)[0].value * document.getElementsByName("capacite" + i)[0].value } } } stockage -= conso(); return(stockage); } function Infov() { document.getElementById("distance").innerHTML = distance(); var secondes = duree(); document.forms["flotte"].elements["temps"].value = secondes; var heures = Math.floor(secondes / 3600); secondes -= heures * 3600; var minutes = Math.floor(secondes / 60); secondes -= minutes * 60; if (minutes < 10) minutes = "0" + minutes; if (secondes < 10) secondes = "0" + secondes; document.getElementById("duree").innerHTML = heures + ":" + minutes + ":" + secondes + " h"; var stor = stockage(); var cons = conso(); document.getElementById("maxvitesse").innerHTML = maxvitesse(); if (stor >= 0) { document.getElementById("conso").innerHTML = ''+cons+''; document.getElementById("stockage").innerHTML = ''+stor+''; } else { document.getElementById("conso").innerHTML = ''+cons+''; document.getElementById("stockage").innerHTML = ''+stor+''; } } function setRessource(id, val) { if (document.getElementsByName(id)[0]) { document.getElementsByName("ressource" + id + "_aff")[0].value = val; } } function maxRessource(id) { var ressource = document.getElementsByName("ressource" + id)[0].value; var ressourcechoisie = document.getElementsByName("ressource" + id + "_aff")[0].value; var stockCap = stockage(); var r1Transport = document.getElementsByName("ressource1_aff")[0].value; var r2Transport = document.getElementsByName("ressource2_aff")[0].value; var r3Transport = document.getElementsByName("ressource3_aff")[0].value; var freeCapacity = Math.min(Math.max(stockCap - r1Transport - r2Transport - r3Transport + ressourcechoisie*1, 0), ressource); if (document.getElementsByName("ressource" + id + "_aff")[0]) { document.getElementsByName("ressource" + id + "_aff")[0].value = freeCapacity; } calculateTransportCapacity(); } function maxTritium() { var stockCap = stockage(); // Capacitée de stoquage var r1toTransport = document.getElementsByName("ressource1_aff")[0].value; // valeur inscrite dans le titane a envoyé pas le titane qu'on a quai var r2toTransport = document.getElementsByName("ressource2_aff")[0].value; //pareille pour le carbone var r3Transport = document.getElementsByName("ressource3")[0].value - (conso()+1); //tritium a quai - conso var freeCapacity = stockCap - r1toTransport - r2toTransport; // capacitée de stoquage moins le titane/carbonne deja "a envoyer" // si on a plus de place pour foutre du tritium ça reste a 0 if (freeCapacity < 0) { document.getElementsByName("ressource3_aff")[0].value = "0"; } // si on a encore de la place if (freeCapacity > 0) { // si on a plus de place que de tritium a quai if (freeCapacity >= r3Transport){ document.getElementsByName("ressource3_aff")[0].value = r3Transport; // si on a moins de place que de tritium a quai on calcule pour tritium 1000 avec une place de 500 } if (freeCapacity < r3Transport){ document.getElementsByName("ressource3_aff")[0].value = freeCapacity; } } calculateTransportCapacity(); } function maxRessources() { var id; var stockCap = stockage(); var r1Transport = document.getElementsByName("ressource1")[0].value; var r2Transport = document.getElementsByName("ressource2")[0].value; var r3Transport = document.getElementsByName("ressource3")[0].value - (conso()+1); var freeCapacity = stockCap - r1Transport - r2Transport - r3Transport; if (freeCapacity < 0) { r1Transport = Math.min(r1Transport, stockCap); r2Transport = Math.min(r2Transport, stockCap - r1Transport); r3Transport = Math.min(r3Transport, stockCap - r1Transport - r2Transport); } document.getElementsByName("ressource1_aff")[0].value = Math.max(r1Transport, 0); document.getElementsByName("ressource2_aff")[0].value = Math.max(r2Transport, 0); document.getElementsByName("ressource3_aff")[0].value = Math.max(r3Transport, 0); calculateTransportCapacity(); } function calculateTransportCapacity() { var r1= Math.abs(document.getElementsByName("ressource1_aff")[0].value); var r2= Math.abs(document.getElementsByName("ressource2_aff")[0].value); var r3= Math.abs(document.getElementsByName("ressource3_aff")[0].value); tc = stockage() - r1 - r2 - r3; if (tc < 0) { document.getElementById("reste_ressources").innerHTML=""+tc+""; } else { document.getElementById("reste_ressources").innerHTML=""+tc+""; } return tc; }