0000 | /* OGAME TRANSFERT
0001 |
0002 |
Creation (MM/JJ/AAAA): 12/10/2007
0003 |
Gillou
0004 |
http://www.vbc3.com/script/ogametransfert.user.js
0005 |
http://userscripts.org/scripts/show/23500
0006 |
0007 |
Script under Creative Commons licence (http://creativecommons.org/licenses/by-nc-nd/2.0/fr/deed.en)
0008 |
0009 |
Supported Ogame domain :
0010 |
- fr
0011 |
- org
0012 |
- it : Thanks to Fiox for the translation
0013 |
*/
0014 |
0015 |
0016 |
0017 |
0018 |
// ==UserScript==
0019 |
// @name OGame Transfert
0020 |
// @namespace V0.8 Compatible Ogame V0.81
0021 |
// @description Management of tranfers, Empire view, Global resources view
0022 |
// @include http://uni*.ogame.*
0023 |
// ==/UserScript==
0024 |
0025 |
0026 |
0027 |
0028 |
0029 |
/* PARAMETRES DE MISE A JOUR (A NE PAS MODIFIER!!!)
0030 |
-------------------------------------------------- */
0031 |
0032 |
var C_ScriptName = 'OgameTransfert'; // Nom du script
0033 |
var C_ScriptVersion = '0.8 beta'; // Version du script pour les mises a jour majeures
0034 |
var C_ScriptBuild = '016'; // Sous-version du script pour les mises a jour mineures
0035 |
var C_ScriptDate = '09/30/2008'; // Date de la publication (MM/JJ/AAAA)
0036 |
0037 |
var Counter = new Date();
0038 |
CounterStart = Counter.getTime();
0039 |
0040 |
/* DECLARATIONS GLOBALES
0041 |
-------------------------------------------------- */
0042 |
0043 |
// Prototypes : Informations sur une planete
0044 |
function P_Planet() {
0045 |
this.Id = '';
0046 |
this.Name = '';
0047 |
this.Session = '';
0048 |
this.Type = '';
0049 |
this.Url = '';
0050 |
0051 |
this.Galaxy = '';
0052 |
this.System = '';
0053 |
this.Planet = '';
0054 |
0055 |
this.UsedSpace = 0;
0056 |
this.TotalSpace = 0;
0057 |
this.Diameter = 0;
0058 |
this.MinTemperature = 0;
0059 |
this.MaxTemperature = 0;
0060 |
this.ImageUrl = '';
0061 |
this.Update = '';
0062 |
}
0063 |
0064 |
// Prototypes : Ressources
0065 |
function P_Resources() {
0066 |
this.Metal = '';
0067 |
this.Crystal = '';
0068 |
this.Deuterium = '';
0069 |
this.FreeEnergy = '';
0070 |
this.TotalEnergy = '';
0071 |
this.MetalOver = false;
0072 |
this.CrystalOver = false;
0073 |
this.DeuteriumOver = false;
0074 |
this.EnergyOver = false;
0075 |
this.Update = '';
0076 |
}
0077 |
0078 |
// Prototypes : Pourcentage d'utilisation des batiments (page ressources)
0079 |
function P_Pourcent() {
0080 |
this.rate = '';
0081 |
this.Metal = '';
0082 |
this.Crystal = '';
0083 |
this.Deuterium = '';
0084 |
this.Solar = '';
0085 |
this.Fusion = '';
0086 |
this.Ship212 = '';
0087 |
this.Update = '';
0088 |
}
0089 |
0090 |
// Prototypes : Production horaire (page ressources)
0091 |
function P_Production() {
0092 |
this.Metal = 0;
0093 |
this.Crystal = 0;
0094 |
this.Deuterium = 0;
0095 |
this.MetalMax = 0;
0096 |
this.CrystalMax = 0;
0097 |
this.DeuteriumMax = 0;
0098 |
this.Update = '';
0099 |
}
0100 |
0101 |
// Prototypes : Construction (batiment,recherche,flotte,defense)
0102 |
function P_Construction(Id,Metal,Crystal,Deuterium,Energy,PlanetType,Group0,Element0,Level0,Group1,Element1,Level1,Group2,Element2,Level2,Group3,Element3,Level3) {
0103 |
this.Id = Id;
0104 |
this.Name = null;
0105 |
0106 |
// Cout
0107 |
this.Metal = Metal;
0108 |
this.Crystal = Crystal;
0109 |
this.Deuterium = Deuterium;
0110 |
this.Energy = Energy;
0111 |
0112 |
// Pre-requis de construction
0113 |
this.PlanetType = PlanetType;
0114 |
this.Group0 = Group0;
0115 |
this.Element0 = Element0;
0116 |
this.Level0 = Level0;
0117 |
this.Group1 = Group1;
0118 |
this.Element1 = Element1;
0119 |
this.Level1 = Level1;
0120 |
this.Group2 = Group2;
0121 |
this.Element2 = Element2;
0122 |
this.Level2 = Level2;
0123 |
this.Group3 = Group3;
0124 |
this.Element3 = Element3;
0125 |
this.Level3 = Level3;
0126 |
}
0127 |
0128 |
// Prototypes : Description de la construction
0129 |
function P_ConstructionDescription() {
0130 |
this.Level = '';
0131 |
this.UC = 0;
0132 |
}
0133 |
0134 |
// Prototypes : Description de la recherche
0135 |
function P_ResearchDescription() {
0136 |
this.Level = '';
0137 |
this.UC = 0;
0138 |
this.Update = '';
0139 |
}
0140 |
0141 |
// Prototypes : Liste de construction des vaisseaux et defenses
0142 |
function P_FleetsDefensesUC() {
0143 |
this.List = '';
0144 |
this.Update = 0;
0145 |
}
0146 |
0147 |
// Prototypes : Transfert
0148 |
function P_Transfer() {
0149 |
this.Checked = false;
0150 |
this.OriginePlanet = 0;
0151 |
this.OrigineSystem = 0;
0152 |
this.OrigineGalaxy = 0;
0153 |
this.Metal = 0;
0154 |
this.Crystal = 0;
0155 |
this.Deuterium = 0;
0156 |
this.Speed = 0;
0157 |
this.TransportShip = 0;
0158 |
this.Recycler = 0;
0159 |
this.State = 0;
0160 |
}
0161 |
0162 |
// Prototypes : Ressources en temps reel
0163 |
function P_RealTimeResources() {
0164 |
this.Metal = 0;
0165 |
this.Crystal = 0;
0166 |
this.Deuterium = 0;
0167 |
}
0168 |
0169 |
// Prototypes : Ressources en temps reel
0170 |
function P_PlanetName() {
0171 |
this.Name = '';
0172 |
this.Id = '';
0173 |
}
0174 |
0175 |
// Prototypes : Overlib
0176 |
function P_OverLib() {
0177 |
this.Text = '';
0178 |
this.Link = '';
0179 |
}
0180 |
0181 |
// Type de planete;
0182 |
var C_Planet = 0;
0183 |
var C_Moon = 1;
0184 |
var C_All = 2;
0185 |
0186 |
// Constantes des constructions
0187 |
const C_Buildings = 0;
0188 |
const C_Research = 1;
0189 |
const C_Fleets = 2;
0190 |
const C_Defenses = 3;
0191 |
0192 |
var i,j,k // Variables d'incrementation
0193 |
0194 |
// Separateur pour le parsage des donnees memorisees via GreaseMonkey
0195 |
var Separator = new RegExp("[|]+", "g");
0196 |
var KeySeparator = new RegExp("[=]+", "g");
0197 |
0198 |
// Mise en memoire des variables memorisees via GreaseMonkey
0199 |
var Get = new String();
0200 |
0201 |
// Tableau des comptes
0202 |
var A_Account = new Array();
0203 |
0204 |
// Tableau des informations memorisees via GreaseMonkey
0205 |
var A_Planet = new Array();
0206 |
var A_PlanetName = new Array();
0207 |
var A_PlanetOrder = new Array();
0208 |
var A_PlanetOrderIndex = new Array();
0209 |
var PlanetOrderIndex = 0;
0210 |
var A_Resources = new Array();
0211 |
var A_Pourcent = new Array();
0212 |
var A_Production = new Array();
0213 |
var A_Buildings = new Array();
0214 |
var A_BuildingsUpdate = new Array();
0215 |
var A_Research = new Array();
0216 |
var ResearchUpdate = '-'; // Variable de mise a jour des recherches
0217 |
var A_Fleets = new Array();
0218 |
var A_FleetsUpdate = new Array();
0219 |
var A_Defenses = new Array();
0220 |
var A_DefensesUpdate = new Array();
0221 |
var A_FleetsDefensesUC = new Array();
0222 |
var A_Transfer = new Array();
0223 |
0224 |
// Tableau des ressources en temps reel
0225 |
var A_RealTimeResources = new Array();
0226 |
0227 |
// Tableau des actions a realiser
0228 |
var A_Actions = new Array();
0229 |
var NotRun = false; // Pas de report du lancement de l'action
0230 |
0231 |
// Tableau des parametres d'affichage des colonnes du tableau de ressources
0232 |
var A_ShowHideColomn = new Array();
0233 |
0234 |
// Tableau pour le transfert des ressources
0235 |
var A_TransferMetal = new Array();
0236 |
var A_TransferCrystal = new Array();
0237 |
var A_TransferDeuterium = new Array();
0238 |
0239 |
// Code pour input numerique afin d'empecher la saisi de texte
0240 |
var NoStringInput = 'onkeypress="if((event.keyCode < 48 && event.keyCode != 39 && event.keyCode != 37 && event.keyCode != 46 && event.keyCode != 8) || event.keyCode > 57) event.returnValue = false; if((event.which < 48 && event.which != 46 && event.which != 8 && event.which != 37 && event.which != 39) || event.which > 57) return false;"';
0241 |
0242 |
// Variable d'activation de la description avancee des erreurs
0243 |
var Debug = true; // Initialisation de la valeur, cette valeur est reparametree lors du chargement des parametres generaux
0244 |
const DebugAdvanced = false;
0245 |
0246 |
// Serveur (clipboard, image php, update)
0247 |
const C_Server = 'http://www.vbc3.com/script/';
0248 |
0249 |
// Constante contenant le code en base 64 des images (Prog de conversion : http://lggillou.vbc3.com/download.php?Programme=14)
0250 |
const C_ImgNext = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAAQCAIAAAEMoeOjAAAABnRSTlMA/wAAAP+JwC+QAAAACXBIWXMAAA7DAAAOwwHHb6hkAAAACXRFWHRDb21tZW50AACJKo0GAAABlUlEQVR4nGOwanT6z/AfiBjUS+UUG+X8zpgxQAXibzoUvvZkUCiVCDhqDRQIvWoOEgbqUClWArKa36eA+BDVCHMgyuC6GIBmAA0Fmg40D2gBA0Qb3BSQed577SGaIRLIXJD1eTc8g64YuZ40hpiLzAXprnodnPXQU7FYGKIbmQuSNqnQRzYcmcugEa0I5wARMpfBYbORSLIAnI/MZQg+bxZwzky+SATCR+YylN7xS7rh4HJZS7pGFMhH5jJUffDLeOIaf9rJ7gjIFchchraPsbmPPaOOQsMRmcuQfsot4XAA3C3IXAaHfmtkPyBzQd63mGkgmSeKrAI5NHDJgnS67jHyP20ZvN9RqoAfUycuWVCEZd51TbhhF3bN1PuCnv9JG9kKEbg0HllQCqx9GlT8wCfzrkf0NbuAS8aOZ7Vcjpup1IISCh5ZkGsbP0ZVvg7Kf+qWfM8q5oa9/z4b1RIZuGtxyYJ0lt73rXkXWv4yJuqYt3auApo/ccmCdBaejknZH6SRo4gZgHhkQTp5wvmwRglEJy5ZADfU09qGYTEfAAAAAElFTkSuQmCC';
0251 |
const C_ImgPrevious = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAAQCAIAAAEMoeOjAAAABnRSTlMA/wAAAP+JwC+QAAAACXBIWXMAAA7DAAAOwwHHb6hkAAAACXRFWHRDb21tZW50AACJKo0GAAABl0lEQVR4nGP4z/DfqtEJSDKo1Cqpl8oVP/ABsv+DBKKv2Tme1QLxoo55QxTVvAsF8aUK+CF8/9OWUNUQBBRlgCiD62IAmgE0FGg60DygBQwQbXBTEPpT9gdBTEXmgpXvs0m+Z1X5GiqNzAVJy1aIeF/QS7hhp1AqgcZFGC6ZJ4psOISLkOYJ50P2B5ALldPIUSw8HQOXgHBBctq5CuUvY0rv+0Ik4FwG1RKZmBv2+U/dGj9GASWQuQwux80CLhln3vWofRoElEPmgj160ibsmmnmXVeImXAu1C3B+x1d9xjB3QLhIvxgMdMA2Q9ALkrcQJBJhb5DvzVyUGCVRdGpUqyUcDig+X1K+ik3TJ1oslCdisXCUUedsh565j72rHod3PYxFlknVlkGxUY5uyP6fmfM4k87xd90yHjiWvjas+qDHzDVgPTglgXZKV0j6nrS2OWyVtAVo6QbDnk3PEvv+EFSBB5ZhD/li0QCjloHnDMLvWoefN4MrhOXLHrYiiQLeO+1d9hshDVskWWxxAooZUUr4ooVuCwAp/3T2vUu6jIAAAAASUVORK5CYII=';
0252 |
const C_ImgPlay = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAAQCAIAAAE42CK/AAAABnRSTlMA/wAAAP+JwC+QAAAACXBIWXMAAA7DAAAOwwHHb6hkAAAACXRFWHRDb21tZW50AACJKo0GAAABPElEQVR4nGP4z/AfiEDQ7og+mJHxxBVEB5wzg0okHA4A0RrRilDFwefN5ItEQKyqD37xp51ArPRTbgijHDYbiSQLQPhQodI7fkk3HFwua0nXiEKF2j7G5j72jDrqhKSx3xquCyRg1eiEzvfea4/gK5RKhF41DzhqjeDn3fAMumLketIYxFcvlSt87Rl/08HvjJlioxxIf9Xr4KyHnorFwlDzmt+nqBQrIcw3qdBHcThQyGKmgWSeKLJD0FW47jHyP20ZvN9RqoAfiwqgszLvuibcsAu7Zup9Qc//pI1shQiKCqBDa58GFT/wybzrEX3NLuCSseNZLZfjZiq1SghbGj9GVb4Oyn/qlnzPKuaGvf8+G9USGRR3lN73rXkXWv4yJuqYt3auAhaXFp6OSdkfpJGjiNMvPOF8WL0KRAC2SRnFpr5kKQAAAABJRU5ErkJggg==';
0253 |
const C_ImgStop = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAAHnlligAAAABnRSTlMA/wAAAP+JwC+QAAAACXBIWXMAAA7DAAAOwwHHb6hkAAAACXRFWHRDb21tZW50AACJKo0GAAABRklEQVR4nGWSvUpDQRCF9x18AVMLFkoaEQ2BgBdDlBQW/hCwi6AQgo2QIo2VrQ/ho4iNiIQrGNDCysaIffINZxiXG5jl7p49M3PO3E3zNK8NVxLr4rOwj52uyuJ2dmanw5fN3lvDr/iMZ8f3vwPnEaSn/ef187LRn7ZGX93EbvjRZmcFSNDu4e/Ocg4etwlqwjotdwmvfDSpA9GJKpFkF5yv3zuC6A1q7ekq6OanQwDRwITLTSVMY3SO5lReu1xNQruvG+qvslYquCHJL6Q1R1FlF8sowrbGzRQOZALUL8gSKhPyYXLlQ6Jz6b2nJl1ieoT7y9miSnywURbizLcSIPH3gnoy2Yl/EIrdNiunymx/uleh4trHwcp4Ld4UPN7G4LvIqRqTJ4TKSlXmAy9m9z8+jbZChZdTmSlhCUyKYEcsvxPhCjEXtRRx4iRN7Q8AAAAASUVORK5CYII=';
0254 |
const C_ImgUp = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAJCAIAAAHDTwvzAAAABnRSTlMA/wAAAP+JwC+QAAAACXBIWXMAAAsSAAALEgHS3X78AAAACXRFWHRDb21tZW50AACJKo0GAAABLUlEQVR4nGP4z/BfsVGOwarRSb1UjgHIAyIGhVIJoACIF3DUOv6mg0qxElQKqgAIg64YZT30BDGBSiEaoHogyPWksd8ZM8ViYYQW7732oVfN8254Fr72rHod3Pw+xaRCH6FDpVYJ3RIgkq0QcTyr5b/PBkVCqoDf+4Je9DW75HtWUce8oRKSeaL+py0TbtgVP/CpfB1U8y40ZX8Q1IkQVwI9CWGjOxeOpGtEXY6b2R3RVy2RwZRF0SBfJOJ/0sblslbAJeP4004xN+yjjjpp5ypg0SCSLBC83zHgnFnYNdOkGw6Zdz0ynrjmP3XLfexZ/jIm4XCARo4iVINGtKLFTAOHzUaue4yCz5tl3nUtveNX+zSo6oNf48eoto+xpfd900+5FZ6Ocei35gnnAwAz1tn2SifjEgAAAABJRU5ErkJggg==';
0255 |
const C_ImgDown = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAJCAIAAAHDTwvzAAAABnRSTlMA/wAAAP+JwC+QAAAACXBIWXMAAAsSAAALEgHS3X78AAAACXRFWHRDb21tZW50AACJKo0GAAABL0lEQVR4nGOwanRSL5Vj+M/wX6VWiQHIUyiVAPH+M4Bh1DHv6Gt2UgX8ICmILJAEySTfs/K+oAdVBkcgmLI/qOZdaOXroOIHPgk37PxPW0rmiSJU+e+zcTyrJVshAtUBMRjiDqDxEBtAlphU6De/T6l6HVz42jPvhmfoVXPvvfZQO1SKlbIeesbfdAi6YhRw1BphORApFgv7nTFzPWmM4iqoXKMcinN5wvkc+q0LT8ekn3Irve/b9jG28WNU1Qe/2qdBpXf8Mu+6Bp83c91j5LDZyGKmgUa0ItQkjRzFhMMB5S9jch975j91y3jimnnXI+mGQ9g104BzZsH7HUWSBdCtBiLtXIWoo04xN+zjTzsFXDJ2uazlf9JGvkgEPQTRkGqJjN0RfZfjZtI1opiyAH9n2abU/F0QAAAAAElFTkSuQmCC';
0256 |
const C_ImgLeft = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAICAIAAAHJlJL6AAAABnRSTlMA/wAAAP+JwC+QAAAACXBIWXMAAAsSAAALEgHS3X78AAAACXRFWHRDb21tZW50AACJKo0GAAAAbUlEQVR4nGP4z/CfwarRiUGlVkmhVIIBxHU8qwWi/ffZqJfKgViyFSIgJUCWdq4Cg2qJTMwNewaX42YBl4zBCk/agCggUiwWjjrqBNKl2Chnd0Tf74xZ/GknqLnSNaKuJ41dLmtB+RAkXwQyGwA7gjOamDgP9wAAAABJRU5ErkJggg==';
0257 |
const C_ImgRight = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAICAIAAAHJlJL6AAAABnRSTlMA/wAAAP+JwC+QAAAACXBIWXMAAAsSAAALEgHS3X78AAAACXRFWHRDb21tZW50AACJKo0GAAAAbElEQVR4nGOwanRi+A+ECqUSio1yYKbfGTMQ1/WkMYinXiqnWCwMYskXiYAol8ta0jWiDPGnneyO6DNEHXUCCQKN8T9pI1sBUgE1LuCSseNZLZfjZiq1SiBTYm7Y+++zUS2RgarXzlWAKAYiANa6M5quy1RnAAAAAElFTkSuQmCC';
0258 |
0259 |
// Retour a la ligne
0260 |
const C_CRLF = String.fromCharCode(13)+String.fromCharCode(10);
0261 |
0262 |
0263 |
0264 |
0265 |
0266 |
/* TEXTE DES LANGUES
0267 |
-------------------------------------------------- */
0268 |
0269 |
// Detection de la langue
0270 |
var Host = window.location.host;
0271 |
var Language, OgameExtension = '';
0272 |
var A_OgameExtension = Host.split('.');
0273 |
var SupportedExtension = true;
0274 |
j = 0;
0275 |
for (i=0; i<A_OgameExtension.length;i++) {
0276 |
if (A_OgameExtension[i] == 'ogame') {
0277 |
j = i+1;
0278 |
}
0279 |
else if (j > 0) {
0280 |
OgameExtension += '.'+A_OgameExtension[i];
0281 |
}
0282 |
}
0283 |
if (OgameExtension == '.org') {
0284 |
Language = 0;
0285 |
}
0286 |
else if (OgameExtension == '.fr') {
0287 |
Language = 1;
0288 |
}
0289 |
else if (OgameExtension == '.it') {
0290 |
Language = 2;
0291 |
}
0292 |
else if (OgameExtension == '.lt') {
0293 |
Language = 3;
0294 |
}
0295 |
else if (OgameExtension == '.com.es') {
0296 |
Language = 5;
0297 |
}
0298 |
else if (OgameExtension == '.com.tr') {
0299 |
Language = 4;
0300 |
}
0301 |
else {
0302 |
Language = 0;
0303 |
SupportedExtension = false;
0304 |
}
0305 |
0306 |
// Modif proxy
0307 |
if (Host == "") {
0308 |
Language = 1;
0309 |
SupportedExtension = true;
0310 |
}
0311 |
0312 |
// Texte
0313 |
// For accented character, use octal code to replace it, use this link (http://www.vbc3.com/script/diacritics.html)
0314 |
var A_Language = new Array();
0315 |
if (Language == 5) { // ESPAŅOL
0316 |
// Insert your translation here
0317 |
// For accented character, use octal code to replace it, use this link (http://www.vbc3.com/script/diacritics.html)
0318 |
i = 0;
0319 |
A_Language[i] = 'Planeta'; i++;
0320 |
A_Language[i] = 'Luna'; i++;
0321 |
A_Language[i] = 'Metal'; var C_Metal=i; i++;
0322 |
A_Language[i] = 'Cristal'; var C_Crystal=i; i++;
0323 |
A_Language[i] = 'Deuterio'; var C_Deuterium=i; i++;
0324 |
A_Language[i] = 'Energia'; var C_Energy=i; i++;
0325 |
A_Language[i] = 'Materia Oscura'; var C_DarkMatter=i; i++;
0326 |
A_Language[i] = 'Empire'; var C_Empire=i; i++;
0327 |
A_Language[i] = 'Di\341metro'; var C_Diameter=i; i++;
0328 |
A_Language[i] = 'Temperatura'; var C_Temperature=i; i++;
0329 |
A_Language[i] = 'Suma'; var C_Total=i; i++;
0330 |
A_Language[i] = 'Recursos'; var C_Resources=i; i++;
0331 |
A_Language[i] = 'Actualizar'; var C_Update=i; i++;
0332 |
A_Language[i] = 'Si'; var C_Yes=i; i++;
0333 |
A_Language[i] = 'No'; var C_No=i; i++;
0334 |
A_Language[i] = 'Mostrar'; var C_Show=i; i++;
0335 |
A_Language[i] = 'Ocultar'; var C_Hide=i; i++;
0336 |
// Required text for analysis, include spaces, must be exact
0337 |
A_Language[i] = 'Producci\363n de recursos en'; var C_ResourcesTableHeader=i; i++; // Beginning of the first row from the resources table (resources page)
0338 |
A_Language[i] = 'Requisitos'; var C_Require=i; i++; // First word of the right cell in tree technology table
0339 |
A_Language[i] = 'Factor de producci\363n:'; var C_ProductionRate=i; i++; // Text before production rate number in resources page
0340 |
// ValidateBuilding
0341 |
A_Language[i] = 'Insuficientes n\372mero de campos libres'; var C_NotEnoughFreeField=i; i++;
0342 |
A_Language[i] = 'La Base lunar no se esta construyendo'; var C_LunarBaseNotBuilt=i; i++;
0343 |
A_Language[i] = 'No disponible en planta'; var C_NotOnPlanet=i; i++;
0344 |
A_Language[i] = 'No disponible en la luna'; var C_NotOnMoon=i; i++;
0345 |
// AddLink
0346 |
A_Language[i] = 'Key words :\n\nSome part can be replaced keywords.\n\n'+
0347 |
'[session] To get the id of the current session\n'+
0348 |
'[host] To get the domain of the ogame universe\n'+
0349 |
'[Planet name] To get the id of one of your planets\n\n'+
0350 |
'Ex: Creation of a link to the \'overview\' page of the planet named \253Homeworld\273 :\n'+
0351 |
'http://[host]/game/index.php?page=overview&session=[session]&cp=[Homeworld]\n\n'+
0352 |
'Become (for universe 10) :\n'+
0353 |
'http://uni10.ogame.org/game/index.php?page=overview&session=2943046dc47f&cp=34317957'; var C_KeyWordsInformations=i; i++;
0354 |
// SaveParameter
0355 |
A_Language[i] = 'Hay un error en el valor de la transparencia.\nEl valor debe de ser entre 1 and 100'; var C_TransparencyError=i; i++;
0356 |
A_Language[i] = 'El valor de la fila no es correcta.\nEl valor debe de ser entre 1 y '; var C_EmpireRowError=i; i++;
0357 |
A_Language[i] = 'El nombre del enlace hacia el menu imperio debe contener al menos un caracter'; var C_EmpireTxtError=i; i++;
0358 |
A_Language[i] = 'El tama\361o de los iconos de la Vista Empire debe de ser superior a 1 pixel.'; var C_EmpireSizeIconError=i; i++;
0359 |
A_Language[i] = 'El enlace '; var C_LinkPositionError1=i; i++;
0360 |
A_Language[i] = 'No se puede guardar.\nVerique el nombre, enlace y el n\372mero de fila.\nEl vinculo de la fila debe de ser entre 1 y '; var C_LinkPositionError2=i; i++;
0361 |
A_Language[i] = 'Informaci\363n ha sido grabada. \nLa pagina no se actualizara.'; var C_SaveParameterError=i; i++;
0362 |
// ShowHideTable
0363 |
A_Language[i] = 'Ocultar Informaci\363n'; var C_RollUp=i; i++;
0364 |
A_Language[i] = 'Mostrar Informaci\363n'; var C_Unfold=i; i++;
0365 |
// Options : General parameters
0366 |
A_Language[i] = 'Parametros Generales'; var C_MainOption=i; i++;
0367 |
A_Language[i] = 'Mostrar los miles con k'; var C_ShowInKilo=i; i++;
0368 |
A_Language[i] = 'Show seconds for the upper update at 24h'; var C_ShowSecondForUpperUpdateTimeInDay=i; i++;
0369 |
A_Language[i] = 'Borrar enlace \'Casino de los Oficiales\''; var C_DeleteOfficerLink=i; i++;
0370 |
A_Language[i] = 'Borrar enlace \'Mercader\''; var C_DeleteTraderLink=i; i++;
0371 |
A_Language[i] = 'Posici\363n'; var C_Coordinates=i; i++;
0372 |
A_Language[i] = 'Nombre'; var C_Name=i; i++;
0373 |
A_Language[i] = 'Estatus'; var C_Status=i; i++;
0374 |
A_Language[i] = 'Puntos'; var C_Points=i; i++;
0375 |
A_Language[i] = 'Membership'; var C_MemberShip=i; i++;
0376 |
A_Language[i] = 'Enlinea'; var C_Online=i; i++;
0377 |
A_Language[i] = 'Ordenar lista de Miembros de la Alianza'; var C_SortMember=i; i++;
0378 |
A_Language[i] = 'Ascendente'; var C_Increasing=i; i++;
0379 |
A_Language[i] = 'Descendente'; var C_Lessening=i; i++;
0380 |
A_Language[i] = 'Orden de la lista de Miembros de la Alianza'; var C_SortOrder=i;i++;
0381 |
A_Language[i] = 'Agregar Ayuda a todos los enlaces'; var C_AddToolTip=i; i++;
0382 |
A_Language[i] = 'Mostrar un mensaje que le pide que actualice la pagina de recursos en caso de modificaci\363n de un nuevo edificio que fue construido'; var C_ShowRequestToUpdateResourcesPage=i; i++;
0383 |
A_Language[i] = 'Mostrar un enlace a todas las paginas de actualizaci\363n automatica.'; var C_ShowAutoUpdate=i; i++;
0384 |
A_Language[i] = 'Utilizar un tiempo al azar para actualizar las paginas de forma automatica (entre 2 y 10s)'; var C_UseRandomUpdateTime=i; i++;
0385 |
A_Language[i] = 'Mostrar cuadro en la parte inferior para actualizar el Ogame Transfer'; var C_AddImageVersion=i; i++;
0386 |
A_Language[i] = 'Mostrar los mensajes de error (depuraci\363n)'; var C_Debug=i; i++;
0387 |
// Options : Display options
0388 |
A_Language[i] = 'Opciones de Visualizaci\363n'; var C_ScreenOption=i; i++;
0389 |
A_Language[i] = 'Mostrar la lista desplegable de los planetas'; var C_ShowHeaderPlanetList=i; i++;
0390 |
A_Language[i] = 'Mostrar la tabla de los recursos por defecto'; var C_ShowHeaderResourcesList=i; i++;
0391 |
A_Language[i] = 'A\361ade el total de recursos a la tabla de los recursos por defecto'; var C_AddResourcesTotal=i; i++;
0392 |
A_Language[i] = 'Activar la posibilidad de cambiar la posici\363n del encabezado (la lista desplegable de los planetas)'; var C_ChangeHeaderPosition=i; i++;
0393 |
A_Language[i] = 'Posici\363n de la cabecera (en el css)'; var C_HeaderPosition=i; i++;
0394 |
A_Language[i] = 'To be sure that your position is taken in consideration, you can add \253!important\273 after the position.'; var C_PositionInformations=i; i++;
0395 |
A_Language[i] = 'Activar la posibilidad de cambiar la posici\363n del encabezado.'; var C_ChangeContentPosition=i; i++;
0396 |
A_Language[i] = 'Posici\363n de la cabecera (en css)'; var C_ContentPosition=i; i++;
0397 |
A_Language[i] = 'Agregar codigo CSS en todas las paginas'; var C_AddCssCode=i; i++;
0398 |
A_Language[i] = 'Borrar codigo CSS'; var C_RemoveCssCode=i; i++;
0399 |
A_Language[i] = 'Agregar codigo JavaScript en todas la paginas'; var C_AddJSCode=i; i++;
0400 |
A_Language[i] = 'Borrar codigo JavaScript code'; var C_RemoveJSCode=i; i++;
0401 |
A_Language[i] = 'Escribe tu codigo aqui'; var C_WriteCode=i; i++;
0402 |
// Options : Resources table
0403 |
A_Language[i] = 'Tabla de Recursos'; var C_ResourcesTableOption=i; i++;
0404 |
A_Language[i] = 'Mostrar los recursos de la tabla'; var C_ShowHeaderResourcesTable=i; i++;
0405 |
A_Language[i] = 'Mostrar el nombre del Planeta'; var C_ShowPlanetName=i; i++;
0406 |
A_Language[i] = 'Mostrar las cordenas del Planeta'; var C_ShowCoordinates=i; i++;
0407 |
A_Language[i] = 'A\361adir la columna total de los recursos'; var C_ShowTotal=i; i++;
0408 |
A_Language[i] = 'Mostrar columna de la materia oscura'; var C_ShowDarkMatter=i; i++;
0409 |
A_Language[i] = 'Mostrar el tiempo transcurrido desde la ultima actualizaci\363n'; var C_ShowTimeUpdate=i; i++;
0410 |
A_Language[i] = 'Mostrar unicamente los recursos de sesion activa'; var C_ShowResourcesOnlyActiveSession=i; i++
0411 |
A_Language[i] = 'Calcular los recursos en tiempo real'; var C_RealTimeResources=i; i++;
0412 |
A_Language[i] = 'Intervalo de tiempo entre cada calculo'; var C_RealTimeResourcesDelay=i; i++;
0413 |
A_Language[i] = 'Estilo del encabezado del actual planeta (en css)'; var C_HeaderSelectedPlanetStyle=i; i++;
0414 |
A_Language[i] = 'Transparencia de las celdas de los recursos (1 a 100)'; var C_Transparency=i; i++;
0415 |
A_Language[i] = 'Color correspondiente al tiempo transcurrido (en segundos) (el color se utilizara cuando sobrepase los segundos, si es inferior s\363lo llena el tiempo)'; var C_UpdateTimeColor=i; i++;
0416 |
A_Language[i] = 'Y rojo, si el tiempo de actualizaci\363n es superior.'; var C_UpdateTimeRed=i; i++;
0417 |
A_Language[i] = 'Ordenar Planetas'; var C_PlanetOrder=i; i++;
0418 |
A_Language[i] = 'Elige un planeta y utilizar las flechas para cambiar su posici\363n'; var C_PlanetOrderDescription=i; i++;
0419 |
// Options : Empire
0420 |
A_Language[i] = 'Mostrar el enlace Empire'; var C_ShowEmpire=i; i++;
0421 |
A_Language[i] = 'Nombre del enlace Empire'; var C_EmpireLinkName=i; i++;
0422 |
A_Language[i] = 'N\372mero de fila en el menu de ogame (Posici\363n)'; var C_EmpireMenuRow=i; i++;
0423 |
A_Language[i] = 'Tama\361o en pixeles de los planetas en miniatura'; var C_EmpireIconSize=i; i++;
0424 |
A_Language[i] = 'Ocultar la tabla de recursos por defecto'; var C_HideDefaultResourcesTable=i; i++;
0425 |
A_Language[i] = 'Fuerza la pantalla de la tabla de los recursos generados.'; var C_ForceDisplayHeaderResourcesTableWithEmpire=i; i++;
0426 |
// Options : Transfer
0427 |
A_Language[i] = 'Transportar'; var C_Transfer=i; i++;
0428 |
A_Language[i] = 'Utilizar Resultado de los recursos del calculo en tiempo real'; var C_UseRealTimeResources=i; i++;
0429 |
A_Language[i] = 'Fuerza de la pantalla de los recursos calculados en tiempo real (importante el uso de la CPU)'; var C_ForceResourcesTransferTableUpdate=i; i++;
0430 |
A_Language[i] = 'Mostrar un formulario si la transferencia est\341 en progreso'; var C_ShowTransferTableIfActiveTransfer=i; i++;
0431 |
A_Language[i] = 'Velocidad promedio de las naves'; var C_TransferRatioSpeed=i; i++;
0432 |
// Options : Additional links
0433 |
A_Language[i] = 'Enlace'; var C_LinkOption=i; i++;
0434 |
A_Language[i] = 'Nombre del enlace'; var C_LinkName=i; i++;
0435 |
A_Language[i] = 'Direcci\363n del enlace'; var C_LinkUrl=i; i++;
0436 |
A_Language[i] = 'El n\372mero de fila en el men\372'; var C_LinkPosition=i; i++;
0437 |
A_Language[i] = 'Abre el enlace en una nueva ventana'; var C_LinkNewWindow=i; i++;
0438 |
A_Language[i] = 'Texto a mostrar cuando se pase el mouse arriba del enlace'; var C_LinkTitle=i; i++;
0439 |
A_Language[i] = 'Agregar Enlace'; var C_AddLink=i; i++;
0440 |
A_Language[i] = 'Enlace n\260'; var C_LinkNumber=i; i++;
0441 |
A_Language[i] = 'Borrar'; var C_Delete=i; i++;
0442 |
// Options
0443 |
A_Language[i] = 'Guardar Cambios'; var C_Save=i; i++;
0444 |
A_Language[i] = 'Panel de Control'; var C_ControlPanel=i; i++;
0445 |
// Automatic update
0446 |
A_Language[i] = 'Empezar Actualizar'; var C_StartUpdate=i; i++;
0447 |
A_Language[i] = 'Detener Actualizar'; var C_StopUpdate=i; i++;
0448 |
A_Language[i] = 'Detener actualizar automaticamente'; var C_UpdateStopInformations=i; i++;
0449 |
A_Language[i] = 'Actualiza todas las paginas en Automatico'; var C_UpdateInformations=i; i++;
0450 |
// Resources table
0451 |
A_Language[i] = 'Siguiente planeta'; var C_NextPlanet=i; i++;
0452 |
A_Language[i] = 'Anterior planeta'; var C_PreviousPlanet=i; i++;
0453 |
A_Language[i] = 'Actualiza la pagina actual en todos los planetas'; var C_UpdatePages=i; i++;
0454 |
// Empire
0455 |
A_Language[i] = 'Tipo'; var C_Type=i; i++;
0456 |
A_Language[i] = 'N\372mero de Campos'; var C_FieldNumber=i; i++;
0457 |
A_Language[i] = '/'; var C_To=i; i++;
0458 |
A_Language[i] = 'Aplicar'; var C_Apply=i; i++;
0459 |
A_Language[i] = 'Imagen no grabada'; var C_ImageNotSaved=i; i++;
0460 |
A_Language[i] = 'Informaci\363n Principal'; var C_MainInformations=i; i++;
0461 |
A_Language[i] = 'Producci\363n por Hora'; var C_HourProduction=i; i++;
0462 |
A_Language[i] = 'Producci\363n por D\355a'; var C_DayProduction=i; i++;
0463 |
A_Language[i] = 'Edificios'; var C_BuildingsTxt=i; i++;
0464 |
A_Language[i] = 'Defensas'; var C_DefensesTxt=i; i++;
0465 |
A_Language[i] = 'Investigaci\363n'; var C_ResearchTxt=i; i++;
0466 |
A_Language[i] = 'Flota'; var C_FleetsTxt=i; i++;
0467 |
A_Language[i] = 'Lista'; var C_List=i; i++;
0468 |
A_Language[i] = 'Naves y defensas bajo construci\363n'; var C_FleetsDefensesUC=i; i++;
0469 |
A_Language[i] = 'Ir a Edificios'; var C_ToBuildings=i; i++;
0470 |
A_Language[i] = 'Ir a Investigaciones'; var C_ToResearch=i; i++;
0471 |
A_Language[i] = 'Ir a Defensas'; var C_ToDefenses=i; i++;
0472 |
A_Language[i] = 'Ir a Hangar'; var C_ToFleets=i; i++;
0473 |
A_Language[i] = 'Energia proporcionada por los satelites solares.'; var C_Ship212Production=i; i++;
0474 |
A_Language[i] = 'N\372mero de satelites solar necesarios'; var C_Ship212NecessaryNumber=i; i++;
0475 |
A_Language[i] = 'Construcci\363n disponible'; var C_ConstructionAvailable=i; i++;
0476 |
A_Language[i] = 'Con recursos del planeta'; var C_WithPlanetResources=i; i++;
0477 |
A_Language[i] = 'Con recursos de todos los planetas'; var C_WithAllPlanetsResources=i; i++;
0478 |
A_Language[i] = 'Hay otra construcci\363n en progreso en este planeta'; var C_OtherBuildingsInConstruction=i; i++;
0479 |
A_Language[i] = 'Hay Otra investigaci\363n en desarrollo en el planeta'; var C_OtherResearchInDevelopment=i; i++;
0480 |
A_Language[i] = 'Costo total de los edificios'; var C_TotalBuildingsCost=i; i++;
0481 |
A_Language[i] = 'Nivel de Costo'; var C_LevelCost1=i; i++;
0482 |
A_Language[i] = ' requiere'; var C_LevelCost2=i; i++;
0483 |
A_Language[i] = 'Cancelar edificio'; var C_StopBuildings=i; i++;
0484 |
A_Language[i] = 'Cancelar investigaci\363n'; var C_StopResearch=i; i++;
0485 |
A_Language[i] = 'Empezar Construcci\363n'; var C_LaunchBuildings=i; i++;
0486 |
A_Language[i] = 'Empezar Investigaci\363n'; var C_LaunchResearch=i; i++;
0487 |
A_Language[i] = 'Build defense'; var C_BuildDefenses=i; i++;
0488 |
A_Language[i] = 'Build ship'; var C_BuildFleets=i; i++;
0489 |
A_Language[i] = 'Tiempo para su Producci\363n'; var C_BuildingTime=i; i++;
0490 |
// Empire : Export
0491 |
A_Language[i] = 'Exportar'; var C_Export=i; i++;
0492 |
A_Language[i] = 'Generador de opciones'; var C_GeneratorOptions=i; i++;
0493 |
A_Language[i] = 'Centrado'; var C_Center=i; i++;
0494 |
A_Language[i] = 'Texto en color'; var C_TextColored=i; i++;
0495 |
A_Language[i] = 'No especial caracter'; var C_NoSpecialCharacter=i; i++;
0496 |
A_Language[i] = 'Tabla'; var C_LayoutInTable=i; i++;
0497 |
A_Language[i] = 'Centrar texto en la tabla'; var C_CenteredTextInTable=i; i++;
0498 |
A_Language[i] = 'Cambiar el tama\361o del texto en la tabla'; var C_ResizeTextInTable=i; i++;
0499 |
A_Language[i] = 'Generar'; var C_Generate=i; i++;
0500 |
A_Language[i] = 'Caracteres'; var C_Characters=i; i++;
0501 |
// Transfer
0502 |
A_Language[i] = 'Transportar Recursos'; var C_TransferResources=i; i++;
0503 |
A_Language[i] = 'Hay algunos recursos que pueden transportarse.'; var C_NoResources=i; i++;
0504 |
A_Language[i] = 'La Transferencia es impossibile. Usted no tiene suficiente de Naves en el planeta.'; var C_NotEnoughShip1=i; i++;
0505 |
A_Language[i] = 'Usted debe revisar todas las paginas para actualizar el n\372mero de flotas.'; var C_NotEnoughShip2=i; i++;
0506 |
A_Language[i] = 'Destino'; var C_Destination=i; i++;
0507 |
A_Language[i] = 'Para enviar'; var C_ToTransfer=i; i++;
0508 |
A_Language[i] = 'Invertir seleci\363n'; var C_InvertSelection=i; i++;
0509 |
A_Language[i] = 'Enviado'; var C_Transfered=i; i++;
0510 |
A_Language[i] = 'Velocidad'; var C_Speed=i; i++;
0511 |
A_Language[i] = 'Reciclador'; var C_NeededRecycler=i; i++;
0512 |
A_Language[i] = 'Estatus de transferencia'; var C_TransferState=i; i++;
0513 |
A_Language[i] = 'Nave Grande'; var C_LargeCargoShip=i; i++; // Abbreviation of Large Cargo Ship
0514 |
A_Language[i] = 'Nave Peque\361a'; var C_SmallCargoShip=i; i++; // Abbreviation of Small Cargo Ship
0515 |
A_Language[i] = 'No se puede transportar recursos hacia el planeta destino.'; var C_NoTransferFromDestinationPlanet=i; i++;
0516 |
A_Language[i] = 'No hay Recicladores.'; var C_NoRecycler=i; i++;
0517 |
A_Language[i] = 'No hay Nave Grande de carga.'; var C_NotEnoughLargeCargoShip=i; i++;
0518 |
A_Language[i] = 'No hay Nave Peque\361a de carga.'; var C_NotEnoughSmallCargoShip=i; i++;
0519 |
A_Language[i] = 'Resources had already sent from this planet.'; var C_AlreadyTransfered=i; i++;
0520 |
A_Language[i] = 'This planet hadn\'t been selected for the transfer.'; var C_PlanetNotSelected=i; i++;
0521 |
A_Language[i] = 'No transfer in progress.'; var C_NoTransfer=i; i++;
0522 |
A_Language[i] = 'Seleciona Colonia'; var C_ColonyToBeUsed=i; i++;
0523 |
A_Language[i] = 'Otro Destino'; var C_OtherDestination=i; i++;
0524 |
A_Language[i] = 'Llena los recursos a Transportar'; var C_NeededResources=i; i++;
0525 |
A_Language[i] = 'Restan'; var C_Rest=i; i++;
0526 |
A_Language[i] = 'Metal para enviar'; var C_MetalToBeSent=i; i++;
0527 |
A_Language[i] = 'Cristal para enviar'; var C_CrystalToBeSent=i; i++;
0528 |
A_Language[i] = 'Deuterio para enviar'; var C_DeuteriumToBeSent=i; i++;
0529 |
A_Language[i] = 'Tiempo de Vuelo'; var C_FlightTime=i; i++;
0530 |
A_Language[i] = 'Velocidad'; var C_SendingSpeed=i; i++;
0531 |
A_Language[i] = 'Consumo de combustible'; var C_DeuteriumConsumption=i; i++;
0532 |
A_Language[i] = 'Nave Grande o Peque\361a para ser enviada'; var C_TransportShipNumber=i; i++;
0533 |
A_Language[i] = 'Opciones de c\341lculo'; var C_TransferCalcOption=i; i++;
0534 |
A_Language[i] = 'Modo de c\341culo'; var C_CalcMode=i; i++;
0535 |
A_Language[i] = 'Transportar recursos de los planetas con el m\341ximo de recursos'; var C_SameRest=i; i++;
0536 |
A_Language[i] = 'Transportar la misma cantidad de cada planeta'; var C_SameQuantity=i; i++;
0537 |
A_Language[i] = 'Utilizar todos los recursos en el planeta de destino'; var C_UseTotalResourcesDestinationPlanet=i; i++;
0538 |
A_Language[i] = 'El tiempo de vuelo lo m\341s cercano posible'; var C_SameTime=i; i++;
0539 |
A_Language[i] = 'Lo m\341s rapido posible'; var C_Fastest=i; i++;
0540 |
A_Language[i] = 'Fecha de llegada'; var C_ArrivalDate=i; i++;
0541 |
A_Language[i] = 'A\361o'; var C_Year=i; i++;
0542 |
A_Language[i] = 'Mes'; var C_Month=i; i++;
0543 |
A_Language[i] = 'D\355a'; var C_Day=i; i++;
0544 |
A_Language[i] = 'Hora'; var C_Hour=i; i++;
0545 |
A_Language[i] = 'Minuto'; var C_Minute=i; i++;
0546 |
A_Language[i] = 'D\355a(s)'; var C_Days=i; i++;
0547 |
A_Language[i] = 'Hora(s)'; var C_Hours=i; i++;
0548 |
A_Language[i] = 'Minuto(s)'; var C_Minutes=i; i++;
0549 |
A_Language[i] = 'd'; var C_DayAbbreviation=i; i++;
0550 |
A_Language[i] = 'h'; var C_HourAbbreviation=i; i++;
0551 |
A_Language[i] = 'm'; var C_MinuteAbbreviation=i; i++;
0552 |
A_Language[i] = 's'; var C_SecondAbbreviation=i; i++;
0553 |
A_Language[i] = 'A\361adir un reciclador si es necesario para ajustar el tiempo de vuelo'; var C_AddRecycler=i; i++;
0554 |
A_Language[i] = 'Cargo'; var C_TransportShip=i; i++;
0555 |
A_Language[i] = 'Enviar'; var C_SaveTransfer=i; i++;
0556 |
A_Language[i] = 'Cancelar Env\355o'; var C_CancelTransfer=i; i++;
0557 |
A_Language[i] = 'Llena Naves de cargos'; var C_FillShip=i; i++;
0558 |
A_Language[i] = 'Planets unsaved had been found. You should revisit them.'; var C_UnsavedPlanets=i; i++;
0559 |
A_Language[i] = 'Llena posici\363n y velocidad'; var C_FillCoordinatesAndSpeed=i; i++;
0560 |
A_Language[i] = 'Llena recursos'; var C_FillResources=i; i++;
0561 |
// Other
0562 |
A_Language[i] = 'Tiempo de Ejecuci\363n:'; var C_RunTime=i; i++;
0563 |
A_Language[i] = 'A buildings which modify production factor had been found.\n\nDo you want to update the resources page now?'; var C_ResourcesBuildingsUC=i; i++;
0564 |
// Welcome message
0565 |
A_Language[i] = 'Bienvenido a la nueva version de \253'+C_ScriptName+'\273 (version: '+C_ScriptVersion+', build: '+C_ScriptBuild+')\nItalian traducion : by Fiox\nThanks to all beta tester.\n\n'+
0566 |
'For this version, most of the code were rewritten, it is thus advised to launch an automatic updating of pages from your account following this message.\n\n'+
0567 |
'Just after your click on OK, the script will load the tree technology page to get the name of each construction.\n\n'+
0568 |
'To see the changes about this version, go to the section named \253DESCRIPTION DES MISES A JOUR\273 in the script (Only in french).'; var C_NewVersion=i; i++;
0569 |
A_Language[i] = 'Welcome to the new version of \253'+C_ScriptName+'\273 (version: '+C_ScriptVersion+', build: '+C_ScriptBuild+')\nItalian translation : by Fiox\nThanks to all beta tester.\n\n'+
0570 |
'To see the changes about this version, go to the section named \253DESCRIPTION DES MISES A JOUR\273 in the script (Only in french).'; var C_NewBuild=i; i++;
0571 |
}
0572 |
0573 |
0574 |
/* RECUPERATION DES DONNEES PRINCIPALES D'OGAME
0575 |
-------------------------------------------------- */
0576 |
0577 |
var Divs = document.getElementsByTagName('div');
0578 |
for (i = 0; i < Divs.length; i++) {
0579 |
if (Divs[i].id == 'header_top') {
0580 |
var HeaderDiv = Divs[i];
0581 |
}
0582 |
else if (Divs[i].id == 'menu') {
0583 |
var MenuDiv = Divs[i];
0584 |
}
0585 |
else if (Divs[i].id == 'content') {
0586 |
var ContentDiv = Divs[i];
0587 |
}
0588 |
}
0589 |
0590 |
// Recuperation de l'adresse du skin
0591 |
var SkinUrl = '';
0592 |
var OgameCss = document.getElementsByTagName('link');
0593 |
if (OgameCss) {
0594 |
for (i = 0; i < OgameCss.length; i++) {
0595 |
if (OgameCss[i].href.match('css/') == null) {
0596 |
SkinUrl = OgameCss[i].href.substr(0, OgameCss[i].href.lastIndexOf('/', OgameCss[i].href.length-1)+1);
0597 |
}
0598 |
}
0599 |
}
0600 |
0601 |
// Adresse de base de la page
0602 |
var BaseUrl = document.URL.match(/([^\?]+)/);
0603 |
BaseUrl = (BaseUrl?BaseUrl[1]:'');
0604 |
0605 |
// Page ogame en cours
0606 |
var OgamePage = document.URL.match(/page=([^\&]+)/);
0607 |
OgamePage = (OgamePage?OgamePage[1]:'');
0608 |
var OgameMode = document.URL.match(/mode=([^\&]+)/);
0609 |
OgameMode = (OgameMode?OgameMode[1]:'');
0610 |
0611 |
// Presence de l'entete
0612 |
var OgameHeader = true;
0613 |
if (document.URL.match(/no_header=([^\&]+)/)) {
0614 |
OgameHeader = ((document.URL.match(/no_header=([^\&]+)/)[1] == '1') ? false : true);
0615 |
}
0616 |
0617 |
var PlanetSelect = 0, PlanetSelectedIndex, Session = '';
0618 |
if ((OgameHeader == true) && (HeaderDiv)) {
0619 |
PlanetSelect = HeaderDiv.getElementsByTagName('select');
0620 |
PlanetSelect = PlanetSelect[0].options;
0621 |
Session = PlanetSelect[0].value.match(/session=([^\&]+)/)[1]; // Identifiant de la session
0622 |
0623 |
// Recuperation du nom, de l'identifiant et du lien de chaque planete et de la planete active
0624 |
for (i = 0; i < PlanetSelect.length; i++) {
0625 |
A_Planet[i] = new P_Planet();
0626 |
var Temp = PlanetSelect[i].firstChild.nodeValue.match(/([a-zA-Z0-9 \.\-\_\(\)]+) \[([0-9]{1,2}):([0-9]{1,3}):([0-9]{1,2})\]/);
0627 |
A_Planet[i].Id = PlanetSelect[i].value.match(/cp=([0-9]+)/)[1];
0628 |
A_Planet[i].Name = Temp[1];
0629 |
A_Planet[i].Galaxy = Temp[2];
0630 |
A_Planet[i].System = Temp[3];
0631 |
A_Planet[i].Planet = Temp[4];
0632 |
A_Planet[i].Url = PlanetSelect[i].value;
0633 |
if (PlanetSelect[i].selected == true) {
0634 |
PlanetSelectedIndex = i;
0635 |
A_Planet[i].Session = Session;
0636 |
}
0637 |
}
0638 |
}
0639 |
else if (MenuDiv) { // Si la page n'a pas d'entete
0640 |
// Recuperation de l'adresse du lien 'Ressources'
0641 |
var SearchRow = 0;
0642 |
var Table = MenuDiv.getElementsByTagName('table')[0];
0643 |
for (i = 0; i < Table.rows.length; i++) {
0644 |
var Cell = Table.rows[i].cells[0];
0645 |
var Page = Cell.innerHTML.match(/page=([^\&]+)/);
0646 |
if (Page) {
0647 |
if (Page[1] == 'suche') {
0648 |
SearchRow = i;
0649 |
break;
0650 |
}
0651 |
}
0652 |
}
0653 |
if (Table.rows[SearchRow].cells[0].innerHTML.match(/\<a/g)) {
0654 |
var Href = Table.rows[SearchRow].cells[0].getElementsByTagName('a')[0].href;
0655 |
if (Href.match(/session=([a-zA-Z0-9]+)/)) {
0656 |
Session = Href.match(/session=([a-zA-Z0-9]+)/)[1];
0657 |
}
0658 |
}
0659 |
}
0660 |
0661 |
0662 |
0663 |
0664 |
0665 |
/* CHARGEMENT DES IDENTIFIANTS ET COUTS DE CONSTRUCTION ET DES NOMS DES CONSTRUCTIONS
0666 |
-------------------------------------------------- */
0667 |
0668 |
// Declaration des identifiants des differentes constructions (batiment, defense, technologie, flotte)
0669 |
var A_Construction = new Array();
0670 |
// Batiment
0671 |
A_Construction[C_Buildings] = new Array(18);
0672 |
A_Construction[C_Buildings][0] = new P_Construction(1,0,0,0,0,C_Planet);
0673 |
A_Construction[C_Buildings][1] = new P_Construction(2,0,0,0,0,C_Planet);
0674 |
A_Construction[C_Buildings][2] = new P_Construction(3,0,0,0,0,C_Planet);
0675 |
A_Construction[C_Buildings][3] = new P_Construction(4,0,0,0,0,C_Planet);
0676 |
A_Construction[C_Buildings][4] = new P_Construction(12,0,0,0,0,C_Planet,C_Buildings,2,5,C_Research,5,3);
0677 |
A_Construction[C_Buildings][5] = new P_Construction(14,400,120,200,0,C_All);
0678 |
A_Construction[C_Buildings][6] = new P_Construction(15,1000000,500000,100000,0,C_Planet,C_Buildings,5,10,C_Research,1,10);
0679 |
A_Construction[C_Buildings][7] = new P_Construction(21,400,200,100,0,C_All,C_Buildings,5,2);
0680 |
A_Construction[C_Buildings][8] = new P_Construction(22,2000,0,0,0,C_All);
0681 |
A_Construction[C_Buildings][9] = new P_Construction(23,2000,1000,0,0,C_All);
0682 |
A_Construction[C_Buildings][10] = new P_Construction(24,2000,2000,0,0,C_All);
0683 |
A_Construction[C_Buildings][11] = new P_Construction(31,200,400,200,0,C_Planet);
0684 |
A_Construction[C_Buildings][12] = new P_Construction(33,0,50000,100000,1000,C_Planet,C_Buildings,6,1,C_Research,5,12);
0685 |
A_Construction[C_Buildings][13] = new P_Construction(34,20000,40000,0,0,C_Planet);
0686 |
A_Construction[C_Buildings][14] = new P_Construction(44,20000,20000,1000,0,C_Planet);
0687 |
A_Construction[C_Buildings][15] = new P_Construction(41,20000,40000,20000,0,C_Moon);
0688 |
A_Construction[C_Buildings][16] = new P_Construction(42,20000,40000,20000,0,C_Moon);
0689 |
A_Construction[C_Buildings][17] = new P_Construction(43,2000000,4000000,2000000,0,C_Moon,C_Research,6,7);
0690 |
// Technologie
0691 |
A_Construction[C_Research] = new Array(16);
0692 |
A_Construction[C_Research][0] = new P_Construction(106,200,1000,200,0,C_Planet,C_Buildings,11,3);
0693 |
A_Construction[C_Research][1] = new P_Construction(108,0,400,600,0,C_Planet,C_Buildings,11,1);
0694 |
A_Construction[C_Research][2] = new P_Construction(109,800,200,0,0,C_Planet,C_Buildings,11,4);
0695 |
A_Construction[C_Research][3] = new P_Construction(110,200,600,0,0,C_Planet,C_Buildings,11,6,C_Research,5,3);
0696 |
A_Construction[C_Research][4] = new P_Construction(111,1000,0,0,0,C_Planet,C_Buildings,11,2);
0697 |
A_Construction[C_Research][5] = new P_Construction(113,0,800,400,0,C_Planet,C_Buildings,11,1);
0698 |
A_Construction[C_Research][6] = new P_Construction(114,0,4000,2000,0,C_Planet,C_Buildings,11,7,C_Research,3,5,C_Research,5,5);
0699 |
A_Construction[C_Research][7] = new P_Construction(115,400,0,600,0,C_Planet,C_Buildings,11,1,C_Research,5,1);
0700 |
A_Construction[C_Research][8] = new P_Construction(117,2000,4000,600,0,C_Planet,C_Buildings,11,2,C_Research,5,1);
0701 |
A_Construction[C_Research][9] = new P_Construction(118,10000,20000,6000,0,C_Planet,C_Buildings,11,7,C_Research,6,3);
0702 |
A_Construction[C_Research][10] = new P_Construction(120,200,100,0,0,C_Planet,C_Buildings,11,1,C_Research,5,2);
0703 |
A_Construction[C_Research][11] = new P_Construction(121,1000,300,100,0,C_Planet,C_Buildings,11,4,C_Research,10,5,C_Research,5,4);
0704 |
A_Construction[C_Research][12] = new P_Construction(122,2000,4000,1000,0,C_Planet,C_Buildings,11,4,C_Research,10,10,C_Research,5,8,C_Research,11,5);
0705 |
A_Construction[C_Research][13] = new P_Construction(123,240000,400000,160000,0,C_Planet,C_Buildings,11,10,C_Research,1,8,C_Research,6,8);
0706 |
A_Construction[C_Research][14] = new P_Construction(124,4000,8000,4000,0,C_Planet,C_Buildings,11,3,C_Research,0,4,C_Research,8,3);
0707 |
A_Construction[C_Research][15] = new P_Construction(199,0,0,0,300000,C_Planet,C_Buildings,11,12);
0708 |
// Flotte
0709 |
A_Construction[C_Fleets] = new Array(14);
0710 |
A_Construction[C_Fleets][0] = new P_Construction(202,2000,2000,0,0,C_All,C_Buildings,7,2,C_Research,7,2);
0711 |
A_Construction[C_Fleets][1] = new P_Construction(203,6000,6000,0,0,C_All,C_Buildings,7,4,C_Research,7,6);
0712 |
A_Construction[C_Fleets][2] = new P_Construction(204,3000,1000,0,0,C_All,C_Buildings,7,1,C_Research,7,1);
0713 |
A_Construction[C_Fleets][3] = new P_Construction(205,6000,4000,0,0,C_All,C_Buildings,7,3,C_Research,8,2,C_Research,4,2);
0714 |
A_Construction[C_Fleets][4] = new P_Construction(206,20000,7000,2000,0,C_All,C_Buildings,7,5,C_Research,8,4,C_Research,11,2);
0715 |
A_Construction[C_Fleets][5] = new P_Construction(207,45000,15000,0,0,C_All,C_Buildings,7,7,C_Research,9,4);
0716 |
A_Construction[C_Fleets][6] = new P_Construction(208,10000,20000,10000,0,C_All,C_Buildings,7,4,C_Research,8,3);
0717 |
A_Construction[C_Fleets][7] = new P_Construction(209,10000,6000,2000,0,C_All,C_Buildings,7,4,C_Research,7,6,C_Research,3,2);
0718 |
A_Construction[C_Fleets][8] = new P_Construction(210,0,1000,0,0,C_All,C_Buildings,7,3,C_Research,7,3,C_Research,0,2);
0719 |
A_Construction[C_Fleets][9] = new P_Construction(211,50000,25000,15000,0,C_All,C_Buildings,7,8,C_Research,8,6,C_Research,12,5);
0720 |
A_Construction[C_Fleets][10] = new P_Construction(212,0,2000,500,0,C_All,C_Buildings,7,1);
0721 |
A_Construction[C_Fleets][11] = new P_Construction(213,60000,50000,15000,0,C_All,C_Buildings,7,9,C_Research,9,6,C_Research,6,5);
0722 |
A_Construction[C_Fleets][12] = new P_Construction(214,5000000,4000000,1000000,0,C_All,C_Buildings,7,12,C_Research,9,7,C_Research,6,6,C_Research,15,1);
0723 |
A_Construction[C_Fleets][13] = new P_Construction(215,30000,40000,15000,0,C_All,C_Buildings,7,8,C_Research,9,5,C_Research,6,5,C_Research,10,12);
0724 |
// Defense
0725 |
A_Construction[C_Defenses] = new Array(10);
0726 |
A_Construction[C_Defenses][0] = new P_Construction(401,2000,0,0,0,C_All,C_Buildings,7,1);
0727 |
A_Construction[C_Defenses][1] = new P_Construction(402,1500,500,0,0,C_All,C_Buildings,7,2,C_Research,5,1,C_Research,10,3);
0728 |
A_Construction[C_Defenses][2] = new P_Construction(403,6000,2000,0,0,C_All,C_Buildings,7,4,C_Research,5,3,C_Research,10,6);
0729 |
A_Construction[C_Defenses][3] = new P_Construction(404,20000,15000,2000,0,C_All,C_Buildings,7,6,C_Research,5,6,C_Research,2,3,C_Research,3,1);
0730 |
A_Construction[C_Defenses][4] = new P_Construction(405,2000,6000,0,0,C_All,C_Buildings,7,4,C_Research,11,4);
0731 |
A_Construction[C_Defenses][5] = new P_Construction(406,50000,50000,30000,0,C_All,C_Buildings,7,8,C_Research,12,7);
0732 |
A_Construction[C_Defenses][6] = new P_Construction(407,10000,10000,0,0,C_All,C_Buildings,7,1,C_Research,3,2);
0733 |
A_Construction[C_Defenses][7] = new P_Construction(408,50000,50000,0,0,C_All,C_Buildings,7,6,C_Research,3,6);
0734 |
A_Construction[C_Defenses][8] = new P_Construction(502,8000,0,2000,0,C_All,C_Buildings,7,1,C_Buildings,14,2);
0735 |
A_Construction[C_Defenses][9] = new P_Construction(503,12500,2500,10000,0,C_All,C_Buildings,7,1,C_Buildings,14,4);
0736 |
0737 |
0738 |
0739 |
0740 |
0741 |
/* CHARGEMENT DES INFORMATIONS MEMORISEES VIA GREASEMONKEY
0742 |
-------------------------------------------------- */
0743 |
0744 |
try {
0745 |
0746 |
// Recherche de l'identifiant du compte
0747 |
Get = GM_getValue('OT_Account', '');
0748 |
var Account = 0, AccountNb = 0;
0749 |
var AccountFound = false;
0750 |
var A_AccountTmp = new Array();
0751 |
if (Get.length > 0) {
0752 |
var A_AccountTmp = Get.split(Separator);
0753 |
var A_AccountTmp2 = new Array();
0754 |
for (i = 0; i < A_AccountTmp.length; i++) {
0755 |
A_AccountTmp2 = A_AccountTmp[i].split(/\;/g);
0756 |
if (parseInt(A_AccountTmp2[0]) > 0) {
0757 |
A_Account[AccountNb] = new Array(A_AccountTmp2.length);
0758 |
for (j = 0; j < A_AccountTmp2.length; j++) {
0759 |
A_Account[AccountNb][j] = A_AccountTmp2[j];
0760 |
if (AccountFound == false) {
0761 |
if (OgamePage != 'galaxy') {
0762 |
for (k = 0; k < PlanetSelect.length; k++) {
0763 |
if (A_Planet[k].Id == A_Account[AccountNb][j]) {
0764 |
AccountFound = true;
0765 |
Account = AccountNb;
0766 |
break;
0767 |
}
0768 |
}
0769 |
}
0770 |
}
0771 |
}
0772 |
AccountNb++;
0773 |
}
0774 |
}
0775 |
}
0776 |
if (AccountFound == false) {
0777 |
if (A_Account.length > 0) {
0778 |
Account = A_Account.length;
0779 |
}
0780 |
A_Account[Account] = new Array(PlanetSelect.length);
0781 |
for (i = 0; i < PlanetSelect.length; i++) {
0782 |
A_Account[Account][i] = A_Planet[i].Id;
0783 |
}
0784 |
}
0785 |
SaveAccount();
0786 |
0787 |
// Informations de la version
0788 |
Get = GM_getValue('OT_'+Account+'_Version', '');
0789 |
var ScriptVersion = GetValue(Get, 'Version', '');
0790 |
var ScriptBuild = GetValue(Get, 'Build', '');
0791 |
0792 |
// Parametres generaux
0793 |
Get = GM_getValue('OT_'+Account+'_MainOption', '');
0794 |
var ShowInKilo = GetValue(Get, 'ShowInKilo', false);
0795 |
var ShowSecondForUpperUpdateTimeInDay = GetValue(Get, 'ShowSecondForUpperUpdateTimeInDay', false);
0796 |
var DeleteOfficerLink = GetValue(Get, 'DeleteOfficerLink', true);
0797 |
var DeleteTraderLink = GetValue(Get, 'DeleteTraderLink', true);
0798 |
var SortMember = GetValue(Get, 'SortMember', 3); // 0:Coordonnees, 1:Nom, 2:Statut, 3:Points, 4:Adhesion, 5:En ligne
0799 |
var SortOrder = GetValue(Get, 'SortOrder', 1); // 0:Croissant, 1:Decroissant
0800 |
var AddToolTip = GetValue(Get, 'AddToolTip', true);
0801 |
var ShowRequestToUpdateResourcesPage = GetValue(Get, 'ShowRequestToUpdateResourcesPage', false);
0802 |
var ShowAutoUpdate = GetValue(Get, 'ShowAutoUpdate', true);
0803 |
var UseRandomUpdateTime = GetValue(Get, 'UseRandomUpdateTime', true);
0804 |
var AddImageVersion = GetValue(Get, 'AddImageVersion', false);
0805 |
Debug = GetValue(Get, 'Debug', false);
0806 |
0807 |
// Parametres d'affichage
0808 |
Get = GM_getValue('OT_'+Account+'_ScreenOption', '');
0809 |
var ShowHeaderPlanetList = GetValue(Get, 'ShowHeaderPlanetList', false);
0810 |
var ShowHeaderResourcesList = GetValue(Get, 'ShowHeaderResourcesList', false);
0811 |
var AddResourcesTotal = GetValue(Get, 'AddResourcesTotal', false);
0812 |
var ChangeHeaderPosition = GetValue(Get, 'ChangeHeaderPosition', false);
0813 |
var HeaderPosition = GetValue(Get, 'HeaderPosition', 'left: 15% !important; top: 120px !important;');
0814 |
var ChangeContentPosition = GetValue(Get, 'ChangeContentPosition', false);
0815 |
var ContentPosition = GetValue(Get, 'ContentPosition', 'left: 100px !important;');
0816 |
var AddCssCode = GetValue(Get, 'AddCssCode', false);
0817 |
var CssCode = GM_getValue('OT_'+Account+'_CssCode', '/* '+A_Language[C_WriteCode]+' */');
0818 |
var AddJSCode = GetValue(Get, 'AddJSCode', false);
0819 |
var JSCode = GM_getValue('OT_'+Account+'_JSCode', '/* '+A_Language[C_WriteCode]+' */');
0820 |
0821 |
// Tableau des ressources
0822 |
Get = GM_getValue('OT_'+Account+'_ResourcesTableOption', '');
0823 |
var ShowHeaderResourcesTable = GetValue(Get, 'ShowHeaderResourcesTable', true);
0824 |
var ShowPlanetName = GetValue(Get, 'ShowPlanetName', true);
0825 |
var ShowCoordinates = GetValue(Get, 'ShowCoordinates', false);
0826 |
var ShowTotal = GetValue(Get, 'ShowTotal', true);
0827 |
var ShowDarkMatter = GetValue(Get, 'ShowDarkMatter', true);
0828 |
var ShowTimeUpdate = GetValue(Get, 'ShowTimeUpdate', true);
0829 |
var ShowResourcesOnlyActiveSession = GetValue(Get, 'ShowResourcesOnlyActiveSession', false);
0830 |
var RealTimeResources = GetValue(Get, 'RealTimeResources', true);
0831 |
var RealTimeResourcesDelay = GetValue(Get, 'RealTimeResourcesDelay', 5);
0832 |
RealTimeResourcesDelay = ((RealTimeResourcesDelay < 1) ? 1 : RealTimeResourcesDelay);
0833 |
var HeaderSelectedPlanetStyle = GetValue(Get, 'HeaderSelectedPlanetStyle', 'background-color: #005500; background-image: none;');
0834 |
var Transparency = GetValue(Get, 'Transparency', 80);
0835 |
var A_UpdateTimeColor = new Array();
0836 |
for (i = 0; i < 10; i++) {
0837 |
A_UpdateTimeColor[i] = GetValue(Get, 'UpdateTimeColor'+i, Math.ceil((i+1)*54340+Math.pow(2580,(1+(1+i)/10))));
0838 |
}
0839 |
var PlanetOrder = GetValue(Get, 'PlanetOrder', false);
0840 |
Get = GM_getValue('OT_'+Account+'_PlanetOrder', '');
0841 |
if ((Get != '') && (parseInt(GetField(Get,0,Separator)) < 18)) {
0842 |
Get = '';
0843 |
}
0844 |
if (Get != '') {
0845 |
A_PlanetOrder = Get.split(Separator);
0846 |
var Found = false;
0847 |
for (j = 0; j < A_PlanetOrder.length; j++) {
0848 |
for (i = 0; i < PlanetSelect.length; i++) {
0849 |
if (A_PlanetOrder[j] == A_Planet[i].Id) {
0850 |
A_PlanetOrderIndex[PlanetOrderIndex] = i;
0851 |
PlanetOrderIndex++;
0852 |
}
0853 |
}
0854 |
}
0855 |
if (A_PlanetOrderIndex.length < PlanetSelect.length) {
0856 |
for (i = 0; i < PlanetSelect.length; i++) {
0857 |
Found = false;
0858 |
for (j = 0; j < A_PlanetOrder.length; j++) {
0859 |
if (A_PlanetOrder[j] == A_Planet[i].Id) {
0860 |
Found = true;
0861 |
}
0862 |
}
0863 |
if (Found == false) {
0864 |
A_PlanetOrderIndex[PlanetOrderIndex] = i;
0865 |
PlanetOrderIndex++;
0866 |
A_PlanetOrder[A_PlanetOrder.length] = A_Planet[i].Id;
0867 |
}
0868 |
}
0869 |
}
0870 |
}
0871 |
else {
0872 |
for (i = 0; i < PlanetSelect.length; i++) {
0873 |
A_PlanetOrderIndex[i] = i;
0874 |
A_PlanetOrder[i] = A_Planet[i].Id;
0875 |
}
0876 |
}
0877 |
// Reorganisation de l'ordre des planetes
0878 |
if (PlanetOrder == true) {
0879 |
var A_Permut = new Array();
0880 |
for (i = 0; i < PlanetSelect.length; i++) {
0881 |
A_Permut[i] = new P_Planet();
0882 |
A_Permut[i].Id = A_Planet[A_PlanetOrderIndex[i]].Id;
0883 |
A_Permut[i].Name = A_Planet[A_PlanetOrderIndex[i]].Name;
0884 |
A_Permut[i].Planet = A_Planet[A_PlanetOrderIndex[i]].Planet;
0885 |
A_Permut[i].System = A_Planet[A_PlanetOrderIndex[i]].System;
0886 |
A_Permut[i].Galaxy = A_Planet[A_PlanetOrderIndex[i]].Galaxy;
0887 |
A_Permut[i].Url = A_Planet[A_PlanetOrderIndex[i]].Url;
0888 |
A_Permut[i].Session = A_Planet[A_PlanetOrderIndex[i]].Session;
0889 |
}
0890 |
for (i = 0; i < PlanetSelect.length; i++) {
0891 |
A_Planet[i].Id = A_Permut[i].Id;
0892 |
A_Planet[i].Name = A_Permut[i].Name;
0893 |
A_Planet[i].Planet = A_Permut[i].Planet;
0894 |
A_Planet[i].System = A_Permut[i].System;
0895 |
A_Planet[i].Galaxy = A_Permut[i].Galaxy;
0896 |
A_Planet[i].Url = A_Permut[i].Url;
0897 |
A_Planet[i].Session = A_Permut[i].Session;
0898 |
}
0899 |
for (i = 0; i < PlanetSelect.length; i++) {
0900 |
if (PlanetSelectedIndex == A_PlanetOrderIndex[i]) {
0901 |
PlanetSelectedIndex = i;
0902 |
break;
0903 |
}
0904 |
}
0905 |
}
0906 |
else {
0907 |
for (i = 0; i < PlanetSelect.length; i++) {
0908 |
A_PlanetOrderIndex[i] = i;
0909 |
A_PlanetOrder[i] = A_Planet[i].Id;
0910 |
}
0911 |
}
0912 |
0913 |
// Empire
0914 |
Get = GM_getValue('OT_'+Account+'_EmpireOption', '');
0915 |
var ShowEmpire = GetValue(Get, 'ShowEmpire', true);
0916 |
var EmpireMenuRow = GetValue(Get, 'EmpireMenuRow', 2);
0917 |
var EmpireLinkName = GetValue(Get, 'EmpireLinkName', A_Language[C_Empire]+' (OT)');
0918 |
var EmpireIconSize = GetValue(Get, 'EmpireIconSize', 88);
0919 |
var UseRealTimeResourcesEmpire = GetValue(Get, 'UseRealTimeResourcesEmpire', true);
0920 |
var HideDefaultResourcesTable = GetValue(Get, 'HideDefaultResourcesTable', true);
0921 |
var ForceDisplayHeaderResourcesTableWithEmpire = GetValue(Get, 'ForceDisplayHeaderResourcesTableWithEmpire', false);
0922 |
0923 |
// Transfert
0924 |
Get = GM_getValue('OT_'+Account+'_TransferOption', '');
0925 |
var UseRealTimeResources = GetValue(Get, 'UseRealTimeResources', true);
0926 |
var ForceResourcesTransferTableUpdate = GetValue(Get, 'ForceResourcesTransferTableUpdate', false);
0927 |
var ShowTransferTableIfActiveTransfer = GetValue(Get, 'ShowTransferTableIfActiveTransfer', false);
0928 |
var TransferRatioSpeed = GetValue(Get, 'TransferRatioSpeed', 1);
0929 |
0930 |
// Ajout de lien au menu
0931 |
Get = GM_getValue('OT_'+Account+'_LinkOption', '');
0932 |
var NbLink = GetValue(Get, 'NbLink', 0);
0933 |
var LinkNameArray = new Array();
0934 |
var LinkUrlArray = new Array();
0935 |
var LinkPositionArray = new Array();
0936 |
var LinkNewWindowArray = new Array();
0937 |
var LinkTitleArray = new Array();
0938 |
for (i = 0; i < NbLink; i++) {
0939 |
LinkNameArray[i] = GetValue(Get, 'LinkName'+i, '');
0940 |
LinkUrlArray[i] = GetValue(Get, 'LinkUrl'+i, '');
0941 |
LinkPositionArray[i] = GetValue(Get, 'LinkPosition'+i, 0);
0942 |
LinkNewWindowArray[i] = GetValue(Get, 'LinkNewWindow'+i, false);
0943 |
LinkTitleArray[i] = GetValue(Get, 'LinkTitle'+i, '');
0944 |
CreateLink(LinkUrlArray[i], LinkNameArray[i], LinkPositionArray[i], LinkNewWindowArray[i], LinkTitleArray[i]);
0945 |
}
0946 |
0947 |
// Options de transfert
0948 |
Get = GM_getValue('OT_'+Account+'_TransferCalcOption', '');
0949 |
var CalcMode = GetValue(Get, 'CalcMode', 0);
0950 |
var UseTotalResourcesDestinationPlanet = GetValue(Get, 'UseTotalResourcesDestinationPlanet', false);
0951 |
var SameTime = GetValue(Get, 'SameTime', true);
0952 |
var TimeToGo = GetValue(Get, 'TimeToGo', 0);
0953 |
var AddRecycler = GetValue(Get, 'AddRecycler', true);
0954 |
var ShipType = GetValue(Get, 'ShipType', 1);
0955 |
0956 |
// Affichage de la page empire
0957 |
var OgameEmpire = GM_getValue('OT_OgameEmpire', false);
0958 |
}
0959 |
catch(err) {
0960 |
ShowError(err, 'Load account id and update parameter');
0961 |
}
0962 |
0963 |
if ((OgameHeader == true) && (HeaderDiv)) {
0964 |
0965 |
try {
0966 |
0967 |
// Parametres de mise a jour automatique
0968 |
Get = GM_getValue('OT_'+Account+'_Refresh', '');
0969 |
var RefreshPlanetRest = GetValue(Get, 'RefreshPlanetRest', 0);
0970 |
var AutoUpdateRest = GetValue(Get, 'AutoUpdateRest', 0);
0971 |
0972 |
// Transfert
0973 |
Get = GM_getValue('OT_'+Account+'_Transfer', '');
0974 |
var TransferShow = GetValue(Get, 'Show', false);
0975 |
var TransferMetal = GetValue(Get, 'Metal', 0);
0976 |
var TransferCrystal = GetValue(Get, 'Crystal', 0);
0977 |
var TransferDeuterium = GetValue(Get, 'Deuterium', 0);
0978 |
var TransferState = GetValue(Get, 'State', false);
0979 |
var TransferShipType = GetValue(Get, 'ShipType', C_LargeCargoShip);
0980 |
var TransferDestinationPlanet = GetValue(Get, 'DestinationPlanet', 0);
0981 |
var TransferDestinationSystem = GetValue(Get, 'DestinationSystem', 0);
0982 |
var TransferDestinationGalaxy = GetValue(Get, 'DestinationGalaxy', 0);
0983 |
var TransferDestinationType = GetValue(Get, 'DestinationType', A_Language[C_Planet]);
0984 |
0985 |
// Variable de verification du transfert
0986 |
var TransferStateCheck = true;
0987 |
0988 |
// Nom des constructions
0989 |
var A_Get = new Array();
0990 |
var A_GetName = new Array();
0991 |
Get = GM_getValue('OT_'+Account+'_ConstructionName', '');
0992 |
A_Get = Get.split(Separator);
0993 |
if (A_Get.length > 0) {
0994 |
for (i=0; i<A_Get.length; i++) {
0995 |
A_GetName = A_Get[i].split(/\;/g);
0996 |
if (A_GetName.length == 3) {
0997 |
A_Construction[A_GetName[0]][A_GetName[1]].Name = (A_GetName[2] == 'null' ? null : A_GetName[2]);
0998 |
}
0999 |
}
1000 |
}
1001 |
1002 |
// Liste d'action
1003 |
Get = GM_getValue('OT_'+Account+'_Actions', '');
1004 |
if (Get.length > 0) {
1005 |
A_Get = String(Get).split(Separator);
1006 |
for (i=0; i<A_Get.length; i++) {
1007 |
A_Actions[i] = A_Get[i];
1008 |
}
1009 |
}
1010 |
1011 |
// Etat d'affichage des colonnes du tableaux de ressources
1012 |
Get = GM_getValue('OT_'+Account+'_ShowHideColumn', '');
1013 |
if (Get.length > 0) {
1014 |
A_ShowHideColomn = Get.split(Separator);
1015 |
}
1016 |
else {
1017 |
for (i = 0; i < (PlanetSelect.length+2); i++) {
1018 |
A_ShowHideColomn[i] = '';
1019 |
}
1020 |
}
1021 |
1022 |
// Recherche
1023 |
if (((OgamePage == 'buildings') && (OgameMode == 'Forschung')) || (OgameEmpire == true) || (OgamePage == 'flotten1')) {
1024 |
1025 |
Get = GM_getValue('OT_'+Account+'_Research', '');
1026 |
for (j = 0; j < 16; j++) {
1027 |
A_Research[j] = new P_ResearchDescription();
1028 |
A_Research[j].Level = GetValue(Get, A_Construction[C_Research][j].Id, '-');
1029 |
A_Research[j].UC = GetValue(Get, A_Construction[C_Research][j].Id+'UC', '-');
1030 |
ResearchUpdate = GetValue(Get, 'Update', CounterStart);
1031 |
}
1032 |
}
1033 |
1034 |
// Chargement des donnees sur les planetes dans les tableaux precedement crees
1035 |
for (i = 0; i < PlanetSelect.length; i++) {
1036 |
1037 |
// Informations generales
1038 |
Get = GM_getValue('OT_'+A_Planet[i].Id+'_Planet', '');
1039 |
if (i != PlanetSelectedIndex) {
1040 |
A_Planet[i].Session = GetValue(Get, 'Session', '');
1041 |
}
1042 |
A_Planet[i].Type = GetValue(Get, 'Type', C_Planet);
1043 |
A_Planet[i].UsedSpace = GetValue(Get, 'UsedSpace', 0);
1044 |
A_Planet[i].TotalSpace = GetValue(Get, 'TotalSpace', 0);
1045 |
A_Planet[i].Diameter = GetValue(Get, 'Diameter', 0);
1046 |
A_Planet[i].MaxTemperature = GetValue(Get, 'MaxTemperature', 0);
1047 |
A_Planet[i].MinTemperature = GetValue(Get, 'MinTemperature', 0);
1048 |
A_Planet[i].Update = GetValue(Get, 'Update', CounterStart);
1049 |
A_Planet[i].ImageUrl = GetValue(Get, 'ImageUrl', '');
1050 |
A_Planet[i].Update = GetValue(Get, 'Update', CounterStart);
1051 |
1052 |
// Ressources de la planete
1053 |
Get = GM_getValue('OT_'+A_Planet[i].Id+'_Resources', '');
1054 |
A_Resources[i] = new P_Resources();
1055 |
if ((A_Planet[i].Session == Session) || (ShowResourcesOnlyActiveSession == false)) {
1056 |
A_Resources[i].Metal = GetValue(Get, 'Metal', '-');
1057 |
A_Resources[i].Crystal = GetValue(Get, 'Crystal', '-');
1058 |
A_Resources[i].Deuterium = GetValue(Get, 'Deuterium', '-');
1059 |
A_Resources[i].FreeEnergy = GetValue(Get, 'FreeEnergy', '-');
1060 |
A_Resources[i].TotalEnergy = GetValue(Get, 'TotalEnergy', '-');
1061 |
}
1062 |
else {
1063 |
A_Resources[i].Metal = undefined;
1064 |
A_Resources[i].Crystal = undefined;
1065 |
A_Resources[i].Deuterium = undefined;
1066 |
A_Resources[i].FreeEnergy = undefined;
1067 |
A_Resources[i].TotalEnergy = undefined;
1068 |
}
1069 |
A_Resources[i].MetalOver = GetValue(Get, 'MetalOver', false);
1070 |
A_Resources[i].CrystalOver = GetValue(Get, 'CrystalOver', false);
1071 |
A_Resources[i].DeuteriumOver = GetValue(Get, 'DeuteriumOver', false);
1072 |
A_Resources[i].EnergyOver = GetValue(Get, 'EnergyOver', false);
1073 |
A_Resources[i].Update = ((i == PlanetSelectedIndex) ? CounterStart: GetValue(Get, 'Update', CounterStart));
1074 |
1075 |
// Production horaire de metal, cristal et deuterium
1076 |
Get = GM_getValue('OT_'+A_Planet[i].Id+'_Production', '');
1077 |
A_Production[i] = new P_Production();
1078 |
A_Production[i].Metal = GetValue(Get, 'Metal', 0);
1079 |
A_Production[i].Crystal = GetValue(Get, 'Crystal', 0);
1080 |
A_Production[i].Deuterium = GetValue(Get, 'Deuterium', 0);
1081 |
A_Production[i].MetalMax = GetValue(Get, 'MetalMax', 0);
1082 |
A_Production[i].CrystalMax = GetValue(Get, 'CrystalMax', 0);
1083 |
A_Production[i].DeuteriumMax = GetValue(Get, 'DeuteriumMax', 0);
1084 |
A_Production[i].Update = GetValue(Get, 'Update', CounterStart);
1085 |
1086 |
// Batiment
1087 |
if ((OgamePage == 'b_building') || (OgameEmpire == true) || (AutoUpdateRest > 0)) {
1088 |
Get = GM_getValue('OT_'+A_Planet[i].Id+'_Buildings', '');
1089 |
A_Buildings[i] = new Array(18);
1090 |
for (j = 0; j < 18; j++) {
1091 |
A_Buildings[i][j] = new P_ConstructionDescription();
1092 |
A_Buildings[i][j].Level = GetValue(Get, A_Construction[C_Buildings][j].Id, '-');
1093 |
A_Buildings[i][j].UC = GetValue(Get, A_Construction[C_Buildings][j].Id+'UC', '-');
1094 |
}
1095 |
A_BuildingsUpdate[i] = GetValue(Get, 'Update', '');
1096 |
}
1097 |
1098 |
// Ressources
1099 |
if ((OgamePage == 'resources') || (OgameEmpire == true)) {
1100 |
// Taux d'utilisation (mine de metal, cristal, deuterium, centrale solaire, fusion, satellite)
1101 |
Get = GM_getValue('OT_'+A_Planet[i].Id+'_Pourcent', '');
1102 |
A_Pourcent[i] = new P_Pourcent();
1103 |
A_Pourcent[i].Rate = GetValue(Get, 'Rate', '-');
1104 |
A_Pourcent[i].Metal = GetValue(Get, 'Metal', '-');
1105 |
A_Pourcent[i].Crystal = GetValue(Get, 'Crystal', '-');
1106 |
A_Pourcent[i].Deuterium = GetValue(Get, 'Deuterium', '-');
1107 |
A_Pourcent[i].Solar = GetValue(Get, 'Solar', '-');
1108 |
A_Pourcent[i].Fusion = GetValue(Get, 'Fusion', '-');
1109 |
A_Pourcent[i].Ship212 = GetValue(Get, 'Ship212', '-');
1110 |
A_Pourcent[i].Update = GetValue(Get, 'Update', CounterStart);
1111 |
1112 |
}
1113 |
1114 |
// Defense
1115 |
if (((OgamePage == 'buildings') && (OgameMode == 'Verteidigung')) || (OgameEmpire == true)) {
1116 |
1117 |
// Defense
1118 |
Get = GM_getValue('OT_'+A_Planet[i].Id+'_Defenses', '');
1119 |
A_Defenses[i] = new Array(10);
1120 |
for (j = 0; j < 10; j++) {
1121 |
A_Defenses[i][j] = GetValue(Get, A_Construction[C_Defenses][j].Id, '-');
1122 |
}
1123 |
A_DefensesUpdate[i] = GetValue(Get, 'Update', '');
1124 |
1125 |
// Defense et flotte en cours de construction
1126 |
Get = GM_getValue('OT_'+A_Planet[i].Id+'_FleetsDefensesUC', '');
1127 |
A_FleetsDefensesUC[i] = new P_FleetsDefensesUC();
1128 |
A_FleetsDefensesUC[i].List = GetValue(Get, 'List', '');
1129 |
A_FleetsDefensesUC[i].Update = GetValue(Get, 'Update', '');
1130 |
}
1131 |
1132 |
// Chantier spatial
1133 |
if (((OgamePage == 'buildings') && (OgameMode == 'Flotte')) || (OgameEmpire == true)) {
1134 |
1135 |
// Defense et flotte en cours de construction
1136 |
Get = GM_getValue('OT_'+A_Planet[i].Id+'_FleetsDefensesUC', '');
1137 |
A_FleetsDefensesUC[i] = new P_FleetsDefensesUC();
1138 |
A_FleetsDefensesUC[i].List = GetValue(Get, 'List', '');
1139 |
A_FleetsDefensesUC[i].Update = GetValue(Get, 'Update', '');
1140 |
}
1141 |
1142 |
if ((OgamePage == 'flotten1') || (OgamePage == 'flotten2') || (OgamePage == 'flotten3') || (OgamePage == 'flottenversand') || (OgameEmpire == true)) {
1143 |
1144 |
// Flotte
1145 |
Get = GM_getValue('OT_'+A_Planet[i].Id+'_Fleets', '');
1146 |
A_Fleets[i] = new Array(14);
1147 |
for (j = 0; j < 14; j++) {
1148 |
A_Fleets[i][j] = GetValue(Get, A_Construction[C_Fleets][j].Id, '-');
1149 |
}
1150 |
A_FleetsUpdate[i] = GetValue(Get, 'Update', '');
1151 |
1152 |
if (OgameEmpire == false) {
1153 |
// Transfert
1154 |
Get = GM_getValue('OT_'+A_Planet[i].Id+'_Transfer', '');
1155 |
A_Transfer[i] = new P_Transfer();
1156 |
A_Transfer[i].Checked = GetValue(Get, 'Checked', false);
1157 |
A_Transfer[i].OriginePlanet = GetValue(Get, 'OriginePlanet', 0);
1158 |
A_Transfer[i].OrigineSystem = GetValue(Get, 'OrigineSystem', 0);
1159 |
A_Transfer[i].OrigineGalaxy = GetValue(Get, 'OrigineGalaxy', 0);
1160 |
A_Transfer[i].Metal = GetValue(Get, 'Metal', 0);
1161 |
A_Transfer[i].Crystal = GetValue(Get, 'Crystal', 0);
1162 |
A_Transfer[i].Deuterium = GetValue(Get, 'Deuterium', 0);
1163 |
A_Transfer[i].Speed = GetValue(Get, 'Speed', 0);
1164 |
A_Transfer[i].TransportShip = GetValue(Get, 'TransportShip', 0);
1165 |
A_Transfer[i].Recycler = GetValue(Get, 'Recycler', 0);
1166 |
A_Transfer[i].State = GetValue(Get, 'State', 0);
1167 |
if (A_Transfer[i].Checked == true) {
1168 |
if (A_Transfer[i].State > 0) {
1169 |
TransferStateCheck = false;
1170 |
}
1171 |
}
1172 |
}
1173 |
}
1174 |
}
1175 |
if ((TransferStateCheck == true) && (OgamePage == 'flotten1') && (OgameEmpire == false)) {
1176 |
TransferState = false;
1177 |
SaveTransfer();
1178 |
}
1179 |
}
1180 |
catch(err) {
1181 |
ShowError(err, 'Load informations');
1182 |
}
1183 |
}
1184 |
else if (OgamePage == 'galaxy') {
1185 |
Get = GM_getValue('OT_'+Account+'_PlanetName', '');
1186 |
var A_Get = new Array();
1187 |
A_Get = Get.split(Separator);
1188 |
for (i = 0; i < A_Get.length-1; i++) {
1189 |
A_PlanetName[i] = new P_PlanetName();
1190 |
A_PlanetName[i].Name = GetField(A_Get[i], 0, KeySeparator);
1191 |
A_PlanetName[i].Id = GetField(A_Get[i], 1, KeySeparator);
1192 |
}
1193 |
var PlanetNameSession = GetValue(Get, 'Session', '');
1194 |
}
1195 |
1196 |
1197 |
1198 |
1199 |
1200 |
/* GESTION DES LIENS DU MENU
1201 |
-------------------------------------------------- */
1202 |
1203 |
function GM__setValue(Name, Value) {
1204 |
window.setTimeout(GM_setValue, 0, Name, Value);
1205 |
return true;
1206 |
}
1207 |
unsafeWindow.GM__setValue = GM__setValue;
1208 |
1209 |
try {
1210 |
// Recuperation de la position des liens 'recherche', 'Defenses', 'Officier' et 'Marchand'
1211 |
if (MenuDiv) {
1212 |
var Table = MenuDiv.getElementsByTagName('table')[0];
1213 |
var SearchRow;
1214 |
var n=0;
1215 |
for (i = 0; i < Table.rows.length; i++) {
1216 |
var Cell = Table.rows[i].cells[0];
1217 |
var Page = Cell.innerHTML.match(/page=([^\&]+)/);
1218 |
if (Page) {
1219 |
if (Page[1] == 'suche') {
1220 |
// Creation du lien empire
1221 |
if (ShowEmpire == true) {
1222 |
// Argument ajoute pour savoir si on veut voir le menu empire
1223 |
if ((PlanetSelectedIndex != undefined) && (OgamePage != 'resources')) {
1224 |
CreateLink('', EmpireLinkName, EmpireMenuRow, false, A_Language[C_Empire]+' ('+C_ScriptName+')', 'javascript:if(GM__setValue(\'OT_OgameEmpire\',true)==true){window.location.replace(\''+A_Planet[PlanetSelectedIndex].Url+'\')};');
1225 |
}
1226 |
else {
1227 |
CreateLink('', EmpireLinkName, EmpireMenuRow, false, A_Language[C_Empire]+' ('+C_ScriptName+')', 'javascript:if(GM__setValue(\'OT_OgameEmpire\',true)==true){window.location.replace(\''+Cell.getElementsByTagName('a')[0].href+'\')};');
1228 |
}
1229 |
SearchRow = i;
1230 |
i++;
1231 |
}
1232 |
n++;
1233 |
}
1234 |
else if (Page[1] == 'buildings') {
1235 |
var Mode = Cell.innerHTML.match(/mode=([^\"]+)/); //"
1236 |
if (Mode) {
1237 |
if (Mode[1] == 'Verteidigung') {
1238 |
// Creation du lien de mise a jour automatique
1239 |
if (ShowAutoUpdate == true) {
1240 |
if (AutoUpdateRest > 0) {
1241 |
CreateLink('', A_Language[C_StopUpdate], (i+1), false, A_Language[C_UpdateStopInformations], 'javascript:StopUpdate();');
1242 |
}
1243 |
else {
1244 |
CreateLink('', A_Language[C_StartUpdate], (i+1), false, A_Language[C_UpdateInformations]+' ('+C_ScriptName+')', 'javascript:AutoUpdate();');
1245 |
}
1246 |
i++;
1247 |
}
1248 |
n++;
1249 |
}
1250 |
}
1251 |
}
1252 |
else if (Page[1] == 'micropayment') {
1253 |
// Suppression des liens Officiers
1254 |
if (DeleteOfficerLink == true) { RemoveOfficer(i); i--; }
1255 |
n++;
1256 |
}
1257 |
else if (Page[1] == 'trader') {
1258 |
// Suppression des liens Officiers et Marchand
1259 |
if (DeleteTraderLink == true) { RemoveTrader(i); i--; }
1260 |
n++;
1261 |
}
1262 |
else if (Page[1] == 'resources') {
1263 |
var ResourcesLink = Cell.getElementsByTagName('a')[0].href;
1264 |
n++;
1265 |
}
1266 |
}
1267 |
if (n == 5) break;
1268 |
}
1269 |
}
1270 |
}
1271 |
catch(err) {
1272 |
ShowError(err, 'Create empire and auto update link and delete officer and trader link');
1273 |
}
1274 |
1275 |
function CreateLink(Link, Text, Row, NewWindow, ToolTip, Javascript) { // Ajoute un lien dans le menu
1276 |
try {
1277 |
// Verification de mots cles
1278 |
if (Link.match(/\[host\]/g)) { // Domaine
1279 |
Link = Link.replace(/\[host\]/g, Host);
1280 |
}
1281 |
if (Link.match(/\[session\]/g)) { // Session
1282 |
Link = Link.replace(/\[session\]/g, Session);
1283 |
}
1284 |
if (Link.match(/\[([a-zA-Z0-9\-\_ ]+)\]/g)) { // ID Planete
1285 |
var PlanetName = Link.match(/\[([a-zA-Z0-9\-\_ ]+)\]/g);
1286 |
PlanetName = String(PlanetName).replace(/\[/g,'').replace(/\]/g,'');
1287 |
if (OgamePage == 'galaxy') {
1288 |
var NotFind = true;
1289 |
if (PlanetNameSession == Session) {
1290 |
for (k = 0; k < A_PlanetName.length; k++) {
1291 |
if (A_PlanetName[k].Name == PlanetName) {
1292 |
var NotFind = false;
1293 |
Link = Link.replace(/\[([a-zA-Z0-9\-\_ ]+)\]/g, A_PlanetName[k].Id);
1294 |
break;
1295 |
}
1296 |
}
1297 |
}
1298 |
}
1299 |
else {
1300 |
var NotFind = true;
1301 |
for (k = 0; k < PlanetSelect.length; k++) {
1302 |
if (A_Planet[k].Name == PlanetName){
1303 |
NotFind = false;
1304 |
Link = Link.replace(/\[([a-zA-Z0-9\-\_ ]+)\]/g, A_Planet[k].Id);
1305 |
break;
1306 |
}
1307 |
}
1308 |
}
1309 |
if (NotFind == true) {
1310 |
Link = Link.replace(/\[([a-zA-Z0-9\-\_ ]+)\]/g, '');
1311 |
}
1312 |
}
1313 |
if (MenuDiv) {
1314 |
var tbody = MenuDiv.getElementsByTagName('table')[0];
1315 |
var cell = document.createElement('td');
1316 |
var hyperlink = document.createElement('a');
1317 |
if (Link != '') hyperlink.setAttribute('href',Link);
1318 |
if (AddToolTip == true) {
1319 |
if ((ToolTip != undefined) && (ToolTip != '')) { hyperlink.setAttribute('title',ToolTip); }
1320 |
else { hyperlink.setAttribute('title',Link); }
1321 |
}
1322 |
if (NewWindow == true) hyperlink.setAttribute('target','_blank');
1323 |
if ((Javascript != undefined) && (Javascript != '')) {
1324 |
hyperlink.setAttribute('onclick',Javascript);
1325 |
hyperlink.setAttribute('style','cursor:pointer');
1326 |
}
1327 |
var hyperlinkText = document.createTextNode(Text);
1328 |
hyperlink.appendChild(hyperlinkText);
1329 |
var font = document.createElement('font');
1330 |
font.setAttribute('color','#ffffff');
1331 |
font.appendChild(hyperlink);
1332 |
var div = document.createElement('div');
1333 |
div.setAttribute('align','center');
1334 |
div.appendChild(font);
1335 |
cell.appendChild(div);
1336 |
if (Row) {
1337 |
tbody.insertRow(Row);
1338 |
tbody.rows[Row].appendChild(cell);
1339 |
}
1340 |
}
1341 |
}
1342 |
catch(err) {
1343 |
ShowError(err, 'CreateLink('+Link+', '+Text+', '+Row+', '+NewWindow+', '+ToolTip+', '+Javascript+')');
1344 |
}
1345 |
}
1346 |
1347 |
function RemoveOfficer(OfficerRow) { // Enleve les liens officiers
1348 |
try {
1349 |
if((OgameHeader == true) && (HeaderDiv)) {
1350 |
var SelectTable = HeaderDiv.getElementsByTagName('select');
1351 |
if (SelectTable[4]) {
1352 |
SelectTable[4].deleteRow(0); // Icones officier
1353 |
}
1354 |
}
1355 |
if ((MenuDiv) && (OfficerRow > 0)) {
1356 |
MenuDiv.getElementsByTagName('table')[0].deleteRow(OfficerRow);
1357 |
}
1358 |
GM_addStyle('div#combox_container, table.header td[width="35"] { display:none; }');
1359 |
}
1360 |
catch(err) {
1361 |
ShowError(err, 'RemoveOfficer()');
1362 |
}
1363 |
}
1364 |
1365 |
function RemoveTrader(TraderRow) { // Enleve le lien marchand
1366 |
try {
1367 |
if ((MenuDiv) && (TraderRow > 0)) {
1368 |
MenuDiv.getElementsByTagName('table')[0].deleteRow(TraderRow);
1369 |
}
1370 |
}
1371 |
catch(err) {
1372 |
ShowError(err, 'RemoveTrader()');
1373 |
}
1374 |
}
1375 |
1376 |
1377 |
1378 |
1379 |
1380 |
/* FONCTIONS GENERALES
1381 |
-------------------------------------------------- */
1382 |
1383 |
function FormatNb(number) { // Ajoute des points tous les 3 chiffres pour une meilleure lecture
1384 |
try {
1385 |
var nNbr = String(number);
1386 |
var sRes = '';
1387 |
if (nNbr.charAt(0) == '-') {
1388 |
var Sign = '-';
1389 |
var nNb = nNbr.substring(1, nNbr.length);
1390 |
}
1391 |
else {
1392 |
var Sign = '';
1393 |
var nNb = nNbr;
1394 |
}
1395 |
if (ShowInKilo == false) { // Affiche le resultat en kilo
1396 |
for (var j, i = nNb.length - 1, j = 0; i >= 0; i--, j++)
1397 |
sRes = nNb.charAt(i) + ((j > 0) && (j % 3 == 0)? '.': '') + sRes;
1398 |
return Sign+sRes;
1399 |
}
1400 |
else {
1401 |
if (nNb.length > 3) {
1402 |
for (var j, i = nNb.length - 4, j = 0; i >= 0; i--, j++)
1403 |
sRes = nNb.charAt(i) + ((j > 0) && (j % 3 == 0)? '.': '') + sRes;
1404 |
return Sign+sRes+'k';
1405 |
}
1406 |
else {
1407 |
return Sign+nNb;
1408 |
}
1409 |
}
1410 |
}
1411 |
catch(err) {
1412 |
ShowError(err, 'FormatNb()');
1413 |
}
1414 |
}
1415 |
1416 |
function SortNumber(a,b) { // Pour specifier que le tri est numerique et pas alphabetique
1417 |
return a-b;
1418 |
}
1419 |
1420 |
function RSet(string, length, character) { // Ajoute X caractere a gauche pour avoir la longueur voulu
1421 |
try {
1422 |
string = new String(string); // Pour etre que c'est bien un string
1423 |
if (string.length >= length) {
1424 |
return string;
1425 |
}
1426 |
else if (character.length == 1) {
1427 |
for (var i = 0; i < (length-string.length+1); i++) {
1428 |
string = character+string;
1429 |
}
1430 |
return string;
1431 |
}
1432 |
}
1433 |
catch(err) {
1434 |
ShowError(err, 'RSet()');
1435 |
}
1436 |
}
1437 |
1438 |
function GetField(String, Index, SeparatorKey) {
1439 |
if (String.length > 0) {
1440 |
var A_Get = new Array();
1441 |
A_Get = String.split(SeparatorKey);
1442 |
if (A_Get.length > Index) {
1443 |
return A_Get[Index];
1444 |
}
1445 |
}
1446 |
return '';
1447 |
}
1448 |
1449 |
function FormatTime(time, ReturnArrivalDate) { // Mis en forme une duree en millisecondes
1450 |
try {
1451 |
if ((ReturnArrivalDate == undefined) || (ReturnArrivalDate == false)) {
1452 |
var day = 0;
1453 |
var hour = 0;
1454 |
var min = 0;
1455 |
var sec = 0;
1456 |
1457 |
day = Math.floor(time/86400000);
1458 |
hour = Math.floor((time-(day*86400000))/3600000);
1459 |
min = Math.floor((time-(day*86400000)-(hour*3600000))/60000);
1460 |
sec = Math.floor((time-(day*86400000)-(hour*3600000)-(min*60000))/1000);
1461 |
1462 |
if (time > 86399999) { // >= 1 jour
1463 |
if (ShowSecondForUpperUpdateTimeInDay == true) {
1464 |
return day+A_Language[C_DayAbbreviation]+','+hour+A_Language[C_HourAbbreviation]+':'+RSet(min, 2, '0')+A_Language[C_MinuteAbbreviation]+':'+RSet(sec, 2, '0')+A_Language[C_SecondAbbreviation];
1465 |
}
1466 |
else {
1467 |
return day+A_Language[C_DayAbbreviation]+','+hour+A_Language[C_HourAbbreviation]+':'+RSet(min, 2, '0')+A_Language[C_MinuteAbbreviation];
1468 |
}
1469 |
}
1470 |
else if (time > 3599999) { // >= 1 heure
1471 |
return hour+A_Language[C_HourAbbreviation]+':'+RSet(min, 2, '0')+A_Language[C_MinuteAbbreviation]+':'+RSet(sec, 2, '0')+A_Language[C_SecondAbbreviation];
1472 |
}
1473 |
else if (time > 59999) { // >= 1 minute
1474 |
return min+A_Language[C_MinuteAbbreviation]+':'+RSet(sec, 2, '0')+A_Language[C_SecondAbbreviation];
1475 |
}
1476 |
else if (time > 999) { // >= 1 seconde
1477 |
return sec+A_Language[C_SecondAbbreviation];
1478 |
}
1479 |
else if (time >= 0) { // < 1 seconde
1480 |
return '0'+A_Language[C_SecondAbbreviation];
1481 |
}
1482 |
else {
1483 |
return '';
1484 |
}
1485 |
}
1486 |
else {
1487 |
if (time > 0) {
1488 |
var date = new Date();
1489 |
date.setTime(date.getTime()+time);
1490 |
return String(date.getHours())+':'+RSet(String(date.getMinutes()),2,'0')+' '+String(date.getDate())+'/'+RSet(String(date.getMonth()+1),2,'0')+'/'+RSet(String(date.getYear()).substr(1,2),2,'0');
1491 |
}
1492 |
else if (time == 0) {
1493 |
return '0'+A_Language[C_SecondAbbreviation];
1494 |
}
1495 |
else {
1496 |
return '';
1497 |
}
1498 |
}
1499 |
}
1500 |
catch(err) {
1501 |
ShowError(err, 'FormatTime()');
1502 |
}
1503 |
}
1504 |
1505 |
function CreateClipboard() {
1506 |
if(!window.clipboardData) {
1507 |
window.clipboardData = {
1508 |
setData : function(mode,content) {
1509 |
var clipboard = document.body;
1510 |
var flashclipboard = clipboard.flashclipboard;
1511 |
if(flashclipboard == null){
1512 |
flashclipboard = document.createElement("div");
1513 |
clipboard.flashclipboard = flashclipboard;
1514 |
clipboard.appendChild(flashclipboard);
1515 |
}
1516 |
flashclipboard.innerHTML = '<embed src="'+C_Server+'clipboard.swf" FlashVars="clipboard='+encodeURIComponent(content)+'" width="0" height="0" type="application/x-shockwave-flash"></embed>';
1517 |
}
1518 |
}
1519 |
}
1520 |
}
1521 |
unsafeWindow.CreateClipboard = CreateClipboard;
1522 |
1523 |
function SetClipboard(Text) {
1524 |
if (!document.getElementsByTagName('embed').length) {
1525 |
CreateClipboard();
1526 |
}
1527 |
if (window.clipboardData)
1528 |
window.clipboardData.setData('text',Text);
1529 |
}
1530 |
unsafeWindow.SetClipboard = SetClipboard;
1531 |
1532 |
1533 |
1534 |
1535 |
1536 |
/* FONCTIONS ET DECLARATIONS GENERALES DU SCRIPT
1537 |
---------------------------------------------------*/
1538 |
function ShowError(Err, Block) {
1539 |
if (Debug == false) {
1540 |
var Error = 'Script : \''+C_ScriptName+'\',Version : '+C_ScriptVersion+' '+C_ScriptBuild+'\n\n';
1541 |
Error += 'Block: ' + Block + '\n\n';
1542 |
Error += 'Name: ' + Err.name + '\n';
1543 |
Error += 'Description: ' + Err.message + '\n';
1544 |
Error += 'Line number: ' + Err.lineNumber + '\n\n';
1545 |
if (DebugAdvanced == true) {
1546 |
Error += 'File name:\n' + Err.fileName + '\n\n';
1547 |
Error += 'Constructor:\n' + Err.constructor + '\n\n';
1548 |
Error += 'Stack:\n' + (Err.stack||'') + '\n\n';
1549 |
}
1550 |
Error += 'Click OK para continuar.\n';
1551 |
alert(Error);
1552 |
}
1553 |
return true;
1554 |
}
1555 |
1556 |
function SaveAccount() {
1557 |
var Value = '';
1558 |
for (i = 0; i < A_Account.length; i++) {
1559 |
for (j = 0; j < A_Account[i].length; j++) {
1560 |
Value += A_Account[i][j]+';';
1561 |
}
1562 |
Value = Value.substr(0,Value.length-1)+'|';
1563 |
}
1564 |
GM_setValue('OT_Account', Value.substr(0,Value.length-1));
1565 |
}
1566 |
1567 |
function ScriptShowHide(Id, TitleId, Title) {
1568 |
var DivId = document.getElementById(Id);
1569 |
var SpanTitleId = document.getElementById(TitleId);
1570 |
if (DivId.style.display == 'none') {
1571 |
DivId.style.display = '';
1572 |
SpanTitleId.innerHTML = Title+' <img src="'+C_ImgUp+'" alt="'+A_Language[C_RollUp]+'" '+((AddToolTip == true)?'title="'+A_Language[C_RollUp]+'"':'')+'>';
1573 |
}
1574 |
else {
1575 |
DivId.style.display = 'none';
1576 |
SpanTitleId.innerHTML = Title+' <img src="'+C_ImgDown+'" alt="'+A_Language[C_Unfold]+'" '+((AddToolTip == true)?'title="'+A_Language[C_Unfold]+'"':'')+'>';
1577 |
}
1578 |
}
1579 |
unsafeWindow.ScriptShowHide = ScriptShowHide;
1580 |
1581 |
function GMsetValue(Name, Value) {
1582 |
window.setTimeout(GM_setValue, 0, Name, Value);
1583 |
}
1584 |
unsafeWindow.GMsetValue = GMsetValue;
1585 |
1586 |
function GMsetRefreshValue(RPR,AUR) {
1587 |
GMsetValue('OT_'+Account+'_Refresh', 'RefreshPlanetRest='+RPR+'|AutoUpdateRest='+AUR);
1588 |
}
1589 |
unsafeWindow.GMsetRefreshValue = GMsetRefreshValue;
1590 |
1591 |
function GetValue(GMValue, Key, DefaultValue) {
1592 |
try {
1593 |
var Value = '';
1594 |
if (GMValue.length > 0) {
1595 |
var A_GetGM = GMValue.split(Separator);
1596 |
if (A_GetGM.length > 0) {
1597 |
for (var k = 0; k < A_GetGM.length; k++) {
1598 |
var A_GetGMKey = A_GetGM[k].split(KeySeparator);
1599 |
if (A_GetGMKey[0] == Key) {
1600 |
Value = '';
1601 |
if (A_GetGMKey.length > 2) {
1602 |
for (var l = 1; l < A_GetGMKey.length; l++) {
1603 |
Value += A_GetGMKey[l]+'=';
1604 |
}
1605 |
Value = Value.substr(0, Value.length-1);
1606 |
}
1607 |
else {
1608 |
Value = A_GetGMKey[1];
1609 |
}
1610 |
if ((Value == 'true') || (Value == 'false')) {
1611 |
return eval(Value);
1612 |
}
1613 |
else if (Value) {
1614 |
return Value;
1615 |
}
1616 |
}
1617 |
}
1618 |
}
1619 |
}
1620 |
return DefaultValue;
1621 |
}
1622 |
catch(err) {
1623 |
ShowError(err, 'GetValue()');
1624 |
}
1625 |
}
1626 |
1627 |
function PlanetTimeUpdate(PlanetIndex, TimeInMillisecond, Color) { // Renvoie la class en fonction du temps depuis la derniere mise a jour
1628 |
try {
1629 |
if (A_Planet[PlanetIndex].Session == Session) {
1630 |
var TimeUpdate = A_Resources[PlanetIndex].Update;
1631 |
var GTime = new Date();
1632 |
var CurrentTime = GTime.getTime();
1633 |
if (TimeInMillisecond == false) {
1634 |
if ((CurrentTime-TimeUpdate) < A_UpdateTimeColor[0]) {
1635 |
return ((Color)?'#00FF00':'Time0');
1636 |
}
1637 |
else if ((CurrentTime-TimeUpdate) < A_UpdateTimeColor[1]) {
1638 |
return ((Color)?'#33FF00':'Time1');
1639 |
}
1640 |
else if ((CurrentTime-TimeUpdate) < A_UpdateTimeColor[2]) {
1641 |
return ((Color)?'#66FF00':'Time2');
1642 |
}
1643 |
else if ((CurrentTime-TimeUpdate) < A_UpdateTimeColor[3]) {
1644 |
return ((Color)?'#99FF00':'Time3');
1645 |
}
1646 |
else if ((CurrentTime-TimeUpdate) < A_UpdateTimeColor[4]) {
1647 |
return ((Color)?'#CCFF00':'Time4');
1648 |
}
1649 |
else if ((CurrentTime-TimeUpdate) < A_UpdateTimeColor[5]) {
1650 |
return ((Color)?'#FFFF00':'Time5');
1651 |
}
1652 |
else if ((CurrentTime-TimeUpdate) < A_UpdateTimeColor[6]) {
1653 |
return ((Color)?'#FFCC00':'Time6');
1654 |
}
1655 |
else if ((CurrentTime-TimeUpdate) < A_UpdateTimeColor[7]) {
1656 |
return ((Color)?'#FF9900':'Time7');
1657 |
}
1658 |
else if ((CurrentTime-TimeUpdate) < A_UpdateTimeColor[8]) {
1659 |
return ((Color)?'#FF6600':'Time8');
1660 |
}
1661 |
else if ((CurrentTime-TimeUpdate) < A_UpdateTimeColor[9]) {
1662 |
return ((Color)?'#FF3300':'Time9');
1663 |
}
1664 |
else {
1665 |
return ((Color)?'#FF0000':'Time10');
1666 |
}
1667 |
}
1668 |
else {
1669 |
return CurrentTime-TimeUpdate;
1670 |
}
1671 |
}
1672 |
if (TimeInMillisecond == false) {
1673 |
return ((Color)?'#00FFFF':'TimeOut');
1674 |
}
1675 |
else {
1676 |
return -1;
1677 |
}
1678 |
}
1679 |
catch(err) {
1680 |
ShowError(err, 'PlanetTimeUpdate('+PlanetIndex+', '+TimeInMillisecond+', '+Color+')');
1681 |
}
1682 |
}
1683 |
1684 |
function ResourcesOver(PlanetIndex, Resource) { // Renvoie la class en fonction de l'etat des reservoirs et de l'energie (ok, sur-capacite, manque)
1685 |
try {
1686 |
// Resource=0 -> Metal, Resource=1 -> Cristal, Resource=2 -> Deuterium, Resource=3 -> Energie
1687 |
if (A_Planet[PlanetIndex].Type == C_Planet) {
1688 |
if (Resource == 0) { // Metal
1689 |
if (A_Resources[PlanetIndex].MetalOver == true) {
1690 |
return 'Over';
1691 |
}
1692 |
}
1693 |
else if (Resource == 1) { // Cristal
1694 |
if (A_Resources[PlanetIndex].CrystalOver == true) {
1695 |
return 'Over';
1696 |
}
1697 |
}
1698 |
else if (Resource == 2) { // Deuterium
1699 |
if (A_Resources[PlanetIndex].DeuteriumOver == true) {
1700 |
return 'Over';
1701 |
}
1702 |
}
1703 |
else { // Energie
1704 |
if (A_Resources[PlanetIndex].EnergyOver == true) {
1705 |
return 'Over';
1706 |
}
1707 |
}
1708 |
}
1709 |
return '';
1710 |
}
1711 |
catch(err) {
1712 |
ShowError(err, 'ResourcesOver('+PlanetIndex+', '+Resource+')');
1713 |
}
1714 |
}
1715 |
1716 |
function ValidateConstructionLevel(Group, Element, Level, PlanetIndex) {
1717 |
if (Group == C_Buildings) {
1718 |
if((A_Buildings[PlanetIndex][Element].Level=='-'?0:A_Buildings[PlanetIndex][Element].Level) < Level) {
1719 |
return false;
1720 |
}
1721 |
}
1722 |
else {
1723 |
if((A_Research[Element].Level=='-'?0:A_Research[Element].Level) < Level) {
1724 |
return false;
1725 |
}
1726 |
}
1727 |
return true;
1728 |
}
1729 |
1730 |
function ValidateBuilding(Group, Element, PlanetIndex) {
1731 |
try {
1732 |
var ErrorBuilding = '';
1733 |
if ((Group == C_Buildings) && ((A_Planet[PlanetIndex].TotalSpace-A_Planet[PlanetIndex].UsedSpace) == 0)) {
1734 |
ErrorBuilding += A_Language[C_NotEnoughFreeField]+'<br>';
1735 |
}
1736 |
else {
1737 |
if ((A_Planet[PlanetIndex].Type == C_Moon) && (A_Buildings[PlanetIndex][14].Level == 0) && (Element != 14)) {
1738 |
ErrorBuilding += A_Language[C_LunarBaseNotBuilt]+'<br>';
1739 |
}
1740 |
}
1741 |
if ((A_Construction[Group][Element].PlanetType == A_Planet[PlanetIndex].Type) || (A_Construction[Group][Element].PlanetType == C_All)) {
1742 |
if (A_Construction[Group][Element].Group0 >= 0) {
1743 |
if (ValidateConstructionLevel(A_Construction[Group][Element].Group0,A_Construction[Group][Element].Element0,A_Construction[Group][Element].Level0, PlanetIndex) == false) {
1744 |
ErrorBuilding += A_Construction[A_Construction[Group][Element].Group0][A_Construction[Group][Element].Element0].Name+' '+A_Construction[Group][Element].Level0+'<br>';
1745 |
}
1746 |
if (A_Construction[Group][Element].Group1 >= 0) {
1747 |
if (ValidateConstructionLevel(A_Construction[Group][Element].Group1,A_Construction[Group][Element].Element1,A_Construction[Group][Element].Level1, PlanetIndex) == false) {
1748 |
ErrorBuilding += A_Construction[A_Construction[Group][Element].Group1][A_Construction[Group][Element].Element1].Name+' '+A_Construction[Group][Element].Level1+'<br>';
1749 |
}
1750 |
if (A_Construction[Group][Element].Group2 >= 0) {
1751 |
if (ValidateConstructionLevel(A_Construction[Group][Element].Group2,A_Construction[Group][Element].Element2,A_Construction[Group][Element].Level2, PlanetIndex) == false) {
1752 |
ErrorBuilding += A_Construction[A_Construction[Group][Element].Group2][A_Construction[Group][Element].Element2].Name+' '+A_Construction[Group][Element].Level2+'<br>';
1753 |
}
1754 |
if (A_Construction[Group][Element].Group3 >= 0) {
1755 |
if (ValidateConstructionLevel(A_Construction[Group][Element].Group3,A_Construction[Group][Element].Element3,A_Construction[Group][Element].Level3, PlanetIndex) == false) {
1756 |
ErrorBuilding += A_Construction[A_Construction[Group][Element].Group3][A_Construction[Group][Element].Element3].Name+' '+A_Construction[Group][Element].Level3+'<br>';
1757 |
}
1758 |
}
1759 |
}
1760 |
}
1761 |
}
1762 |
}
1763 |
else {
1764 |
if (A_Planet[PlanetIndex].Type == C_Planet) {
1765 |
ErrorBuilding += A_Language[C_NotOnPlanet]+'<br>';
1766 |
}
1767 |
else {
1768 |
ErrorBuilding += A_Language[C_NotOnMoon]+'<br>';
1769 |
}
1770 |
}
1771 |
return ErrorBuilding;
1772 |
}
1773 |
catch(err) {
1774 |
ShowError(err, 'ValidateBuilding('+Group+', '+Element+', '+PlanetIndex+')');
1775 |
}
1776 |
}
1777 |
1778 |
function SaveTransfer(TransferShowTmp) {
1779 |
var Value = 'Show='+((TransferShowTmp != undefined)?eval(TransferShowTmp):TransferShow)+
1780 |
'|Metal='+TransferMetal+
1781 |
'|Crystal='+TransferCrystal+
1782 |
'|Deuterium='+TransferDeuterium+
1783 |
'|State='+TransferState+
1784 |
'|ShipType='+TransferShipType+
1785 |
'|DestinationPlanet='+TransferDestinationPlanet+
1786 |
'|DestinationSystem='+TransferDestinationSystem+
1787 |
'|DestinationGalaxy='+TransferDestinationGalaxy+
1788 |
'|DestinationType='+TransferDestinationType;
1789 |
GMsetValue('OT_'+Account+'_Transfer', Value);
1790 |
}
1791 |
unsafeWindow.SaveTransfer = SaveTransfer;
1792 |
1793 |
function AddAction(Action) {
1794 |
try {
1795 |
A_Actions[A_Actions.length] = Action.replace(/\|/g, '\'');
1796 |
Action = '';
1797 |
for (var k = 0; k < A_Actions.length; k++) {
1798 |
Action += A_Actions[k]+'|';
1799 |
}
1800 |
Action = Action.substr(0, Action.length-1);
1801 |
GMsetValue('OT_'+Account+'_Actions', Action);
1802 |
}
1803 |
catch(err) {
1804 |
ShowError(err, 'AddAction('+Action+')');
1805 |
}
1806 |
}
1807 |
unsafeWindow.AddAction = AddAction;
1808 |
1809 |
1810 |
1811 |
1812 |
1813 |
/* DETECTION DE LA VERSION DU SCRIPT PRECEDEMMENT INSTALLE
1814 |
-------------------------------------------------- */
1815 |
1816 |
if (((ScriptVersion != C_ScriptVersion) || (ScriptBuild != C_ScriptBuild)) && (Session) && (OgameHeader == true) && (HeaderDiv)) {
1817 |
try {
1818 |
// Affichage du non support du domaine ogame
1819 |
if (SupportedExtension == false) {
1820 |
alert(C_ScriptName+' doesn\'t support \253'+OgameExtension+'\273 ogame domain.\n'+
1821 |
'If you have some time to spend ;), you can translate this script.\n\n'+
1822 |
'Thanks in advance.\n\n'+
1823 |
'If you want some help, you can contact me through this page:\n'+
1824 |
'http://userscripts.org/scripts/show/23500\nOr:\n'+
1825 |
'http://lggillou.vbc3.com/poster.php\n\n'+
1826 |
'This ogame domain being unsupported, the english language will be used by default,\n'+
1827 |
'So errors will occur because some functions require a translation.');
1828 |
}
1829 |
// Sauvegarde de la version
1830 |
GM_setValue('OT_'+Account+'_Version', 'Version='+C_ScriptVersion+'|Build='+C_ScriptBuild);
1831 |
var Script; if (ScriptVersion) Script = ScriptVersion.match(/([\d\.]+)/)[1];
1832 |
if (Script != C_ScriptVersion.match(/([\d\.]+)/)[1]) {
1833 |
alert(A_Language[C_NewVersion]);
1834 |
window.setTimeout('window.location.replace(\'/game/index.php?page=techtree&session='+Session+'\')', 100);
1835 |
}
1836 |
else {
1837 |
alert(A_Language[C_NewBuild]);
1838 |
var Build = parseInt(ScriptBuild.match(/([0]{0,2})([\d]{1,3})/)[2]);
1839 |
if (Build < 9) {
1840 |
if (confirm('This update calculates the real-time resources by taking into account the capacity of storages and tanks.\nDo you want to update resources pages now so that this function is operational?') == true) {
1841 |
AddAction('RefreshPlanet()')
1842 |
window.setTimeout('window.location.replace(\'/game/index.php?page=resources&session='+Session+'\')', 100);
1843 |
}
1844 |
}
1845 |
else if (Build < 13) {
1846 |
alert('This build fix an account management bug.\n\nIt is possible that your settings will be reset if you have more than one ogame account.\n\nSorry for inconveniences.');
1847 |
window.setTimeout('window.location.replace(\'/game/index.php?page=techtree&session='+Session+'\')', 100);
1848 |
}
1849 |
else if (Build < 15) {
1850 |
alert('This build fix an incompatibility.\n\nTechnology page will be refresh after click on OK');
1851 |
window.setTimeout('window.location.replace(\'/game/index.php?page=techtree&session='+Session+'\')', 100);
1852 |
}
1853 |
}
1854 |
}
1855 |
catch(err) {
1856 |
ShowError(err, 'Check version');
1857 |
}
1858 |
}
1859 |
1860 |
1861 |
1862 |
1863 |
/* TOUTES LA PAGES : RECUPERATION DES RESSOURCES DE LA PLANETE ET DES NOMS DES PLANETES
1864 |
-------------------------------------------------- */
1865 |
1866 |
// Sauvegarde des donnees de la planete active
1867 |
function SavePlanetResources(PlanetIndex) {
1868 |
var GTime = new Date();
1869 |
var Value = 'Session='+Session+
1870 |
'|Metal='+A_Resources[PlanetIndex].Metal+
1871 |
'|Crystal='+A_Resources[PlanetIndex].Crystal+
1872 |
'|Deuterium='+A_Resources[PlanetIndex].Deuterium+
1873 |
'|FreeEnergy='+A_Resources[PlanetIndex].FreeEnergy+
1874 |
'|TotalEnergy='+A_Resources[PlanetIndex].TotalEnergy+
1875 |
'|MetalOver='+A_Resources[PlanetIndex].MetalOver+
1876 |
'|CrystalOver='+A_Resources[PlanetIndex].CrystalOver+
1877 |
'|DeuteriumOver='+A_Resources[PlanetIndex].DeuteriumOver+
1878 |
'|EnergyOver='+A_Resources[PlanetIndex].EnergyOver+
1879 |
'|Update='+GTime.getTime();
1880 |
GM_setValue('OT_'+A_Planet[PlanetIndex].Id+'_Resources', Value);
1881 |
A_Resources[PlanetIndex].Update = GTime.getTime();
1882 |
}
1883 |
1884 |
function SavePlanetName() {
1885 |
var Value = '';
1886 |
for (i = 0; i < (PlanetSelect.length); i++) {
1887 |
Value += A_Planet[i].Name+'='+A_Planet[i].Id+'|';
1888 |
}
1889 |
Value += 'Session='+Session;
1890 |
GM_setValue('OT_'+Account+'_PlanetName', Value);
1891 |
}
1892 |
1893 |
if ((OgameHeader == true) && (HeaderDiv)) {
1894 |
try {
1895 |
// Recuperation des ressources et energie en stock
1896 |
var ResourcesTable = document.getElementById('resources');
1897 |
var ResourcesFont = ResourcesTable.getElementsByTagName('font');
1898 |
A_Resources[PlanetSelectedIndex].Metal = ResourcesFont[5].innerHTML.replace(/\./g,'');
1899 |
A_Resources[PlanetSelectedIndex].Crystal = ResourcesFont[6].innerHTML.replace(/\./g,'');
1900 |
A_Resources[PlanetSelectedIndex].Deuterium = ResourcesFont[7].innerHTML.replace(/\./g,'');
1901 |
var DarkMatter = ResourcesFont[8].innerHTML.replace(/\./g,'');
1902 |
var ResourcesTd = ResourcesTable.getElementsByTagName('td');
1903 |
var Energy = ResourcesTd[14].innerHTML.replace('<font >','').replace('<font>','').replace('<font color="'+ResourcesFont[9].color+'">','').replace('</font>','');
1904 |
A_Resources[PlanetSelectedIndex].FreeEnergy = Energy.substring(0, Energy.indexOf('/')).replace(/\./g,'');
1905 |
A_Resources[PlanetSelectedIndex].TotalEnergy = Energy.substring((Energy.indexOf('/')+1), (Energy.length)).replace(/\./g,'');
1906 |
1907 |
// Verification ressources en surplus par rapport au reservoir et manque d'energie
1908 |
A_Resources[PlanetSelectedIndex].MetalOver = false;
1909 |
A_Resources[PlanetSelectedIndex].CrystalOver = false;
1910 |
A_Resources[PlanetSelectedIndex].DeuteriumOver = false;
1911 |
A_Resources[PlanetSelectedIndex].EnergyOver = false;
1912 |
if (ResourcesFont[5].color == '#ff0000') { A_Resources[PlanetSelectedIndex].MetalOver = true; }
1913 |
if (ResourcesFont[6].color == '#ff0000') { A_Resources[PlanetSelectedIndex].CrystalOver = true; }
1914 |
if (ResourcesFont[7].color == '#ff0000') { A_Resources[PlanetSelectedIndex].DeuteriumOver = true; }
1915 |
if (ResourcesFont[9].color == '#ff0000') { A_Resources[PlanetSelectedIndex].EnergyOver = true; }
1916 |
1917 |
// Sauvegarde des donnees recuperees pour la planete en cours
1918 |
SavePlanetResources(PlanetSelectedIndex);
1919 |
SavePlanetName();
1920 |
SavePlanetInformations(PlanetSelectedIndex);
1921 |
}
1922 |
catch(err) {
1923 |
ShowError(err, 'Get metal, crystal, deuterium and energy resources value');
1924 |
}
1925 |
}
1926 |
1927 |
1928 |
1929 |
1930 |
1931 |
/* PAGE GENERALE (Recuperation des donnees et memorisation via GreaseMonkey)
1932 |
-------------------------------------------------- */
1933 |
1934 |
function SavePlanetInformations(PlanetIndex) {
1935 |
var GTime = new Date();
1936 |
if (A_Planet[PlanetIndex].Type == C_Moon) {
1937 |
A_Planet[PlanetIndex].ImageUrl = SkinUrl+'planeten/mond.jpg';
1938 |
}
1939 |
var Value = 'Session='+A_Planet[PlanetIndex].Session+
1940 |
'|Type='+A_Planet[PlanetIndex].Type+
1941 |
'|UsedSpace='+A_Planet[PlanetIndex].UsedSpace+
1942 |
'|TotalSpace='+A_Planet[PlanetIndex].TotalSpace+
1943 |
'|Diameter='+A_Planet[PlanetIndex].Diameter+
1944 |
'|MaxTemperature='+A_Planet[PlanetIndex].MaxTemperature+
1945 |
'|MinTemperature='+A_Planet[PlanetIndex].MinTemperature+
1946 |
'|ImageUrl='+A_Planet[PlanetIndex].ImageUrl+
1947 |
'|Update='+((PlanetSelectedIndex==PlanetIndex)?GTime.getTime():A_Planet[PlanetIndex].Update);
1948 |
GM_setValue('OT_'+A_Planet[PlanetIndex].Id+'_Planet', Value);
1949 |
if (PlanetSelectedIndex==PlanetIndex) A_Planet[PlanetIndex].Update=GTime.getTime();
1950 |
}
1951 |
1952 |
if (OgamePage == 'overview') {
1953 |
1954 |
try {
1955 |
var link = '';
1956 |
var Space = '';
1957 |
var Temp = '';
1958 |
if (ContentDiv) {
1959 |
var Table = ContentDiv.getElementsByTagName('table');
1960 |
for (j = 0; j < Table.length;j++){
1961 |
for (var k = 0; k < Table[j].rows.length; k++) {
1962 |
var cell = Table[j].rows[k].cells[0].textContent;
1963 |
if (cell.match(A_Language[C_Planet]+' ') || cell.match(A_Language[C_Moon]+' ')) {
1964 |
1965 |
// Recuperation du type de colonie (planete ou lune)
1966 |
if (cell.match(A_Language[C_Planet]+' ')) {
1967 |
A_Planet[PlanetSelectedIndex].Type = C_Planet;
1968 |
}
1969 |
else {
1970 |
A_Planet[PlanetSelectedIndex].Type = C_Moon;
1971 |
}
1972 |
1973 |
// Recuperation de l'adresse de l'image de planete en cours
1974 |
var Img = Table[j].getElementsByTagName('img')[0].src;
1975 |
if (Img.match('planeten') && A_Planet[PlanetSelectedIndex].Type == C_Planet) {
1976 |
A_Planet[PlanetSelectedIndex].ImageUrl = Img.replace(/planeten\//g, 'planeten/small/s_');
1977 |
}
1978 |
if (A_Planet[PlanetSelectedIndex].ImageUrl.match('mond')) {
1979 |
var Img = Table[j].getElementsByTagName('img')[1].src;
1980 |
if (Img.match('planeten') && A_Planet[PlanetSelectedIndex].Type == C_Planet) {
1981 |
A_Planet[PlanetSelectedIndex].ImageUrl = Img.replace(/planeten\//g, 'planeten/small/s_');
1982 |
}
1983 |
else {
1984 |
A_Planet[PlanetSelectedIndex].ImageUrl = '';
1985 |
}
1986 |
}
1987 |
1988 |
// Recuperation de l'adresse des images des autres planetes
1989 |
var ImgTable = Table[j].getElementsByTagName('table')[0];
1990 |
for (var r = 0; r < ImgTable.rows.length; r++) {
1991 |
for (var c = 0; c < ImgTable.rows[r].cells.length; c++) {
1992 |
var cell = ImgTable.rows[r].cells[c];
1993 |
if (cell.getElementsByTagName('a')[0]) {
1994 |
link = cell.getElementsByTagName('a')[0].href;
1995 |
link = link.match(/cp=([0-9]+)/);
1996 |
if (link) {
1997 |
for (i = 0; i < PlanetSelect.length; i++) {
1998 |
if (A_Planet[i].Id == link[1]) {
1999 |
Img = cell.getElementsByTagName('img')[0].src;
2000 |
if (Img.match('planeten')) {
2001 |
A_Planet[i].ImageUrl = Img;
2002 |
}
2003 |
}
2004 |
}
2005 |
}
2006 |
}
2007 |
}
2008 |
}
2009 |
}
2010 |
// Recuperation du nombre de cases (utilisees et total) et du diametre
2011 |
else if (cell.match(A_Language[C_Diameter])) {
2012 |
var cell = Table[j].rows[k].cells[1];
2013 |
Space = cell.textContent.match(/([0-9\.]+)([a-zA-Z \(]+)([0-9]+)([ \/]+)([0-9]+)/);
2014 |
if (Space) {
2015 |
A_Planet[PlanetSelectedIndex].Diameter = Space[1].replace('.', '');
2016 |
A_Planet[PlanetSelectedIndex].UsedSpace = Space[3];
2017 |
A_Planet[PlanetSelectedIndex].TotalSpace = Space[5];
2018 |
}
2019 |
}
2020 |
// Recuperation de la temperature (minimum et maximum)
2021 |
else if (cell.match(A_Language[C_Temperature])) {
2022 |
var cell = Table[j].rows[k].cells[1];
2023 |
Temp = cell.textContent.match(/([a-zA-Z\. ]+)([0-9\-]+)([a-zA-Z\260\340 ]+)([0-9\-]+)/);
2024 |
if (Temp) {
2025 |
A_Planet[PlanetSelectedIndex].MinTemperature = Temp[2];
2026 |
A_Planet[PlanetSelectedIndex].MaxTemperature = Temp[4];
2027 |
}
2028 |
break;
2029 |
}
2030 |
}
2031 |
break;
2032 |
}
2033 |
for (i = 0; i < PlanetSelect.length; i++) {
2034 |
SavePlanetInformations(i);
2035 |
}
2036 |
}
2037 |
}
2038 |
catch(err) {
2039 |
ShowError(err, 'Get informations from overview page');
2040 |
}
2041 |
}
2042 |
2043 |
2044 |
2045 |
2046 |
2047 |
/* PAGE DES PRE-REQUIS DE CONSTRUCTION (Recuperation des donnees et memorisation via GreaseMonkey)
2048 |
-------------------------------------------------- */
2049 |
2050 |
function SaveConstructionName() {
2051 |
var Value = '';
2052 |
for (i = 0; i < A_Construction.length; i++) {
2053 |
for (j = 0; j < A_Construction[i].length; j++) {
2054 |
Value += i+';'+j+';'+A_Construction[i][j].Name+'|';
2055 |
}
2056 |
}
2057 |
GM_setValue('OT_'+Account+'_ConstructionName', Value.substr(0,Value.length-1));
2058 |
}
2059 |
2060 |
if (OgamePage == 'techtree') {
2061 |
try {
2062 |
if (ContentDiv) {
2063 |
var Table = ContentDiv.getElementsByTagName('table');
2064 |
var Group = C_Buildings;
2065 |
var SpecialBuildings = 0;
2066 |
var i = 0;
2067 |
for (var n = 0; n < Table.length; n++) {
2068 |
var ResTable = Table[n];
2069 |
if (ResTable.rows[0].cells[1].textContent.match(A_Language[C_Require])) {
2070 |
for (var r = 1; r < ResTable.rows.length; r++) {
2071 |
if (ResTable.rows[r].cells[1].textContent.match(A_Language[C_Require])) {
2072 |
if (Group == C_Buildings) { Group = C_Research; SpecialBuildings=i; i=0; }
2073 |
else if (Group == C_Research) { Group = C_Fleets; i=0; }
2074 |
else if (Group == C_Fleets) { Group = C_Defenses; i=0;}
2075 |
else { Group = C_Buildings; i=SpecialBuildings; }
2076 |
}
2077 |
else if (ResTable.rows[r].cells[0].getElementsByTagName('a').length > 0) {
2078 |
var gid = ResTable.rows[r].cells[0].getElementsByTagName('a')[0].href.match(/gid=([\d]{1,3})/)[1];
2079 |
var name = ResTable.rows[r].cells[0].textContent.replace(/\[i\]/g,'').replace(/\n/g,'').replace(/^\s+/g,'').replace(/\s+$/g,'');
2080 |
var NotFound = true;
2081 |
for (j = 0; j < A_Construction[Group].length; j++) {
2082 |
if (gid == A_Construction[Group][j].Id) {
2083 |
A_Construction[Group][j].Name = name;
2084 |
i++;
2085 |
NotFound = false;
2086 |
break;
2087 |
}
2088 |
}
2089 |
if (NotFound == true) {
2090 |
A_Construction[Group][i].Name = null;
2091 |
}
2092 |
}
2093 |
}
2094 |
break;
2095 |
}
2096 |
}
2097 |
SaveConstructionName();
2098 |
}
2099 |
}
2100 |
catch(err) {
2101 |
ShowError(err, 'Get construction name');
2102 |
}
2103 |
}
2104 |
2105 |
2106 |
2107 |
2108 |
2109 |
/* PAGE RESSOURCES (Recuperation des donnees et memorisation via GreaseMonkey)
2110 |
-------------------------------------------------- */
2111 |
2112 |
function SavePlanetPourcent(PlanetIndex) {
2113 |
var GTime = new Date();
2114 |
var Value = 'Rate='+A_Pourcent[PlanetIndex].Rate+
2115 |
'|Metal='+A_Pourcent[PlanetIndex].Metal+
2116 |
'|Crystal='+A_Pourcent[PlanetIndex].Crystal+
2117 |
'|Deuterium='+A_Pourcent[PlanetIndex].Deuterium+
2118 |
'|Solar='+A_Pourcent[PlanetIndex].Solar+
2119 |
'|Fusion='+A_Pourcent[PlanetIndex].Fusion+
2120 |
'|Ship212='+A_Pourcent[PlanetIndex].Ship212+
2121 |
'|Update='+GTime.getTime();
2122 |
GM_setValue('OT_'+A_Planet[PlanetIndex].Id+'_Pourcent', Value);
2123 |
}
2124 |
2125 |
function SavePlanetProduction(PlanetIndex) {
2126 |
var GTime = new Date();
2127 |
var Value = 'Metal='+A_Production[PlanetIndex].Metal+
2128 |
'|Crystal='+A_Production[PlanetIndex].Crystal+
2129 |
'|Deuterium='+A_Production[PlanetIndex].Deuterium+
2130 |
'|MetalMax='+A_Production[PlanetIndex].MetalMax+
2131 |
'|CrystalMax='+A_Production[PlanetIndex].CrystalMax+
2132 |
'|DeuteriumMax='+A_Production[PlanetIndex].DeuteriumMax+
2133 |
'|Update='+GTime.getTime();
2134 |
GM_setValue('OT_'+A_Planet[PlanetIndex].Id+'_Production', Value);
2135 |
}
2136 |
2137 |
if (OgamePage == 'resources') {
2138 |
2139 |
try {
2140 |
if (PlanetSelectedIndex) {
2141 |
// Reinitialisation des variables
2142 |
A_Pourcent[PlanetSelectedIndex].Metal = '-';
2143 |
A_Pourcent[PlanetSelectedIndex].Crystal = '-';
2144 |
A_Pourcent[PlanetSelectedIndex].Deuterium = '-';
2145 |
A_Pourcent[PlanetSelectedIndex].Solar = '-';
2146 |
A_Pourcent[PlanetSelectedIndex].Fusion = '-';
2147 |
A_Pourcent[PlanetSelectedIndex].Ship212 = '-';
2148 |
A_Production[PlanetSelectedIndex].Metal = 0;
2149 |
A_Production[PlanetSelectedIndex].Crystal = 0;
2150 |
A_Production[PlanetSelectedIndex].Deuterium = 0;
2151 |
A_Production[PlanetSelectedIndex].MetalMax = 0;
2152 |
A_Production[PlanetSelectedIndex].CrystalMax = 0;
2153 |
A_Production[PlanetSelectedIndex].DeuteriumMax = 0;
2154 |
}
2155 |
2156 |
if (ContentDiv) {
2157 |
var NoRepeat;
2158 |
var ProductionRate = ContentDiv.innerHTML.match(A_Language[C_ProductionRate]+'([\\d\\.]+)');
2159 |
if (ProductionRate) {
2160 |
A_Pourcent[PlanetSelectedIndex].Rate = ProductionRate[1];
2161 |
}
2162 |
var Table = ContentDiv.getElementsByTagName('table');
2163 |
for (var n = 0; n < Table.length; n++) {
2164 |
var ResTable = ContentDiv.getElementsByTagName('table')[n];
2165 |
// nonenn
2166 |
if (ResTable.rows[0].cells[0].textContent.match(A_Language[C_ResourcesTableHeader])) {
2167 |
for (var r = 0; r < ResTable.rows.length; r++) {
2168 |
if (ResTable.rows[r].cells.length == 7) {
2169 |
var cell = ResTable.rows[r].cells[0];
2170 |
if (!cell.textContent.match(A_Construction[C_Fleets][10].Name)) {
2171 |
NoRepeat = -1
2172 |
for (j = 0; j < 5; j++) {
2173 |
if (cell.textContent.match(A_Construction[C_Buildings][j].Name)) {
2174 |
NoRepeat = j;
2175 |
}
2176 |
}
2177 |
if (cell.textContent.match(A_Construction[C_Buildings][NoRepeat].Name)) {
2178 |
var Options = ResTable.rows[r].cells[6].getElementsByTagName('select')[0].options;
2179 |
2180 |
for (var i = 0; i < 11; i++) {
2181 |
if (Options[i].selected == true) {
2182 |
if (NoRepeat == 0) {
2183 |
A_Pourcent[PlanetSelectedIndex].Metal = Options[i].value;
2184 |
NoRepeat++;
2185 |
break;
2186 |
}
2187 |
else if (NoRepeat == 1) {
2188 |
A_Pourcent[PlanetSelectedIndex].Crystal = Options[i].value;
2189 |
NoRepeat++;
2190 |
break;
2191 |
}
2192 |
else if (NoRepeat == 2) {
2193 |
A_Pourcent[PlanetSelectedIndex].Deuterium = Options[i].value;
2194 |
NoRepeat++;
2195 |
break;
2196 |
}
2197 |
else if (NoRepeat == 3) {
2198 |
A_Pourcent[PlanetSelectedIndex].Solar = Options[i].value;
2199 |
NoRepeat++;
2200 |
break;
2201 |
}
2202 |
else if (NoRepeat == 4) {
2203 |
A_Pourcent[PlanetSelectedIndex].Fusion = Options[i].value;
2204 |
NoRepeat++;
2205 |
break;
2206 |
}
2207 |
}
2208 |
}
2209 |
}
2210 |
}
2211 |
else if (cell.textContent.match(A_Construction[C_Fleets][10].Name)) {
2212 |
var Options = ResTable.rows[r].cells[6].getElementsByTagName('select')[0].options;
2213 |
for (var i = 0; i < 11; i++) {
2214 |
if (Options[i].selected == true) {
2215 |
A_Pourcent[PlanetSelectedIndex].Ship212 = Options[i].value;
2216 |
NoRepeat++;
2217 |
break;
2218 |
}
2219 |
}
2220 |
}
2221 |
}
2222 |
else if (ResTable.rows[r].cells.length == 5) {
2223 |
if (ResTable.rows[r].cells[0].textContent == A_Language[C_Total]+':') {
2224 |
A_Production[PlanetSelectedIndex].Metal = ResTable.rows[r].cells[1].textContent.replace(/\./g, '');
2225 |
A_Production[PlanetSelectedIndex].Crystal = ResTable.rows[r].cells[2].textContent.replace(/\./g, '');
2226 |
A_Production[PlanetSelectedIndex].Deuterium = ResTable.rows[r].cells[3].textContent.replace(/\./g, '');
2227 |
}
2228 |
}
2229 |
else if (ResTable.rows[r].cells.length == 6) {
2230 |
if (ResTable.rows[r].cells[5].innerHTML.match('action')) {
2231 |
A_Production[PlanetSelectedIndex].MetalMax = ResTable.rows[r].cells[1].textContent.replace(/\./g, '').replace(/k/g, '');
2232 |
A_Production[PlanetSelectedIndex].CrystalMax = ResTable.rows[r].cells[2].textContent.replace(/\./g, '').replace(/k/g, '');
2233 |
A_Production[PlanetSelectedIndex].DeuteriumMax = ResTable.rows[r].cells[3].textContent.replace(/\./g, '').replace(/k/g, '');
2234 |
}
2235 |
}
2236 |
}
2237 |
}
2238 |
}
2239 |
2240 |
SavePlanetPourcent(PlanetSelectedIndex);
2241 |
SavePlanetProduction(PlanetSelectedIndex);
2242 |
}
2243 |
}
2244 |
catch(err) {
2245 |
ShowError(err, 'Get informations from resources page (Pourcent and production)');
2246 |
}
2247 |
}
2248 |
2249 |
2250 |
2251 |
2252 |
2253 |
/* PAGE BATIMENT (Recuperation des donnees et memorisation via GreaseMonkey)
2254 |
-------------------------------------------------- */
2255 |
2256 |
function SavePlanetBuilding(PlanetIndex) {
2257 |
var UTime = new Date();
2258 |
var Value = '';
2259 |
for (j = 0; j < 18; j++) {
2260 |
Value += A_Construction[C_Buildings][j].Id+'='+A_Buildings[PlanetIndex][j].Level+'|'+
2261 |
A_Construction[C_Buildings][j].Id+'UC='+A_Buildings[PlanetIndex][j].UC+'|';
2262 |
}
2263 |
Value += 'Update='+UTime.getTime();
2264 |
GM_setValue('OT_'+A_Planet[PlanetIndex].Id+'_Buildings', Value);
2265 |
}
2266 |
2267 |
if (OgamePage == 'b_building') {
2268 |
2269 |
try {
2270 |
var ResourcesBuildingsUC = false;
2271 |
for (i = 0; i < 18; i++) {
2272 |
if ((i < 5 ) && (A_Buildings[PlanetSelectedIndex][i].UC > 0)) {
2273 |
ResourcesBuildingsUCIndex = i;
2274 |
BuildingsUCLevel = A_Buildings[PlanetSelectedIndex][i].Level;
2275 |
}
2276 |
if (A_Planet[PlanetSelectedIndex].Type == C_Planet) {
2277 |
if (i > 14) {
2278 |
A_Buildings[PlanetSelectedIndex][i].Level = '-';
2279 |
}
2280 |
else {
2281 |
if (A_Buildings[PlanetSelectedIndex][i].Level == '') {
2282 |
A_Buildings[PlanetSelectedIndex][i].Level = 0;
2283 |
}
2284 |
}
2285 |
}
2286 |
else { // Lune
2287 |
if ((i == 5) || ((i >= 7) && (i <= 10)) || (i >= 15)) {
2288 |
if (A_Buildings[PlanetSelectedIndex][i].Level == '') {
2289 |
A_Buildings[PlanetSelectedIndex][i].Level = 0;
2290 |
}
2291 |
}
2292 |
else {
2293 |
A_Buildings[PlanetSelectedIndex][i].Level = '-';
2294 |
}
2295 |
}
2296 |
A_Buildings[PlanetSelectedIndex][i].UC = '-';
2297 |
}
2298 |
2299 |
var Content = null;
2300 |
var Level = null;
2301 |
var Table = ContentDiv.getElementsByTagName('table')[0].getElementsByTagName('table')[0];
2302 |
2303 |
for (var r = 0; r < Table.rows.length; r++) {
2304 |
if (Table.rows[r].cells.length > 1) {
2305 |
if (Table.rows[r].cells.length == 2) {
2306 |
var cell = Table.rows[r].cells[0];
2307 |
var build = Table.rows[r].cells[1].innerHTML.match(/modus=remove/);
2308 |
}
2309 |
else {
2310 |
var cell = Table.rows[r].cells[1];
2311 |
var build = Table.rows[r].cells[2].innerHTML.match(/modus=remove/);
2312 |
}
2313 |
Content = cell.innerHTML.match(/\>([^\<]+)\<\/a\> \(([a-zA-Z]+) ([0-9]{1,2})/);
2314 |
if (Content) {
2315 |
Level = Content[3];
2316 |
}
2317 |
else {
2318 |
Content = cell.innerHTML.match(/\>([^\<]+)\<\/a\>\</);
2319 |
if (Content) Level = 0;
2320 |
}
2321 |
if (Content) {
2322 |
for (i = 0; i < 18; i++) {
2323 |
if (Content[i] == A_Construction[C_Buildings][i].Name) {
2324 |
if (build) {
2325 |
A_Buildings[PlanetSelectedIndex][i].UC = (parseInt(Level)+1);
2326 |
}
2327 |
else if ((A_Buildings[PlanetSelectedIndex][i].Level != Level) && (i < 5)) {
2328 |
ResourcesBuildingsUC = true;
2329 |
}
2330 |
A_Buildings[PlanetSelectedIndex][i].Level = Level;
2331 |
break;
2332 |
}
2333 |
}
2334 |
}
2335 |
}
2336 |
}
2337 |
SavePlanetBuilding(PlanetSelectedIndex);
2338 |
if ((ResourcesBuildingsUC == true) && (ShowRequestToUpdateResourcesPage == true) && (RefreshPlanetRest == 0) && (AutoUpdateRest == 0)) {
2339 |
if (confirm(A_Language[C_ResourcesBuildingsUC]) == true) {
2340 |
AddAction('window.location.replace(|'+BaseUrl+'?page=b_building&session='+Session+'&planet='+A_Planet[PlanetSelectedIndex].Id+'|)');
2341 |
window.setTimeout('window.location.replace(\''+ResourcesLink+'&cp='+A_Planet[PlanetSelectedIndex].Id+'\')', 2000);
2342 |
NotRun = true;
2343 |
}
2344 |
}
2345 |
}
2346 |
catch(err) {
2347 |
ShowError(err, 'Get informations from buildings page');
2348 |
}
2349 |
}
2350 |
2351 |
2352 |
2353 |
2354 |
2355 |
/* PAGE LABORATOIRE (Recuperation des donnees et memorisation via GreaseMonkey)
2356 |
-------------------------------------------------- */
2357 |
2358 |
function SaveTechnology() {
2359 |
var UTime = new Date();
2360 |
ResearchUpdate = UTime.getTime();
2361 |
var Value = '';
2362 |
for (j = 0; j < 16; j++) {
2363 |
Value += A_Construction[C_Research][j].Id+'='+A_Research[j].Level+'|'+
2364 |
A_Construction[C_Research][j].Id+'UC='+A_Research[j].UC+'|';
2365 |
}
2366 |
Value += 'Update='+ResearchUpdate;
2367 |
GM_setValue('OT_'+Account+'_Research', Value);
2368 |
}
2369 |
2370 |
if ((OgamePage == 'buildings') && (OgameMode == 'Forschung')) {
2371 |
2372 |
try {
2373 |
2374 |
var Content = null;
2375 |
var Level = null;
2376 |
var Table = ContentDiv.getElementsByTagName('table')[0].getElementsByTagName('table')[0];
2377 |
if (Table) {
2378 |
if (Table.rows.length > 0) {
2379 |
if ((Table.rows[0].cells.length != 3) && (Table.rows[0].cells.length != 2)) {
2380 |
Table = ContentDiv.getElementsByTagName('table')[0].getElementsByTagName('table')[1];
2381 |
}
2382 |
if (Table) {
2383 |
for (var r = 0; r < Table.rows.length; r++) {
2384 |
if (Table.rows[r].cells.length > 1) {
2385 |
if (Table.rows[r].cells.length == 2) {
2386 |
var cell = Table.rows[r].cells[0];
2387 |
var build = Table.rows[r].cells[1].textContent.match(/unbau=([^\;]+)cp=([\d]+)/);
2388 |
}
2389 |
else {
2390 |
var cell = Table.rows[r].cells[1];
2391 |
var build = Table.rows[r].cells[2].textContent.match(/unbau=([^\;]+)cp=([\d]+)/);
2392 |
}
2393 |
Content = cell.textContent.match(/([a-zA-Z \351\340]+) \(([a-zA-Z]+) ([0-9]{0,2})/);
2394 |
if (Content == null) {
2395 |
Content = cell.innerHTML.match(/\>([^\<]+)\<\/a\>\</);
2396 |
if (Content) Level = 0;
2397 |
}
2398 |
else {
2399 |
Level = Content[3];
2400 |
}
2401 |
if (Content) {
2402 |
for (j = 0; j < 16; j++) {
2403 |
// supers
2404 |
// alert (" "+ Content[1] +" -- "+ A_Construction[C_Research][j].Name +" ");
2405 |
if (Content[1] == A_Construction[C_Research][j].Name)
2406 |
{
2407 |
A_Research[j].Level = Level;
2408 |
if (build) {
2409 |
A_Research[j].UC = build[2];
2410 |
}
2411 |
else {
2412 |
A_Research[j].UC = '-';
2413 |
}
2414 |
}
2415 |
}
2416 |
}
2417 |
}
2418 |
}
2419 |
}
2420 |
}
2421 |
}
2422 |
SaveTechnology();
2423 |
}
2424 |
catch(err) {
2425 |
ShowError(err, 'Get informations from research page');
2426 |
}
2427 |
}
2428 |
2429 |
2430 |
2431 |
2432 |
2433 |
/* PAGE DEFENSE (Recuperation des donnees et memorisation via GreaseMonkey)
2434 |
------------------------------------------------- */
2435 |
2436 |
function SavePlanetDefenses(PlanetIndex) {
2437 |
var UTime = new Date();
2438 |
var Value = '';
2439 |
for (j = 0; j < 10; j++) {
2440 |
Value += A_Construction[C_Defenses][j].Id+'='+A_Defenses[PlanetIndex][j]+'|';
2441 |
}
2442 |
Value += 'Update='+UTime.getTime();
2443 |
GM_setValue('OT_'+A_Planet[PlanetIndex].Id+'_Defenses', Value);
2444 |
}
2445 |
2446 |
if ((OgamePage == 'buildings') && (OgameMode == 'Verteidigung')) {
2447 |
2448 |
try {
2449 |
for (j = 0; j < 10; j++) {
2450 |
A_Defenses[PlanetSelectedIndex][j] = 0;
2451 |
}
2452 |
2453 |
var Content = null;
2454 |
var Table = ContentDiv.getElementsByTagName('table')[0].getElementsByTagName('table')[0];
2455 |
2456 |
for (var r = 0; r < Table.rows.length; r++) {
2457 |
if (Table.rows[r].cells.length > 1) {
2458 |
if (Table.rows[r].cells.length == 2) {
2459 |
var cell = Table.rows[r].cells[0];
2460 |
}
2461 |
else {
2462 |
var cell = Table.rows[r].cells[1];
2463 |
}
2464 |
Content = null;
2465 |
if (cell.textContent.match(/([a-zA-Z \351\350\340\-]+) \( ([0-9\.]+) ([a-zA-Z])/)) {
2466 |
Content = cell.textContent.match(/([a-zA-Z \351\350\340\-]+) \( ([0-9\.]+) ([a-zA-Z])/)
2467 |
}
2468 |
else if (cell.textContent.match(/([a-zA-Z \351\350\340\-]+) \(([0-9\.]+) ([a-zA-Z])/)) {
2469 |
Content = cell.textContent.match(/([a-zA-Z \351\350\340\-]+) \(([0-9\.]+) ([a-zA-Z])/)
2470 |
}
2471 |
if (Content != null) {
2472 |
for (j = 0; j < 10; j++) {
2473 |
if (Content[1] == A_Construction[C_Defenses][j].Name) {
2474 |
A_Defenses[PlanetSelectedIndex][j] = Content[2].replace('.', '');
2475 |
}
2476 |
}
2477 |
}
2478 |
}
2479 |
}
2480 |
SavePlanetDefenses(PlanetSelectedIndex);
2481 |
2482 |
}
2483 |
catch(err) {
2484 |
ShowError(err, 'Get informations from defense page');
2485 |
}
2486 |
}
2487 |
2488 |
2489 |
2490 |
2491 |
2492 |
/* PAGE DEFENSE ET CHANTIER SPATIAL (Vaisseaux et defenses en construction) (Recuperation des donnees et memorisation via GreaseMonkey)
2493 |
------------------------------------------------- */
2494 |
2495 |
function SavePlanetFleetsDefensesUC(PlanetIndex) {
2496 |
var UTime = new Date();
2497 |
var Value = 'List=', n = 0;
2498 |
A_FleetsDefensesUC[PlanetIndex].List = '';
2499 |
for (j = 0; j < A_Ship.length; j++) {
2500 |
if (A_Ship[j].length > 0) {
2501 |
if (n&1 == 1) {
2502 |
A_FleetsDefensesUC[PlanetIndex].List += A_Ship[j]+':'+A_ShipNumber[j]+'<br>';
2503 |
}
2504 |
else {
2505 |
A_FleetsDefensesUC[PlanetIndex].List += '<font color="#ff9900">'+A_Ship[j]+':'+A_ShipNumber[j]+'</font><br>';
2506 |
}
2507 |
n++;
2508 |
}
2509 |
}
2510 |
Value += A_FleetsDefensesUC[PlanetIndex].List+'|Update='+UTime.getTime();
2511 |
A_FleetsDefensesUC[PlanetIndex].Update = UTime.getTime();
2512 |
GM_setValue('OT_'+A_Planet[PlanetIndex].Id+'_FleetsDefensesUC', Value);
2513 |
}
2514 |
2515 |
if ((OgamePage == 'buildings') && ((OgameMode == 'Verteidigung') || (OgameMode == 'Flotte'))) {
2516 |
try {
2517 |
var Script, Ship, ShipNumber;
2518 |
var A_Ship = new Array();
2519 |
var A_ShipNumber = new Array();
2520 |
if (document.getElementsByTagName('script').length > 0) {
2521 |
for (i = 0; i < document.getElementsByTagName('script').length; i++) {
2522 |
Script = document.getElementsByTagName('script')[i].innerHTML;
2523 |
if (Script.match('b = new Array')) {
2524 |
Script = Script.replace(/\",\"/g, '"').replace(/\"\"/g,'').match(/b = new Array\(([^\{]+)aa = /);
2525 |
Ship = String(Script[1]).match(/([^\)]+)/);
2526 |
ShipNumber = String(Script[1]).match(/\(([^\)]+)/);
2527 |
A_Ship = Ship[1].substr(1,Ship[1].length-1).split(/\"/);
2528 |
A_ShipNumber = ShipNumber[1].substr(1,ShipNumber[1].length-1).split(/\"/);
2529 |
break;
2530 |
}
2531 |
}
2532 |
}
2533 |
SavePlanetFleetsDefensesUC(PlanetSelectedIndex);
2534 |
}
2535 |
catch(err) {
2536 |
ShowError(err, 'Get defenses and ship under construction');
2537 |
}
2538 |
}
2539 |
2540 |
2541 |
2542 |
2543 |
2544 |
/* PAGE FLOTTE (Recuperation des donnees et memorisation via GreaseMonkey)
2545 |
-------------------------------------------------- */
2546 |
2547 |
function SavePlanetFleets(PlanetIndex) {
2548 |
var UTime = new Date();
2549 |
var Value = '';
2550 |
for (j = 0; j < 14; j++) {
2551 |
Value += A_Construction[C_Fleets][j].Id+'='+A_Fleets[PlanetIndex][j]+'|';
2552 |
}
2553 |
Value += 'Update='+UTime.getTime();
2554 |
GM_setValue('OT_'+A_Planet[PlanetIndex].Id+'_Fleets', Value);
2555 |
}
2556 |
2557 |
if (OgamePage == 'flotten1') {
2558 |
2559 |
try {
2560 |
// Mise en memoire des vaisseaux de la planete en cours de visualisation
2561 |
for (j = 0; j < 14; j++) {
2562 |
if (document.getElementsByName('maxship'+A_Construction[C_Fleets][j].Id).length) {
2563 |
A_Fleets[PlanetSelectedIndex][j] = document.getElementsByName('maxship'+A_Construction[C_Fleets][j].Id)[0].value;
2564 |
}
2565 |
else {
2566 |
A_Fleets[PlanetSelectedIndex][j] = 0;
2567 |
}
2568 |
}
2569 |
SavePlanetFleets(PlanetSelectedIndex);
2570 |
2571 |
}
2572 |
catch(err) {
2573 |
ShowError(err, 'Get informations from fleet page');
2574 |
}
2575 |
}
2576 |
2577 |
2578 |
2579 |
2580 |
2581 |
2582 |
/* REALISATION DES ACTIONS
2583 |
----------------------------------------------- */
2584 |
2585 |
if ((A_Actions.length > 0) && (NotRun == false)) {
2586 |
try {
2587 |
var Actions = '';
2588 |
if (A_Actions.length > 1) {
2589 |
for (i = 1; i < A_Actions.length; i++) {
2590 |
Actions += A_Actions[i]+'|';
2591 |
}
2592 |
Actions = Actions.substr(0, Actions.length-1);
2593 |
}
2594 |
GM_setValue('OT_'+Account+'_Actions', Actions);
2595 |
window.setTimeout(A_Actions[0], 1500);
2596 |
}
2597 |
catch(err) {
2598 |
ShowError(err, 'Run saved actions');
2599 |
}
2600 |
}
2601 |
2602 |
2603 |
2604 |
2605 |
2606 |
/* PANNEAU DE CONFIGURATION (Page Options)
2607 |
----------------------------------------------- */
2608 |
2609 |
unsafeWindow.LinkInfo = function() {
2610 |
alert(A_Language[C_KeyWordsInformations]);
2611 |
}
2612 |
2613 |
unsafeWindow.AddLink = function() {
2614 |
try {
2615 |
if (document.getElementById('AddLinkOption').getElementsByTagName('table')) {
2616 |
var ConfigTable = document.getElementById('AddLinkOption').getElementsByTagName('table')[0];
2617 |
var RowNumber = -1;
2618 |
for (j = 0; j < ConfigTable.rows.length; j++) {
2619 |
var Row = ConfigTable.rows[j];
2620 |
if (Row.cells[0].textContent == '') {
2621 |
if (Row.cells[0].getElementsByTagName('input')[0].name == 'AddLink') {
2622 |
RowNumber = j;
2623 |
}
2624 |
}
2625 |
}
2626 |
if (RowNumber >= 0) {
2627 |
NbLink = document.getElementsByName('NbLink')[0].value;
2628 |
document.getElementsByName('NbLink')[0].value = parseInt(NbLink)+1;
2629 |
var RowText = '<td class="c" colspan="2">'+A_Language[C_LinkNumber]+(parseInt(NbLink)+1)+' <input type="button" name="Delete'+NbLink+'" onclick="DeleteLink('+NbLink+');" value="'+A_Language[C_Delete]+'"></td>\n';
2630 |
ConfigTable.insertRow(RowNumber);
2631 |
ConfigTable.rows[RowNumber].innerHTML = RowText;
2632 |
RowText = '<th><input type="TEXT" name="LinkName'+NbLink+'" value=""></th><th>'+A_Language[C_LinkName]+'</th>\n';
2633 |
ConfigTable.insertRow(RowNumber+1);
2634 |
ConfigTable.rows[RowNumber+1].innerHTML = RowText;
2635 |
RowText = '<th><input type="TEXT" name="LinkUrl'+NbLink+'" value=""></th><th>'+A_Language[C_LinkUrl]+' <a style="cursor:pointer" onclick="LinkInfo()">?</a></th>\n';
2636 |
ConfigTable.insertRow(RowNumber+2);
2637 |
ConfigTable.rows[RowNumber+2].innerHTML = RowText;
2638 |
RowText = '<th><input type="TEXT" name="LinkPosition'+NbLink+'" value="" '+NoStringInput+' size="2"></th><th>'+A_Language[C_LinkPosition]+'</th>\n';
2639 |
ConfigTable.insertRow(RowNumber+3);
2640 |
ConfigTable.rows[RowNumber+3].innerHTML = RowText;
2641 |
RowText = '<th><input type="CHECKBOX" name="LinkNewWindow'+NbLink+'"></th><th>'+A_Language[C_LinkNewWindow]+'</th>\n';
2642 |
ConfigTable.insertRow(RowNumber+4);
2643 |
ConfigTable.rows[RowNumber+4].innerHTML = RowText;
2644 |
RowText = '<th><input type="TEXT" name="LinkTitle'+NbLink+'" value=""></th><th>'+A_Language[C_LinkTitle]+'</th>\n';
2645 |
ConfigTable.insertRow(RowNumber+5);
2646 |
ConfigTable.rows[RowNumber+5].innerHTML = RowText;
2647 |
}
2648 |
}
2649 |
}
2650 |
catch(err) {
2651 |
ShowError(err, 'AddLink(), options page');
2652 |
}
2653 |
}
2654 |
2655 |
unsafeWindow.DeleteLink = function(LinkNumber) {
2656 |
try {
2657 |
if (document.getElementById('AddLinkOption').getElementsByTagName('table')) {
2658 |
var ConfigTable = document.getElementById('AddLinkOption').getElementsByTagName('table')[0];
2659 |
var RowNumber = -1;
2660 |
for (j = 0; j < ConfigTable.rows.length; j++) {
2661 |
var Row = ConfigTable.rows[j];
2662 |
if (Row.cells[0].textContent.match(A_Language[C_LinkNumber]+(parseInt(LinkNumber)+1))) {
2663 |
RowNumber = j;
2664 |
}
2665 |
}
2666 |
2667 |
if (RowNumber >= 0) {
2668 |
NbLink = document.getElementsByName('NbLink')[0].value;
2669 |
document.getElementsByName('NbLink')[0].value = parseInt(NbLink)-1;
2670 |
ConfigTable.deleteRow(RowNumber+5);
2671 |
ConfigTable.deleteRow(RowNumber+4);
2672 |
ConfigTable.deleteRow(RowNumber+3);
2673 |
ConfigTable.deleteRow(RowNumber+2);
2674 |
ConfigTable.deleteRow(RowNumber+1);
2675 |
ConfigTable.deleteRow(RowNumber);
2676 |
for (j = (parseInt(LinkNumber)+1); j < NbLink; j++) {
2677 |
ConfigTable.rows[(RowNumber+(j-(parseInt(LinkNumber)+1))*6)].innerHTML = '<td class="c" colspan="2">'+A_Language[C_LinkNumber]+j+' <input type="button" name="Delete'+(j-1)+'" onclick="DeleteLink('+(j-1)+');" value="'+A_Language[C_Delete]+'"></td>\n';
2678 |
document.getElementsByName('LinkName'+j)[0].name = 'LinkName'+(j-1);
2679 |
document.getElementsByName('LinkUrl'+j)[0].name = 'LinkUrl'+(j-1);
2680 |
document.getElementsByName('LinkPosition'+j)[0].name = 'LinkPosition'+(j-1);
2681 |
document.getElementsByName('LinkNewWindow'+j)[0].name = 'LinkNewWindow'+(j-1);
2682 |
document.getElementsByName('LinkTitle'+j)[0].name = 'LinkTitle'+(j-1);
2683 |
}
2684 |
}
2685 |
}
2686 |
}
2687 |
catch(err) {
2688 |
ShowError(err, 'DeleteLink(), options page');
2689 |
}
2690 |
}
2691 |
2692 |
function SaveChangedParameter(SaveName, DefaultValue, Value) {
2693 |
if (DefaultValue != Value) {
2694 |
GMsetValue(SaveName, Value);
2695 |
}
2696 |
}
2697 |
unsafeWindow.SaveChangedParameter = SaveChangedParameter;
2698 |
2699 |
function SaveParameter() {
2700 |
try {
2701 |
var Value = ''
2702 |
2703 |
// Parametres generaux
2704 |
Value = 'ShowInKilo='+document.getElementsByName('ShowInKilo')[0].checked+'|';
2705 |
Value += 'ShowSecondForUpperUpdateTimeInDay='+document.getElementsByName('ShowSecondForUpperUpdateTimeInDay')[0].checked+'|';
2706 |
// Suppression des liens officier (Icones et lien)
2707 |
Value += 'DeleteOfficerLink='+document.getElementsByName('DeleteOfficerLink')[0].checked+'|';
2708 |
Value += 'DeleteTraderLink='+document.getElementsByName('DeleteTraderLink')[0].checked+'|';
2709 |
// Tri des membres de l'alliance
2710 |
for (j = 0; j < 6; j++) {
2711 |
if (document.getElementsByName('SortMember')[0].options[j].selected == true) {
2712 |
Value += 'SortMember='+j+'|';
2713 |
}
2714 |
}
2715 |
if (document.getElementsByName('SortOrder')[0].options[0].selected == true) {
2716 |
Value += 'SortMember=0|';
2717 |
}
2718 |
else {
2719 |
Value += 'SortMember=1|';
2720 |
}
2721 |
Value += 'AddToolTip='+document.getElementsByName('AddToolTip')[0].checked+'|';
2722 |
Value += 'ShowRequestToUpdateResourcesPage='+document.getElementsByName('ShowRequestToUpdateResourcesPage')[0].checked+'|';
2723 |
Value += 'ShowAutoUpdate='+document.getElementsByName('ShowAutoUpdate')[0].checked+'|';
2724 |
Value += 'UseRandomUpdateTime='+document.getElementsByName('UseRandomUpdateTime')[0].checked+'|';
2725 |
Value += 'AddImageVersion='+document.getElementsByName('AddImageVersion')[0].checked+'|';
2726 |
Value += 'Debug='+document.getElementsByName('Debug')[0].checked;
2727 |
GMsetValue('OT_'+Account+'_MainOption', Value);
2728 |
2729 |
// Affichage
2730 |
Value = 'ShowHeaderPlanetList='+document.getElementsByName('ShowHeaderPlanetList')[0].checked+'|';
2731 |
Value += 'ShowHeaderResourcesList='+document.getElementsByName('ShowHeaderResourcesList')[0].checked+'|';
2732 |
Value += 'AddResourcesTotal='+document.getElementsByName('AddResourcesTotal')[0].checked+'|';
2733 |
Value += 'ChangeHeaderPosition='+document.getElementsByName('ChangeHeaderPosition')[0].checked+'|';
2734 |
Value += 'HeaderPosition='+document.getElementsByName('HeaderPosition')[0].value+'|';
2735 |
Value += 'ChangeContentPosition='+document.getElementsByName('ChangeContentPosition')[0].checked+'|';
2736 |
Value += 'ContentPosition='+document.getElementsByName('ContentPosition')[0].value+'|';
2737 |
Value += 'AddCssCode='+((document.getElementById('CssDiv').style.display == 'none') ? false : true)+'|';
2738 |
SaveChangedParameter('OT_'+Account+'_CssCode', CssCode, document.getElementsByName('CssCode')[0].value);
2739 |
Value += 'AddJSCode='+((document.getElementById('JSDiv').style.display == 'none') ? false : true);
2740 |
SaveChangedParameter('OT_'+Account+'_JSCode', JSCode, document.getElementsByName('JSCode')[0].value);
2741 |
GMsetValue('OT_'+Account+'_ScreenOption', Value);
2742 |
2743 |
// Tableau des ressources
2744 |
Value = 'ShowHeaderResourcesTable='+document.getElementsByName('ShowHeaderResourcesTable')[0].checked+'|';
2745 |
Value += 'ShowPlanetName='+document.getElementsByName('ShowPlanetName')[0].checked+'|';
2746 |
Value += 'ShowCoordinates='+document.getElementsByName('ShowCoordinates')[0].checked+'|';
2747 |
Value += 'ShowTotal='+document.getElementsByName('ShowTotal')[0].checked+'|';
2748 |
Value += 'ShowDarkMatter='+document.getElementsByName('ShowDarkMatter')[0].checked+'|';
2749 |
Value += 'ShowTimeUpdate='+document.getElementsByName('ShowTimeUpdate')[0].checked+'|';
2750 |
Value += 'ShowResourcesOnlyActiveSession='+document.getElementsByName('ShowResourcesOnlyActiveSession')[0].checked+'|';
2751 |
Value += 'RealTimeResources='+document.getElementsByName('RealTimeResources')[0].checked+'|';
2752 |
Value += 'RealTimeResourcesDelay='+document.getElementsByName('RealTimeResourcesDelay')[0].value+'|';
2753 |
Value += 'HeaderSelectedPlanetStyle='+document.getElementsByName('HeaderSelectedPlanetStyle')[0].value+'|';
2754 |
var TransparencyTmp = document.getElementsByName('Transparency')[0].value;
2755 |
if (parseInt(TransparencyTmp) > 0) {
2756 |
Value += 'Transparency='+TransparencyTmp+'|';
2757 |
}
2758 |
else {
2759 |
Value += 'Transparency='+Transparency+'|';
2760 |
alert(A_Language[C_TransparencyError]);
2761 |
}
2762 |
for (var i = 0; i < 10; i++) {
2763 |
A_UpdateTimeColor[i] = 1000*document.getElementsByName('UpdateTimeColor'+i)[0].value;
2764 |
Value += 'UpdateTimeColor'+i+'='+A_UpdateTimeColor[i]+'|';
2765 |
}
2766 |
Value += 'PlanetOrder='+document.getElementById('PlanetOrder').checked;
2767 |
GMsetValue('OT_'+Account+'_ResourcesTableOption', Value);
2768 |
Value = '';
2769 |
for (var i = 0; i < PlanetSelect.length; i++) {
2770 |
Value += document.getElementsByName('PlanetOrder'+i)[0].value+'|';
2771 |
}
2772 |
GMsetValue('OT_'+Account+'_PlanetOrder', Value.substr(0,Value.length-1));
2773 |
2774 |
// Empire
2775 |
Value = 'ShowEmpire='+document.getElementsByName('ShowEmpire')[0].checked+'|';
2776 |
var EmpireMenuRowTmp = document.getElementsByName('EmpireMenuRow')[0].value;
2777 |
if (parseInt(EmpireMenuRowTmp) > 0) {
2778 |
Value += 'EmpireMenuRow='+EmpireMenuRowTmp+'|';
2779 |
}
2780 |
else {
2781 |
Value += 'EmpireMenuRow='+EmpireMenuRow+'|';
2782 |
alert(A_Language[C_EmpireRowError]+MenuDiv.getElementsByTagName('table')[0].rows.length+'.');
2783 |
}
2784 |
var EmpireLinkNameTmp = document.getElementsByName('EmpireLinkName')[0].value;
2785 |
if (EmpireLinkNameTmp.length > 0) {
2786 |
Value += 'EmpireLinkName='+EmpireLinkNameTmp+'|';
2787 |
}
2788 |
else {
2789 |
Value += 'EmpireLinkName='+EmpireLinkName+'|';
2790 |
alert(A_Language[C_EmpireTxtError]);
2791 |
}
2792 |
var EmpireIconSizeTmp = document.getElementsByName('EmpireIconSize')[0].value;
2793 |
if (parseInt(EmpireIconSizeTmp) > 0) {
2794 |
Value += 'EmpireIconSize='+EmpireIconSizeTmp+'|';
2795 |
}
2796 |
else {
2797 |
Value += 'EmpireIconSize='+EmpireIconSize+'|';
2798 |
alert(A_Language[C_EmpireSizeIconError]);
2799 |
}
2800 |
Value += 'UseRealTimeResourcesEmpire='+document.getElementsByName('UseRealTimeResourcesEmpire')[0].checked+'|'+
2801 |
'HideDefaultResourcesTable='+document.getElementsByName('HideDefaultResourcesTable')[0].checked+'|'+
2802 |
'ForceDisplayHeaderResourcesTableWithEmpire='+document.getElementsByName('ForceDisplayHeaderResourcesTableWithEmpire')[0].checked;
2803 |
GMsetValue('OT_'+Account+'_EmpireOption', Value);
2804 |
2805 |
// Transfert
2806 |
if (document.getElementsByName('TransferRatioSpeed')[0].value < 1) {
2807 |
document.getElementsByName('TransferRatioSpeed')[0].value = 1;
2808 |
}
2809 |
Value = 'UseRealTimeResources='+document.getElementsByName('UseRealTimeResources')[0].checked+'|'+
2810 |
'ForceResourcesTransferTableUpdate='+document.getElementsByName('ForceResourcesTransferTableUpdate')[0].checked+'|'+
2811 |
'ShowTransferTableIfActiveTransfer='+document.getElementsByName('ShowTransferTableIfActiveTransfer')[0].checked+'|'+
2812 |
'TransferRatioSpeed='+document.getElementsByName('TransferRatioSpeed')[0].value;
2813 |
GMsetValue('OT_'+Account+'_TransferOption', Value);
2814 |
2815 |
// Liens additionnels
2816 |
Value = '';
2817 |
NbLinkTmp = document.getElementsByName('NbLink')[0].value;
2818 |
var ValidLink = 0;
2819 |
var LinkName = '';
2820 |
var LinkUrl = '';
2821 |
var LinkPosition = 0;
2822 |
for (var j = 0; j < NbLinkTmp; j++) {
2823 |
LinkName = document.getElementsByName('LinkName'+ValidLink)[0].value;
2824 |
LinkUrl = document.getElementsByName('LinkUrl'+ValidLink)[0].value;
2825 |
LinkPosition = document.getElementsByName('LinkPosition'+ValidLink)[0].value;
2826 |
if ((LinkName.length > 0) && (LinkUrl.length > 0) && (parseInt(LinkPosition) > 0)) {
2827 |
Value += 'LinkName'+ValidLink+'='+LinkName+'|';
2828 |
Value += 'LinkUrl'+ValidLink+'='+LinkUrl+'|';
2829 |
Value += 'LinkPosition'+ValidLink+'='+LinkPosition+'|';
2830 |
Value += 'LinkNewWindow'+ValidLink+'='+document.getElementsByName('LinkNewWindow'+ValidLink)[0].checked+'|';
2831 |
Value += 'LinkTitle'+ValidLink+'='+document.getElementsByName('LinkTitle'+ValidLink)[0].value+'|';
2832 |
ValidLink = parseInt(ValidLink)+1;
2833 |
}
2834 |
else {
2835 |
alert(A_Language[C_LinkPositionError1]+(j+1)+A_Language[C_LinkPositionError2]+MenuDiv.getElementsByTagName('table')[0].rows.length+'.');
2836 |
}
2837 |
}
2838 |
GMsetValue('OT_'+Account+'_LinkOption', Value+'NbLink='+ValidLink);
2839 |
2840 |
// Actualisation de la page
2841 |
if ((NbLinkTmp == ValidLink) && (Transparency > 0) && (EmpireMenuRow > 0) && (EmpireLinkName.length > 0) && (EmpireIconSize > 0)) {
2842 |
window.setTimeout('window.location.replace(\''+BaseUrl+'?page=options&session='+Session+'\')', 500);
2843 |
}
2844 |
else {
2845 |
alert(A_Language[C_SaveParameterError]);
2846 |
}
2847 |
}
2848 |
catch(err) {
2849 |
ShowError(err, 'SaveParameter(), options page');
2850 |
}
2851 |
}
2852 |
unsafeWindow.SaveParameter = SaveParameter;
2853 |
2854 |
function HeaderOption(SubId, TitleId, Title) {
2855 |
try {
2856 |
return '<tr><td class="c" colspan="2" style="cursor:pointer" onclick="ScriptShowHide(\''+SubId+'\',\''+TitleId+'\',\''+Title.replace("'","\'+String.fromCharCode(39)+\'")+'\');window.location.replace(\'#'+TitleId+'\')"><span id="'+TitleId+'">'+Title+' <img src="'+C_ImgDown+'" alt="'+A_Language[C_Unfold]+'" '+((AddToolTip == true)?'title="'+A_Language[C_Unfold]+'"':'')+'></span></td></tr>\n'+
2857 |
'<tr><td colspan="2" style="padding:0" class="l"><div id="'+SubId+'" style="display:none"><table width="519px">\n';
2858 |
}
2859 |
catch(err) {
2860 |
ShowError(err, 'HeaderOption('+SubId+', '+TitleId+', '+Title+')');
2861 |
}
2862 |
}
2863 |
2864 |
function CheckBoxOption(Name, State, Description, DisableId) {
2865 |
try {
2866 |
if (DisableId) {
2867 |
return '<tr><th><input type="CHECKBOX" name="'+Name+'" '+((State == true) ? 'checked="CHECKED"' : '')+' onclick="if (this.checked == true) { document.getElementsByName(\''+DisableId+'\')[0].disabled = false; } else { document.getElementsByName(\''+DisableId+'\')[0].disabled = true; };"></th><th>'+Description+'</th></tr>\n';
2868 |
}
2869 |
else {
2870 |
return '<tr><th><input type="CHECKBOX" name="'+Name+'" '+((State == true) ? 'checked="CHECKED"' : '')+'></th><th>'+Description+'</th></tr>\n';
2871 |
}
2872 |
}
2873 |
catch(err) {
2874 |
ShowError(err, 'CheckBoxOption('+Name+', '+State+', '+Description+', '+DisableId+')');
2875 |
}
2876 |
}
2877 |
2878 |
function TextOption(Name, Value, Description, DisableCheckBox, Number, Size) {
2879 |
try {
2880 |
return '<tr><th><input type="TEXT" name="'+Name+'" value="'+Value+'" '+
2881 |
((DisableCheckBox!=undefined) ? ((DisableCheckBox == true) ? '' : 'disabled="DISABLED"') : '')+' '+
2882 |
((Number!=undefined) ? ((Number == true) ? NoStringInput : '') : '')+' '+
2883 |
((Size!=undefined) ? 'size="'+Size+'"' : '')+'></th><th>'+Description+'</th></tr>\n';
2884 |
}
2885 |
catch(err) {
2886 |
ShowError(err, 'TextOption('+Name+', '+Value+', '+Description+', '+DisableCheckBox+', '+Number+', '+Size+')');
2887 |
}
2888 |
}
2889 |
2890 |
function PermutPlanetOrder(Planet1, Planet2) {
2891 |
try {
2892 |
var Permut;
2893 |
var Planet1Value = document.getElementsByName('PlanetOrder'+Planet1)[0].value;
2894 |
var Planet2Value = document.getElementsByName('PlanetOrder'+Planet2)[0].value;
2895 |
document.getElementsByName('PlanetOrder'+Planet1)[0].value = Planet2Value;
2896 |
document.getElementsByName('PlanetOrder'+Planet2)[0].value = Planet1Value;
2897 |
Permut = document.getElementById('PlanetOrderLabel'+Planet1).textContent;
2898 |
document.getElementById('PlanetOrderLabel'+Planet1).textContent = document.getElementById('PlanetOrderLabel'+Planet2).textContent;
2899 |
document.getElementById('PlanetOrderLabel'+Planet2).textContent = Permut;
2900 |
document.getElementsByName('PlanetOrder')[Planet1].checked = false;
2901 |
document.getElementsByName('PlanetOrder')[Planet2].checked = true;
2902 |
}
2903 |
catch(err) {
2904 |
ShowError(err, 'PermutPlanetOrder('+Planet1+', '+Planet2+'), options page');
2905 |
}
2906 |
}
2907 |
unsafeWindow.PermutPlanetOrder = PermutPlanetOrder;
2908 |
2909 |
function ChangePlanetOrder(Direction) {
2910 |
try {
2911 |
var PlanetOrderSelected = 0, Permut;
2912 |
for (k = 0; k < PlanetSelect.length; k++) {
2913 |
if (document.getElementsByName('PlanetOrder')[k].checked == true) {
2914 |
PlanetOrderSelected = k;
2915 |
}
2916 |
}
2917 |
if (Direction == 1) {
2918 |
if (PlanetOrderSelected == PlanetSelect.length-1) {
2919 |
PermutPlanetOrder(PlanetOrderSelected,0);
2920 |
}
2921 |
else {
2922 |
PermutPlanetOrder(PlanetOrderSelected,(PlanetOrderSelected+1));
2923 |
}
2924 |
}
2925 |
else {
2926 |
if (PlanetOrderSelected == 0) {
2927 |
PermutPlanetOrder(PlanetOrderSelected,PlanetSelect.length-1);
2928 |
}
2929 |
else {
2930 |
PermutPlanetOrder(PlanetOrderSelected,(PlanetOrderSelected-1));
2931 |
}
2932 |
}
2933 |
}
2934 |
catch(err) {
2935 |
ShowError(err, 'ChangePlanetOrder('+Direction+'), options page');
2936 |
}
2937 |
}
2938 |
unsafeWindow.ChangePlanetOrder = ChangePlanetOrder;
2939 |
2940 |
if (OgamePage == 'options') {
2941 |
2942 |
try {
2943 |
// Creation du Div qui contiendra le panneau de configuration
2944 |
var ConfigContent = ContentDiv.getElementsByTagName('center')[0];
2945 |
var ConfigDiv = document.createElement('div');
2946 |
ConfigDiv.setAttribute('id','TransferResources');
2947 |
2948 |
// Generation du panneau de configuration
2949 |
var ConfigPanel = '<table width="519px" id="ConfigPanel">'+
2950 |
// Parametres generales
2951 |
HeaderOption('MainOption', 'MainOptionTitle', A_Language[C_MainOption])+
2952 |
CheckBoxOption('ShowInKilo', ShowInKilo, A_Language[C_ShowInKilo])+
2953 |
CheckBoxOption('ShowSecondForUpperUpdateTimeInDay', ShowSecondForUpperUpdateTimeInDay, A_Language[C_ShowSecondForUpperUpdateTimeInDay])+
2954 |
CheckBoxOption('DeleteOfficerLink', DeleteOfficerLink, A_Language[C_DeleteOfficerLink])+
2955 |
CheckBoxOption('DeleteTraderLink', DeleteTraderLink, A_Language[C_DeleteTraderLink])+
2956 |
'<tr><th><select name="SortMember" style="text-align:left"><option value="00" '+((SortMember == 0) ? 'selected="SELECTED"' : '')+'>'+A_Language[C_Coordinates]+'</option>\n'+
2957 |
'<option value="1" '+((SortMember == 1) ? 'selected="SELECTED"' : '')+'>'+A_Language[C_Name]+'</option>\n'+
2958 |
'<option value="2" '+((SortMember == 2) ? 'selected="SELECTED"' : '')+'>'+A_Language[C_Status]+'</option>\n'+
2959 |
'<option value="3" '+((SortMember == 3) ? 'selected="SELECTED"' : '')+'>'+A_Language[C_Points]+'</option>\n'+
2960 |
'<option value="4" '+((SortMember == 4) ? 'selected="SELECTED"' : '')+'>'+A_Language[C_MemberShip]+'</option>\n'+
2961 |
'<option value="5" '+((SortMember == 5) ? 'selected="SELECTED"' : '')+'>'+A_Language[C_Online]+'</option></th><th>'+A_Language[C_SortMember]+'</th></tr>\n'+
2962 |
'<tr><th><select name="SortOrder" style="text-align:left"><option value="00" '+((SortMember == 0) ? 'selected="SELECTED"' : '')+'>'+A_Language[C_Increasing]+'</option>\n'+
2963 |
'<option value="1" '+((SortOrder == 1) ? 'selected="SELECTED"' : '')+'>'+A_Language[C_Lessening]+'</option></th><th>'+A_Language[C_SortOrder]+'</th></tr>\n'+
2964 |
CheckBoxOption('AddToolTip', AddToolTip, A_Language[C_AddToolTip])+
2965 |
CheckBoxOption('ShowRequestToUpdateResourcesPage', ShowRequestToUpdateResourcesPage, A_Language[C_ShowRequestToUpdateResourcesPage])+
2966 |
CheckBoxOption('ShowAutoUpdate', ShowAutoUpdate, A_Language[C_ShowAutoUpdate])+
2967 |
CheckBoxOption('UseRandomUpdateTime', UseRandomUpdateTime, A_Language[C_UseRandomUpdateTime])+
2968 |
CheckBoxOption('AddImageVersion', AddImageVersion, A_Language[C_AddImageVersion])+
2969 |
CheckBoxOption('Debug', Debug, A_Language[C_Debug])+
2970 |
'</table></div></td></tr>'+
2971 |
// Affichage
2972 |
HeaderOption('ScreenOption', 'ScreenOptionTitle', A_Language[C_ScreenOption])+
2973 |
CheckBoxOption('ShowHeaderPlanetList', ShowHeaderPlanetList, A_Language[C_ShowHeaderPlanetList])+
2974 |
CheckBoxOption('ShowHeaderResourcesList', ShowHeaderResourcesList, A_Language[C_ShowHeaderResourcesList])+
2975 |
CheckBoxOption('AddResourcesTotal', AddResourcesTotal, A_Language[C_AddResourcesTotal])+
2976 |
CheckBoxOption('ChangeHeaderPosition', ChangeHeaderPosition, A_Language[C_ChangeHeaderPosition], 'HeaderPosition')+
2977 |
TextOption('HeaderPosition', HeaderPosition, A_Language[C_HeaderPosition]+' <a style="cursor:pointer" onclick="alert(\''+A_Language[C_PositionInformations].replace("'","\'+String.fromCharCode(39)+\'")+'\')">?</a>', ChangeHeaderPosition)+
2978 |
CheckBoxOption('ChangeContentPosition', ChangeContentPosition, A_Language[C_ChangeContentPosition], 'ContentPosition')+
2979 |
TextOption('ContentPosition', ContentPosition, A_Language[C_ContentPosition]+' <a style="cursor:pointer" onclick="alert(\''+A_Language[C_PositionInformations].replace("'","\'+String.fromCharCode(39)+\'")+'\')">?</a>', ChangeContentPosition)+
2980 |
'<tr><th colspan="2"><a style="cursor:pointer" onclick="document.getElementById(\'CssDiv\').style.display=((document.getElementById(\'CssDiv\').style.display == \'none\') ? \'\' : \'none\');this.innerHTML=((document.getElementById(\'CssDiv\').style.display == \'none\') ? \''+A_Language[C_AddCssCode].replace("'","\'+String.fromCharCode(39)+\'")+'\' : \''+A_Language[C_RemoveCssCode].replace("'","\'+String.fromCharCode(39)+\'")+'\')">'+((AddCssCode == true) ? A_Language[C_RemoveCssCode] : A_Language[C_AddCssCode])+'</a><br><div id="CssDiv" '+((AddCssCode == true) ? '' : 'style="display:none"')+'><textarea name="CssCode" rows="10" cols="40">'+CssCode+'</textarea></div></th></tr>\n'+
2981 |
'<tr><th colspan="2"><a style="cursor:pointer" onclick="document.getElementById(\'JSDiv\').style.display=((document.getElementById(\'JSDiv\').style.display == \'none\') ? \'\' : \'none\');this.innerHTML=((document.getElementById(\'JSDiv\').style.display == \'none\') ? \''+A_Language[C_AddJSCode].replace("'","\'+String.fromCharCode(39)+\'")+'\' : \''+A_Language[C_RemoveJSCode].replace("'","\'+String.fromCharCode(39)+\'")+'\')">'+((AddJSCode == true) ? A_Language[C_RemoveJSCode] : A_Language[C_AddJSCode])+'</a><br><div id="JSDiv" '+((AddJSCode == true) ? '' : 'style="display:none"')+'><textarea name="JSCode" rows="10" cols="40">'+JSCode+'</textarea></div></th></tr>\n'+
2982 |
'</table></div></td></tr>'+
2983 |
// Tableau des ressources
2984 |
HeaderOption('ResourcesTableOption', 'ResourcesTableOptionTitle', A_Language[C_ResourcesTableOption])+
2985 |
CheckBoxOption('ShowHeaderResourcesTable', ShowHeaderResourcesTable, A_Language[C_ShowHeaderResourcesTable])+
2986 |
CheckBoxOption('ShowPlanetName', ShowPlanetName, A_Language[C_ShowPlanetName])+
2987 |
CheckBoxOption('ShowCoordinates', ShowCoordinates, A_Language[C_ShowCoordinates])+
2988 |
CheckBoxOption('ShowTotal', ShowTotal, A_Language[C_ShowTotal])+
2989 |
CheckBoxOption('ShowDarkMatter', ShowDarkMatter, A_Language[C_ShowDarkMatter])+
2990 |
CheckBoxOption('ShowTimeUpdate', ShowTimeUpdate, A_Language[C_ShowTimeUpdate])+
2991 |
CheckBoxOption('ShowResourcesOnlyActiveSession', ShowResourcesOnlyActiveSession, A_Language[C_ShowResourcesOnlyActiveSession])+
2992 |
CheckBoxOption('RealTimeResources', RealTimeResources, A_Language[C_RealTimeResources])+
2993 |
TextOption('RealTimeResourcesDelay', RealTimeResourcesDelay, A_Language[C_RealTimeResourcesDelay], true, 3)+
2994 |
TextOption('HeaderSelectedPlanetStyle', HeaderSelectedPlanetStyle, A_Language[C_HeaderSelectedPlanetStyle])+
2995 |
TextOption('Transparency', Transparency, A_Language[C_Transparency], true, 2)+
2996 |
'<tr><td class="l" colspan="2"><table width="519">'+
2997 |
'<tr><th colspan="2">'+A_Language[C_UpdateTimeColor]+'</th></tr>'+
2998 |
'<tr><th><input type="TEXT" style="background-color: #00FF00; color: #000000;" name="UpdateTimeColor0" value="'+Math.round(A_UpdateTimeColor[0]/1000)+'" '+NoStringInput+' size="8"></th>\n'+
2999 |
'<th><input type="TEXT" style="background-color: #33FF00; color: #000000;" name="UpdateTimeColor1" value="'+Math.round(A_UpdateTimeColor[1]/1000)+'" '+NoStringInput+' size="8"></th></tr>\n'+
3000 |
'<tr><th><input type="TEXT" style="background-color: #66FF00; color: #000000;" name="UpdateTimeColor2" value="'+Math.round(A_UpdateTimeColor[2]/1000)+'" '+NoStringInput+' size="8"></th>\n'+
3001 |
'<th><input type="TEXT" style="background-color: #99FF00; color: #000000;" name="UpdateTimeColor3" value="'+Math.round(A_UpdateTimeColor[3]/1000)+'" '+NoStringInput+' size="8"></th></tr>\n'+
3002 |
'<tr><th><input type="TEXT" style="background-color: #CCFF00; color: #000000;" name="UpdateTimeColor4" value="'+Math.round(A_UpdateTimeColor[4]/1000)+'" '+NoStringInput+' size="8"></th>\n'+
3003 |
'<th><input type="TEXT" style="background-color: #FFFF00; color: #000000;" name="UpdateTimeColor5" value="'+Math.round(A_UpdateTimeColor[5]/1000)+'" '+NoStringInput+' size="8"></th></tr>\n'+
3004 |
'<tr><th><input type="TEXT" style="background-color: #FFCC00; color: #000000;" name="UpdateTimeColor6" value="'+Math.round(A_UpdateTimeColor[6]/1000)+'" '+NoStringInput+' size="8"></th>\n'+
3005 |
'<th><input type="TEXT" style="background-color: #FF9900; color: #000000;" name="UpdateTimeColor7" value="'+Math.round(A_UpdateTimeColor[7]/1000)+'" '+NoStringInput+' size="8"></th></tr>\n'+
3006 |
'<tr><th><input type="TEXT" style="background-color: #FF6600; color: #000000;" name="UpdateTimeColor8" value="'+Math.round(A_UpdateTimeColor[8]/1000)+'" '+NoStringInput+' size="8"></th>\n'+
3007 |
'<th><input type="TEXT" style="background-color: #FF3300; color: #000000;" name="UpdateTimeColor9" value="'+Math.round(A_UpdateTimeColor[9]/1000)+'" '+NoStringInput+' size="8"></th></tr>\n'+
3008 |
'<tr><th colspan="2">'+A_Language[C_UpdateTimeRed]+'</th></tr></table></th></tr>'+
3009 |
'<tr><td class="l" colspan="2"><table width="519">\n'+
3010 |
'<tr><th colspan="3"><input type="CHECKBOX" id="PlanetOrder" '+((PlanetOrder == true)?'checked="CHECKED"':'')+'><label for="PlanetOrder">'+A_Language[C_PlanetOrder]+'</label></th></tr>'+
3011 |
'<tr><th style="width:40% !important"><table width="100%">\n';
3012 |
for (i = 0; i < PlanetSelect.length; i++) {
3013 |
ConfigPanel += '<tr><th><input type="radio" name="PlanetOrder" id="PlanetOrderSelect'+i+'" '+(i==0?'checked="CHECKED"':'')+'>\n'+
3014 |
'<label for="PlanetOrderSelect'+i+'" id="PlanetOrderLabel'+i+'">'+A_Planet[i].Name+' ['+A_Planet[i].Galaxy+':'+A_Planet[i].System+':'+A_Planet[i].Planet+']</label>\n'+
3015 |
'<input type="hidden" name="PlanetOrder'+i+'" value="'+A_PlanetOrder[i]+'"></th></tr>\n';
3016 |
}
3017 |
ConfigPanel += '</table></th>\n'+
3018 |
'<th style="width:5% !important"><a style="cursor:pointer"><img src="'+C_ImgUp+'" alt="" onclick="ChangePlanetOrder(-1)"></a><br><br><a style="cursor:pointer"><img src="'+C_ImgDown+'" alt="" onclick="ChangePlanetOrder(1)"></a></th>\n'+
3019 |
'<th>'+A_Language[C_PlanetOrderDescription]+'</th></tr>\n'+
3020 |
'</table></td></tr></table></div></td></tr>\n'+
3021 |
// Empire
3022 |
HeaderOption('EmpireOption', 'EmpireOptionTitle', A_Language[C_Empire])+
3023 |
CheckBoxOption('ShowEmpire', ShowEmpire, A_Language[C_ShowEmpire])+
3024 |
TextOption('EmpireLinkName', EmpireLinkName, A_Language[C_EmpireLinkName])+
3025 |
TextOption('EmpireMenuRow', EmpireMenuRow, A_Language[C_EmpireMenuRow], true, 3)+
3026 |
TextOption('EmpireIconSize', EmpireIconSize, A_Language[C_EmpireIconSize], true, 3)+
3027 |
CheckBoxOption('UseRealTimeResourcesEmpire', UseRealTimeResourcesEmpire, A_Language[C_UseRealTimeResources])+
3028 |
CheckBoxOption('HideDefaultResourcesTable', HideDefaultResourcesTable, A_Language[C_HideDefaultResourcesTable])+
3029 |
CheckBoxOption('ForceDisplayHeaderResourcesTableWithEmpire', ForceDisplayHeaderResourcesTableWithEmpire, A_Language[C_ForceDisplayHeaderResourcesTableWithEmpire])+
3030 |
'</table></div></td></tr>'+
3031 |
// Transfert
3032 |
HeaderOption('TransferOption', 'TransferOptionTitle', A_Language[C_Transfer])+
3033 |
CheckBoxOption('UseRealTimeResources', UseRealTimeResources, A_Language[C_UseRealTimeResources])+
3034 |
CheckBoxOption('ForceResourcesTransferTableUpdate', ForceResourcesTransferTableUpdate, A_Language[C_ForceResourcesTransferTableUpdate])+
3035 |
CheckBoxOption('ShowTransferTableIfActiveTransfer', ShowTransferTableIfActiveTransfer, A_Language[C_ShowTransferTableIfActiveTransfer])+
3036 |
TextOption('TransferRatioSpeed', TransferRatioSpeed, A_Language[C_TransferRatioSpeed], true, 3)+
3037 |
'</table></div></td></tr>'+
3038 |
// Liens supplementaires
3039 |
HeaderOption('AddLinkOption', 'AddLinkOptionTitle', A_Language[C_LinkOption]);
3040 |
for (i = 0; i < NbLink; i++) {
3041 |
ConfigPanel += '<tr><td class="c" colspan="2">'+A_Language[C_LinkNumber]+(i+1)+' <input type="button" name="Delete'+i+'" onclick="DeleteLink('+i+');" value="'+A_Language[C_Delete]+'"></td></tr>\n'+
3042 |
TextOption('LinkName'+i, LinkNameArray[i], A_Language[C_LinkName])+
3043 |
TextOption('LinkUrl'+i, LinkUrlArray[i], A_Language[C_LinkUrl]+' <a style="cursor:pointer" onclick="LinkInfo()">?</a>')+
3044 |
TextOption('LinkPosition'+i, LinkPositionArray[i], A_Language[C_LinkPosition], true, 2)+
3045 |
CheckBoxOption('LinkNewWindow'+i, LinkNewWindowArray[i], A_Language[C_LinkNewWindow])+
3046 |
TextOption('LinkTitle'+i, LinkTitleArray[i], A_Language[C_LinkTitle]);
3047 |
}
3048 |
ConfigPanel += '<tr><th colspan="2"><input type="button" name="AddLink" value="'+A_Language[C_AddLink]+'" onclick="AddLink();"></th></tr></table></div></td></tr>\n'+
3049 |
'<tr><td class="c" colspan="2"><input type="button" value="'+A_Language[C_Save]+'" onclick="SaveParameter();"></td></tr></table><input type="hidden" name="NbLink" value="'+NbLink+'">\n';
3050 |
3051 |
// Modification du bouton sauvegarde de la page option
3052 |
if(document.getElementsByTagName('input')) {
3053 |
var InputList = document.getElementsByTagName('input');
3054 |
for (i = 0; i < InputList.length; i++) {
3055 |
if (InputList[i].type == 'submit') {
3056 |
InputList[i].setAttribute('onclick', 'SaveParameter()');
3057 |
}
3058 |
}
3059 |
}
3060 |
3061 |
// Creation de la barre d'entete du panneau et insertion du panneau de configuration genere precedemment
3062 |
var ConfigText = '<table width="519px"><tr><td class="c" onclick="ScriptShowHide(\'OgameTransfer\',\'OTTitle\',\''+A_Language[C_ControlPanel]+' - '+C_ScriptName+'\');window.location.replace(\'#OTTitle\')" style="cursor: pointer;"><span id="OTTitle">'+A_Language[C_ControlPanel]+' - '+C_ScriptName+' <img src="'+C_ImgDown+'" alt="'+A_Language[C_Unfold]+'" '+((AddToolTip == true)?'title="'+A_Language[C_Unfold]+'"':'')+'></span></td></tr></table>\n'+
3063 |
'<div id="OgameTransfer" style="display:none">'+ConfigPanel+'</div><br><br>';
3064 |
3065 |
ConfigDiv.innerHTML = ConfigText;
3066 |
3067 |
// Affichage du Div
3068 |
ConfigContent.appendChild(ConfigDiv);
3069 |
}
3070 |
catch(err) {
3071 |
ShowError(err, 'Control panel, options page');
3072 |
}
3073 |
}
3074 |
3075 |
3076 |
3077 |
3078 |
3079 |
/* MODIFICATION LIEN 'Liste des membres' pour tri des membres
3080 |
----------------------------------------------- */
3081 |
3082 |
if (OgamePage == 'allianzen') {
3083 |
try {
3084 |
if (!window.location.href.match(/a=([0-9]{1,2})/)) {
3085 |
var AllyLink = ContentDiv.getElementsByTagName('a');
3086 |
for (var i = 0; i < AllyLink.length; i++) {
3087 |
if (AllyLink[i].href.match(/a=([0-9]{1,2})/)) {
3088 |
var AllyA = AllyLink[i].href.match(/a=([0-9]{1,2})/)[1];
3089 |
if (AllyA == '4') {
3090 |
AllyLink[i].href = AllyLink[i].href+'&sort1='+SortMember+'&sort2='+SortOrder;
3091 |
break;
3092 |
}
3093 |
}
3094 |
}
3095 |
}
3096 |
}
3097 |
catch(err) {
3098 |
ShowError(err, 'Add alliance\'s members sorting');
3099 |
}
3100 |
}
3101 |
3102 |
3103 |
3104 |
3105 |
3106 |
/* CORRECTION LIEN OVERLIB PAGE GALAXIE (FR)
3107 |
----------------------------------------------- */
3108 |
3109 |
if ((OgamePage == 'galaxy') && (ContentDiv) && (Language == 1)) {
3110 |
try{
3111 |
if (ContentDiv.getElementsByTagName('th').length > 0) {
3112 |
for (var i = 0; i < ContentDiv.getElementsByTagName('th').length; i++) {
3113 |
var Cell = ContentDiv.getElementsByTagName('th')[i];
3114 |
if (Cell.getElementsByTagName('a').length > 0) {
3115 |
var Link = Cell.getElementsByTagName('a')[0];
3116 |
if (Link.style.cursor == 'pointer') {
3117 |
if (Cell.innerHTML.match(/alliance/g)) {
3118 |
var OverLibLink = Cell.innerHTML.match(/onmouseover=\"([^\"]+)\"([^\>]+)\>([^\0]+)/);
3119 |
var NewLink = document.createElement('a');
3120 |
NewLink.setAttribute('style','cursor:pointer');
3121 |
NewLink.setAttribute('onmouseover',OverLibLink[1].replace(/\'alliance/g, "\\\'alliance"));
3122 |
NewLink.setAttribute('onmouseout','return nd();');
3123 |
NewLink.innerHTML = OverLibLink[3].replace(/\<\/a\>/g,"")+'</a>';
3124 |
Cell.innerHTML = '';
3125 |
Cell.appendChild(NewLink);
3126 |
}
3127 |
}
3128 |
}
3129 |
}
3130 |
}
3131 |
}
3132 |
catch(err) {
3133 |
ShowError(err, 'Correct an error on ogame fr galaxy page');
3134 |
}
3135 |
}
3136 |
3137 |
3138 |
3139 |
3140 |
3141 |
/* MISE A JOUR AUTOMATIQUE
3142 |
-------------------------------------------------- */
3143 |
3144 |
function AutoUpdate() {
3145 |
GMsetRefreshValue((PlanetSelect.length-1),5);
3146 |
window.setTimeout('window.location.replace(\''+BaseUrl+'?page=overview&session='+Session+'&cp='+A_Planet[PlanetSelectedIndex].Id+'\')', 100);
3147 |
}
3148 |
unsafeWindow.AutoUpdate = AutoUpdate;
3149 |
3150 |
function StopUpdate() {
3151 |
GMsetRefreshValue(0,0);
3152 |
window.setTimeout('window.location.replace(\''+BaseUrl+'?page=overview&session='+Session+'&cp='+A_Planet[PlanetSelectedIndex].Id+'\')', 100);
3153 |
}
3154 |
unsafeWindow.StopUpdate = StopUpdate;
3155 |
3156 |
try {
3157 |
if ((RefreshPlanetRest == 0) && (AutoUpdateRest > 0)) {
3158 |
GMsetRefreshValue((PlanetSelect.length-1),(AutoUpdateRest-1));
3159 |
RefreshPlanetRest = 0;
3160 |
if (AutoUpdateRest == 5) {
3161 |
window.setTimeout('window.location.replace(\''+BaseUrl+'?page=b_building&session='+Session+'&cp='+A_Planet[PlanetSelectedIndex].Id+'\')', ((UseRandomUpdateTime == true) ? Math.round(Math.random()*1+2) : 5));
3162 |
}
3163 |
else if (AutoUpdateRest == 4) {
3164 |
window.setTimeout('window.location.replace(\''+BaseUrl+'?page=resources&session='+Session+'&cp='+A_Planet[PlanetSelectedIndex].Id+'\')', ((UseRandomUpdateTime == true) ? Math.round(Math.random()*1+2) : 5));
3165 |
}
3166 |
else if (AutoUpdateRest == 3) {
3167 |
GMsetRefreshValue(0,(AutoUpdateRest-1));
3168 |
var LabMax = 0, PlanetLabMax = 0;
3169 |
for (i = 0; i < PlanetSelect.length; i++) {
3170 |
if (A_Buildings[i][11].Level > LabMax) {
3171 |
LabMax = A_Buildings[i][11].Level;
3172 |
PlanetLabMax = i;
3173 |
}
3174 |
}
3175 |
window.setTimeout('window.location.replace(\''+BaseUrl+'?page=buildings&mode=Forschung&session='+Session+'&cp='+A_Planet[PlanetLabMax].Id+'\')', ((UseRandomUpdateTime == true) ? Math.round(Math.random()*1+2) : 5));
3176 |
}
3177 |
else if (AutoUpdateRest == 2) {
3178 |
window.setTimeout('window.location.replace(\''+BaseUrl+'?page=flotten1&session='+Session+'&cp='+A_Planet[PlanetSelectedIndex].Id+'\')', ((UseRandomUpdateTime == true) ? Math.round(Math.random()*1+2) : 5));
3179 |
}
3180 |
else {
3181 |
window.setTimeout('window.location.replace(\''+BaseUrl+'?page=buildings&mode=Verteidigung&session='+Session+'&cp='+A_Planet[PlanetSelectedIndex].Id+'\')', ((UseRandomUpdateTime == true) ? Math.round(Math.random()*1+2) : 5));
3182 |
}
3183 |
}
3184 |
}
3185 |
catch(err) {
3186 |
ShowError(err, 'Automatic update');
3187 |
}
3188 |
3189 |
3190 |
3191 |
3192 |
/* AFFICHAGE DU TABLEAU DE RESSOURCES
3193 |
----------------------------------------------- */
3194 |
3195 |
function RefreshPlanet() {
3196 |
try {
3197 |
GMsetRefreshValue((PlanetSelect.length-1),AutoUpdateRest);
3198 |
if (PlanetSelectedIndex == (PlanetSelect.length-1)) {
3199 |
window.setTimeout('window.location.replace(\''+A_Planet[0].Url+'\')', ((UseRandomUpdateTime == true) ? Math.round(Math.random()*1+2) : 5));
3200 |
}
3201 |
else {
3202 |
window.setTimeout('window.location.replace(\''+A_Planet[(PlanetSelectedIndex+1)].Url+'\')', ((UseRandomUpdateTime == true) ? Math.round(Math.random()*1+2) : 5));
3203 |
}
3204 |
}
3205 |
catch(err) {
3206 |
ShowError(err, 'RefreshPlanet()');
3207 |
}
3208 |
}
3209 |
unsafeWindow.RefreshPlanet = RefreshPlanet;
3210 |
3211 |
function CalcRealTimeResources() {
3212 |
try {
3213 |
Counter = new Date();
3214 |
A_RealTimeResources = new Array(PlanetSelect.length+1);
3215 |
A_RealTimeResources[PlanetSelect.length] = new P_RealTimeResources();
3216 |
A_RealTimeResources[PlanetSelect.length].Metal = 0;
3217 |
A_RealTimeResources[PlanetSelect.length].Crystal = 0;
3218 |
A_RealTimeResources[PlanetSelect.length].Deuterium = 0;
3219 |
for (var k = 0; k < PlanetSelect.length; k++) {
3220 |
if ((A_Resources[k].Metal != undefined) && (A_Resources[k].Metal != '-')) {
3221 |
A_RealTimeResources[k] = new P_RealTimeResources();
3222 |
var Time = Math.round((Counter.getTime()-A_Resources[k].Update)/1000);
3223 |
A_RealTimeResources[k].Metal = Math.round(parseInt(A_Resources[k].Metal)+(Time*(A_Production[k].Metal/3600)));
3224 |
if (A_RealTimeResources[k].Metal > A_Production[k].MetalMax*1000) {
3225 |
if (parseInt(A_Resources[k].Metal) > A_Production[k].MetalMax*1000) {
3226 |
A_RealTimeResources[k].Metal = parseInt(A_Resources[k].Metal);
3227 |
}
3228 |
else {
3229 |
A_RealTimeResources[k].Metal = A_Production[k].MetalMax*1000;
3230 |
}
3231 |
if (A_Planet[k].Type == C_Planet) {
3232 |
document.getElementById('Metal'+k).style.textDecoration = 'blink';
3233 |
}
3234 |
}
3235 |
A_RealTimeResources[PlanetSelect.length].Metal = A_RealTimeResources[PlanetSelect.length].Metal+A_RealTimeResources[k].Metal;
3236 |
A_RealTimeResources[k].Crystal = Math.round(parseInt(A_Resources[k].Crystal)+(Time*(A_Production[k].Crystal/3600)));
3237 |
if (A_RealTimeResources[k].Crystal > A_Production[k].CrystalMax*1000) {
3238 |
if (parseInt(A_Resources[k].Crystal) > A_Production[k].CrystalMax*1000) {
3239 |
A_RealTimeResources[k].Crystal = parseInt(A_Resources[k].Crystal);
3240 |
}
3241 |
else {
3242 |
A_RealTimeResources[k].Crystal = A_Production[k].CrystalMax*1000;
3243 |
}
3244 |
if (A_Planet[k].Type == C_Planet) {
3245 |
document.getElementById('Crystal'+k).style.textDecoration = 'blink';
3246 |
}
3247 |
}
3248 |
A_RealTimeResources[PlanetSelect.length].Crystal = A_RealTimeResources[PlanetSelect.length].Crystal+A_RealTimeResources[k].Crystal;
3249 |
A_RealTimeResources[k].Deuterium = Math.round(parseInt(A_Resources[k].Deuterium)+(Time*(A_Production[k].Deuterium/3600)));
3250 |
if (A_RealTimeResources[k].Deuterium > A_Production[k].DeuteriumMax*1000) {
3251 |
if (parseInt(A_Resources[k].Deuterium) > A_Production[k].DeuteriumMax*1000) {
3252 |
A_RealTimeResources[k].Deuterium = parseInt(A_Resources[k].Deuterium);
3253 |
}
3254 |
else {
3255 |
A_RealTimeResources[k].Deuterium = A_Production[k].DeuteriumMax*1000;
3256 |
}
3257 |
if (A_Planet[k].Type == C_Planet) {
3258 |
document.getElementById('Deuterium'+k).style.textDecoration = 'blink';
3259 |
}
3260 |
}
3261 |
A_RealTimeResources[PlanetSelect.length].Deuterium = A_RealTimeResources[PlanetSelect.length].Deuterium+A_RealTimeResources[k].Deuterium
3262 |
if (document.getElementById('ResourcesDiv')) {
3263 |
var Table = document.getElementById('ResourcesDiv').getElementsByTagName('table')[0];
3264 |
if ((Table) && (RealTimeResources==true)) {
3265 |
document.getElementById('Metal'+k).innerHTML = FormatNb(A_RealTimeResources[k].Metal);
3266 |
document.getElementById('Crystal'+k).innerHTML = FormatNb(A_RealTimeResources[k].Crystal);
3267 |
document.getElementById('Deuterium'+k).innerHTML = FormatNb(A_RealTimeResources[k].Deuterium);
3268 |
var Color = PlanetTimeUpdate(k,false,true);
3269 |
Table.rows[1].cells[(k+1)].style.background = Color;
3270 |
Table.rows[2].cells[(k+1)].style.background = Color;
3271 |
Table.rows[3].cells[(k+1)].style.background = Color;
3272 |
Table.rows[4].cells[(k+1)].style.background = Color;
3273 |
if (ShowTimeUpdate == true) {
3274 |
document.getElementById('Update'+k).innerHTML = FormatTime(Time*1000);
3275 |
Table.rows[5].cells[(k+1)].style.background = Color;
3276 |
}
3277 |
}
3278 |
}
3279 |
}
3280 |
}
3281 |
if ((Table) && (ShowTotal==true) && (RealTimeResources == true)) {
3282 |
document.getElementById('MetalTotal').innerHTML = FormatNb(A_RealTimeResources[PlanetSelect.length].Metal);
3283 |
document.getElementById('CrystalTotal').innerHTML = FormatNb(A_RealTimeResources[PlanetSelect.length].Crystal);
3284 |
document.getElementById('DeuteriumTotal').innerHTML = FormatNb(A_RealTimeResources[PlanetSelect.length].Deuterium);
3285 |
}
3286 |
if (RealTimeResources == true) {
3287 |
window.setTimeout('CalcRealTimeResources()', RealTimeResourcesDelay*1000);
3288 |
}
3289 |
}
3290 |
catch(err) {
3291 |
ShowError(err, 'CalcRealTimeResources()');
3292 |
}
3293 |
}
3294 |
unsafeWindow.CalcRealTimeResources = CalcRealTimeResources;
3295 |
3296 |
if (RefreshPlanetRest > 0) {
3297 |
try {
3298 |
GMsetRefreshValue((RefreshPlanetRest-1),AutoUpdateRest);
3299 |
if (PlanetSelectedIndex == (PlanetSelect.length-1)) {
3300 |
window.setTimeout('window.location.replace(\''+A_Planet[0].Url+'\')', ((UseRandomUpdateTime == true) ? Math.round(Math.random()*1+2) : 5));
3301 |
}
3302 |
else {
3303 |
window.setTimeout('window.location.replace(\''+A_Planet[(PlanetSelectedIndex+1)].Url+'\')', ((UseRandomUpdateTime == true) ? Math.round(Math.random()*1+2) : 5));
3304 |
}
3305 |
}
3306 |
catch(err) {
3307 |
ShowError(err, 'Refresh overview page of all planets');
3308 |
}
3309 |
}
3310 |
3311 |
function ShowHideColumn(Id) {
3312 |
try {
3313 |
if (Id < PlanetSelect.length) {
3314 |
if (document.getElementById('Planet'+Id).style.display == 'none') {
3315 |
var Display = '';
3316 |
document.getElementById('ImgShowHide'+Id).src = C_ImgLeft;
3317 |
if (AddToolTip == true) document.getElementById('ImgShowHide'+Id).title = A_Language[C_Hide]+' '+A_Planet[Id].Name;
3318 |
}
3319 |
else {
3320 |
var Display = 'none';
3321 |
document.getElementById('ImgShowHide'+Id).src = C_ImgRight;
3322 |
if (AddToolTip == true) document.getElementById('ImgShowHide'+Id).title = A_Language[C_Show]+' '+A_Planet[Id].Name;
3323 |
}
3324 |
document.getElementById('Planet'+Id).style.display = Display;
3325 |
document.getElementById('Metal'+Id).style.display = Display;
3326 |
document.getElementById('Crystal'+Id).style.display = Display;
3327 |
document.getElementById('Deuterium'+Id).style.display = Display;
3328 |
document.getElementById('Energy'+Id).style.display = Display;
3329 |
if (ShowTimeUpdate == true) {
3330 |
document.getElementById('Update'+Id).style.display = Display;
3331 |
}
3332 |
}
3333 |
// Colonne total
3334 |
else if ((Id == PlanetSelect.length)&& (document.getElementById('Total'))) {
3335 |
if (document.getElementById('Total').style.display == 'none') {
3336 |
var Display = '';
3337 |
document.getElementById('ImgShowHide'+Id).src = C_ImgLeft;
3338 |
if (AddToolTip == true) document.getElementById('ImgShowHide'+Id).title = A_Language[C_Hide]+' '+A_Language[C_Total];
3339 |
}
3340 |
else {
3341 |
var Display = 'none';
3342 |
document.getElementById('ImgShowHide'+Id).src = C_ImgRight;
3343 |
if (AddToolTip == true) document.getElementById('ImgShowHide'+Id).title = A_Language[C_Show]+' '+A_Language[C_Total];
3344 |
}
3345 |
document.getElementById('Total').style.display = Display;
3346 |
document.getElementById('MetalTotal').style.display = Display;
3347 |
document.getElementById('CrystalTotal').style.display = Display;
3348 |
document.getElementById('DeuteriumTotal').style.display = Display;
3349 |
}
3350 |
// Colonne antimatiere
3351 |
else if (document.getElementById('DarkMatterTitle')) {
3352 |
if (document.getElementById('DarkMatterTitle').style.display == 'none') {
3353 |
var Display = '';
3354 |
document.getElementById('ImgShowHide'+Id).src = C_ImgLeft;
3355 |
if (AddToolTip == true) document.getElementById('ImgShowHide'+Id).title = A_Language[C_Hide]+' '+A_Language[C_DarkMatter];
3356 |
}
3357 |
else {
3358 |
var Display = 'none';
3359 |
document.getElementById('ImgShowHide'+Id).src = C_ImgRight;
3360 |
if (AddToolTip == true) document.getElementById('ImgShowHide'+Id).title = A_Language[C_Show]+' '+A_Language[C_DarkMatter];
3361 |
}
3362 |
document.getElementById('DarkMatterTitle').style.display = Display;
3363 |
document.getElementById('DarkMatterValue').style.display = Display;
3364 |
}
3365 |
// Memorisation
3366 |
var Value = '';
3367 |
for (j = 0; j < PlanetSelect.length; j++) {
3368 |
Value += document.getElementById('Planet'+j).style.display+';|';
3369 |
}
3370 |
Value += ((document.getElementById('Total'))?document.getElementById('Total').style.display:'')+';|'+
3371 |
((document.getElementById('DarkMatterTitle'))?document.getElementById('DarkMatterTitle').style.display+';':';');
3372 |
GMsetValue('OT_'+Account+'_ShowHideColumn', Value);
3373 |
}
3374 |
catch(err) {
3375 |
ShowError(err, 'ShowHideColumn('+Id+')');
3376 |
}
3377 |
}
3378 |
unsafeWindow.ShowHideColumn = ShowHideColumn;
3379 |
3380 |
// Affichage du tableau de ressources en entete
3381 |
if (((ShowHeaderResourcesTable == true) || ((ForceDisplayHeaderResourcesTableWithEmpire == true) && (OgameEmpire == true))) && (OgamePage != 'galaxy') && (HeaderDiv)) {
3382 |
3383 |
try {
3384 |
//Initialisation des variables
3385 |
var ResourcesDiv = document.createElement('div');
3386 |
ResourcesDiv.setAttribute('id','ResourcesDiv');
3387 |
var PlanetTd = '';
3388 |
var MetalTd = '';
3389 |
var CrystalTd = '';
3390 |
var DeuteriumTd = '';
3391 |
var EnergieTd = '';
3392 |
var TimeUpdateTd = '';
3393 |
var TimeUpdate = '';
3394 |
var MetalTotal = 0;
3395 |
var CrystalTotal = 0;
3396 |
var DeuteriumTotal = 0;
3397 |
var Coordinates = '';
3398 |
3399 |
if (RealTimeResources == true) {
3400 |
window.setTimeout('CalcRealTimeResources()', 1000);
3401 |
}
3402 |
3403 |
// Generation des donnees du tableau
3404 |
for (var i = 0; i < PlanetSelect.length; i++) {
3405 |
3406 |
// Creation de l'entete du tableau d'apercu du stock et du tableau de resultat du calcul
3407 |
Coordinates = '['+A_Planet[i].Galaxy+':'+A_Planet[i].System+':'+A_Planet[i].Planet+']';
3408 |
3409 |
if (i == PlanetSelectedIndex) {
3410 |
PlanetTd += '<th align="center" id="PlanetSelected"><div id="Planet'+i+'" style="display:'+A_ShowHideColomn[i]+'"><a style="cursor:pointer" onclick="GMsetRefreshValue('+OgameEmpire+','+RefreshPlanetRest+','+AutoUpdateRest+');SaveTransfer();window.location.replace(\''+A_Planet[i].Url+'\');" '+((AddToolTip == true)?'title="'+Coordinates+'"':'')+'>'+((ShowPlanetName == true)?A_Planet[i].Name:'')+(((ShowPlanetName == true) && (ShowCoordinates == true))?'<br>':'')+((ShowCoordinates == true)?Coordinates:'')+'</a></div></th>\n'+
3411 |
'<td class="c" style="width:7px! important;cursor:pointer" onclick="javascript:ShowHideColumn('+i+')"><img id="ImgShowHide'+i+'" src="'+((A_ShowHideColomn[i] == 'none;')?C_ImgRight:C_ImgLeft)+'" alt="'+((A_ShowHideColomn[i] == 'none;')?A_Language[C_Show]:A_Language[C_Hide])+' '+A_Planet[i].Name+'" '+((AddToolTip == true)?'title="'+((A_ShowHideColomn[i] == 'none;')?A_Language[C_Show]:A_Language[C_Hide])+' '+A_Planet[i].Name+'"':'')+'></td>\n';
3412 |
}
3413 |
else {
3414 |
PlanetTd += '<td class="c" align="center"><div id="Planet'+i+'" style="display:'+A_ShowHideColomn[i]+'"><a style="cursor:pointer" onclick="'+((OgameEmpire==true)?'GMsetValue(\'OT_OgameEmpire\','+OgameEmpire+');':'')+'SaveTransfer();window.location.replace(\''+A_Planet[i].Url+'\');" '+((AddToolTip == true)?'title="'+Coordinates+'"':'')+'>'+((ShowPlanetName == true)?A_Planet[i].Name:'')+(((ShowPlanetName == true) && (ShowCoordinates == true))?'<br>':'')+((ShowCoordinates == true)?Coordinates:'')+'</a></div></td>\n'+
3415 |
'<td class="c" style="width:7px! important;cursor:pointer" onclick="javascript:ShowHideColumn('+i+')"><img id="ImgShowHide'+i+'" src="'+((A_ShowHideColomn[i] == 'none;')?C_ImgRight:C_ImgLeft)+'" alt="'+((A_ShowHideColomn[i] == 'none;')?A_Language[C_Show]:A_Language[C_Hide])+' '+A_Planet[i].Name+'" '+((AddToolTip == true)?'title="'+((A_ShowHideColomn[i] == 'none;')?A_Language[C_Show]:A_Language[C_Hide])+' '+A_Planet[i].Name+'"':'')+'></td>\n';
3416 |
}
3417 |
3418 |
// Generation des lignes de ressources et d'energie du tableau (si des donnees memorisees sont trouvees sinon on affiche rien)
3419 |
if (A_Resources[i].Metal) {
3420 |
TimeUpdate = PlanetTimeUpdate(i, false);
3421 |
MetalTotal = MetalTotal + ((A_Resources[i].Metal!='-')?parseInt(A_Resources[i].Metal):0);
3422 |
CrystalTotal = CrystalTotal + ((A_Resources[i].Crystal!='-')?parseInt(A_Resources[i].Crystal):0);
3423 |
DeuteriumTotal = DeuteriumTotal + ((A_Resources[i].Deuterium!='-')?parseInt(A_Resources[i].Deuterium):0);
3424 |
MetalTd += '<td colspan="2" style="width:5px !important" align="right" class="'+TimeUpdate+ResourcesOver(i, 0, A_Planet[i].Type)+'"><div id="Metal'+i+'" style="display:'+A_ShowHideColomn[i]+'">'+FormatNb(A_Resources[i].Metal)+'</div></td>\n';
3425 |
CrystalTd += '<td colspan="2" style="width:5px !important" align="right" class="'+TimeUpdate+ResourcesOver(i, 1, A_Planet[i].Type)+'"><div id="Crystal'+i+'" style="display:'+A_ShowHideColomn[i]+'">'+FormatNb(A_Resources[i].Crystal)+'</div></td>\n';
3426 |
DeuteriumTd += '<td colspan="2" style="width:5px !important" align="right" class="'+TimeUpdate+ResourcesOver(i, 2, A_Planet[i].Type)+'"><div id="Deuterium'+i+'" style="display:'+A_ShowHideColomn[i]+'">'+FormatNb(A_Resources[i].Deuterium)+'</div></td>\n';
3427 |
EnergieTd += '<td colspan="2" style="width:5px !important" align="right" class="'+TimeUpdate+ResourcesOver(i, 3, A_Planet[i].Type)+'"><div id="Energy'+i+'" style="display:'+A_ShowHideColomn[i]+'">\n';
3428 |
EnergieTd += (A_Resources[i].FreeEnergy != '') ? FormatNb(A_Resources[i].FreeEnergy)+'/'+FormatNb(A_Resources[i].TotalEnergy) : '';
3429 |
EnergieTd += '</div></td>\n';
3430 |
if (ShowTimeUpdate == true) {
3431 |
TimeUpdateTd += '<td colspan="2" style="width:5px !important" align="right" class="'+TimeUpdate+'"><div id="Update'+i+'" style="display:'+A_ShowHideColomn[i]+'">'+FormatTime(PlanetTimeUpdate(i, true))+'</div></td>\n';
3432 |
}
3433 |
}
3434 |
else {
3435 |
MetalTd += '<td align="right" class="Time10" colspan="2"><div id="Metal'+i+'" style="display:'+A_ShowHideColomn[i]+'"></div></td>\n';
3436 |
CrystalTd += '<td align="right" class="Time10" colspan="2"><div id="Crystal'+i+'" style="display:'+A_ShowHideColomn[i]+'"></div></td>\n';
3437 |
DeuteriumTd += '<td align="right" class="Time10" colspan="2"><div id="Deuterium'+i+'" style="display:'+A_ShowHideColomn[i]+'"></div></td>\n';
3438 |
EnergieTd += '<td align="right" class="Time10" colspan="2"><div id="Energy'+i+'" style="display:'+A_ShowHideColomn[i]+'"></div></td>\n';
3439 |
if (ShowTimeUpdate == true) {
3440 |
TimeUpdateTd += '<td align="right" class="Time10" colspan="2"><div id="Update'+i+'" style="display:'+A_ShowHideColomn[i]+'"></div></td>\n';
3441 |
}
3442 |
}
3443 |
}
3444 |
3445 |
// Creation du tableau
3446 |
ResourcesDiv.innerHTML = '<table id="planetResources">\n'+
3447 |
// Bouton precedent, mise a jour, suivant
3448 |
'<tr><td class="c"><div style="display:inline !important;"><input style="width:19px!important;height:16px!important;margin-right:1px;border:none!important;background:transparent !important" type="image" src="'+C_ImgPrevious+'" name="previous" '+((AddToolTip == true)?'title="'+A_Language[C_PreviousPlanet]+'"':'')+' onclick="window.location.replace(\''+A_Planet[((PlanetSelectedIndex == 0) ? (PlanetSelect.length-1) : (PlanetSelectedIndex-1))].Url+'\');">'+
3449 |
(((AutoUpdateRest == 0) && (RefreshPlanetRest > 0)) ? '<input type="image" src="'+C_ImgStop+'" style="width:16px!important;height:16px!important;margin-left:1px;margin-right:1px;border:none!important;background:transparent !important" name="refresh" '+((AddToolTip == true)?'title="'+A_Language[C_UpdateStopInformations]+'" onclick="StopUpdate();"':'')+'>' : '<input style="width:11px!important;height:16px!important;margin-left:1px;margin-right:1px;border:none!important;background:transparent !important" type="image" src="'+C_ImgPlay+'" name="refresh" '+((AddToolTip == true)?'title="'+A_Language[C_UpdatePages]+'"':'')+' onclick="RefreshPlanet();">')+
3450 |
'<input style="width:19px!important;height:16px!important;margin-left:1px;border:none!important;background:transparent !important" type="image" src="'+C_ImgNext+'" name="next" '+((AddToolTip == true)?'title="'+A_Language[C_NextPlanet]+'"':'')+' onclick="window.location.replace(\''+A_Planet[((PlanetSelectedIndex == (PlanetSelect.length-1)) ? 0 : (PlanetSelectedIndex+1))].Url+'\');"></div></td>\n'+
3451 |
// Liste des planetes
3452 |
PlanetTd+
3453 |
// Total
3454 |
((ShowTotal == true) ? '<td class="c" style="font-weight:bold; text-decoration:none;" align="center"><div id="Total" style="display:'+A_ShowHideColomn[PlanetSelect.length]+'">'+A_Language[C_Total]+'</div></td>\n'+
3455 |
'<td class="c" style="width:7px! important;cursor:pointer" onclick="javascript:ShowHideColumn('+PlanetSelect.length+')"><img id="ImgShowHide'+PlanetSelect.length+'" src="'+((A_ShowHideColomn[PlanetSelect.length] == 'none;')?C_ImgRight:C_ImgLeft)+'" alt="'+((A_ShowHideColomn[PlanetSelect.length] == 'none;')?A_Language[C_Show]:A_Language[C_Hide])+' '+A_Language[C_Total]+'" '+((AddToolTip == true)?'title="'+((A_ShowHideColomn[PlanetSelect.length] == 'none;')?A_Language[C_Show]:A_Language[C_Hide])+' '+A_Language[C_Total]+'"':'')+'></td>\n' : '')+
3456 |
// Antimatiere
3457 |
((ShowDarkMatter == true) ? '<td class="c" align="center" style="font-weight:bold; padding-left:3px; padding-right:3px;"><div id="DarkMatterTitle" style="display:'+A_ShowHideColomn[(PlanetSelect.length+1)]+'">'+A_Language[C_DarkMatter]+'</div></td>\n'+
3458 |
'<td class="c" style="width:7px! important;cursor:pointer" onclick="javascript:ShowHideColumn('+(PlanetSelect.length+1)+')"><img id="ImgShowHide'+(PlanetSelect.length+1)+'" src="'+((A_ShowHideColomn[(PlanetSelect.length+1)] == 'none;')?C_ImgRight:C_ImgLeft)+'" alt="'+((A_ShowHideColomn[(PlanetSelect.length+1)] == 'none;')?A_Language[C_Show]:A_Language[C_Hide])+' '+A_Language[C_DarkMatter]+'" '+((AddToolTip == true)?'title="'+((A_ShowHideColomn[(PlanetSelect.length+1)] == 'none;')?A_Language[C_Show]:A_Language[C_Hide])+' '+A_Language[C_DarkMatter]+'"':'')+'></td>\n' : '')+
3459 |
'</tr>'+
3460 |
// Ressources
3461 |
'<tr><th style="font-weight:bold">'+A_Language[C_Metal]+'</th>\n'+MetalTd+((ShowTotal == true) ? '<th style="font-weight:bold" colspan="2" style="width:5px !important"><div id="MetalTotal" style="display:'+A_ShowHideColomn[PlanetSelect.length]+'">'+FormatNb(MetalTotal)+'</div></th>' : '')+((ShowDarkMatter == true) ? '<th style="font-weight:bold" colspan="2" style="width:5px !important"><div id="DarkMatterValue" style="display:'+A_ShowHideColomn[(PlanetSelect.length+1)]+'">'+FormatNb(DarkMatter)+'</div></th>' : '')+'</tr>\n'+
3462 |
'<tr><th style="font-weight:bold">'+A_Language[C_Crystal]+'</th>\n'+CrystalTd+((ShowTotal == true) ? '<th style="font-weight:bold" colspan="2" style="width:5px !important"><div id="CrystalTotal" style="display:'+A_ShowHideColomn[PlanetSelect.length]+'">'+FormatNb(CrystalTotal)+'</div></th>' : '')+((ShowDarkMatter == true) ? '<td colspan="2"></td>' : '')+'</tr>\n'+
3463 |
'<tr><th style="font-weight:bold">'+A_Language[C_Deuterium]+'</th>\n'+DeuteriumTd+((ShowTotal == true) ? '<th style="font-weight:bold" colspan="2" style="width:5px !important"><div id="DeuteriumTotal" style="display:'+A_ShowHideColomn[PlanetSelect.length]+'">'+FormatNb(DeuteriumTotal)+'</div></th>' : '')+((ShowDarkMatter == true) ? '<td colspan="2"></td>' : '')+'</tr>\n'+
3464 |
'<tr><th style="font-weight:bold">'+A_Language[C_Energy]+'</th>\n'+EnergieTd+((ShowTotal == true) ? '<td colspan="2"></td>' : '')+((ShowDarkMatter == true) ? '<td colspan="2"></td>' : '')+'</tr>\n'+
3465 |
((ShowTimeUpdate == true) ? '<tr><th style="font-weight:bold">'+String(A_Language[C_Update]).replace(/([ ])/g,' ')+'</th>\n'+TimeUpdateTd+((ShowTotal == true) ? '<td colspan="2"></td>' : '')+((ShowDarkMatter == true) ? '<td colspan="2"></td>' : '')+'</tr>\n' : '')+
3466 |
'</table>';
3467 |
3468 |
// Affichage du tableau
3469 |
document.getElementsByTagName('body')[0].appendChild(ResourcesDiv);
3470 |
}
3471 |
catch(err) {
3472 |
ShowError(err, 'Resources table');
3473 |
}
3474 |
}
3475 |
// Ajoute la ligne total au tableau de ressources par defaut
3476 |
if (AddResourcesTotal == true) {
3477 |
try {
3478 |
var MetalTotal = 0;
3479 |
var CrystalTotal = 0;
3480 |
var DeuteriumTotal = 0;
3481 |
for (var i = 0; i < PlanetSelect.length; i++) {
3482 |
if (A_Resources[i].Metal) {
3483 |
MetalTotal = MetalTotal + parseInt(A_Resources[i].Metal);
3484 |
CrystalTotal = CrystalTotal + parseInt(A_Resources[i].Crystal);
3485 |
DeuteriumTotal = DeuteriumTotal + parseInt(A_Resources[i].Deuterium);
3486 |
}
3487 |
}
3488 |
if (HeaderDiv) {
3489 |
var TotalTr = document.createElement('tr');
3490 |
TotalTr.setAttribute('class','header');
3491 |
var MetalTotalTd = document.createElement('td');
3492 |
MetalTotalTd.setAttribute('class','header');
3493 |
MetalTotalTd.setAttribute('width','90');
3494 |
MetalTotalTd.setAttribute('align','center');
3495 |
MetalTotalTd.textContent = FormatNb(MetalTotal);
3496 |
TotalTr.appendChild(MetalTotalTd);
3497 |
var CrystalTotalTd = document.createElement('td');
3498 |
CrystalTotalTd.setAttribute('class','header');
3499 |
CrystalTotalTd.setAttribute('width','90');
3500 |
CrystalTotalTd.setAttribute('align','center');
3501 |
CrystalTotalTd.textContent = FormatNb(CrystalTotal);
3502 |
TotalTr.appendChild(CrystalTotalTd);
3503 |
var DeuteriumTotalTd = document.createElement('td');
3504 |
DeuteriumTotalTd.setAttribute('class','header');
3505 |
DeuteriumTotalTd.setAttribute('width','90');
3506 |
DeuteriumTotalTd.setAttribute('align','center');
3507 |
DeuteriumTotalTd.textContent = FormatNb(DeuteriumTotal);
3508 |
TotalTr.appendChild(DeuteriumTotalTd);
3509 |
var NullTd = document.createElement('td');
3510 |
NullTd.setAttribute('style','background:none');
3511 |
NullTd.setAttribute('colspan','2');
3512 |
TotalTr.appendChild(NullTd);
3513 |
document.getElementById('resources').appendChild(TotalTr);
3514 |
}
3515 |
}
3516 |
catch(err) {
3517 |
ShowError(err, 'Add total to default resources table');
3518 |
}
3519 |
}
3520 |
3521 |
3522 |
3523 |
3524 |
3525 |
/* PAGE EMPIRE
3526 |
-------------------------------------------------- */
3527 |
3528 |
function InsertSelect(Name, Value) {
3529 |
try {
3530 |
if (Value != '-') {
3531 |
var SelectScript = '<select name="'+Name+'" size="1">';
3532 |
var CurrentValue = 100;
3533 |
for (v = 0; v < 11 ; v++) {
3534 |
if (CurrentValue == Value) {
3535 |
SelectScript += '<option value="'+CurrentValue+'" selected>'+CurrentValue+'%</option>';
3536 |
}
3537 |
else {
3538 |
SelectScript += '<option value="'+CurrentValue+'">'+CurrentValue+'%</option>';
3539 |
}
3540 |
CurrentValue = CurrentValue-10;
3541 |
}
3542 |
SelectScript += '</select>';
3543 |
return SelectScript;
3544 |
}
3545 |
else {
3546 |
return Value;
3547 |
}
3548 |
}
3549 |
catch(err) {
3550 |
ShowError(err, 'InsertSelect()');
3551 |
}
3552 |
}
3553 |
3554 |
function CreateResourcesLink(PlanetId) {
3555 |
try {
3556 |
var Link = ResourcesLink+'&cp='+PlanetId;
3557 |
Link += ((document.getElementsByName('last1_'+PlanetId)[0]) ? '&last1='+document.getElementsByName('last1_'+PlanetId)[0].value : '');
3558 |
Link += ((document.getElementsByName('last2_'+PlanetId)[0]) ? '&last2='+document.getElementsByName('last2_'+PlanetId)[0].value : '');
3559 |
Link += ((document.getElementsByName('last3_'+PlanetId)[0]) ? '&last3='+document.getElementsByName('last3_'+PlanetId)[0].value : '');
3560 |
Link += ((document.getElementsByName('last4_'+PlanetId)[0]) ? '&last4='+document.getElementsByName('last4_'+PlanetId)[0].value : '');
3561 |
Link += ((document.getElementsByName('last12_'+PlanetId)[0]) ? '&last12='+document.getElementsByName('last12_'+PlanetId)[0].value : '');
3562 |
Link += ((document.getElementsByName('last212_'+PlanetId)[0]) ? '&last212='+document.getElementsByName('last212_'+PlanetId)[0].value : '');
3563 |
if (PlanetId != A_Planet[PlanetSelectedIndex].Id) {
3564 |
AddAction('window.location.replace(|'+Link+'|)');
3565 |
if (MenuDiv)
3566 |
AddAction('GMsetValue(|OT_OgameEmpire|,true);window.location.replace(|'+MenuDiv.getElementsByTagName('table')[0].rows[SearchRow].cells[0].getElementsByTagName('a')[0].href+'|)');
3567 |
window.location.replace(ResourcesLink+'&cp='+A_Planet[PlanetSelectedIndex].Id);
3568 |
}
3569 |
else {
3570 |
if (MenuDiv)
3571 |
AddAction('GMsetValue(|OT_OgameEmpire|,true);window.location.replace(|'+MenuDiv.getElementsByTagName('table')[0].rows[SearchRow].cells[0].getElementsByTagName('a')[0].href+'|)');
3572 |
window.location.replace(Link);
3573 |
}
3574 |
}
3575 |
catch(err) {
3576 |
ShowError(err, 'CreateResourcesLink('+PlanetId+')');
3577 |
}
3578 |
}
3579 |
unsafeWindow.CreateResourcesLink = CreateResourcesLink;
3580 |
3581 |
function CalcEnergy(Group,Element,PlanetIndex) {
3582 |
try {
3583 |
var EnergyNeeded = 0;
3584 |
var Building = (A_Buildings[PlanetIndex][Element].Level&&A_Buildings[PlanetIndex][Element].Level!='-'?parseInt(A_Buildings[PlanetIndex][Element].Level):0);
3585 |
var Energy = (A_Research[5].Level&&A_Research[5].Level!='-'?parseInt(A_Research[5].Level):0);
3586 |
if ((Group == C_Buildings) && ((Element >= 0) && (Element <= 4))) {
3587 |
if (Element == 0 || Element == 1) {
3588 |
EnergyNeeded = -Math.ceil(10*(Building+1)*Math.pow(1.1,(Building+1)) - 10*Building*Math.pow(1.1,Building));
3589 |
}
3590 |
else if (Element == 2) {
3591 |
EnergyNeeded = -Math.ceil(20*(Building+1)*Math.pow(1.1,(Building+1)) - 20*Building*Math.pow(1.1,Building));
3592 |
}
3593 |
else if (Element == 3) {
3594 |
EnergyNeeded = Math.ceil(20*(Building+1)*Math.pow(1.1,(Building+1)) - 20*Building*Math.pow(1.1,Building));
3595 |
}
3596 |
else if (Element == 4) {
3597 |
EnergyNeeded = Math.ceil(30*(Building+1)*Math.pow((1.05+Energy*0.01),(Building+1)) - 30*Building*Math.pow((1.05+Energy*0.01),Building));
3598 |
}
3599 |
return ((EnergyNeeded < 0)?'<br>'+A_Language[C_Energy]+': <font style=color:#ff0000>'+FormatNb(EnergyNeeded)+'</font>':'<br>'+A_Language[C_Energy]+': <font style=color:#00ff00>+'+FormatNb(EnergyNeeded)+'</font>')+' <font style=color:#ff9900>('+(parseInt(A_Resources[PlanetIndex].FreeEnergy)+EnergyNeeded>0?'+':'')+FormatNb(parseInt(A_Resources[PlanetIndex].FreeEnergy)+EnergyNeeded)+')</font>';
3600 |
}
3601 |
return '';
3602 |
}
3603 |
catch(err) {
3604 |
ShowError(err, 'CalcEnergy('+Group+','+Element+','+PlanetIndex+')');
3605 |
}
3606 |
}
3607 |
3608 |
function CalcEvolution(Group,Element,LevelOrQuantity) {
3609 |
try {
3610 |
var MetalEvo = 0;
3611 |
var CrystalEvo = 0;
3612 |
var DeuteriumEvo = 0;
3613 |
var EnergyEvo = 0;
3614 |
// Batiment
3615 |
if (Group == C_Buildings) {
3616 |
if (Element == 0) {
3617 |
MetalEvo = Math.floor((60*(1-Math.pow(1.5,LevelOrQuantity))/(-0.5))-(60*(1-Math.pow(1.5,LevelOrQuantity-1))/(-0.5)));
3618 |
CrystalEvo = Math.floor((15*(1-Math.pow(1.5,LevelOrQuantity))/(-0.5))-(15*(1-Math.pow(1.5,LevelOrQuantity-1))/(-0.5)));
3619 |
}
3620 |
else if (Element == 1) {
3621 |
MetalEvo = Math.floor((48*(1-Math.pow(1.6,LevelOrQuantity))/(-0.6))-(48*(1-Math.pow(1.6,LevelOrQuantity-1))/(-0.6)));
3622 |
CrystalEvo = Math.floor((24*(1-Math.pow(1.6,LevelOrQuantity))/(-0.6))-(24*(1-Math.pow(1.6,LevelOrQuantity-1))/(-0.6)));
3623 |
}
3624 |
else if (Element == 2) {
3625 |
MetalEvo = Math.floor((225*(1-Math.pow(1.5,LevelOrQuantity))/(-0.5))-(225*(1-Math.pow(1.5,LevelOrQuantity-1))/(-0.5)));
3626 |
CrystalEvo = Math.floor((75*(1-Math.pow(1.5,LevelOrQuantity))/(-0.5))-(75*(1-Math.pow(1.5,LevelOrQuantity-1))/(-0.5)));
3627 |
}
3628 |
else if (Element == 3) {
3629 |
MetalEvo = Math.floor((75*(1-Math.pow(1.5,LevelOrQuantity))/(-0.5))-(75*(1-Math.pow(1.5,LevelOrQuantity-1))/(-0.5)));
3630 |
CrystalEvo = Math.floor((30*(1-Math.pow(1.5,LevelOrQuantity))/(-0.5))-(30*(1-Math.pow(1.5,LevelOrQuantity-1))/(-0.5)));
3631 |
}
3632 |
else if (Element == 4) {
3633 |
MetalEvo = Math.floor((900*(1-Math.pow(1.8,LevelOrQuantity))/(-0.8))-(900*(1-Math.pow(1.8,LevelOrQuantity-1))/(-0.8)));
3634 |
CrystalEvo = Math.floor((360*(1-Math.pow(1.8,LevelOrQuantity))/(-0.8))-(360*(1-Math.pow(1.8,LevelOrQuantity-1))/(-0.8)));
3635 |
DeuteriumEvo = Math.floor((180*(1-Math.pow(1.8,LevelOrQuantity))/(-0.8))-(180*(1-Math.pow(1.8,LevelOrQuantity-1))/(-0.8)));
3636 |
}
3637 |
else {
3638 |
MetalEvo = Math.floor((parseInt(A_Construction[Group][Element].Metal)*(-(1-Math.pow(2,LevelOrQuantity))))-(parseInt(A_Construction[Group][Element].Metal)*(-(1-Math.pow(2,LevelOrQuantity-1)))));
3639 |
CrystalEvo = Math.floor((parseInt(A_Construction[Group][Element].Crystal)*(-(1-Math.pow(2,LevelOrQuantity))))-(parseInt(A_Construction[Group][Element].Crystal)*(-(1-Math.pow(2,LevelOrQuantity-1)))));
3640 |
DeuteriumEvo = Math.floor((parseInt(A_Construction[Group][Element].Deuterium)*(-(1-Math.pow(2,LevelOrQuantity))))-(parseInt(A_Construction[Group][Element].Deuterium)*(-(1-Math.pow(2,LevelOrQuantity-1)))));
3641 |
EnergyEvo = Math.floor((parseInt(A_Construction[Group][Element].Energy)*(-(1-Math.pow(2,LevelOrQuantity))))-(parseInt(A_Construction[Group][Element].Energy)*(-(1-Math.pow(2,LevelOrQuantity-1)))));
3642 |
}
3643 |
}
3644 |
// Technologie
3645 |
else if (Group == C_Research) {
3646 |
if (Element == 15) {
3647 |
EnergyEvo = (parseInt(A_Construction[Group][Element].Energy)*Math.pow(3,LevelOrQuantity-1));
3648 |
}
3649 |
else {
3650 |
MetalEvo = parseInt(A_Construction[Group][Element].Metal)*Math.pow(2,LevelOrQuantity-1);
3651 |
CrystalEvo = parseInt(A_Construction[Group][Element].Crystal)*Math.pow(2,LevelOrQuantity-1);
3652 |
DeuteriumEvo = parseInt(A_Construction[Group][Element].Deuterium)*Math.pow(2,LevelOrQuantity-1);
3653 |
EnergyEvo = parseInt(A_Construction[Group][Element].Energy)*Math.pow(2,LevelOrQuantity-1);
3654 |
}
3655 |
}
3656 |
// Defense et Flotte
3657 |
else if ((Group == C_Defenses) || (Group == C_Fleets)) {
3658 |
MetalEvo = parseInt(A_Construction[Group][Element].Metal)*LevelOrQuantity;
3659 |
CrystalEvo = parseInt(A_Construction[Group][Element].Crystal)*LevelOrQuantity;
3660 |
DeuteriumEvo = parseInt(A_Construction[Group][Element].Deuterium)*LevelOrQuantity;
3661 |
}
3662 |
3663 |
return MetalEvo+'|'+CrystalEvo+'|'+DeuteriumEvo+'|'+EnergyEvo;
3664 |
}
3665 |
catch(err) {
3666 |
ShowError(err, 'CalcEvolution('+Group+', '+Element+', '+LevelOrQuantity+')');
3667 |
}
3668 |
}
3669 |
3670 |
function CalcBuildingTime(Group,Metal,Crystal,PlanetIndex,Quantity) {
3671 |
try {
3672 |
var Time = 0;
3673 |
var RobotFactory = ((A_Buildings[PlanetIndex][5].Level)&&(A_Buildings[PlanetIndex][5].Level)!='-'?A_Buildings[PlanetIndex][5].Level:0);
3674 |
var NanitesFactory = ((A_Buildings[PlanetIndex][6].Level)&&(A_Buildings[PlanetIndex][6].Level)!='-'?A_Buildings[PlanetIndex][6].Level:0);
3675 |
var Shipyard = ((A_Buildings[PlanetIndex][7].Level)&&(A_Buildings[PlanetIndex][7].Level)!='-'?A_Buildings[PlanetIndex][7].Level:0);
3676 |
var Laboratory = ((A_Buildings[PlanetIndex][11].Level)&&(A_Buildings[PlanetIndex][11].Level)!='-'?A_Buildings[PlanetIndex][11].Level:0);
3677 |
if (Group == C_Buildings) {
3678 |
Time = ((Metal+Crystal)/5000) * (2/(1+parseInt(RobotFactory))) * Math.pow(0.5,parseInt(NanitesFactory));
3679 |
}
3680 |
else if (Group == C_Research) {
3681 |
var NbLaboratory, LaboratoryCumul = 0;
3682 |
var A_Laboratory = new Array();
3683 |
for (j = 0; j < PlanetSelect.length; j++) {
3684 |
if (j != PlanetIndex) {
3685 |
A_Laboratory[LaboratoryCumul] = ((A_Buildings[j][11].Level)&&(A_Buildings[j][11].Level)!='-'?A_Buildings[j][11].Level:0);
3686 |
LaboratoryCumul++;
3687 |
}
3688 |
}
3689 |
LaboratoryCumul = 0;
3690 |
A_Laboratory.sort(SortNumber);
3691 |
for (j = 0; j < (A_Research[13].Level&&A_Research[13].Level!='-'?A_Research[13].Level:0); j++) {
3692 |
LaboratoryCumul = LaboratoryCumul+parseInt(A_Laboratory[A_Laboratory.length-1-j]);
3693 |
}
3694 |
Time = (Metal+Crystal) / (1000*(1+parseInt(Laboratory)+LaboratoryCumul));
3695 |
}
3696 |
else if (Quantity) {
3697 |
Time = ((Metal+Crystal)/5000) * (2/(1+parseInt(Shipyard))) * Math.pow(0.5,parseInt(NanitesFactory)) * Quantity;
3698 |
}
3699 |
return FormatTime(Time*3600000);
3700 |
}
3701 |
catch(err) {
3702 |
ShowError(err, 'CalcBuildingTime('+Group+','+Metal+','+Crystal+','+PlanetIndex+','+Quantity+')');
3703 |
}
3704 |
}
3705 |
unsafeWindow.CalcBuildingTime = CalcBuildingTime;
3706 |
3707 |
function CalcMissingResources(Metal,Crystal,Deuterium) {
3708 |
try {
3709 |
var Result = (Metal>0 ? A_Language[C_Metal]+': '+FormatNb(Metal)+'<br>' : '')+
3710 |
(Crystal>0 ? A_Language[C_Crystal]+': '+FormatNb(Crystal)+'<br>' : '')+
3711 |
(Deuterium>0 ? A_Language[C_Deuterium]+': '+FormatNb(Deuterium) : '');
3712 |
if (document.getElementById('MissingResourcesTr')) {
3713 |
if (Result.length > 0) {
3714 |
document.getElementById('MissingResourcesTr').style.display = '';
3715 |
}
3716 |
else {
3717 |
document.getElementById('MissingResourcesTr').style.display = 'none';
3718 |
}
3719 |
}
3720 |
return Result;
3721 |
}
3722 |
catch(err) {
3723 |
ShowError(err, 'CalcMissingResources('+Group+','+Metal+','+Crystal+','+Deuterium+','+Quantity+')');
3724 |
}
3725 |
}
3726 |
unsafeWindow.CalcMissingResources = CalcMissingResources;
3727 |
3728 |
function CalcTransportShip(Metal,Crystal,Deuterium) {
3729 |
try {
3730 |
Metal = (Metal>0?Metal:0);
3731 |
Crystal = (Crystal>0?Crystal:0);
3732 |
Deuterium = (Deuterium>0?Deuterium:0);
3733 |
if ((Metal+Crystal+Deuterium) > 0) {
3734 |
if (document.getElementById('TransportShipTr')) { document.getElementById('TransportShipTr').style.display = ''; }
3735 |
return A_Language[C_LargeCargoShip]+': '+FormatNb(Math.ceil((Metal+Crystal+Deuterium)/25000))+', '+
3736 |
A_Language[C_SmallCargoShip]+': '+FormatNb(Math.ceil((Metal+Crystal+Deuterium)/5000));
3737 |
}
3738 |
if (document.getElementById('TransportShipTr')) { document.getElementById('TransportShipTr').style.display = 'none'; }
3739 |
return '';
3740 |
}
3741 |
catch(err) {
3742 |
ShowError(err, 'CalcNeededTransportShip('+Group+','+Metal+','+Crystal+','+Deuterium+','+Quantity+')');
3743 |
}
3744 |
}
3745 |
unsafeWindow.CalcMissingResources = CalcMissingResources;
3746 |
3747 |
function RefreshCalc(Id,Group,Metal,Crystal,Deuterium,PlanetIndex) {
3748 |
try {
3749 |
document.getElementById('BuildingTime').textContent = A_Language[C_BuildingTime]+': '+CalcBuildingTime(Group,Metal,Crystal,PlanetIndex,document.getElementsByName(Id)[0].value);
3750 |
if (UseRealTimeResourcesEmpire == true && RealTimeResources == true && (ShowHeaderResourcesTable == true || ForceDisplayHeaderResourcesTableWithEmpire == true)) {
3751 |
if (A_RealTimeResources[PlanetIndex].Metal) {
3752 |
Metal = (Metal*document.getElementsByName(Id)[0].value)-A_RealTimeResources[PlanetIndex].Metal;
3753 |
Crystal = (Crystal*document.getElementsByName(Id)[0].value)-A_RealTimeResources[PlanetIndex].Crystal;
3754 |
Deuterium = (Deuterium*document.getElementsByName(Id)[0].value)-A_RealTimeResources[PlanetIndex].Deuterium;
3755 |
Metal = (Metal>0?Metal:0);
3756 |
Crystal = (Crystal>0?Crystal:0);
3757 |
Deuterium = (Deuterium>0?Deuterium:0);
3758 |
document.getElementById('MissingResources').innerHTML = CalcMissingResources(Metal,Crystal,Deuterium);
3759 |
document.getElementById('TransportShip').innerHTML = CalcTransportShip(Metal,Crystal,Deuterium);
3760 |
}
3761 |
}
3762 |
else {
3763 |
if (A_Resources[PlanetIndex].Metal) {
3764 |
Metal = (Metal*document.getElementsByName(Id)[0].value)-A_Resources[PlanetIndex].Metal;
3765 |
Crystal = (Crystal*document.getElementsByName(Id)[0].value)-A_Resources[PlanetIndex].Crystal;
3766 |
Deuterium = (Deuterium*document.getElementsByName(Id)[0].value)-A_Resources[PlanetIndex].Deuterium;
3767 |
Metal = (Metal>0?Metal:0);
3768 |
Crystal = (Crystal>0?Crystal:0);
3769 |
Deuterium = (Deuterium>0?Deuterium:0);
3770 |
document.getElementById('MissingResources').innerHTML = CalcMissingResources(Metal,Crystal,Deuterium);
3771 |
document.getElementById('TransportShip').innerHTML = CalcTransportShip(Metal,Crystal,Deuterium);
3772 |
}
3773 |
}
3774 |
}
3775 |
catch(err) {
3776 |
ShowError(err, 'RefreshCalc('+Id+','+Group+','+Metal+','+Crystal+','+PlanetIndex+')');
3777 |
}
3778 |
}
3779 |
unsafeWindow.RefreshCalc = RefreshCalc;
3780 |
3781 |
// Prechargement lien fonction AddOverLib
3782 |
if ((OgamePage != 'galaxy') && (HeaderDiv)) {
3783 |
try {
3784 |
// Lien vers page et texte correspondant
3785 |
var A_OverLib = new Array();
3786 |
A_OverLib[C_Buildings] = new P_OverLib();
3787 |
A_OverLib[C_Buildings].Text = A_Language[C_ToBuildings];
3788 |
A_OverLib[C_Buildings].Link = 'page=b_building';
3789 |
A_OverLib[C_Defenses] = new P_OverLib();
3790 |
A_OverLib[C_Defenses].Text = A_Language[C_ToDefenses];
3791 |
A_OverLib[C_Defenses].Link = 'page=buildings&mode=Verteidigung';
3792 |
A_OverLib[C_Research] = new P_OverLib();
3793 |
A_OverLib[C_Research].Text = A_Language[C_ToResearch];
3794 |
A_OverLib[C_Research].Link = 'page=buildings&mode=Forschung';
3795 |
A_OverLib[C_Fleets] = new P_OverLib();
3796 |
A_OverLib[C_Fleets].Text = A_Language[C_ToFleets];
3797 |
A_OverLib[C_Fleets].Link = 'page=buildings&mode=Flotte';
3798 |
3799 |
// Calcul du total des ressources
3800 |
var MetalTotal = 0;
3801 |
var CrystalTotal = 0;
3802 |
var DeuteriumTotal= 0;
3803 |
for (i = 0;i < PlanetSelect.length; i++) {
3804 |
if (A_Resources[i].Metal) {
3805 |
MetalTotal = MetalTotal + parseInt(A_Resources[i].Metal);
3806 |
CrystalTotal = CrystalTotal + parseInt(A_Resources[i].Crystal);
3807 |
DeuteriumTotal = DeuteriumTotal + parseInt(A_Resources[i].Deuterium);
3808 |
}
3809 |
}
3810 |
}
3811 |
catch(err) {
3812 |
ShowError(err, 'Init OverLib variables and calculate resources total');
3813 |
}
3814 |
}
3815 |
3816 |
function AddOverLib(Value, Group, Element, PlanetIndex, UnderConstructionValue) {
3817 |
3818 |
// Calcul du cout du prochain niveau (Batiment, technologie) ou du cout de construction (Flotte, defense)
3819 |
var Res = CalcEvolution(Group,Element,(((Group == C_Defenses) || (Group == C_Fleets)) ? 1 : (parseInt(((Value == '-') ? 0 : Value))+1)));
3820 |
if (Res) {
3821 |
var Res = Res.split(Separator);
3822 |
if (Res) {
3823 |
var MetalEvo = parseInt(Res[0]);
3824 |
var CrystalEvo = parseInt(Res[1]);
3825 |
var DeuteriumEvo = parseInt(Res[2]);
3826 |
var EnergyEvo = parseInt(Res[3]);
3827 |
3828 |
if (PlanetIndex < PlanetSelect.length) {
3829 |
// Comparaison avec les ressources de toutes les planetes
3830 |
var VerifSup = true;
3831 |
var FontColor = ' color="#FF0000"';
3832 |
if (MetalTotal < MetalEvo) {
3833 |
VerifSup = false;
3834 |
}
3835 |
if (CrystalTotal < CrystalEvo) {
3836 |
VerifSup = false;
3837 |
}
3838 |
if (DeuteriumTotal < DeuteriumEvo) {
3839 |
VerifSup = false;
3840 |
}
3841 |
var Energy = A_Resources[i].TotalEnergy;
3842 |
if (Energy) {
3843 |
if (Energy < EnergyEvo) {
3844 |
VerifSup = false;
3845 |
}
3846 |
}
3847 |
if (VerifSup == true) {
3848 |
FontColor = ' color="#FF9900"';
3849 |
}
3850 |
3851 |
// Comparaison avec les ressources de la planete
3852 |
if (Energy) {
3853 |
if (A_Resources[PlanetIndex].Metal < MetalEvo) {
3854 |
VerifSup = false;
3855 |
}
3856 |
if (A_Resources[PlanetIndex].Crystal < CrystalEvo) {
3857 |
VerifSup = false;
3858 |
}
3859 |
if (A_Resources[PlanetIndex].Deuterium < DeuteriumEvo) {
3860 |
VerifSup = false;
3861 |
}
3862 |
if (Energy < EnergyEvo) {
3863 |
VerifSup = false;
3864 |
}
3865 |
if (VerifSup == true) {
3866 |
FontColor = ' color="#00FF00"';
3867 |
}
3868 |
}
3869 |
}
3870 |
else {
3871 |
var FontColor = '';
3872 |
}
3873 |
3874 |
if (UnderConstructionValue) {
3875 |
if (Group == C_Research) {
3876 |
if (A_Planet[PlanetIndex].Id == UnderConstructionValue) {
3877 |
UnderConstructionValue = parseInt(A_Research[Element].Level)+1;
3878 |
}
3879 |
else {
3880 |
UnderConstructionValue = undefined;
3881 |
}
3882 |
}
3883 |
}
3884 |
3885 |
return '<a style="cursor:pointer" onclick="overlib(OverLibFunction(\''+Value+'\','+Group+','+Element+','+PlanetIndex+','+((UnderConstructionValue > 0) ? UnderConstructionValue : undefined)+'), STICKY, MOUSEOFF, 100, 750, CENTER, OFFSETX, -40, OFFSETY, -40);" onmouseover="overlib(OverLibFunction(\''+Value+'\','+Group+','+Element+','+PlanetIndex+','+((UnderConstructionValue > 0) ? UnderConstructionValue : undefined)+'), STICKY, MOUSEOFF, DELAY, 750, CENTER, OFFSETX, -40, OFFSETY, -40);" onmouseout="return nd();"><font'+FontColor+'>'+FormatNb(Value)+'</font>'+(((UnderConstructionValue != '-') && (UnderConstructionValue)) ? ' <font color="#FF00FF">('+FormatNb(UnderConstructionValue)+')</font>' : '')+'</a>';
3886 |
}
3887 |
}
3888 |
}
3889 |
3890 |
function SetTransferValue(Metal, Crystal, Deuterium, PlanetIndex) {
3891 |
TransferShow = true;
3892 |
TransferMetal = Metal;
3893 |
TransferCrystal = Crystal;
3894 |
TransferDeuterium = Deuterium;
3895 |
if (PlanetIndex) {
3896 |
TransferDestinationPlanet = A_Planet[PlanetIndex].Planet;
3897 |
TransferDestinationSystem = A_Planet[PlanetIndex].System;
3898 |
TransferDestinationGalaxy = A_Planet[PlanetIndex].Galaxy;
3899 |
TransferDestinationType = A_Planet[PlanetIndex].Type;
3900 |
}
3901 |
SaveTransfer();
3902 |
}
3903 |
unsafeWindow.SetTransferValue = SetTransferValue;
3904 |
3905 |
// Optimisation afin d'eviter la perte de temps due a la concatenation de les objets au chargement de la page
3906 |
// et permet de charger uniquement l'objet voulu
3907 |
function OverLibFunction(Value, Group, Element, PlanetIndex, UnderConstructionValue) {
3908 |
3909 |
try {
3910 |
var Action;
3911 |
// Calcul du cout du prochain niveau (Batiment, technologie) ou du cout de construction (Flotte, defense)
3912 |
var Res = CalcEvolution(Group,Element,(((Group == C_Defenses) || (Group == C_Fleets)) ? 1 : (parseInt(((Value == '-') ? 0 : Value))+1)));
3913 |
3914 |
Res = Res.split(Separator);
3915 |
var MetalEvo = parseInt(Res[0]);
3916 |
var CrystalEvo = parseInt(Res[1]);
3917 |
var DeuteriumEvo = parseInt(Res[2]);
3918 |
var EnergyEvo = parseInt(Res[3]);
3919 |
3920 |
// Mise en forme du resultat
3921 |
var ResCalc = '';
3922 |
if (MetalEvo != 0) {
3923 |
ResCalc += A_Language[C_Metal]+': '+FormatNb((((Group == C_Defenses) || (Group == C_Fleets)) ? MetalEvo*parseInt(((Value == '-') ? 0 : Value)) : MetalEvo));
3924 |
}
3925 |
if (CrystalEvo != 0) {
3926 |
ResCalc += ((ResCalc.length > 0) ? '<br>' : '')+A_Language[C_Crystal]+': '+FormatNb((((Group == C_Defenses) || (Group == C_Fleets)) ? CrystalEvo*parseInt(((Value == '-') ? 0 : Value)) : CrystalEvo));
3927 |
}
3928 |
if (DeuteriumEvo != 0) {
3929 |
ResCalc += ((ResCalc.length > 0) ? '<br>' : '')+A_Language[C_Deuterium]+': '+FormatNb((((Group == C_Defenses) || (Group == C_Fleets)) ? DeuteriumEvo*parseInt(((Value == '-') ? 0 : Value)) : DeuteriumEvo));
3930 |
}
3931 |
if (EnergyEvo != 0) {
3932 |
ResCalc += ((ResCalc.length > 0) ? '<br>' : '')+A_Language[C_Energy]+': '+FormatNb(EnergyEvo);
3933 |
}
3934 |
3935 |
if (PlanetIndex < PlanetSelect.length) {
3936 |
3937 |
if (UseRealTimeResourcesEmpire == true && RealTimeResources == true && (ShowHeaderResourcesTable == true || ForceDisplayHeaderResourcesTableWithEmpire == true)) {
3938 |
var Metal = A_RealTimeResources[PlanetIndex].Metal;
3939 |
var Crystal = A_RealTimeResources[PlanetIndex].Crystal;
3940 |
var Deuterium = A_RealTimeResources[PlanetIndex].Deuterium;
3941 |
MetalTotal = A_RealTimeResources[PlanetSelect.length].Metal;
3942 |
CrystalTotal = A_RealTimeResources[PlanetSelect.length].Crystal;
3943 |
DeuteriumTotal = A_RealTimeResources[PlanetSelect.length].Deuterium;
3944 |
}
3945 |
else {
3946 |
var Metal = A_Resources[PlanetIndex].Metal;
3947 |
var Crystal = A_Resources[PlanetIndex].Crystal;
3948 |
var Deuterium = A_Resources[PlanetIndex].Deuterium;
3949 |
}
3950 |
var Energy = A_Resources[PlanetIndex].TotalEnergy;
3951 |
3952 |
// Nombre de satellites pour graviton
3953 |
if (((Group == C_Research) && (Element == 15)) || ((Group == C_Buildings) && (Element == 12))) {
3954 |
var EnergyNeeded = EnergyEvo-Energy;
3955 |
if (EnergyNeeded > 0) {
3956 |
var EnergyPerSat = Math.floor((parseInt(A_Planet[PlanetIndex].MaxTemperature)/4)+20);
3957 |
if (Group == C_Research) {
3958 |
ResCalc = A_Language[C_Crystal]+': <font color="#FF9900">'+FormatNb(A_Construction[C_Fleets][10].Crystal*Math.ceil(EnergyNeeded/EnergyPerSat))+'</font>'+
3959 |
'<br>'+A_Language[C_Deuterium]+': <font color="#FF9900">'+FormatNb(A_Construction[C_Fleets][10].Deuterium*Math.ceil(EnergyNeeded/EnergyPerSat))+'</font>';
3960 |
CrystalEvo = A_Construction[C_Fleets][10].Crystal*Math.ceil(EnergyNeeded/EnergyPerSat);
3961 |
DeuteriumEvo = A_Construction[C_Fleets][10].Deuterium*Math.ceil(EnergyNeeded/EnergyPerSat);
3962 |
}
3963 |
else {
3964 |
ResCalc = '<br>'+A_Language[C_Crystal]+': '+FormatNb(CrystalEvo)+' <font color="#FF9900">'+FormatNb(A_Construction[C_Fleets][10].Crystal*Math.ceil(EnergyNeeded/EnergyPerSat))+'</font>'+
3965 |
'<br>'+A_Language[C_Deuterium]+': '+FormatNb(DeuteriumEvo)+' <font color="#FF9900">'+FormatNb(A_Construction[C_Fleets][10].Deuterium*Math.ceil(EnergyNeeded/EnergyPerSat))+'</font>';
3966 |
CrystalEvo = CrystalEvo+(A_Construction[C_Fleets][10].Crystal*Math.ceil(EnergyNeeded/EnergyPerSat));
3967 |
DeuteriumEvo = DeuteriumEvo+(A_Construction[C_Fleets][10].Deuterium*Math.ceil(EnergyNeeded/EnergyPerSat));
3968 |
}
3969 |
ResCalc += '<br><br>'+A_Language[C_Ship212Production]+' : <font color="#FF9900">'+EnergyPerSat+'</font><br>'+A_Language[C_Ship212NecessaryNumber]+' : <font color="#FF9900">'+FormatNb(Math.ceil(EnergyNeeded/EnergyPerSat))+'</font>';
3970 |
}
3971 |
}
3972 |
3973 |
// Comparaison avec les ressources de toutes les planetes
3974 |
var MetalBuildTotalNumber = -1;
3975 |
var CrystalBuildTotalNumber = -1;
3976 |
var DeuteriumBuildTotalNumber = -1;
3977 |
var VerifSup = true;
3978 |
var FontColor = ' color="#FF0000"';
3979 |
if (MetalTotal < MetalEvo) {
3980 |
VerifSup = false;
3981 |
}
3982 |
if (CrystalTotal < CrystalEvo) {
3983 |
VerifSup = false;
3984 |
}
3985 |
if (DeuteriumTotal < DeuteriumEvo) {
3986 |
VerifSup = false;
3987 |
}
3988 |
if (Energy) {
3989 |
if (Energy < EnergyEvo) {
3990 |
VerifSup = false;
3991 |
}
3992 |
}
3993 |
if (VerifSup == true) {
3994 |
FontColor = ' color="#FF9900"';
3995 |
if ((Group == C_Defenses) || (Group == C_Fleets)) {
3996 |
if (MetalEvo > 0) {
3997 |
MetalBuildTotalNumber = Math.floor(MetalTotal/MetalEvo);
3998 |
}
3999 |
if (CrystalEvo > 0) {
4000 |
CrystalBuildTotalNumber = Math.floor(CrystalTotal/CrystalEvo);
4001 |
}
4002 |
if (DeuteriumEvo > 0) {
4003 |
DeuteriumBuildTotalNumber = Math.floor(DeuteriumTotal/DeuteriumEvo);
4004 |
}
4005 |
}
4006 |
}
4007 |
4008 |
// Calcul du nombre de construction possible avec les ressources de toutes les planetes
4009 |
if ((Group == C_Defenses) || (Group == C_Fleets)) {
4010 |
var A_BuildNumber = new Array();
4011 |
A_BuildNumber[0] = MetalBuildTotalNumber;
4012 |
A_BuildNumber[1] = CrystalBuildTotalNumber;
4013 |
A_BuildNumber[2] = DeuteriumBuildTotalNumber;
4014 |
A_BuildNumber.sort(SortNumber);
4015 |
var MaxBuildTotal = -1;
4016 |
for (j = 0; j < A_BuildNumber.length; j++) {
4017 |
if (MaxBuildTotal == -1) {
4018 |
if (A_BuildNumber[j] > -1) {
4019 |
MaxBuildTotal = A_BuildNumber[j];
4020 |
}
4021 |
}
4022 |
}
4023 |
}
4024 |
4025 |
// Comparaison avec les ressources de la planete
4026 |
var MetalBuildPlanetNumber = -1;
4027 |
var CrystalBuildPlanetNumber = -1;
4028 |
var DeuteriumBuildPlanetNumber = -1;
4029 |
if (Metal) {
4030 |
if (Metal < MetalEvo) {
4031 |
VerifSup = false;
4032 |
}
4033 |
if (Crystal < CrystalEvo) {
4034 |
VerifSup = false;
4035 |
}
4036 |
if (Deuterium < DeuteriumEvo) {
4037 |
VerifSup = false;
4038 |
}
4039 |
if (Energy < EnergyEvo) {
4040 |
VerifSup = false;
4041 |
}
4042 |
if (VerifSup == true) {
4043 |
FontColor = ' color="#00FF00"';
4044 |
if ((Group == C_Defenses) || (Group == C_Fleets)) {
4045 |
if (MetalEvo > 0) {
4046 |
MetalBuildPlanetNumber = Math.floor(Metal/MetalEvo);
4047 |
}
4048 |
if (CrystalEvo > 0) {
4049 |
CrystalBuildPlanetNumber = Math.floor(Crystal/CrystalEvo);
4050 |
}
4051 |
if (DeuteriumEvo > 0) {
4052 |
DeuteriumBuildPlanetNumber = Math.floor(Deuterium/DeuteriumEvo);
4053 |
}
4054 |
}
4055 |
}
4056 |
}
4057 |
4058 |
// Calcul du nombre de construction possible avec les ressources de la planete
4059 |
if ((Group == C_Defenses) || (Group == C_Fleets)) {
4060 |
var A_BuildNumber = new Array();
4061 |
A_BuildNumber[0] = MetalBuildPlanetNumber;
4062 |
A_BuildNumber[1] = CrystalBuildPlanetNumber;
4063 |
A_BuildNumber[2] = DeuteriumBuildPlanetNumber;
4064 |
A_BuildNumber.sort(SortNumber);
4065 |
var MaxBuildPlanet = -1;
4066 |
for (j = 0; j < A_BuildNumber.length; j++) {
4067 |
if (MaxBuildPlanet == -1) {
4068 |
if (A_BuildNumber[j] > -1) {
4069 |
MaxBuildPlanet = A_BuildNumber[j];
4070 |
}
4071 |
}
4072 |
}
4073 |
}
4074 |
4075 |
// Recherche si un atiment est en cours de construction sur la planete
4076 |
if ((FontColor == ' color="#00FF00"') && (Group == C_Buildings)) {
4077 |
var UnderConstruction = false;
4078 |
for (j = 0; j < 18; j++) {
4079 |
if (A_Buildings[PlanetIndex][j].UC > 0) { UnderConstruction = true; }
4080 |
}
4081 |
}
4082 |
// Recherche si un developement est en cours de recherche sur toutes les planetes
4083 |
else if ((FontColor == ' color="#00FF00"') && (Group == C_Research)) {
4084 |
var UnderConstruction = false;
4085 |
for (j = 0; j < 16; j++) {
4086 |
if (A_Research[j].UC != '-') { UnderConstruction = true; }
4087 |
}
4088 |
}
4089 |
4090 |
// Verification si la construction est possible
4091 |
var Launch = ValidateBuilding(Group, Element, PlanetIndex);
4092 |
4093 |
// Calcul du temps avant la possibilite de construction
4094 |
var TimeBeforeBuilding = '';
4095 |
if (((FontColor == ' color="#FF9900"') || (FontColor == ' color="#FF0000"')) && (Launch.length == 0)) {
4096 |
if (A_Planet[PlanetIndex].Type == C_Planet) {
4097 |
var A_MaxTime = new Array();
4098 |
A_MaxTime[0] = Math.round((MetalEvo-Metal)/(A_Production[PlanetIndex].Metal/3600)*1000);
4099 |
A_MaxTime[1] = Math.round((CrystalEvo-Crystal)/(A_Production[PlanetIndex].Crystal/3600)*1000);
4100 |
A_MaxTime[2] = Math.round((DeuteriumEvo-Deuterium)/(A_Production[PlanetIndex].Deuterium/3600)*1000);
4101 |
A_MaxTime.sort(SortNumber);
4102 |
TimeBeforeBuilding += '<tr><td class="c" colspan="2">'+A_Language[C_ConstructionAvailable]+' :</td></tr>\n'+
4103 |
'<tr><th colspan="2">'+A_Language[C_WithPlanetResources]+' : '+FormatTime(A_MaxTime[2])+'</th></tr>';
4104 |
}
4105 |
else if (FontColor == ' color="#FF0000"') {
4106 |
TimeBeforeBuilding += '<tr><td class="c" colspan="2">'+A_Language[C_ConstructionAvailable]+' :</td></tr>\n';
4107 |
}
4108 |
if (FontColor == ' color="#FF0000"') {
4109 |
var A_MaxTime = new Array();
4110 |
A_MaxTime[0] = Math.round((MetalEvo-MetalTotal)/(MetalProductionTotal/3600)*1000);
4111 |
A_MaxTime[1] = Math.round((CrystalEvo-CrystalTotal)/(CrystalProductionTotal/3600)*1000);
4112 |
A_MaxTime[2] = Math.round((DeuteriumEvo-DeuteriumTotal)/(DeuteriumProductionTotal/3600)*1000);
4113 |
A_MaxTime.sort(SortNumber);
4114 |
TimeBeforeBuilding += '<tr><th colspan="2">'+A_Language[C_WithAllPlanetsResources]+' : '+FormatTime(A_MaxTime[2])+'</th></tr>';
4115 |
}
4116 |
}
4117 |
4118 |
4119 |
// Ajout du lien pour la realisation du batiment ou de la recherche
4120 |
if (Launch.length > 0) {
4121 |
Launch = '<br></th></tr><tr><td class="c" colspan="2">'+A_Language[C_Require]+'</td></tr>\n'+
4122 |
'<tr><th colspan="2"><font color="#FF0000">'+Launch+'</font></th></tr>';
4123 |
}
4124 |
else {
4125 |
if ((UnderConstruction == true) && (!UnderConstructionValue) && (Group == C_Buildings)) {
4126 |
Launch = '<br></th></tr><tr><td class="c" colspan="2">'+A_Language[C_BuildingsTxt]+'</td></tr>\n'+
4127 |
'<tr><th colspan="2"><font color="#FF0000">'+A_Language[C_OtherBuildingsInConstruction]+'</font></th></tr>';
4128 |
}
4129 |
else if ((UnderConstruction == true) && (!UnderConstructionValue) && (Group == C_Research)) {
4130 |
Launch = '<br></th></tr><tr><td class="c" colspan="2">'+A_Language[C_ResearchTxt]+'</td></tr>\n'+
4131 |
'<tr><th colspan="2"><font color="#FF0000">'+A_Language[C_OtherResearchInDevelopment]+'</font></th></tr>';
4132 |
}
4133 |
else if (UnderConstructionValue > 0) {
4134 |
if (Group == C_Buildings) {
4135 |
Action = '';
4136 |
if (PlanetIndex != PlanetSelectedIndex) {
4137 |
Action = 'AddAction(\'GMsetValue(|OT_OgameEmpire|,true);window.location.replace(|'+BaseUrl+'?'+A_OverLib[Group].Link+'&session='+Session+'&listid=1&modus=remove&planet='+A_Planet[PlanetIndex].Id+'&cp='+A_Planet[PlanetIndex].Id+'&techid='+A_Construction[Group][Element].Id+'|)\');'+
4138 |
'window.location.replace(\''+BaseUrl+'?'+A_OverLib[Group].Link+'&session='+Session+'&cp='+A_Planet[PlanetSelectedIndex].Id+'\');';
4139 |
}
4140 |
else {
4141 |
Action = 'GMsetValue(\'OT_OgameEmpire\',true);window.location.replace(\''+BaseUrl+'?'+A_OverLib[Group].Link+'&session='+Session+'&listid=1&modus=remove&planet='+A_Planet[PlanetIndex].Id+'&cp='+A_Planet[PlanetIndex].Id+'&techid='+A_Construction[Group][Element].Id+'\')';
4142 |
}
4143 |
Launch = '<br><br><a style="cursor:pointer" onclick="'+Action+'" >'+A_Language[C_StopBuildings]+'</a></th></tr>';
4144 |
}
4145 |
else if (Group == C_Research) {
4146 |
Action = '';
4147 |
if (PlanetIndex != PlanetSelectedIndex) {
4148 |
Action = 'AddAction(\'GMsetValue(|OT_OgameEmpire|,true);window.location.replace(|'+BaseUrl+'?'+A_OverLib[Group].Link+'&session='+Session+'&cp='+A_Planet[PlanetIndex].Id+'&unbau='+A_Construction[Group][Element].Id+'|)\');'+
4149 |
'window.location.replace(\''+BaseUrl+'?'+A_OverLib[Group].Link+'&session='+Session+'&cp='+A_Planet[PlanetSelectedIndex].Id+'\')';
4150 |
}
4151 |
else {
4152 |
Action = 'GMsetValue(\'OT_OgameEmpire\',true);window.location.replace(\''+BaseUrl+'?'+A_OverLib[Group].Link+'&session='+Session+'&cp='+A_Planet[PlanetIndex].Id+'&unbau='+A_Construction[Group][Element].Id+'\')';
4153 |
}
4154 |
Launch = '<br><br><a style="cursor:pointer" onclick="'+Action+'" >'+A_Language[C_StopResearch]+'</a></th></tr>';
4155 |
}
4156 |
}
4157 |
else {
4158 |
if (FontColor == ' color="#00FF00"') {
4159 |
// Batiment
4160 |
if (Group == C_Buildings) {
4161 |
Action = '';
4162 |
if (PlanetIndex != PlanetSelectedIndex) {
4163 |
Action = 'AddAction(\'GMsetValue(|OT_OgameEmpire|,true);window.location.replace(|'+BaseUrl+'?'+A_OverLib[Group].Link+'&session='+Session+'&modus=add&planet='+A_Planet[PlanetIndex].Id+'&cp='+A_Planet[PlanetIndex].Id+'&techid='+A_Construction[Group][Element].Id+'|)\');'+
4164 |
'window.location.replace(\''+BaseUrl+'?'+A_OverLib[Group].Link+'&session='+Session+'&cp='+A_Planet[PlanetSelectedIndex].Id+'\');';
4165 |
}
4166 |
else {
4167 |
Action = 'GMsetValue(\'OT_OgameEmpire\',true);window.location.replace(\''+BaseUrl+'?'+A_OverLib[Group].Link+'&session='+Session+'&modus=add&planet='+A_Planet[PlanetIndex].Id+'&cp='+A_Planet[PlanetIndex].Id+'&techid='+A_Construction[Group][Element].Id+'\')';
4168 |
}
4169 |
Launch = '<br><br><a style="cursor:pointer" onclick="'+Action+'" >'+A_Language[C_LaunchBuildings]+'</a></th></tr>';
4170 |
}
4171 |
// Technologie
4172 |
else if (Group == C_Research) {
4173 |
Action = '';
4174 |
if (PlanetIndex != PlanetSelectedIndex) {
4175 |
Action = 'AddAction(\'GMsetValue(|OT_OgameEmpire|,true);window.location.replace(|'+BaseUrl+'?'+A_OverLib[Group].Link+'&session='+Session+'&cp='+A_Planet[PlanetIndex].Id+'&bau='+A_Construction[Group][Element].Id+'|)\');'+
4176 |
'window.location.replace(\''+BaseUrl+'?'+A_OverLib[Group].Link+'&session='+Session+'&cp='+A_Planet[PlanetSelectedIndex].Id+'\')';
4177 |
}
4178 |
else {
4179 |
Action = 'GMsetValue(\'OT_OgameEmpire\',true);window.location.replace(\''+BaseUrl+'?'+A_OverLib[Group].Link+'&session='+Session+'&cp='+A_Planet[PlanetIndex].Id+'&bau='+A_Construction[Group][Element].Id+'\')';
4180 |
}
4181 |
Launch = '<br><br><a style="cursor:pointer" onclick="'+Action+'" >'+A_Language[C_LaunchResearch]+'</a></th></tr>';
4182 |
}
4183 |
// Defense
4184 |
else if (Group == C_Defenses) {
4185 |
Launch = '<br></th></tr><tr><td class="c" colspan="2">'+A_Language[C_WithPlanetResources]+'</td></tr>'+
4186 |
'<tr><th colspan="2"><input size="6" type="text" name="BuildNumberPlanet" '+NoStringInput+' value="0" onkeypress="RefreshCalc(\'BuildNumberPlanet\','+Group+','+MetalEvo+','+CrystalEvo+','+DeuteriumEvo+','+PlanetIndex+')" /> '+
4187 |
'<a style="cursor:pointer" '+((AddToolTip == true)?'title="-1"':'')+' onclick="document.getElementsByName(\'BuildNumberPlanet\')[0].value=parseInt(document.getElementsByName(\'BuildNumberPlanet\')[0].value)-1;RefreshCalc(\'BuildNumberPlanet\','+Group+','+MetalEvo+','+CrystalEvo+','+DeuteriumEvo+','+PlanetIndex+')">\253</a> '+
4188 |
'<a style="cursor:pointer" '+((AddToolTip == true)?'title="0"':'')+' onclick="document.getElementsByName(\'BuildNumberPlanet\')[0].value=0;RefreshCalc(\'BuildNumberPlanet\','+Group+','+MetalEvo+','+CrystalEvo+','+DeuteriumEvo+','+PlanetIndex+')">@</a> '+
4189 |
'<a style="cursor:pointer" '+((AddToolTip == true)?'title="Max"':'')+' onclick="document.getElementsByName(\'BuildNumberPlanet\')[0].value='+MaxBuildPlanet+';RefreshCalc(\'BuildNumberPlanet\','+Group+','+MetalEvo+','+CrystalEvo+','+DeuteriumEvo+','+PlanetIndex+')">[max '+FormatNb(MaxBuildPlanet)+']</a> '+
4190 |
'<a style="cursor:pointer" '+((AddToolTip == true)?'title="+1"':'')+' onclick="document.getElementsByName(\'BuildNumberPlanet\')[0].value=parseInt(document.getElementsByName(\'BuildNumberPlanet\')[0].value)+1;RefreshCalc(\'BuildNumberPlanet\','+Group+','+MetalEvo+','+CrystalEvo+','+DeuteriumEvo+','+PlanetIndex+')">\273</a> '+
4191 |
'</th></tr>\n';
4192 |
Action = '';
4193 |
if (PlanetIndex != PlanetSelectedIndex) {
4194 |
Action = 'AddAction(\'GMsetValue(|OT_OgameEmpire|,true);window.location.replace(|'+BaseUrl+'?'+A_OverLib[Group].Link+'&session='+Session+'&cp='+A_Planet[PlanetIndex].Id+'&fmenge['+A_Construction[Group][Element].Id+']=\'+document.getElementsByName(\'BuildNumberPlanet\')[0].value+\'|)\');'+
4195 |
'window.location.replace(\''+BaseUrl+'?'+A_OverLib[Group].Link+'&session='+Session+'&cp='+A_Planet[PlanetSelectedIndex].Id+'\')';
4196 |
}
4197 |
else {
4198 |
Action = 'GMsetValue(\'OT_OgameEmpire\',true);window.location.replace(\''+BaseUrl+'?'+A_OverLib[Group].Link+'&session='+Session+'&cp='+A_Planet[PlanetIndex].Id+'&fmenge['+A_Construction[Group][Element].Id+']=\'+document.getElementsByName(\'BuildNumberPlanet\')[0].value)';
4199 |
}
4200 |
Launch += '<tr><th colspan="2"><a style="cursor:pointer" onclick="'+Action+'" >'+A_Language[C_BuildDefenses]+'</a>\n<br></th></tr>'+
4201 |
'<tr><td class="c" colspan="2">'+A_Language[C_WithAllPlanetsResources]+'</td></tr>'+
4202 |
'<tr><th colspan="2"><input size="6" type="text" name="BuildNumberTotal" '+NoStringInput+' value="0" onkeypress="RefreshCalc(\'BuildNumberTotal\','+Group+','+MetalEvo+','+CrystalEvo+','+DeuteriumEvo+','+PlanetIndex+')" /> '+
4203 |
'<a style="cursor:pointer" '+((AddToolTip == true)?'title="-1"':'')+' onclick="document.getElementsByName(\'BuildNumberTotal\')[0].value=parseInt(document.getElementsByName(\'BuildNumberTotal\')[0].value)-1;RefreshCalc(\'BuildNumberTotal\','+Group+','+MetalEvo+','+CrystalEvo+','+DeuteriumEvo+','+PlanetIndex+')">\253</a> '+
4204 |
'<a style="cursor:pointer" '+((AddToolTip == true)?'title="0"':'')+' onclick="document.getElementsByName(\'BuildNumberTotal\')[0].value=0;RefreshCalc(\'BuildNumberTotal\','+Group+','+MetalEvo+','+CrystalEvo+','+DeuteriumEvo+','+PlanetIndex+')">@</a> '+
4205 |
'<a style="cursor:pointer" '+((AddToolTip == true)?'title="Max"':'')+' onclick="document.getElementsByName(\'BuildNumberTotal\')[0].value='+MaxBuildTotal+';RefreshCalc(\'BuildNumberTotal\','+Group+','+MetalEvo+','+CrystalEvo+','+DeuteriumEvo+','+PlanetIndex+')">[max '+FormatNb(MaxBuildTotal)+']</a> '+
4206 |
'<a style="cursor:pointer" '+((AddToolTip == true)?'title="+1"':'')+' onclick="document.getElementsByName(\'BuildNumberTotal\')[0].value=parseInt(document.getElementsByName(\'BuildNumberTotal\')[0].value)+1;RefreshCalc(\'BuildNumberTotal\','+Group+','+MetalEvo+','+CrystalEvo+','+DeuteriumEvo+','+PlanetIndex+')">\273</a> '+
4207 |
'</th></tr>\n';
4208 |
Action = 'SetTransferValue((document.getElementsByName(\'BuildNumberTotal\')[0].value*'+MetalEvo+'),(document.getElementsByName(\'BuildNumberTotal\')[0].value*'+CrystalEvo+'),(document.getElementsByName(\'BuildNumberTotal\')[0].value*'+DeuteriumEvo+'),'+PlanetIndex+');window.location.replace(\''+BaseUrl+'?page=flotten1&session='+Session+'&cp='+A_Planet[PlanetSelectedIndex].Id+'\');';
4209 |
Launch += '<tr><th colspan="2"><a style="cursor:pointer" onclick="'+Action+'" >'+A_Language[C_TransferResources]+'</a>\n</th></tr>';
4210 |
}
4211 |
// Chantier spatial
4212 |
else if (Group == C_Fleets) {
4213 |
Launch = '<br></th></tr><tr><td class="c" colspan="2">'+A_Language[C_WithPlanetResources]+'</td></tr>'+
4214 |
'<tr><th colspan="2"><input size="6" type="text" name="BuildNumberPlanet" '+NoStringInput+' value="0" onkeypress="RefreshCalc(\'BuildNumberPlanet\','+Group+','+MetalEvo+','+CrystalEvo+','+DeuteriumEvo+','+PlanetIndex+')" /> '+
4215 |
'<a style="cursor:pointer" '+((AddToolTip == true)?'title="-1"':'')+' onclick="document.getElementsByName(\'BuildNumberPlanet\')[0].value=parseInt(document.getElementsByName(\'BuildNumberPlanet\')[0].value)-1;RefreshCalc(\'BuildNumberPlanet\','+Group+','+MetalEvo+','+CrystalEvo+','+DeuteriumEvo+','+PlanetIndex+')">\253</a> '+
4216 |
'<a style="cursor:pointer" '+((AddToolTip == true)?'title="0"':'')+' onclick="document.getElementsByName(\'BuildNumberPlanet\')[0].value=0;RefreshCalc(\'BuildNumberPlanet\','+Group+','+MetalEvo+','+CrystalEvo+','+DeuteriumEvo+','+PlanetIndex+')">@</a> '+
4217 |
'<a style="cursor:pointer" '+((AddToolTip == true)?'title="Max"':'')+' onclick="document.getElementsByName(\'BuildNumberPlanet\')[0].value='+MaxBuildPlanet+';RefreshCalc(\'BuildNumberPlanet\','+Group+','+MetalEvo+','+CrystalEvo+','+DeuteriumEvo+','+PlanetIndex+')">[max '+FormatNb(MaxBuildPlanet)+']</a> '+
4218 |
'<a style="cursor:pointer" '+((AddToolTip == true)?'title="+1"':'')+' onclick="document.getElementsByName(\'BuildNumberPlanet\')[0].value=parseInt(document.getElementsByName(\'BuildNumberPlanet\')[0].value)+1;RefreshCalc(\'BuildNumberPlanet\','+Group+','+MetalEvo+','+CrystalEvo+','+DeuteriumEvo+','+PlanetIndex+')">\273</a> '+
4219 |
'</th></tr>\n';
4220 |
Action = '';
4221 |
if (PlanetIndex != PlanetSelectedIndex) {
4222 |
Action = 'AddAction(\'GMsetValue(|OT_OgameEmpire|,true);window.location.replace(|'+BaseUrl+'?'+A_OverLib[Group].Link+'&session='+Session+'&cp='+A_Planet[PlanetIndex].Id+'&fmenge['+A_Construction[Group][Element].Id+']=\'+document.getElementsByName(\'BuildNumberPlanet\')[0].value+\'|)\');'+
4223 |
'window.location.replace(\''+BaseUrl+'?'+A_OverLib[Group].Link+'&session='+Session+'&cp='+A_Planet[PlanetSelectedIndex].Id+'\')';
4224 |
}
4225 |
else {
4226 |
Action = 'GMsetValue(\'OT_OgameEmpire\',true);window.location.replace(\''+BaseUrl+'?'+A_OverLib[Group].Link+'&session='+Session+'&cp='+A_Planet[PlanetIndex].Id+'&fmenge['+A_Construction[Group][Element].Id+']=\'+document.getElementsByName(\'BuildNumberPlanet\')[0].value)';
4227 |
}
4228 |
Launch += '<tr><th colspan="2"><a style="cursor:pointer" onclick="'+Action+'" >'+A_Language[C_BuildFleets]+'</a>\n<br></th></tr>'+
4229 |
'<tr><td class="c" colspan="2">'+A_Language[C_WithAllPlanetsResources]+'</td></tr>'+
4230 |
'<tr><th colspan="2"><input size="6" type="text" name="BuildNumberTotal" '+NoStringInput+' value="0" onkeypress="RefreshCalc(\'BuildNumberTotal\','+Group+','+MetalEvo+','+CrystalEvo+','+DeuteriumEvo+','+PlanetIndex+')" /> '+
4231 |
'<a style="cursor:pointer" '+((AddToolTip == true)?'title="-1"':'')+' onclick="document.getElementsByName(\'BuildNumberTotal\')[0].value=parseInt(document.getElementsByName(\'BuildNumberTotal\')[0].value)-1;RefreshCalc(\'BuildNumberTotal\','+Group+','+MetalEvo+','+CrystalEvo+','+DeuteriumEvo+','+PlanetIndex+')">\253</a> '+
4232 |
'<a style="cursor:pointer" '+((AddToolTip == true)?'title="0"':'')+' onclick="document.getElementsByName(\'BuildNumberTotal\')[0].value=0;RefreshCalc(\'BuildNumberTotal\','+Group+','+MetalEvo+','+CrystalEvo+','+DeuteriumEvo+','+PlanetIndex+')">@</a> '+
4233 |
'<a style="cursor:pointer" '+((AddToolTip == true)?'title="Max"':'')+' onclick="document.getElementsByName(\'BuildNumberTotal\')[0].value='+MaxBuildTotal+';RefreshCalc(\'BuildNumberTotal\','+Group+','+MetalEvo+','+CrystalEvo+','+DeuteriumEvo+','+PlanetIndex+')">[max '+FormatNb(MaxBuildTotal)+']</a> '+
4234 |
'<a style="cursor:pointer" '+((AddToolTip == true)?'title="+1"':'')+' onclick="document.getElementsByName(\'BuildNumberTotal\')[0].value=parseInt(document.getElementsByName(\'BuildNumberTotal\')[0].value)+1;RefreshCalc(\'BuildNumberTotal\','+Group+','+MetalEvo+','+CrystalEvo+','+DeuteriumEvo+','+PlanetIndex+')">\273</a> '+
4235 |
'</th></tr>\n';
4236 |
Action = 'SetTransferValue((document.getElementsByName(\'BuildNumberTotal\')[0].value*'+MetalEvo+'),(document.getElementsByName(\'BuildNumberTotal\')[0].value*'+CrystalEvo+'),(document.getElementsByName(\'BuildNumberTotal\')[0].value*'+DeuteriumEvo+'),'+PlanetIndex+');window.location.replace(\''+BaseUrl+'?page=flotten1&session='+Session+'&cp='+A_Planet[PlanetSelectedIndex].Id+'\')';
4237 |
Launch += '<tr><th colspan="2"><a style="cursor:pointer" onclick="'+Action+'" >'+A_Language[C_TransferResources]+'</a>\n</th></tr>';
4238 |
}
4239 |
}
4240 |
// Ajout du lien vers la page flotte (preremplissage destination, ressources)
4241 |
else if (FontColor == ' color="#FF9900"') {
4242 |
if ((Group == C_Defenses) || (Group == C_Fleets)) {
4243 |
Launch = '<br></th></tr><tr><td class="c" colspan="2">'+A_Language[C_WithAllPlanetsResources]+'</td></tr>'+
4244 |
'<tr><th colspan="2"><input size="6" type="text" name="BuildNumberTotal" '+NoStringInput+' value="0" onkeypress="RefreshCalc(\'BuildNumberTotal\','+Group+','+MetalEvo+','+CrystalEvo+','+DeuteriumEvo+','+PlanetIndex+')" /> '+
4245 |
'<a style="cursor:pointer" '+((AddToolTip == true)?'title="-1"':'')+' onclick="document.getElementsByName(\'BuildNumberTotal\')[0].value=parseInt(document.getElementsByName(\'BuildNumberTotal\')[0].value)-1;RefreshCalc(\'BuildNumberTotal\','+Group+','+MetalEvo+','+CrystalEvo+','+DeuteriumEvo+','+PlanetIndex+')">\253</a> '+
4246 |
'<a style="cursor:pointer" '+((AddToolTip == true)?'title="0"':'')+' onclick="document.getElementsByName(\'BuildNumberTotal\')[0].value=0;RefreshCalc(\'BuildNumberTotal\','+Group+','+MetalEvo+','+CrystalEvo+','+DeuteriumEvo+','+PlanetIndex+')">@</a> '+
4247 |
'<a style="cursor:pointer" '+((AddToolTip == true)?'title="Max"':'')+' onclick="document.getElementsByName(\'BuildNumberTotal\')[0].value='+MaxBuildTotal+';RefreshCalc(\'BuildNumberTotal\','+Group+','+MetalEvo+','+CrystalEvo+','+DeuteriumEvo+','+PlanetIndex+')">[max '+MaxBuildTotal+']</a> '+
4248 |
'<a style="cursor:pointer" '+((AddToolTip == true)?'title="+1"':'')+' onclick="document.getElementsByName(\'BuildNumberTotal\')[0].value=parseInt(document.getElementsByName(\'BuildNumberTotal\')[0].value)+1;RefreshCalc(\'BuildNumberTotal\','+Group+','+MetalEvo+','+CrystalEvo+','+DeuteriumEvo+','+PlanetIndex+')">\273</a> '+
4249 |
'</th></tr>\n';
4250 |
Action = 'SetTransferValue((document.getElementsByName(\'BuildNumberTotal\')[0].value*'+MetalEvo+'),(document.getElementsByName(\'BuildNumberTotal\')[0].value*'+CrystalEvo+'),(document.getElementsByName(\'BuildNumberTotal\')[0].value*'+DeuteriumEvo+'),'+PlanetIndex+');window.location.replace(\''+BaseUrl+'?page=flotten1&session='+Session+'&cp='+A_Planet[PlanetSelectedIndex].Id+'\')';
4251 |
Launch += '<tr><th colspan="2"><a style="cursor:pointer" onclick="'+Action+'" >'+A_Language[C_TransferResources]+'</a>\n</th></tr>';
4252 |
}
4253 |
else {
4254 |
Action = 'SetTransferValue('+MetalEvo+','+CrystalEvo+','+DeuteriumEvo+','+PlanetIndex+');window.location.replace(\''+BaseUrl+'?page=flotten1&session='+Session+'&cp='+A_Planet[PlanetSelectedIndex].Id+'\')';
4255 |
Launch = '<br><br><a style="cursor:pointer" onclick="'+Action+'" >'+A_Language[C_TransferResources]+'</a><br></th></tr>';
4256 |
}
4257 |
}
4258 |
}
4259 |
}
4260 |
4261 |
// Envoi du texte
4262 |
OverLibAction = '<table width=240>'+
4263 |
'<tr><td class=c colspan=2>'+A_Construction[Group][Element].Name+' ('+A_Planet[PlanetIndex].Name+')</td></tr>'+
4264 |
'<tr><th width=80><img src='+SkinUrl+'gebaeude/'+A_Construction[Group][Element].Id+'.gif alt='+A_Construction[Group][Element].Name+' width=75 height=75/></th>'+
4265 |
'<th align=left><table width=200><tr><td class=c>'+(((Group == C_Defenses) || (Group == C_Fleets)) ? (A_Language[C_TotalBuildingsCost]+' :') : (A_Language[C_LevelCost1]+' '+(parseInt(((Value == '-') ? 0 : Value))+1)+A_Language[C_LevelCost2]+' :'))+'</td></tr>'+
4266 |
'<tr><th align=left>'+ResCalc+CalcEnergy(Group,Element,PlanetIndex)+'</th></tr>';
4267 |
var MetalMissing = ((MetalEvo-Metal > 0)?(MetalEvo-Metal):0);
4268 |
var CrystalMissing = ((CrystalEvo-Crystal > 0)?(CrystalEvo-Crystal):0);
4269 |
var DeuteriumMissing = ((DeuteriumEvo-Deuterium > 0)?(DeuteriumEvo-Deuterium):0);
4270 |
OverLibAction += ((MetalMissing+CrystalMissing+DeuteriumMissing > 0 || Group == C_Defenses || Group == C_Fleets)?'<tr id=MissingResourcesTr '+((MetalMissing+CrystalMissing+DeuteriumMissing > 0)?'':'style=display:none')+'>'+
4271 |
'<th align=left id=MissingResources style=color:red>'+CalcMissingResources(MetalMissing,CrystalMissing,DeuteriumMissing)+'</th></tr>':'')+
4272 |
((MetalMissing+CrystalMissing+DeuteriumMissing > 0 || Group == C_Defenses || Group == C_Fleets)?'<tr id=TransportShipTr '+((MetalMissing+CrystalMissing+DeuteriumMissing > 0)?'':'style=display:none')+'>'+
4273 |
'<th align=left id=TransportShip>'+CalcTransportShip(MetalMissing,CrystalMissing,DeuteriumMissing)+'</th></tr>':'')+
4274 |
'<tr><th align=left id=BuildingTime>'+A_Language[C_BuildingTime]+': '+CalcBuildingTime(Group,MetalEvo,CrystalEvo,PlanetIndex)+'</th></tr></table><br>';
4275 |
Action = '';
4276 |
if (PlanetIndex != PlanetSelectedIndex) {
4277 |
Action = 'AddAction(\'window.location.replace(|'+BaseUrl+'?'+A_OverLib[Group].Link+'&session='+Session+'&cp='+A_Planet[PlanetIndex].Id+'|)\');'+
4278 |
'window.location.replace(\''+BaseUrl+'?'+A_OverLib[Group].Link+'&session='+Session+'&cp='+A_Planet[PlanetSelectedIndex].Id+'\')';
4279 |
}
4280 |
else {
4281 |
Action = 'window.location.replace(\''+BaseUrl+'?'+A_OverLib[Group].Link+'&session='+Session+'&cp='+A_Planet[PlanetIndex].Id+'\')';
4282 |
}
4283 |
OverLibAction += '<a style="cursor:pointer" onclick="'+Action+'">'+A_OverLib[Group].Text+'</a>'+
4284 |
Launch+((!UnderConstructionValue) ? TimeBeforeBuilding : '')+
4285 |
'</table>';
4286 |
4287 |
}
4288 |
else {
4289 |
4290 |
// Envoi du texte
4291 |
OverLibAction = '<table width=240>'+
4292 |
'<tr><td class=c colspan=2>'+A_Construction[Group][Element].Name+'</td></tr>'+
4293 |
'<tr><th width=80><img src='+SkinUrl+'gebaeude/'+A_Construction[Group][Element].Id+'.gif alt='+A_Construction[Group][Element].Name+' width=75 height=75/></th>'+
4294 |
'<th align=left><table width=200><tr><td class=c>'+(((Group == C_Defenses) || (Group == C_Fleets)) ? (A_Language[C_TotalBuildingsCost]+' :') : (A_Language[C_LevelCost1]+' '+(parseInt(((Value == '-') ? 0 : Value))+1)+' :'))+A_Language[C_LevelCost2]+'</td></tr>'+
4295 |
'<tr><th align=left>'+ResCalc+'</th></tr></table><br></table>';
4296 |
4297 |
}
4298 |
4299 |
return OverLibAction;
4300 |
}
4301 |
catch(err) {
4302 |
ShowError(err, 'OverLibFunction('+Value+', '+Group+', '+Element+', '+PlanetIndex+', '+UnderConstructionValue+')');
4303 |
}
4304 |
}
4305 |
unsafeWindow.OverLibFunction = OverLibFunction;
4306 |
4307 |
function EmpireBlockShowHide(Id, TitleId, Title, Number) {
4308 |
try {
4309 |
var Display;
4310 |
if (document.getElementById(Id+'0')) {
4311 |
if (document.getElementById(Id+'0').style.display == 'none') {
4312 |
Display = '';
4313 |
document.getElementById(TitleId).innerHTML = Title+' <img src="'+C_ImgUp+'" alt="'+A_Language[C_RollUp]+'" '+((AddToolTip == true)?'title="'+A_Language[C_RollUp]+'"':'')+'>';
4314 |
}
4315 |
else {
4316 |
Display = 'none';
4317 |
document.getElementById(TitleId).innerHTML = Title+' <img src="'+C_ImgDown+'" alt="'+A_Language[C_Unfold]+'" '+((AddToolTip == true)?'title="'+A_Language[C_Unfold]+'"':'')+'>';
4318 |
}
4319 |
for (i = 0; i < Number; i++) {
4320 |
if (document.getElementById(Id+i)) {
4321 |
document.getElementById(Id+i).style.display = Display;
4322 |
}
4323 |
}
4324 |
}
4325 |
}
4326 |
catch(err) {
4327 |
ShowError(err, 'EmpireBlockShowHide('+Id+', '+TitleId+', '+Title+', '+Number+')');
4328 |
}
4329 |
}
4330 |
unsafeWindow.EmpireBlockShowHide = EmpireBlockShowHide;
4331 |
4332 |
function HeaderEmpire(Id, Title, Number, State) {
4333 |
try {
4334 |
if (State == 'none') {
4335 |
return '<tr><td class="c" align="center" colspan="'+(PlanetSelect.length+1)+'" style="cursor:pointer" onclick="EmpireBlockShowHide(\''+Id+'\',\''+Id+'Title\',\''+Title.replace("'","\'+String.fromCharCode(39)+\'")+'\','+Number+')"><span id="'+Id+'Title">'+Title+' <img src="'+C_ImgDown+'" alt="'+A_Language[C_Unfold]+'" '+((AddToolTip == true)?'title="'+A_Language[C_Unfold]+'"':'')+'></span></td><td style="background:none"></td></tr>\n';
4336 |
}
4337 |
else {
4338 |
return '<tr><td class="c" align="center" colspan="'+(PlanetSelect.length+1)+'" style="cursor:pointer" onclick="EmpireBlockShowHide(\''+Id+'\',\''+Id+'Title\',\''+Title.replace("'","\'+String.fromCharCode(39)+\'")+'\','+Number+')"><span id="'+Id+'Title">'+Title+' <img src="'+C_ImgUp+'" alt="'+A_Language[C_RollUp]+'" '+((AddToolTip == true)?'title="'+A_Language[C_RollUp]+'"':'')+'></span></td><td style="background:none"></td></tr>\n';
4339 |
}
4340 |
}
4341 |
catch(err) {
4342 |
ShowError(err, 'HeaderEmpire('+Id+', '+Title+', '+Number+', '+State+')');
4343 |
}
4344 |
}
4345 |
4346 |
function CellHTML(Text, AlignLeft) {
4347 |
return '<th '+((AlignLeft == true) ? 'style="text-align:left"' : '')+'>'+Text+'</th>\n';
4348 |
}
4349 |
4350 |
function RowBBCode(Text, LayoutInTable) {
4351 |
return (LayoutInTable==true?'[tr]':'')+Text+(LayoutInTable==true?'[/tr]':'');
4352 |
}
4353 |
unsafeWindow.RowBBCode = RowBBCode;
4354 |
4355 |
function CellBBCode(Text, Color, LayoutInTable, End, ColSpan) {
4356 |
var Center = document.getElementById('CenteredTextInTable').checked;
4357 |
var Resize = document.getElementById('ResizeTextInTable').checked;
4358 |
var Colored = document.getElementById('TextColored').checked;
4359 |
Text = ((Colored==true)?'[color='+Color+']'+Text+'[/color]':Text);
4360 |
if (LayoutInTable==true) {
4361 |
Text = ((Resize==true)?'[size=11]'+Text+'[/size]':Text);
4362 |
Text = ((Center==true)?'[center]'+Text+'[/center]':Text);
4363 |
return '[td'+(ColSpan?' colspan='+ColSpan+'':'')+']'+Text+'[/td]';
4364 |
}
4365 |
else {
4366 |
return Text+(End==true?'':'   ');
4367 |
}
4368 |
}
4369 |
unsafeWindow.CellBBCode = CellBBCode;
4370 |
4371 |
function ExportGenerator() {
4372 |
try {
4373 |
var Centred = document.getElementById('ExportCenter').checked;
4374 |
var LayoutInTable = document.getElementById('LayoutInTable').checked;
4375 |
var NoSpecialCharacter = document.getElementById('NoSpecialCharacter').checked;
4376 |
var A_ExportSection = new Array();
4377 |
for (i = 0; i < 8; i++) {
4378 |
A_ExportSection[i] = document.getElementById('ExportSection'+i).checked;
4379 |
}
4380 |
var Code, Color;
4381 |
// BBCode
4382 |
Code = (Centred==true?'[center]':'')+(LayoutInTable==true?'[table]':'');
4383 |
for (i = 0; i < 8; i++) {
4384 |
if (A_ExportSection[i] == true) {
4385 |
// Nom des planetes
4386 |
if (i == 0) {
4387 |
Code += (LayoutInTable==true?'[tr]':'')+CellBBCode(A_Language[C_Name],'#99ff00',LayoutInTable);
4388 |
}
4389 |
// Informations generales
4390 |
else if (i == 1) {
4391 |
A_PlanetTr[0] = CellBBCode(A_Language[C_Type],'#99ff00',LayoutInTable);
4392 |
A_PlanetTr[1] = CellBBCode(A_Language[C_Coordinates],'#99ff00',LayoutInTable);
4393 |
A_PlanetTr[2] = CellBBCode(A_Language[C_FieldNumber],'#99ff00',LayoutInTable);
4394 |
A_PlanetTr[3] = CellBBCode(A_Language[C_Diameter],'#99ff00',LayoutInTable);
4395 |
A_PlanetTr[4] = CellBBCode(A_Language[C_Temperature],'#99ff00',LayoutInTable);
4396 |
}
4397 |
// Production horaire
4398 |
else if (i == 2) {
4399 |
A_HourProductionTr[0] = CellBBCode(A_Construction[C_Buildings][0].Name,'#99ff00',LayoutInTable);
4400 |
A_HourProductionTr[1] = CellBBCode(A_Construction[C_Buildings][1].Name,'#99ff00',LayoutInTable);
4401 |
A_HourProductionTr[2] = CellBBCode(A_Construction[C_Buildings][2].Name,'#99ff00',LayoutInTable);
4402 |
}
4403 |
// Production journaliere
4404 |
else if (i == 3) {
4405 |
A_DayProductionTr[0] = CellBBCode(A_Construction[C_Buildings][0].Name,'#99ff00',LayoutInTable);
4406 |
A_DayProductionTr[1] = CellBBCode(A_Construction[C_Buildings][1].Name,'#99ff00',LayoutInTable);
4407 |
A_DayProductionTr[2] = CellBBCode(A_Construction[C_Buildings][2].Name,'#99ff00',LayoutInTable);
4408 |
}
4409 |
// Batiment
4410 |
else if (i == 4) {
4411 |
for (j = 0; j < 18; j++) {
4412 |
if (A_Construction[C_Buildings][j].Name) {
4413 |
A_BuildingsTr[j] = CellBBCode(A_Construction[C_Buildings][j].Name,'#99ff00',LayoutInTable);
4414 |
}
4415 |
}
4416 |
}
4417 |
// Technologie
4418 |
else if (i == 5) {
4419 |
for (j = 0; j < 16; j++) {
4420 |
A_ResearchTr[j] = CellBBCode(A_Construction[C_Research][j].Name,'#99ff00',LayoutInTable)+
4421 |
CellBBCode(A_Research[j].Level,'#0099ff',LayoutInTable);
4422 |
CellBBCode('','#99ff00',LayoutInTable,true,PlanetSelect.length);
4423 |
}
4424 |
}
4425 |
// Defenses
4426 |
else if (i == 6) {
4427 |
for (j = 0; j < 10; j++) {
4428 |
A_DefensesTr[j] = CellBBCode(A_Construction[C_Defenses][j].Name,'#99ff00',LayoutInTable);
4429 |
}
4430 |
}
4431 |
// Flotte
4432 |
else if (i == 7) {
4433 |
for (j = 0; j < 14; j++) {
4434 |
A_FleetsTr[j] = CellBBCode(A_Construction[C_Fleets][j].Name,'#99ff00',LayoutInTable);
4435 |
}
4436 |
}
4437 |
for (j = 0; j < PlanetSelect.length; j++) {
4438 |
Color = ((j&1 == 1)?'#ff9900':'#0099ff');
4439 |
if (i == 0) {
4440 |
Code += CellBBCode(A_Planet[j].Name,Color,LayoutInTable,((j+1==PlanetSelect.length)?true:false));
4441 |
}
4442 |
else if (i == 1) {
4443 |
A_PlanetTr[0] += CellBBCode(((A_Planet[j].Type == C_Planet)?A_Language[C_Planet]:A_Language[C_Moon]),Color,LayoutInTable,((j+1==PlanetSelect.length)?true:false));
4444 |
A_PlanetTr[1] += CellBBCode('['+A_Planet[j].Galaxy+':'+A_Planet[j].System+':'+A_Planet[j].Planet+']',Color,LayoutInTable,((j+1==PlanetSelect.length)?true:false));
4445 |
A_PlanetTr[2] += CellBBCode(A_Planet[j].UsedSpace+'/'+A_Planet[j].TotalSpace,Color,LayoutInTable,((j+1==PlanetSelect.length)?true:false));
4446 |
A_PlanetTr[3] += CellBBCode(FormatNb(A_Planet[j].Diameter)+' km',Color,LayoutInTable,((j+1==PlanetSelect.length)?true:false));
4447 |
A_PlanetTr[4] += CellBBCode(A_Planet[j].MinTemperature+' '+A_Language[C_To]+' '+A_Planet[j].MaxTemperature+' \260C',Color,LayoutInTable,((j+1==PlanetSelect.length)?true:false));
4448 |
}
4449 |
else if (i == 2) {
4450 |
A_HourProductionTr[0] += CellBBCode(FormatNb(A_Production[j].Metal),Color,LayoutInTable);
4451 |
A_HourProductionTr[1] += CellBBCode(FormatNb(A_Production[j].Crystal),Color,LayoutInTable);
4452 |
A_HourProductionTr[2] += CellBBCode(FormatNb(A_Production[j].Deuterium),Color,LayoutInTable);
4453 |
}
4454 |
else if (i == 3) {
4455 |
A_DayProductionTr[0] += CellBBCode(FormatNb(A_Production[j].Metal*24),Color,LayoutInTable);
4456 |
A_DayProductionTr[1] += CellBBCode(FormatNb(A_Production[j].Crystal*24),Color,LayoutInTable);
4457 |
A_DayProductionTr[2] += CellBBCode(FormatNb(A_Production[j].Deuterium*24),Color,LayoutInTable);
4458 |
}
4459 |
else if (i == 4) {
4460 |
for (k = 0; k < 18; k++) {
4461 |
if (A_Construction[C_Buildings][k].Name) {
4462 |
A_BuildingsTr[k] += CellBBCode(A_Buildings[j][k].Level,Color,LayoutInTable,((j+1==PlanetSelect.length)?true:false));
4463 |
}
4464 |
}
4465 |
}
4466 |
else if (i == 6) {
4467 |
for (k = 0; k < 10; k++) {
4468 |
A_DefensesTr[k] += CellBBCode(FormatNb(A_Defenses[j][k]),Color,LayoutInTable);
4469 |
}
4470 |
}
4471 |
else if (i == 7) {
4472 |
for (k = 0; k < 14; k++) {
4473 |
A_FleetsTr[k] += CellBBCode(FormatNb(A_Fleets[j][k]),Color,LayoutInTable);
4474 |
}
4475 |
}
4476 |
}
4477 |
if (i == 0) {
4478 |
Code += (LayoutInTable==true?'[td][/td][/tr]':'')+C_CRLF;
4479 |
}
4480 |
else if (i == 1) {
4481 |
Code += RowBBCode(CellBBCode('----------'+A_Language[C_MainInformations]+'----------','#99ff00',LayoutInTable,true,PlanetSelect.length+2),LayoutInTable)+C_CRLF+
4482 |
RowBBCode(A_PlanetTr[0],LayoutInTable)+C_CRLF+RowBBCode(A_PlanetTr[1],LayoutInTable)+C_CRLF+RowBBCode(A_PlanetTr[2],LayoutInTable)+
4483 |
C_CRLF+RowBBCode(A_PlanetTr[3],LayoutInTable)+C_CRLF+RowBBCode(A_PlanetTr[4],LayoutInTable)+C_CRLF;
4484 |
}
4485 |
else if (i == 2) {
4486 |
Code += RowBBCode(CellBBCode('----------'+A_Language[C_HourProduction]+'----------','#99ff00',LayoutInTable,true,PlanetSelect.length+2),LayoutInTable)+C_CRLF+
4487 |
RowBBCode(A_HourProductionTr[0]+CellBBCode(FormatNb(MetalProductionTotal),'#99ff00',LayoutInTable),LayoutInTable,true)+C_CRLF+
4488 |
RowBBCode(A_HourProductionTr[1]+CellBBCode(FormatNb(CrystalProductionTotal),'#99ff00',LayoutInTable),LayoutInTable,true)+C_CRLF+
4489 |
RowBBCode(A_HourProductionTr[2]+CellBBCode(FormatNb(DeuteriumProductionTotal),'#99ff00',LayoutInTable),LayoutInTable,true)+C_CRLF;
4490 |
}
4491 |
else if (i == 3) {
4492 |
Code += RowBBCode(CellBBCode('----------'+A_Language[C_DayProduction]+'----------','#99ff00',LayoutInTable,true,PlanetSelect.length+2),LayoutInTable)+C_CRLF+
4493 |
RowBBCode(A_DayProductionTr[0]+CellBBCode(FormatNb(MetalProductionTotal*24),'#99ff00',LayoutInTable),LayoutInTable,true)+C_CRLF+
4494 |
RowBBCode(A_DayProductionTr[1]+CellBBCode(FormatNb(CrystalProductionTotal*24),'#99ff00',LayoutInTable),LayoutInTable,true)+C_CRLF+
4495 |
RowBBCode(A_DayProductionTr[2]+CellBBCode(FormatNb(DeuteriumProductionTotal*24),'#99ff00',LayoutInTable),LayoutInTable,true)+C_CRLF;
4496 |
}
4497 |
else if (i == 4) {
4498 |
Code += RowBBCode(CellBBCode('----------'+A_Language[C_BuildingsTxt]+'----------','#99ff00',LayoutInTable,true,PlanetSelect.length+2),LayoutInTable,true)+C_CRLF;
4499 |
for (j = 0; j < 18; j++) {
4500 |
if (A_Construction[C_Buildings][j].Name) {
4501 |
Code += RowBBCode(A_BuildingsTr[j],LayoutInTable)+C_CRLF;
4502 |
}
4503 |
}
4504 |
}
4505 |
else if (i == 5) {
4506 |
Code += RowBBCode(CellBBCode('----------'+A_Language[C_ResearchTxt]+' ('+ResearchTotal+' '+A_Language[C_Points]+')----------','#99ff00',LayoutInTable,true,PlanetSelect.length+2),LayoutInTable)+C_CRLF;
4507 |
for (j = 0; j < 16; j++) {
4508 |
Code += RowBBCode(A_ResearchTr[j],LayoutInTable)+C_CRLF;
4509 |
}
4510 |
}
4511 |
else if (i == 6) {
4512 |
Code += RowBBCode(CellBBCode('----------'+A_Language[C_DefensesTxt]+'----------','#99ff00',LayoutInTable,true,PlanetSelect.length+2),LayoutInTable)+C_CRLF;
4513 |
for (j = 0; j < 10; j++) {
4514 |
Code += RowBBCode(A_DefensesTr[j]+CellBBCode(FormatNb(A_DefensesTotal[j]),'#99ff00',LayoutInTable),LayoutInTable,true)+C_CRLF;
4515 |
}
4516 |
}
4517 |
else if (i == 7) {
4518 |
Code += RowBBCode(CellBBCode('----------'+A_Language[C_FleetsTxt]+' ('+FormatNb(FleetsTotal)+')----------','#99ff00',LayoutInTable,PlanetSelect.length+2),LayoutInTable)+C_CRLF;
4519 |
for (j = 0; j < 14; j++) {
4520 |
Code += RowBBCode(A_FleetsTr[j]+CellBBCode(FormatNb(A_FleetsTotal[j]),'#99ff00',LayoutInTable,true),LayoutInTable)+C_CRLF;
4521 |
}
4522 |
}
4523 |
}
4524 |
}
4525 |
Code += (LayoutInTable==true?'[/table]':'')+C_CRLF+'Generated by [url=http://userscripts.org/scripts/show/23500]'+C_ScriptName+'[/url]'+(Centred==true?'[/center]':'');
4526 |
if (NoSpecialCharacter == true) Code = Code.replace(/\&([a-zA-Z0-9\#]+)\;/g, ' ');
4527 |
document.getElementsByName('ExportArea')[0].value = Code;
4528 |
document.getElementById('CharacterNumber').innerHTML = ' ('+Code.length+' '+A_Language[C_Characters]+')';
4529 |
SetClipboard(Code);
4530 |
}
4531 |
catch(err) {
4532 |
ShowError(err, 'ExportGenerator()');
4533 |
}
4534 |
}
4535 |
unsafeWindow.ExportGenerator = ExportGenerator;
4536 |
4537 |
function Export() {
4538 |
try {
4539 |
var OverLibAction = '<table width=600>'+
4540 |
'<tr><td class=c colspan=2>'+A_Language[C_Export]+'</td></tr>'+
4541 |
'<tr><th colspan="2">'+A_Language[C_GeneratorOptions]+'</th></tr>'+
4542 |
'<tr><th colspan="2">'+
4543 |
'<input type="checkbox" id="ExportCenter" ckecked="CHECKED"><label for="ExportCenter">'+A_Language[C_Center]+'</label>'+
4544 |
'<input type="checkbox" id="TextColored" ckecked="CHECKED"><label for="TextColored">'+A_Language[C_TextColored]+'</label>'+
4545 |
'<input type="checkbox" id="NoSpecialCharacter" ckecked="CHECKED"><label for="NoSpecialCharacter">'+A_Language[C_NoSpecialCharacter]+'</label><br>'+
4546 |
'<input type="checkbox" id="LayoutInTable" ckecked="CHECKED"><label for="LayoutInTable">'+A_Language[C_LayoutInTable]+'</label>'+
4547 |
'<input type="checkbox" id="CenteredTextInTable" ckecked="CHECKED"><label for="CenteredTextInTable">'+A_Language[C_CenteredTextInTable]+'</label>'+
4548 |
'<input type="checkbox" id="ResizeTextInTable" ckecked="CHECKED"><label for="ResizeTextInTable">'+A_Language[C_ResizeTextInTable]+'</label>'+
4549 |
'</th></tr>'+
4550 |
'<tr><th colspan="2">'+
4551 |
'<input type="checkbox" id="ExportSection0"><label for="ExportSection0">'+A_Language[C_Name]+'</label>'+
4552 |
'<input type="checkbox" id="ExportSection1"><label for="ExportSection1">'+A_Language[C_MainInformations]+'</label>'+
4553 |
'<input type="checkbox" id="ExportSection2"><label for="ExportSection2">'+A_Language[C_HourProduction]+'</label><br>'+
4554 |
'<input type="checkbox" id="ExportSection3"><label for="ExportSection3">'+A_Language[C_DayProduction]+'</label>'+
4555 |
'<input type="checkbox" id="ExportSection4"><label for="ExportSection4">'+A_Language[C_BuildingsTxt]+'</label>'+
4556 |
'<input type="checkbox" id="ExportSection5"><label for="ExportSection5">'+A_Language[C_ResearchTxt]+'</label>'+
4557 |
'<input type="checkbox" id="ExportSection6"><label for="ExportSection6">'+A_Language[C_DefensesTxt]+'</label>'+
4558 |
'<input type="checkbox" id="ExportSection7"><label for="ExportSection7">'+A_Language[C_FleetsTxt]+'</label>'+
4559 |
'</th></tr>'+
4560 |
'<tr><th colspan="2"><input type="button" name="ExportGenerator" value="'+A_Language[C_Generate]+'" onclick="ExportGenerator()"><span id="CharacterNumber"></span></th></tr>'+
4561 |
'<tr><th colspan="2"><textarea name="ExportArea" rows="20" cols="200"></textarea></th></tr>'+
4562 |
'<tr><th colspan="2" id="cell"></th></tr>'+
4563 |
'</table>';
4564 |
return OverLibAction;
4565 |
}
4566 |
catch(err) {
4567 |
ShowError(err, 'Export()');
4568 |
}
4569 |
}
4570 |
unsafeWindow.Export = Export;
4571 |
4572 |
4573 |
4574 |
4575 |
4576 |
// Detection de la page recherche remplacement
4577 |
if (OgameEmpire == true) {
4578 |
try {
4579 |
// Reinitialisation de la page
4580 |
GM_setValue('OT_OgameEmpire',false);
4581 |
OgameEmpire = false;
4582 |
4583 |
// Ajout du lien vers la page empire au menu de selection des planetes
4584 |
for (i = 0; i < PlanetSelect.length; i++) {
4585 |
PlanetSelect[i].value = 'javascript:GMsetValue(\'OT_OgameEmpire\',true);window.location.replace(\''+A_Planet[i].Url+'\');';
4586 |
}
4587 |
4588 |
// Generation du panneau empire
4589 |
var GTime = new Date();
4590 |
var CurrentTime = GTime.getTime();
4591 |
var Empire = '<table width="519" id="empire"><tr><td style="background:none"></td>';
4592 |
for (i = 0; i < PlanetSelect.length; i++) {
4593 |
//alert(A_Planet[i].Name+' : '+A_Planet[i].ImageUrl)
4594 |
Empire += '<th align="center"><img src="'+A_Planet[i].ImageUrl+'" '+((AddToolTip == true)?'title="'+A_Planet[i].Name+'"':'')+' alt="'+A_Language[C_ImageNotSaved]+'" width="'+EmpireIconSize+'" height="'+EmpireIconSize+'"/><br /><b>'+A_Planet[i].Name+'</b></th>';
4595 |
}
4596 |
Empire += '<td style="background:none"></td></tr>\n';
4597 |
var A_PlanetTr = new Array();
4598 |
var A_PourcentTr = new Array();
4599 |
var A_HourProductionTr = new Array();
4600 |
var A_DayProductionTr = new Array();
4601 |
var A_BuildingsTr = new Array();
4602 |
var A_ResearchTr = new Array();
4603 |
var A_FleetsTr = new Array();
4604 |
var A_DefensesTr = new Array();
4605 |
var A_FleetsDefensesUCTr = new Array();
4606 |
var A_FleetsTotal = new Array();
4607 |
var A_DefensesTotal = new Array();
4608 |
for (i = 0; i < PlanetSelect.length; i++) {
4609 |
if (i == 0) {
4610 |
// Infos generales
4611 |
A_PlanetTr[0] = '<tr id="PlanetInformations0">'+CellHTML(A_Language[C_Type], true);
4612 |
A_PlanetTr[1] = '<tr id="PlanetInformations1">'+CellHTML(A_Language[C_Coordinates], true);
4613 |
A_PlanetTr[2] = '<tr id="PlanetInformations2">'+CellHTML(A_Language[C_FieldNumber], true);
4614 |
A_PlanetTr[3] = '<tr id="PlanetInformations3">'+CellHTML(A_Language[C_Diameter], true);
4615 |
A_PlanetTr[4] = '<tr id="PlanetInformations4">'+CellHTML(A_Language[C_Temperature], true);
4616 |
A_PlanetTr[5] = '<tr id="PlanetInformations5">'+CellHTML(A_Language[C_Update], true);
4617 |
// Ressources
4618 |
A_PourcentTr[0] = '<tr id="Pourcent0">'+CellHTML(A_Language[C_ProductionRate].replace(/\:/g,''), true);
4619 |
for (j = 0; j < 5; j++) {
4620 |
A_PourcentTr[j+1] = '<tr id="Pourcent'+(j+1)+'">'+CellHTML(A_Construction[C_Buildings][j].Name, true);
4621 |
}
4622 |
A_PourcentTr[6] = '<tr id="Pourcent6">'+CellHTML(A_Construction[C_Fleets][10].Name, true);
4623 |
A_PourcentTr[7] = '<tr id="Pourcent7">'+CellHTML(A_Language[C_Update], true);
4624 |
A_PourcentTr[8] = '<tr id="Pourcent8"><td style="background:none;"></td>\n';
4625 |
// Production
4626 |
for (j = 0; j < 3; j++) {
4627 |
A_HourProductionTr[j] = '<tr id="HourProduction'+j+'">'+CellHTML(A_Construction[C_Buildings][j].Name, true);
4628 |
A_DayProductionTr[j] = '<tr id="DayProduction'+j+'">'+CellHTML(A_Construction[C_Buildings][j].Name, true);
4629 |
}
4630 |
var MetalProductionTotal = 0;
4631 |
var CrystalProductionTotal = 0;
4632 |
var DeuteriumProductionTotal = 0;
4633 |
// Batiment
4634 |
for (j = 0; j < 18; j++) {
4635 |
if (A_Construction[C_Buildings][j].Name) {
4636 |
A_BuildingsTr[j] = '<tr id="Buildings'+j+'">'+CellHTML(A_Construction[C_Buildings][j].Name, true);
4637 |
}
4638 |
}
4639 |
A_BuildingsTr[18] = '<tr id="Buildings18">'+CellHTML(A_Language[C_Update], true);
4640 |
// Flotte
4641 |
for (j = 0; j < 14; j++) {
4642 |
A_FleetsTr[j] = '<tr id="Fleets'+j+'">'+CellHTML(A_Construction[C_Fleets][j].Name, true);
4643 |
A_FleetsTotal[j] = 0;
4644 |
}
4645 |
A_FleetsTr[14] = '<tr id="Fleets14">'+CellHTML(A_Language[C_Update], true);
4646 |
// Technologie
4647 |
var ResearchTotal = 0;
4648 |
for (j = 0; j < 16; j++) {
4649 |
// nonenn
4650 |
A_ResearchTr[j] = '<tr id="Research'+j+'">'+CellHTML(A_Construction[C_Research][j].Name, true);
4651 |
// alert (" "+ A_Research[j].Level +" ");
4652 |
ResearchTotal = ResearchTotal+((A_Research[j].Level != '-')?parseInt(A_Research[j].Level):0);
4653 |
}
4654 |
A_ResearchTr[16] = '<tr id="Research16">'+CellHTML(A_Language[C_Update], true);
4655 |
// Defense
4656 |
for (j = 0; j < 10; j++) {
4657 |
A_DefensesTr[j] = '<tr id="Defenses'+j+'">'+CellHTML(A_Construction[C_Defenses][j].Name, true);
4658 |
A_DefensesTotal[j] = 0;
4659 |
}
4660 |
A_DefensesTr[10] = '<tr id="Defenses10">'+CellHTML(A_Language[C_Update], true);
4661 |
// Vaisseaux et defenses en construction
4662 |
A_FleetsDefensesUCTr[0] = '<tr id="FleetsDefensesUC0">'+CellHTML(A_Language[C_List], true);
4663 |
A_FleetsDefensesUCTr[1] = '<tr id="FleetsDefensesUC1">'+CellHTML(A_Language[C_Update], true);
4664 |
}
4665 |
// Infos generales
4666 |
A_PlanetTr[0] += CellHTML(((A_Planet[i].Type == C_Planet)?A_Language[C_Planet]:A_Language[C_Moon]));
4667 |
A_PlanetTr[1] += CellHTML('['+A_Planet[i].Galaxy+':'+A_Planet[i].System+':'+A_Planet[i].Planet+']');
4668 |
A_PlanetTr[2] += CellHTML(A_Planet[i].UsedSpace+' / '+A_Planet[i].TotalSpace+' <font color="#FF9900">('+(A_Planet[i].TotalSpace-A_Planet[i].UsedSpace)+')</font>');
4669 |
A_PlanetTr[3] += CellHTML(FormatNb(A_Planet[i].Diameter)+' km');
4670 |
A_PlanetTr[4] += CellHTML(A_Planet[i].MinTemperature+' '+A_Language[C_To]+' '+A_Planet[i].MaxTemperature+' °C');
4671 |
A_PlanetTr[5] += CellHTML(((A_Planet[i].Update != '') ? FormatTime(CurrentTime-A_Planet[i].Update) : '-'));
4672 |
// Ressources
4673 |
A_PourcentTr[0] += CellHTML(A_Pourcent[i].Rate);
4674 |
A_PourcentTr[1] += CellHTML(InsertSelect('last1_'+A_Planet[i].Id, A_Pourcent[i].Metal));
4675 |
A_PourcentTr[2] += CellHTML(InsertSelect('last2_'+A_Planet[i].Id, A_Pourcent[i].Crystal));
4676 |
A_PourcentTr[3] += CellHTML(InsertSelect('last3_'+A_Planet[i].Id, A_Pourcent[i].Deuterium));
4677 |
A_PourcentTr[4] += CellHTML(InsertSelect('last4_'+A_Planet[i].Id, A_Pourcent[i].Solar));
4678 |
A_PourcentTr[5] += CellHTML(InsertSelect('last12_'+A_Planet[i].Id, A_Pourcent[i].Fusion));
4679 |
A_PourcentTr[6] += CellHTML(InsertSelect('last212_'+A_Planet[i].Id, A_Pourcent[i].Ship212));
4680 |
A_PourcentTr[7] += CellHTML(((A_Pourcent[i].Update != '') ? FormatTime(CurrentTime-A_Pourcent[i].Update) : '-'));
4681 |
A_PourcentTr[8] += CellHTML('<input type="button" value="'+A_Language[C_Apply]+'" onclick="CreateResourcesLink('+A_Planet[i].Id+');" />');
4682 |
// Production
4683 |
A_HourProductionTr[0] += CellHTML(FormatNb(A_Production[i].Metal));
4684 |
A_HourProductionTr[1] += CellHTML(FormatNb(A_Production[i].Crystal));
4685 |
A_HourProductionTr[2] += CellHTML(FormatNb(A_Production[i].Deuterium));
4686 |
A_DayProductionTr[0] += CellHTML(FormatNb(A_Production[i].Metal*24));
4687 |
A_DayProductionTr[1] += CellHTML(FormatNb(A_Production[i].Crystal*24));
4688 |
A_DayProductionTr[2] += CellHTML(FormatNb(A_Production[i].Deuterium*24));
4689 |
MetalProductionTotal = MetalProductionTotal + parseInt(A_Production[i].Metal);
4690 |
CrystalProductionTotal = CrystalProductionTotal + parseInt(A_Production[i].Crystal);
4691 |
DeuteriumProductionTotal = DeuteriumProductionTotal + parseInt(A_Production[i].Deuterium);
4692 |
// Batiment
4693 |
for (j = 0; j < 18; j++) {
4694 |
if (A_Construction[C_Buildings][j].Name) {
4695 |
A_BuildingsTr[j] += CellHTML(AddOverLib(A_Buildings[i][j].Level, C_Buildings, j, i, A_Buildings[i][j].UC));
4696 |
}
4697 |
}
4698 |
A_BuildingsTr[18] += CellHTML(((A_BuildingsUpdate[i] != '') ? FormatTime(CurrentTime-A_BuildingsUpdate[i]) : '-'));
4699 |
// Flotte
4700 |
for (j = 0; j < 14; j++) {
4701 |
A_FleetsTr[j] += CellHTML(AddOverLib(A_Fleets[i][j], C_Fleets, j, i));
4702 |
A_FleetsTotal[j] = A_FleetsTotal[j] + parseInt(((A_Fleets[i][j]=='-')?'0':A_Fleets[i][j]));
4703 |
}
4704 |
A_FleetsTr[14] += CellHTML(((A_FleetsUpdate[i] != '') ? FormatTime(CurrentTime-A_FleetsUpdate[i]) : '-'));
4705 |
// Technologie
4706 |
for (j = 0; j < 16; j++) {
4707 |
A_ResearchTr[j] += CellHTML(AddOverLib(A_Research[j].Level, C_Research, j, i, A_Research[j].UC));
4708 |
}
4709 |
A_ResearchTr[16] += CellHTML(((ResearchUpdate != '') ? FormatTime(CurrentTime-ResearchUpdate) : '-'));
4710 |
// Defense
4711 |
for (j = 0; j < 10; j++) {
4712 |
A_DefensesTr[j] += CellHTML(AddOverLib(A_Defenses[i][j], C_Defenses, j, i));
4713 |
A_DefensesTotal[j] = A_DefensesTotal[j] + parseInt(((A_Defenses[i][j]=='-')?'0':A_Defenses[i][j]));
4714 |
}
4715 |
A_DefensesTr[10] += CellHTML(((A_DefensesUpdate[i] != '') ? FormatTime(CurrentTime-A_DefensesUpdate[i]) : '-'));
4716 |
// Vaisseaux et defenses en construction
4717 |
A_FleetsDefensesUCTr[0] += CellHTML(A_FleetsDefensesUC[i].List,true);
4718 |
A_FleetsDefensesUCTr[1] += CellHTML(((A_FleetsDefensesUC[i].Update != '') ? FormatTime(CurrentTime-A_FleetsDefensesUC[i].Update) : '-'));
4719 |
}
4720 |
//Infos generales
4721 |
Empire += HeaderEmpire('PlanetInformations',A_Language[C_MainInformations], 6, '');
4722 |
for (i = 0; i < 6; i++) {
4723 |
Empire += A_PlanetTr[i]+'<td style="background:none"></td></tr>\n';
4724 |
}
4725 |
//Ressources
4726 |
Empire += HeaderEmpire('Pourcent',A_Language[C_Resources], 9, '');
4727 |
for (i = 0; i < 9; i++) {
4728 |
Empire += A_PourcentTr[i]+'<td style="background:none"></td></tr>\n';
4729 |
}
4730 |
//Production
4731 |
Empire += HeaderEmpire('HourProduction',A_Language[C_HourProduction], 3, '')+
4732 |
A_HourProductionTr[0]+CellHTML(FormatNb(MetalProductionTotal), false, true)+'</tr>\n'+
4733 |
A_HourProductionTr[1]+CellHTML(FormatNb(CrystalProductionTotal), false, true)+'</tr>\n'+
4734 |
A_HourProductionTr[2]+CellHTML(FormatNb(DeuteriumProductionTotal), false, true)+'</tr>\n'+
4735 |
HeaderEmpire('DayProduction',A_Language[C_DayProduction], 3, '')+
4736 |
A_DayProductionTr[0]+CellHTML(FormatNb(MetalProductionTotal*24), false, true)+'</tr>\n'+
4737 |
A_DayProductionTr[1]+CellHTML(FormatNb(CrystalProductionTotal*24), false, true)+'</tr>\n'+
4738 |
A_DayProductionTr[2]+CellHTML(FormatNb(DeuteriumProductionTotal*24), false, true)+'</tr>\n'+
4739 |
//Batiment
4740 |
HeaderEmpire('Buildings',A_Language[C_BuildingsTxt], 19, '');
4741 |
for (i = 0; i < 18; i++) {
4742 |
if (A_Construction[C_Buildings][i].Name) {
4743 |
Empire += A_BuildingsTr[i]+'<td style="background:none"></td></tr>\n';
4744 |
}
4745 |
}
4746 |
Empire += A_BuildingsTr[18]+'<td style="background:none"></td></tr>\n';
4747 |
// Defense
4748 |
Empire += HeaderEmpire('Defenses',A_Language[C_DefensesTxt], 11, '');
4749 |
for (i = 0; i < 10; i++) {
4750 |
Empire += A_DefensesTr[i]+'<th align="center">'+AddOverLib(A_DefensesTotal[i], C_Defenses, i, PlanetSelect.length)+'</th></tr>\n';
4751 |
}
4752 |
Empire += A_DefensesTr[10]+'<td style="background:none"></td></tr>\n'+
4753 |
// Technologie
4754 |
4755 |
// nonenn
4756 |
HeaderEmpire('Research',A_Language[C_ResearchTxt]+' ('+ResearchTotal+')', 17, '');
4757 |
for (i = 0; i < 17; i++) {
4758 |
Empire += A_ResearchTr[i]+'<td style="background:none"></td></tr>\n';
4759 |
}
4760 |
// Flotte
4761 |
Empire += HeaderEmpire('Fleets',A_Language[C_FleetsTxt], 15, '');
4762 |
var FleetsTotal = 0
4763 |
for (i = 0; i < 14; i++) {
4764 |
Empire += A_FleetsTr[i]+'<th align="center">'+AddOverLib(A_FleetsTotal[i], C_Fleets, i, PlanetSelect.length)+'</th></tr>\n';
4765 |
FleetsTotal = FleetsTotal + parseInt(A_FleetsTotal[i]);
4766 |
}
4767 |
Empire += A_FleetsTr[14]+'<th align="center">('+FormatNb(FleetsTotal)+')</th></tr>\n'+
4768 |
// Vaisseaux et defenses en construction
4769 |
HeaderEmpire('FleetsDefensesUC',A_Language[C_FleetsDefensesUC], 2, '')+
4770 |
A_FleetsDefensesUCTr[0]+'<td style="background:none"></td></tr>\n'+
4771 |
A_FleetsDefensesUCTr[1]+'<td style="background:none"></td></tr>\n'+
4772 |
'</table>';
4773 |
Empire += '<table><tr><td class="c" style="cursor:pointer" onclick="overlib(Export(), STICKY, MOUSEOFF, 100, 750, CENTER, OFFSETX, -200, OFFSETY, -300);" onmouseover="overlib(Export(), STICKY, MOUSEOFF, DELAY, 750, CENTER, OFFSETX, -200, OFFSETY, -300);" onmouseout="return nd();">'+A_Language[C_Export]+'</td></tr></table>';
4774 |
ContentDiv.innerHTML = '<center>'+Empire+'</center>';
4775 |
GM_addStyle('th { text-align: center; vertical-align: middle; }');
4776 |
}
4777 |
catch(err) {
4778 |
ShowError(err, 'Create empire page');
4779 |
}
4780 |
}
4781 |
4782 |
4783 |
4784 |
4785 |
4786 |
/* FONCTIONS NECESSAIRES AUX CALCULS DES TRANSFERTS
4787 |
-------------------------------------------------- */
4788 |
4789 |
function RefreshTotal(Reset) {
4790 |
try {
4791 |
if (TransferState == false) {
4792 |
// Initialisation des variables
4793 |
var NbPlanetResources = 0, NbPlanetResourcesTemp = 0, PlanetType = '', DestinationIndex = -1;
4794 |
var A_PlanetUsed = new Array();
4795 |
4796 |
var A_Metal = new Array();
4797 |
var A_Crystal = new Array();
4798 |
var A_Deuterium = new Array();
4799 |
4800 |
var Mode = 0, NbGT = 0, NbPT = 0, Permut = 0, TotalResources = 0;
4801 |
var MetalUsed = 0, CrystalUsed = 0, DeuteriumUsed = 0;
4802 |
var MetalRestMoy = 0, CrystalRestMoy = 0, DeuteriumRestMoy = 0;
4803 |
4804 |
var A_ConsumptionGT = new Array();
4805 |
var A_ConsumptionPT = new Array();
4806 |
var A_ConsumptionRecycler = new Array();
4807 |
4808 |
var A_FlightTime = new Array();
4809 |
var A_FlightRecyclerTime = new Array();
4810 |
var A_FlightPTTime = new Array();
4811 |
4812 |
var A_AddRecycler = new Array();
4813 |
var A_Speed = new Array();
4814 |
4815 |
// Chargement des donnees sur les planetes dans les tableaux precedement crees
4816 |
MetalTotal = 0;
4817 |
CrystalTotal = 0;
4818 |
DeuteriumTotal = 0;
4819 |
for (var i = 0; i < PlanetSelect.length; i++) {
4820 |
4821 |
// Chargement des ressources
4822 |
if (A_Resources[i].Metal != undefined) {
4823 |
if ((RealTimeResources == true) && (UseRealTimeResources == true)) {
4824 |
A_Metal[i] = A_RealTimeResources[i].Metal;
4825 |
A_Crystal[i] = A_RealTimeResources[i].Crystal;
4826 |
A_Deuterium[i] = A_RealTimeResources[i].Deuterium;
4827 |
// Actualisation des ressources du tableau de transfert
4828 |
if (ForceResourcesTransferTableUpdate == true) {
4829 |
document.getElementById('MetalTransfer'+i).innerHTML = FormatNb(A_Metal[i]);
4830 |
document.getElementById('CrystalTransfer'+i).innerHTML = FormatNb(A_Crystal[i]);
4831 |
document.getElementById('DeuteriumTransfer'+i).innerHTML = FormatNb(A_Deuterium[i]);
4832 |
}
4833 |
}
4834 |
else {
4835 |
A_Metal[i] = A_Resources[i].Metal;
4836 |
A_Crystal[i] = A_Resources[i].Crystal;
4837 |
A_Deuterium[i] = A_Resources[i].Deuterium;
4838 |
}
4839 |
// Calcul du total des ressources
4840 |
if (document.getElementsByName('PlanetUsed'+i)[0].checked == true) {
4841 |
MetalTotal = (MetalTotal+parseInt(A_Metal[i]));
4842 |
CrystalTotal = (CrystalTotal+parseInt(A_Crystal[i]));
4843 |
DeuteriumTotal = (DeuteriumTotal+parseInt(A_Deuterium[i]));
4844 |
NbPlanetResources++;
4845 |
}
4846 |
}
4847 |
4848 |
// Mise en memoire planete de destination
4849 |
if (document.getElementsByName('Destination')[i].checked == true) {
4850 |
TransferDestinationPlanet = A_Planet[i].Planet;
4851 |
TransferDestinationSystem = A_Planet[i].System;
4852 |
TransferDestinationGalaxy = A_Planet[i].Galaxy;
4853 |
PlanetType = A_Planet[i].Type;
4854 |
DestinationIndex = i;
4855 |
if ((document.getElementsByName('UseTotalResourcesDestinationPlanet')[0].checked == true) && (document.getElementsByName('PlanetUsed'+i)[0].checked == false)) {
4856 |
MetalTotal = (MetalTotal+parseInt(A_Metal[i]));
4857 |
CrystalTotal = (CrystalTotal+parseInt(A_Crystal[i]));
4858 |
DeuteriumTotal = (DeuteriumTotal+parseInt(A_Deuterium[i]));
4859 |
NbPlanetResources++;
4860 |
}
4861 |
}
4862 |
}
4863 |
4864 |
// Verification Autre destination que les planetes du compte
4865 |
if (document.getElementsByName('Destination')[PlanetSelect.length].checked == true) {
4866 |
TransferDestinationPlanet = document.getElementsByName('DestinationPlanet')[0].value;
4867 |
TransferDestinationSystem = document.getElementsByName('DestinationSystem')[0].value;
4868 |
TransferDestinationGalaxy = document.getElementsByName('DestinationGalaxy')[0].value;
4869 |
}
4870 |
4871 |
// Remise a zero notamment pour le changement de mode de calcul
4872 |
if (Reset == true) {
4873 |
for (var i = 0; i < PlanetSelect.length; i++) {
4874 |
document.getElementsByName('Metal'+i)[0].value = '0';
4875 |
document.getElementsByName('Crystal'+i)[0].value = '0';
4876 |
document.getElementsByName('Deuterium'+i)[0].value = '0';
4877 |
}
4878 |
}
4879 |
4880 |
// Affichage du total des planetes cochees
4881 |
document.getElementsByName('MetalTotalInput')[0].value = FormatNb(MetalTotal);
4882 |
document.getElementsByName('CrystalTotalInput')[0].value = FormatNb(CrystalTotal);
4883 |
document.getElementsByName('DeuteriumTotalInput')[0].value = FormatNb(DeuteriumTotal);
4884 |
4885 |
// Affichage des ressources restantes
4886 |
var MetalRest, CrystalRest, DeuteriumRest;
4887 |
4888 |
var MetalNeeded = parseInt(document.getElementsByName('MetalNeededInput')[0].value);
4889 |
var CrystalNeeded = parseInt(document.getElementsByName('CrystalNeededInput')[0].value);
4890 |
var DeuteriumNeeded = parseInt(document.getElementsByName('DeuteriumNeededInput')[0].value);
4891 |
4892 |
MetalRest = MetalTotal-MetalNeeded;
4893 |
document.getElementsByName('MetalRestInput')[0].value = FormatNb(MetalRest);
4894 |
if (String(MetalRest).charAt(0) == '-') { document.getElementsByName('MetalRestInput')[0].style.color = '#FF0000'; }
4895 |
else { document.getElementsByName('MetalRestInput')[0].style.color = document.getElementsByName('MetalTotalInput')[0].style.color; }
4896 |
4897 |
CrystalRest = CrystalTotal-CrystalNeeded;
4898 |
document.getElementsByName('CrystalRestInput')[0].value = FormatNb(CrystalRest);
4899 |
if (String(CrystalRest).charAt(0) == '-') { document.getElementsByName('CrystalRestInput')[0].style.color = '#FF0000'; }
4900 |
else { document.getElementsByName('CrystalRestInput')[0].style.color = document.getElementsByName('CrystalTotalInput')[0].style.color; }
4901 |
4902 |
DeuteriumRest = DeuteriumTotal-DeuteriumNeeded;
4903 |
document.getElementsByName('DeuteriumRestInput')[0].value = FormatNb(DeuteriumRest);
4904 |
if (String(DeuteriumRest).charAt(0) == '-') { document.getElementsByName('DeuteriumRestInput')[0].style.color = '#FF0000'; }
4905 |
else { document.getElementsByName('DeuteriumRestInput')[0].style.color = document.getElementsByName('DeuteriumTotalInput')[0].style.color; }
4906 |
4907 |
// Mise en variable des ressources necessaire au projet
4908 |
if ((document.getElementsByName('UseTotalResourcesDestinationPlanet')[0].checked == true) && (DestinationIndex >= 0)) {
4909 |
MetalNeeded = MetalNeeded-A_Metal[DestinationIndex];
4910 |
CrystalNeeded = CrystalNeeded-A_Crystal[DestinationIndex];
4911 |
DeuteriumNeeded = DeuteriumNeeded-A_Deuterium[DestinationIndex];
4912 |
if (MetalNeeded < 0) { MetalNeeded = 0; }
4913 |
if (CrystalNeeded < 0) { CrystalNeeded = 0; }
4914 |
if (DeuteriumNeeded < 0) { DeuteriumNeeded = 0; }
4915 |
NbPlanetResources--;
4916 |
}
4917 |
4918 |
// On lance le calcul uniquement si des planetes ont ete selectionnees
4919 |
if (NbPlanetResources > 0) {
4920 |
4921 |
// Creation des tableaux necessaires aux calculs sur les planetes selectionnees
4922 |
var A_MetalSelected = new Array(NbPlanetResources);
4923 |
var A_CrystalSelected = new Array(NbPlanetResources);
4924 |
var A_DeuteriumSelected = new Array(NbPlanetResources);
4925 |
for (var i = 0; i < NbPlanetResources; i++) {
4926 |
A_MetalSelected[i] = new Array(2);
4927 |
A_CrystalSelected[i] = new Array(2);
4928 |
A_DeuteriumSelected[i] = new Array(2);
4929 |
}
4930 |
4931 |
// Chargement des tableaux necessaires aux calculs sur les planetes selectionnees
4932 |
for (var i = 0; i < PlanetSelect.length; i++) {
4933 |
if (document.getElementsByName('PlanetUsed'+i)[0].checked == true) {
4934 |
if (((document.getElementsByName('UseTotalResourcesDestinationPlanet')[0].checked == true) && (DestinationIndex == i)) == false) {
4935 |
A_MetalSelected[NbPlanetResourcesTemp][0] = parseInt(A_Metal[i]);
4936 |
A_MetalSelected[NbPlanetResourcesTemp][1] = i;
4937 |
A_CrystalSelected[NbPlanetResourcesTemp][0] = parseInt(A_Crystal[i]);
4938 |
A_CrystalSelected[NbPlanetResourcesTemp][1] = i;
4939 |
A_DeuteriumSelected[NbPlanetResourcesTemp][0] = parseInt(A_Deuterium[i]);
4940 |
A_DeuteriumSelected[NbPlanetResourcesTemp][1] = i;
4941 |
NbPlanetResourcesTemp++;
4942 |
}
4943 |
}
4944 |
// Mise a zero des planetes non-utilisees
4945 |
else {
4946 |
document.getElementsByName('Metal'+i)[0].value = 0;
4947 |
document.getElementsByName('Crystal'+i)[0].value = 0;
4948 |
document.getElementsByName('Deuterium'+i)[0].value = 0;
4949 |
}
4950 |
}
4951 |
4952 |
// Calcul par reste similaire ou calcul par utilisation des planetes ou il y a le plus de ressources
4953 |
if (document.getElementsByName('CalcMode')[0].checked == true) {
4954 |
4955 |
// Tri bubble - ordre decroissant
4956 |
for (var i = 0; i < NbPlanetResources; i++) {
4957 |
for (var j = (i+1);j < NbPlanetResources; j++) {
4958 |
if (A_MetalSelected[i][0] < A_MetalSelected[j][0]) {
4959 |
Permut = A_MetalSelected[i][0]; A_MetalSelected[i][0] = A_MetalSelected[j][0]; A_MetalSelected[j][0] = Permut;
4960 |
Permut = A_MetalSelected[i][1]; A_MetalSelected[i][1] = A_MetalSelected[j][1]; A_MetalSelected[j][1] = Permut;
4961 |
}
4962 |
if (A_CrystalSelected[i][0] < A_CrystalSelected[j][0]) {
4963 |
Pe