您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Checks which towns you shared with the other soul
// ==UserScript== // @name soulmate // @description Checks which towns you shared with the other soul // @include http://www.die2nite.com/* // @require http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js // @require https://gf.qytechs.cn/scripts/5392-waitforkeyelements/code/WaitForKeyElements.js?version=115012 // @grant GM_addStyle // @version 0.0.4. // @namespace https://gf.qytechs.cn/users/64956 // ==/UserScript== var twobj, uidtarget, cidade, sessao, extrato,ac,relink,ownId,season; var prelink = "me?id="; var poslink = ";sk="; var colessaumlinks = []; if(!('contains' in String.prototype)){String.prototype.contains = function(str, startIndex){return -1 !== String.prototype.indexOf.call(this, str, startIndex);};} function alma () // changes soul page adding animated soul icon that will redirect to my town history (copying the uid of the target) { if (!(document.URL).contains("uid")){} else{ $("div.score").append($('<a href="http://www.die2nite.com/#ghost/city?go=ghost/ingame;" id="test"><img src="http://data.die2nite.com/gfx/icons/item_soul_blue.gif"></a>')); document.getElementById("test").onclick = function (){ uidtarget = ((document.URL).substring((document.URL.indexOf("d=")+2),document.URL.indexOf(";s"))); twobj = $(".tid_user")[0]; } } } function historia () // changes my previous towns page and does prior town filtering based on season difference between target and own soul { if (twobj === undefined || uidtarget === "ttp://www.die2nite.com/#ghost/city?go=ghost/user" || uidtarget === ownId){} else{ $(".side").width(470); $(".side > strong:nth-child(1)").append("'s towns shared with "); $(".side > strong:nth-child(1)").append(twobj); $(".side > strong:nth-child(1)").append("' soul"); $(".side > strong:nth-child(1)").append($('<a class="button" id="botalma"><img src="http://data.twinoid.com/proxy/www.die2nite.com/img/icons/r_jsham.gif" alt=""> Analyse!</a>')); $("#botalma").click (analisarcidades); var tabela = document.getElementsByClassName("table")[0]; sessao = document.URL.substring(document.URL.indexOf(";sk=")+4); ownId = $("a.tid_user:nth-child(2)").attr("href"); ownId = ownId.substring((ownId.indexOf("d=")+2),ownId.indexOf(poslink)); for (var i = 1, row; i<tabela.rows.length; i++) { row = tabela.rows[i]; var colunazero = row.cells[0]; if (parseFloat(colunazero.innerHTML) < knowseason(uidtarget)){ $("tr:nth-child("+ (i+1) +")").hide(); } else{ var colunaum = row.cells[1]; cidade = (colunaum.innerHTML).substring(colunaum.innerHTML.indexOf(prelink)+6,colunaum.innerHTML.indexOf(poslink)); colessaumlinks.push(cidade); } } } window.addEventListener('loadend', function(event){ ownID = undefined;twobj = undefined; uidtarget = undefined; }); } function analisarcidades() // server request + more deleting { $('#botalma').removeClass('button'); $('#botalma').addClass('button off'); $('#botalma').off(); alert("Our Shamans will work on your towns, please wait!"); for (ac =0;ac<colessaumlinks.length;ac++){ var xhr = new XMLHttpRequest(); xhr.open('GET', 'http://www.die2nite.com/ghost/ingame?id='+ colessaumlinks[ac]+';sk='+sessao+'' , false); xhr.setRequestHeader('X-Handler', 'js.XmlHttp'); xhr.send(); extrato = xhr.response; if (extrato.contains("uid="+uidtarget+";") === true){ //adding soul icon and opeing on new tab function relink = "http://www.die2nite.com/#ghost/ingame?id="+colessaumlinks[ac]+";sk="+sessao; $("tr:nth-child("+ (ac+2) +") > td:nth-child(2) > a:nth-child(1)").replaceWith($('<a href="" target="_blank"><img src="http://data.die2nite.com/gfx/icons/item_soul_blue.gif" alt=""></a>')); $("tr:nth-child("+ (ac+2) +") > td:nth-child(2) > a:nth-child(1)").attr("href", relink); } else{ $("tr:nth-child("+ (ac+2) +")").hide(); } } colessaumlinks = []; uidtarget ="";cidade="";sessao=""; //flushing some stuff } function knowseason (uidtarget) // function to detect which season the uid belongs { if (parseFloat(uidtarget) < 37355){season= 0;} else if (parseFloat(uidtarget)<119425 && parseFloat(uidtarget)>37354){season =1;} else if (parseFloat(uidtarget)<156595 && parseFloat(uidtarget)>119425){season =2;} else if (parseFloat(uidtarget)<188375 && parseFloat(uidtarget)>156595){season =3;} else if (parseFloat(uidtarget)<221253 && parseFloat(uidtarget)>188375){season =4;} else if (parseFloat(uidtarget)<258960 && parseFloat(uidtarget)>221253){season =5;} else if (parseFloat(uidtarget)<278890 && parseFloat(uidtarget)>258960){season =6;} else if (parseFloat(uidtarget)<298610 && parseFloat(uidtarget)>278890){season =7;} else if (parseFloat(uidtarget)<322000 && parseFloat(uidtarget)>298610){season =8;} else if (parseFloat(uidtarget)<341302 && parseFloat(uidtarget)>322000){season =9;} else if (parseFloat(uidtarget)<356599 && parseFloat(uidtarget)>341302){season =10;} else if (parseFloat(uidtarget)<373535 && parseFloat(uidtarget)>356599){season =11;} else if (parseFloat(uidtarget)<381483 && parseFloat(uidtarget)>373535){season =12;} else {season=13;} return season; } waitForKeyElements (".tinyAction > form:nth-child(1) > select:nth-child(3)", alma); //detect soulpage waitForKeyElements (".help:contains(This section displays a list of all your previous games.)", historia); //detect history page
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址