Advertisement
Guest User

Untitled

a guest
Sep 17th, 2019
159
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.68 KB | None | 0 0
  1. javascript:
  2. // ==UserScript==
  3. // @name Dodatkowe rankingi w liście plemienia + zebrane
  4. // @version 2.0.8
  5. // @author Filip Klich
  6. // @edit icewu
  7. // @match *://*.plemiona.pl/game.php?*&screen=ally&mode=members*
  8. // @match *://*.plemiona.pl/game.php?*&screen=info_member*
  9. // ==/UserScript==
  10. //LICENCJA FREE SOFTWARE - drogi Supporcie <3 wyrażam zgodę na użytkowanie i publikowanie tego skryptu przez każdą osobę
  11.  
  12. //CONFIG - ustaw domyślne wartości - 1 to zaznacz; 0 to nie zaznaczaj
  13. var farmaC = 1;
  14. var zbieractwoC = 1;
  15. var agresorC = 0;
  16. var obroncaC = 0;
  17. var wsparcieC = 0;
  18.  
  19. var rank = 0;//ranking obok wartosci
  20. ///////ODZNACZENIA
  21. var rabusC = 0;
  22. var grabiezcaC = 0;
  23. var hetmanC = 0;
  24. var taranyC = 0;
  25. var katapultyC = 0;
  26. var pewnydowodcaC = 0;
  27. var smiercbohateraC = 0;
  28. var pogszlachtaC = 0;
  29. var pogzwiadC = 0;
  30. var przywodcaC = 0;
  31. var rzeznikC = 0;
  32. var towarzyszC = 0;
  33. var rynekC = 0;
  34. var rekruC = 0;
  35. var krezusC = 0;
  36. var lataC = 0;
  37.  
  38. var lvlAward = 1; //odznaczenia w formie cyfry zamiast medalu (brąz, srebro, złoto)
  39. //CONFIG
  40.  
  41. var awards = [];
  42. var awardsB = [];
  43.  
  44. addAwards();
  45. addCheckboxs();
  46. setChecked();
  47.  
  48. var t;
  49. var my_tribal;
  50. function main() {
  51. var farma = Number(document.getElementById("farma").checked);
  52. var zbieractwo = Number(document.getElementById("zbieractwo").checked);
  53. var agresor = Number(document.getElementById("agresor").checked);
  54. var obronca = Number(document.getElementById("obronca").checked);
  55. var wsparcie = Number(document.getElementById("wsparcie").checked);
  56. for(var i=0;i<awards.length;i++){
  57. awardsB[awardsB[awards[i]]] = Number(document.getElementById(awards[i]).checked);
  58. }
  59.  
  60. var url=[];
  61. if(location.href.match('mode=members')&&location.href.match('screen=ally')) my_tribal=1;
  62. else my_tribal = 0;
  63.  
  64. console.log(my_tribal);
  65. t=document.getElementsByClassName("vis")[my_tribal].getElementsByTagName("tbody")[0].getElementsByTagName("tr");
  66.  
  67. if (farma) addColumn('Rekord \nfarmy',t.length);
  68. if (zbieractwo) addColumn('Rekord \nzbieractwa',t.length);
  69. if (agresor) addColumn('Punkty \nagresora',t.length);
  70. if (obronca) addColumn('Punkty \nobrońcy',t.length);
  71. if (wsparcie) addColumn('Punkty \nwsparcia',t.length);
  72. for(i=0;i<awards.length;i++){
  73. if (awardsB[awardsB[awards[i]]]) addColumn('Odznaczenie \n'+awardsB[awards[i]],t.length);
  74. }
  75. var j = farma+agresor+obronca+wsparcie+zbieractwo;
  76. for(i=0;i<awards.length;i++){
  77. j+= awardsB[awardsB[awards[i]]];
  78. }
  79. //console.log(j);
  80. const length = setLength();
  81.  
  82. url[0]='game.php?screen=ranking&mode=in_a_day&type=loot_res&name=';
  83. url[1]='game.php?screen=ranking&mode=kill_player&type=att&name=';
  84. url[2]='game.php?screen=ranking&mode=kill_player&type=def&name=';
  85. url[3]='game.php?screen=ranking&mode=kill_player&type=support&name=';
  86. url[4]='game.php?screen=ranking&mode=in_a_day&type=scavenge&name=';
  87. var l=1;
  88.  
  89. if (farma) setPoints(takeNick(1),1,t.length+1,url[0],l++,length-j);
  90. if (agresor) setPoints(takeNick(1),1,t.length+1,url[1],l++,length-j);
  91. if (obronca) setPoints(takeNick(1),1,t.length+1,url[2],l++,length-j);
  92. if (wsparcie) setPoints(takeNick(1),1,t.length+1,url[3],l++,length-j);
  93. if (zbieractwo) setPoints(takeNick(1),1,t.length+1,url[4],l++,length-j);
  94. for(i=0;i<awards.length;i++){
  95. if (awardsB[awardsB[awards[i]]]) setAwards(takeId(1),1,t.length+1,awardsB[awards[i]],l++,length-j);
  96. }
  97. }
  98.  
  99. function setLength(){
  100. return $(".row_a")[0].getElementsByTagName("td").length;
  101. }
  102.  
  103. function addColumn(text,players){
  104. players -= my_tribal;
  105. var th=[];
  106. th[0] = document.createElement('th');
  107. th[0].innerHTML = text;
  108. t[0].appendChild(th[0]);
  109. for (var i=1;i<players;i++){
  110. th[i] = document.createElement('td');
  111. th[i].innerHTML = '';
  112. t[i].appendChild(th[i]);
  113. }
  114. }
  115.  
  116. function setPoints(nick,k,players,url,possition,length){
  117. var x=0;
  118. $.ajax({
  119. async: true,
  120. url: url+nick,
  121. type: 'GET',
  122. success: function(test) {
  123. var l = $(test).find('.lit-item');
  124. if (l[3]!=undefined){
  125. var t = l[3].innerHTML;
  126. var m = l[0].innerHTML;
  127. console.log(t);
  128. t=t.split(`<span class="grey">.</span>`);
  129. x=t[0];
  130. for (var i=1;i<t.length;i++) {x+=","; x+=t[i];}
  131. x=x.replace(".",",");
  132. if (rank) x=x+" ("+m+".)";
  133. }
  134.  
  135. addValue(x,k,possition,length);
  136. setPoints(takeNick(k+1),k+1,players,url,possition,length);
  137. },
  138. error: function (error){
  139. setTimeout(function() {
  140. setPoints(nick,k,players,url,possition,length);
  141. }, 150);
  142. }
  143. });
  144. }
  145.  
  146. function setAwards(id,k,players,award,possition,length){
  147. var x;
  148. var y;
  149. $.ajax({
  150. async: true,
  151. url: "game.php?screen=info_player&id="+id,
  152. type: 'GET',
  153. success: function(test) {
  154. var a = $(test).find(".main")[3].getElementsByClassName("award-desc");
  155. // console.log(a);
  156. for(var i=0;i<a.length;i++){
  157. y=a[i].getElementsByTagName("strong")[0].innerText.split(" - ");
  158. if(y[0].split(" (")[0]===award){
  159. if(lvlAward === 0) x = y[0].split(" (")[1];
  160. else x= y[1].split(")")[0];
  161. x="<b><center>"+x;
  162. if(y[0].split(" (")[1]==="Brąz") x="<font color=#815f3a>"+x;
  163. else if(y[0].split(" (")[1]==="Drewno") x="<font color=#492414>"+x;
  164. else if(y[0].split(" (")[1]==="Srebro") x="<font color=#9ea7b3>"+x;
  165. else if(y[0].split(" (")[1]==="Złoto") x="<font color=#d79f30>"+x;
  166. }
  167.  
  168. }
  169.  
  170. if(x===undefined){x="<center>Brak danych";}
  171. addValue(x,k,possition,length);
  172. setAwards(takeId(k+1),k+1,players,award,possition,length);
  173. },
  174. error: function (error){
  175. setTimeout(function() {
  176. setAwards(id,k,players,award,possition,length);
  177. }, 150);
  178. }
  179. });
  180. }
  181.  
  182. function takeId(i){
  183. return document.getElementsByClassName("vis")[my_tribal].getElementsByTagName("tbody")[0].getElementsByTagName("tr")[i].getElementsByTagName("td")[0].innerHTML.split("id=")[1].split("\"")[0];
  184. }
  185. function takeNick(i){
  186. var g=document.getElementsByClassName("vis")[my_tribal].getElementsByTagName("tbody")[0].getElementsByTagName("tr")[i];
  187. var d=g.getElementsByTagName("td")[0].getElementsByTagName("a")[0].innerHTML;
  188. return d;
  189. }
  190. function addValue(loot,i,possition,length){
  191. //console.log(possition+length-1);
  192. // console.log(i);
  193. t[i].getElementsByTagName('td')[possition+length-1].innerHTML=loot;
  194. }
  195. function addCheckboxs(){
  196. var div = document.createElement('div');
  197. div.className = " topbar";
  198. div.innerHTML = '<label> <input type="checkbox" id="farma"/> Farma</label> \
  199. <label> <input type="checkbox" id="zbieractwo"/> Zbieractwo</label> \
  200. <label> <input type="checkbox" id="agresor"/> Agresor</label> \
  201. <label> <input type="checkbox" id="obronca" /> Obrońca</label> \
  202. <label> <input type="checkbox" id="wsparcie" > Wsparcie</label><br>'
  203. for(var i=0;i<awards.length;i++){
  204. div.innerHTML+='<label> <input type="checkbox" id="'+awards[i]+'" /> '+awardsB[awards[i]]+'</label> '
  205. if(i===5) div.innerHTML+="<br>"
  206. if(i===10) div.innerHTML+="<br>"
  207. }
  208. div.innerHTML+='<br><input type="button" id="clickMe" value="Pokaż" class="btn " onclick="main()">';
  209. $("#content_value").find('h2')[0].innerHTML="<br>"+$("#content_value").find('h2')[0].innerHTML;
  210. document.getElementById('content_value').prepend(div);
  211. document.getElementById("clickMe").onclick = main;
  212. }
  213.  
  214. function setChecked(){
  215. if(farmaC===1) {document.getElementById("farma").checked=true;}
  216. if(agresorC===1) {document.getElementById("agresor").checked=true;}
  217. if(obroncaC===1) {document.getElementById("obronca").checked=true;}
  218. if(wsparcieC===1) {document.getElementById("wsparcie").checked=true;}
  219. if(zbieractwoC===1) {document.getElementById("zbieractwo").checked=true;}
  220.  
  221. for(var i=0;i<awards.length;i++){
  222. if(eval(awards[i]+"C")===1) {document.getElementById(awards[i]).checked=true;}
  223. }
  224. }
  225.  
  226. function addAwards(){
  227. var j=0;
  228.  
  229. awards[j]="rabus";
  230. awardsB[awards[j++]]="Rabuś";
  231. awards[j]="grabiezca";
  232. awardsB[awards[j++]]="Grabieżca";
  233. awards[j]="hetman";
  234. awardsB[awards[j++]]="Hetman";
  235. awards[j]="tarany";
  236. awardsB[awards[j++]]="Nisczyciel murów";
  237. awards[j]="katapulty";
  238. awardsB[awards[j++]]="Człowiek demolka";
  239. awards[j]="pewnydowodca";
  240. awardsB[awards[j++]]="Pewny dowódca";
  241. awards[j]="smiercbohatera";
  242. awardsB[awards[j++]]="Śmierć bohatera";
  243. awards[j]="pogszlachta";
  244. awardsB[awards[j++]]="Pogromca szlachty";
  245. awards[j]="pogzwiad";
  246. awardsB[awards[j++]]="Pogromca zwiadowców";
  247. awards[j]="przywodca";
  248. awardsB[awards[j++]]="Przywódca";
  249. awards[j]="rzeznik";
  250. awardsB[awards[j++]]="Rzeźnik";
  251. awards[j]="towarzysz";
  252. awardsB[awards[j++]]="Towarzysz broni";
  253. awards[j]="rynek";
  254. awardsB[awards[j++]]="Człowiek interesu";
  255. awards[j]="rekru";
  256. awardsB[awards[j++]]="Mistrz rekrutacji";
  257. awards[j]="krezus";
  258. awardsB[awards[j++]]="Krezus";
  259. awards[j]="lata";
  260. awardsB[awards[j++]]="Lata gry";
  261. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement