PanHagrid

Dodatkowe rankingi w liście plemienia 2.0.7

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