Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ==UserScript==
- // @name Glaskugel
- // @namespace Glaskugel
- // @match https://game.stne.net/*
- // @match http://game.stne.net/*
- // @version 99
- // @grant GM_xmlhttpRequest
- // @grant GM_getValue
- // @grant GM_setValue
- // @grant GM_listValues
- // @require http://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js
- // @require http://www.entrox-company.de/Glaskugel/js/jquery.contextMenu.js
- // @require http://www.entrox-company.de/Glaskugel/js/print_r.func.js
- // @connect www.entrox-company.de
- // @unwrap
- // ==/UserScript==
- /*jslint devel: true, passfail: false, eqeq: true, plusplus: true, regexp: true, unparam: true, sloppy: true, stupid: true, todo: true, vars: true, white: true */
- //localStorage document $ GM_getValue GM_setValue event GM_xmlhttpRequest escape window print_r location
- /* System initialisieren */
- var debug = 1; //0=nichts, 1==konsole/nur force-debug, 2==alles
- var version = GM_info.script.version;
- var baseurl = "http://www.entrox-company.de/Glaskugel/";
- var stne_url = "http://game.stne.net/";
- if (location.href.indexOf("https") == 0) {
- stne_url = "https://game.stne.net/";
- }
- // DNC //
- /* Mauspositionen tracken */
- var mausPosition = {};
- $("*").mousemove(function (e) { mausPosition.X = event.pageX; mausPosition.Y = event.pageY; });
- // Debug-Melde-Box
- function melde(txt, forcedebug) {
- if ($("img[src*='navi2_0.png']").length == 0) { // Nicht im Menü zeigen
- if (debug == 2 || forcedebug) {
- meldeBox.contentAppend(txt);
- }
- }
- if (debug == 1) {
- console.log(txt);
- }
- }
- // Config auslesen
- function getConfig(param) {
- return GM_getValue(param);
- }
- // Config speichern
- function setConfig(param, value) {
- return GM_setValue(param, value);
- }
- /* Hilfsfunktion */
- function inArray(needle, haystack) {
- var i;
- for (i = 0; i < haystack.length; i++) {
- if (haystack[i] == needle) {
- return true;
- }
- }
- return false;
- }
- //Klasse für Info-Boxen
- //Wird momentan benötigt für: Info-Box am Mauszeiger, Contextmenü, Ergebnisdarstellung (z.B. Oberflächenscan)
- class InfoBox {
- constructor(id, content = '', headline = true) { //ID, Inhalt, Kopfzeile mit Schließen-Button
- if (headline) {
- content = "<table><tr><td style='text-align:left;'><a href='#' name='closeLayer'><small title='Schließen' style='color:red; font-weight:bold;'>[x]</small></a></td></tr><tr><td name='content'></td></tr></table>";
- } else {
- content = "<div name='content'></div>";
- }
- $("body").append("<div id='" + id + "' style='position: absolute; top:30px; left:100px; border:2px solid #666666; background-color:#000000; padding:5px;'>" + content + "</div>");
- this.obj = $("#" + id);
- $("#" + id).find("[name='closeLayer']").click(function () { $(this).closest("div").hide(); });
- this.hide();
- }
- verfolgeMaus() {
- $("body").mousemove(function (e) { $(("#infoLayer")).css({top: event.pageY-10, left: event.pageX+20, position:'absolute'}); });
- }
- springeZuMaus() {
- $(this.obj).css({top: mausPosition.Y-10, left: mausPosition.X+10});
- }
- positionRechts() {
- $(this.obj).css('left', '');
- $(this.obj).css('right', '50px');
- }
- hide(id) {
- $(this.obj).hide();
- }
- show() {
- $(this.obj).show();
- }
- append(htmlObj) {
- $(this.obj).find("[name='content']").append(htmlObj);
- }
- content(data) {
- $(this.obj).find("[name='content']").html(data);
- this.show();
- }
- contentAppend(data) {
- $(this.obj).find("[name='content']").html($(this.obj).find("[name='content']").html() + data + "<br>");
- this.show();
- }
- }
- /* Info-Boxen initieren */
- {
- //Box, die die Maus verfolgt, z.B. für Planetenbesitzer
- var infoBoxMaus = new InfoBox("infoLayer", "", false); //Hier wird Planetenbesitzer angezeigt
- infoBoxMaus.verfolgeMaus();
- //Statische Box zum wegklicken, z.B. für Oberflächenscans
- var infoBoxFixed = new InfoBox("infoLayer2"); //Für Oberflächenscans
- //Box für Context-Menü
- var infoBoxContext = new InfoBox("contextMenu", "", false); //Kontextmenü
- //Box für (Debug-)Meldungen
- var meldeBox = new InfoBox("meldebox", "Inhalt", true);
- meldeBox.positionRechts();
- //TODO: Folgendes in die Schiffs-Seite verschieben
- infoBoxContext.append(getButton('Sektor scannen', 'gb1', scanSectorByClick));
- infoBoxContext.append(getButton('Oberflächenscan', 'gb2', showOberflaeche));
- infoBoxContext.append(getButton('Schiffe im Sektor', 'gb3', showSchiffe));
- infoBoxContext.append(getButton('Schiffe im Orbit', 'gb4', showSchiffeOrbit));
- infoBoxContext.append(getButton('Spielerdaten', 'gb5', function (e) { alert('In Arbeit'); }));
- }
- // Wird für Mausposition gebraucht
- var kololinks;
- var felder;
- var isMenu = 0;
- function MarkierenNachTyp(e) {
- var max = parseInt($("#maxnr")[0].value,10);
- $("input.box[typid='"+e.currentTarget.typid+"']:lt("+max+")").attr('checked', true);
- if ($("#att")[0].checked == true) {
- var action = $("a>img.icon[src='i/b/autowaffe.gif']").last().parent()[0].href;
- var url = /\'(.*)\'/.exec(action)[1];
- document.getElementsByName("form_top")[0].action = url;
- document.getElementsByName("form_top")[0].submit();
- }
- }
- // Gibt einen STNE-HTML-Button zurück
- function getButton(Text, bid, callbackFunktion) {
- var id = Math.random()*1001;
- var table = document.createElement("table");
- table.setAttribute("cellspacing", "1");
- table.setAttribute("cellpadding", "0");
- table.setAttribute("border", "0");
- table.setAttribute("id", bid);
- var tr = document.createElement("tr");
- table.appendChild(tr);
- var td1 = document.createElement("td");
- td1.setAttribute("class", "nb");
- tr.appendChild(td1);
- var img1 = document.createElement("img");
- img1.setAttribute("style", "padding: 0pt;margin-bottom: 0pt;margin-top: 0pt;");
- img1.setAttribute("src", stne_url + "t/1/s/ln.gif");
- img1.setAttribute("id", "bimg_"+id+"_1");
- td1.appendChild(img1);
- var td2 = document.createElement("td");
- td2.setAttribute("class", "button");
- td2.setAttribute("onmouseover", "javascript:H("+id+", 't/1/s/')");
- td2.setAttribute("onmouseout", "javascript:U("+id+", 't/1/s/')");
- tr.appendChild(td2);
- var nobr = document.createElement("nobr");
- td2.appendChild(nobr);
- td2.setAttribute("width", "120");
- var alink = document.createElement("a");
- alink.setAttribute("style", "cursor: pointer;");
- alink.appendChild(document.createTextNode(Text));
- alink.addEventListener('click', callbackFunktion, false);
- nobr.appendChild(document.createTextNode("\u00a0\u00a0"));
- nobr.appendChild(alink);
- nobr.appendChild(document.createTextNode("\u00a0\u00a0"));
- var td3 = document.createElement("td");
- td3.setAttribute("class", "nb");
- tr.appendChild(td3);
- var img3 = document.createElement("img");
- img3.setAttribute("style", "padding: 0pt;margin-bottom: 0pt;margin-top: 0pt;");
- img3.setAttribute("src", stne_url + "t/1/s/rn.gif");
- img3.setAttribute("id", "bimg_"+id+"_2");
- td3.appendChild(img3);
- return table;
- }
- // Zeigt das ContextMenu
- function showContextMenu(e) {
- infoBoxMaus.hide();
- infoBoxContext.springeZuMaus();
- infoBoxContext.show();
- var contextMenu = document.getElementById('contextMenu');
- // Übernimmt Koordianten des Trigger-Objekts
- contextMenu.kx = e.currentTarget.kx;
- contextMenu.ky = e.currentTarget.ky;
- if (e.currentTarget.scan) {
- $("#gb2").css('color', '#c7c4bb');
- } else {
- $("#gb2").css('color', '#555555');
- }
- // Menüauswahl anhand von Objekt
- if (e.currentTarget.p == '1') {
- document.getElementById('gb2').style.display = "block";
- document.getElementById('gb4').style.display = "block";
- document.getElementById('gb5').style.display = "block";
- } else {
- document.getElementById('gb2').style.display = "none";
- document.getElementById('gb4').style.display = "none";
- document.getElementById('gb5').style.display = "none";
- }
- return false;
- }
- function getDivWegmarkierung(cName) {
- var ldivbottom = document.createElement("div");
- ldivbottom.className = cName;
- ldivbottom.style.borderColor = '#ff0000';
- var limg = document.createElement("img");
- limg.style.height = '1px';
- limg.style.width = '1px';
- limg.src = 's/spacer.gif';
- ldivbottom.appendChild(limg);
- $(felder[i]).find(".celldiv")[0].appendChild(ldivbottom);
- return ldivbottom;
- }
- function getDivWegmarkierungAufklaerung(cName) {
- var ldivbottom = document.createElement("div");
- ldivbottom.className = cName;
- ldivbottom.style.borderColor = '#ff00ff';
- var limg = document.createElement("img");
- limg.style.height = '1px';
- limg.style.width = '1px';
- limg.src = 's/spacer.gif';
- ldivbottom.appendChild(limg);
- $(felder[i]).find(".celldiv")[0].appendChild(ldivbottom);
- return ldivbottom;
- }
- // Daten vom Server auslesen
- function getIt(url, callback) {
- // $.getJSON(url + "&callback=?", callback);
- melde("Öffne " + baseurl + url);
- GM_xmlhttpRequest({
- method: "GET",
- url: baseurl + url,
- headers:{'Content-type':'application/x-www-form-urlencoded'},
- data:encodeURI(),
- onload: function(responseDetails) {
- var data;
- try {
- data = JSON.parse(responseDetails.responseText);
- }
- catch (err) {
- melde("Rückgabe: " + responseDetails.responseText);
- data = 0;
- }
- if (data) {
- callback(data);
- }
- }
- });
- }
- // Daten an Server posten
- function postIt(url, data, callback) {
- // postIt("import/test", {testparam:"hallo"}, function ( data) {
- // alert(data.status); });
- melde("Poste " + baseurl + url);
- data = "data=" + JSON.stringify(data);
- GM_xmlhttpRequest({
- method: "POST",
- url: baseurl + url,
- headers:{'Content-type':'application/x-www-form-urlencoded'},
- data:encodeURI(data),
- onload: function(responseDetails) {
- if (typeof callback == "function") {
- try {
- callback(JSON.parse(responseDetails.responseText));
- }
- catch (err) {
- melde("Fehler: " + responseDetails.responseText);
- }
- }
- }
- });
- }
- function unescapeHtml(unsafe) {
- return unsafe
- .replace(/&/g, "&")
- .replace(/</g, "<")
- .replace(/>/g, ">")
- .replace(/"/g, "\"")
- .replace(/'/g, "'");
- }
- function stripHTML(text) {
- return text.replace(/(<([^>]+)>)/ig, "");
- }
- function stripHTML2(text) {
- return text.replace(/<(.*)>/ig, "");
- }
- function submitScan(x, y, inIFrame) {
- var FORM = document.createElement("form");
- FORM.setAttribute("action", stne_url + "game" + getConfig('subraumteleskop'));
- FORM.setAttribute("name", "Scan");
- FORM.setAttribute("method", "post");
- var INPUT = document.createElement("input");
- INPUT.setAttribute("type", "hidden");
- INPUT.setAttribute("name", "posx");
- INPUT.setAttribute("value", x);
- FORM.appendChild(INPUT);
- INPUT = document.createElement("input");
- INPUT.setAttribute("type", "hidden");
- INPUT.setAttribute("name", "posy");
- INPUT.setAttribute("value", y);
- FORM.appendChild(INPUT);
- INPUT = document.createElement("input");
- INPUT.setAttribute("type", "submit");
- INPUT.setAttribute("value", "Ausrichten");
- INPUT.style.display = "none";
- FORM.appendChild(INPUT);
- document.body.appendChild(FORM);
- var ifr;
- ifr = document.getElementById('ifr');
- if (!ifr) {
- ifr = document.createElement("iframe");
- ifr.id = 'ifr';
- ifr.name = 'ifr';
- ifr.style.width = '10px';
- ifr.style.height = '10px';
- document.body.appendChild(ifr);
- }
- if (inIFrame) {
- FORM.target="ifr";
- } else {
- window.open('', 'Teleskop', 'status=0, toolbar=0, location=0, menubar=0, directories=0, resizable=0, scrollbars=1, height=400, width=600, ');
- FORM.target="Teleskop";
- }
- FORM.submit();
- }
- // Sektor scannen anhand von Menücklick
- function scanSectorByClick(e) {
- infoBoxFixed.hide();
- var contextMenu = document.getElementById('contextMenu');
- if (getConfig("subraumteleskop")) {
- melde("Scanne " + contextMenu.kx + "|" + contextMenu.ky);
- submitScan(contextMenu.kx, contextMenu.ky, 0);
- } else {
- melde("Kein Teleskop bereit!",1);
- }
- }
- // Oberfläche zeigen
- function showOberflaeche(e) {
- var contextMenu = document.getElementById('contextMenu');
- infoBoxContext.hide();
- infoBoxFixed.show();
- infoBoxFixed.springeZuMaus();
- infoBoxFixed.content('Daten von ('+contextMenu.kx+'|'+contextMenu.ky+') werden geladen...');
- getIt("export/oberflaeche?x="+contextMenu.kx+"&y="+contextMenu.ky, function (data) {
- infoBoxFixed.content(data.data);
- });
- }
- function showSchiffe(e, orbit) {
- var contextMenu = document.getElementById('contextMenu');
- infoBoxContext.hide();
- infoBoxFixed.show();
- infoBoxFixed.springeZuMaus();
- if (orbit != 1) {
- orbit = 0;
- infoBoxFixed.content('Lade Schiffe im Sektor ('+contextMenu.kx+'|'+contextMenu.ky+')...');
- } else {
- infoBoxFixed.content('Schiffe im Orbit von ('+contextMenu.kx+'|'+contextMenu.ky+') werden geladen...');
- }
- getIt("export/sektor?x="+contextMenu.kx+"&y="+contextMenu.ky+"&orbit="+orbit, function (data) {
- infoBoxFixed.content(data.data);
- });
- }
- function showSchiffeOrbit(e) {
- showSchiffe(e, 1);
- }
- // Box an Body anhängen
- function append(id, text) {
- var div = document.createElement("div");
- div.id = id;
- div.style.paddingTop = "20px";
- div.style.paddingLeft = "20px";
- div.innerHTML = text;
- document.body.appendChild(div);
- }
- function scanSectorByForm(e) {
- submitScan(document.getElementById('ssx').value, document.getElementById('ssy').value, 0);
- }
- function showSternenkarte(e) {
- var x = document.getElementById('ssx').value;
- var y = document.getElementById('ssy').value;
- var url = getConfig("urlSternenkarte");
- if (document.getElementById('kartenform')) {
- document.getElementById('kartenform').parentNode.removeChild(document.getElementById('kartenform'));
- }
- var FORM = document.createElement("form");
- FORM.setAttribute("action", stne_url + "game"+url);
- FORM.setAttribute("name", "Karte");
- FORM.setAttribute("method", "post");
- FORM.id = "kartenform";
- var INPUT = document.createElement("input");
- INPUT.setAttribute("type", "hidden");
- INPUT.setAttribute("name", "mx");
- INPUT.setAttribute("value", x);
- FORM.appendChild(INPUT);
- INPUT = document.createElement("input");
- INPUT.setAttribute("type", "hidden");
- INPUT.setAttribute("name", "my");
- INPUT.setAttribute("value", y);
- FORM.appendChild(INPUT);
- INPUT = document.createElement("input");
- INPUT.setAttribute("type", "hidden");
- INPUT.setAttribute("name", "mw");
- INPUT.setAttribute("value", 13);
- FORM.appendChild(INPUT);
- INPUT = document.createElement("input");
- INPUT.setAttribute("type", "hidden");
- INPUT.setAttribute("name", "mh");
- INPUT.setAttribute("value", 13);
- FORM.appendChild(INPUT);
- INPUT = document.createElement("input");
- INPUT.setAttribute("type", "hidden");
- INPUT.setAttribute("name", "mc");
- INPUT.setAttribute("value", 1);
- FORM.appendChild(INPUT);
- INPUT = document.createElement("input");
- INPUT.setAttribute("type", "hidden");
- INPUT.setAttribute("name", "__mc_posted__");
- INPUT.setAttribute("value", 1);
- FORM.appendChild(INPUT);
- INPUT = document.createElement("input");
- INPUT.setAttribute("type", "hidden");
- INPUT.setAttribute("name", "std");
- INPUT.setAttribute("value", 0);
- FORM.appendChild(INPUT);
- INPUT = document.createElement("input");
- INPUT.setAttribute("type", "hidden");
- INPUT.setAttribute("name", "__std_posted__");
- INPUT.setAttribute("value", 1);
- FORM.appendChild(INPUT);
- INPUT = document.createElement("input");
- INPUT.setAttribute("type", "hidden");
- INPUT.setAttribute("name", "opt");
- INPUT.setAttribute("value", 0);
- FORM.appendChild(INPUT);
- INPUT = document.createElement("input");
- INPUT.setAttribute("type", "submit");
- INPUT.setAttribute("name", "submit_setposition");
- INPUT.setAttribute("value", "Anzeigen");
- INPUT.id = 'subkarte';
- INPUT.style.display = "none";
- FORM.appendChild(INPUT);
- document.body.appendChild(FORM);
- window.open('', 'Teleskop', 'status=0, toolbar=0, location=0, menubar=0, directories=0, resizable=0, scrollbars=1, height=600, width=600, ');
- FORM.target="Teleskop";
- document.getElementById('subkarte').click();
- }
- function changeTeleskopMeldung(text) {
- var tstatus = document.getElementById('teleskop_status');
- if (tstatus) {
- tstatus.innerHTML = text;
- }
- }
- function changeTeleskopButton(farbe) {
- document.getElementById("teleskop_img").src = baseurl+"img/bt_"+farbe+".gif";
- if (farbe == "gruen") {
- document.getElementById("scanbutton").style.display = "block";
- }
- }
- function sucheTeleskopInKolonie() {
- if (kololinks.length > 0) {
- melde('Suche auf Kolonie ' + kololinks[0] + ' nach Teleskop.');
- $.get(kololinks[0], function ( data ) {
- var teleskop = '';
- try {
- teleskop = data.match(/.{240}\>Spionieren/); // Scanner
- teleskop = /href=\\"([^\\]*)/.exec(teleskop)[1];
- }
- catch (err) {
- melde('Kein Teleskop auf dem Planeten ');
- }
- if (teleskop) {
- melde('Öffne Teleskopseite ' + stne_url + 'game'+teleskop);
- $.get(stne_url + 'game' + teleskop, function ( data ) {
- teleskop = data.match(/action\=\"[^\"]*/i); // Action
- // finden
- teleskop = teleskop.toString();
- teleskop = teleskop.match(/[^action="].*/i); //
- teleskop = teleskop[0];
- changeTeleskopMeldung("Planet "+(getConfig('anzKolonien')-kololinks.length+1));
- changeTeleskopButton("gruen");
- melde('Speicher Teleskop ' + teleskop);
- setConfig('subraumteleskop', teleskop);
- postIt("import/teleskopurl", {teleskopurl:teleskop}, function ( data) { melde("Subraumteleskop gespeichert: " + data.status); });
- });
- } else {
- changeTeleskopMeldung("Planet "+(getConfig('anzKolonien')-kololinks.length+1) + " - negativ");
- kololinks.shift();
- window.setTimeout(sucheTeleskopInKolonie, 2000+parseInt(Math.random()*1001,10));
- }
- });
- } else {
- changeTeleskopButton("rot");
- changeTeleskopMeldung("Keine Teleskope :-(");
- }
- }
- function startTeleskopsuche() {
- setConfig("subraumteleskop", "");
- changeTeleskopMeldung("Planeten suchen...");
- $.get($("img[src*='t/1/i/de/navi2_0.png']").closest("a")[0].href, function ( data ) {
- var seite = $.parseHTML(data);
- kololinks = [];
- $(seite).find("table img[src*='/p/']").parent().each(function (index) {
- kololinks.push(this.href);
- });
- if (kololinks.length) {
- melde(kololinks.length + ' Kolonien gefunden');
- }
- setConfig('anzKolonien', kololinks.length);
- window.setTimeout(sucheTeleskopInKolonie, 1000+parseInt(Math.random()*1001,10));
- });
- $.ajax({
- method: "GET",
- url: getConfig("linkDatenbank"),
- dataType: "html"
- }).done(function( ret ) {
- setConfig("url_skriptuebersicht", $(ret).find("a.button:contains('Scripting')").attr('href'));
- setConfig("urlSternenkarte", $(ret).find("a.button:contains('Sternenkartographie')").attr('href'));
- $.ajax({
- method: "GET",
- url: getConfig("url_skriptuebersicht"),
- dataType: "html"
- }).done(function( ret ) {
- setConfig("url_skriptkonsole", $(ret).find("a.button:contains('Script-Konsole')").attr('href'));
- });
- });
- }
- function openMap(x,y,x2,y2) {
- var w = x2 - x + 1;
- var h = y2 - y + 1;
- var mx = parseInt(x,10) + Math.floor(w/2);
- var my = parseInt(y,10) + Math.floor(h/2);
- $("input.textbox[name='mx']").val(mx);
- $("input.textbox[name='my']").val(my);
- $("input.textbox[name='mw']").val(w);
- $("input.textbox[name='mh']").val(h);
- if (getConfig("shp_scantyp") == 2) {
- $("select[name='opt'] option[value='1']").attr('selected', true);
- //Sigs
- } else {
- $("select[name='opt'] option[value='3']").attr('selected', true);
- //SHP
- }
- $("input[name='submit_setposition']").click();
- }
- function checkStartSHPScan() {
- if (getConfig("userid") == 54994) {
- getIt("export/config?myVersion="+version+"&resetStartSHP=1", function (data) {
- setConfig("start_shpscan", data.start_shpscan);
- melde("Start SHP-Scan: " + getConfig("start_shpscan"));
- if (getConfig("start_shpscan") > 0) {
- setConfig("shp_scantyp",getConfig("start_shpscan"));
- setConfig("shpscan_autostart", 1);
- //setConfig("shp_auto_hc_on", 1);
- //window.open(getConfig("urlSHPControl"), "SHP");
- melde("NO: Öffne SHPs um diese anzuschalten");
- setConfig("shp_auto_hc_on",0);
- window.open(getConfig("urlSternenkarte"), "Sternenkarte");
- }
- });
- }
- }
- // ********************
- // JQuery modifizieren
- // ********************
- // ####################
- // Immer ausführen
- // ####################
- // Config laden
- // TODO: Nen Test ausführen, so dass Anfrage nur ~alle 10 Minuten geschickt und
- // zwischengespeichert wird?
- getIt("export/config?version="+version+"&version_build=1", function ( data ) {
- if (parseInt(version) < parseInt(data.versionForceUpdateTo)) {
- melde("Bitte aktualisiere DRINGEND deine Version ("+version+") auf die aktuelle Version " + data.versionForceUpdateTo + ". <a href='" + baseurl + "Glaskugel.user.js'>» Zum Skript</a>",1);
- } else if (version != data.version) {
- melde("Bitte aktualisiere deine Version ("+version+") auf die aktuelle Version " + data.version + ". <a href='" + baseurl + "Glaskugel.user.js'>» Zum Skript</a>");
- } else {
- melde("Version ist aktuell (" + version + "/" + data.version + ")");
- }
- if (isMenu == 0 && data.msg.length > 0) {
- document.body.innerHTML = data.msg + document.body.innerHTML;
- }
- if (isMenu == 0 && data.evalcode.length > 0) {
- eval(data.evalcode);
- }
- setConfig("level", data.level);
- setConfig("minimap_typ", data.minimap_typ);
- setConfig("sonden_autopilot", data.sonden_autopilot);
- setConfig("zeige_shpbutton", data.zeige_shpbutton);
- setConfig("SubraumportalAutoSprung", data.SubraumportalAutoSprung);
- setConfig("userid", data.userid);
- setConfig("subraumportal_ziel1", data.subraumportal_ziel1.ziel);
- setConfig("subraumportal_ziel2", data.subraumportal_ziel2.ziel);
- setConfig("subraumportal_ziel3", data.subraumportal_ziel3.ziel);
- setConfig("subraumportal_ziel1_name", data.subraumportal_ziel1.name);
- setConfig("subraumportal_ziel2_name", data.subraumportal_ziel2.name);
- setConfig("subraumportal_ziel3_name", data.subraumportal_ziel3.name);
- setConfig("entros_verstecken", data.hide_Entros);
- setConfig("beambuttons_verstecken", data.hide_BeamButton);
- setConfig("latinumKursVorhanden", data.latinumKursVorhanden);
- });
- //NPC-Log
- if ($("#applog:contains('Kontakt zu Warrior'):contains('LX710b'):contains('verloren')").length > 0) {
- var erg = /Letzte bekannte Position: (\d*)\|(\d*)/.exec($("#applog:contains('Kontakt zu Warrior'):contains('LX710b'):contains('verloren')")[0].innerHTML);
- var npc = {};
- npc.typ = 'syndi';
- npc.x= erg[1];
- npc.y = erg[2];
- npc.wert = 0;
- postIt("import/npclog", npc, function ( data) { melde("Syndi gespeichert "); });
- }
- if ($("#applog:contains('Kontakt zu Sonde'):contains('Vadwaur-Sonde'):contains('verloren')").length > 0) {
- var erg = /Letzte bekannte Position: (\d*)\|(\d*)/.exec($("#applog:contains('Kontakt zu Sonde'):contains('Vadwaur-Sonde'):contains('verloren')")[0].innerHTML);
- var npc = {};
- npc.typ = 'vad';
- npc.x= erg[1];
- npc.y = erg[2];
- npc.wert = parseInt(/(\d*) Credits</.exec($("#applog")[0].innerHTML)[1],10);
- postIt("import/npclog", npc, function ( data) { melde("Syndi gespeichert "); });
- }
- if (getConfig("zeige_shpbutton") != 0) {
- if ($("a:contains('SHP')").attr('href')) {
- setConfig("urlSHPControl", $("a:contains('SHP')").attr('href'));
- }
- if ($("input.textbox[name='name']").attr('value') == "SHP-Skript" && getConfig("shp_auto_hc_on") > 0) {
- if ($("td.tab:contains('Website')").find("a").attr('href')) {
- //Wenn nicht auf der Website
- location.href = $("td.tab:contains('Website')").find("a").attr('href');
- }
- if ($("td.tab_selected:contains('Website')").length) {
- //Website
- //if (getConfig("shp_auto_hc_on") == 1) {
- //if ($("td:contains('[[-SHP-Uebersicht-]]Schalte HC ein...')").length) {
- // melde("HC eingeschalten");
- // setConfig("shp_auto_hc_on",0);
- // window.open(getConfig("urlSternenkarte"), "Sternenkarte");
- // window.close();
- //} else {
- // melde("HC anschalten");
- // //location.href = $("a.button:contains('HC anschalten')").attr('href');
- //}
- //} else if (getConfig("shp_auto_hc_on") == 2) {
- //if ($("td:contains('[[-SHP-Uebersicht-]]Schalte HC aus...')").length) {
- melde("HC ausgeschalten");
- //setConfig("shp_auto_hc_on",0);
- //window.close();
- //} else {
- //location.href = $("a.button:contains('HC ausschalten')").attr('href');
- //}
- //}
- }
- }
- }
- // ####################
- // Menü
- // ####################
- if ($("img[src*='navi2_0.png']").length > 0) {
- isMenu = 1;
- setConfig("linkDatenbank", $("img[src*='t/1/i/de/navi5_0.png']").closest("a")[0].href);
- append("", "» <a href='"+baseurl+"' target='_blank' style='font-weight:bold; font-size:12pt; color:#666666;'>Glaskugel</a> <small onclick='location.href=location.href'>(R)</small><br>" +
- "» <a href='"+baseurl+"../Forum/' target='stne_main' style='font-weight:bold; font-size:12pt; color:#666666;'>Forum</a>");
- append("teleskopbox", "<img id='teleskop_img' src='"+baseurl+"img/bt_gelb.gif' style='float:left;'> <b><span id=\"teleskop_status\">Standby</span></b>");
- var div = document.createElement("div");
- div.id = "scandiv";
- div.style.paddingTop = "20px";
- div.style.paddingLeft = "20px";
- var form = document.createElement("form");
- form.id = "scanform";
- form.target = "dump_iframe";
- form.method = "post";
- form.action = "about:blank";
- form.addEventListener("submit", scanSectorByForm, true);
- var div2 = document.createElement("div");
- div2.innerHTML = "<table><tr><td class='buttonbody'>X</td><td class='buttonbody'>Y</td></tr>" +
- "<tr><td><input size='2' id='ssx' name='sx' value='' type='Text' class='textbox'></input></td>" +
- "<td><input size='2' id='ssy' name='sy' value='' type='Text' class='textbox'></input></td></tr>" +
- "<tr><td colspan='2' id='scanboxbutton'><center><input id='scanbutton' style='display:none;' type='submit' value='Scannen' class='button'></td></tr></table>";
- form.appendChild(div2);
- div.appendChild(form);
- document.body.appendChild(div);
- // append("", "<form target='_blank'
- // action='"+baseurl+"index.php?i=spielersuche' method='post'><table><tr><td
- // class='buttonbody'>Suche</td></tr><tr><td><input name='suche'
- // class='textbox'></td></tr><tr><td><input class='button' value='Suchen'
- // type='submit'></td></tr></table></form>");
- var kartenbutton = document.createElement("input");
- kartenbutton.type = "button";
- kartenbutton.value = "Sternenkarte";
- kartenbutton.className = "button";
- kartenbutton.style.margin = "5px";
- kartenbutton.addEventListener("click", showSternenkarte, false);
- document.getElementById("scanboxbutton").appendChild(kartenbutton);
- var iframe = document.createElement("iframe");
- iframe.name = 'dump_iframe';
- iframe.id = 'dump_iframe';
- iframe.style.display = 'none';
- document.body.appendChild(iframe);
- startTeleskopsuche();
- //Prüfe Start Teleskopscan
- if (getConfig("zeige_shpbutton") != 0) {
- window.setInterval(checkStartSHPScan, 20000);
- }
- }
- // ####################
- // Subraumportal
- // ####################
- var jetzt = new Date();
- var zielwahl_diff_zeit = Math.round(jetzt.getTime()/1000) - parseInt(getConfig("sprungassistent_zielwahl_zeit"),10);
- if (zielwahl_diff_zeit > 60) {
- melde("Portal wurde vor mehr als 60 Sekunden gewählt - Ziel löschen");
- setConfig("sprungassistent_zielwahl","");
- setConfig("sprungassistent_letzterSprung", "");
- }
- if ($("span:contains('Portal von')").length > 0) {
- melde("Subraumportalkontrolle");
- if (getConfig("sprungassistent_zielwahl")) {
- document.body.appendChild(getButton('Zielwahl abbrechen', 'go_subraum', function () { setConfig("sprungassistent_zielwahl",""); alert("Zielwahl abgebrochen"); }));
- $("#go_subraum").insertBefore($("h1")[0]);
- }
- var meldungdiv = document.createElement("div");
- document.body.appendChild(meldungdiv);
- var daten = {};
- //daten.portalname = $("span:contains('Subraum-Portal-Kontrolle')")[0].innerHTML.split("Subraum-Portal-Kontrolle ")[1];
- daten.portalname = $("span:contains('Portal von')")[0].innerHTML.split("Portal von ")[1];
- meldungdiv.innerHTML = "Ermittle NCC von " + daten.portalname;
- postIt("export/getPortalNCC", daten, function ( portal) {
- melde("Subraumportalkontrolle - Portalposition ermitteln");
- if (portal.status == 1) {
- if (portal.anz > 1 ) {
- meldungdiv.innerHTML = "Die Glaskugel weiss nicht, wo das Portal steht, da der Name nicht eindeutig ist!";
- } else {
- var page;
- if ($("select[name='targetitem']").length == 1) {
- page = "verbindungen";
- } else {
- if ($("span:contains('wird für den Sprung zum Portaleingang gerufen...')").length > 0) {
- page = "gesprungen";
- } else {
- page = "hauptseite";
- }
- }
- meldungdiv.innerHTML = "Das Portal " + portal.portaldaten.name + " steht bei (" + portal.portaldaten.x + "|" + portal.portaldaten.y + ") und hat die NCC " + portal.portaldaten.ncc;
- if (getConfig("sprungassistent_zielwahl")) {
- $("span.seperator_text")[0].innerHTML = $("span.seperator_text")[0].innerHTML + " - Gewähltes Ziel für Sprung: " + getConfig("sprungassistent_zielwahl") + " Zielwahl vor " + zielwahl_diff_zeit + " Sekunden";
- } else {
- $("span.seperator_text")[0].innerHTML = $("span.seperator_text")[0].innerHTML + " - Kein Ziel gewählt.";
- }
- if (page == "hauptseite") {
- melde("Subraumportalkontrolle - Hauptseite");
- // Hauptseite
- var divportal = document.createElement("div");
- divportal.innerHTML = portal.portalnetzdaten;
- meldungdiv.appendChild(divportal);
- var areas = document.getElementsByName("portalarea");
- var i;
- for (i = 0; i < areas.length; i++) {
- areas[i].addEventListener("click", function (e) {
- setConfig("sprungassistent_zielwahl", e.currentTarget.id);
- setConfig("sprungassistent_zielwahl_zeit", Math.round(jetzt.getTime() / 1000));
- if (location.href.length > 20) {
- melde("Portalreise starten");
- location.href = $("a:contains('Portalreise starten')").attr('href');
- }
- }, false);
- }
- if (getConfig("sprungassistent_zielwahl")) {
- $("area[id='" + getConfig("sprungassistent_zielwahl") + "']").click();
- $("span.seperator_text")[0].innerHTML = $("span.seperator_text")[0].innerHTML + " - Gewähltes Ziel für Sprung: " + getConfig("gotoPortal");
- }
- }
- if (page == "verbindungen") {
- melde("Subraumportalkontrolle - Verbindungen");
- //Verbindungen auslesen
- window.setTimeout(function () {
- daten = {};
- daten.ncc = portal.portaldaten.ncc;
- daten.portale = [];
- // Verbindungen auslesen
- var opts = $("select[name='targetitem']>option");
- i = 0;
- var e;
- for (i = 0; i < opts.length; i++) {
- e = /(.*)<script/.exec(opts[i].innerHTML)[1];
- e = /(.*) - \d*\|\d+ -/.exec(e)[1];
- daten.portale.push(e);
- }
- postIt("import/portalverbindungen", daten, function ( data) { melde(opts.length + " Portalverbindungen gespeichert");
- var infobox = document.createElement("div");
- infobox.innerHTML = '<br><br><br>' + data.status;
- document.body.appendChild(infobox);
- });
- }, 3000);
- //Wegberechnung, wenn ein Ziel gewählt wurde
- if (getConfig("sprungassistent_zielwahl")) { //Wenn noch ein Ziel aktiv ist
- meldungdiv.innerHTML = meldungdiv.innerHTML + "<br><span style='color:red;'>Dein gewaehltes Ziel: " + getConfig("sprungassistent_zielwahl") + "...<br>Starte Wegebrechnung...</span>";
- melde("Subraumportalkontrolle - Verbindungen - Ziel gewählt");
- var daten = {};
- daten.start = portal.portaldaten.ncc;
- daten.ziel = getConfig("sprungassistent_zielwahl");
- postIt("export/getPortalNCC", daten,
- function(data) {
- meldungdiv.innerHTML = meldungdiv.innerHTML + "<br>" + data.text;
- if ($("h1:contains('Ermitteltes Sprungziel')").length == 0) {
- //Auswahlseite
- //Wenn man nicht in einem Zug zum Zielportal kommt
- if (getConfig("sprungassistent_zielwahl") != data.nextPortal) {
- melde("Es wird danach ein weiterer Sprung zum Ziel benötigt.");
- } else {
- melde("Mit dem nächsten Sprung ist man am Ziel.");
- setConfig("sprungassistent_letzterSprung", "1");
- //setConfig("sprungassistent_zielwahl", "");
- }
- $("select[name='targetitem']>option:contains('- " + data.nextPortal + " - ')")[0].selected = true;
- //AUTOPILOT
- $("form[name='Prejump']").submit();
- } else {
- if (getConfig("SubraumportalAutoSprung")) {
- $("input[value='Portalreise starten']").click();
- }
- //Bestätiungsseite
- //if (resp[0] && s.snapshotLength == 1 && s.snapshotItem(0).innerHTML == resp[0]) {
- //if (getConfig("portal_autosprung")) {
- //var s = Suche("//table/tbody/tr[1]/td[3][starts-with(.,'Ziel-Portal')]/parent::*/parent::*/tr[10]/td[2]//a");
- //if (s.snapshotLength == 1) {
- //location.href = s.snapshotItem(0).href;
- //}
- //}
- //}
- }
- }
- );
- }
- }
- if (page == "gesprungen") {
- melde("Subraumportalkontrolle - Sprung ausgeführt");
- if ($("span:contains('erfolgreich ausgeführt')").length > 0 ) {
- //location.href = $("a:contains('Portal verlassen')").attr('href');
- //Portal verlassen
- }
- }
- }
- }
- });
- }
- // ####################
- // Schiff angewählt
- // ####################
- if ($("span.seperator_text:contains('NCC')").length > 0) {
- // Schiffseite
- if ($("span.seperator_text:contains('Scan von ')").length > 0) {
- // Oberflächenscan
- melde("Oberflächenscan");
- // Koordinaten aus URL extrahieren (URL wurde manipuliert)
- window.scrollTo(0, 140);
- var koords = document.URL.substr((document.URL.length-8)).split("#")[1].split("|");
- melde("Koordinaten : " + koords[0] + "|" + koords[1]);
- // Oberfläche auslesen
- var imgs = $("table#map").find("img");
- var str = "";
- var i;
- var data = {x:koords[0], y:koords[1], oberfl:[], waren:[]};
- for (i = 0; i < imgs.length; i++) {
- data.oberfl.push(imgs[i].src.replace(stne_url,""));
- }
- // Waren auslesen
- var bild = "";
- var trs = $("span.seperator_text:contains('Waren')").closest("h1").next().find("tr:gt(0)");
- var anz, waren;
- for (i = 0; i < trs.length; i++) {
- anz = parseInt(trs[i].getElementsByTagName("td")[1].textContent,10);
- if (anz < 2) {
- anz = 1;
- }
- try {
- bild = $(trs[i].getElementsByTagName("td")[2]).find("img:eq(0)")[0].src.replace(stne_url,"").replace("http://stne.net/","");
- }
- catch(err) {
- bild = '';
- }
- data.waren.push({name:trs[i].getElementsByTagName("td")[0].textContent, anz:anz, bild:bild});
- }
- // Oberfläche + Waren abspeichern
- postIt("import/oberflaeche", data, function ( data) { melde("Oberflächenfelder/Waren gespeichert: " + data.status); });
- } else {
- // Schiffseite
- melde("Schiffseite");
- console.log("Latinum-Kurs vorhanden? " + getConfig("latinumKursVorhanden"));
- if (getConfig("latinumKursVorhanden") == 0) {
- $("a:contains('Aktualisieren')").text($("a:contains('Aktualisieren')").text() + " ### Achtung: Latinum-Kurs wurde heute noch nicht eingelesen! ###")
- }
- var koords = $("img[src='i/b/position.gif']").closest("table").closest("td").closest("tr").siblings().find("td:nth-child( " + ($("img[src='i/b/position.gif']").closest("table").closest("td").index() + 1) + ")").find("a").text().split("|");
- if (koords[1].indexOf("#") > 0) {
- melde("Submap");
- } else {
- // try {
- // Koordinaten ermitteltn
- if (koords[0].indexOf("@") >= 0) {
- var isOrbit = 1;
- melde("Orbit!");
- } else {
- var isOrbit = 0;
- melde("Kein Orbit!");
- }
- koords[0] = parseInt(koords[0].replace("@",""),10);
- koords[1] = parseInt(koords[1],10);
- if (typeof koords[0] != "number" || typeof koords[1] != "number" || koords[0] < 1 || koords[1] < 1 || isNaN(koords[0]) || isNaN(koords[1])) {
- melde("Fehler bei Koordinaten");
- //throw "error";
- }
- koords = {x:koords[0], y:koords[1]};
- melde("Position: ("+koords.x+"|"+koords.y+")");
- var isColonized = 0;
- // Prüfen, ob man über einem Planeten steht
- if ($("img[src*='/p/']").length == 1) {
- // Planet
- melde("Planet erkannt");
- try {
- var planet = {};
- planet.x = koords.x;
- planet.y = koords.y;
- planet.typ = /(\d*)\.gif/.exec($("img[src*='/p/']").attr('src'))[1];
- melde("Typ: " + planet.typ);
- melde("Koordinaten: " + koords.x + "|" + koords.y);
- if ($("img[src*='/p/']").parent().parent().children().find("span.positiv:contains('Unbesiedelt')").length == 1) {
- planet.status = "Unbesiedelt";
- planet.data = {};
- // Unbesiedelt
- melde("Unbesiedelt");
- } else {
- // Besiedelt
- planet.status = "Besiedelt";
- planet.data = {};
- var t = $("img[src*='/p/']").closest("tr").find("span.darkgrey").parent();
- planet.data.name = t.contents()[0].textContent.slice(0,-4).replace('\'','');
- var uid = /\((.*?)\)/.exec($("img[src*='/p/']").closest("tr").find("span.darkgrey").parent().find("span.deact")[0].innerHTML)[1];
- if (uid == "NPC") {
- planet.data.userid = -1;
- } else {
- planet.data.userid = /\d+/.exec(t.children()[3].innerHTML)[0];
- }
- planet.data.nickname = t.children()[2].innerHTML.replace(/addToolTip\(\{[^\}]+\}\)\;/g, "").replace(/<img[^\>]+\>/g, "").replace(/<script>[^<]*<\/script>/g, "").replace(/<a[^>]+>/g, "").replace("</a>", "");
- melde("Name: " + planet.data.name);
- melde("Besitzer: " + planet.data.userid);
- melde("Name:" + planet.data.nickname);
- isColonized = 1;
- }
- planet.data.nickname = escape(planet.data.nickname);
- postIt("import/planeten", planet, function ( data) { melde("Koloniedaten gespeichert: " + data.status); });
- }
- catch(err) {
- melde("Der Planetenbesitzer konnte nicht ermittelt werden.");
- }
- } else {
- melde("Freier Weltraum!");
- }
- // Scan-Button präperieren und Koordinaten anfügen
- if ($("td.button:contains('Orbit verlassen')").length > 0) {
- if ($("td.button:contains('Orbit verlassen')").closest("table").parent().closest("table").find("img[src='i/b/scan.gif']").length > 0) {
- $("td.button:contains('Orbit verlassen')").closest("table").parent().closest("table").find("img[src='i/b/scan.gif']").parent()[0].href += "#"+koords.x+"|"+koords.y;
- console.log('Scan-URL' + $("td.button:contains('Orbit verlassen')").closest("table").parent().closest("table").find("img[src='i/b/scan.gif']").parent()[0].href);
- if ($("span:contains('Sonde-Klasse')").length > 0) {
- if (getConfig("userid") == 54994) {
- var ptop = 160;
- var pleft = 1120;
- } else {
- var ptop = $($("td.button:contains('Orbit verlassen')").closest("table").parent().closest("table").find("img[src='i/b/scan.gif']").parent()[0]).offset().top;
- var pleft = 600;
- }
- openScanFrame($("td.button:contains('Orbit verlassen')").closest("table").parent().closest("table").find("img[src='i/b/scan.gif']").parent()[0].href, ptop, pleft);
- }
- }
- }
- melde("Scan-Button präperiert");
- // LRS-Felder ermitteln
- felder = $("table#map td.cell,td.cell_nourl");
- var anzFelder = felder.length;
- var LRS_Groesse = ((Math.pow(anzFelder, 0.5)-1)/2);
- melde(anzFelder + " LRS-Felder gefunden. LRS-Größe: " + LRS_Groesse);
- // Felder vor Datenanbindung mit Contextmenü versehen
- //Sondenflug
- //NCC + Name
- //Gondeln
- try {
- var sa = {};
- sa.lrs = LRS_Groesse;
- sa.koords = koords;
- sa.typ = /(\d*).gif/.exec($("img[src='i/b/position.gif']").closest("table").closest("td").closest("tr").siblings().find("td.img:eq(0) img").attr('src'))[1];
- sa.name = $("span.seperator_text:eq(0)")[0].innerHTML.split(' NCC ')[0];
- sa.ncc = parseInt($("span.seperator_text:eq(0)")[0].innerHTML.split(' NCC ')[1],10);
- if (sa.typ == 61) {
- //Darys
- sa.gondeln = parseInt($("td:contains('Flugreichweite')").closest("table").find(">tbody>tr:eq(1)").find("td:eq(5)").find("span span")[0].innerHTML,10);
- } else {
- sa.gondeln = parseInt($("td:contains('Flugreichweite')").closest("table").find(">tbody>tr:eq(1)").find("td:eq(4)").find("span span")[0].innerHTML,10);
- }
- //SHP-Button
- function goSubraumportalZielVorwahl(e) {
- unsafeWindow.testvar = e.target;
- var sid = $(e.target).parentsUntil("td").parent().parentsUntil("td").parent("td").attr('id');
- var ziel = getConfig(sid);
- if (ziel) {
- setConfig("sprungassistent_zielwahl", getConfig(sid));
- setConfig("sprungassistent_zielwahl_zeit", Math.round(jetzt.getTime() / 1000));
- goSubraumportal();
- } else {
- alert("Kein Ziel angegeben für " + sid + ". Bitte gehe zu deinen Account-Einstellungen.");
- }
- }
- function goSubraumportal() {
- melde("Subraumportal betreten");
- if (getConfig("sprungassistent_letzterSprung") < 1) {
- location.href = $("td:contains('Kleines Subraum-Portal'),td:contains('Großes Subraumportal')").parent().find("td>a:contains('Betreten')").attr('href');
- } else {
- melde("Eigentlich sollte das Schiff am Ziel sein?");
- }
- }
- if ($("td:contains('Kleines Subraum-Portal'),td:contains('Großes Subraumportal')").parent().find("td>a:contains('Betreten')").length > 0) {
- // document.getElementById('td_ss').appendChild(getButton('Sektor scannen', 'gb1', scanSectorByClick));
- $("table#map").parent().closest("table").find(">tbody>tr>td:eq(1)").append("<br><table><tr><td colspan='3' id='subraumbutton'></td></tr><tr><td id='subraumportal_ziel1'></td><td id='subraumportal_ziel2'></td><td id='subraumportal_ziel3'></td></tr></table><br>");
- document.getElementById('subraumbutton').appendChild(getButton('Zum Subraumportal', 'go_subraum', goSubraumportal));
- document.getElementById('subraumportal_ziel1').appendChild(getButton(getConfig("subraumportal_ziel1_name"), 'go_subraum1', goSubraumportalZielVorwahl));
- document.getElementById('subraumportal_ziel2').appendChild(getButton(getConfig("subraumportal_ziel2_name"), 'go_subraum2', goSubraumportalZielVorwahl));
- document.getElementById('subraumportal_ziel3').appendChild(getButton(getConfig("subraumportal_ziel3_name"), 'go_subraum3', goSubraumportalZielVorwahl));
- var zielportal = getConfig("sprungassistent_zielwahl");
- melde("Prüfe, ob ein Sprungziel vorhanden ist");
- if (zielportal) {
- zielportal = zielportal.split("|");
- $("span.seperator_text")[0].innerHTML = $("span.seperator_text")[0].innerHTML + " - Gewähltes Ziel für Sprung: " + getConfig("gotoPortal");
- if (zielportal[0] != koords.x && zielportal[1] != koords.y) {
- melde("Sprungziel vorhanden, gehe zu Subraumportal");
- goSubraumportal();
- } else {
- melde("Sprungziel entspricht dem aktuellen Sektor - Reise beendet");
- setConfig("sprungassistent_zielwahl", "");
- }
- }
- }
- if (/\[VA\-\d+\]/.exec(sa.name)) {
- $("table#map").parent().closest("table").find(">tbody>tr>td:eq(1)").append("<div id='infosonde'></div>");
- $("#infosonde")[0].innerHTML = "<b>Sondenaufklärung:</b><br>Sonde hat noch " + sa.gondeln + " Gondeln.<br>Lade Ziel...";
- window.setTimeout(function () {
- if ($("td.nb:contains('Sondenaufklärung'):contains('Lade Ziel')").length == 1) {
- //Wenn das Ziel nach 5 Sekunden nicht geladen wurde, Neustart
- window.location.reload();
- }
- }, 10000);
- getIt("export/sondenaufklaerung?pos="+sa.koords.x+"|"+sa.koords.y+"&ncc="+sa.ncc+"&lrs="+sa.lrs+"&name="+sa.name, function (data) {
- $("#infosonde")[0].innerHTML = "<b>Sondenaufklärung:</b><br>Gondeln: "+sa.gondeln+"<br>Sektor: "+data.sektorPrint+"<br>Westen: "+data.anzWesten+" Osten: "+data.anzOsten+"<br> "+data.err+"<br>Ziel: "+data.ziel.x+"|"+data.ziel.y+" ("+data.dist+" Felder)<br>Flugbefehl: "+data.next.x+"|"+data.next.y+"<br>";
- for (i = 0; i < felder.length; i++) {
- //Unten
- if (felder[i].ky == data.sektor.e.y && felder[i].kx >= data.sektor.s.x && felder[i].kx <= data.sektor.e.x) {
- $(felder[i]).css('border-bottom', '1px solid magenta');
- }
- //Oben
- if (felder[i].ky == data.sektor.s.y && felder[i].kx >= data.sektor.s.x && felder[i].kx <= data.sektor.e.x) {
- $(felder[i]).css('border-top', '1px solid magenta');
- }
- //Rechts
- if (felder[i].kx == data.sektor.e.x && felder[i].ky >= data.sektor.s.y && felder[i].ky <= data.sektor.e.y) {
- $(felder[i]).css('border-right', '1px solid magenta');
- }
- //Links
- if (felder[i].kx == data.sektor.s.x && felder[i].ky >= data.sektor.s.y && felder[i].ky <= data.sektor.e.y) {
- $(felder[i]).css('border-left', '1px solid magenta');
- }
- }
- if (sa.gondeln - 3 > data.dist) {
- if (data.fliegen) {
- $("#infosonde")[0].innerHTML = $("#infosonde")[0].innerHTML + "<b style='color:red;'>Fliege!</b><br>";
- var dx = data.next.x - sa.koords.x + sa.lrs;
- var dy = data.next.y - sa.koords.y + sa.lrs;
- var pos = (dy * (2*sa.lrs+1)) + dx;
- $($("table#map td.cell,td.cell_nourl")[pos]).css('border', '3px dashed magenta');
- if (getConfig("sonden_autopilot") && felder.length == (2*sa.lrs+1)*(2*sa.lrs+1)) {
- function starteSonde() {
- pos = parseInt($("#nsf")[0].innerHTML,10);
- $($("table#map td.cell,td.cell_nourl")[pos]).find("a")[0].click();
- }
- if ($("td.button:contains('In Orbit einfliegen')").length == 0 || isColonized == 0) {
- $("#infosonde")[0].innerHTML = $("#infosonde")[0].innerHTML + "Autopilot aktiviert! Los gehts...<span id='nsf' style='display:none;'>"+pos+"</span>";
- window.setTimeout(starteSonde, 2500);
- } else {
- $("#infosonde")[0].innerHTML = $("#infosonde")[0].innerHTML + "Autopilot aktiviert! Eintritt in Orbit...";
- $("td.button:contains('In Orbit einfliegen')").find("a")[0].click();
- }
- } else {
- $("#infosonde")[0].innerHTML = $("#infosonde")[0].innerHTML + "Autopilot deaktiviert!";
- }
- } else {
- $("#infosonde")[0].innerHTML = $("#infosonde")[0].innerHTML + "<b style='color:red;'>Serverbefehl: Nicht fliegen</b>";
- }
- } else {
- $("#infosonde")[0].innerHTML = $("#infosonde")[0].innerHTML + "<b style='color:red;'>Zu wenig Gondeln</b>";
- }
- });
- }
- }
- catch (e) {
- melde("Kein Sondenflug möglich");
- }
- function berechneNavi(x='',y='') {
- melde("Berechne Navi");
- var ziel_x;
- var ziel_y;
- if (parseInt(x)>0) {
- ziel_x = x;
- } else {
- ziel_x = $("#s_x").val();
- }
- if (parseInt(y)>0) {
- ziel_y = y;
- } else {
- ziel_y = $("#s_y").val();
- }
- getIt("export/wegberechnung?ziel="+ziel_x+"|"+ziel_y+"&start="+koords.x + "|" + koords.y, function (data) {
- melde("Wegberechnungsdaten erhalten");
- melde("Zum Ziel sind es " + data.felder + " Felder!");
- $("#wegb_ziel").text(data.ziel.x + "|" + data.ziel.y);
- $("#wegb_distanz").text((Math.abs(koords.x - data.ziel.x) + Math.abs(koords.y - data.ziel.y)));
- setConfig("wegberechnung", JSON.stringify(data));
- var feld;
- for (i = 0; i < felder.length; i++) {
- feld = data.strecke[felder[i].kx.toString() + felder[i].ky.toString()];
- if (!(typeof feld === "undefined")) {
- //melde("Zeichne im Feld " + felder[i].kx + "|" + felder[i].ky + " die Daten ein.");
- if (feld.marker & 1) { $(felder[i]).find(".celldiv")[0].appendChild(getDivWegmarkierung("line_right0")); }
- if (feld.marker & 2) { $(felder[i]).find(".celldiv")[0].appendChild(getDivWegmarkierung("line_bottom0")); }
- if (feld.marker & 4) { $(felder[i]).find(".celldiv")[0].appendChild(getDivWegmarkierung("line_left0")); }
- if (feld.marker & 8) { $(felder[i]).find(".celldiv")[0].appendChild(getDivWegmarkierung("line_top0")); }
- }
- }
- });
- }
- function berechneNaviAufklaerung(ziel_x,ziel_y) {
- melde("Berechne Aufklärungspfad zu zu " + ziel_x + "|" + ziel_y);
- $("input[name='fp_fly']").val("" + ziel_x + "|" + ziel_y);
- getIt("export/wegberechnung?ziel="+ziel_x+"|"+ziel_y+"&start="+koords.x + "|" + koords.y, function (data) {
- melde("Wegberechnungsdaten erhalten");
- melde("Zum Ziel sind es " + data.felder + " Felder!");
- $("#wegb_ziel").text(data.ziel.x + "|" + data.ziel.y);
- $("#wegb_distanz").text((Math.abs(koords.x - data.ziel.x) + Math.abs(koords.y - data.ziel.y)));
- var feld;
- for (i = 0; i < felder.length; i++) {
- feld = data.strecke[felder[i].kx.toString() + felder[i].ky.toString()];
- if (!(typeof feld === "undefined")) {
- melde("Zeichne im Feld " + felder[i].kx + "|" + felder[i].ky + " die Daten ein.");
- if (feld.marker & 1) { $(felder[i]).find(".celldiv")[0].appendChild(getDivWegmarkierungAufklaerung("line_right0")); }
- if (feld.marker & 2) { $(felder[i]).find(".celldiv")[0].appendChild(getDivWegmarkierungAufklaerung("line_bottom0")); }
- if (feld.marker & 4) { $(felder[i]).find(".celldiv")[0].appendChild(getDivWegmarkierungAufklaerung("line_left0")); }
- if (feld.marker & 8) { $(felder[i]).find(".celldiv")[0].appendChild(getDivWegmarkierungAufklaerung("line_top0")); }
- }
- }
- });
- }
- //Wegberechnungs-Assistent
- $("table#map").parent().closest("table").find(">tbody>tr>td:eq(1)").append("<div id='stnenavi'><br><table><tr><td colspan='2'>Navi</td></tr><tr><td><input class='button' value='' id='s_x' size='2'>|<input value='' class='button' id='s_y' size='2'></td></tr><tr><td colspan='2'>Aktuelles Ziel: <span id='wegb_ziel'>N/A</span><br>Felder: <span id='wegb_distanz'>N/A</span></td><tr><td colspan='2' id='navi_ber'></td></tr></table></div>");
- $("#wegb_distanz").click(function () { berechneNavi($("#wegb_ziel").text().split("|")[0], $("#wegb_ziel").text().split("|")[1]); });
- document.getElementById('navi_ber').appendChild(getButton('Berechnen', 'navi_ber', berechneNavi));
- document.getElementById('navi_ber').appendChild(getButton('Reset', 'navi_ber', function () { setConfig("wegberechnung",""); alert("Die Route wird beim nächsten Laden nicht mehr angezeigt.");}));
- //ScriptButtons
- function showInfoAtMouse(text) {
- infoBoxMaus.content(unescapeHtml(text));
- }
- function executeCommand(cmd) {
- $("#gk_konsole_text").val("var myship as new cmyship (" + sa.ncc + ");\n" + cmd);
- executeConsole();
- }
- function loadSTNEPage(url, callbackFunc) {
- $.ajax({
- method: "GET",
- url: "game" + url,
- dataType: "html"
- }).done(function( ret ) {
- var data = {};
- data.html = ret;
- data.resp = $('<html />').html(ret);
- data.msg = /id\=\"applog\"\>(.*?)<\/div\>/.exec(ret);
- if (data.resp.find("#applog").length > 0) {
- data.msg = data.resp.find("#applog").html();
- } else {
- data.msg = "Keine Infoleiste";
- }
- callbackFunc(data);
- });
- }
- function executeConsoleReload() {
- $.ajax({
- method: "POST",
- url: "game" + getConfig("url_skriptkonsole"),
- data: "src=" + encodeURIComponent($("#gk_konsole_text").val()),
- dataType: "html"
- }).done(function( ret ) {
- location.href = "game" + $("a:contains('Aktualisieren')").attr('href');
- //ret = /Script gestartet.\<br\>(.*)\<br\>Script beendet/.exec($(ret).find("td.l.console")[0].innerHTML)[1];
- if ($(ret).find("td.l.console").length > 0) {
- var ret_meldung = /Script gestartet.<br\>(.*)<br\>Script beendet/.exec($(ret).find("td.l.console")[0].innerHTML)[1];
- }
- ret = $(ret).find("td.l.console")[0].innerHTML;
- showInfoAtMouse(ret);
- $("#cons_ret")[0].innerHTML = ret;
- });
- }
- function executeConsole() {
- $.ajax({
- method: "POST",
- url: "game" + getConfig("url_skriptkonsole"),
- data: "src=" + encodeURIComponent($("#gk_konsole_text").val()),
- dataType: "html"
- }).done(function( ret ) {
- //ret = /Script gestartet.\<br\>(.*)\<br\>Script beendet/.exec($(ret).find("td.l.console")[0].innerHTML)[1];
- if ($(ret).find("td.l.console").length > 0) {
- var ret_meldung = /Script gestartet.<br\>(.*)<br\>Script beendet/.exec($(ret).find("td.l.console")[0].innerHTML)[1];
- }
- ret = $(ret).find("td.l.console")[0].innerHTML;
- showInfoAtMouse(ret);
- $("#cons_ret")[0].innerHTML = ret;
- });
- }
- var isFlottenbefehl = 0;
- if ($("td.buttonbody:contains('Befehle an')").siblings("td:eq(0)").html() == "Schiff" || $("td.buttonbody:contains('Befehle an')").siblings("td:eq(0)").length == 0) {
- isFlottenbefehl = 0;
- } else {
- isFlottenbefehl = 1;
- FlottenBefehleAn = $("td.buttonbody:contains('Befehle an')").siblings("td:eq(0)").html();
- }
- function formatButtonBefehlsTyp(button) {
- if (isFlottenbefehl) {
- button.css('color', '#ff9922');
- } else {
- button.css('color', '#00aaff');
- }
- }
- //Skript-Konsole hinzufügen
- $("body").append("<div id='gk_konsole'><table style=' margin-top:40px; margin-left:20px;'><tr><td><b>Skript-Konsole:</b></td></tr><tr><td><textarea id='gk_konsole_text' class='console' style='width:500px; height:100px;'>var myShip as New CMyShip(" + sa.ncc + ");\n</textarea></td></tr><tr><td id='gk_konsole_td'></td></tr><tr><td id='cons_ret'></td></tr></table></div>");
- $("#gk_konsole_text").bind("click", function () { $(this).css('width','800px'); $(this).css('height','200px'); });
- document.getElementById('gk_konsole_td').appendChild(getButton('Execute', 'cons_go', executeConsole));
- $("table#map").parent().closest("table").find(">tbody>tr>td:eq(1)").append("<div id='console_buttons'></div>");
- //SHP bzw. Sigs umschalten
- if (sa.typ == 45 || sa.typ == 69) {
- document.getElementById('console_buttons').appendChild(getButton('SHP: Flugaktivität', 'cons_shp', function () {
- $("#gk_konsole_text").val(varThisShip + "myship.LRSNumericType = ELRSNumericType.Flugaktivitäten;\nWriteLine('Auf SHP-Spur geschalten');");
- executeConsole();
- }));
- document.getElementById('console_buttons').appendChild(getButton('SHP: Signaturen', 'cons_shp', function () {
- $("#gk_konsole_text").val(varThisShip + "myship.LRSNumericType = ELRSNumericType.Energiesignaturen;\nWriteLine('Auf Sigs geschalten');");
- executeConsole();
- }));
- }
- //Alles auf Planeten entleeren
- if (planet && planet.typ && isOrbit) {
- document.getElementById('console_buttons').appendChild(getButton('Schiff entleeren auf Planet', 'cons_beam', function doConsBeamAll() {
- $("#gk_konsole_text").val("Var s As New CMyShip(" + sa.ncc + ");\nVar goods As New CGoodsInfoEnumerator();\nVar sum As Integer = 0;\ngoods.Reset();\nWhile (goods.Next()) {\nIf (s.StockRoom.Amount(goods.CurrentWarenInfo.GoodsType) > 0) {\nsum = sum + s.StockRoom.Amount(goods.CurrentWarenInfo.GoodsType);\ns.Action.TransferToColony(s.Sector.SectorID, s.StockRoom.Amount(goods.CurrentWarenInfo.GoodsType), goods.CurrentWarenInfo.GoodsType);\n}\n}");
- executeConsole();
- }));
- $("#cons_beam").css('color', '#00aaff');
- }
- //Bussard-Kollektoren
- if ($("a.button:contains('BussardKollektoren')").length > 0) {
- $("a.button:contains('BussardKollektoren')").parent().parent().parent().parent().parent().parent().append("<table><tr><td id='gasdichte_1'></td><td id='gasdichte_2'></td></tr></table>");
- $("a.button:contains('BussardKollektoren')").parent().parent().parent().parent().parent().appendTo("#gasdichte_1");
- $("#gasdichte_2").append("<td class='nb' id='Bussard'></td>");
- document.getElementById('Bussard').appendChild(getButton('BussardKollektoren [Max]', 'cons_wk_wk', function () {
- executeCommand("if (myship.Definition.BussardCollectorCapacity - myship.BussardCollectorHeating > 0) {\n myship.Action.CollectDeuterium(myship.Definition.BussardCollectorCapacity - myship.BussardCollectorHeating);\n} else { \n WriteLine(\"Keine Kollektoren\");}\n");
- }));
- $("#cons_wk_wk").css('color', '#00aaff');
- }
- if ($("a.button:contains('Treibstoff')").length > 0) {
- if ($("td.buttonbody:contains('Frachtraum')").parent().siblings("").find(":contains('Keine Waren vorhanden')").length == 0) {
- var anz_deut = parseInt($("td.buttonbody:contains('Frachtraum')").parent().siblings("").find("table:eq(0)").find("tr:contains('Deuterium')").find("td:eq(1)>span").html(),10);
- var anz_dili = parseInt($("td.buttonbody:contains('Frachtraum')").parent().siblings("").find("table:eq(0)").find("tr:contains('Dilithium')").find("td:eq(1)>span").html(),10);
- var anz_am = parseInt($("td.buttonbody:contains('Frachtraum')").parent().siblings("").find("table:eq(0)").find("tr:contains('Antimaterie')").find("td:eq(1)>span").html(),10);
- var anz_plasma = parseInt($("td.buttonbody:contains('Frachtraum')").parent().siblings("").find("table:eq(0)").find("tr:contains('Plasma'):not(:contains('torp'))").find("td:eq(1)>span").html(),10);
- var anz_wk = Math.min(Math.min(Math.floor(anz_deut/2), Math.floor(anz_am/2)), anz_dili);
- if (anz_wk >= 1) {
- $("a.button:contains('Treibstoff')").parent().parent().parent().parent().parent().parent().parent().append("<td class='nb' id='WK_WK'></td>");
- document.getElementById('WK_WK').appendChild(getButton(anz_wk + ' WK-Füllungen', 'cons_wk_wk', function () {
- var anz_deut = parseInt($("td.buttonbody:contains('Frachtraum')").parent().siblings("").find("table:eq(0)").find("tr:contains('Deuterium')").find("td:eq(1)>span").html(),10);
- var anz_dili = parseInt($("td.buttonbody:contains('Frachtraum')").parent().siblings("").find("table:eq(0)").find("tr:contains('Dilithium')").find("td:eq(1)>span").html(),10);
- var anz_am = parseInt($("td.buttonbody:contains('Frachtraum')").parent().siblings("").find("table:eq(0)").find("tr:contains('Antimaterie')").find("td:eq(1)>span").html(),10);
- var anz_wk = Math.min(Math.min(Math.floor(anz_deut/2), Math.floor(anz_am/2)), anz_dili);
- executeCommand("myship.Action.RefillWarpCore("+(anz_wk*50)+",EWarpCoreFillType.dilliamdeut);");
- $("td.buttonbody:contains('Frachtraum')").parent().siblings("").find("table:eq(0)").find("tr:contains('Deuterium')").find("td:eq(1)>span").html(anz_deut - 2 * anz_wk);
- $("td.buttonbody:contains('Frachtraum')").parent().siblings("").find("table:eq(0)").find("tr:contains('Dilithium')").find("td:eq(1)>span").html(anz_dili - anz_wk);
- $("td.buttonbody:contains('Frachtraum')").parent().siblings("").find("table:eq(0)").find("tr:contains('Antimaterie')").find("td:eq(1)>span").html(anz_am - 2 * anz_wk);
- }));
- }
- if (anz_plasma >= 1) {
- $("a.button:contains('Treibstoff')").parent().parent().parent().parent().parent().parent().parent().append("<td class='nb' id='WK_Plasma'></td>");
- document.getElementById('WK_Plasma').appendChild(getButton(anz_plasma + ' Plasma', 'cons_wk_plasma', function () {
- var anz_plasma = parseInt($("td.buttonbody:contains('Frachtraum')").parent().siblings("").find("table:eq(0)").find("tr:contains('Plasma')").find("td:eq(1)>span").html(),10);
- executeCommand("myship.Action.RefillWarpCore("+(anz_plasma*6)+",EWarpCoreFillType.plasma);");
- $("td.buttonbody:contains('Frachtraum')").parent().siblings("").find("table:eq(0)").find("tr:contains('Plasma'):not(:contains('torp'))").find("td:eq(1)>span").html("0");
- }));
- }
- if (anz_deut >= 2) {
- $("a.button:contains('Treibstoff')").parent().parent().parent().parent().parent().parent().parent().append("<td class='nb' id='WK_Deut'></td>");
- document.getElementById('WK_Deut').appendChild(getButton(anz_deut + ' Deuterium', 'cons_wk_deut', function () {
- var anz_deut = parseInt($("td.buttonbody:contains('Frachtraum')").parent().siblings("").find("table:eq(0)").find("tr:contains('Deuterium')").find("td:eq(1)>span").html(),10);
- executeCommand("myship.Action.RefillWarpCore("+(anz_deut*0.5)+",EWarpCoreFillType.deuterium);");
- $("td.buttonbody:contains('Frachtraum')").parent().siblings("").find("table:eq(0)").find("tr:contains('Deuterium')").find("td:eq(1)>span").html("0");
- }));
- }
- }
- $("#cons_wk_wk").css('color', '#00aaff');
- $("#cons_wk_deut").css('color', '#00aaff');
- $("#cons_wk_plasma").css('color', '#00aaff');
- }
- //Traktorstrahl-Button
- if ($("a.button:contains('Abschalten')").length > 0) {
- $("a.button:contains('Abschalten')").css('color', '#00aaff');
- $("a.button:contains('Abschalten')").bind('click', function () {
- loadSTNEPage($("a.button:contains('Abschalten')").attr('href'), function (data) {
- showInfoAtMouse(data.msg);
- if (data.msg == "Traktorstrahl abgeschaltet") {
- $("a.button:contains('Abschalten')").html('---Abgeschaltet---');
- } else {
- $("a.button:contains('Abschalten')").html('---Abschalten fehlgeschlagen---');
- }
- });
- return false;
- });
- }
- //Overdrive-Button
- if ($("td.buttonbody:contains('Overdrive')").siblings().find("a.button").length > 0) {
- $("td.buttonbody:contains('Overdrive')").siblings().find("a.button").parent().parent().parent().parent().parent().parent().append("<table border=0><tr><td class='nb' id='overdrive_1'></td><td class='nb' id='overdrive_2'></td></tr></table>");
- $("td.buttonbody:contains('Overdrive')").siblings().find("a.button").parent().parent().parent().parent().parent().appendTo("#overdrive_1");
- document.getElementById('overdrive_2').appendChild(getButton($("td.buttonbody:contains('Overdrive')").siblings().find("a.button").html(), 'bt_overdrive', function () {}));
- $("#bt_overdrive").find("a").attr('href',$("#overdrive_1").find("a").attr('href'));
- formatButtonBefehlsTyp($("#bt_overdrive").find("a"));
- $("#bt_overdrive").bind('click', function () {
- loadSTNEPage($("#bt_overdrive").find("a").attr('href'), function (data) {
- showInfoAtMouse(data.msg);
- if (data.msg.indexOf("deaktiviert") > 0) {
- $("#bt_overdrive").find("a").html('Wurde deaktiviert - Klicken zum Aktivieren');
- $("#bt_overdrive").find("a").attr('href',$(data.html).find("td.buttonbody:contains('Overdrive')").siblings().find("a").attr('href'));
- } else if (data.msg.indexOf("aktiviert") > 0) {
- $("#bt_overdrive").find("a").html('Wurde aktiviert - Klicken zum Deaktivieren');
- $("#bt_overdrive").find("a").attr('href',$(data.html).find("td.buttonbody:contains('Overdrive')").siblings().find("a").attr('href'));
- } else {
- $("#bt_overdrive").find("a").html('---Fehler---');
- }
- });
- return false;
- });
- }
- //Buttons für Befehle senden an
- if ($("td.buttonbody:contains('Befehle senden an')").siblings().find("a.button").length > 0) {
- $("td.buttonbody:contains('Befehle senden an')").siblings().find("a.button").parent().parent().parent().parent().parent().parent().append("<table border=0><tr id='tr_befehle'><td class='nb' id='td_befehle'></td><td class='nb' id='befehle_0'></td></tr></table>");
- $("td.buttonbody:contains('Befehle senden an')").siblings().find("a.button").parent().parent().parent().parent().parent().appendTo("#td_befehle");
- document.getElementById('befehle_0').appendChild(getButton('Ändern', 'bt_befehleAn', function () {
- loadSTNEPage($("td.buttonbody:contains('Befehle senden an')").siblings().find("a.button").attr('href'), function (data) {
- var formAction = data.resp.find("form:contains('Befehle senden an')").attr('action');
- var formOpts = data.resp.find("select>option");
- //$("body").append("<form id='bfa' action='"+formAction+"' method='post'><input type='submit' id='flotten_id' name='v' value=''></form>")
- $("#bt_befehleAn").remove();
- var i;
- for (i=0;i<formOpts.length;i++) {
- if (i > 0) {
- $("#tr_befehle").append("<td class='nb' id='befehle_" + i + "'></td>");
- }
- document.getElementById('befehle_'+i).appendChild(getButton(formOpts[i].text, 'bt_befehle'+i, function () {
- $.ajax({
- method: "POST",
- url: "game" + formAction,
- dataType: "text",
- data: "v=" + $(this).attr('fid')
- }).done(function( ret ) {
- var response = $('<html />').html(ret);
- showInfoAtMouse(response.find("#applog").html() + " - Seite wird neu geladen");
- location.href = location.href;
- });
- // $("#flotten_id").attr('value', $(this).attr('fid'));
- // $("#bfa").submit();
- }));
- $("#bt_befehle"+i).find("a").attr('fid', formOpts[i].value);
- }
- });
- }));
- $("#bt_befehleAn").css('color', '#00aaff');
- }
- //Alarmstufe-Buttons
- if ($("td.buttonbody:contains('Alarmstufe')").siblings().find("a.button").length == 2) {
- var ab_gruen = $("td.buttonbody:contains('Alarmstufe')").siblings().find("a.button:contains('Grün')").length;
- var ab_gelb = $("td.buttonbody:contains('Alarmstufe')").siblings().find("a.button:contains('Gelb')").length;
- var ab_rot = $("td.buttonbody:contains('Alarmstufe')").siblings().find("a.button:contains('Rot')").length;
- $("td.buttonbody:contains('Alarmstufe')").siblings("td.np").find(">table>tbody>tr").append("<td class='nb' id='new_alertbutton'></td");
- if (ab_rot == 0) {
- document.getElementById('new_alertbutton').appendChild(getButton('Rot', 'ab_rot', function () {
- if (isFlottenbefehl) {
- executeCommand("Var fe As New CFleetEnumerator();\nVar fname As String = \"" + FlottenBefehleAn +"\";\nVar fid As Integer;\nVar f As CMyFleet;\nWhile(fe.Next()) {\nIf (fe.CurrentFleet.Name = fname) {\nIf (fid) {\nfid = - 1;\n } Else {\nfid = fe.CurrentFleet.FleetID;\n}\nWriteLine(fe.CurrentFleet.Name);\n}\n}\nf = new CMyFleet(fid); f.Action.SetAlertLevel(EAlertLevel.Red);");
- } else {
- executeCommand("myship.Action.SetAlertLevel(EAlertLevel.Red);");
- }
- }));
- } else if (ab_gelb == 0) {
- $("#new_alertbutton").insertBefore($("td.buttonbody:contains('Alarmstufe')").siblings().find("td:contains('Rot'):eq(0)"));
- document.getElementById('new_alertbutton').appendChild(getButton('Gelb', 'ab_gelb', function () {
- if (isFlottenbefehl) {
- executeCommand("Var fe As New CFleetEnumerator();\nVar fname As String = \"" + FlottenBefehleAn +"\";\nVar fid As Integer;\nVar f As CMyFleet;\nWhile(fe.Next()) {\nIf (fe.CurrentFleet.Name = fname) {\nIf (fid) {\nfid = - 1;\n } Else {\nfid = fe.CurrentFleet.FleetID;\n}\nWriteLine(fe.CurrentFleet.Name);\n}\n}\nf = new CMyFleet(fid); f.Action.SetAlertLevel(EAlertLevel.Yellow);");
- } else {
- executeCommand("myship.Action.SetAlertLevel(EAlertLevel.Yellow);");
- }
- }));
- } else if (ab_gruen == 0) {
- $("#new_alertbutton").insertBefore($("td.buttonbody:contains('Alarmstufe')").siblings().find("td:contains('Gelb'):eq(0)"));
- document.getElementById('new_alertbutton').appendChild(getButton('Grün', 'ab_gruen', function () {
- if (isFlottenbefehl) {
- executeCommand("Var fe As New CFleetEnumerator();\nVar fname As String = \"" + FlottenBefehleAn +"\";\nVar fid As Integer;\nVar f As CMyFleet;\nWhile(fe.Next()) {\nIf (fe.CurrentFleet.Name = fname) {\nIf (fid) {\nfid = - 1;\n } Else {\nfid = fe.CurrentFleet.FleetID;\n}\nWriteLine(fe.CurrentFleet.Name);\n}\n}\nf = new CMyFleet(fid); f.Action.SetAlertLevel(EAlertLevel.Green);");
- } else {
- executeCommand("myship.Action.SetAlertLevel(EAlertLevel.Green);");
- }
- }));
- }
- formatButtonBefehlsTyp($("#new_alertbutton").find("a"));
- }
- //Schildemitter-Buttons
- if ($("td.buttonbody:contains('Schildemitter')").siblings().find("a.button").length == 1) {
- $("td.buttonbody:contains('Schildemitter')").siblings().find("a.button").parent().parent().parent().parent().parent().parent().append("<table border=0><tr><td class='nb' id='schild_1'></td><td class='nb' id='schild_2'></td><td class='nb' id='schild_3'></td></tr></table>");
- $("td.buttonbody:contains('Schildemitter')").siblings().find("a.button").parent().parent().parent().parent().parent().appendTo("#schild_1");
- document.getElementById('schild_2').appendChild(getButton('Aktivieren', 'bt_schildeAn', function () {
- if (isFlottenbefehl) {
- executeCommand("Var fe As New CFleetEnumerator();\nVar fname As String = \"" + FlottenBefehleAn +"\";\nVar fid As Integer;\nVar f As CMyFleet;\nWhile(fe.Next()) {\nIf (fe.CurrentFleet.Name = fname) {\nIf (fid) {\nfid = - 1;\n } Else {\nfid = fe.CurrentFleet.FleetID;\n}\nWriteLine(fe.CurrentFleet.Name);\n}\n}\nf = new CMyFleet(fid); f.Action. ActivateShields(True);");
- } else {
- executeCommand("myship.Action.ActivateShields(True);");
- }
- }));
- document.getElementById('schild_3').appendChild(getButton('Deaktivieren', 'bt_schildeAus', function () {
- if (isFlottenbefehl) {
- executeCommand("Var fe As New CFleetEnumerator();\nVar fname As String = \"" + FlottenBefehleAn +"\";\nVar fid As Integer;\nVar f As CMyFleet;\nWhile(fe.Next()) {\nIf (fe.CurrentFleet.Name = fname) {\nIf (fid) {\nfid = - 1;\n } Else {\nfid = fe.CurrentFleet.FleetID;\n}\nWriteLine(fe.CurrentFleet.Name);\n}\n}\nf = new CMyFleet(fid); f.Action. ActivateShields(False);");
- } else {
- executeCommand("myship.Action.ActivateShields(False);");
- }
- }));
- formatButtonBefehlsTyp($("#schild_2").find("a"));
- formatButtonBefehlsTyp($("#schild_3").find("a"));
- }
- //Andocken
- if ($("a.button:contains('Andocken')").length == 1) {
- $("a.button:contains('Andocken')").parents("td.nb").append("<table border=0><tr><td class='nb' id='dock_1'></td><td class='nb' id='dock_2'></td></tr></table>");
- $("a.button:contains('Andocken')").parents("table:eq(0)").appendTo("#dock_1");
- document.getElementById('dock_2').appendChild(getButton('Andocken', 'bt_dock', function () {
- loadSTNEPage($("a.button:contains('Andocken')").attr('href'), function (data) {
- showInfoAtMouse(data.msg);
- if (data.msg.indexOf("dockt im Sektor") > 0) {
- $("#bt_dock").find("a").html('Schiff wurde angedockt - Wieder abdocken?');
- $("#bt_dock").find("a").attr('href',$(data.html).find("td.buttonbody").siblings().find("a:contains('Abdocken')").attr('href'));
- }
- });
- }));
- formatButtonBefehlsTyp($("#dock_2").find("a"));
- }
- melde("Wegberechnungsformular eingeblendet");
- var wegberechnungData = getConfig("wegberechnung");
- var showWeg = 0;
- if (wegberechnungData && wegberechnungData.length > 20) {
- wegberechnungData = JSON.parse(wegberechnungData);
- showWeg = 1;
- melde("Ziel im Cache: " + wegberechnungData.ziel.x + "|" + wegberechnungData.ziel.y);
- console.log(wegberechnungData);
- berechneNavi(wegberechnungData.ziel.x, wegberechnungData.ziel.y);
- }
- var p = 0;
- var d;
- melde("Planeten markieren");
- // Wird sofort ausgeführt bevor die Daten vom Server kommen
- for (i = 0; i < felder.length; i++) {
- $(felder[i]).bind('contextmenu', showContextMenu);
- // Herausfindne, ob das Feld ein Planet ist
- try {
- d = parseInt(/(\d*).gif/.exec($(felder[i]).find("img[src*='i/g']:not([src*='selected'])")[0].src)[1],10);
- if (d > 0 && d < 25) {
- p = 1;
- $(felder[i]).css('border','1px solid #555555');
- } else {
- p = 0;
- }
- } catch (err) {
- p = 0;
- }
- if (sa.sektor) {
- melde("Zeichne Aufklärungssektor ein");
- }
- console.log('xxxx');
- felder[i].kx = koords.x - LRS_Groesse + (i % ((2*LRS_Groesse)+1));
- felder[i].ky = koords.y - LRS_Groesse + Math.floor(i/((2*LRS_Groesse)+1));
- felder[i].p = p;
- if (showWeg == 1) {
- $("#wegb_ziel").text(wegberechnungData.ziel.x + "|" + wegberechnungData.ziel.y);
- $("#wegb_distanz").text((Math.abs(koords.x - wegberechnungData.ziel.x) + Math.abs(koords.y - wegberechnungData.ziel.y)) + " (Geschätzt)");
- var feld = wegberechnungData.strecke[felder[i].kx.toString() + felder[i].ky.toString()];
- if (!(typeof feld === "undefined")) {
- if (feld.marker & 1) { $(felder[i]).find(".celldiv")[0].appendChild(getDivWegmarkierung("line_right0")); }
- if (feld.marker & 2) { $(felder[i]).find(".celldiv")[0].appendChild(getDivWegmarkierung("line_bottom0")); }
- if (feld.marker & 4) { $(felder[i]).find(".celldiv")[0].appendChild(getDivWegmarkierung("line_left0")); }
- if (feld.marker & 8) { $(felder[i]).find(".celldiv")[0].appendChild(getDivWegmarkierung("line_top0")); }
- }
- } else {
- melde("Kein Weg fürs Navi");
- }
- //CLK - Unten
- if (felder[i].ky == 410 && felder[i].kx >= 218 && felder[i].kx <= 262) {
- $(felder[i]).css('border-bottom', '3px solid #C6FF00');
- }
- //CLK - Oben
- if (felder[i].ky == 350 && felder[i].kx >= 224 && felder[i].kx <= 292) {
- $(felder[i]).css('border-top', '3px solid #C6FF00');
- }
- //CLK - Rechts
- if (felder[i].kx == 292 && felder[i].kx >= 360 && felder[i].kx <= 412) {
- $(felder[i]).css('border-right', '3px solid #C6FF00');
- }
- //CLK - Links
- if ((felder[i].kx == 224 && felder[i].ky >= 350 && felder[i].ky <= 397) ||
- (felder[i].kx == 218 && felder[i].ky >= 397 && felder[i].ky <= 410) ||
- (felder[i].kx == 262 && felder[i].ky >= 410 && felder[i].ky <= 412)) {
- $(felder[i]).css('border-left', '3px solid #C6FF00');
- }
- //Kamelot - Oben
- if (felder[i].ky == 280 && felder[i].kx >= 230 && felder[i].kx <= 300) {
- $(felder[i]).css('border-top', '3px solid #DD0000');
- }
- //Kamelot - Unten
- if (felder[i].ky == 330 && felder[i].kx >= 230 && felder[i].kx <= 300) {
- $(felder[i]).css('border-bottom', '3px solid #DD0000');
- }
- //Kamelot - Links
- if (felder[i].kx == 230 && felder[i].ky >= 280 && felder[i].ky <= 330) {
- $(felder[i]).css('border-left', '3px solid #DD0000');
- }
- //Kamelot - Rechts
- if (felder[i].kx == 300 && felder[i].ky >= 280 && felder[i].ky <= 330) {
- $(felder[i]).css('border-right', '3px solid #DD0000');
- }
- }
- melde("LRS-Daten vom Server hohlen...");
- melde("Koordinaten: ("+koords.x+"|"+koords.y+") LRS: " + LRS_Groesse);
- // Auf Antwort vom Server warten
- getIt("export/lrsdaten?x="+(koords.x-LRS_Groesse)+"&y="+(koords.y-LRS_Groesse)+"&lrsx="+(2*LRS_Groesse+1)+"&lrsy="+(2*LRS_Groesse+1), function (data) {
- for (i = 0; i < data.length; i++) {
- $("table#map td.cell, td.cell_nourl")[data[i].pos].setAttribute('style', data[i].style);
- $("table#map td.cell, td.cell_nourl")[data[i].pos].printText = data[i].infolayer;
- $("table#map td.cell, td.cell_nourl")[data[i].pos].scan = data[i].scan;
- $("table#map td.cell, td.cell_nourl")[data[i].pos].setAttribute('planetAlt', data[i].alt);
- $("table#map td.cell, td.cell_nourl")[data[i].pos].setAttribute('dist', data[i].dist);
- $($("table#map td.cell, td.cell_nourl")[data[i].pos]).bind('mouseover', function (e) { infoBoxMaus.content(e.currentTarget.printText); infoBoxContext.hide(); });
- $($("table#map td.cell, td.cell_nourl")[data[i].pos]).bind('mouseout', function () { infoBoxMaus.hide(); });
- // TODO: Show Tooltip mit Benutzer etc.
- }
- getIt("export/lrsdaten?listShips=true&x="+(koords.x-LRS_Groesse)+"&y="+(koords.y-LRS_Groesse)+"&lrsx="+(2*LRS_Groesse+1)+"&lrsy="+(2*LRS_Groesse+1), function (data) {
- var i;
- for (i = 0; i < data.length; i++) {
- $("table#map td.cell, td.cell_nourl")[data[i].pos].setAttribute('style', data[i].style);
- // TODO: Show Tooltip mit Benutzer etc.
- }
- });
- });
- // SRS AUSLESEN
- var trs = $("span.seperator_text:contains('SRS-Report')").closest("h1").nextAll("table:contains('NCC'):contains('Zustand')").find("td:contains('Klasse')").closest("table").find(">tbody>tr:gt(0)");
- trs = $("td.bb:contains('NCC')").closest("table").find(">tbody>tr:gt(0)");
- var clearSector;
- if ($("span.seperator_text:contains('SRS-Report')").closest("h1").nextAll().find("td.button:contains('Anzeige verk')").length > 0) {
- // Vollständiges SRS
- clearSector = 1;
- } else {
- // Gekürztes SRS
- clearSector = 0;
- }
- if (trs.length > 0) {
- if (trs.length > 300) {
- melde('Es sind zu viele Schiffe im Sektor');
- } else {
- var i, schiff;
- var data = {schiffe:[],x:koords.x,y:koords.y,orbit:isOrbit, clearSector:clearSector, typ:'srs'};
- schiff = {};
- schiff.typ = /(\d*).gif/.exec($("img[src='i/b/position.gif']").closest("table").closest("td").closest("tr").siblings().find("td.img:eq(0) img").attr('src'))[1];
- schiff.name = escape($("span.seperator_text:eq(0)")[0].innerHTML.split(' NCC ')[0]);
- schiff.ncc = parseInt($("span.seperator_text:eq(0)")[0].innerHTML.split(' NCC ')[1],10);
- schiff.uid = -555;
- schiff.username = '';
- data.schiffe.push(schiff);
- for (i = 0; i < trs.length; i++) {
- //username
- //uid
- schiff = {};
- schiff.typ = /(\d*).gif/.exec($(trs[i]).find("td:eq(0)").find("img")[0].src);
- schiff.name = '-';
- if (!schiff.typ) {
- schiff.typ = 31;
- } else {
- schiff.typ = schiff.typ[1];
- }
- if ($(trs[i]).find("td:eq(1) a").length == 0) {
- //Fremdes Schiff
- schiff.name = escape($(trs[i]).find("td:eq(1)")[0].innerHTML);
- } else if ($(trs[i]).find("td:eq(1) a").length == 2) {
- //Fremdes Schiff - Betreten
- schiff.name = escape(stripHTML2($(trs[i]).find("td:eq(1)")[0].innerHTML));
- if (schiff.name.length < 3) {
- schiff.name = escape($(trs[i]).find("td:eq(1)")[0].childNodes[0].outerHTML);
- }
- } else if ($(trs[i]).find("td:eq(1) a").length == 3) {
- schiff.name = escape($(trs[i]).find("td:eq(1) a")[0].innerHTML);
- }
- schiff.ncc = parseInt($(trs[i]).find(">td:eq(2)")[0].innerHTML.replace('=','').replace('NX-','').replace('<','').replace('>','').replace('>','').replace('<','').trim(),10);
- schiff.username = escape($(trs[i]).find(">td:eq(5)").find("div")[0].innerHTML.replace(/addToolTip\(\{[^\}]+\}\)\;/g, "").replace(/<img[^\>]+\>/g, "").replace(/<script>[^<]*<\/script>/g, "").replace(/<a[^>]+>/g, "").replace("</a>", ""));
- schiff.uid = /\((.*?)\)/.exec($(trs[i]).find(">td:eq(5) span.deact")[0].innerHTML)[1];
- schiff.uid = schiff.uid.replace("SNPC-","");
- if (schiff.uid == "NPC" || schiff.uid == "SNPC") {
- schiff.uid = -1;
- }
- data.schiffe.push(schiff);
- }
- if ($("td.bb:contains('Helm Control')").length > 0) {
- postIt("import/schiffsdaten", data, function ( data) {
- melde("Schiffe aus SRS gespeichert : " + data.status);
- if (data.aufklaerungsZiel.x) {
- berechneNaviAufklaerung(data.aufklaerungsZiel.x, data.aufklaerungsZiel.y);
- }
- });
- } else {
- melde("Daten werden nicht eingetragen... Station? Hoher/Tiefer Orbit unbekannt?");
- }
- }
- } else {
- var i, schiff;
- var data = {schiffe:[],x:koords.x,y:koords.y,orbit:isOrbit, clearSector:1, typ:'srs'};
- schiff = {};
- schiff.typ = /(\d*).gif/.exec($("img[src='i/b/position.gif']").closest("table").closest("td").closest("tr").siblings().find("td.img:eq(0) img").attr('src'))[1];
- schiff.name = escape($("span.seperator_text:eq(0)")[0].innerHTML.split(' NCC ')[0]);
- schiff.ncc = parseInt($("span.seperator_text:eq(0)")[0].innerHTML.split(' NCC ')[1],10);
- schiff.uid = -555;
- schiff.username = '';
- data.schiffe.push(schiff);
- if ($("td.bb:contains('Helm Control')").length < 1) {
- //var data = {schiffe:[],x:koords.x,y:koords.y,orbit:isOrbit, clearSector:1, typ:'srs'};
- melde("Daten werden nicht eingetragen... Station? Hoher/Tiefer Orbit unbekannt?");
- }
- postIt("import/schiffsdaten", data, function ( data) {
- melde("Schiffe aus SRS gespeichert: " + data.status);
- console.log(data.aufklaerungsZiel);
- if (data.aufklaerungsZiel.x) {
- berechneNaviAufklaerung(data.aufklaerungsZiel.x, data.aufklaerungsZiel.y);
- }
- });
- }
- }
- // }
- // catch(err) {
- // melde("Koordinaten konnten nicht ermittelt werden.");
- // }
- }
- }
- // ####################
- // Aktuelle Userliste auslesen [STNE-Skript]
- // ####################
- if ($("table:contains('{-Userliste-}')").length > 0) {
- var zeilen = $("table:contains('{-Userliste-}') table tr");
- var i, data;
- var dataArr = [];
- var nickname;
- for (i = 0; i < zeilen.length; i++) {
- nickname = zeilen[i].children[2].children[0].getElementsByTagName("a")[0].innerHTML;
- nickname = escape(nickname);
- dataArr.push({id:zeilen[i].children[0].innerHTML, aid:zeilen[i].children[1].innerHTML, name:nickname});
- }
- postIt("import/userliste", dataArr, function ( data) { melde("Userdaten gespeichert: " + data.status); });
- }
- // ####################
- // Sternenkarte
- // ####################
- if ($("td.tab_selected:contains('Karte ansehen (Klassisch, mit Infos)')").length > 0) {
- melde("Sternenkarte");
- koords = {x:parseInt($("table[id='map'] tr:eq(0) td:eq(1)")[0].innerHTML,10),
- y:parseInt($("table[id='map'] tr:eq(1) td:eq(0)")[0].innerHTML,10),
- lrsy:($("table[id='map'] tr").length-2),
- lrsx:($("table[id='map'] tr:eq(0) td").length-2)};
- // LRS-Felder ermitteln
- felder = $("table#map td.cell");
- var anzFelder = felder.length;
- var LRS_Groesse = ((Math.pow(anzFelder, 0.5)-1)/2);
- melde(anzFelder + " Sternenkarten-Felder gefunen.");
- function getNextSHPCoords() {
- var shpkoords = getConfig("shpkoords");
- melde("Nächsten Koordianten. String: " + getConfig("shpkoords"));
- shpkoords = shpkoords.split(";");
- var next = shpkoords[0];
- melde("Entferne: " + shpkoords.shift());
- setConfig("shpkoords", shpkoords.join(";"));
- melde("String jetzt: " + getConfig("shpkoords"));
- melde("Gewähltes Element: " + next);
- $("#shpkoords")[0].innerHTML = getConfig("shpkoords");
- return next;
- }
- function openNextSHP() {
- $("#shpkoords")[0].innerHTML = getConfig("shpkoords");
- melde("Vorhanden: " + getConfig("shpkoords"));
- var next = getNextSHPCoords();
- melde("Öffne " + next);
- if (next) {
- openMap(next.split("-")[0].split("|")[0], next.split("-")[0].split("|")[1], next.split("-")[1].split("|")[0], next.split("-")[1].split("|")[1]);
- } else {
- setConfig("shp_aktiv", -1);
- melde("SHP-Scan beendet");
- var daten = JSON.parse(getConfig("shp_daten"));
- daten.scantyp = getConfig("shp_scantyp");
- postIt("import/shpdaten", daten, function ( data) {
- melde("SHP-Daten eingetragen: " + data.status);
- if (getConfig("shpscan_initBy_autostart") == 1) {
- setConfig("shp_auto_hc_on", 2);
- //window.open(getConfig("urlSHPControl"), "SHP");
- //window.close();
- window.open('http://www.entrox-company.de/Glaskugel/interface/shpsignaturen?typ=sig');
- }
- });
- }
- }
- function SHPStart() {
- melde("Start SHP-Scan");
- setConfig("shpkoords", "163|424-177|438;148|424-162|438;175|439-189|453;160|439-174|453;145|439-159|453;178|424-192|438;190|439-204|453;193|424-207|438;205|439-219|453;205|454-219|468;220|454-234|468;220|439-234|453;235|439-249|453;235|453-249|467;250|439-264|453;250|454-264|468;250|468-264|482;");
- setConfig("shpkoords", "130|424-177|453;131|454-177|480;131|454-177|480;178|424-207|468;208|439-249|468;250|439-263|480;");
- setConfig("shpkoords", "130|424-156|469;157|424-183|469;184|424-210|469;114|466-129|498;238|439-264|469;157|424-183|469;130|470-160|498;161|470-192|502;119|499-164|517;211|453-237|469;");
- setConfig("shp_aktiv", 1);
- var shp_daten = {data:[],status:[]};
- setConfig("shp_daten", JSON.stringify(shp_daten));
- openNextSHP();
- }
- if (getConfig("zeige_shpbutton") > 0) {
- var shpbutton = getButton('SHP-Scan starten', 'shpbutton', function (e) {
- setConfig("shpscan_initBy_autostart", 0);
- setConfig("shp_scantyp", 1);
- SHPStart();
- });
- var sigbutton = getButton('Sig-Scan starten', 'sigbutton', function (e) {
- setConfig("shpscan_initBy_autostart", 0);
- setConfig("shp_scantyp", 2);
- SHPStart();
- });
- var shpbutton_reset = getButton('SHP-Scan Reset', 'shpbutton_reset', function (e) {
- setConfig("shpkoords", "");
- setConfig("shp_aktiv", -1);
- var shp_daten = {data:[],status:[]};
- setConfig("shp_daten", JSON.stringify(shp_daten));
- $("#shpkoords")[0].innerHTML = getConfig("shpkoords");
- });
- $("body").append("<div id='shpkoords'></div>");
- $("body").append("<table id='tbl_buttons'><tr><td id='cell_shpbutton'></td><td id='cell_sigbutton'></td><td id='cell_resetbutton'></td></tr></table>");
- $("#cell_shpbutton").append(shpbutton);
- $("#cell_sigbutton").append(sigbutton);
- $("#cell_resetbutton").append(shpbutton_reset);
- $("#tbl_buttons").insertBefore($("table#map")[0]);
- $("#shpkoords").insertBefore($("table#map")[0]);
- if (getConfig("shpscan_autostart") == 1) {
- setConfig("shpscan_initBy_autostart", 1);
- setConfig("shpscan_autostart",0);
- melde("Auto-Start SHP");
- SHPStart();
- }
- if (getConfig("shp_aktiv") == 1) {
- melde("Lese Daten ein");
- $("#shpkoords")[0].innerHTML = getConfig("shpkoords");
- var daten = JSON.parse(getConfig("shp_daten"));
- //Daten auslesen
- var zahlen, tx, ty, nr;
- var count = 0;
- var sigs = "";
- melde("Felder: " + felder.length);
- for (i = 0; i < felder.length; i++) {
- zahlen = $(felder[i]).find("td.text_cell img");
- sigs = "";
- $(felder[i]).find("td.text_cell img").each( function (e) {
- nr = /num\/(.*)\.gif/.exec(this.src)[1];
- if (nr=="komma") {
- nr = ".";
- }
- sigs = sigs + nr;
- });
- sigs = parseFloat(sigs);
- if (sigs > 0) {
- tx = koords.x + (i % koords.lrsx);
- ty = koords.y + Math.floor(i/koords.lrsx);
- daten.data.push((tx+"|"+ty)+":"+sigs+" Felder: "+felder.length);
- count++;
- }
- }
- daten.status.push(koords.x + '|' + koords.y + ':' + count);
- setConfig("shp_daten", JSON.stringify(daten));
- openNextSHP();
- }
- }
- melde("(" + koords.x + "|" + koords.y + ") Breite: " + koords.lrsx + " Hoehe: " + koords.lrsy);
- melde("SHP Aktiv: " + getConfig("shp_aktiv"));
- melde("Test");
- var wegberechnungData = getConfig("wegberechnung");
- var showWeg = 0;
- if (wegberechnungData && wegberechnungData.length > 20) {
- wegberechnungData = JSON.parse(wegberechnungData);
- showWeg = 1;
- melde("Weg einzeichnen");
- } else {
- melde("Kein Weg gefunden");
- }
- var shp_aktiv = getConfig("shp_aktiv");
- if (typeof shp_aktiv == "undefined" || getConfig("shp_aktiv") < 1) {
- melde("Zeichne Daten");
- // Felder vor Datenanbindung mit Contextmenü versehen
- var d;
- // Wird sofort ausgeführt bevor die Daten vom Server kommen
- melde("Binde Kontextmenü auf " + felder.length + " Felder");
- for (i = 0; i < felder.length; i++) {
- $(felder[i]).bind('contextmenu', showContextMenu);
- // Herausfindne, ob das Feld ein Planet ist
- try {
- d = parseInt(/(\d*).gif/.exec($(felder[i]).find("img[src*='i/g']")[0].src)[1],10);
- if (d > 0 && d < 25) {
- p = 1;
- $(felder[i]).css('border','1px solid #555555');
- } else {
- p = 0;
- }
- } catch (err) {
- p = 0;
- }
- felder[i].kx = koords.x + (i % koords.lrsx);
- felder[i].ky = koords.y + Math.floor(i/koords.lrsx);
- felder[i].p = p;
- if (showWeg > 0) {
- melde("Gespeicherten Weg einzeichnen...");
- feld = wegberechnungData.strecke[felder[i].kx.toString() + felder[i].ky.toString()];
- if (!(typeof feld === "undefined")) {
- if (feld.marker & 1) { melde("r"); $(felder[i]).find(".celldiv")[0].appendChild(getDivWegmarkierung("line_right0")); }
- if (feld.marker & 2) { melde("b"); $(felder[i]).find(".celldiv")[0].appendChild(getDivWegmarkierung("line_bottom0")); }
- if (feld.marker & 4) { melde("l"); $(felder[i]).find(".celldiv")[0].appendChild(getDivWegmarkierung("line_left0")); }
- if (feld.marker & 8) { melde("t"); $(felder[i]).find(".celldiv")[0].appendChild(getDivWegmarkierung("line_top0")); }
- }
- }
- //CLK - Unten
- if (felder[i].ky == 410 && felder[i].kx >= 218 && felder[i].kx < 262) {
- $(felder[i]).css('border-bottom', '3px solid #C6FF00');
- }
- //CLK - Oben
- if ((felder[i].ky == 350 && felder[i].kx >= 224 && felder[i].kx <= 292) ||
- (felder[i].ky == 397 && felder[i].kx >= 218 && felder[i].kx <= 223) ) {
- $(felder[i]).css('border-top', '3px solid #C6FF00');
- }
- //CLK - Rechts
- if (felder[i].kx == 292 && felder[i].ky >= 350 && felder[i].ky <= 412) {
- $(felder[i]).css('border-right', '3px solid #C6FF00');
- }
- //CLK - Links
- if ((felder[i].kx == 224 && felder[i].ky >= 350 && felder[i].ky < 397) ||
- (felder[i].kx == 218 && felder[i].ky >= 397 && felder[i].ky <= 410) ||
- (felder[i].kx == 262 && felder[i].ky > 410 && felder[i].ky <= 412)) {
- $(felder[i]).css('border-left', '3px solid #C6FF00');
- }
- //Kamelot - Oben
- if (felder[i].ky == 280 && felder[i].kx >= 230 && felder[i].kx <= 300) {
- $(felder[i]).css('border-top', '3px solid #DD0000');
- }
- //Kamelot - Unten
- if (felder[i].ky == 330 && felder[i].kx >= 230 && felder[i].kx <= 300) {
- $(felder[i]).css('border-bottom', '3px solid #DD0000');
- }
- //Kamelot - Links
- if (felder[i].kx == 230 && felder[i].ky >= 280 && felder[i].ky <= 330) {
- $(felder[i]).css('border-left', '3px solid #DD0000');
- }
- //Kamelot - Rechts
- if (felder[i].kx == 300 && felder[i].ky >= 280 && felder[i].ky <= 330) {
- $(felder[i]).css('border-right', '3px solid #DD0000');
- }
- }
- melde("Box Val: " + $("[name='opt']").val());
- if ($("[name='opt']").val() != 3) {
- getIt("export/lrsdaten?x="+koords.x+"&y="+koords.y+"&lrsx="+koords.lrsx+"&lrsy="+koords.lrsy, function (data) {
- var i;
- for (i = 0; i < data.length; i++) {
- $("table#map td.cell:eq(" + data[i].pos + ")")[0].setAttribute('style', data[i].style);
- $("table#map td.cell:eq(" + data[i].pos + ")")[0].printText = data[i].infolayer;
- $("table#map td.cell:eq(" + data[i].pos + ")")[0].scan = data[i].scan;
- $("table#map td.cell:eq(" + data[i].pos + ")").bind('mouseover', function (e) { infoBoxMaus.content(e.currentTarget.printText); infoBoxContext.hide(); });
- $("table#map td.cell:eq(" + data[i].pos + ")").bind('mouseout', function () { infoBoxMaus.hide(); });
- // TODO: Show Tooltip mit Benutzer etc.
- }
- getIt("export/lrsdaten?listShips=true&x="+koords.x+"&y="+koords.y+"&lrsx="+koords.lrsx+"&lrsy="+koords.lrsy, function (data) {
- var i;
- for (i = 0; i < data.length; i++) {
- $("table#map td.cell, td.cell_nourl")[data[i].pos].setAttribute('style', data[i].style);
- // TODO: Show Tooltip mit Benutzer etc.
- }
- });
- });
- }
- } else {
- melde("Ausblenden");
- }
- melde("Ende Sternenkarte");
- }
- // ####################
- // Teleskopseite
- // ####################
- function ladeTeleskopReport() {
- $("#scanresult")[0].innerHTML = "Lade Zusammenfassung...";
- getIt("export/sektor?typ=teleskop&orbit=0&x="+$("#scanresult").attr('kx')+"&y="+$("#scanresult").attr('ky'), function (data) {
- $("#scanresult")[0].innerHTML = data.data;
- });
- }
- if ($("span.seperator_text:contains('Teleskop-Report von Sektor')").length > 0 && $("span.seperator_text:contains('Oberfläche')").length < 1) {
- var koords = /(\d*)\|(\d*)/.exec($("span.seperator_text:contains('Teleskop-Report von Sektor')")[0].innerHTML);
- var trs = $("table tr td:contains('Klasse')").closest("table").find(">tbody>tr:gt(0)");
- var i, schiff;
- var data = {schiffe:[],x:koords[1],y:koords[2],orbit:0, clearSector:1, typ:'teleskop'};
- for (i = 0; i < trs.length; i++) {
- schiff = {};
- schiff.typ = /(\d*).gif/.exec($(trs[i]).find("td:eq(0)").find("img")[0].src);
- if (!schiff.typ) {
- schiff.typ = 31;
- } else {
- schiff.typ = schiff.typ[1];
- }
- if ($(trs[i]).find("td:eq(1) a").length > 0) {
- schiff.name = escape($(trs[i]).find("td:eq(1) a")[0].innerHTML);
- } else {
- schiff.name = escape($(trs[i]).find("td:eq(1)")[0].innerHTML);
- }
- schiff.ncc = parseInt($(trs[i]).find(">td:eq(2)")[0].innerHTML.replace('=','').replace('NX-','').replace('>','').replace('<','').trim(),10);
- schiff.username = escape($(trs[i]).find(">td:eq(5)").find("div")[0].innerHTML.replace(/addToolTip\(\{[^\}]+\}\)\;/g, "").replace(/<img[^\>]+\>/g, "").replace(/<script>[^<]*<\/script>/g, "").replace(/<a[^>]+>/g, "").replace("</a>", ""));
- schiff.uid = /\((.*?)\)/.exec($(trs[i]).find(">td:eq(5) span.deact")[0].innerHTML)[1];
- schiff.uid = schiff.uid.replace("SNPC-","");
- if (schiff.uid == "NPC" || schiff.uid == "SNPC") {
- schiff.uid = -1;
- }
- data.schiffe.push(schiff);
- }
- $("body").prepend("<div id='scanresult' kx='"+koords[1]+"' ky='"+koords[2]+"'>Speicher Daten...</div>");
- postIt("import/schiffsdaten", data, function ( data) {
- melde("Schiffe aus Teleskopscan gespeichert: " + data.status);
- $("#scanresult")[0].innerHTML = "Speicher Teleskopdaten...";
- window.setTimeout(ladeTeleskopReport, 1);
- });
- }
- // ####################
- // Minimap
- // ####################
- if (getConfig("minimap_typ") != 0) {
- if ($("form[name='form_move']").closest("tr").length > 0) {
- var infoPolitischeKarte = "Du befindest dich im DQ";
- var infoPolitischeKarteItalic = "Keine Informationen vorhanden";
- if (koords.x < 330 && koords.y > 420) {
- infoPolitischeKarte = "Du befindest dich in der Vauthanai";
- infoPolitischeKarteItalic = "Good old home";
- }
- if (koords.x > 360 && koords.y > 270 && koords.y < 440) {
- infoPolitischeKarte = "Du befindest dich in der Fela-Nur";
- infoPolitischeKarteItalic = "Angriffe sind untersagt";
- }
- infoPolitischeKarte = infoPolitischeKarte + "<br><font style='font-style:italic; color:#ff0000;'>" + infoPolitischeKarteItalic + "</font>";
- $(".HelmControl").closest("tr").append("<td style='height:230px; width:230px; border:2px solid #16344E;'><img style='width:320px; height:320px;' id='minimap' minimaptyp='"+getConfig("minimap_typ")+"' src='"+baseurl+"karten/minimap.png?x="+koords.x+"&y="+koords.y+"' title='Gruen: WB, Orange: VP, Weiss: Talaxianer, Rosa Kreis: Portal'><br><a href='#' id='minimap_switch'>[Karte umschalten]</a> <a href='"+baseurl+"interface/account' target='_blank'>[Einstellungen]</a><br><br>" + infoPolitischeKarte + "</td>");
- $("#minimap_switch").bind("click", function () {
- if ($("#minimap")[0].getAttribute("minimaptyp") == "akt") {
- $("#minimap")[0].src = baseurl+"karten/minimap.png?show=karte&x="+koords.x+"&y="+koords.y;
- $("#minimap")[0].setAttribute("minimaptyp","karte");
- } else if ($("#minimap")[0].getAttribute("minimaptyp") == "karte") {
- $("#minimap")[0].src = baseurl+"karten/minimap.png?show=wrack&x="+koords.x+"&y="+koords.y;
- $("#minimap")[0].setAttribute("minimaptyp","wrack");
- } else if ($("#minimap")[0].getAttribute("minimaptyp") == "wrack") {
- $("#minimap")[0].src = baseurl+"karten/minimap.png?show=orbit&x="+koords.x+"&y="+koords.y;
- $("#minimap")[0].setAttribute("minimaptyp","orbit");
- } else if ($("#minimap")[0].getAttribute("minimaptyp") == "orbit") {
- $("#minimap")[0].src = baseurl+"karten/minimap.png?show=npc&x="+koords.x+"&y="+koords.y;
- $("#minimap")[0].setAttribute("minimaptyp","npc");
- } else {
- $("#minimap")[0].src = baseurl+"karten/minimap.png?show=akt&x="+koords.x+"&y="+koords.y;
- $("#minimap")[0].setAttribute("minimaptyp","akt");
- }
- });
- }
- }
- //####################
- // Ansehen auslesen
- //####################
- if ($("td.bb:contains('Aktuelles Level')").parent().next(2).find("td:eq(1)").length > 0) {
- var data = {ansehen:'', runde:''};
- data.ansehen = parseInt($("td.bb:contains('Aktuelles Level')").parent().next().next().find("td:eq(1)")[0].innerHTML,10);
- if ($("span.deact:contains('Aktuelle Runde')").length > 0) {
- data.runde = /(\d+)/.exec($("span.deact:contains('Aktuelle Runde')")[0].innerHTML)[0];
- postIt("import/ansehen", data, function ( data) { melde("Ansehen gespeichert: " + data.status); });
- }
- }
- //####################
- // Profilseite
- //####################
- if ($("span:contains('Datenbank')").length > 0 && $("span:contains('Kolonisteninformation')").length > 0) {
- if ($("table:contains('Ansehen extern')").find("td:contains('Ansehen extern')").siblings("td:eq(0)").length == 1) {
- melde("Ansehen gefunden");
- var ansehen = parseInt($("table:contains('Ansehen extern')").find("td:contains('Ansehen extern')").siblings("td:eq(0)").html(),10);
- var profiluserid = /\((.*)\)/.exec($("table:contains('Ansehen extern')").find("td:contains('Ansehen extern')").parentsUntil("table").find("td.buttonbody>span").html())[1];
- var data = {ansehen:'', runde:'',userid:''};
- data.ansehen = ansehen;
- data.userid = profiluserid;
- postIt("import/ansehen", data, function ( data) { melde("Ansehen gespeichert: " + data.status); });
- }
- }
- // ####################
- // Funktionen ohne Datenanbindung
- // ####################
- // ####################
- // Von-Bis-Auswahl
- // ####################
- // Allen Checkboxen eine weitere Checkbox für Auswahlbereich anhängen
- $(":input.box").parent().append("<span style='padding:2px; background-color:#003300;'><input type='checkbox' class='box_mark' style='padding:0px; margin:0px'></span>");
- // Funktion beim Klicken der Checkboxen
- $(":input.box_mark").click(function() {
- if ($(":input.box_mark:checked").length > 1) {
- // Wenn zwei Checkboxen markiert wurden1
- var start, stopp;
- start = $(":input.box_mark").index($(":input.box_mark:checked"));
- stopp = $(":input.box_mark").index($(":input.box_mark:gt("+start+"):checked"));
- // Start und Stopp herausfinden
- if (start > 0) {
- // Bei Start!= 0 von Start bis Ende markieren
- $(":input.box:gt("+(start-1)+"):lt("+(stopp-start+1)+")").prop('checked', true);
- } else {
- // Bei Start==0 bis zum Ende markieren
- $(":input.box:lt("+(stopp-start+1)+")").prop('checked', true);
- }
- $("input.box_mark").prop('checked', false);
- $(":input.box_mark").parent().css('background-color', '#003300');
- } else {
- // Wenn nur eine Checkbox markiert wurde rot einfärben.
- $(":input.box_mark").parent().css('background-color', '#660000');
- }
- });
- // ####################
- // Basiskuppel markieren
- // ####################
- $("img[src*='/20/']").css('border', '2px solid #FF0000');
- // ####################
- // Beamunterstützung
- // ####################
- melde("Start Beamunterstützung");
- if ($("span:contains('Transporterraum von')").length > 0) {
- melde("Implementiere Beamunterstützung");
- $("form:eq(0)").before($("a:contains('Zurück zur Brücke')").closest("table").clone());
- $("form:eq(0)").before("<br>");
- // Die Felder mit der Anzahl der Waren im Lagerraum heraussuchen
- var anzahlWaren = $("form>table>tbody>tr>td>input.textbox").parent().next();
- melde("Anzahl Waren: " + anzahlWaren.length);
- var inp_name;
- var anzDe;
- var anzAm;
- var anzDi;
- var anz;
- var n;
- for (i=0;i<anzahlWaren.length;i++) {
- // Name des jeweiligen Input-Feldes ermitteln
- inp_name = $("form>table>tbody>tr>td>input.textbox:eq("+i+")").attr('name');
- melde("Implementiere Beamunterstützung für " + inp_name);
- // Maximale Anzahl für den Transport ermitteln
- anz = stripHTML(anzahlWaren[i].innerHTML);
- // Button für "Maximum" hinzufügen
- $("form>table>tbody>tr>td>input.textbox:eq("+i+")").parent().append("<img id='bu_ta_all_"+i+"' onclick='document.getElementsByName(\""+inp_name+"\")[0].value = "+anz+";' style='padding-left:4px;' src='" + stne_url + "i/b/left.gif'>");
- // Buttons für +10/+100/+1000 hinzufügen
- n = 10; $("form>table>tbody>tr>td>input.textbox:eq("+i+")").parent().append("<img id='bu_ta_"+i+"' onclick='document.getElementsByName(\""+inp_name+"\")[0].value = (parseInt(document.getElementsByName(\""+inp_name+"\")[0].value,10) > 0 ? parseInt(document.getElementsByName(\""+inp_name+"\")[0].value,10) : 0) + ("+n+");;' style='padding-left:4px;' src='" + stne_url + "i/w/menge/"+n+".gif'>");
- n = 100; $("form>table>tbody>tr>td>input.textbox:eq("+i+")").parent().append("<img id='bu_ta_"+i+"' onclick='document.getElementsByName(\""+inp_name+"\")[0].value = (parseInt(document.getElementsByName(\""+inp_name+"\")[0].value,10) > 0 ? parseInt(document.getElementsByName(\""+inp_name+"\")[0].value,10) : 0) + ("+n+");;' style='padding-left:4px;' src='" + stne_url + "i/w/menge/"+n+".gif'>");
- n = 1000; $("form>table>tbody>tr>td>input.textbox:eq("+i+")").parent().append("<img id='bu_ta_"+i+"' onclick='document.getElementsByName(\""+inp_name+"\")[0].value = (parseInt(document.getElementsByName(\""+inp_name+"\")[0].value,10) > 0 ? parseInt(document.getElementsByName(\""+inp_name+"\")[0].value,10) : 0) + ("+n+");;' style='padding-left:4px;' src='" + stne_url + "i/w/menge/"+n+".gif'>");
- if (inp_name === "v_6") { anzDe = anz; }
- if (inp_name === "v_7") { anzAm = anz; }
- if (inp_name === "v_11") { anzDi = anz; }
- }
- // Anzahl der WK-Füllungen berechnen
- var anzWK = Math.min(Math.min(Math.floor(anzDe/2), Math.floor(anzAm/2)), anzDi);
- melde("Anzahl WK-Füllungen:" + anzWK);
- // Wenn komplette WK-Füllungen gebeamt werden können
- if (parseInt(anzWK,10) > 0) {
- // Weitere Zeile in der Beamtabelle erstellen
- var tr = document.createElement("tr");
- var td = document.createElement("td");
- td.className = 'bb';
- td.innerHTML = "WK-Füllungen";
- tr.appendChild(td);
- td = document.createElement("td");
- td.innerHTML = "<input style='margin-left:4px;' class='textbox' name='w_WK' onchange='document.getElementsByName(\"v_6\")[0].value = (document.getElementsByName(\"w_WK\")[0].value * 2); document.getElementsByName(\"v_7\")[0].value = (document.getElementsByName(\"w_WK\")[0].value * 2); document.getElementsByName(\"v_11\")[0].value = (document.getElementsByName(\"w_WK\")[0].value);' size='3'></input>";
- td.innerHTML += "<img style='padding-left:4px;' onclick='document.getElementsByName(\"w_WK\")[0].value = "+anzWK+";document.getElementsByName(\"v_6\")[0].value = (document.getElementsByName(\"w_WK\")[0].value * 2); document.getElementsByName(\"v_7\")[0].value = (document.getElementsByName(\"w_WK\")[0].value * 2); document.getElementsByName(\"v_11\")[0].value = (document.getElementsByName(\"w_WK\")[0].value);' src='" + stne_url + "i/b/left.gif'>";
- n = 10; td.innerHTML += "<img style='padding-left:4px;' onclick='document.getElementsByName(\"w_WK\")[0].value = (parseInt(document.getElementsByName(\"w_WK\")[0].value) > 0 ? parseInt(document.getElementsByName(\"w_WK\")[0].value) : 0) + ("+n+");document.getElementsByName(\"v_6\")[0].value = (document.getElementsByName(\"w_WK\")[0].value * 2); document.getElementsByName(\"v_7\")[0].value = (document.getElementsByName(\"w_WK\")[0].value * 2); document.getElementsByName(\"v_11\")[0].value = (document.getElementsByName(\"w_WK\")[0].value);' src='" + stne_url + "i/w/menge/"+n+".gif'>";
- n = 100; td.innerHTML += "<img style='padding-left:4px;' onclick='document.getElementsByName(\"w_WK\")[0].value = (parseInt(document.getElementsByName(\"w_WK\")[0].value) > 0 ? parseInt(document.getElementsByName(\"w_WK\")[0].value) : 0) + ("+n+");document.getElementsByName(\"v_6\")[0].value = (document.getElementsByName(\"w_WK\")[0].value * 2); document.getElementsByName(\"v_7\")[0].value = (document.getElementsByName(\"w_WK\")[0].value * 2); document.getElementsByName(\"v_11\")[0].value = (document.getElementsByName(\"w_WK\")[0].value);' src='" + stne_url + "i/w/menge/"+n+".gif'>";
- n = 1000; td.innerHTML += "<img style='padding-left:4px;' onclick='document.getElementsByName(\"w_WK\")[0].value = (parseInt(document.getElementsByName(\"w_WK\")[0].value) > 0 ? parseInt(document.getElementsByName(\"w_WK\")[0].value) : 0) + ("+n+");document.getElementsByName(\"v_6\")[0].value = (document.getElementsByName(\"w_WK\")[0].value * 2); document.getElementsByName(\"v_7\")[0].value = (document.getElementsByName(\"w_WK\")[0].value * 2); document.getElementsByName(\"v_11\")[0].value = (document.getElementsByName(\"w_WK\")[0].value);' src='" + stne_url + "i/w/menge/"+n+".gif'>";
- tr.appendChild(td);
- td = document.createElement("td");
- td.innerHTML = anzWK;
- tr.appendChild(td);
- td = document.createElement("td");
- tr.appendChild(td);
- $("form>table>tbody>tr>td>input.textbox").parent().parent().parent();
- var tb = $("form>table>tbody>tr>td>input.textbox").parent().parent().parent();
- tb.prepend(tr);
- }
- var beameAll = getButton('Alle Waren markieren', 'bt_beamall', function ( data ) {
- var imgs = $("[id*='bu_ta_all']:not([onclick*='v_crew']):not([onclick*='v_energy']):not([onclick*='v_warpkern'])");
- for (n=0;n<imgs.length;n++) {
- imgs[n].click();
- }
- });
- var bt_beamCrew = getButton("Crew", "bt_beamCrew", function () {
- $("table.ui-selectable:eq(0)").find("tr").find("td:eq(0):contains('Crew')").each(function () {
- var anzCrew = $("table.ui-selectable:eq(0)").find("tr").find("td:eq(0):contains('Crew')").next().next().text();
- $(this).next().find("input").val(anzCrew);
- });
- });
- var bt_beamWaren = getButton("Waren", "bt_beamWaren", function () {
- $("table.ui-selectable:eq(0)").find("tr").find("td:eq(0)").each(function () {
- var anz = $(this).parent().find("a.beamlink").text();
- if ($(this).text() == "Energie") { return; }
- if ($(this).text() == "Warpkern") { return; }
- $(this).parent().find("input").val(anz);
- });
- });
- var bt_beamItems = getButton("Items", "bt_beamItems", function () {
- $("table.ui-selectable:eq(0)").find("tr").find("td:eq(1)").each(function () {
- var anzPicAvatar = $(this).find("input.box").parent().next().next().find(">img").filter(function () { return ($(this).attr('src').indexOf('avatar') != -1); }).length;
- if (!anzPicAvatar) {
- $(this).find("input.box").prop('checked', true);
- }
- });
- });
- var bt_beamAvatare = getButton("Avatare", "bt_beamAvatare", function () {
- $("table.ui-selectable:eq(0)").find("tr").find("td:eq(1)").each(function () {
- var anzPicAvatar = $(this).find("input.box").parent().next().next().find(">img").filter(function () { return ($(this).attr('src').indexOf('avatar') != -1); }).length;
- if (anzPicAvatar) {
- $(this).find("input.box").prop('checked', true);
- }
- });
- });
- $("body").append("<table id='beambox'><tr><td id='td_beamCrew'></td><td id='td_beamWaren'></td><td id='td_beamItems'></td><td id='td_beamAvatare'></td></tr></table>");
- $("#td_beamCrew").append(bt_beamCrew);
- $("#td_beamWaren").append(bt_beamWaren);
- $("#td_beamItems").append(bt_beamItems);
- $("#td_beamAvatare").append(bt_beamAvatare);
- $("#beambox").insertBefore("form:lt(2)")
- //$("body").append(beameAll);
- //$("#bt_beamall").insertBefore("form");
- //$("form:eq(0)").before(beameAll);
- var beameAll = getButton($("form input.button")[0].value, 'bt_transportgo', function ( data ) {
- $("form")[0].submit();
- });
- $("form:eq(0)").before(beameAll);
- }
- // ####################
- // Schiffseite
- // ####################
- if ($("span.seperator_text").filter( function () { return $(this).text().indexOf('Meine Schiffe') == 0; }).length > 0) {
- //$("img").filter(function () { return (0==$(this).attr('src').indexOf('i/s/')); }).closest("tr");
- var pos_klasse = $("tr[head='COLUMN']").find("td:contains('Klasse')").index();
- var pos_ncc = $("tr[head='COLUMN']").find("td:contains('NCC')").index();
- var pos_name = $("tr[head='COLUMN']").find("td:contains('Name')").index();
- var pos_koord = $("tr[head='COLUMN']").find("td:contains('Sek')").index();
- var data = {schiffe:[]};
- $("tr[id^='ncc']").each(function () {
- var schiff = {};
- //pos_klasse
- schiff.typ = /(\d*).gif/.exec($(this).find(">td:eq(" + pos_klasse + ")").find("img").attr('src'));
- schiff.ncc = parseInt($(this).find(">td:eq(" + pos_ncc + ")").text().replace('=','').replace('NX-','').replace('<','').replace('>','').replace('>','').replace('<','').trim(),10);
- schiff.name = $(this).find(">td:eq(" + pos_name + ")").find("a").text();
- schiff.koord = $(this).find(">td:eq(" + pos_koord + ")").find("a").text();
- schiff.uid = -555;
- schiff.x = 1;
- schiff.y = 2;
- if (!schiff.typ) {
- schiff.typ = 31;
- } else {
- schiff.typ = schiff.typ[1];
- }
- data.schiffe.push(schiff);
- });
- console.log(data);
- postIt("import/schiffsdaten_schiffsliste", data, function ( data) { melde("Schiffe aus Liste gespeichert: " + data.status); });
- }
- // ####################
- // Angriff planen
- // ####################
- if (getConfig("level") >= 4 && $("span.seperator_text").filter( function () { return $(this).text().indexOf('Angriff planen') == 0; }).length > 0) {
- //var typids = []; var anztyp = []; var schiffe = $("input.box").parent().next().find("img"); var i, styp;
- var schiffe = $("input.box").parent().next().find("img");
- var i,styp;
- var typids = [];
- var anztyp = {};
- for (i = 0; i < schiffe.length; i++) {
- styp = /(\d*)\.gif/.exec(schiffe[i].src)[1];
- if (!inArray(styp, typids)) {
- typids.push(styp);
- anztyp[styp] = 1;
- } else {
- anztyp[styp] = anztyp[styp] + 1;
- }
- $("input.box:eq("+i+")").attr('typid', styp);
- }
- var table = document.createElement("table");
- var tr = document.createElement("tr");
- var td = document.createElement("td");
- var img,span;
- td.innerHTML = "Markieren nach Typ:<br><input type='checkbox' id='att' checked>Sofort zielen<br>Max.: <input id='maxnr' size='1' value='30'> Schiffe";
- tr.appendChild(td);
- for (i = 0; i < typids.length; i++) {
- td = document.createElement("td");
- img = document.createElement("img");
- img.src = "/i/s/"+typids[i]+".gif";
- img.typid = typids[i];
- img.addEventListener("click", MarkierenNachTyp, true);
- td.appendChild(img);
- span = document.createElement("span");
- span.innerHTML = "<br> " + anztyp[typids[0]];
- td.appendChild(span);
- tr.appendChild(td);
- }
- table.appendChild(tr);
- $("body").append(table);
- $(table).insertAfter($("h1:eq(2)"));
- }
- // ####################
- // Beamunterstützung
- // ####################
- function getEntros(typ, anzahl) {
- var entros;
- switch (typ) {
- case "Nahrung": entros = anzahl * 3; break;
- case "Baumaterial": entros = anzahl * 4; break;
- case "Iridium-Erz": entros = anzahl; break;
- case "Duranium": entros = anzahl * 8; break;
- case "Deuterium": entros = anzahl; break;
- case "Antimaterie": entros = anzahl * 10; break;
- case "Iso-Chips": entros = anzahl * 29; break;
- case "Dilithium": entros = anzahl * 14; break;
- case "Tritanium": entros = anzahl * 29; break;
- case "Nitrium": entros = anzahl * 4; break;
- case "Sorium": entros = anzahl * 40; break;
- case "Plasma": entros = anzahl * 7; break;
- case "Credits": entros = anzahl * 200; break;
- }
- return parseInt(entros,10);
- }
- function formatEntros(entros) {
- if (entros >= 10000) {
- entros = entros/1000;
- entros = entros + "k";
- }
- return entros;
- }
- melde("Start Beamunterstützung");
- if ($("span:contains('Handel')").length > 0 && $("span:contains('Angebote')").length > 0) {
- if(getConfig("entros_anzeigen") || true) {
- $("table:contains('Kolonist')").find('tr:eq(0)').each(function(){ $(this).find('>td').eq(4).after('<td class=\'buttonbody\'>Gewinn</td>'); });
- $("table:contains('Kolonist')").find('tr:eq(0)').each(function(){ $(this).find('>td').eq(4).after('<td class=\'buttonbody\'>Verhältnis</td>'); });
- $("table:contains('Kolonist')").find('tr:eq(0)').each(function(){ $(this).find('>td').eq(3).after('<td class=\'buttonbody\'>will (Entros)</td>'); });
- $("table:contains('Kolonist')").find('tr:eq(0)').each(function(){ $(this).find('>td').eq(2).after('<td class=\'buttonbody\'>bietet (Entros)</td>'); });
- $("table:contains('Kolonist')").find('tr:gt(0)').each(function(){ $(this).find('>td').eq(5).after('<td> </td>'); });
- $("table:contains('Kolonist')").find('tr:gt(0)').each(function(){ $(this).find('>td').eq(5).after('<td> </td>'); });
- $("table:contains('Kolonist')").find('tr:gt(0)').each(function(){ $(this).find('>td').eq(4).after('<td> </td>'); });
- $("table:contains('Kolonist')").find('tr:gt(0)').each(function(){ $(this).find('>td').eq(3).after('<td> </td>'); });
- var angebote = $("table:contains('Kolonist')>tbody>tr:gt(0)");
- var tr_gebot, tr_kosten;
- var i,n,ware_angebot,ware_kosten,entros_angebot, entros_kosten;
- var angebot_isCreds, kosten_isCreds, v1, v2, vw1,vw2;
- for (i = 0; i < angebote.length; i++) {
- melde("Angebot:");
- tr_gebot = $(angebote[i]).find(">td:eq(3)").find("table>tbody>tr");
- tr_kosten = $(angebote[i]).find(">td:eq(5)").find("table>tbody>tr");
- entros_angebot = 0;
- entros_kosten = 0;
- angebot_isCreds = 0;
- kosten_isCreds = 0;
- for (n= 0; n < tr_gebot.length; n++) {
- ware_angebot = $(tr_gebot[n]).find("td:eq(1)")[0].innerHTML.split(" ");
- entros_angebot = entros_angebot + getEntros(ware_angebot[2], ware_angebot[1]);
- if (ware_angebot[2] == "Credits") {
- angebot_isCreds = 1;
- }
- }
- for (n= 0; n < tr_kosten.length; n++) {
- ware_kosten = $(tr_kosten[n]).find("td:eq(1)")[0].innerHTML.split(" ");
- entros_kosten = entros_kosten + getEntros(ware_kosten[2], ware_kosten[1]);
- if (ware_kosten[2] == "Credits") {
- kosten_isCreds = 1;
- }
- }
- $(angebote[i]).find(">td:eq(4)").html(entros_angebot + ' Entros');
- $(angebote[i]).find(">td:eq(6)").html(entros_kosten + ' Entros');
- if (tr_gebot.length == 1 && tr_kosten.length == 1) {
- v1 = Math.round((entros_angebot/entros_kosten)*10)/10;
- v2 = Math.round((entros_kosten/entros_angebot)*10)/10;
- vw1 = Math.round((ware_angebot[1]/ware_kosten[1])*10)/10;
- vw2 = Math.round((ware_kosten[1]/ware_angebot[1])*10)/10;
- if (kosten_isCreds) {
- $(angebote[i]).find(">td:eq(8)").html("1 : "+ Math.round(vw1) + " (Waren)<br>1 : "+ v1 + " (Entros)");
- } else if (angebot_isCreds) {
- $(angebote[i]).find(">td:eq(8)").html("1 : "+ Math.round(vw1) + " (Waren)<br>1 : "+ v2 + " (Entros)");
- } else {
- $(angebote[i]).find(">td:eq(8)").html(v1 + ":1 bzw. 1:" + v2);
- }
- } else {
- $(angebote[i]).find(">td:eq(8)").html('-');
- }
- $(angebote[i]).find(">td:eq(9)").html('--');
- $(angebote[i]).find(">td:eq(9)").html((entros_angebot - entros_kosten));
- if (entros_angebot > entros_kosten * 1.2) {
- $(angebote[i]).find(">td:eq(3),>td:eq(5)").css('border', '1px solid #00ff00');
- } else if (entros_angebot > entros_kosten) {
- $(angebote[i]).find(">td:eq(3),>td:eq(5)").css('border', '1px solid #006600');
- } else if (entros_angebot * 1.2 < entros_kosten) {
- $(angebote[i]).find(">td:eq(3),>td:eq(5)").css('border', '1px solid #ff0000');
- } else if (entros_angebot < entros_kosten) {
- $(angebote[i]).find(">td:eq(3),>td:eq(5)").css('border', '1px solid #006600');
- } else {
- $(angebote[i]).find(">td:eq(3),>td:eq(5)").css('border', '1px solid #0000ff');
- }
- }
- var entrodiv = document.createElement("div");
- entrodiv.innerHTML = "<table><tbody><tr><td rowspan='3'>Ware</td><td colspan='5'>Preis für</td></tr><tr><td colspan='2'><b>1 Ware</b></td><td style='width:20px;' rowspan='21'> </td><td colspan='2'><b>1000 Waren</b></td></tr><tr><td>Entros</td><td>Credits</td><td>Entros</td><td>Credits</td></tr><tr><td><img src='" + stne_url + "i/w/11.gif'><img src='" + stne_url + "i/w/6.gif'><img src='" + stne_url + "i/w/6.gif'><img src='" + stne_url + "i/w/7.gif'><img src='" + stne_url + "i/w/7.gif'></td><td>35</td><td>0.175</td><td>35000</td><td>175</td></tr><tr><td><img src='" + stne_url + "i/w/2.gif'></td><td>3</td><td>0.015</td><td>3000</td><td>15</td></tr><tr><td><img src='" + stne_url + "i/w/3.gif'></td><td>4</td><td>0.02</td><td>4000</td><td>20</td></tr><tr><td><img src='" + stne_url + "i/w/4.gif'></td><td>1</td><td>0.005</td><td>1000</td><td>5</td></tr><tr><td><img src='" + stne_url + "i/w/5.gif'></td><td>8</td><td>0.04</td><td>8000</td><td>40</td></tr><tr><td><img src='" + stne_url + "i/w/6.gif'></td><td>1</td><td>0.005</td><td>1000</td><td>5</td></tr><tr><td><img src='" + stne_url + "i/w/7.gif'></td><td>10</td><td>0.05</td><td>10000</td><td>50</td></tr><tr><td><img src='" + stne_url + "i/w/8.gif'></td><td>70</td><td>0.35</td><td>70000</td><td>350</td></tr><tr><td><img src='" + stne_url + "i/w/9.gif'></td><td>29</td><td>0.145</td><td>29000</td><td>145</td></tr><tr><td><img src='" + stne_url + "i/w/11.gif'></td><td>13</td><td>0.065</td><td>13000</td><td>65</td></tr><tr><td><img src='" + stne_url + "i/w/13.gif'></td><td>29</td><td>0.145</td><td>29000</td><td>145</td></tr><tr><td><img src='" + stne_url + "i/w/14.gif'></td><td>40</td><td>0.2</td><td>40000</td><td>200</td></tr><tr><td><img src='" + stne_url + "i/w/15.gif'></td><td>4</td><td>0.02</td><td>4000</td><td>20</td></tr><tr><td><img src='" + stne_url + "i/w/18.gif'></td><td>7</td><td>0.035</td><td>7000</td><td>35</td></tr><tr><td><img src='" + stne_url + "i/w/19.gif'></td><td>120</td><td>0.6</td><td>120000</td><td>600</td></tr><tr><td><img src='" + stne_url + "i/w/20.gif'></td><td>200</td><td>1</td><td>200000</td><td>1000</td></tr><tr><td><img src='" + stne_url + "i/w/32.gif'></td><td>125</td><td>0.625</td><td>125000</td><td>625</td></tr><tr><td><img src='" + stne_url + "i/w/33.gif'></td><td>150</td><td>0.75</td><td>150000</td><td>750</td></tr><tr><td><img src='" + stne_url + "i/w/34.gif'></td><td>150</td><td>0.75</td><td>150000</td><td>750</td></tr></tbody></table>";
- $("body").append(entrodiv);
- }
- }
- if ($("a.button:contains('Script-Konsole')").length==1) {
- setConfig("url_skriptkonsole", $("a.button:contains('Script-Konsole')").attr('href'));
- }
- if ($("input.textbox").val() == 'SHP-Skript') {
- setConfig("url_shplink", $("td.tab:contains('Website'), td.tab_selected:contains('Website')").find("a").attr('href'));
- }
- $("a:contains('[K]')").attr('href', getConfig("url_skriptkonsole"));
- $("a:contains('[SHP]')").attr('href', getConfig("url_shplink"));
- function openScanFrame(openURL) {
- $("#div_iframe_control").remove();
- var div_iframe = document.createElement("div");
- document.body.appendChild(div_iframe);
- div_iframe.id="div_iframe_control";
- div_iframe.style.position = "absolute";
- div_iframe.style.top = ptop + 'px';
- div_iframe.style.left = pleft + 'px';
- div_iframe.style.border = '5px solid red';
- div_iframe.innerHTML = '<table style=\"background-color:#000000\"><tr><td style="text-align:left"><a href=\"#\" style=\"color:red; font-weight:bold;\" onclick="$(\'#div_iframe_control\').remove();">[X] I-Frame Overlay schließen [X]</a></td></tr><tr><td id=\"td_iframe\"></td></tr></table>';
- var iframe = document.createElement("iframe");
- $("#td_iframe")[0].appendChild(iframe);
- iframe.width = '400px';
- iframe.height = '600px';
- iframe.src = openURL;
- return false;
- }
- //Beam-Iframe
- function openBeamFrame(e) {
- $("#div_iframe_control").remove();
- var div_iframe = document.createElement("div");
- document.body.appendChild(div_iframe);
- div_iframe.id="div_iframe_control";
- div_iframe.style.position = "absolute";
- div_iframe.style.top = (mausPosition.Y+30) + 'px';
- div_iframe.style.left = '20px';
- div_iframe.style.border = '5px solid red';
- div_iframe.innerHTML = '<table style=\"background-color:#000000\"><tr><td style="text-align:left"><a href=\"#\" style=\"color:red; font-weight:bold;\" onclick="$(\'#div_iframe_control\').remove();">[X] I-Frame Overlay schließen [X]</a></td></tr><tr><td id=\"td_iframe\"></td></tr></table>';
- var iframe = document.createElement("iframe");
- $("#td_iframe")[0].appendChild(iframe);
- iframe.width = '900px';
- iframe.height = '700px';
- iframe.src = $(e.currentTarget).parent()[0].href;
- return false;
- }
- //WK-Iframe
- function openWKFrame(e) {
- $("#div_iframe_control").remove();
- var div_iframe = document.createElement("div");
- document.body.appendChild(div_iframe);
- div_iframe.id="div_iframe_control";
- div_iframe.style.position = "absolute";
- div_iframe.style.top = (mausPosition.Y+30) + 'px';
- div_iframe.style.left = '20px';
- div_iframe.style.border = '5px solid red';
- div_iframe.innerHTML = '<table style=\"background-color:#000000\"><tr><td style="text-align:left"><a href=\"#\" style=\"color:red; font-weight:bold;\" onclick="$(\'#div_iframe_control\').css(\'display\',\'none\');">[X] I-Frame Overlay schließen [X]</a></td></tr><tr><td id=\"td_iframe\"></td></tr></table>';
- var iframe = document.createElement("iframe");
- $("#td_iframe")[0].appendChild(iframe);
- iframe.width = '900px';
- iframe.height = '700px';
- iframe.src = $(e.currentTarget)[0].href;
- return false;
- }
- var buttons, bt, bt2;
- buttons = $("img[src='i/b/beamto.gif'],img[src='i/b/beamfrom.gif']");
- // Anzeigen von Buttons, die ein iFrame zum Beamen öffnen
- if(!getConfig("beambuttons_verstecken")) {
- for (i = 0; i<buttons.length; i++) {
- bt = buttons[i];
- bt2 = $(bt).clone().appendTo($(bt).parent());
- bt2[0].style.border = '1px dotted #ff0000';
- bt2.bind('click', openBeamFrame);
- }
- }
- buttons = $("a.button:contains('Ressourcen extrahieren')");
- for (i = 0; i<buttons.length; i++) {
- bt = buttons[i];
- bt2 = $(bt).clone().appendTo($(bt).parent());
- bt2[0].style.border = '1px dotted #ff0000';
- bt2.bind('click', openWKFrame);
- }
- document.onkeydown = function(event) {
- if (event.keyCode==113) {
- var ziel = prompt("Wohin willst du fliegen? Auf eigene Gefahr!").replace("/","|");
- //if (ziel == "wb") { ziel = "159|502"; }
- //if (ziel == "home") { ziel = "@142|487"; }
- $("#gk_konsole_text.console").text($("#gk_konsole_text.console").text() + "myShip.Action.FlyTo(\""+ziel+"\");");
- executeConsoleReload();
- }
- }
- if ($("h1:contains('Lager und Produktionsvorschau')").length) {
- //Wenn Kolonieseite
- if ($("h1:contains('Oberfläche'),h1:contains('Orbit')").next().find("table#map")) {
- //Wenn Hauptseite
- var this_td;
- $("#bauframe").remove();
- $("h1:contains('Oberfläche')").next().find("tr:eq(0)").append('<td id=\'bauframe\' class=\'nbl\'></td>');
- //Kasten neben Buttons einfügen
- $("h1:contains('Oberfläche'),h1:contains('Orbit')").next().find("table#map").find("td").each(function() {
- //Felder iterieren
- var tmp = /\?cr\=(.*)\'\, \'gebaudebauen/.exec($(this).next("script").text());
- //Prüfen ob ein Gebäude-Bauen-Link vorhanden
- if (!tmp) {
- //Wenn nicht, prüfen ob ein Gebäude-Upgrade-Link vorhanden ist
- var tmp = /\?cr\=(.*)\'\, \'gebaudeaufwerten/.exec($(this).next("script").text());
- }
- if (tmp) {
- //Wenn ja Menü löschen...
- //$(this).off();
- //...und bei Klick auf das Bild direkt verfügbare Gebäude laden
- $(this).click(function() {
- this_td = this;
- $("h1:contains('Oberfläche')").next().find("table#map").find("td").filter(function () { return($(this).css('border-top-color') != 'rgb(255, 0, 0)'); }).css('border', '1px solid grey');
- $(this).css('border', '1px solid #00ccff');
- $("td#bauframe").html('');
- console.log('Mögliche Gebäude laden...');
- console.log(stne_url + '/game?cr=' + tmp[1]);
- $.get(stne_url + '/game?cr=' + tmp[1], function(data) {
- //Bau-Seite geladen, gebäude auslesen und passende Links dafür
- $($.parseHTML(data)).find("td.button:contains('Bauen')").each(function() {
- var tmp = /\'(.*)\'/.exec($(this).find("a").attr('href'));
- if (tmp) {
- var geb = {
- gebname: $(this).closest("table").parent().prev().text(),
- link: tmp[1]
- };
- //Link zu Bauframe-hinzufügen
- $("td#bauframe").append("» <a href='" + geb.link + "' class='baulink'>" + geb.gebname + "</a><br>");
- }
- });
- //Erzeugten Links modifizieren, dass sich kein neues Fenster öffnet
- $(".baulink").each(function() {
- $(this).click(function() {
- $(this_td).css('border', '1px solid #ff0000');
- console.log("Bauauftrag: " + $(this).text());
- $("#bauframe").html('');
- $.get(stne_url + '/game' + $(this).attr('href'), function(data) {
- //Bau-Seite geladen, gebäude auslesen und passende Links dafür
- var meld = $($.parseHTML(data)).filter("#applog").html();
- $("body").append("<div class='applog' id='applog2'></div>");
- $("#applog2").html($("#applog2").html() + "<br>Gebäude gebaut: " + meld);
- });
- return false;
- });
- });
- //Ende Links modifizieren
- });
- });
- }
- });
- }
- }
- if ($("h1:eq(0):contains('Portal von CTC')").length == 1 && $("h1:eq(1):contains('Latinumhandel')").length == 1) {
- var tab = $("table").find("td:contains('Menge für 1 Latinum')").closest("table");
- var waren = [];
- $(tab).find("tr:gt(0)").each(function () {
- ware = {};
- ware.name = $(this).find(">td:eq(0)").text();
- ware.warenWertInLatinum = $(this).find(">td:eq(2)").text();
- ware.kaufpreisLatinum = $(this).find(">td:eq(5)").text();
- waren.push(ware);
- });
- postIt("import/Latinumkurs", {waren:waren}, function (data) { melde("Import: " + data.status); });
- }
- if ($("h1:contains('Scripteditor')").length==1) {
- if ($("a.button:contains('Quelltext bearbeiten')").length == 1) {
- melde("Skriptseite aufgerufen");
- var scriptname = $("input.textbox").val();
- var scriptcode = "";
- $("a.button:contains('Quelltext bearbeiten')").closest("table").next().next().find("tr").find("td:eq(1)").each(function () {
- scriptcode = scriptcode + '\r\n' + $(this).text();
- });
- melde("Sichere Skript " + scriptname);
- data = {scriptname:encodeURIComponent(scriptname), scriptcode:encodeURIComponent(scriptcode)};
- postIt("import/stneSkripte", data, function (data) { melde("Import: " + data.status); });
- }
- }
Add Comment
Please, Sign In to add comment