NOTICE: By continued use of this site you understand and agree to the binding Terms of Service and Privacy Policy.
// ==UserScript== // @name CCcompact // @namespace Compactator // @description Compactador de Batallas para CC // @version 1.1.1 // @author maaguu // @icon http://i.gyazo.com/a6ee8a4c18fa9c8af7a946fccae1dde1.png // @updateURL http://userscripts-mirror.org/scripts/review/167081.html // @downloadURL http://userscripts-mirror.org/scripts/review/167081.html // @include http://*es.ogame.gameforge.com/game/index.php?*page=* // @require https://openuserjs.org/install/Amynka/OGame_VersionCheck.user.js // ==/UserScript== (function () { var SCRIPT = { name: "Compactator" ,url: "http://userscripts-mirror.org/scripts/review/167081.html" ,version: "1.10" ,funciona_ok: "1.10" }; var url_script = SCRIPT.url; var txt_firma = SCRIPT.name + ' [' + SCRIPT.version + ' OGamator]'; if((typeof(oGameVersionCheck) != "undefined")) { oGameVersionCheck(SCRIPT.name + ' ' + SCRIPT.version, SCRIPT.funciona_ok, SCRIPT.url); } if (location.href.indexOf('/game/index.php?page=combatreport') != -1 ) { compactar(); } function comprobar () { var cr = document.getElementsByClassName("combatreport"); if (cr != null) compactar(); } setInterval(comprobar, 500); function SAC() { var lstNombres = new Array(); var lstFlotas = new Array(); this.length = function() { return lstNombres.length } this.getNombre = function(n) { return lstNombres[n]; } this.getFlotas = function(n) { var ret = null; if(isNaN(parseInt(n))) { for(var i = 0; i < lstNombres.length; i++) { if(lstNombres[i] == n) ret = lstFlotas[i]; } } else { ret = lstFlotas[n]; } return ret; } this.add = function (nombre, idFlota, unidades) { var insertado = false; for(var i = 0; i < lstNombres.length; i++) { if(lstNombres[i] == nombre) { insertado = true; if(arguments.length == 3) lstFlotas[i].add(idFlota, unidades); } } if(!insertado) { var pos = lstNombres.length; lstNombres[pos] = nombre; lstFlotas[pos] = new Flota(); if(arguments.length == 3) lstFlotas[pos].add(idFlota, unidades); } } this.addSupervivientes = function(s) { for(var i = 0; i < s.length(); i++) { var nombre = s.getNombre(i); for(var j = 0; j < lstNombres.length; j++){ if(lstNombres[j] == nombre) lstFlotas[j].addSupervivientes(s.getFlotas(i)); } } } this.ordenar = function() { for(var i = 0; i < lstNombres.length; i++) { lstFlotas[i].ordenar(); } } this.getCostePerdidas = function(id) { var ret = [0,0,0, 0]; // metal, cristal, deu, total if(id == -1) { for(var i = 0; i < lstNombres.length; i++) { var coste = lstFlotas[i].getCostePerdidas(); ret[0] += coste[0]; ret[1] += coste[1]; ret[2] += coste[2]; ret[3] += coste[3]; } } else { var coste = lstFlotas[id].getCostePerdidas(); ret[0] += coste[0]; ret[1] += coste[1]; ret[2] += coste[2]; ret[3] += coste[3]; } return ret; } } // ============================================================ // ============================================================ function Flota() { var idNombre = new Array(); var nombre = new Array(); var unidades = new Array(); var perdidas = new Array(); var datosFlota = [ ['P.Carga','Nave pequeña de Carga', 2000,2000,0], ['Gr.Carga','Nave grande de Carga', 6000,6000,0], ['Cazador L.','Cazador ligero', 3000,1000,0], ['Cazador P.','Cazador pesado', 6000,4000,0], ['Crucero','Crucero', 20000,7000,2000], ['Nave de batalla','Nave de batalla', 45000,15000,0], ['Acoraz.','Acorazado', 30000,40000,15000], ['Bombardero','Bombardero', 50000,25000,15000], ['Destructor','Destructor', 60000,50000,15000], ['Est.Muerte','Estrella de la muerte', 5000000,4000000,1000000], ['Colonizador','Colonizador', 10000,20000,10000], ['Reciclador.','Reciclador', 10000,6000,2000], ['Sonda','Sonda de espionaje', 0,1000,0], ['Satélite S.','Satélite Solar', 0,2000,500], ['Misil', 'Lanzamisiles', 2000,0,0], ['Láser Peq.','Láser pequeño', 1500,500,0], ['Láser Gr.','Lase grande', 6000,2000,0], ['C.Gauss','Cañón Gauss', 20000,15000,2000], ['C.Iónico','Cañón Iónico', 2000,6000,0], ['C.Plasma','Cañón de Plasma', 50000,50000,30000], ['Cúpula Peq.','Cúpula pequeña', 10000,10000,0], ['Cúpula Gr.','Cúpula grande', 50000,50000,0]]; this.length = function () { return idNombre.length; } this.getId = function(n) { return idNombre[n]; } this.getNombre = function(n) { var id = idNombre[n] var ret = id; for(var i = 0; i < datosFlota.length; i++) { if(id == datosFlota[i][0]) ret = datosFlota[i][1]; } return ret; } this.getUnidades = function(n) { return unidades[n]; } this.getPerdidas = function(n) { return perdidas[n]; } this.add = function(id, u) { var insertado = false; for(var i = 0; i < idNombre.length; i++) { if(idNombre[i] == id) { insertado = true; unidades[i] += parseInt(u); perdidas[i] += parseInt(u); } } if(!insertado) { var pos = idNombre.length; idNombre[pos] = id; nombre[pos] = ''; unidades[pos] = parseInt(u); perdidas[pos] = parseInt(u); } } this.addSupervivientes = function(f) { for(var i = 0; i < f.length(); i++) { for(var j = 0; j < idNombre.length; j++) { if(idNombre[j] == f.getId(i)) { perdidas[j] -= parseInt(f.getUnidades(i)); } } } } this.ordenar = function() { var n_idNombre = new Array(); var n_nombre = new Array(); var n_unidades = new Array(); var n_perdidas = new Array(); var contador = 0; for(var i = 0; i < datosFlota.length; i++) { for(var j = 0; j<idNombre.length; j++) { if(idNombre[j] == datosFlota[i][0]) { n_idNombre[contador] = idNombre[j]; n_nombre[contador] = datosFlota[i][1]; n_unidades[contador] = unidades[j]; n_perdidas[contador] = perdidas[j]; contador++; } } } idNombre = n_idNombre; nombre = n_nombre; unidades = n_unidades; perdidas = n_perdidas; } this.getCostePerdidas = function() { var ret = [0,0,0, 0]; for(var i = 0; i < idNombre.length; i++) { for(var j = 0; j < datosFlota.length; j++) { if(idNombre[i] == datosFlota[j][0]) { ret[0] += (perdidas[i] * datosFlota[j][2]); ret[1] += (perdidas[i] * datosFlota[j][3]); ret[2] += (perdidas[i] * datosFlota[j][4]); ret[3] += ((perdidas[i] * datosFlota[j][2]) + (perdidas[i] * datosFlota[j][3]) + (perdidas[i] * datosFlota[j][4])); } } } return ret; } } // ============================================================ // ============================================================ function getElementsByClass(cls) { var itemsfound = new Array; var elements = document.getElementsByTagName('*'); for(var i=0;i<elements.length;i++){ if(elements[i].className == cls){ itemsfound.push(elements[i]); } } return itemsfound; } function getElementsByClass(searchClass,node,tag) { var classElements = new Array(); if (node == null) node = document; if (tag == null) tag = '*'; var els = node.getElementsByTagName(tag); var elsLen = els.length; for (var i = 0, j = 0; i < elsLen; i++) { var sep = els[i].className.split(" "); var content = false; for(var k = 0; k < sep.length; k++){ if(sep[k] == searchClass) content = true; } if (els[i].className == searchClass || content) { classElements[j] = els[i]; j++; } } return classElements; } function mostrarNumero(num) { var negativo = false; if(parseInt(num) < 0) { num = parseInt(num)*-1; negativo = true; } var nNmb = String(parseInt(num)); var sRes = ""; for (var j = 0, i = nNmb.length - 1; i >= 0; i--, j++) sRes = nNmb.charAt(i) + ((j > 0) && (j % 3 == 0)? ".": "") + sRes; if(negativo) sRes = '-' + sRes; return sRes; } function N(num) { var ret = new Array(); if(typeof num == 'object') { for(var i = 0; i < num.length; i++) { ret[i] = mostrarNumero(num[i]); } return ret; } else { return mostrarNumero(num); } } function codificar(patron, tipo, version) { var marcas = new Array(); patron = '{CENTER}' + patron + '{/CENTER}'; var colores = [ [/{COLOR_R1}/gi, '#FFCC66'], [/{COLOR_R2}/gi, '#9E7625'], [/{COLOR_R3}/gi, '#FF0000'], //escombros [/{COLOR_R4}/gi, '#F0EC64'], //rec.robo [/{COLOR_T1}/gi, '#6699FF'], // titulo 1 ("defensores", "atacantes", "perdidas", y "rentabilidad" [/{COLOR_A1}/gi, '#00FF40'], [/{COLOR_A2}/gi, '#00DDDD'], [/{COLOR_D1}/gi, '#ED7010'], [/{COLOR_RB}/gi, '#007F22'], // resultado batalla [/{COLOR_RECI}/gi, '#00CC00'], // atacante reciclando [/{COLOR_SINRECI}/gi, '#FFFF00'], // atacante sin reciclar [/{COLOR_RECIDEF}/gi, '#FF6600'], // reciclando defensor [/{COLOR_D2}/gi, '#00DDDD']]; if(tipo == "HTML") { marcas = [ [/{B}/gi, '<b>'], [/{\/B}/gi, '</b>'], [/{I}/gi, '<i>'], [/{\/I}/gi, '</i>'], [/{NL}/gi, '<br>\n'], [/{CENTER}/gi, '<center>'], [/{\/CENTER}/gi, '</center>'], [/{SIZE_PEQ}/gi, '<font style="font-size:11pt;">'], [/{SIZE_MED}/gi, '<font style="font-size:18pt;">'], [/{SIZE_GRA}/gi, '<font style="font-size:22pt;">'], [/{\/SIZE}/gi, '</font>'], [/{\/COLOR}/gi, '</font>'] ]; patron = patron.replace(/{ENLACE_SCRIPT}/gi, '<a href="' + url_script + '">' + txt_firma + '</a>'); for(var i = 0; i < colores.length; i++) patron = patron.replace(colores[i][0],'<font color="' + colores[i][1] + '">'); } if(tipo == "OGame") { marcas = [ [/{B}/gi, '[B]'], [/{\/B}/gi, '[/B]'], [/{I}/gi, '[I]'], [/{\/I}/gi, '[/I]'], [/{NL}/gi, '\n'], [/{CENTER}/gi, '[ALIGN=CENTER]'], [/{\/CENTER}/gi, '[/ALIGN]'], [/{SIZE_PEQ}/gi, '[SIZE=12]'], [/{SIZE_MED}/gi, '[SIZE=16]'], [/{SIZE_GRA}/gi, '[SIZE=20]'], [/{\/SIZE}/gi, '[/SIZE]'], [/{\/COLOR}/gi, '[/COLOR]'] ]; patron = patron.replace(/{ENLACE_SCRIPT}/gi, '[url="' + url_script + '"]' + txt_firma + '[/URL]'); for(var i = 0; i < colores.length; i++) patron = patron.replace(colores[i][0],'[COLOR="' + colores[i][1] + '"]'); } if(tipo == "phpBB") { marcas = [ [/{B}/gi, '[b]'], [/{\/B}/gi, '[/b]'], [/{I}/gi, '[i]'], [/{\/I}/gi, '[/i]'], [/{NL}/gi, '\n'], [/{CENTER}/gi, '[ALIGN=CENTER]'], [/{\/CENTER}/gi, '[/ALIGN]'], [/{SIZE_PEQ}/gi, '[size=12]'], [/{SIZE_MED}/gi, '[size=16]'], [/{SIZE_GRA}/gi, '[size=22]'], [/{\/SIZE}/gi, '[/size]'], [/{\/COLOR}/gi, '[/color]'] ]; patron = patron.replace(/{ENLACE_SCRIPT}/gi, '[url=' + url_script + ']' + txt_firma + '[/URL]'); for(var i = 0; i < colores.length; i++) patron = patron.replace(colores[i][0],'[color=' + colores[i][1] + ']'); } if(tipo == "phpBB3") { marcas = [ [/{B}/gi, '[b]'], [/{\/B}/gi, '[/b]'], [/{I}/gi, '[i]'], [/{\/I}/gi, '[/i]'], [/{NL}/gi, '\n'], [/{CENTER}/gi, '[center]'], [/{\/CENTER}/gi, '[/center]'], [/{SIZE_PEQ}/gi, '[size=120]'], [/{SIZE_MED}/gi, '[size=180]'], [/{SIZE_GRA}/gi, '[size=220]'], [/{\/SIZE}/gi, '[/size]'], [/{\/COLOR}/gi, '[/color]'] ]; patron = patron.replace(/{ENLACE_SCRIPT}/gi, '[url=' + url_script + ']' + txt_firma + '[/URL]'); for(var i = 0; i < colores.length; i++) patron = patron.replace(colores[i][0],'[color=' + colores[i][1] + ']'); } for(var i = 0; i < marcas.length; i++) patron = patron.replace(marcas[i][0],marcas[i][1]); return patron; } // ============================================================ // ============================================================ function getLuna() { var salida = ""; var ret = new Array(); var cresult = document.getElementById('combat_result'); var str_luna = getElementsByClass('action',cresult)[1].innerHTML.split('<br>'); if(str_luna.length >= 5) { salida = str_luna[3].replace(/(^s*)|(s*$)/g,""); } if(str_luna.length == 6) { salida += '{NL}' + str_luna[4].replace(/(^s*)|(s*$)/g,""); } return salida; } function getEscombros() { var ret = new Array(); var cresult = document.getElementById('combat_result'); var str_escombros = getElementsByClass('action',cresult)[1].innerHTML.split('<br>')[2]; ret[0] = parseInt(str_escombros.split('y')[0].replace(/\D/g,'')); ret[1] = parseInt(str_escombros.split('y')[1].replace(/\D/g,'')); ret[2] = parseInt(ret[0]) + parseInt(ret[1]); return ret; } function getCaptura() { var ret = [0, 0, 0, 0]; if(getMensajeConclusion().indexOf("atacante") != -1) { var cresult = document.getElementById('combat_result'); var str_captura = getElementsByClass('action',cresult)[0].innerHTML; var str_metal = str_captura.substring(str_captura.indexOf('captura'), str_captura.indexOf('Metal')); var str_cristal = str_captura.substring(str_captura.indexOf(','), str_captura.indexOf('Cristal')); var str_deu = str_captura.substring(str_captura.indexOf('y'), str_captura.indexOf('Deuterio')); if(str_metal.length == 0) str_metal = '0'; if(str_cristal.length == 0) str_cristal = '0'; if(str_deu.length == 0) str_deu = "0"; ret[0] = parseInt(str_metal.replace(/\D/g,'')); ret[1] = parseInt(str_cristal.replace(/\D/g,'')); ret[2] = parseInt(str_deu.replace(/\D/g,'')); ret[3] = parseInt(ret[0]) + parseInt(ret[1]) + parseInt(ret[2]); } return ret; } function getFecha() { var strFecha = getElementsByClass("start")[0].innerHTML; strFecha = strFecha.substring(strFecha.indexOf('(')+1, strFecha.indexOf(')')); var fecha = strFecha.split(" ")[0]; var hora = strFecha.split(" ")[1]; return fecha; } function getMensajeConclusion() { var ret = ''; var cresult = document.getElementById('combat_result'); var str = getElementsByClass('action',cresult)[0].innerHTML; if(str.indexOf('atacante') != -1) ret = '¡El atacante ha ganado la batalla!'; if(str.indexOf('defensor') != -1) ret = '¡El defensor ha ganado la batalla!'; if(str.indexOf('empate') != -1) ret = '¡La batalla ha terminado en empate!'; return ret; } function calcularRecicladores(escombros) { var ret = 0; if(escombros > 0) ret = (parseInt(escombros)/20000)+1; return ret; } function getRondas() { var rondas = new Array; var item = getElementsByClass("combat_round"); for(var i = 0; i < item.length; i++) { var insertado = false; for(var r = 0; r < rondas.length && !insertado; r++) { if(item[i].innerHTML == rondas[r].innerHTML) { insertado = true; } } if(!insertado) { rondas.push(item[i]); } } return (rondas); } function getCuadrosBBCode(patron) { var html = ""; // cuadros de texto html += '<table cellspacing="0" cellpadding="0">'; html += '<tr><td>' // foro ogame html += '<b><font color=#FE9A2E>Foro OGame:</font></b><br>'; html += '<textarea id="txtBB" name="txtBB" style="background-color:#1F273C;width:200px;height:100px;border: 2px solid #FFFFFF;color:#FFFFFF" onFocus="javascript:this.select()">'; html += codificar(patron, "OGame", SCRIPT.version); html += '</textarea><br><br>'; html += '</td><td>' // foro phpBB html += '<b><font color=#FE9A2E>Foro phpBB:</font></b><br>'; html += '<textarea id="txtBB" name="txt_phpBB" style="background-color:#1F273C;width:200px;height:100px;border: 2px solid #FFFFFF;color:#FFFFFF" onFocus="javascript:this.select()">'; html += codificar(patron, "phpBB", SCRIPT.version); html += '</textarea><br><br>'; html += '</td></tr><tr><td>' // foro phpBB3 html += '<b><font color=#FE9A2E>Foro phpBB 3:</font></b><br>'; html += '<textarea id="txtBB" name="txt_phpBB" style="background-color:#1F273C;width:200px;height:100px;border: 2px solid #FFFFFF;color:#FFFFFF" onFocus="javascript:this.select()">'; html += codificar(patron, "phpBB3", SCRIPT.version); html += '</textarea><br><br>'; html += '</td><td>' // html html += '<b><font color=#FE9A2E>HTML:</font></b><br>'; html += '<textarea id="txtBB" name="txt_phpBB" style="background-color:#1F273C;width:200px;height:100px;border: 2px solid #FFFFFF;color:#FFFFFF" onFocus="javascript:this.select()">'; html += codificar(patron, "HTML", SCRIPT.version); html += '</textarea><br><br>'; html += '</td></tr></table>' return html; } // ============================================================ // ============================================================ function getColumnas(tabla){ return tabla.rows[0].cells.length; } function getFilas(tabla){ return tabla.rows.length; } function getContenido(tabla, fila, col) { var rowElem = tabla.rows[fila]; var tdValue = rowElem.cells[col].innerHTML; return tdValue; } // ============================================================ function getFlotas(numRonda, ataque) { var ret = new SAC(); var cround = getRondas(); var maxRondas = cround.length-1; if(ronda > maxRondas) return 0 // excede el num de rondas var idTipoBando = (ataque)? 'round_attacker':'round_defender'; // ronda de ataque o defensa var ronda = cround[numRonda]; var rondaBando = getElementsByClass(idTipoBando, ronda)[0]; var newBack = getElementsByClass("newBack", rondaBando); for(var i = 0; i < newBack.length ; i++ ) { var destroyed = getElementsByClass("destroyed", newBack[i])[0]; if(typeof destroyed != 'undefined') { var nombre = destroyed.innerHTML; nombre = nombre.replace('El defensor ', ''); nombre = nombre.replace('ha sido destruido.', ''); ret.add(nombre); } else { var nombre = getElementsByClass("name", newBack[i])[0].firstChild.textContent; var tabla = newBack[i].getElementsByTagName("TABLE")[0]; nombre = nombre.replace('Atacante ', ''); nombre = nombre.replace('Defensor ', ''); for(var j = 1; j < getColumnas(tabla); j++) { nave = getContenido(tabla, 0, j); cantidad = getContenido(tabla, 1, j).replace(/\./gi, ''); ret.add(nombre, nave, cantidad); } } } return ret; } // ============================================================ function actualizar () { var codHTML = document.getElementById("codHTML"); var txtBB = document.getElementById("txtBB"); var txtInfo = document.getElementById("txtInfo"); var tipoCodif = document.F1.lstBB.options[document.F1.lstBB.selectedIndex].value; txtInfo.innerHTML = 'Código ' + tipoCodif; codHTML.innerHTML = codificar(patron, "HTML", document.F1.centrado.checked, version); txtBB.value = codificar(patron, tipoCodif, document.F1.centrado.checked, version); } // ============================================================ function compactar() { var comp = document.getElementById("compactado"); if (comp != null ) return 0; var patron = ''; var compactador = document.createElement('div'); var rondas = getRondas(); var numRondas = rondas.length-1; // atacantes var lstAtaq = getFlotas(0, true); var lstAtaq_final = getFlotas(numRondas, true); lstAtaq.addSupervivientes(lstAtaq_final); // defensores var lstDef = getFlotas(0, false); var lstDef_final = getFlotas(numRondas, false); lstDef.addSupervivientes(lstDef_final); lstAtaq.ordenar(); lstDef.ordenar(); // ***************************************************************************************************************** // ***** GENERA PATRON ********************************************************************************************* patron = ''; if(numRondas < 1) numRondas= 1; if(numRondas == 1) { patron += '{SIZE_PEQ}La batalla duró 1 ronda el día ' + getFecha() + '{/SIZE}{NL}'; } else { patron += '{SIZE_PEQ}La batalla duró ' + numRondas + ' rondas el día ' + getFecha() + '{/SIZE}{NL}'; } // ATACANTES patron += '{COLOR_T1}{B}{SIZE_GRA}Atacantes (' + lstAtaq.length() + '):{/SIZE}{/B}{/COLOR}{NL}'; for(var i = 0; i < lstAtaq.length(); i++){ patron += '{COLOR_A1}{B}{SIZE_MED}'+ lstAtaq.getNombre(i) + '{/SIZE}{/B}{/COLOR}{NL}'; for(var j = 0; j < lstAtaq.getFlotas(i).length(); j++) { var nombre = lstAtaq.getFlotas(i).getNombre(j); var unidades = N(lstAtaq.getFlotas(i).getUnidades(j)); var perdidas = N(lstAtaq.getFlotas(i).getPerdidas(j)); patron += nombre + " {COLOR_A1}" + unidades + "{/COLOR} {COLOR_A2}perdió " + perdidas + "{/COLOR}{NL}"; } patron += '{NL}'; if(lstAtaq.getCostePerdidas(i)[3] != 0) { var coste = N(lstAtaq.getCostePerdidas(i)); patron += 'Pérdidas: {COLOR_R1}' + coste[3] + '{/COLOR}{NL}'; patron += '( {COLOR_R2}' + coste[0] + '{/COLOR}, Metal {COLOR_R2}' + coste[1] + '{/COLOR}, Cristal, {COLOR_R2}' + coste[2] + '{/COLOR} Deuterio ){NL}{NL}'; } } // DEFENSOR patron += '{COLOR_T1}{B}{SIZE_GRA}Defensores (' + lstDef.length() + '):{/SIZE}{/B}{/COLOR} {NL}'; for(var i = 0; i < lstDef.length(); i++){ patron += '{COLOR_D1}{B}{SIZE_MED}'+ lstDef.getNombre(i) + '{/SIZE}{/B}{/COLOR}{NL}'; for(var j = 0; j < lstDef.getFlotas(i).length(); j++) { var nombre = lstDef.getFlotas(i).getNombre(j); var unidades = N(lstDef.getFlotas(i).getUnidades(j)); var perdidas = N(lstDef.getFlotas(i).getPerdidas(j)); patron += nombre + " {COLOR_D1}" + unidades + "{/COLOR} {COLOR_D2}perdió " + perdidas + "{/COLOR}{NL}"; } if(lstDef.getFlotas(i).length() == 0) { patron += "{I}Sin defensas{/I}{NL}"; } patron += '{NL}'; if(lstDef.getCostePerdidas(i)[3] != 0) { var coste = N(lstDef.getCostePerdidas(i)); patron += 'Pérdidas: {COLOR_R1}' + coste[3] + '{/COLOR}{NL}'; patron += '( {COLOR_R2}' + coste[0] + '{/COLOR}, Metal {COLOR_R2}' + coste[1] + '{/COLOR}, Cristal, {COLOR_R2}' + coste[2] + '{/COLOR} Deuterio ){NL}{NL}'; } } patron += '{SIZE_MED}{COLOR_RB}{B}' + getMensajeConclusion() + '{/B}{/COLOR}{/SIZE}{NL}{NL}'; // RESUMEN (robos, escombros, perdidas, rentabilidad...) var perdidasAtaq = lstAtaq.getCostePerdidas(-1); var perdidasDef = lstDef.getCostePerdidas(-1); var N_perdidasAtaq = N(perdidasAtaq); var N_perdidasDef = N(perdidasDef); var perdidasTotales = new Array(); perdidasTotales[0] = (perdidasAtaq[0] + perdidasDef[0]); perdidasTotales[1] = (perdidasAtaq[1] + perdidasDef[1]); perdidasTotales[2] = (perdidasAtaq[2] + perdidasDef[2]); perdidasTotales[3] = (perdidasAtaq[0] + perdidasDef[0]) + (perdidasAtaq[1] + perdidasDef[1]) + (perdidasAtaq[2] + perdidasDef[2]); var N_perdidasTotales = N(perdidasTotales); var escombros = getEscombros(); var N_escombros = N(escombros); var captura = getCaptura(); var N_captura = N(captura); // RENTABILIDAD Y PORCENTAJE: ATACANTE CON RECICLAJE var renta_ataq_conReci = new Array(); renta_ataq_conReci[0] = (-1*perdidasAtaq[0])+captura[0]+escombros[0]; renta_ataq_conReci[1] = (-1*perdidasAtaq[1])+captura[1]+escombros[1]; renta_ataq_conReci[2] = (-1*perdidasAtaq[2])+captura[2]; renta_ataq_conReci[3] = (-1*perdidasAtaq[3])+captura[3]+escombros[2]; var N_renta_ataq_conReci = N(renta_ataq_conReci); var p_renta_ataq_conReci = new Array(); p_renta_ataq_conReci[3] = Math.floor((renta_ataq_conReci[3]/perdidasAtaq[3])*100); p_renta_ataq_conReci[0] = Math.floor((renta_ataq_conReci[0]/perdidasAtaq[0])*100); p_renta_ataq_conReci[1] = Math.floor((renta_ataq_conReci[1]/perdidasAtaq[1])*100); p_renta_ataq_conReci[2] = Math.floor((renta_ataq_conReci[2]/perdidasAtaq[2])*100); var p_renta_ataq_conReci = N(p_renta_ataq_conReci); // RENTABILIDAD Y PORCENTAJE: ATACANTE SIN RECICLAJE var renta_ataq_sinReci = new Array(); renta_ataq_sinReci[0] = (-1*perdidasAtaq[0])+captura[0]; renta_ataq_sinReci[1] = (-1*perdidasAtaq[1])+captura[1]; renta_ataq_sinReci[2] = (-1*perdidasAtaq[2])+captura[2]; renta_ataq_sinReci[3] = (-1*perdidasAtaq[3])+captura[3]; var N_renta_ataq_sinReci = N(renta_ataq_sinReci); var p_renta_ataq_sinReci = new Array(); p_renta_ataq_sinReci[3] = Math.floor((renta_ataq_sinReci[3]/perdidasAtaq[3])*100); p_renta_ataq_sinReci[0] = Math.floor((renta_ataq_sinReci[0]/perdidasAtaq[0])*100); p_renta_ataq_sinReci[1] = Math.floor((renta_ataq_sinReci[1]/perdidasAtaq[1])*100); p_renta_ataq_sinReci[2] = Math.floor((renta_ataq_sinReci[2]/perdidasAtaq[2])*100); p_renta_ataq_sinReci = N(p_renta_ataq_sinReci); // RENTABILIDAD Y PORCENTAJE: DEFENSOR CON RECICLAJE var renta_def_conReci = new Array(); renta_def_conReci[0] = (-1*perdidasDef[0])+escombros[0]; renta_def_conReci[1] = (-1*perdidasDef[1])+escombros[1]; renta_def_conReci[2] = (-1*perdidasDef[2]); renta_def_conReci[3] = (-1*perdidasDef[3])+escombros[2]; var N_renta_def_conReci = N(renta_def_conReci); var p_renta_def_conReci = new Array(); p_renta_def_conReci[3] = Math.floor((renta_def_conReci[3]/perdidasDef[3])*100); p_renta_def_conReci[0] = Math.floor((renta_def_conReci[0]/perdidasDef[0])*100); p_renta_def_conReci[1] = Math.floor((renta_def_conReci[1]/perdidasDef[1])*100); p_renta_def_conReci[2] = Math.floor((renta_def_conReci[2]/perdidasDef[2])*100); p_renta_def_conReci = N(p_renta_def_conReci); patron += '{B}Robo:{/B} {COLOR_R4}{SIZE_MED}' + N_captura[0] + '{/SIZE}{/COLOR} Metal, {COLOR_R4}{SIZE_MED}' + N_captura[1] + '{/SIZE}{/COLOR} Cristal y {COLOR_R4}{SIZE_MED}' + N_captura[2] + '{/SIZE}{/COLOR} Deuterio{NL}'; patron += '{B}Escombros:{/B} {COLOR_R3}{SIZE_GRA}{B}' + N_escombros[0] + '{/B}{/SIZE}{/COLOR} Metal y {COLOR_R3}{SIZE_GRA}{B}' + N_escombros[1] + '{/B}{/SIZE}{/COLOR} Cristal ( {COLOR_R3}' + N(calcularRecicladores(escombros[2])) + "{/COLOR} recicladores ){NL}"; patron += '{NL}{NL}' patron += '{COLOR_T1}PÉRDIDAS{/COLOR} Atacantes: {COLOR_R1}' + N_perdidasAtaq[3] + '{/COLOR}{NL}'; patron += '( {COLOR_R2}' + N_perdidasAtaq[0] + "{/COLOR} metal , {COLOR_R2}" + N_perdidasAtaq[1] + "{/COLOR} cristal, {COLOR_R2}" + N_perdidasAtaq[2] + "{/COLOR} deuterio ){NL}{NL}"; patron += '{COLOR_T1}PÉRDIDAS{/COLOR} Defensores: {COLOR_R1}' + N_perdidasDef[3] + '{/COLOR}{NL}'; patron += '( {COLOR_R2}' + N_perdidasDef[0] + "{/COLOR} metal , {COLOR_R2}" + N_perdidasDef[1] + "{/COLOR} cristal, {COLOR_R2}" + N_perdidasDef[2] + "{/COLOR} deuterio ){NL}{NL}"; patron += '{NL}' if(escombros[2] > 0) { patron += '{COLOR_T1}{SIZE_MED}{B}RENTABILIDAD{/B}{/SIZE}{/COLOR} Atacantes {COLOR_RECI}reciclando{/COLOR}: {COLOR_R1}{B}' + N_renta_ataq_conReci[3] + '{/B}{/COLOR} [' + p_renta_ataq_conReci[3] + '%]{NL}'; patron += 'Metal: {COLOR_R2}' + N_renta_ataq_conReci[0] + '{/COLOR} {SIZE_PEQ}[' + p_renta_ataq_conReci[0] + '%]{/SIZE}{NL}'; patron += 'Cristal: {COLOR_R2}' + N_renta_ataq_conReci[1] + '{/COLOR} {SIZE_PEQ}[' + p_renta_ataq_conReci[1] + '%]{/SIZE}{NL}'; patron += 'Deuterio: {COLOR_R2}' + N_renta_ataq_conReci[2] + '{/COLOR} {SIZE_PEQ}[' + p_renta_ataq_conReci[2] + '%]{/SIZE}{NL}'; patron += '{COLOR_T1}{SIZE_MED}{B}RENTABILIDAD{/B}{/SIZE}{/COLOR} Atacantes {COLOR_SINRECI}sin reciclar{/COLOR}: {COLOR_R1}{B}' + N_renta_ataq_sinReci[3] + '{/B}{/COLOR} [' + p_renta_ataq_sinReci[3] + '%]{NL}'; patron += 'Metal: {COLOR_R2}' + N_renta_ataq_sinReci[0] + '{/COLOR} {SIZE_PEQ}[' + p_renta_ataq_sinReci[0] + '%]{/SIZE}{NL}'; patron += 'Cristal: {COLOR_R2}' + N_renta_ataq_sinReci[1] + '{/COLOR} {SIZE_PEQ}[' + p_renta_ataq_sinReci[1] + '%]{/SIZE}{NL}'; patron += 'Deuterio: {COLOR_R2}' + N_renta_ataq_sinReci[2] + '{/COLOR} {SIZE_PEQ}[' + p_renta_ataq_sinReci[2] + '%]{/SIZE}{NL}'; patron += '{COLOR_T1}{SIZE_MED}{B}RENTABILIDAD{/B}{/SIZE}{/COLOR} Defensores {COLOR_RECIDEF}reciclando{/COLOR}: {COLOR_R1}{B}' + N_renta_def_conReci[3] + '{/B}{/COLOR} [' + p_renta_def_conReci[3] + '%]{NL}'; patron += 'Metal: {COLOR_R2}' + N_renta_def_conReci[0] + '{/COLOR} {SIZE_PEQ}[' + p_renta_def_conReci[0] + '%]{/SIZE}{NL}'; patron += 'Cristal: {COLOR_R2}' + N_renta_def_conReci[1] + '{/COLOR} {SIZE_PEQ}[' + p_renta_def_conReci[1] + '%]{/SIZE}{NL}'; patron += 'Deuterio: {COLOR_R2}' + N_renta_def_conReci[2] + '{/COLOR} {SIZE_PEQ}[' + p_renta_def_conReci[2] + '%]{/SIZE}{NL}'; } else { patron += '{COLOR_T1}{B}RENTABILIDAD{/B}{/COLOR} Atacantes {COLOR_R1}' + N_renta_ataq_sinReci[3] + '{/COLOR} [' + p_renta_ataq_sinReci[3] + '%]{NL}'; patron += 'Metal: {COLOR_R2}' + N_renta_ataq_sinReci[0] + '{/COLOR} {SIZE_PEQ}[' + p_renta_ataq_sinReci[0] + '%]{/SIZE}{NL}'; patron += 'Cristal: {COLOR_R2}' + N_renta_ataq_sinReci[1] + '{/COLOR} {SIZE_PEQ}[' + p_renta_ataq_sinReci[1] + '%]{/SIZE}{NL}'; patron += 'Deuterio: {COLOR_R2}' + N_renta_ataq_sinReci[2] + '{/COLOR} {SIZE_PEQ}[' + p_renta_ataq_sinReci[2] + '%]{/SIZE}{NL}'; } // si rentabilidad = infinita, lo cambia por MAX patron = patron.replace(/infinity\%/gi, "Máx."); patron = patron.replace(/NaN\%/gi, "Máx."); if(getLuna().length > 4) patron += '{NL}' + getLuna() + '{NL}' patron += '{NL}{SIZE_MED} Perdidas {COLOR_T1}TOTALES{/COLOR}: {B}{COLOR_R3}' + N(perdidasTotales[3]) + '{/COLOR}{/B}{/SIZE}{NL}'; patron += '{NL}{SIZE_PEQ}{ENLACE_SCRIPT}{/SIZE}{NL}'; // ***************************************************************************************************************** // ***** PATRON MINI *********************************************************************************************** var patronMini = "{COLOR_T1}{B}Ataque-Granjeo{/B}{/COLOR} [ {COLOR_A1}"; for(var i = 0; i < lstAtaq.length(); i++){ patronMini += ''+ lstAtaq.getNombre(i) + ''; } patronMini += ' .vs. '; for(var i = 0; i < lstDef.length(); i++){ patronMini += ''+ lstDef.getNombre(i) + '{/COLOR}'; } patronMini += ' ]{NL}{COLOR_T1}{B}Renta atacante: {/B}{/COLOR} {COLOR_R4}' + N_renta_ataq_conReci[0] + '{/COLOR} Metal, {COLOR_R4}' + N_renta_ataq_conReci[1] + '{/COLOR} Cristal, {COLOR_R4}' + N_renta_ataq_conReci[2] + '{/COLOR} Deuterio {NL}'; // ***************************************************************************************************************** // ***** MOSTRAR *************************************************************************************************** var html = ''; html += '<div style="font-size:14px;font-family:Verdana,sans-serif;">'; html += '<br><center><table border="0" width="90%" style="">'; html += '<tr><td colspan="2" height="450" bgcolor="#1F273C" style="border: 2px solid #FFFFFF;"><br>' var cadena = codificar(patron, 'HTML', SCRIPT.version); html += '<div id="codHTML">' + cadena + '</div>'; html += '</td><td colspan="2" height="450" bgcolor="#1F273C" style="border: 2px solid #FFFFFF;"><br>' html += '<div id="codCC"><center><b>Batalla compactada para circulares (< 2000 caracteres)</b></center><br><br><br>' + PatronOGamatorCC(cadena) + '</div>'; html += '</td></tr></table><table>'; html += '<tr><td><br><center>'; html += getCuadrosBBCode(patron); html += '</td></tr></table></center><br>' // patron mini //cabecera html += '<div><table border="0" width="100%" style="">'; html += '<tr><td colspan="2" height="30" bgcolor="#000000" style="border: 2px solid #000000;">'; html += '<p align="center"><font style="font-size:12pt;" color="#FF6600">'; html += '<b>COMPACTADO MINIMO</b>'; html += '</font></p></td></tr></table></div>'; html += '<br><center><table border="0" width="90%" style="">'; html += '<tr><td colspan="2" height="100" bgcolor="#1F273C" style="border: 2px solid #FFFFFF;"><br><br>' html += '<div id="codHTML">' + codificar(patronMini, 'HTML', SCRIPT.version) + '</div>'; html += '</td></tr>'; html += '<tr><td><br><center>'; html += getCuadrosBBCode(patronMini); html += '</center></td></tr></table></center><br>' html += '</div>'; compactador.innerHTML = html; master = getElementsByClass("combatreport")[0]; compactador.innerHTML = compactador.innerHTML + master.innerHTML; master.innerHTML = compactador.innerHTML; master.id = "compactado"; cadena = PatronOGamatorCC(cadena); // circulares (de OGamator basado en trusreno) var trozo = '<div style="text-align:center;"><b><font color=#FE9A2E>Circulares (de OGamator basado en trusreno):</font></b><br>'; trozo += '<textarea id="txtHtmlCC" name="txt_htmlCC" style="background-color:#1F273C;width:600px;height:40px;border: 2px solid #FFFFFF;color:#FFFFFF" onFocus="javascript:this.select()">'; trozo += cadena; trozo += '</textarea>'; trozo += '</div>' document.getElementById("compactado").innerHTML = trozo + document.getElementById("compactado").innerHTML; } // ============================================================ function DevuelveCadena(cadena, Subcadena1, Subcadena2){ var pos1, pos2; if (cadena == null) return null; if (Subcadena1 == "" || Subcadena1 == null) pos1 = 0; else { pos1 = cadena.indexOf(Subcadena1); if (pos1 >= 0) pos1 = pos1 + Subcadena1.length; else return ""; } if (Subcadena2 == "" || Subcadena2 == null) pos2 = cadena.length; else { pos2 = cadena.indexOf(Subcadena2, pos1); if (pos2 < 0) return cadena.substring(pos1); } return cadena.substring(pos1, pos2); } // ============================================================ function PatronOGamatorCC(origen){ var cadenita, m, n, Cabecera, Contendientes, Robo, Escombros, Perdidas, PerdidasA, PerdidasD; var SolucionHtml = ""; Cabecera = ' Rondas: ' + DevuelveCadena(origen, "La batalla duró ", "ronda").trim() + ', el día ' + DevuelveCadena(origen, "el día ", "<"); Contendientes = '<font color="#6699FF">' + DevuelveCadena(origen, '<font color="#6699FF">', '<b>Robo:</b>'); m = Contendientes.split("<br>"); Contendientes = ""; for (i = 0; i < m.length - 2; i++) { if (m[i].toUpperCase().indexOf("PÉRDIDAS") > 0) { m[i] = m[i].replace(/PÉRDIDAS/g, 'Pérdidas'); m[i] = m[i].replace(/\<font((.|\n)*?)>/g, '').replace(/\<\/font>/g, ''); Perdidas = DevuelveCadena(m[i], "Pérdidas: ", "<br>"); i++; m[i] = m[i].replace(/\<font((.|\n)*?)>/g, '').replace(/\<\/font>/g, ''); m[i] = m[i].replace(/\<br>/g, "").replace(/\,/g, "").replace(/\(/g, "").replace(/\)/g, "").trim(); m[i] = m[i].replace(/\Metal/g, "").replace(/\Deuterio/g, "").replace(/\Cristal/g, ""); n = m[i].split(' '); m[i] = ""; for (j = 0; j < n.length; j++) { if (n[j].length > 3 || n[j] == "0") { m[i] = m[i] + n[j] + " + "; } } m[i] = m[i].substring(0, m[i].length - 3).trim(); m[i] = m[i].replace("0 + 0 + 0", ""); m[i] = "Pérdidas :" + m[i].trim() + " = <b>" + Perdidas + "</b>"; } if (m[i].indexOf('<font color="#6699FF">') >= 0) { m[i] = m[i].replace(/\<font((.|\n)*?)>/g, '').replace(/\<\/font>/g, ''); m[i] = "<br/><br/><font color='#6699FF'>" + m[i].trim() + "</font>"; } if (m[i].indexOf('<font color="#00FF40"><b>') >= 0) { m[i] = m[i].replace(/\<font((.|\n)*?)>/g, '').replace(/\<\/font>/g, ''); m[i] = "<br/><font color='#00AA00'>" + m[i].trim() + "</font><br/>"; } if (m[i].indexOf('<font color="#ED7010"><b>') >= 0) { m[i] = m[i].replace(/\<font((.|\n)*?)>/g, '').replace(/\<\/font>/g, ''); m[i] = "<br/><font color='#EE7711'>" + m[i].trim() + "</font><br/>"; } if (m[i].indexOf('<font color="#00FF40">') > 1 || m[i].indexOf('<font color="#ED7010">') > 1) { m[i] = m[i].replace(/\<font((.|\n)*?)>/g, '').replace(/\<\/font>/g, ''); m[i] = m[i].replace('perdió 0', ''); m[i] = m[i].replace('perdió ', ' <b>(-'); if (m[i].indexOf("-") > 0) m[i] = m[i] + ")</b>"; m[i] = m[i].trim() + "<br/>"; } if (m[i].toUpperCase().indexOf("LA BATALLA") > 0) { m[i] = m[i].replace(/\<font ((.|\n)*?)>/g, '').replace(/\<\/font>/g, '').replace('<br/>', ''); if(m[i].indexOf('atacante') != -1) m[i] = "<font color='#00DD00'>¡Ganaron los atacantes!"; if(m[i].indexOf('defensor') != -1) m[i] = "<font color='#DD0000'>¡Ganaron los defensores!"; if(m[i].indexOf('empate') != -1) m[i] = "<font color='#DDDD00'>¡EMPATE!"; if(origen.indexOf("Las enormes cantidades de metal y de cristal") > 0) { var ProbLuna = DevuelveCadena(origen, "La probabilidad de que surja una luna es del ", "<br>"); m[i] = m[i] + '<br/><b>Luna creada (' + ProbLuna + ')' ; } m[i] = "<br/><br/><b>" + m[i] + "</font></b><br/>"; } Contendientes = Contendientes + m[i]; } Robo = DevuelveCadena(origen, "<b>Robo:</b>", "<br>"); Robo = Robo.replace(/<br>/g, "").replace(/,/g, "").trim(); Robo = Robo.replace(/metal/gi, "").replace(/deuterio/gi, "").replace(/cristal/gi, ""); Robo = Robo.replace(/\<font((.|\n)*?)>/g, '').replace(/\<\/font>/g, ''); n = Robo.split(' '); Robo = "<b>Robo: </b>"; for (j = 0; j < n.length; j++) { if (n[j].length > 3 || n[j] == "0") { Robo = Robo + n[j] + " · "; } } Robo = Robo.substring(0, Robo.length - 3); Robo = Robo.replace(/\<br>/g, ""); Robo = Robo.trim() + "<br/>"; Escombros = DevuelveCadena(origen, "<b>Escombros:</b>", "<br>"); Escombros = Escombros.replace("Metal", "").replace("Deuterio", "").replace("Cristal", ""); n = Escombros.split('<font color="#FF0000">'); Escombros = "<b>Escombros: </b>"; Escombros = Escombros + n[1].split("</font>")[0].replace("<b>","").replace("</b>","") + " · "; Escombros = Escombros + n[2].split("</font>")[0].replace("<b>","").replace("</b>","") + " "; Escombros = Escombros + " <b> (" + n[3].split("</font>")[0] + " recicladores)</b>"; Escombros = Escombros.replace(/\<font((.|\n)*?)>/g, '').replace(/\<\/font>/g, ''); Escombros = Escombros.replace(/\<br>/g, ""); Escombros = Escombros.trim() + "<br/>"; Perdidas = DevuelveCadena(origen, "<b>Escombros:</b>", "RENTABILIDAD"); m = Perdidas.split("<br>"); Perdidas = ""; for (i = 1; i < m.length - 1; i++) { if (m[i].toUpperCase().indexOf("PÉRDIDAS") > 0) { PerdidasA = ""; PerdidasD = ""; m[i] = m[i].replace(/\<font((.|\n)*?)>/g, '').replace(/\<\/font>/g, ''); if(m[i].indexOf("Atacantes") > 0) PerdidasA = DevuelveCadena(m[i], "Atacantes: ", "<br>"); if(m[i].indexOf("Defensores") > 0) PerdidasD = DevuelveCadena(m[i], "Defensores: ", "<br>"); i++ m[i] = m[i].replace(/\<font((.|\n)*?)>/g, '').replace(/\<\/font>/g, ''); m[i] = m[i].replace(/\<br>/g, "").replace(/,/g, "").replace(/\(/g, "").replace(/\)/g, "").trim(); m[i] = m[i].replace(/metal/g, "").replace(/deuterio/g, "").replace(/cristal/g, ""); n = m[i].split(' '); m[i] = ""; for (j = 0; j < n.length; j++) { if (n[j].length > 3 || n[j] == "0") { m[i] = m[i] + n[j] + " + "; } } m[i] = m[i].substring(0, m[i].length - 3).trim(); m[i] = m[i] + " =" m[i] = m[i].replace("0 + 0 + 0 =", ""); if(PerdidasA != "") m[i] = "Atacantes:" + m[i].trim() + " <b>" + PerdidasA + "</b><br/>"; if(PerdidasD != "") m[i] = "Defensores :" + m[i].trim() + " <b>" + PerdidasD + "</b>"; } Perdidas = Perdidas + m[i]; } Perdidas = Perdidas.replace(/\<font((.|\n)*?)>/g, '').replace(/\<\/font>/g, ''); var Rentabilidad = '<br/><br/><font color="#6699FF"><b>RENTABILIDAD</b></font><br/>'; m = origen.split("RENTABILIDAD"); var AR="", ASR="", DR=""; if(m.length == 2) { AR = "<b>Atacantes: </b><br/>"; AR = AR + DevuelveCadena(m[1], "Metal: ", "<br>") + " + "; AR = AR + DevuelveCadena(m[1], "Cristal: ", "<br>") + " + "; AR = AR + DevuelveCadena(m[1], "Deuterio: ", "<br>") + " = "; AR = AR + "<b>" + DevuelveCadena(m[1], 'Atacantes', '<br>') + "</b><br/>"; AR = AR.replace(/\<font((.|\n)*?)>/g, '').replace(/\<\/font>/g, ''); } else { AR = "<b>Atacantes reciclando: </b><br/>"; AR = AR + DevuelveCadena(m[1], "Metal: ", "<br>") + " + "; AR = AR + DevuelveCadena(m[1], "Cristal: ", "<br>") + " + "; AR = AR + DevuelveCadena(m[1], "Deuterio: ", "<br>") + " = "; AR = AR.replace(/\<font((.|\n)*?)>/g, '').replace(/\<\/font>/g, ''); AR = AR + "<font color='#FFCC66'>" + DevuelveCadena(m[1], "<b>", "</b>") + "</font><br/>"; ASR = "<b>Atacantes sin reciclar: </b><br/>"; ASR = ASR + DevuelveCadena(m[2], "Metal: ", "<br>") + " + "; ASR = ASR + DevuelveCadena(m[2], "Cristal: ", "<br>") + " + "; ASR = ASR + DevuelveCadena(m[2], "Deuterio: ", "<br>") + " = "; ASR = ASR.replace(/\<font((.|\n)*?)>/g, '').replace(/\<\/font>/g, ''); ASR = ASR + "<font color='#FFCC66'>" + DevuelveCadena(m[2], "<b>", "</b>") + "</font><br/>"; DR = "<b>Defensores reciclando: </b><br/>"; DR = DR + DevuelveCadena(m[3], "Metal: ", "<br>") + " + "; DR = DR + DevuelveCadena(m[3], "Cristal: ", "<br>") + " + "; DR = DR + DevuelveCadena(m[3], "Deuterio: ", "<br>") + " = "; DR = DR.replace(/\<font((.|\n)*?)>/g, '').replace(/\<\/font>/g, ''); DR = DR + "<font color='#FFCC66'>" + DevuelveCadena(m[3], "<b>", "</b>") + "</font><br/>"; } m = origen.split("TOTALES"); var Totales = DevuelveCadena(m[1], '<font color="#FF0000">', '</font>'); Perdidas = '<br/><font color="#6699FF"><b>PÉRDIDAS: ' + Totales + '</b></font><br/>' + Perdidas.replace(/PÉRDIDAS/gi, ''); SolucionHtml = Cabecera + Contendientes + "<br/>" + Robo + Escombros + Perdidas; SolucionHtml = SolucionHtml.replace(/\<ft color=/g, "<font color="); SolucionHtml = SolucionHtml.replace(/\<\/font\>/g, '</font>'); SolucionHtml = SolucionHtml.replace(/Estrella de la muerte/g,"EDLM"); SolucionHtml = SolucionHtml.replace(/Nave grande de Carga/g, "Carg G"); SolucionHtml = SolucionHtml.replace(/Nave pequeña de Carga/g, "Carg P"); SolucionHtml = SolucionHtml.replace(/Cazador ligero/g, "Ligeros"); SolucionHtml = SolucionHtml.replace(/Cazador pesado/g, "Pesados"); SolucionHtml = SolucionHtml.replace(/Sonda de espionaje/g, "Sondas"); SolucionHtml = SolucionHtml.replace(/Nave de batalla/g, "NBat"); SolucionHtml = SolucionHtml.replace(/Satélite Solar/g, "Sat"); SolucionHtml = SolucionHtml.replace(/Lanzamisiles/g, "Lanzas"); SolucionHtml = SolucionHtml.replace(/Láser pequeño/g, "Láser P"); SolucionHtml = SolucionHtml.replace(/Lase grande/g, "Láser G"); SolucionHtml = SolucionHtml.replace(/Cañón Gauss/g, "Gauss"); SolucionHtml = SolucionHtml.replace(/Cañón Iónico/g, "Iónicos"); SolucionHtml = SolucionHtml.replace(/Cañón de Plasma/g, "Plasmas"); SolucionHtml = SolucionHtml.replace(/Cúpula pequeña/g, "Cúp P"); SolucionHtml = SolucionHtml.replace(/Cúpula grande/g, "Cúp G"); var Firma = '<br/>' + txt_firma ; cadenita = SolucionHtml + Rentabilidad + AR + ASR + DR; if (cadenita.length < 2000) { SolucionHtml = SolucionHtml + Rentabilidad + AR + ASR + DR; } else { if (SolucionHtml.indexOf("¡Ganaron los defensores!") > 1) SolucionHtml = SolucionHtml + Rentabilidad + ASR + DR; else SolucionHtml = SolucionHtml + Rentabilidad + AR; } SolucionHtml = SolucionHtml.replace(/\+ \-/g, "-"); SolucionHtml = SolucionHtml.replace(/\n/g, ''); SolucionHtml = "<center>" + SolucionHtml + Firma + "</center>"; return SolucionHtml; } }) ();