Advertisement
Guest User

Untitled

a guest
Jun 14th, 2018
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 47.80 KB | None | 0 0
  1. // ==UserScript==
  2. // @name AbyssusHelperPBTEST
  3. // @description Petit Script pour Abyssus
  4. // @version 1.2.1
  5. // @grant none
  6. // @match https://s1.abyssus.games/*
  7. // @include https://s1.abyssus.games/*
  8. // @namespace https://greasyfork.org/users/184736
  9. // ==/UserScript==
  10.  
  11. // --------------------------------------------------------------------------
  12. // Var
  13. // --------------------------------------------------------------------------
  14. //setCookie("AbyssusHelper_version", "1.1.0", 1);
  15. var pseudo = document.getElementById("marqueur_pseudo_joueur").textContent;
  16. var idjoueur = document.getElementById("marqueur_ID_joueur").textContent;
  17. var pack_premium1 = document.getElementById("marqueur_pack_premium_1").textContent;
  18. var pack_premium2 = document.getElementById("marqueur_pack_premium_2").textContent;
  19. var delay = 0;
  20. var changelog = "<strong>v1.2.1</strong><br/><ul><li>Corrigé un bug qui empêchait le multiflood / flood opti de fonctionner correctement sur les cibles trop lointaines</li></ul>";
  21. changelog += '<br/><hr color="blue"></hr><br/>';
  22. changelog += "<strong>v1.2.0</strong><br/><ul><li>Ajouté une option pour montrer les stats des unités avec prise en compte des niveaux de Morsure et Ecaille sur la page production d\'unités</li></ul><strong>v1.1.6</strong><br/><ul><li>Ajouté l'enregistrement des niveaux Morsure et Ecaille</li></ul><strong>v1.1.5</strong><br/><ul><li>Changé l'ordre d'utilisation des unités pour l'antisonde auto</li></ul><strong>v1.1.4</strong><br/><ul><li>Supprimé le délai avant l'affichage de l'horloge</li><li>Corrigé un bug qui empêchait les préférences concernant l'horloge d'être sauvegardées</li><li>Changé l'ordre d'utilisation des unités pour l'antisonde auto</li></ul><strong>v1.1.3</strong><br/><ul><li>L'horloge fait tic et toc mais n'est pas forcément à l'heure du serveur...</li></ul><strong>v1.1.2</strong><br/><ul><li>Ajout du cadre pour l'horloge. NB : L'horloge ne fonctionne pas encore</li></ul><strong>v1.1.1</strong><br/><ul><li>Amélioration de l'apparence du changelog</li></ul><strong>v1.1.0</strong><br/><ul><li>Ajout de l'antisonde automatique</li><li>Ajout des paramètres de l'antisonde automatique</li></ul><strong>v1.0.23</strong><br/><ul><li>Ajout du changelog</li></ul>";
  23. var version = "1.2.1";
  24.  
  25. //page 2 à mettre autre part à l'occasion
  26. function getPageTwo() {
  27. //force la requete ajax à être synchronisée
  28. jQuery.ajaxSetup({async:false});
  29. var mintdc = $('#tdcmin').val();
  30. var maxtdc = $('#tdcmax').val();
  31. var out = document.createElement('table');
  32. $.post('ajax/ennemies.php', {mintdc:mintdc, maxtdc:maxtdc, page:2, tri:'distance', sens:'asc', guerre:0, paix:0, ally:0}, function(data){
  33. out.innerHTML = data;
  34. });
  35. //rétablit l'async pour les requetes ajax
  36. jQuery.ajaxSetup({async:true});
  37. return out.getElementsByTagName('tr');
  38.  
  39. }
  40.  
  41. //----------------------------------------------------------------------------------------------------------
  42. //FONCTIONS COOKIES
  43. //----------------------------------------------------------------------------------------------------------
  44.  
  45. function setCookie(cname, cvalue, exdays) {
  46. var d = new Date();
  47. d.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000));
  48. var expires = "expires="+d.toUTCString();
  49. document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
  50. }
  51.  
  52. function getCookie(cname) {
  53. var name = cname + "=";
  54. var ca = document.cookie.split(';');
  55. for(var i = 0; i < ca.length; i++) {
  56. var c = ca[i];
  57. while (c.charAt(0) == ' ') {
  58. c = c.substring(1);
  59. }
  60. if (c.indexOf(name) == 0) {
  61. return c.substring(name.length, c.length);
  62. }
  63. }
  64. return "";
  65. }
  66. /*Désactivé pour le moment, remplacé par délai variable avec try...catch
  67. //ajoute un delai avant execution sur la page ennemies lors du multiflood
  68. if(document.URL.indexOf("ennemies")!=-1){
  69. var verif = getCookie("AbyssusHelper_CiblesMF")
  70. delay = 1000;
  71. if (verif != "") {
  72. document.getElementById("ally").click();
  73. }
  74. }*/
  75.  
  76. //supprimer notif TM manquant
  77. if(document.URL.indexOf("supprNotif")!=-1){
  78. setCookie("AbyssusHelper_tmAlly", parseInt(document.location.href.split("Notif")[1]), 7);
  79. document.location.href="https://s1.abyssus.games/jeu.php?page=listemembre";
  80. }
  81.  
  82.  
  83. //----------------------------------------------------------------------------------------------------------
  84. //MULTIFLOOD CHAINE - CALCULER PROCHAINE VAGUE
  85. //----------------------------------------------------------------------------------------------------------
  86. function multiflood_CalculVague(tmMoi, tmLui) {
  87. var bonus = parseInt(getCookie("AbyssusHelper_bonusCDF"));
  88. var prise_max = Math.floor(0.2 * tmLui);
  89.  
  90. if (tmLui < Math.ceil(tmMoi / (2*(1+bonus/10))) || tmLui > Math.floor(tmMoi * (3*(1+bonus/10)))) {
  91. //cible déjà HDP, ne pas lancer de nouvelle vague
  92. return -1;
  93. } else if (tmLui - prise_max < Math.ceil((tmMoi + prise_max) / (2*(1+bonus/10)))) {
  94. //cible va être HDP après l'attaque, lance attaque réduite
  95. var prise_init = prise_max;
  96. var reduction = 2;
  97. while (Math.floor(prise_init/reduction) > 0) {
  98. if (tmLui - prise_max < Math.ceil((tmMoi + prise_max) / (2*(1+bonus/10)))) {
  99. prise_max -= Math.ceil(prise_init/reduction);
  100. } else {
  101. prise_max += Math.floor(prise_init/reduction);
  102. }
  103. reduction *= 2;
  104. }
  105. prise_max -= 2;
  106. if (prise_max < 10) {
  107. //si prise réduite trop petite, lance juste vague normale, car probablement dernière vague ou alors vague réduite (presque) inutile
  108. return prise_init;
  109. } else {
  110. return prise_max;
  111. }
  112. } else {
  113. return prise_max;
  114. }
  115. }
  116.  
  117.  
  118. //----------------------------------------------------------------------------------------------------------
  119. //MULTIFLOOD CHAINE - TROUVER CIBLES POTENTIELLES
  120. //----------------------------------------------------------------------------------------------------------
  121. function multiflood_Chaine() {
  122. //Cherche cibles
  123. var cibles = new Array();
  124. var nouvelle_cible;
  125. var contenu_tableau = document.getElementById('tableaumembre').getElementsByTagName('tr');
  126.  
  127.  
  128. //Calcule nombre de membres... à mettre dans une fonction à part à l'occasion
  129. var str = document.getElementById('bloc').getElementsByTagName('center')[0].innerHTML;
  130. var strSub;
  131. strSub = str.split("Nombre de membre : ")[1];
  132. strSub = strSub.split("<")[0];
  133. var nbMembre = parseInt(strSub);
  134.  
  135. //crée la liste de toutes les cibles.
  136. for (var i=1; i< nbMembre +1; i++) {
  137. var temp = contenu_tableau[i].cells[3].style.backgroundColor;
  138. if (temp == "#66329a" || temp == "rgb(102, 50, 154)" || temp == "rgb(77, 25, 25)" || temp == "#4d1919") {
  139. var contenu = contenu_tableau[i].cells[3].innerHTML;
  140. nouvelle_cible = (contenu.split('id=')[1]).split('"')[0];
  141. cibles.push(parseInt(nouvelle_cible));
  142. }
  143. }
  144.  
  145. setCookie("AbyssusHelper_CiblesMF", cibles, 1);
  146. setCookie("AbyssusHelper_LigneTableauMF", 1, 1);
  147. document.location.href="https://s1.abyssus.games/jeu.php?page=ennemies";
  148. }
  149.  
  150.  
  151. function test() {
  152.  
  153. // --------------------------------------------------------------------------
  154. // Bloc Div : Différent en fonction des pages
  155. // --------------------------------------------------------------------------
  156. var newDiv = document.createElement("div");
  157. newDiv.id= "abyssusHelper";
  158. newDiv.style ="z-index: 100; position:fixed; top:2%; margin-left: auto; margin-right: auto;margin-top: -10px; border: 1px #FFFFFF solid;background:#092869;padding:1%;";
  159. document.getElementById('bas').appendChild(newDiv);
  160.  
  161. //----------------------------------------------------------------------------------------------------------
  162. //MULTIFLOOD CHAINE - TOUVER CIBLES LES PLUS PROCHES ET A PORTEE
  163. //----------------------------------------------------------------------------------------------------------
  164. if(document.URL.indexOf("ennemies")!=-1){
  165. var cibles = getCookie("AbyssusHelper_CiblesMF").split(",");
  166. var tmMoi;
  167. var ciblesAPortee = new Array();
  168. var tmciblesAPortee = new Array();
  169. var cible;
  170. var tableau;
  171.  
  172. if (cibles == "") {
  173. newDiv.innerHTML = '<center><span style=" border:1.5px solid white; background:#06C;"><font color="white">AbyssusHelper v' + version + '</font></span></center';
  174. } else {
  175. newDiv.innerHTML += '<font color="white">Multiflood en cours...</font>';
  176. //document.getElementById("ally").click();
  177. //alert(cibles);
  178. //var tableau = document.getElementById("table").getElementsByTagName("tr");
  179. try{
  180. tableau = Array.from(document.getElementById("table").getElementsByTagName("tr"));
  181. } catch (e){
  182. setTimeout(test, 200);
  183. }
  184. var tmCible = 0;
  185.  
  186. var contenuPage2 = Array.from(getPageTwo());
  187. contenuPage2.shift();
  188.  
  189. tableau.push.apply(tableau, contenuPage2);
  190. //enregistre notre TM de départ
  191. tmMoi = parseInt(tableau[1].cells[4].innerHTML.replace(/\s/g, ''));
  192.  
  193. //enregistre cibles à portée ainsi que leur TM de départ
  194. for (var ligne = 1; ligne < tableau.length; ligne++) {
  195. if (tableau[ligne].cells[5].innerHTML.indexOf("attaque") != -1) {
  196. cible = (tableau[ligne].cells[5].innerHTML.split('id=')[1]).split('"')[0];
  197. if (cibles.indexOf(cible) != -1) {
  198. //cible trouvée
  199. ciblesAPortee.push(cible);
  200. tmciblesAPortee.push(parseInt(tableau[ligne].cells[4].innerHTML.replace(/\s/g, '')));
  201. }
  202. }
  203. }
  204.  
  205. setCookie("AbyssusHelper_tmMoiMF", tmMoi, 1);
  206. setCookie("AbyssusHelper_tmcibleAPorteeMF", tmciblesAPortee, 1);
  207. setCookie("AbyssusHelper_cibleAPorteeMF", ciblesAPortee, 1);
  208. setCookie("AbyssusHelper_CiblesMF", "", -1);
  209.  
  210. //alert(ciblesAPortee);
  211. if (ciblesAPortee == "") {
  212. alert("Pas de cibles à portée...");
  213. document.location.href=("https://s1.abyssus.games/jeu.php?page=listemembre");
  214. } else {
  215. document.location.href=("https://s1.abyssus.games/jeu.php?page=attaque&id=" + ciblesAPortee[0]);
  216. }
  217. }
  218. }
  219.  
  220. //----------------------------------------------------------------------------------------------------------
  221. //MULTIFLOOD CHAINE - LANCER ATTAQUE
  222. //----------------------------------------------------------------------------------------------------------
  223.  
  224. else if(document.URL.indexOf("attaque") != -1) {
  225. ciblesAPortee= getCookie("AbyssusHelper_cibleAPorteeMF");
  226. tmciblesAPortee = getCookie("AbyssusHelper_tmcibleAPorteeMF");
  227. tmMoi = parseInt(getCookie("AbyssusHelper_tmMoiMF"));
  228.  
  229. if (ciblesAPortee != "") {
  230. //DO STUFF
  231. newDiv.innerHTML += '<font color="white">Multiflood en cours...</font>';
  232.  
  233. var ciblesAPortee_attaque = ciblesAPortee.split(",");
  234. var tmciblesAPortee_attaque = tmciblesAPortee.split(",");
  235.  
  236. var prise = multiflood_CalculVague(tmMoi, parseInt(tmciblesAPortee_attaque[0]));
  237. var priseInit = prise;
  238. if (prise > 0) {
  239.  
  240. //copié-collé de deeper - lancer l'attaque
  241. var token = $( "input[name='token']").val();
  242. var lieu = $( "select[name='lieu'] option:selected").val();
  243. var urlsend = $(location).attr('href');
  244. //distribue sur d'autres unités que REM si pas assez de REM:
  245. var sj = $( "input[name='SJ']").val();
  246. var s = $( "input[name='S']").val();
  247. var sc = $( "input[name='SC']").val();
  248. var r = $( "input[name='R']").val();
  249. var rb = $( "input[name='RB']").val();
  250. var m = $( "input[name='M']").val();
  251. var pp = $( "input[name='PP]").val();
  252. var b = $( "input[name='B']").val();
  253. var bc = $( "input[name='BC']").val();
  254. var grb = $( "input[name='GRB']").val();
  255. var oq = $( "input[name='OQ']").val();
  256. var oqc = $( "input[name='OQC']").val();
  257. var k = $( "input[name='K']").val();
  258. var l = $( "input[name='L']").val();
  259.  
  260. var uL = [sj, s, sc, r, rb, m, pp, b, bc, grb, oq, oqc, k, l];
  261. var fill = false;
  262. for (var jter=0; jter < uL.length; jter++) {
  263. var uniteMessy = "";
  264. if (typeof uL[jter] == 'undefined') {
  265. uniteMessy = "0";
  266. } else {
  267. uniteMessy = uL[jter];
  268. }
  269. var uniteCleanedUp = parseInt(uniteMessy.replace(/ /g,""));
  270. if (fill == true) {
  271. uL[jter] = 0;
  272. } else if (uniteCleanedUp >= prise) {
  273. fill = true;
  274. uL[jter] = prise;
  275. } else {
  276. prise -= uniteCleanedUp;
  277. }
  278. }
  279. $.ajax({
  280. dataType: "html",
  281. type: 'POST',
  282. async:false,
  283. url: urlsend,
  284. data : {token : token ,lieu : lieu, SJ: uL[0],S : uL[1] , SC : uL[2], R : uL[3], RB : uL[4], M : uL[5], PP : uL[6], B : uL[7], BC : uL[8], GRB : uL[9], OQ : uL[10], OQC : uL[11], K : uL[12], L : uL[13]},
  285. contentType: "application/x-www-form-urlencoded; charset=utf-8",
  286. success: function(data) {}
  287. });
  288. tmciblesAPortee_attaque[0] -= priseInit;
  289. tmMoi += priseInit;
  290.  
  291. } else {
  292. //passer à la prochaine cible
  293. ciblesAPortee_attaque.shift();
  294. tmciblesAPortee_attaque.shift();
  295. }
  296. setCookie("AbyssusHelper_tmMoiMF", tmMoi, 1);
  297. setCookie("AbyssusHelper_tmcibleAPorteeMF", tmciblesAPortee_attaque, 1);
  298. setCookie("AbyssusHelper_cibleAPorteeMF", ciblesAPortee_attaque, 1);
  299.  
  300.  
  301. if (ciblesAPortee_attaque.length > 0) {
  302. document.location.href=("https://s1.abyssus.games/jeu.php?page=attaque&id=" + ciblesAPortee_attaque[0]);
  303. } else {
  304. //Si voulu, lance reste de l'armée en ghost
  305. if (getCookie("AbyssusHelper_ghostAuto") == "true") {
  306. //ghostdejalance == true;
  307. token = $( "input[name='token']").val();
  308. lieu = $( "select[name='lieu'] option:selected").val();
  309. urlsend = $(location).attr('href');
  310. sj = $( "input[name='SJ']").val();
  311. s = $( "input[name='S']").val();
  312. sc = $( "input[name='SC']").val();
  313. r = $( "input[name='R']").val();
  314. rb = $( "input[name='RB']").val();
  315. m = $( "input[name='M']").val();
  316. pp = $( "input[name='PP]").val();
  317. b = $( "input[name='B']").val();
  318. bc = $( "input[name='BC']").val();
  319. grb = $( "input[name='GRB']").val();
  320. oq = $( "input[name='OQ']").val();
  321. oqc = $( "input[name='OQC']").val();
  322. k = $( "input[name='K']").val();
  323. l = $( "input[name='L']").val();
  324.  
  325. $.ajax({
  326. dataType: "html",
  327. type: 'POST',
  328. async:false,
  329. url: urlsend,
  330. data : {token : token ,lieu : lieu, SJ: sj, S : s, SC : sc, R : r, RB : rb, M : m, PP : pp, B : b, BC : bc, GRB : grb, OQ : oq, OQC : oqc, K : k, L : l},
  331. contentType: "application/x-www-form-urlencoded; charset=utf-8",
  332. success: function(data) {}
  333. });
  334. }
  335. //FINI, Cleanup
  336. setCookie("AbyssusHelper_tmMoiMF", "", -1);
  337. setCookie("AbyssusHelper_tmcibleAPorteeMF", "", -1);
  338. setCookie("AbyssusHelper_cibleAPorteeMF", "", -1);
  339. document.location.href="https://s1.abyssus.games/jeu.php?page=armee";
  340. }
  341.  
  342. } else {
  343. newDiv.innerHTML = '<center><span style=" border:1.5px solid white; background:#06C;"><font color="white">AbyssusHelper v' + version + '</font></span></center';
  344. newDiv.innerHTML += '<br/><center><div class="divmf" style=""><button id="floodOpti", class="envoi_mf ui-button ui-corner-all ui-widget">Flood optimisé</button><br><br></div></center>';
  345.  
  346. document.getElementById ("floodOpti").addEventListener(
  347. "click", function() {
  348. var idCible = document.location.href.split("id=")[1];
  349. var idCibleArr = [idCible];
  350. setCookie("AbyssusHelper_CiblesMF", idCibleArr, 1);
  351. document.location.href="https://s1.abyssus.games/jeu.php?page=ennemies";
  352. }, false
  353. );
  354. }
  355. }
  356. //----------------------------------------------------------------------------------------------------------
  357. //PAGE ACCUEIL - RAFRAICHIT COOKIES ET INDIQUE TROUPES A QUAI - AFFICHE PARAMETRES - CHANGELOG
  358. //----------------------------------------------------------------------------------------------------------
  359.  
  360. else if(document.URL.indexOf("?")==-1){
  361. var couveuse = 0;
  362. var nurserie = 0;
  363. var techniquedf = 0;
  364. var tdpHB = 0;
  365. var bonusTDP = 0;
  366. var bonusFDF = 0;
  367. var bonusCDF = 0;
  368. var tdp = 0;
  369. var niveauRR = 0;
  370. var niveauEcaille = 0;
  371. var morsure = 0;
  372. var morsureHB = 0;
  373. var lastVersion = getCookie("AbyssusHelper_version").split(".");
  374. var currentVersion = version.split(".");
  375.  
  376. //Page paramètres
  377. //alert(getCookie("AbyssusHelper_param"));
  378. if (getCookie("AbyssusHelper_param") == "true") {
  379. var contenu = "";
  380. var ghostAuto = getCookie("AbyssusHelper_ghostAuto");
  381. var antisondeAuto = getCookie("AbyssusHelper_antisondeAuto");
  382. var antisondeAutoTaille = getCookie("AbyssusHelper_antisondeAutoTaille");
  383. var prodInfo = getCookie("AbyssusHelper_prodInfo");
  384. var horloge = getCookie("AbyssusHelper_horloge");
  385. setCookie("AbyssusHelper_param", false, 1);
  386.  
  387.  
  388. newDiv.innerHTML = '<center><span style=" border:1.5px solid white; background:#06C;"><font color="white">Accueil - AbyssusHelperPB - v' + version + '</font></span></center>';
  389. newDiv.innerHTML += '<br/><hr color="blue"> </hr>';
  390. newDiv.innerHTML += '<font color="white"> Modification des paramètres...</font>';
  391.  
  392. contenu +='<center><h2>VOS PARAMÈTRES : </h2></center>';
  393. contenu +='<br/><form>';
  394. //ghost auto
  395. contenu +='<br/><input type="checkbox" name="ghost" id="ghost"';
  396. if (ghostAuto == "true") contenu += 'checked';
  397. contenu += '/>Ghost automatique en fin de (multi)flood';
  398. contenu += '<br/>';
  399. //antisondeAuto
  400. contenu +='<br/><input type="checkbox" name="antisonde" id="antisonde"';
  401. if (antisondeAuto == "true") contenu += 'checked';
  402. contenu += '/>Antisonde automatique à chaque visite de la page armée';
  403. //PV AntisondeAuto
  404. if (antisondeAuto == "true") {
  405. contenu +='<br/><input type="number" name="antisondeTaille" id="antisondeTaille" ';
  406. if (antisondeAutoTaille != "") {
  407. contenu += 'value="' + antisondeAutoTaille + '"';
  408. }
  409. contenu += '/> Points de vie de l\'antisonde';
  410. }
  411. contenu += '<br/>';
  412. //détails prod
  413. contenu +='<br/><input type="checkbox" name="prod" id="prod"';
  414. if (prodInfo == "true") contenu += 'checked';
  415. contenu += '/>Stats des unités avec prise en compte des niveaux de Morsure et Ecaille sur la page production d\'unités';
  416. contenu += '<br/>';
  417. //horloge
  418. contenu +='<br/><input type="checkbox" name="horlogeAH" id="horlogeAH"';
  419. if (horloge == "true") contenu += 'checked';
  420. contenu += '/>Horloge';
  421. contenu += '<br/>';
  422. contenu += '</form>';
  423.  
  424.  
  425. document.getElementById("recapitulatif").innerHTML = contenu;
  426.  
  427. //active inputs
  428.  
  429. document.getElementById('ghost').addEventListener('change', (event) => {
  430. if (event.target.checked) {
  431. setCookie("AbyssusHelper_ghostAuto", true, 7);
  432. } else {
  433. setCookie("AbyssusHelper_ghostAuto", false, 7);
  434. }
  435. });
  436. document.getElementById('antisonde').addEventListener('change', (event) => {
  437. if (event.target.checked) {
  438. setCookie("AbyssusHelper_antisondeAuto", true, 7);
  439. setCookie("AbyssusHelper_param", true, 1);
  440. document.location.href="https://s1.abyssus.games/jeu.php";
  441. } else {
  442. setCookie("AbyssusHelper_antisondeAuto", false, 7);
  443. setCookie("AbyssusHelper_param", true, 1);
  444. document.location.href="https://s1.abyssus.games/jeu.php";
  445. }
  446. });
  447. document.getElementById('antisondeTaille').addEventListener('change', (event) => {
  448. setCookie("AbyssusHelper_antisondeAutoTaille", event.target.value, 7);
  449. });
  450. document.getElementById('prod').addEventListener('change', (event) => {
  451. if (event.target.checked) {
  452. setCookie("AbyssusHelper_prodInfo", true, 7);
  453. } else {
  454. setCookie("AbyssusHelper_prodInfo", false, 7);
  455. }
  456. });
  457. document.getElementById('horlogeAH').addEventListener('change', (event) => {
  458. if (event.target.checked) {
  459. setCookie("AbyssusHelper_horloge", true, 7);
  460. } else {
  461. setCookie("AbyssusHelper_horloge", false, 7);
  462. }
  463. });
  464.  
  465. } else if (parseInt(lastVersion[0]) < parseInt(currentVersion[0]) || parseInt(lastVersion[1]) < parseInt(currentVersion[1]) || parseInt(lastVersion[2]) < parseInt(currentVersion[2])) {
  466. //changelog
  467. setCookie("AbyssusHelper_version", version, 7);
  468. newDiv.innerHTML = '<center><span style=" border:1.5px solid white; background:#06C;"><font color="white">Accueil - AbyssusHelperPB - v' + version + '</font></span></center>';
  469. newDiv.innerHTML += '<br/><hr color="blue"> </hr>';
  470. newDiv.innerHTML += '<font color="white">Changelog - liste des nouveautés</font>';
  471.  
  472. contenu ='<center><h2>AbyssusHelper a été mis à jour... Quoi de neuf ?</h2></center>';
  473. contenu += changelog;
  474. document.getElementById("recapitulatif").innerHTML = contenu;
  475.  
  476. } else {
  477. //Rafraichit les cookies de paramètres
  478. if (getCookie("AbyssusHelper_ghostAuto") != "") {
  479. setCookie("AbyssusHelper_ghostAuto", getCookie("AbyssusHelper_ghostAuto"), 7);
  480. }
  481. if (getCookie("AbyssusHelper_antisondeAuto") != "") {
  482. setCookie("AbyssusHelper_antisondeAuto", getCookie("AbyssusHelper_antisondeAuto"), 7);
  483. }
  484. if (getCookie("AbyssusHelper_antisondeAutoTaille") != "") {
  485. setCookie("AbyssusHelper_antisondeAutoTaille", getCookie("AbyssusHelper_antisondeAutoTaille"), 7);
  486. }
  487. if (getCookie("AbyssusHelper_horloge") != "") {
  488. setCookie("AbyssusHelper_horloge", getCookie("AbyssusHelper_horloge"), 7);
  489. }
  490.  
  491. var statsDiv = document.getElementById("recapitulatif");
  492.  
  493. var bonus = statsDiv.getElementsByTagName('center')[1].innerHTML;
  494. bonusTDP = parseInt(bonus.split("+")[1].split(" ")[0]);
  495. bonusFDF = parseInt(bonus.split("+")[2].split(" ")[0]);
  496. bonusCDF = parseInt(bonus.split("+")[3].split(" ")[0]);
  497.  
  498. for (var i=0; i<11; i++) {
  499. if (statsDiv.getElementsByTagName('tr')[i].cells[0].innerHTML.indexOf("Couveuse") != -1) {
  500. if (statsDiv.getElementsByTagName('tr')[i].cells[1].innerHTML.indexOf("+") != -1) {
  501. var temp = statsDiv.getElementsByTagName('tr')[i].cells[1].innerHTML.split("+");
  502. couveuse = parseInt(temp[0]);
  503.  
  504. } else {
  505. couveuse = parseInt(statsDiv.getElementsByTagName('tr')[i].cells[1].innerHTML);
  506. }
  507. }
  508. if (statsDiv.getElementsByTagName('tr')[i].cells[0].innerHTML.indexOf("Nurserie") != -1) {
  509. if (statsDiv.getElementsByTagName('tr')[i].cells[1].innerHTML.indexOf("+") != -1) {
  510. temp = statsDiv.getElementsByTagName('tr')[i].cells[1].innerHTML.split("+");
  511. nurserie = parseInt(temp[0]);
  512.  
  513. } else {
  514. nurserie = parseInt(statsDiv.getElementsByTagName('tr')[i].cells[1].innerHTML);
  515. }
  516. }
  517. if (statsDiv.getElementsByTagName('tr')[i].cells[2].innerHTML.indexOf("Technique") != -1) {
  518. if (statsDiv.getElementsByTagName('tr')[i].cells[3].innerHTML.indexOf("+") != -1) {
  519. temp = statsDiv.getElementsByTagName('tr')[i].cells[3].innerHTML.split("+");
  520. techniquedf = parseInt(temp[0]);
  521.  
  522. } else {
  523. techniquedf = parseInt(statsDiv.getElementsByTagName('tr')[i].cells[3].innerHTML);
  524. }
  525. }
  526. if (statsDiv.getElementsByTagName('tr')[i].cells[2].innerHTML.indexOf("caille") != -1) {
  527. if (statsDiv.getElementsByTagName('tr')[i].cells[3].innerHTML.indexOf("+") != -1) {
  528. temp = statsDiv.getElementsByTagName('tr')[i].cells[3].innerHTML.split("+");
  529. niveauEcaille = parseInt(temp[0]);
  530.  
  531. } else {
  532. niveauEcaille = parseInt(statsDiv.getElementsByTagName('tr')[i].cells[3].innerHTML);
  533. }
  534. }
  535. if (statsDiv.getElementsByTagName('tr')[i].cells[2].innerHTML.indexOf("Morsure") != -1) {
  536. if (statsDiv.getElementsByTagName('tr')[i].cells[3].innerHTML.indexOf("+") != -1) {
  537. temp = statsDiv.getElementsByTagName('tr')[i].cells[3].innerHTML.split("+");
  538. morsureHB = parseInt(temp[0]);
  539.  
  540. } else {
  541. morsureHB = parseInt(statsDiv.getElementsByTagName('tr')[i].cells[3].innerHTML);
  542. }
  543. }
  544. if (statsDiv.getElementsByTagName('tr')[i].cells[0].innerHTML.indexOf("rocheux") != -1) {
  545. if (statsDiv.getElementsByTagName('tr')[i].cells[1].innerHTML.indexOf("+") != -1) {
  546. temp = statsDiv.getElementsByTagName('tr')[i].cells[1].innerHTML.split("+");
  547. niveauRR = parseInt(temp[0]);
  548.  
  549. } else {
  550. niveauRR = parseInt(statsDiv.getElementsByTagName('tr')[i].cells[1].innerHTML);
  551. }
  552. }
  553. }
  554.  
  555. tdpHB = couveuse + nurserie + techniquedf;
  556. tdp = tdpHB + bonusTDP;
  557. morsure = morsureHB + bonusFDF;
  558.  
  559. setCookie("AbyssusHelper_morsureHB", morsureHB, 7);
  560. setCookie("AbyssusHelper_morsure", morsure, 7);
  561. setCookie("AbyssusHelper_bonusCDF", bonusCDF, 7);
  562. setCookie("AbyssusHelper_tdpHB", tdpHB, 7);
  563. setCookie("AbyssusHelper_tdp", tdp, 7);
  564. setCookie("AbyssusHelper_niveauRR", niveauRR, 7);
  565. setCookie("AbyssusHelper_niveauEcaille", niveauEcaille, 7);
  566. setCookie("AbyssusHelper_version", version, 7);
  567.  
  568. //Troupes qui dorment
  569. function analyseTexte(texte) { //Analyse le texte "Troupes en attaque..."
  570. var CDFreturn = 0;
  571. texte = texte.replace(/\n/g, " ");
  572. texte = texte.replace(/,/g, "");
  573. texte = texte.replace(/[\D?\d?]Troupes en attaque :\s/, "");
  574.  
  575. //Troupe
  576. texte = texte.replace(/Remora/, "Rem");
  577. texte = texte.replace(/Petite Roussette/, "PR");
  578. texte = texte.replace(/Roussette/, "R");
  579. texte = texte.replace(/Grande Roussette/, "GR");
  580. texte = texte.replace(/Requin P[ée]lerin/, "RP");
  581. texte = texte.replace(/Mur[èe]ne/, "M");
  582. texte = texte.replace(/Mur[èe]ne Electrique/, "ME");
  583. texte = texte.replace(/Requin Marteau/, "RM");
  584. texte = texte.replace(/Requin L[ée]zard/, "RL");
  585. texte = texte.replace(/Requin L[ée]zard V[ée]t[ée]ran/, "RLV");
  586. texte = texte.replace(/Requin Blanc/, "RB");
  587. texte = texte.replace(/Grand Requin Blanc/, "GRB");
  588. texte = texte.replace(/Kraken/, "K");
  589. texte = texte.replace(/Kraken Immortel/, "KI");
  590.  
  591.  
  592.  
  593. var ArrayTexte = texte.split(/\s+/);
  594.  
  595.  
  596. getNbparUnite("Rem");
  597. getNbparUnite("PR");
  598. getNbparUnite("R");
  599. getNbparUnite("GR");
  600. getNbparUnite("RP");
  601. getNbparUnite("M");
  602. getNbparUnite("ME");
  603. getNbparUnite("RM");
  604. getNbparUnite("RL");
  605. getNbparUnite("RLV");
  606. getNbparUnite("RB");
  607. getNbparUnite("GRB");
  608. getNbparUnite("K");
  609. getNbparUnite("KI");
  610.  
  611. function getNbparUnite(Unite) { //Récupère le nombre associé à l'unité (en paramètre)
  612. var plc = ArrayTexte.indexOf(Unite);
  613. var NbTroupe = "";
  614. if (plc != -1) {
  615. var OK = true;
  616. while (OK) {
  617. plc--;
  618. if (/\d{1,3}/.test(ArrayTexte[plc])) {
  619. NbTroupe = ArrayTexte[plc] + NbTroupe;
  620. } else {
  621. OK = false;
  622. }
  623. }
  624. CDFreturn += parseInt(NbTroupe);
  625. }
  626. }
  627. return CDFreturn;
  628. }
  629.  
  630.  
  631. //Nombre de troupe au total
  632. var CDF = 0;
  633. for(var a=0; a<14; a++){
  634. CDF += parseInt(statsDiv.querySelectorAll("table")[1].children[0].children[a].children[1].textContent.replace(/ /g,""));
  635.  
  636. };
  637. //Nombre de troupe en mouvement (dans des attaques)
  638. var CDFenMVT = 0;
  639. for (var z=0; z< document.querySelectorAll("font i").length; z++){
  640. if (document.querySelectorAll("font i")[z].childNodes[2].textContent != ""){ //Si il n'y a pas le mot "Annuler"
  641. CDFenMVT += analyseTexte(document.querySelectorAll("font i")[z].childNodes[2].textContent);
  642. } else { //Si il y a le mot "Annuler"
  643. CDFenMVT += analyseTexte(document.querySelectorAll("font i")[z].childNodes[3].textContent);
  644. }
  645. }
  646.  
  647. var CDFdif = CDF - CDFenMVT; // Nombre de troupes stationnées.
  648.  
  649. //Ajout du texte sur la page.
  650. statsDiv.getElementsByTagName('center')[1].innerHTML = '<br><strong>Nombre de troupes stationnées chez vous: <a href="https://s1.abyssus.games/jeu.php?page=armee">' + CDFdif.toLocaleString(undefined,{ maximumFractionDigits: 0 }) + '</a></strong><br><br>'+ statsDiv.getElementsByTagName('center')[1].innerHTML;
  651.  
  652. //DEBUG
  653. //alert(tdpHB);
  654. //alert(tdp);
  655. //alert(bonusFDF);
  656. //alert(bonusCDF);
  657. newDiv.innerHTML = '<center><span style=" border:1.5px solid white; background:#06C;"><font color="white">Accueil - AbyssusHelperPB - v' + version + '</font></span></center>';
  658. newDiv.innerHTML += '<br/><hr color="blue"> </hr>';
  659. newDiv.innerHTML += '<font color="white"> Les cookies ont bien été mis à jour</font>';
  660. newDiv.innerHTML += '<br/><hr color="blue"> </hr>';
  661. newDiv.innerHTML += '<br/><center><div class="divmf" style=""><button id="parametresAH", class="envoi_mf ui-button ui-corner-all ui-widget">Paramètres</button><br><br></div></center>';
  662.  
  663.  
  664.  
  665. //activer le bouton
  666. document.getElementById ("parametresAH").addEventListener(
  667. "click", function() {
  668. setCookie("AbyssusHelper_param", true, 1);
  669. document.location.href="https://s1.abyssus.games/jeu.php";
  670. }, false
  671. );
  672. }
  673. }
  674.  
  675. //----------------------------------------------------------------------------------------------------------
  676. //ARMEE
  677. //----------------------------------------------------------------------------------------------------------
  678. else if(document.URL.indexOf("armee")!=-1) {
  679. newDiv.innerHTML = '<center><span style=" border:1.5px solid white; background:#06C;"><font color="white">Armée</font></span></center>';
  680. newDiv.innerHTML += '<br/><hr color="blue"> </hr>';
  681. if (getCookie("AbyssusHelper_antisondeAuto") == "true") {
  682. var indicateur = 'activée</font>';
  683. } else {
  684. indicateur = 'désactivée</font>';
  685. }
  686.  
  687. newDiv.innerHTML += '<br/><font color="white">Antisonde automatique : <strong>' + indicateur + '</strong></font>';
  688. if (getCookie("AbyssusHelper_antisondeAuto") == "true") {
  689. //place l'antisonde !
  690.  
  691. var taille_antisonde = parseInt(getCookie("AbyssusHelper_antisondeAutoTaille").replace(/ /g,""));
  692. niveauRR = parseInt(getCookie("AbyssusHelper_niveauRR"));
  693. niveauEcaille = parseInt(getCookie("AbyssusHelper_niveauEcaille"));
  694. var unitésEnTM = parseInt(document.getElementById("bloc").getElementsByTagName("table")[0].getElementsByTagName("tr")[15].cells[1].innerHTML.replace(/ /g,""));
  695. var vieEnRR = parseInt(document.getElementById("bloc").getElementsByTagName("table")[0].getElementsByTagName("tr")[15].cells[2].innerHTML.replace(/ /g,""));
  696.  
  697. var sj_bdc = parseInt(document.getElementById("bloc").getElementsByTagName("table")[0].innerHTML.split('data-type="SJ_loge" data-nb="')[1].split('" id="SJ"')[0]);
  698. var s_bdc = parseInt(document.getElementById("bloc").getElementsByTagName("table")[0].innerHTML.split('data-type="S_loge" data-nb="')[1].split('" id="S"')[0]);
  699. var rb_bdc = parseInt(document.getElementById("bloc").getElementsByTagName("table")[0].innerHTML.split('data-type="RB_loge" data-nb="')[1].split('" id="RB"')[0]);
  700. var m_bdc = parseInt(document.getElementById("bloc").getElementsByTagName("table")[0].innerHTML.split('data-type="M_loge" data-nb="')[1].split('" id="M"')[0]);
  701.  
  702. var token_bdc = document.getElementById("bloc").innerHTML.split('href="jeu.php?page=armee&amp;action=barriere&amp;token=')[1].split('"')[0];
  703.  
  704. if(getCookie("AbyssusHelper_antisondeAutoStage") == "") {
  705. setCookie("AbyssusHelper_antisondeAutoStage", 0, 1);
  706. document.location.href="https://s1.abyssus.games/jeu.php?page=armee&action=barriere&token=" + token_bdc;
  707. } else if (unitésEnTM == 0) {
  708. if (sj_bdc != 0) {
  709. $.post('ajax/deplacement_armee.php', {type:"SJ", nb:1}, function(data){
  710. document.location.href='jeu.php?page=armee';
  711. });
  712. } else if (s_bdc != 0) {
  713. $.post('ajax/deplacement_armee.php', {type:"S", nb:1}, function(data){
  714. document.location.href='jeu.php?page=armee';
  715. });
  716. } else if (sc_bdc != 0) {
  717. $.post('ajax/deplacement_armee.php', {type:"SC", nb:1}, function(data){
  718. document.location.href='jeu.php?page=armee';
  719. });
  720. } else if (r_bdc != 0) {
  721. $.post('ajax/deplacement_armee.php', {type:"R", nb:1}, function(data){
  722. document.location.href='jeu.php?page=armee';
  723. });
  724. }
  725. } else if (vieEnRR < taille_antisonde && getCookie("AbyssusHelper_antisondeAutoStage") != "-1") {
  726. //il reste de l'antisonde à placer
  727. if (s_bdc != 0 && parseInt(getCookie("AbyssusHelper_antisondeAutoStage")) < 1) {
  728. var vie_uniteHB = 70;
  729. var vie_necessaire = taille_antisonde;
  730. var troupes_necessaires = Math.ceil(vie_necessaire / (vie_uniteHB*(1+0.1+3*0.05+(niveauEcaille/10))));
  731. var troupes_bougees = Math.min(troupes_necessaires, s_bdc);
  732. $.post('ajax/deplacement_armee.php', {type:"S_dome", nb:troupes_bougees}, function(data){
  733. setCookie("AbyssusHelper_antisondeAutoStage", 1, 1);
  734. document.location.href='jeu.php?page=armee';
  735. });
  736. } else if (rb_bdc != 0 && parseInt(getCookie("AbyssusHelper_antisondeAutoStage")) < 2) {
  737. vie_uniteHB = 1250;
  738. vie_necessaire = taille_antisonde - vieEnRR;
  739. troupes_necessaires = Math.ceil(vie_necessaire / (vie_uniteHB*(1+0.1+3*0.05+(niveauEcaille/10))));
  740. troupes_bougees = Math.min(troupes_necessaires, rb_bdc);
  741. $.post('ajax/deplacement_armee.php', {type:"RB_dome", nb:troupes_bougees}, function(data){
  742. setCookie("AbyssusHelper_antisondeAutoStage", 2, 1);
  743. document.location.href='jeu.php?page=armee';
  744. });
  745. } else if (m_bdc != 0 && parseInt(getCookie("AbyssusHelper_antisondeAutoStage")) < 3) {
  746. vie_uniteHB = 20;
  747. vie_necessaire = taille_antisonde - vieEnRR;
  748. troupes_necessaires = Math.ceil(vie_necessaire / (vie_uniteHB*(1+0.1+3*0.05+(niveauEcaille/10))));
  749. troupes_bougees = Math.min(troupes_necessaires, m_bdc);
  750. $.post('ajax/deplacement_armee.php', {type:"M_dome", nb:troupes_bougees}, function(data){
  751. setCookie("AbyssusHelper_antisondeAutoStage", 3, 1);
  752. document.location.href='jeu.php?page=armee';
  753. });
  754. } else if (sj_bdc != 0 && parseInt(getCookie("AbyssusHelper_antisondeAutoStage")) < 4) {
  755. vie_uniteHB = 2;
  756. vie_necessaire = taille_antisonde - vieEnRR;
  757. troupes_necessaires = Math.ceil(vie_necessaire / (vie_uniteHB*(1+0.1+3*0.05+(niveauEcaille/10))));
  758. troupes_bougees = Math.min(troupes_necessaires, sj_bdc);
  759. $.post('ajax/deplacement_armee.php', {type:"SJ_dome", nb:troupes_bougees}, function(data){
  760. setCookie("AbyssusHelper_antisondeAutoStage", 4, 1);
  761. document.location.href='jeu.php?page=armee';
  762. });
  763. } else {
  764. setCookie("AbyssusHelper_antisondeAutoStage", -1, 1);
  765. location.reload();
  766. }
  767. } else {
  768. setCookie("AbyssusHelper_antisondeAutoStage", "", 1);
  769. }
  770. }
  771. }
  772.  
  773.  
  774. //----------------------------------------------------------------------------------------------------------
  775. //Construction
  776. //----------------------------------------------------------------------------------------------------------
  777. else if(document.URL.indexOf("construction")!=-1){
  778. newDiv.innerHTML = '<center><span style=" border:1.5px solid white; background:#06C;"><font color="white">Construction</font></span></center>';
  779. }
  780.  
  781. //----------------------------------------------------------------------------------------------------------
  782. //Production D'Unités
  783. //----------------------------------------------------------------------------------------------------------
  784. else if(document.URL.indexOf("productionunite")!=-1){
  785. var pu_tdpHB = getCookie("AbyssusHelper_tdpHB");
  786. var pu_tdp = getCookie("AbyssusHelper_tdp");
  787. var pu_morsureHB = getCookie("AbyssusHelper_morsureHB");
  788. var pu_morsure =getCookie("AbyssusHelper_morsure");
  789. var pu_ecaille = getCookie("AbyssusHelper_niveauEcaille")
  790.  
  791. newDiv.innerHTML = '<center><span style=" border:1.5px solid white; background:#06C;"><font color="white">Production d&apos;unités</font></span></center>';
  792. newDiv.innerHTML += '<br/><hr color="blue"> </hr>';
  793.  
  794. /* newDiv.innerHTML += '<font color="white">Votre TDP : </font><font color="white">' + pu_tdp + ' (' + pu_tdpHB + 'HB)</font><br/>';
  795. newDiv.innerHTML += '<font color="white">Morsure&ensp;&nbsp;&nbsp; : </font><font color="white">' + pu_morsure + ' (' + pu_morsureHB + 'HB)</font> </br>';
  796. newDiv.innerHTML += '<font color="white">Ecaille : </font><font color="white">' + pu_ecaille + '</font> </br>';*/
  797. newDiv.innerHTML += '<table><tbody><tr><td><font color="white">TDP</font></td><td><font color="white">' + pu_tdp + ' (' + pu_tdpHB + 'HB)</font></td></tr><tr><td><font color="white">Morsure</font></td><td><font color="white">' + pu_morsure + ' (' + pu_morsureHB + 'HB)</font></td></tr><tr><td><font color="white">Ecaille</font></td><td><font color="white">' + pu_ecaille + ' </font></td></tr></tbody></table>';
  798.  
  799. if(getCookie("AbyssusHelper_prodInfo") == "true") {
  800. $('.nb').keyup(function(){
  801.  
  802. var vie = parseInt($(this).parent().parent().parent().find('.petittexte:eq(1)').text().replace(/\s/g, ''));
  803. var fdf = parseInt($(this).parent().parent().parent().find('.petittexte:eq(2)').text().replace(/\s/g, ''));
  804. var fdd = parseInt($(this).parent().parent().parent().find('.petittexte:eq(3)').text().replace(/\s/g, ''));
  805.  
  806. $(this).parent().parent().parent().find('.petittexte:eq(1)').text(vie.toLocaleString(undefined,{ maximumFractionDigits: 0 }) + ' (' + (vie*pu_ecaille/10).toLocaleString(undefined,{ maximumFractionDigits: 0 })+')');
  807. $(this).parent().parent().parent().find('.petittexte:eq(2)').text(fdf.toLocaleString(undefined,{ maximumFractionDigits: 0 }) + ' (' + (fdf*pu_morsure/10).toLocaleString(undefined,{ maximumFractionDigits: 0 })+')');
  808. $(this).parent().parent().parent().find('.petittexte:eq(3)').text(fdd.toLocaleString(undefined,{ maximumFractionDigits: 0 }) + ' (' + (fdd*pu_morsure/10).toLocaleString(undefined,{ maximumFractionDigits: 0 })+')');
  809.  
  810. });
  811. }
  812.  
  813. }
  814. //----------------------------------------------------------------------------------------------------------
  815. //Laboratoire
  816. //----------------------------------------------------------------------------------------------------------
  817.  
  818. else if(document.URL.indexOf("laboratoire")!=-1){
  819.  
  820. newDiv.innerHTML = '<center><span style=" border:1.5px solid white; background:#06C;"><font color="white">Laboratoire</font></span></center>';
  821.  
  822. }
  823.  
  824. //----------------------------------------------------------------------------------------------------------
  825. //Quete
  826. //----------------------------------------------------------------------------------------------------------
  827.  
  828. else if(document.URL.indexOf("quete")!=-1){
  829.  
  830. newDiv.innerHTML = '<center><span style=" border:1.5px solid white; background:#06C;"><font color="white">Quêtes d&apos;Alliance</font></span></center>';
  831. newDiv.innerHTML += '<br/><hr color="blue"> </hr>';
  832. newDiv.innerHTML += '<a target="_blank" href="https://askigame.000webhostapp.com/Abyssus/QueteAlly/">Logs des quêtes</a>';
  833. }
  834.  
  835.  
  836. //----------------------------------------------------------------------------------------------------------
  837. //ALLIANCE
  838. //----------------------------------------------------------------------------------------------------------
  839. else if(document.URL.indexOf("listemembre")!=-1){
  840. var totalTM =0;
  841.  
  842. //Couleurs et rôles
  843. var scriptElement = document.createElement('script');
  844. scriptElement.src = 'https://askigame.000webhostapp.com/ServerPHP/AffAbyo0o/SChaine.php';
  845.  
  846. document.body.appendChild(scriptElement);
  847.  
  848.  
  849.  
  850. newDiv.innerHTML = '<center><span style=" border:1.5px solid white; background:#06C;"><font color="white">Alliance</font></span></center>';
  851. var str = document.getElementById('bloc').getElementsByTagName('center')[0].innerHTML;
  852.  
  853. var strSub;
  854. strSub = str.split("Nombre de membre : ")[1];
  855. strSub = strSub.split("<")[0];
  856.  
  857. var nbMembre = parseInt(strSub);
  858.  
  859. //Nombre membres
  860. newDiv.innerHTML += '<br/><hr color="blue"> </hr>';
  861. //newDiv.innerHTML += '<font color="white">Nombre de membre : </font>' + '<font color="white">' + nbMembre +'</font>';
  862.  
  863. //Calcul total membres
  864. for (var iter=1; iter < nbMembre +1; iter++) {
  865. var stringTmMembre=(document.getElementById('tableaumembre').getElementsByTagName('tr')[iter].cells[5].innerHTML).replace(/ /g,"");
  866. var tmMembre = parseInt(stringTmMembre);
  867. totalTM = totalTM + tmMembre;
  868. }
  869.  
  870. var tmMoyen = Math.floor(totalTM/nbMembre);
  871.  
  872. //Format des nombres, en fonction de la localisation du client
  873. var totalTmStr = totalTM.toLocaleString(
  874. undefined,
  875. { maximumFractionDigits: 0 }
  876. );
  877. var tmMoyenStr = tmMoyen.toLocaleString(
  878. undefined,
  879. { maximumFractionDigits: 0 }
  880. );
  881.  
  882. //calcule difference par rapport à la dernière fois.
  883. var tmAllyOld = getCookie("AbyssusHelper_tmAlly");
  884. if (tmAllyOld =="") {
  885. setCookie("AbyssusHelper_tmAlly", totalTM, 7);
  886. }
  887.  
  888. var tmDiff = totalTM - tmAllyOld;
  889.  
  890. if (tmDiff < 0) tmDiff = 0-tmDiff;
  891.  
  892. var tmDiffStr = tmDiff.toLocaleString(
  893. undefined,
  894. { maximumFractionDigits: 0 }
  895. );
  896.  
  897. newDiv.innerHTML += '<font color="white">Total TM : </font><font color="white">' + totalTmStr + ' <img src="images/eau.png" alt="terrain" style="vertical-align:center;" height="15"> </font>';
  898. if (tmAllyOld == ""){
  899. }else if (tmAllyOld < totalTM) {
  900. newDiv.innerHTML += '<br/><font color="chartreuse">+</font><font color="chartreuse">' + tmDiffStr + '</font>';
  901. setCookie("AbyssusHelper_tmAlly", totalTM, 7);
  902. } else if (tmAllyOld > totalTM) {
  903. newDiv.innerHTML += '<br/><font color="red"><strong>TM MANQUANT: ' + tmDiffStr + '</strong><a href="https://s1.abyssus.games/jeu.php#supprNotif' + totalTM + '"><img src="images/supprimer.png" alt="supprimer" style="vertical-align:center;" height="15"></a></font>';
  904. //rafraichit cookie avec la même valeur qu'avant: l'avertissement reste jusqua ce que le terrain soit récupéré
  905. setCookie("AbyssusHelper_tmAlly", tmAllyOld, 7);
  906. }
  907. newDiv.innerHTML += '<br/><font color="white">Moyenne TM : </font><font color="white">' + tmMoyenStr + ' <img src="images/eau.png" alt="terrain" style="vertical-align:center;" height="15"> </font>';
  908. newDiv.innerHTML += '<hr color="blue"> </hr>';
  909.  
  910. //newDiv.innerHTML += '<br/>' + '<center><span style="border:1.5px solid white; background:#06C;"><font color="white">Rôle dans la chaine</font></span></center>';
  911.  
  912. //newDiv.innerHTML += '<br/>' + '<center><span style="border:1.5px solid white; background:#06C"><font color="white">Multiflood</font></span></center>';
  913.  
  914.  
  915.  
  916. newDiv.innerHTML += '<br/><center><div class="divmf" style=""><button id="multifloodChaine", class="envoi_mf ui-button ui-corner-all ui-widget">Envoyer MultiFlood</button><br><br></div></center>';
  917.  
  918.  
  919.  
  920. //activer le bouton
  921. document.getElementById ("multifloodChaine").addEventListener(
  922. "click", multiflood_Chaine, false
  923. );
  924. }
  925. //----------------------------------------------------------------------------------------------------------
  926.  
  927. else{
  928. newDiv.innerHTML = '<center><span style=" border:1.5px solid white; background:#06C;"><font color="white">AbyssusHelper v' + version + '</font></span></center';
  929.  
  930. }
  931. //horloge
  932. if(getCookie("AbyssusHelper_horloge") == "true") {
  933. var horloge_active = document.createElement("TD");
  934. horloge_active.append(document.createTextNode("Horloge : active"));
  935. var horloge_valeur = document.createElement("TD");
  936. var d = new Date();
  937. var h = d.getHours();
  938. if(h<10) {
  939. h = "0"+h;
  940. }
  941. var minutes = d.getMinutes();
  942. if(minutes<10) {
  943. minutes = "0"+minutes;
  944. }
  945. var secondes = d.getSeconds();
  946. if(secondes<10) {
  947. secondes = "0"+secondes;
  948. }
  949. horloge_valeur.innerHTML = '<img src="images/chrono.png" height="22"> '+h+':'+minutes+':'+secondes;
  950. setInterval(function(){
  951. var d = new Date();
  952. var h = d.getHours();
  953. if(h<10) {
  954. h = "0"+h;
  955. }
  956. var minutes = d.getMinutes();
  957. if(minutes<10) {
  958. minutes = "0"+minutes;
  959. }
  960. var secondes = d.getSeconds();
  961. if(secondes<10) {
  962. secondes = "0"+secondes;
  963. }
  964. horloge_valeur.innerHTML = '<img src="images/chrono.png" height="22"> '+h+':'+minutes+':'+secondes;
  965. }, 1000);
  966.  
  967. var row0 = document.getElementById("ressource").getElementsByTagName("tr")[0];
  968. row0.insertBefore(horloge_active, row0.childNodes[0]);
  969. var row1 = document.getElementById("ressource").getElementsByTagName("tr")[1];
  970. row1.insertBefore(horloge_valeur, row1.childNodes[0]);
  971.  
  972. }
  973. }
  974. setTimeout(test, delay);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement