Advertisement
Guest User

Untitled

a guest
Jan 17th, 2017
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // ==UserScript==
  2. // @name         Get the goddamn galaxy!
  3. // @version      0.1
  4. // @require      http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js
  5. // @description  try to take over the world!
  6. // @author       You
  7. // @match        http://134.93.60.5:8080/*
  8. // @grant        GM_xmlhttpRequest
  9. // @connect      *
  10. // @grant        GM_addStyle
  11. // ==/UserScript==
  12.  
  13. (function() {
  14.     'use strict';
  15.     var i = 0;
  16.     var cid = 170174;
  17.     var frBe;
  18.     var value;
  19.     var seOb;
  20.     function autoRec(){
  21.         getFKap();
  22.         setTimeout(function(){
  23.         //console.log(frBe);
  24.         var targets = getTargets(frBe-3);//-3 da man ja auch noch Befehle fürs saven braucht
  25.         //console.log(targets)
  26.         setTimeout(function(){
  27.             console.log(seOb);
  28.         },250);
  29.         }, 250);
  30.     }
  31.     function getOffers(targets){
  32.         var max = targets.metall.length;
  33.         for (var i = 0; i < max; i++){
  34.             value = "";
  35.             var k = targets.koordinaten[i];
  36.             var m = targets.metall[i];
  37.             var kr = targets.kristall[i];
  38.             getOffer(k, m, kr);
  39.             setTimeout(function(){
  40.             seOb = {k: k, m: m, kr: kr, value: value};
  41.             },200);
  42.         }
  43.     }
  44.     function getOffer(k, m, kr){
  45.         var help;
  46.         k = k.slice(5,14);
  47.         k = k.replace(/\n/, '');
  48.         k = k.replace(/\t/g, "");
  49.         //console.log(k);
  50.         k = k.split(':', 3);
  51.         m = m.replace(/\./g, "");
  52.         kr = kr.replace(/\./g, "");
  53.         var linkHelper = "http://de1.sp.looki.de/handelrec.shtml?cid=".concat(cid).concat("&rentarec=1&timeoffset=7200&tfsizem=").concat(m).concat("&xpos=").concat(k[0]).concat("&ypos=").concat(k[1]).concat("&zpos=").concat(k[2]).concat("&anh=00&anm=00&ans=00&antype=2&tfsizek=").concat(kr).concat("&rentsearch=Suchen");
  54.         //console.log(linkHelper);
  55.         var req = GM_xmlhttpRequest({
  56.                     method: "GET",
  57.                     url: linkHelper,
  58.                     onload: function(response) {
  59.                        help = response.responseXML;
  60.                        //console.log(help);
  61.                        var helper = help.childNodes[0].childNodes[3].textContent;
  62.                        value = getOfferValue(helper);
  63.                        console.log(value);
  64.                     }
  65.         });
  66.     }
  67.     function getOfferValue(helper){
  68.         var str1 = helper.slice(helper.indexOf('Anbieter</td>')+24, 19000);
  69.         //console.log(str1);
  70.         var str2 = str1.split('</tr>', 20);
  71.         //console.log(str2);
  72.         for (var i = 0; i < 10; i++){
  73.             var str3 = str2[i*2];
  74.             var str4 = str3.split('</td>', 8);
  75.             if(str4[2].match('>0%')){
  76.                 return str4[5].slice(str4[5].indexOf("='")+2, str4[5].indexOf("';"));
  77.             }
  78.             //console.log(str4);
  79.         }
  80.     }
  81.     function getTargets(max){
  82.         var koordA = [];
  83.         var metallA = [];
  84.         var kristallA = [];
  85.         for (var i = 2; i < max+2; i++){
  86.             var koords = document.childNodes[1].childNodes[2].childNodes[1].childNodes[3].childNodes[1].childNodes[2].childNodes[3].childNodes[6].childNodes[1].childNodes[i*2].childNodes[1].textContent;
  87.             var metall = document.childNodes[1].childNodes[2].childNodes[1].childNodes[3].childNodes[1].childNodes[2].childNodes[3].childNodes[6].childNodes[1].childNodes[i*2].childNodes[5].textContent;
  88.             var kristall = document.childNodes[1].childNodes[2].childNodes[1].childNodes[3].childNodes[1].childNodes[2].childNodes[3].childNodes[6].childNodes[1].childNodes[i*2].childNodes[7].textContent;
  89.             koordA = koordA.concat(koords);
  90.             metallA = metallA.concat(metall);
  91.             kristallA = kristallA.concat(kristall);
  92.             //console.log(koords, metall, kristall);
  93.         }
  94.         return {koordinaten: koordA, metall: metallA, kristall: kristallA};
  95.     }
  96.     function getFKap(){
  97.         var linkHelper = "http://de1.sp.looki.de/flotte.shtml?cid=".concat(cid);
  98.         var help;
  99.         var req = GM_xmlhttpRequest({
  100.                     method: "GET",
  101.                     url: linkHelper,
  102.                     onload: function(response) {
  103.                        help = response.responseXML;
  104.                        var hString  = help.childNodes[0].childNodes[1].childNodes[1].textContent;
  105.                        hString = hString.slice(hString.indexOf('('), hString.indexOf(')'));
  106.                        var h1 = parseInt(hString.slice(1, hString.indexOf('/')));
  107.                        var h2 = parseInt(hString.slice(hString.indexOf('/')+1, hString.indexOf('S')-1));
  108.                        frBe = h2-h1;
  109.                        console.log(frBe);
  110.                 //console.log(parseString(hString));
  111.                 //stringCSV = stringCSV.concat(parseString(hString));
  112.                        //console.log(stringCSV);
  113.                     }  });
  114.     }
  115.    
  116.     function multScan(){
  117.             scanUniverse(1, 25, 1, 99);
  118.             //scanUniverse(26, 50, 1, 99);
  119.             //scanUniverse(51, 75, 1, 99);
  120.             //scanUniverse(76, 99, 1, 99);
  121.     }
  122.    
  123.     function scanUniverse(xa, xb, ya, yb){
  124.         var stringCSV = "";
  125.         for (var i = xa; i <= xb; i++){
  126.             for (var j = ya; j <= yb; j++){
  127.                 //console.log(j);
  128.                 var linkHelper = "http://de1.sp.looki.de/newsysview.shtml?cid=170174&ppx=".concat(i).concat("&ppy=").concat(j);
  129.                 var help;
  130.                 var req = GM_xmlhttpRequest({
  131.                     method: "GET",
  132.                     url: linkHelper,
  133.                     onload: function(response) {
  134.                        help = response.responseXML;
  135.                 var hString  = help.childNodes[0].childNodes[1].childNodes[1].textContent;
  136.                 //console.log(hString);
  137.                 //console.log(parseString(hString));
  138.                 stringCSV = stringCSV.concat(parseString(hString));
  139.                        //console.log(stringCSV);
  140.                     }  });
  141.                 }}
  142.         setTimeout(function(){
  143.         document.getElementById('textfield').value = stringCSV;
  144.         }, 100000);
  145.     }
  146.  
  147.     function parseString(text) {
  148.         text = text.slice(29,text.length-37);
  149.         var rows = text.split(';',16);
  150.         for (var i = 0; i < rows.length; i++){
  151.             var l = 0;
  152.             var helperString = rows[i].slice(rows[i].indexOf('(')+1, rows.lastIndexOf(')'));
  153.             while(helperString.match('font') && l < 5){
  154.                 var str1 = helperString.slice(0, helperString.indexOf('<font'));
  155.                 var str2 = helperString.slice(helperString.indexOf('">')+2, helperString.indexOf('</font>'));
  156.                 var str3 = helperString.slice(helperString.indexOf('</font>')+7, helperString.length);
  157.                 //console.log(str1);
  158.                 //console.log(str2);
  159.                 //console.log(str3);
  160.                 //console.log(str1 + str2 + str3);
  161.                 helperString = str1.concat(str2).concat(str3);
  162.                 l++;
  163.             }
  164.             while(helperString.match("'")){
  165.                 helperString = helperString.replace("'", "");
  166.             }
  167.             while(helperString.match(",")){
  168.                 helperString = helperString.replace(",", ";");
  169.             }
  170.             var helpString = [];
  171.             while(helperString.match(';')){
  172.                 var helpS = helperString.slice(0, helperString.indexOf(';')+1);
  173.                 helpS = helpS.concat('\t');
  174.                 helpString.push(helpS);
  175.                 helperString = helperString.slice(helperString.indexOf(';')+1, helperString.length);
  176.                 //console.log(helpString[j]);
  177.             }
  178.             helperString="";
  179.             //console.log(helpString);
  180.             for (var j = 0; j < helpString.length-1; j++){
  181.                 helperString = helperString.concat(helpString[j]);
  182.             }
  183.             helperString = helperString.concat("\n");
  184.             rows[i] = helperString;
  185.             //console.log(rows[i]);
  186.         }
  187.         text ="";
  188.         for(var k = 0; k < rows.length; k++){
  189.             text = text.concat(rows[k]);
  190.         }
  191.         text = text.concat("\n");
  192.         //console.log(text);
  193.         return text;
  194.     }
  195.  
  196.     $("body").append ( '                \
  197. <div id="toolbox" style="height: 482px; position: absolute"> \
  198. <h3>SP-Toolbox<br /> \
  199. </h3> \
  200. <br />\
  201. \
  202. \
  203. <div id="Planetlist" class="Toolbox" style="position: absolute; width: 285px; z-index: 1; left: 11px; top: 67px">\
  204. <h4>Planetenliste</h4>\
  205. <hr />\
  206. <p>&nbsp;</p>\
  207. </div>\
  208. <div id="Science" class="Toolbox" style="position: absolute; width: 285px; z-index: 2; left: 302px; top: 67px">\
  209. <h4>Forschungsschwerpunkte</h4>\
  210. <hr />\
  211. <input id="Spionagetechnik" name="Checkbox1" type="checkbox" />Spionagetechnik <input name="Text1" id="Spionagetechnik_to" type="text" /><br />\
  212. <input id="Navigationstechnik" name="Checkbox2" type="checkbox" />Navigationstechnik <input name="Text2" id="Navigationstechnik_to" type="text" /><br />\
  213. <input id="Waffensysteme" name="Checkbox3" type="checkbox" />Waffensysteme<input name="Text3" id="Waffensysteme_to" type="text" /><br />\
  214. <input id="Materialforschung" name="Checkbox4" type="checkbox" />Materialforschung<input name="Text4" id="Materialforschung_to" type="text" /><br />\
  215. <input id="Energiesysteme" name="Checkbox5" type="checkbox" />Energiesysteme <input name="Text5" id="Energiesysteme_to" type="text" /><br />\
  216. <input id="Triebwerktechnik" name="Checkbox6" type="checkbox" />Triebwerktechnik<input name="Text6" id="Triebwerktechnik_to" type="text" /><br />\
  217. <input id="Impulstriebwerk" name="Checkbox7" type="checkbox" />Impulstriebwerk<input name="Text7" id="Impulstriebwerk_to" type="text" /><br />\
  218. <input id="Lasertechnik" name="Checkbox8" type="checkbox" />Lasertechnik<input name="Text8" id="Lasertechnik_to" type="text" /><br />\
  219. <input id="Astronomie" name="Checkbox9" type="checkbox" />Astronomie<input name="Text9" id="Astronomie_to" type="text" /><br />\
  220. <input id="Statik" name="Checkbox10" type="checkbox" />Statik<input name="Text10" id="Statik_to" type="text" /><br />\
  221. <input id="Geologie" name="Checkbox11" type="checkbox" />Geologie<input name="Text11" id="Geologie_to" type="text" /><br />\
  222. <input id="Ökologie" name="Checkbox12" type="checkbox" />Ökologie<input name="Text12" id="Ökologie_to" type="text" /><br />\
  223. </div>\
  224. <div id="Logdata" class="Loglist" style="position: absolute; width: 285px; z-index: 3; left: 596px; top: 67px">\
  225. <h4>Log</h4>\
  226. <hr />\
  227. </div>\
  228. <div id="solarsystem" class="Toolbox" style="position: absolute; width: 285px; z-index: 4; left: 906px; top: 67px">\
  229. <h4>Solarsystem-CSV</h4>\
  230. <hr />\
  231. <input name="Text14" id="CSV" type="text" class="csvlist"/>\
  232. </div>\
  233. \
  234. \
  235. </div>\
  236. ' );
  237.  
  238.     var zNode = document.createElement('div'); //Button zu Testzwecken
  239.     zNode.innerHTML = '<button id="myButton" type="button">' +
  240.         'For Pete\'s sake, don\'t click me!</button>';
  241.     zNode.setAttribute('id', 'myContainer');
  242.     document.body.appendChild(zNode);
  243.     //--- Activate the newly added button.
  244.     document.getElementById('myButton').addEventListener('click', ButtonClickAction, false);
  245.     //Löst per Button_Click ein Testevent aus und erzeugt eine Notiz unter dem Button bei Klicken.
  246.     function ButtonClickAction(zEvent) {
  247.         var zNode = document.createElement('p');
  248.         multScan();
  249.         //autoRec();
  250.         //scanUniverses();
  251.         zNode.innerHTML = 'The button was clicked.';
  252.         document.getElementById('myContainer').appendChild(zNode);
  253.  
  254.     } //--- Style our newly added elements using CSS.
  255.  
  256.     GM_addStyle(multilineStr(function() {
  257.         /*!
  258.     #myContainer {
  259.         position:               absolute;
  260.         top:                    0;
  261.         left:                   0;
  262.         font-size:              11px;
  263.         background:             orange;
  264.         border:                 3px outset black;
  265.         margin:                 5px;
  266.         opacity:                0.9;
  267.         z-index:                222;
  268.         padding:                5px 20px;
  269.     }
  270.     .csvlist{
  271.             overflow:               auto;
  272.         background:             black;
  273.         color:                  white;
  274.         border:                 2px outset white;
  275.         font-size:              12px;
  276.         height:                 330px;
  277.         width:                  275px;
  278.         font-family:            Futura,Trebuchet MS,Arial,sans-serif;
  279.     }
  280.     .Toolbox {
  281.         background:             black;
  282.         color:                  white;
  283.         border:                 2px outset white;
  284.         font-size:              12px;
  285.         height:                 auto;
  286.         font-family:            Futura,Trebuchet MS,Arial,sans-serif;
  287.     }
  288.     .Loglist{
  289.         overflow:               auto;
  290.         background:             black;
  291.         color:                  white;
  292.         border:                 2px outset white;
  293.         font-size:              12px;
  294.         height:                 330px;
  295.         font-family:            Futura,Trebuchet MS,Arial,sans-serif;
  296.     }
  297.     #myButton {
  298.         cursor:                 pointer;
  299.     }
  300.     #myContainer p {
  301.         color:                  red;
  302.         background:             white;
  303.     }
  304. */
  305.     }));
  306.     function multilineStr(dummyFunc) {
  307.         var str = dummyFunc.toString();
  308.         str = str.replace(/^[^\/]+\/\*!?/, '') // Strip function () { /*!
  309.             .replace(/\s*\*\/\s*\}\s*$/, '') // Strip */ }
  310.             .replace(/\/\/.+$/gm, '') // Double-slash comments wreck CSS. Strip them.
  311.         ;
  312.         return str;
  313.     }
  314. })();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement