« Popup.js » : différence entre les versions
Aucun résumé des modifications |
Aucun résumé des modifications |
||
Ligne 1 : | Ligne 1 : | ||
westui |
Version du 19 janvier 2021 à 18:20
westui={lang:{input_level:"Niveau",input_search:"Recherche",damages:"Dégâts",per_level:"par Niveau",speed:"Vitesse",level:"Niveau",unsalable:"Non vendable",auction:"Peut être acheté/vendu aux enchères",not_auction:"Ne peut pas être acheté/vendu aux enchères",not_upgrade:"Non améliorable",upgrade:"Améliorable",total:"Total",popup:{dmg:{dglvl:'
+ #1 Dégâts#2
'},skills:{fo:'
+ #1 Force#2
',mo:'
+ #1 Mobilité#2
',ha:'
+ #1 Habileté#2
',ch:'
+ #1 Charisme#2
',co:'
+ #1 Construction#2
',pu:'
+ #1 Puissance#2
',te:'
+ #1 Ténacité#2
',pe:'
+ #1 Persévérance#2
',pv:'
+ #1 Points de vie#2
',mc:'
+ #1 Monter à cheval#2
',rx:'
+ #1 Réflexe#2
',ev:'
+ #1 Eviter#2
',ca:'
+ #1 Se cacher#2
',na:'
+ #1 Nager#2
',vi:'
+ #1 Viser#2
',ti:'
+ #1 Tirer#2
',pi:'
+ #1 Piéger#2
',de:'
+ #1 Dextérité#2
',re:'
+ #1 Réparer#2
',di:'
+ #1 Diriger#2
',ta:'
+ #1 Tactique#2
',ma:'
+ #1 Marchander#2
',an:'
+ #1 Manier les animaux#2
',pr:'
+ #1 Prestance#2
'},fb:{fbdef:'
+ #1 Défense (Bonus de BdF)
',fboff:'
+ #1 Attaque (Bonus de BdF)
',fbres:'
+ #1 Résistance (Bonus de BdF)
',fbdefs:'
+ #1 Défense (Bonus de secteur de BdF)
',fboffs:'
+ #1 Attaque (Bonus de secteur de BdF)
',fbdmgs:'
+ #1 Dégâts (Bonus de secteur de BdF)
'},special:{xp:'
+ #1% d\'expérience pour les travaux, duels et batailles de fort#2
',money:'
+ #1% d\'argent en travaux et duels#2
',luck:'
+ #1% de probabilité de chance en plus#2
',regen:'
+ #1% Régénération#2
',drop:'
+ #1% de chance de drop#2
',labor_pts:'
+ #1 points de travail#2
',spd:'
+ #1% Vitesse#2
'}}},config:{enable_set_calc:true,plain_popup:false,redirect_on_dblclick:false,link_on_dblclick:false,enable_sorting:true,cdn:"https://westzz.innogamescdn.com",img_buyprice:"/images/2/22/Achat.png",img_sellprice:"/images/3/3b/Vente.png",img_male:"/images/8/83/Homme.png",img_female:"/images/8/8c/Femme.png",set_bonus:{fo:{name:"Force",img:"/images/thumb/0/09/Force.png/40px-Force.png"},mo:{name:"Mobilité",img:"/images/thumb/c/c1/Mobilit%C3%A9.png/40px-Mobilit%C3%A9.png"},ha:{name:"Habileté",img:"/images/thumb/1/1a/Habilet%C3%A9.png/40px-Habilet%C3%A9.png"},ch:{name:"Charisme",img:"/images/thumb/8/8f/Charisme.png/40px-Charisme.png"},co:{name:"Construire",img:"/images/thumb/0/0e/Construire.png/40px-Construire.png"},pu:{name:"Puissance",img:"/images/thumb/f/f4/Puissance.png/40px-Puissance.png"},te:{name:"Ténacité",img:"/images/thumb/8/85/T%C3%A9nacit%C3%A9.png/40px-T%C3%A9nacit%C3%A9.png"},pe:{name:"Persévérance",img:"/images/thumb/e/e9/Pers%C3%A9v%C3%A9rance.png/40px-Pers%C3%A9v%C3%A9rance.png"},pv:{name:"Points de vie",img:"/images/thumb/b/bb/Points_de_vie_aptitude.png/40px-Points_de_vie_aptitude.png"},mc:{name:"Monter à cheval",img:"/images/thumb/0/01/Monter_%C3%A0_cheval.png/40px-Monter_%C3%A0_cheval.png"},rx:{name:"Réflexe",img:"/images/thumb/5/52/R%C3%A9flexe.png/40px-R%C3%A9flexe.png"},ev:{name:"Eviter",img:"/images/thumb/f/ff/Eviter.png/40px-Eviter.png"},ca:{name:"Se cacher",img:"/images/thumb/5/5f/Se_cacher.png/40px-Se_cacher.png"},na:{name:"Nager",img:"/images/thumb/b/b8/Nager.png/40px-Nager.png"},vi:{name:"Viser",img:"/images/thumb/6/68/Viser.png/40px-Viser.png"},ti:{name:"Tirer",img:"/images/thumb/f/f9/Tirer.png/40px-Tirer.png"},pi:{name:"Piéger",img:"/images/thumb/2/26/Pi%C3%A9ger.png/40px-Pi%C3%A9ger.png"},de:{name:"Dextérité",img:"/images/thumb/4/4a/Dext%C3%A9rit%C3%A9.png/40px-Dext%C3%A9rit%C3%A9.png"},re:{name:"Réparer",img:"/images/thumb/c/cc/R%C3%A9parer.png/40px-R%C3%A9parer.png"},di:{name:"Diriger",img:"/images/thumb/b/b5/Diriger.png/40px-Diriger.png"},ta:{name:"Tactique",img:"/images/thumb/2/2c/Tactique.png/40px-Tactique.png"},ma:{name:"Marchander",img:"/images/thumb/c/ca/Marchander_aptitude.png/40px-Marchander_aptitude.png"},an:{name:"Manier les animaux",img:"/images/thumb/b/be/Manier_les_animaux.png/40px-Manier_les_animaux.png"},pr:{name:"Prestance",img:"/images/thumb/c/cb/Prestance.png/40px-Prestance.png"},fbdef:{name:"Défense (Bonus de bataille de fort)",img:"/images/thumb/2/2d/D%C3%A9fense.png/40px-D%C3%A9fense.png"},fboff:{name:"Attaque (Bonus de bataille de fort)",img:"/images/thumb/e/ef/Attaque.png/40px-Attaque.png"},fbres:{name:"Résistance (Bonus de bataille de fort)",img:"/images/4/4a/R%C3%A9sistance.png"},fbdefs:{name:"Défense (Bonus de secteur de bataille de fort)",img:"/images/thumb/2/2d/D%C3%A9fense.png/40px-D%C3%A9fense.png"},fboffs:{name:"Attaque (Bonus de secteur de bataille de fort)",img:"/images/thumb/e/ef/Attaque.png/40px-Attaque.png"},fbdmgs:{name:"Dégâts (Bonus de secteur de bataille de fort)",img:"/images/5/54/Dommages.png"},fbdmg:{name:"Dégâts (Bonus de bataille de fort)",img:"/images/5/54/Dommages.png"},xp:{name:"Expérience pour les travaux, duels et batailles de fort (%)",img:"/images/0/01/Xxp.png"},money:{name:"Argent en travaux et duels (%)",img:"/images/f/fd/Dollarb.png"},luck:{name:"Probabilité de chance en plus (%)",img:"/images/f/f0/Luck.png"},regen:{name:"Régénération (%)",img:"/images/4/44/R%C3%A9g%C3%A9n%C3%A9ration.png",},drop:{name:"Chance de drop améliorée pour les produits (%)",img:"/images/thumb/f/f6/Luck_prod.png/40px-Luck_prod.png"},labor_pts:{name:"Points de travail supplémentaires (sur tous les travaux)",img:"/images/d/df/Jobs.png"},spd:{name:"Vitesse",img:"/images/thumb/f/fb/Vitesse.png/40px-Vitesse.png"}},sorting:{Aucun:'{"id":1}',Force:'{"fo":1}',"Mobilité":'{"mo":1}',"Habileté":'{"ha":1}',Charisme:'{"ch":1}',Construction:'{"fo":1,"co":1}',Puissance:'{"fo":1,"pu":1}',"Ténacité":'{"fo":1,"te":1}',"Persévérance":'{"fo":1,"pe":1}',"Points de vie":'{"fo":1,"pv":1}',"Monter à cheval":'{"mo":1,"mc":1}',"Réflexe":'{"mo":1,"rx":1}',Eviter:'{"mo":1,"ev":1}',"Se cacher":'{"mo":1,"ca":1}',Nager:'{"mo":1,"na":1}',Viser:'{"ha":1,"vi":1}',Tirer:'{"ha":1,"ti":1}',"Piéger":'{"ha":1,"pi":1}',"Dextérité":'{"ha":1,"de":1}',"Réparer":'{"ha":1,"re":1}',Diriger:'{"ch":1,"di":1}',Tactique:'{"ch":1,"ta":1}',Marchander:'{"ch":1,"ma":1}',"Manier les animaux":'{"ch":1,"an":1}',Prestance:'{"ch":1,"pr":1}',"Points de travail pour construire":'{"fo":3,"co":3,"ha":1,"re":1,"ch":1,"di":1}',"Expérience pour les travaux, duels et batailles de fort (%)":'{"xp":1}',"Argent en travaux et duels (%)":'{"money":1}',"Probabilité de chance en plus (%)":'{"luck":1}',"Régénération (%)":'{"regen":1}',"Chance de drop (%)":'{"drop":1}',"Vitesse (%)":'{"spd":1,"hspd":1,"mo":1,"mc":1}',"Dégât moyen":'{"dgmin":0.5,"dgmax":0.5,"dglvl":1}',"Dégât maximal":'{"dgmax":1,"dglvl":1}',}},initPage:function(){if($("#input_level").length===1){var a=$('<input type="number" style="width:80px;" class="west" placeholder="'+westui.lang.input_level+'" min="0" max="150">').bind("propertychange keyup input paste",function(){if(this.value>150){this.value=150}else{if(this.value<0){this.value=0}}$(".calc").each(function(){if(a.val()==0){$(this).html(this.id);$(".per_level_off").addClass("per_level").removeClass("per_level_off")}else{$(this).html(Math.ceil(Number(this.id)*a.val()));$(".per_level").addClass("per_level_off").removeClass("per_level")}})}).appendTo($("#input_level"))}if($("#input_search").length===1){var b=$('<input type="search" class="west" placeholder="'+westui.lang.input_search+'">').bind("propertychange keyup input paste",function(){var c=this.value.toLowerCase();if(c===""){$(".item_container").show()}else{$(".item_container").hide();$(".item_container").filter(function(){return $(this).attr("data-popup").toLowerCase().indexOf(c)>-1}).show()}}).appendTo($("#input_search"))}if($("#switch").length===1){$("#fire").hide();$("#switch").on("click",function(){$("#melee, #fire").toggle()})}if($("#switch_prod").length===1){$("#prod2").hide();$("#switch_prod").on("click",function(){$("#prod, #prod2").toggle()})}if(westui.config.plain_popup&&(new RegExp(mw.config.get("wgFormattedNamespaces")[10]+":Item_*").test(mw.config.get("wgPageName")))&&($(".item_container").length===1)){$("#mw-content-text").append('
');$("#popup_plain").hide();$("#popup_plain_contents").append(westui.popup.createPopup($(".item_container"),0));$("#popup_plain").slideDown()}if(westui.config.redirect_on_dblclick){$(".item_container img").on("dblclick",function(){window.location="/wiki/"+mw.config.get("wgFormattedNamespaces")[10]+":Item_"+JSON.parse($(this).parent().attr("data-popup")).id/1000})}if(westui.config.link_on_dblclick){$(".item_container img").on("dblclick",function(){window.location="/wiki/"+$(this).parent().attr("data-link")})}},popup:{content:"",delay:200,active:false,show:function(a){westui.popup.content=westui.popup.createPopup($(a),parseInt($(a).attr("data-lvl")));westui.popup.active=true;westui.popup.setTimeout();westui.popup.getContainer().html(westui.popup.content)},hide:function(){westui.popup.getEl().css({display:"none",top:0,left:0});westui.popup.active=false;westui.popup.clearTimeout()},setTimeout:function(){westui.popup.clearTimeout();westui.popup.timer=window.setTimeout(function(){westui.popup.getEl().css("display","block")},westui.popup.delay)},clearTimeout:function(){if(westui.popup.timer){window.clearTimeout(westui.popup.timer)}},getEl:function(){return $("#popup_window")},getContainer:function(){return $("#popup_contents")},createPopup:function(b,k){var f=JSON.parse(b.attr("data-popup"));var m=b.attr("data-cache");var l=b.attr("data-cdn-cat");var a=b.attr("data-cdn-img");var h='
'+f.name+'
'+f.type+"
";var d=false;if((k>=1)&&(k<=5)){d=true;f.auc=false}if(f.dgmin&&f.dgmax){if(d){f.dgmin+=Math.round(Math.max(1,f.dgmin*0.1*k));f.dgmax+=Math.round(Math.max(1,f.dgmax*0.1*k))}h+='
'+f.dgmin+"-"+f.dgmax+" "+westui.lang.damages+"
"}if(f.text){for(var e=0;e<f.text.length;e++){h+='
'+f.text[e]+"
"}h+="
"}for(var j in westui.lang.popup){var c=0;for(var n in westui.lang.popup[j]){if(f.hasOwnProperty(n)){c++;var g="";if(f[n]<0){if($("#input_level input").val()>0){f[n]=Math.ceil($("#input_level input").val()*-f[n]);if(d){f[n]+=Math.round(Math.max(1,f[n]*0.1*k))}}else{f[n]=-f[n];g=" ("+westui.lang.per_level+")";if(d){f[n]=Math.round(1000000*(f[n]*1+Math.round(Math.max(1,f[n]*1000*k))/10000))/1000000}}}else{if(d){if(f[n]<1){f[n]=Math.round(1000000*(f[n]*1+Math.round(Math.max(1,f[n]*1000*k))/10000))/1000000}else{f[n]+=Math.round(Math.max(1,f[n]*0.1*k))}}}h+=westui.lang.popup[j][n].replace("#1",f[n]).replace("#2",g)}}if(c>0){h+="
"}}if(f.textjob){for(var e=0;e<f.textjob.length;e++){h+='
'+f.textjob[e]+"
"}h+="
"}if(f.bonus){for(var e=0;e<f.bonus.length;e++){h+='
'+f.bonus[e]+"
"}h+="
"}if(f.jobs){h+='
<img src="'+westui.config.cdn+"/images/jobs/"+f.jobs[e][1]+'.png"/> | '+f.jobs[e][0]+" |
"}if(f.craft){h+='
<img src="'+westui.config.cdn+"/images/crafting/profsymbol_"+f.craft.id+'_small.png"/> | ';for(var e=0;e<f.craft.req.length;e++){h+=''}h+="";for(var e=0;e<f.craft.req.length;e++){h+=""}h+="
|
"}h+='
'+westui.lang.speed+": +"+f.hspd+"%
"}if(f.set){h+='
<a class="popup_set" href="/wiki/'+f.set+'">'+f.set+"</a>
"}if(f.sp){h+='<img src="'+westui.config.img_buyprice+'"/>'+f.bp+' <img src="'+westui.config.img_sellprice+'"/> '+f.sp+"
"}else{h+=""+westui.lang.unsalable+"
"}if(f.lvl){h+=westui.lang.level+" "+f.lvl+"
"}if(f.sex){if(f.sex==0){h+='<img src="'+westui.config.img_male+'"/> '}else{h+='<img src="'+westui.config.img_female+'"/> '}}if(f.auc==1){h+=''+westui.lang.auction+"
"}else{h+=''+westui.lang.not_auction+"
"}if(f.upg==0){h+=''+westui.lang.not_upgrade+"
"}else{h+=''+westui.lang.upgrade+"
"}h+='
[item='+f.id+"]
";return h},setPosition:function(d){var b=$(window).width();var j=$(window).height();var h=westui.popup.getEl().outerWidth();var l=westui.popup.getEl().outerHeight();var a=d.clientX;var k=d.clientY;var g;var c;var f=20;var i=20;if(a+h+i>b){if(a-h-i<0){c=d.pageX-d.clientX}else{c=d.pageX-h-i}}else{c=i+d.pageX}if(k+l+f>j){g=j-l+(d.pageY-d.clientY)}else{g=f+d.pageY}westui.popup.getEl().css({top:g,left:c})},init:function(){$("body").append('
');$(document).on("mouseenter",".item_container",function(a){westui.popup.show(this);westui.popup.setPosition(a)});$(document).on("mouseleave",".item_container",function(){westui.popup.hide()});$(document).on("mousemove",".item_container",function(a){westui.popup.setPosition(a)});$(".item_level").mousedown(function(a){a.preventDefault()});$(document).on("click",".upgrade",function(){var a=$(this).closest(".item_container");var b=parseInt(a.attr("data-lvl"));if(b!==5){a.attr("data-lvl",b+1);a.find(".level").html(b+1)}westui.popup.show(a[0])});$(document).on("click",".downgrade",function(){var a=$(this).closest(".item_container");var b=parseInt(a.attr("data-lvl"));if(b!==0){a.attr("data-lvl",b-1);a.find(".level").html(b-1)}westui.popup.show(a[0])})}},set_calc:{bonus:{extra_set_bonus:{}},data:{},itemStatus:{},getData:function(){$(".set_container").each(function(){var a=$(this).attr("data-set-id");westui.set_calc.itemStatus[a]={};westui.set_calc.data[a]={items:{},set:{}}});$(".infoSet").each(function(){var a=$(this).attr("data-set-id");$(this).find(".infosetatt").each(function(){var b=$(this).attr("data-nb");westui.set_calc.data[a].set[b]={};$(this).find(".set_bonus").each(function(){key=$(this).attr("data-type");if($(this).find(".calc").length!==0){westui.set_calc.data[a].set[b][key]=-parseFloat($(this).find(".calc").attr("id"))}else{westui.set_calc.data[a].set[b][key]=parseFloat($(this).find(".val").text())}if(!westui.config.set_bonus.hasOwnProperty(key)){westui.set_calc.bonus.extra_set_bonus[key]={img:$(this).find("img").attr("src"),name:$(this).find("#tooltip_content").text()}}})})});$(".set_container").each(function(){var a=$(this).attr("data-set-id");$(this).find(".item_container").each(function(){var b=JSON.parse($(this).attr("data-popup"));if($(this).is(":hidden")){westui.set_calc.itemStatus[a][b.id]=false}else{westui.set_calc.itemStatus[a][b.id]=0}for(var c in b){if(b.hasOwnProperty(c)&&(westui.config.set_bonus.hasOwnProperty(c)||westui.set_calc.bonus.extra_set_bonus.hasOwnProperty(c))){if(!westui.set_calc.data[a].items[c]){westui.set_calc.data[a].items[c]={}}westui.set_calc.data[a].items[c][b.id]=b[c]}}})})},calc:function(){if($("#input_level").length===0|$("#input_level input").val()!==""){var g=parseInt($("#input_level input").val());total={};for(var e in westui.set_calc.data){for(var d in westui.set_calc.data[e].items){for(var a in westui.set_calc.data[e].items[d]){if(westui.set_calc.itemStatus[e][a]!==false){lvl=westui.set_calc.itemStatus[e][a];if(!total[d]){total[d]=0}var f=westui.set_calc.data[e].items[d][a];if(westui.set_calc.data[e].items[d][a]<0){f=-f;if(westui.set_calc.itemStatus[e][a]>0){total[d]+=Math.ceil(f*g)+Math.round(Math.max(1,Math.ceil(f*g)*0.1*lvl))}else{total[d]+=Math.ceil(f*g)}}else{if(westui.set_calc.itemStatus[e][a]>0){if(f<1){total[d]+=Math.round(1000000*(f*1+Math.round(Math.max(1,f*1000*lvl))/10000))/1000000}else{total[d]+=f+Math.round(Math.max(1,f*0.1*lvl))}}else{total[d]+=f}}}}}var c=0;for(var a in westui.set_calc.itemStatus[e]){if(westui.set_calc.itemStatus[e][a]!==false){c++}}for(var d in westui.set_calc.data[e].set[c]){if(!total[d]){total[d]=0}if(westui.set_calc.data[e].set[c][d]<0){total[d]+=Math.ceil(-westui.set_calc.data[e].set[c][d]*g)}else{total[d]+=westui.set_calc.data[e].set[c][d]}}}var b='
";for(var d in westui.config.set_bonus){if(total.hasOwnProperty(d)){b+=' <img src="'+westui.config.set_bonus[d].img+'">+'+total[d]+(["xp","money","luck","spd","regen","drop"].indexOf(d)!==-1?"%":"")+' "}}for(var d in westui.set_calc.bonus.extra_set_bonus){if(total.hasOwnProperty(d)){b+=''+westui.config.set_bonus[d].name+" <img src="'+westui.set_calc.bonus.extra_set_bonus[d].img+'">+'+total[d]+(["xp","money","luck","spd","regen","drop"].indexOf(d)!==-1?"%":"")+' "}}$("#set_calc").html(b)}else{$("#set_calc").html("")}},initEvents:function(){$(".item_container > img").on("click",function(){var b=$(this).closest(".item_container");b.toggleClass("item_off");var c=b.closest(".set_container").attr("data-set-id");var a=JSON.parse(b.attr("data-popup")).id;if(b.hasClass("item_off")||b.is(":hidden")){westui.set_calc.itemStatus[c][a]=false}else{westui.set_calc.itemStatus[c][a]=parseInt(b.attr("data-lvl"))}westui.set_calc.calc()});$(document).on("click",".upgrade, .downgrade",function(){var b=$(this).closest(".item_container");var a=b.closest(".set_container").attr("data-set-id");if(!b.hasClass("item_off")&&!b.is(":hidden")){westui.set_calc.itemStatus[a][JSON.parse(b.attr("data-popup")).id]=parseInt(b.attr("data-lvl"));westui.set_calc.calc()}});$("#input_level").bind("propertychange keyup input paste",function(){westui.set_calc.calc()});$("#switch").on("click",function(){$("#melee, #fire").each(function(){var b=$(this).find(".item_container");var a=$(this).closest(".set_container").attr("data-set-id");if($(this).is(":hidden")){westui.set_calc.itemStatus[a][JSON.parse(b.attr("data-popup")).id]=false}else{westui.set_calc.itemStatus[a][JSON.parse(b.attr("data-popup")).id]=parseInt(b.attr("data-lvl"))}});westui.set_calc.calc()})},init:function(){westui.set_calc.initEvents();westui.set_calc.getData();$("#mw-content-text").append('');if($("#input_level").length===0){westui.set_calc.calc()}}},sorting:{sortItems:function(b){$(".item_container").removeAttr("data-sort").show();function a(e){var f=JSON.parse($(e).attr("data-popup"));var c=$("#input_level input").val();c=(c?c:150);var d=Object.keys(b).indexOf("id")!==-1;var g=0;for(var h in b){if(h==="id"){g-=f[h]}else{if((!f.lvl||f.lvl<=c)){if(f[h]){if(f[h]<0){g+=Math.ceil(-f[h]*c)*b[h]}else{g+=f[h]*b[h]}}}}}$(e).attr("data-sort",g);if(g==0){$(e).hide()}if($(e).find(".sortval").length!==0){if(d){$(e).find(".sortval").html("")}else{$(e).find(".sortval").html(g)}}else{if(!d){$(e).append(''+westui.set_calc.bonus.extra_set_bonus[d].name+" '+g+" ")}}}$("#mw-content-text").find(".sorting_hidden").hide();$(".sorting_container").each(function(){$(this).find(".item_container").sort(function(d,c){if(!$(d).attr("data-sort")){a(d)}if(!$(c).attr("data-sort")){a(c)}return $(c).attr("data-sort")-$(d).attr("data-sort")}).appendTo($(this))})},init:function(){if($("div#sort_items").length===1){var a="<select id='sort_items' class='west'><option selected disabled>Trier par :</option>";for(var b in westui.config.sorting){a+="<option value='"+westui.config.sorting[b]+"'>"+b+"</option>"}a+="</select> ";$("div#sort_items").html(a);$("select#sort_items").on("change",function(){westui.sorting.sortItems(JSON.parse($(this).find("option:selected").attr("value")))})}}},init:function(){westui.initPage();westui.popup.init();if(westui.config.enable_sorting){westui.sorting.init()}if(westui.config.enable_set_calc&&$(".infoSet").length!==0){westui.set_calc.init()}}};westui.init(); |