NOTICE: By continued use of this site you understand and agree to the binding Terms of Service and Privacy Policy.
// ==UserScript== // @name Thaanis-Luxe // @namespace Thaanis-luxe.com // @description Thaanis-Luxe : script pour identifier facilement les caractéristiques luxes d'un objet (Contactez Ulysse in game) // @include http://www.monde-de-thaanis.com/jeu/perso/profil.php?cat=equip // @include http://www.monde-de-thaanis.com/jeu/perso/profil.php?cat=bazar // @require http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js // @downloadURL https://openuserjs.org/install/zogre/Thaanis-Luxe.user.js // @version 1.3.2 // @grant none // ==/UserScript== //var childrent = document.getElementsByTagName("a"); var childrenbr; var childrentd = document.getElementsByTagName("td"); var tmp=''; var used=''; var lienmenu=0; var tabLux = new Array(); //Tête var BAN = {match: "Bandeau (", Poids: "3", ARM: "3", Vue: "1"}; var BDM = {match: "Bandeau de magie", Poids: "10", ARM: "1", PM: "9", Vue: "0"}; var CAC = {match: "Casque à cornes", Poids: "15", ATT: "-1", DEF: "-2", DEG: "7", ARM: "9", Vue: "-2"}; var CDC = {match: "Casque de chevalier", Poids: "15", ARM: "13", Vue: "-5", Cycle: "5"}; var CEC = {match: "Casque en cuir", Poids: "5", ARM: "6", Vue: "-1", Cycle: "2"}; var CEM = {match: "Casque en métal", Poids: "10", ARM: "9", Vue: "-2", Cycle: "2"}; var CAO = {match: "Casque en os", Poids: "15", ATT: "7", DEF: "-2", ARM: "7", Vue: "-1"}; var CDM = {match: "Chapeau de mage", Poids: "10", ATT: "-2", DEF: "1", PM: "8", DM: "6", Vue: "-2"}; var HTC = {match: "Heaume à tête de crapaud", Poids: "26", DEF: "-5", ARM: "15", Vue: "-5"}; var JUM = {match: "Jumelles", Poids: "5", ATT: "0", DEF: "-1", Vue: "4"}; //Cou var PLM = {match: "Amulette \"pare-la-mort\"", Poids: "3", PM: "-2", DM: "-1", Comp: "-2", Magie: "-5"}; var ATT = {match: "Amulette terre à terre", Poids: "2", PM: "-2", DM: "-2", Comp: "3", Magie: "-1"}; var COL = {match: "Colletin (", Poids: "5", ARM: "3"}; var CRE = {match: "Colletin renforcé", Poids: "8", ATT: "-1", DEF: "-1", ARM: "5"}; var CAN = {match: "Collier anticyclownique", Poids: "2", PM: "-2", DM: "0", Comp: "-1", Magie: "-1"}; var CPS = {match: "Collier psychique", Poids: "5", ARM: "-2", PM: "5", DM: "5"}; var TAL = {match: "Talisman", Poids: "3", PM: "3", DM: "3"}; //Bras droit var DAG = {match: "Dague", Poids: "7", ATT: "2", DEF: "2", ARM: "0", DEG: "3"}; var ECO = {match: "Epée courte", Poids: "20", ATT: "-5", DEF: "2", DEG: "12"}; var ELO = {match: "Epée longue", Poids: "25", ATT: "-15", DEF: "-4", DEG: "20"}; var FLE = {match: "Fleuret", Poids: "15", ATT: "9", DEF: "9", DEG: "-8", ARM: "-1"}; var GAN = {match: "Gantelet", Poids: "14", ATT: "-5", DEF: "6", DEG: "3", ARM: "6", Comp: "-1"}; var HCT = {match: "Hachette", Poids: "20", ATT: "5", DEF: "-5", DEG: "10"}; var LEV = {match: "Levantine", Poids: "14", ATT: "4", DEF: "4", DEG: "4"}; var RAP = {match: "Rapière", Poids: "20", ATT: "-8", DEF: "0", DEG: "15"}; var SIC = {match: "Sica", Poids: "10", ATT: "1", DEF: "2", DEG: "5"}; //Bras gauche var ASP = {match: "Aspis", Poids: "35", ATT: "-5", DEF: "-1", DEG: "-8", ARM: "20"}; var BNO = {match: "Bouclier normand", Poids: "20", ATT: "-7", DEF: "5", DEG: "-5", ARM: "12"}; var ECU = {match: "Ecu", Poids: "10", ATT: "-2", DEF: "2", DEG: "2", ARM: "3"}; var KDP = {match: "Kit du piégeur", Poids: "10"}; var KDR = {match: "Kit du réparateur", Poids: "10"}; var MGA = {match: "Main-gauche", Poids: "5", ATT: "3", DEF: "3", DEG: "3", ARM: "-4"}; var PAV = {match: "Pavois", Poids: "25", ATT: "-7", DEF: "-7", ARM: "15"}; var RON = {match: "Rondache", Poids: "12", ATT: "-4", DEF: "4", DEG: "-3", ARM: "7"}; var TAR = {match: "Targe", Poids: "4", DEF: "5"}; //Bras droit et gauche var BEC = {match: "Banc en chêne", Poids: "80", ATT: "-20", DEF: "-20", DEG: "45", ARM: "7", Vue: "0"}; var BAT = {match: "Bâton magique", Poids: "20", ATT: "-8", DEF: "5", DM: "8",PM: "12",DEG: "-8",ARM: "5"}; var CLA = {match: "Claymore", Poids: "35", ATT: "-15", DEF: "-7", DEG: "25"}; var GJU = {match: "Griffes jumelles", Poids: "17", ATT: "7", DEF: "-5", DEG: "7", ARM: "-4"}; var GUI = {match: "Guisarme", Poids: "50", ATT: "-20", DEF: "-10", DEG: "35"}; var HAC = {match: "Hache", Poids: "40", ATT: "-20", DEF: "-5", DEG: "30"}; var TGP = {match: "Très grand pavois", Poids: "50", ATT: "-16", DEF: "6", DEG: "-16", ARM: "30", Vue: "0"}; //Corps var ADC = {match: "Armure de cuir", Poids: "20", ATT: "1", DEF: "-10", ARM: "10"}; var ACB = {match: "Armure de cuir bouilli", Poids: "9", ATT: "-6", DEF: "2", ARM: "5"}; var ADP = {match: "Armure de plates", Poids: "60", ATT: "-20", DEF: "-20", ARM: "35"}; var AET = {match: "Armure éthérée", Poids: "1", ATT: "-6", DEF: "-6", DEG: "-6", ARM: "-6", PM: "13", DM: "13", Cycle: "-15", Reg: "-6"}; var ASY = {match: "Armure symbiotique", Poids: "30", PM: "15", DM: "10"}; var BRI = {match: "Brigantine", Poids: "30", ATT: "0", DEF: "-12", ARM: "15"}; var CUI = {match: "Cuirasse", Poids: "50", ATT: "-16", DEF: "-16", ARM: "30"}; var HAM = {match: "Hamata", Poids: "35", ATT: "-10", DEF: "-10", ARM: "20"}; var HAU = {match: "Haubert", Poids: "40", ATT: "-13", DEF: "-13", ARM: "26"}; var JAQ = {match: "Jaque", Poids: "9", ATT: "2", DEF: "-6", ARM: "5"}; var RMB = {match: "Robe de mage balancé", Poids: "10", PM: "5", DM: "5"}; var RMP = {match: "Robe de mage prudent", Poids: "10", PM: "-6", DM: "13"}; var RMT = {match: "Robe de mage téméraire", Poids: "10", PM: "12", DM: "-6"}; var TDM = {match: "Tunique de mailles", Poids: "30", ATT: "-12", DEF: "0", ARM: "15"}; var VES = {match: "Veste", Poids: "5", DEF: "2", ARM: "2"}; //Bijoux var BACC = {match: "Bague à chaton creux", Poids: "1", Reg: "-2"}; var BAE = {match: "Bague d'Eau", Poids: "1", DEF: "6", DEG: "-5"}; var BAF = {match: "Bague de Feu", Poids: "1", DEG: "6", Reg: "-5"}; var BAM = {match: "Bague de mage", Poids: "1", ATT: "-2", DEG: "-2", PM: "3", DM: "3", Comp: "-1", Magie: "1"}; var BAR = {match: "Bague de Roc", Poids: "1", ARM: "6", Depla: "-2"}; var BAA = {match: "Bague en air", Poids: "1", ATT: "6", ARM: "-5"}; var ALL = {match: "Alliance", Poids: "1", PM: "-5"}; var BAG = {match: "Bague de guerrier", Poids: "1", ATT: "3", DEG: "3", PM: "-2", DM: "-2", Comp: "1", Magie: "-1"}; //Jambes var CEG = {match: "Cuissard et grève", Poids: "20", ATT: "-2", DEF: "-2", ARM: "10"}; var CUIS = {match: "Cuissot", Poids: "25", ATT: "-3", DEF: "-3", ARM: "12"}; var GAP = {match: "Genouillères à pointes", Poids: "5", ATT: "2", DEF: "-1", DEG: "2", ARM: "1"}; var JDM = {match: "Jambières de mailles", Poids: "10", DEF: "-1", ARM: "5"}; var JDP = {match: "Jambières de plates", Poids: "15", DEF: "-3", ARM: "7"}; var JCB = {match: "Jambières en cuir bouilli", Poids: "5", DEF: "1", ARM: "3"}; var PAN = {match: "Pantalon", Poids: "3", DEF: "2", ARM: "1"}; //Pieds var BMA = {match: "Bottes de marche", Poids: "15", ATT: "0", DEF: "0", Cycle: "-10", Depla: "12"}; var CMA = {match: "Chausses de mailles", Poids: "8", ATT: "2", DEF: "2", ARM: "4", Cycle: "10"}; var CEL = {match: "Chaussettes en laine", Poids: "3", ATT: "-1", DEF: "-1", Cycle: "2", Reg: "5"}; var CHP = {match: "Chaussettes puantes", Poids: "3", ATT: "-3", DEF: "-3", Cycle: "8", Reg: "-17"}; var SAN = {match: "Sandales", Poids: "5", ATT: "2", DEF: "2", Reg: "-1"}; var SOL = {match: "Soleret", Poids: "20", ATT: "5", DEF: "5", ARM: "5", Cycle: "12"}; var lTab = tabLux.push(BAN,BDM,CAC,CDC,CEC,CEM,CAO,CDM,HTC,JUM,//Tête PLM,ATT,COL,CRE,CAN,CPS,TAL,//Cou DAG,ECO,ELO,FLE,GAN,HCT,LEV,RAP,SIC,//Bras droit ASP,BNO,ECU,KDP,KDR,MGA,PAV,RON,TAR,//Bras gauche BEC,BAT,CLA,GJU,GUI,HAC,TGP,//Bras droit et gauche ADC,ACB,ADP,AET,ASY,BRI,CUI,HAM,HAU,JAQ,RMB,RMP,RMT,TDM,VES,//Corps BACC,BAE,BAF,BAM,BAR,BAA,ALL,BAG,//Bijoux CEG,CUIS,GAP,JDM,JDP,JCB,PAN,//Jambes BMA,CMA,CEL,CHP,SAN,SOL);//Pied var tabMatch = new Array(); var match = {ARM: "[Arm :",Vue: "[Vue :",REG: "[Rég :",DEF: "[Def :",ATT: "[Att :",PM: "[Puis Mag :",DM: "[Def Mag :",DEG: "[Deg :" ,CYC: "[Cycle :",PDS: "minutes)",MAG: "Magie :",COM: "Comp :",DEP: "Dépla :"}; tabMatch.push(match); // Coloration var SUP_LUX='purple'; var EQ_LUX='blue'; var INF1_LUX='green'; // inferieur d'1 point var INFX_LUX='red'; // inférieurs... var tmp_val_lux; // on parcourt tous les td de la page for(j=0;j<childrentd.length;j++){ // on traite que les TD de class type1 :> contient les items if(childrentd[j].getAttribute("class") == 'type1'){ // on parcourt la liste des items qu'on connait for(z=0;z<lTab;z++){ // GENERIQUE if (childrentd[j].textContent.indexOf(tabLux[z].match) > -1){ // on match avec un des items du tableau des items luxe que l'on connait coloritem(tabMatch[0].Vue,tabLux[z].Vue,tabLux[z].match); coloritem(tabMatch[0].ATT,tabLux[z].ATT,tabLux[z].match); coloritem(tabMatch[0].DM,tabLux[z].DM,tabLux[z].match); coloritem(tabMatch[0].PM,tabLux[z].PM,tabLux[z].match); coloritem(tabMatch[0].REG,tabLux[z].REG,tabLux[z].match); coloritem(tabMatch[0].DEG,tabLux[z].DEG,tabLux[z].match); coloritem(tabMatch[0].DEF,tabLux[z].DEF,tabLux[z].match); coloritem(tabMatch[0].ARM,tabLux[z].ARM,tabLux[z].match); coloritem(tabMatch[0].CYC,tabLux[z].Cycle,tabLux[z].match); coloritem(tabMatch[0].PDS,tabLux[z].Poids,tabLux[z].match); coloritem(tabMatch[0].MAG,tabLux[z].Magie,tabLux[z].match); coloritem(tabMatch[0].COM,tabLux[z].Comp,tabLux[z].match); coloritem(tabMatch[0].DEP,tabLux[z].Depla,tabLux[z].match); } // if match GENERIQUE } // liste z tab Luxe } // test class=type1 } // for sur les td // vLuxe mouahaha : valeur Luxe // match : chaine qui match la caractéristique function coloritem(match,vLuxe,item){ var tmp_val_lux=0; var val,avant,apres,ifVal,newV; var color; var typCarac; var iVal = childrentd[j].innerHTML.indexOf(match); if (iVal>-1){ // la carac est présente sur l'item if (typeof vLuxe != 'undefined'){ // la ref luxe porte cette caracteristique tmp_val_lux = vLuxe; } if(match == 'minutes)' || match == 'Cycle :'){ typCarac = '-'; }else{ typCarac = '+'; } // minutes est recuperes différemment la valeur est avant la string de match if (match == 'minutes)'){ var d = childrentd[j].innerHTML.search(/([0-9]* minutes)/i); var f = childrentd[j].innerHTML.search(/minutes/i); val = childrentd[j].innerHTML.substr(d,eval(f-d-1)); avant = childrentd[j].innerHTML.substr(0,d); apres = childrentd[j].innerHTML.substr(f-1,childrentd[j].innerHTML.length); // fin bloc minutes } else { ifVal = childrentd[j].innerHTML.indexOf(']',iVal); val = childrentd[j].innerHTML.substr(iVal+match.length,ifVal-iVal-match.length); if(match == 'Magie :' || match == 'Comp :' || match == 'Dépla :'){ val = childrentd[j].innerHTML.substr(iVal+match.length,ifVal-iVal-match.length-1); } // valeur récupérée on compare, on cherche dans quelle situation on est avant = childrentd[j].innerHTML.substr(0,iVal); apres = childrentd[j].innerHTML.substr(iVal+match.length+val.length+1,childrentd[j].innerHTML.length); }//cas autre que minutes if (typCarac == '-'){ // gestion de la couleur en fonction des cas // Bloc Moins c'est mieux : minutes, Cycle if (eval(val) == eval(tmp_val_lux)){ // flaggé luxe color = EQ_LUX; } else if (eval(val)-1 == eval(tmp_val_lux)) { // 36->luxe item=38 -1=37 > luxe -> bad // flag inférieur luxe color = INF1_LUX; } else if (eval(val)-2 >= eval(tmp_val_lux)) { // 36 luxe 39-2=37 // flag inférieur luxe color = INFX_LUX; } else { // superieur luxe vLuxe // inferieur en minutes... color = SUP_LUX; } }else if (typCarac == '+'){ // gestion de la couleur en fonction des cas // Bloc Plus c'est mieux : la plupart des caractéristiques if (eval(val) == eval(tmp_val_lux)){ // flaggé luxe color = EQ_LUX; } else if (eval(val)+1 == eval(tmp_val_lux)) { // flag inférieur luxe color = INF1_LUX; } else if (eval(val)+2 == eval(tmp_val_lux)) { // flag inférieur luxe color = INFX_LUX; } else { // superieur luxe vLuxe color = SUP_LUX; } } if (match == 'minutes)'){ newV = avant + '<font color="'+color+'"><b>'+val+'</b></font>' + apres; }else{ newV = avant + '<font color="'+color+'"><b>'+match+val+']</b></font>' + apres; } // reconstruction de la chaine de caractère avec la modif couleur childrentd[j].innerHTML = newV; } } //alert(tmp);