function displayEventTable(a){for(var b=0;b<events.event.length;b++){document.write('<tr class="'+((b%2==0)?"bgb":"bga")+'">');document.write("<td></td>");document.write("<td align=center>"+events.event[b].time+"</td>");document.write("<td>"+displayEvent(a,events.event[b].type,events.event[b].hit,events.event[b].miss,events.event[b].actorname,events.event[b].actorguid,events.event[b].targetname,events.event[b].targetguid,events.event[b].school,events.event[b].amount,events.event[b].mitamount,events.event[b].extraamount,events.event[b].energy,events.event[b].spellid,events.event[b].spell,events.event[b].extraspellid,events.event[b].extraspell)+"</td>");document.write("</tr>")}}function displayEvent(l,d,p,a,b,n,f,r,j,g,e,h,o,c,s,k,q){msg="";noactor=false;if(b==""||b=="nil"||b=="ENV"){noactor=true}notarget=false;if(f==""||f=="nil"){notarget=true}if(d=="GET"){msg="page.event.type.get"+(noactor?".noactor":(g==0?".buff":""))}if(d=="HEA"){msg="page.event.type.hea"}if(d=="PUT"){msg="page.event.type.put"+(notarget?".notarget":"")}if(d=="DBF"){msg="page.event.type.dbf"+(noactor?".noactor":"")}if(d=="STO"){msg="page.event.type.sto"}if(d=="INT"){msg="page.event.type.int"}if(d=="RMV_BUFF"){msg="page.event.type.rmv.buff"+(noactor?".noactor":"")}if(d=="RMV_DBF"){msg="page.event.type.rmv.dbf"+(noactor?".noactor":"")}if(d=="HIT"){if(a!="NONE"){if(a=="RESIST"){msg="page.event.type.miss.resist"}if(a=="DODGE"){msg="page.event.type.miss.dodge"}if(a=="PARRY"){msg="page.event.type.miss.parry"}if(a=="BLOCK"){msg="page.event.type.miss.block"}if(a=="MISS"){msg="page.event.type.miss.miss"}}else{if(p=="CRITICAL"){msg="page.event.type.hit.crit"}if(p=="CRUSHING"){msg="page.event.type.hit.crush"}if(p=="NORMAL"){msg="page.event.type.hit"+(noactor?".noactor":"")}if(p=="DOT"){msg="page.event.type.hit.dot"+(noactor?".noactor":"")}if(p=="GLANCING"){msg="page.event.type.hit.glancing"}}}if(d=="GAN"){msg="page.event.type.gan"}if(d=="SUM"){msg="page.event.type.sum"}if(d=="CUR"){msg="page.event.type.cur"}if(d=="DEA"){msg="page.event.type.dea"}actor=noactor?"":"<a href="+webroot+"combat/target/"+l+"/"+n+" target=_blank>"+getMobName(n,b)+"</a>";target="<a href="+webroot+"combat/target/"+l+"/"+r+"  target=_blank>"+getMobName(r,f)+"</a>";j=j!=""?bufferLocale("page.school."+j):"";o=o!=""?bufferLocale("page.school."+o):"";q=q!=""?abilityWithLink(k,q):"";s=s!=""?abilityWithLink(c,s):"";if(msg==""){return d+" "+actor+" "+s+" "+target+" "+g+" "+j+" "+q}var m=eventLocale(msg);m=m.replace("{actor}",actor);m=m.replace("{target}",target);m=m.replace("{school}",j==""?"":bufferLocale(j));m=m.replace("{amount}",g);m=m.replace("{mitamount}",e);m=m.replace("{extraamount}",h);m=m.replace("{energy}",o);m=m.replace("{spell}",s);m=m.replace("{extraspell}",q==""?q:eventLocale("page.event.spell"));return m}function redirecteventfilter(a){window.location=webroot+"combat/eventfilter/"+bfid+"/"+(a.starttime.value==""?"0":a.starttime.value)+"/"+(a.endtime.value==""?"0":a.endtime.value)+"/"+(a.source.value==""?"0":a.source.value.toString())+"/"+(a.target.value==""?"0":a.target.value.toString())+"/"+(a.type.value==""?"0":a.type.value)+"/"+(a.keyword.value==""?"nil":encodeURI(a.keyword.value))}function openurl(a,b,c,d){switch(c){case 1:c="HIT";break;case 2:c="HEA";break}window.location=webroot+"combat/eventfilter/"+a+"/"+(d*1000-1000)+"/"+(d*1000+1000)+"/"+b.toString()+"/0/"+c+"/nil"}function showDamageDetail(e,d,c,a,b){window.location=webroot+"combat/detail/"+d+(e==1?"#damageout":(e==2?"#healingout":"#damagetaken"))}function getrenderdamageout(c,b,d,a){var e="";if(d==0){d=100}e+='<tr class="'+((b%2==0)?"bgb":"bga")+'">';e+="<td width=25 align=center>"+((a)?'<input type="checkbox" name="actorid" value="'+c.guid+'" />':(b+1))+"</td>";e+='<td align=center><a href="'+webroot+"combat/clazz/"+c.bfid+"/"+c.classtype+'"><img src="'+static_webroot+"images/classtype/"+c.classtype+'.gif" border="0" /></a></td>  ';e+='<td align=center><a href="'+webroot+"combat/eventfilter/"+c.bfid+"/0/0/"+c.guid+'/0/0/nil"><img src="'+static_webroot+"images/talent/"+(c.talent==0?"ukw":c.classtype)+c.talent+'.png" border="0" alt="'+combatDetailLocale("page.browseevent")+'" /></a></td>  ';e+='<td><a href="'+webroot+"combat/detail/"+c.id+'" onclick="showDamageDetail(1 , '+c.id+" , '"+c.guid+"' , '"+c.actorname+"' , '"+c.classtype+"');return false\">"+c.actorname+"</a></td>";e+='<td><div class="classtype '+c.classtype+'"  style="width:'+(80*c.damagepercent/d)+'%"  onclick="showDamageDetail(1 , '+c.id+" , '"+c.guid+"' , '"+c.actorname+"' , '"+c.classtype+'\');return false"><div style="width:100%"></div></div><div style="padding-left:5;">&nbsp;&nbsp;( '+c.damagepercent+"% ) </div></td>";e+='<td class="rtd">'+(c.prespercent>100?100:c.prespercent)+"%</td>";e+='<td class="rtd">'+formatNumber(c.dps,"#,###")+"</td>";e+='<td class="rtd">'+formatNumber(c.combat_dps,"#,###")+"</td>";e+='<td class="rtd">'+formatNumber(c.totaldamage,"#,###")+"</td>";e+='<td class="rtd">'+formatNumber(c.tobossdps,"#,###")+"</td>";e+='<td class="rtd">'+c.dpstimepercent+"%</td>";e+="<td align=center>"+c.interrupts+"</td>";e+="</tr>";return e}function getrenderhealingout(c,b,d,a){var e="";if(d==0){d=100}e+='<tr class="'+((b%2==0)?"bgb":"bga")+'">';e+="<td width=25 align=center>"+((a)?'<input type="checkbox" name="actorid" value="'+c.guid+'" />':(b+1))+"</td>";e+='<td align=center><a href="'+webroot+"combat/clazz/"+c.bfid+"/"+c.classtype+'"><img src="'+static_webroot+"images/classtype/"+c.classtype+'.gif" border="0" /></a></td>';e+='<td align=center><img src="'+static_webroot+"images/talent/"+(c.talent==0?"ukw":c.classtype)+c.talent+'.png" border="0" /></td>  ';e+='<td><a href="'+webroot+"combat/detail/"+c.id+'" onclick="showDamageDetail(2 , '+c.id+" , '"+c.guid+"' , '"+c.actorname+"' , '"+c.classtype+"');return false\">"+c.actorname+"</a></td>";e+='<td><div class="classtype '+c.classtype+'"  style="width:'+(80*c.healpercent/d)+'%"  onclick="showDamageDetail(2 , '+c.id+" , '"+c.guid+"' , '"+c.actorname+"' , '"+c.classtype+'\');return false"><div style="width:100%"></div></div><div style="padding-left:5;">&nbsp;&nbsp;( '+c.healpercent+"% ) </div></td>";e+="<td class=rtd>"+formatNumber(c.ehps,"#,###")+"</td>";e+="<td class=rtd>"+formatNumber(c.effheal,"#,###")+"</td>";e+="<td class=rtd>"+formatNumber(c.hps,"#,###")+"</td>";e+="<td class=rtd>"+formatNumber(c.totalheal,"#,###")+"</td>";e+="<td class=rtd>"+c.ovhealpercent+"%</td>";e+="<td class=rtd>"+c.hpstimepercent+"%</td>";e+="<td align=center>"+c.cures+"</td>";e+="</tr>";return e}function getrenderdamagetaken(c,b,d,a){var e="";if(d==0){d=100}e+='<tr class="'+((b%2==0)?"bgb":"bga")+'">';e+="<td width=25 align=center>"+((a)?'<input type="checkbox" name="actorid" value="'+c.guid+'" />':(b+1))+"</td>";e+='<td align=center><a href="'+webroot+"combat/clazz/"+c.bfid+"/"+c.classtype+'"><img src="'+static_webroot+"images/classtype/"+c.classtype+'.gif" border="0" /></a></td>  ';e+='<td align=center><img src="'+static_webroot+"images/talent/"+(c.talent==0?"ukw":c.classtype)+c.talent+'.png" border="0" /></td>  ';e+='<td><a href="'+webroot+"combat/detail/"+c.id+'" onclick="showDamageDetail(3 , '+c.id+" , '"+c.guid+"' , '"+c.actorname+"' , '"+c.classtype+"');return false\">"+c.actorname+"</a></td>";e+='<td><div class="classtype '+c.classtype+'"  style="width:'+(80*c.damagetakenpercent/d)+'%"  onclick="showDamageDetail(3 , '+c.id+" , '"+c.guid+"' , '"+c.actorname+"' , '"+c.classtype+'\');return false"><div style="width:100%"></div></div><div style="padding-left:5;">&nbsp;&nbsp;( '+c.damagetakenpercent+"% ) </div></td>";e+="<td class=rtd>"+formatNumber(c.damagetaken,"#,###")+"</td>";e+="<td class=rtd>"+formatNumber(c.dtps,"#,###")+"</td>";e+="<td class=rtd>"+formatNumber(c.tps,"#,###")+"</td>";e+="<td align=center>"+((c.deaths>0)?c.deaths:"")+"</td>";e+="<td class=rtd>"+((c.deaths>0)?('<a target="_blank" href="'+webroot+"combat/eventfilter/"+c.bfid+"/0/"+c.deathstimestamps+"/0/"+c.guid+'/0/nil#death">'+c.deathpercent)+"%":" ")+"</td>";e+="</tr>";return e}function render(g,e,d){$("#charttable").hide();if(g=="realtime"){g="damageout"}if(g=="whohitwho"){if($("#whohitswhombody").text()==""){$("#whohitswhombody").append(displayTarget(1));$("#whohitedbywhombody").append(displayTarget(2));$("#hitedbymistake").append(displayTarget(5))}}if(g=="whohealwho"){if($("#whohealwhombody").text()==""){$("#whohealwhombody").append(displayTarget(3));$("#whohealedbywhombody").append(displayTarget(4))}}var f="";var a=((mevs&&mevs.majorevent&&mevs.majorevent.length>0)&&(realtimes&&realtimes.realtime&&realtimes.realtime.length>0))?true:false;if(g=="damageout"){clearTbody("damageouttbody");clearTbody("healingouttbody");clearTbody("damagetakentbody");var j=getJsonData(g,e,d,actors.actor);var h=j[0];var b=j[1];for(var c=0;c<h.length;c++){f+=getrenderdamageout(h[c][1],c,b,a)}$("#damageouttbody").append(f);$("input:checkbox").click(function(){showrealtimechart("damageout")})}if(g=="healingout"){clearTbody("damageouttbody");clearTbody("healingouttbody");clearTbody("damagetakentbody");var j=getJsonData(g,e,d,actors.actor);var h=j[0];var b=j[1];for(var c=0;c<h.length;c++){f+=getrenderhealingout(h[c][1],c,b,a)}$("#healingouttbody").append(f);$("input:checkbox").click(function(){showrealtimechart("healingout")})}if(g=="damagetaken"){clearTbody("damageouttbody");clearTbody("healingouttbody");clearTbody("damagetakentbody");var j=getJsonData(g,e,d,actors.actor);var h=j[0];var b=j[1];for(var c=0;c<h.length;c++){f+=getrenderdamagetaken(h[c][1],c,b,a)}$("#damagetakentbody").append(f);$("input:checkbox").click(function(){showrealtimechart("damagetaken")})}this.location.hash="#"+g}function getJsonData(a,g,d,c){if(a!="damageout"&&g=="totaldamage"){if(a=="healingout"){g="effheal";d="desc"}if(a=="damagetaken"){g="damagetaken";d="desc"}}var e=0;var f=[];var h=0;for(var b=0;b<c.length;b++){if(a=="damageout"){f[f.length]=[getOrderKey(c[b],g),c[b]];if(h<c[b].damagepercent){h=c[b].damagepercent}}if(a=="healingout"){f[f.length]=[getOrderKey(c[b],g),c[b]];if(h<c[b].healpercent){h=c[b].healpercent}}if(a=="damagetaken"){f[f.length]=[getOrderKey(c[b],g),c[b]];if(h<c[b].damagetakenpercent){h=c[b].damagetakenpercent}}if(a=="lowerdps"){f[f.length]=[c[b].totaldamage,c[b]];if(h<c[b].damagepercent){h=c[b].damagepercent}}if(a=="idle"){f[f.length]=[getOrderKey(c[b],g),c[b]]}if(a=="death"){f[f.length]=[c[b].deathpercentnum,c[b]]}}if(a=="damageout"||a=="healingout"||a=="damagetaken"){f.sort(d=="asc"?dynSortFnUp:dynSortFnDown);globalsort=(d=="desc")?"asc":"desc"}else{if(a=="lowerdps"){f.sort(dynSortFnUp)}else{f.sort(dynSortFnDown)}}return[f,h]}function getOrderKey(a,b){if(b=="actdps"){return a.combat_dps}if(b=="dpstime"){return parseInt(a.dpstimepercent)}if(b=="interrupts"){return a.interrupts}if(b=="pres"){return parseInt(a.prespercent)}if(b=="tobossdps"){return a.tobossdps}if(b=="effheal"){return a.effheal}if(b=="hps"){return a.hps}if(b=="totalheal"){return a.totalheal}if(b=="ovheal"){return a.ovhealpercent}if(b=="combat_hpstime"){return parseInt(a.hpstimepercent)}if(b=="cures"){return a.cures}if(b=="tps"){return a.tps}if(b=="deaths"){return a.deaths}if(b=="lastdeath"){return parseInt(a.deathpercent)}if(b=="damagetaken"){return a.damagetaken}return a.totaldamage}function displayGroup(a){for(var b=0;b<actors.actor.length;b++){if(actors.actor[b].groupid==a){document.write('<a href="'+webroot+"combat/detail/"+actors.actor[b].id+'" class="'+actors.actor[b].classtype+'">'+actors.actor[b].actorname+"</a><br>")}}}function displayLowerDPS(){var d=0;var c=0;for(var b=0;b<actors.actor.length;b++){if(actors.actor[b].totaldamage>actors.actor[b].totalheal&&actors.actor[b].damagetakenpercent<8){d+=actors.actor[b].dps;c++}}var f=parseInt(d/c);$("#avgdps").append(f);var a=getJsonData("lowerdps","","",actors.actor);var e=a[0];for(var b=0;b<e.length;b++){if(e[b][1].dps<f&&e[b][1].totaldamage>e[b][1].totalheal&&e[b][1].damagetakenpercent<8){document.write('<a href="'+webroot+"combat/detail/"+e[b][1].id+'" class="'+e[b][1].classtype+'">'+e[b][1].actorname+"</a> ( "+e[b][1].dps+" , "+Math.floor((e[b][1].dps-f)*100/f)+"% )<br>")}}}function displayDieEarly(){var a=getJsonData("death","","",actors.actor);var c=a[0];for(var b=0;b<c.length;b++){if(c[b][1].deaths>0&&c[b][1].deathpercentnum>10){document.write('<a target="_blank" href="'+webroot+"combat/detail/"+c[b][1].id+'" class="'+c[b][1].classtype+'">'+c[b][1].actorname+'</a> ( <a target="_blank" href="'+webroot+"combat/eventfilter/"+c[b][1].bfid+"/0/"+c[b][1].deathstimestamps+"/0/"+c[b][1].guid+'/0/nil#death">'+c[b][1].deathpercent+"%</a> )<br>")}}}function displayIdlemuch(){var a=getJsonData("idle","","",actors.actor);var c=a[0];for(var b=0;b<c.length;b++){if(c[b][1].idletimepercent>10&&c[b][1].totaldamage>c[b][1].totalheal){document.write('<a href="'+webroot+"combat/detail/"+c[b][1].id+'" class="'+c[b][1].classtype+'">'+c[b][1].actorname+"</a> ( "+c[b][1].idletime+" , "+c[b][1].idletimepercent+"% )<br>")}}}function displayTarget(k){var l=[];var g=[];for(var e=0;e<targets.target.length;e++){if(targets.target[e].damage==0){continue}var c=false;if(k==1||k==2){if(targets.target[e].type==1){if(targets.target[e].guid.startWith("0x0")&&targets.target[e].targetguid.startWith("0xF")){c=true}}}if(k==3||k==4){if(targets.target[e].type==2){if(targets.target[e].guid.startWith("0x0")&&targets.target[e].targetguid.startWith("0x0")){if(isHealer(targets.target[e].guid)){c=true}}}}if(k==5){if(targets.target[e].type==3){var f=getName(targets.target[e].guid);var a=getName(targets.target[e].targetguid);if(f!="Unknown"&&a!="Unknown"){if(targets.target[e].guid!=targets.target[e].targetguid){c=true}}}}if(c){var b=false;for(var d=0;d<l.length;d++){if(guidequal(targets.target[e].targetguid,l[d][1])){l[d][0]=l[d][0]+targets.target[e].damage;b=true}}if(!b){l[l.length]=[targets.target[e].damage,targets.target[e].targetguid,targets.target[e].targetname]}b=false;for(d=0;d<g.length;d++){if(guidequal(targets.target[e].guid,g[d][1])){g[d][0]=g[d][0]+targets.target[e].damage;b=true}}if(!b){g[g.length]=[targets.target[e].damage,targets.target[e].guid]}}}l.sort(dynSortFnDown);g.sort(dynSortFnDown);if(k==3||k==4){temp=l;l=g;g=temp}if(l.length==0){return}var h="";h+='<table class="notfix" align=center cellpadding=3 cellspacing=1>';h+="<tr align=center>";h+='<td width=120 class="head">&nbsp;</td>';for(var e=0;e<l.length;e++){h+='<td width=120 class="head">'+((k==3||k==4||k==5)?getName(l[e][1]):getMobName(l[e][1],l[e][2]))+"</td>"}h+="</tr>";for(var d=0;d<g.length;d++){h+="<tr align=center>";h+='<td class="head">'+getName(g[d][1])+"</td>";for(e=0;e<l.length;e++){if(k==1){h+='<td class="'+((d%2==0)?"bgb":"bga")+'">'+getDamagePercent(g[d][1],l[e][1],g[d][0],1)+"</td>"}if(k==2){h+='<td class="'+((d%2==0)?"bgb":"bga")+'">'+getDamagePercent(g[d][1],l[e][1],l[e][0],1)+"</td>"}if(k==3){h+='<td class="'+((d%2==0)?"bgb":"bga")+'">'+getDamagePercent(l[e][1],g[d][1],l[e][0],2)+"</td>"}if(k==4){h+='<td class="'+((d%2==0)?"bgb":"bga")+'">'+getDamagePercent(l[e][1],g[d][1],g[d][0],2)+"</td>"}if(k==5){h+='<td class="'+((d%2==0)?"bgb":"bga")+'">'+getDamagePercent(g[d][1],l[e][1],g[d][0],3)+"</td>"}}h+="</tr>"}h+="<tr align=center>";h+="<td colspan="+(l.length+1)+' class="head">&nbsp;</td>';h+="</tr>";h+="</table>";return h}function getName(a){for(var b=0;b<actors.actor.length;b++){if(actors.actor[b].guid==a){return'<a href="'+webroot+"combat/detail/"+actors.actor[b].id+'" class="'+actors.actor[b].classtype+'">'+actors.actor[b].actorname+"</a>"}}return"Unknown"}function isHealer(a){for(var b=0;b<actors.actor.length;b++){if(actors.actor[b].guid==a){if(actors.actor[b].classtype=="pri"||actors.actor[b].classtype=="sha"||actors.actor[b].classtype=="pal"||actors.actor[b].classtype=="drd"){if(actors.actor[b].spec==1||actors.actor[b].talent==1){return true}}}}return false}function getDamagePercent(a,f,d,c){if(d==0){return""}if(c==3&&a==f){return""}for(var b=0;b<targets.target.length;b++){if(guidequal(targets.target[b].guid,a)&&guidequal(targets.target[b].targetguid,f)&&targets.target[b].type==c){var e=Math.floor(targets.target[b].damage*100/d);if(e>0){return"<span class=lite>"+e+"%</span> ("+formatDamage(targets.target[b].damage)+")"}else{return""}}}return""}function formatDamage(a){var b="";if(a>1000000){b=b+Math.floor(a/1000000)+"m";a=a-(Math.floor(a/1000000)*1000000)}b=b+Math.floor(a/1000)+"k";return b}function displayClassSummary(){var a=initClass();$("#classdps").append(getClassSummaryContent(a,2,5));$("#classhps").append(getClassSummaryContent(a,8,11));$("#classdtps").append(getClassSummaryContent(a,14,15))}function dynSortDpsDown(d,c){if(d[2]<c[2]){return +1}if(d[2]>c[2]){return -1}return 0}function dynSortHpsDown(d,c){if(d[8]<c[8]){return +1}if(d[8]>c[8]){return -1}return 0}function dynSortDtpsDown(d,c){if(d[14]<c[14]){return +1}if(d[14]>c[14]){return -1}return 0}function getClassSummaryContent(a,e,h){var g=dpstiltle;var d=actdpstiltle;if(e==2){a.sort(dynSortDpsDown)}else{if(e==8){a.sort(dynSortHpsDown);g=hpstiltle;d=effhealtiltle}else{a.sort(dynSortDtpsDown);g=dtpstiltle;d=deathstiltle}}var c=0;var f="<table class=general  align=center cellpadding=3 cellspacing=1>";f+='<tr class="head">';f+="<td align=center></td>";f+="<td align=center></td>";f+="<td align=center width=40%>"+percenttile+"</td>";f+="<td align=center>"+g+"</td>";f+="<td align=center>"+d+"</td>";f+="</tr>";for(var b=0;b<a.length;b++){if(a[b][e]==0){continue}if(c==0){c=a[b][e]}f+='<tr class="'+((b%2==0)?"bgb":"bga")+'">';f+='<td align=center><a href="'+webroot+"combat/clazz/"+bfid+"/"+a[b][16]+'"><img src="'+static_webroot+"images/classtype/"+a[b][16]+'.gif" border="0" /></a></td>';f+='<td align=center><span class="lite">'+(e==2?a[b][17]:(e==8?a[b][18]:(a[b][17]+a[b][18])))+"</span></td>";f+='<td><a href="'+webroot+"combat/clazz/"+bfid+"/"+a[b][16]+'"><div class="classtype '+a[b][16]+'"  style="width:'+(95*a[b][e]/c)+'%"><div style="width:100%"></div></div></a></td>';f+="<td align=center>"+a[b][e]+"</td>";f+="<td align=center>"+a[b][h]+"</td>";f+="</tr>"}f+="</table>";return f}var clazztype=["war","pal","dkt","sha","hnt","rog","drd","mag","pri","wrl"];function initClass(){var e=[];for(var w=0;w<10;w++){var n=0;var h=0;var b=0;var q=0;var o=0;var j=0;var u=0;var t=0;var s=0;var g=0;var a=0;var x=0;var r=0;var p=0;var m=0;var d=0;var f=0;var l=0;for(var v=0;v<actors.actor.length;v++){var k=false;if(actors.actor[v].classtype==clazztype[w]){if(actors.actor[v].classtype=="pri"||actors.actor[v].classtype=="sha"||actors.actor[v].classtype=="pal"||actors.actor[v].classtype=="drd"){if(actors.actor[v].effheal>0){if(actors.actor[v].effheal>actors.actor[v].totaldamage){k=true}}}if(!k){if(actors.actor[v].dps>n){n=actors.actor[v].dps}if(h==0||actors.actor[v].dps<h){h=actors.actor[v].dps}b=(actors.actor[v].dps+b*f)/(f+1)}if(!k){if(actors.actor[v].combat_dps>q){q=actors.actor[v].combat_dps}if(o==0||actors.actor[v].combat_dps<h){o=actors.actor[v].combat_dps}j=(actors.actor[v].combat_dps+j*f)/(f+1)}if(k){if(actors.actor[v].hps>u){u=actors.actor[v].hps}if(t==0||actors.actor[v].hps<t){t=actors.actor[v].hps}s=(actors.actor[v].hps+s*l)/(l+1)}if(k){if(actors.actor[v].effheal>g){g=actors.actor[v].effheal}if(a==0||actors.actor[v].effheal<a){a=actors.actor[v].effheal}x=(actors.actor[v].effheal+x*l)/(l+1)}if(actors.actor[v].damagetaken>r){r=actors.actor[v].damagetaken}if(p==0||actors.actor[v].damagetaken<p){p=actors.actor[v].damagetaken}m=(actors.actor[v].damagetaken+m*(l+f))/(l+f+1);if(k){l++}else{f++}d=d+actors.actor[v].deaths}}e[w]=[n,h,Math.floor(b),q,o,Math.floor(j),u,t,Math.floor(s),g,a,Math.floor(x),r,p,Math.floor(m),d,clazztype[w],f,l]}return e}function displayBuffers(b,e,g){var d=sortBuffers(b,e);var f="<table class=smallgeneral align=center cellpadding=3 cellspacing=1>";f+="<tr class=tophead align=center>";f+="<td><span class=bold>"+bufferLocale(g)+"</span></td>";f+="<td><span class=bold>"+bufferLocale("page.gain.times")+"</span></td>";if(e==3||e==4||e==19||e==20){f+="<td><span class=bold>"+bufferLocale("page.gain.uptime")+"</span></td>";f+="<td><span class=bold>"+combatLocale("page.percent")+"</span></td>"}if(e==13||e==15){f+="<td><span class=bold>"+bufferLocale("page.total")+"</span></td>"}f+="</tr>";for(var c=0;c<d.length;c++){var a=d[c];if(a.type==e){f+="<tr class=bgb>";f+="<td class=ltd>"+abilityWithLink(a.abid,a.abname)+"</td>";f+="<td class=rtd>"+a.hits+"</td>";if(e==3||e==4||e==19||e==20){f+="<td class=rtd>"+timeDiff(a.time)+"</td>";f+="<td class=rtd>"+a.percent+"</td>"}if(e==13||e==15){f+="<td class=rtd>"+(a.total>0?(formatNumber(a.total,"#,###")+" "+bufferLocale("page.school."+a.school)):"")+"</td>"}f+="</tr>"}}f+="</table>";document.write(f)}function displayTargets(a,c,f){var e="<table class=smallgeneral align=center cellpadding=1 cellspacing=1>";e+="<tr class=tophead align=center>";e+="<td><span class=bold>"+combatLocale(f)+"</span></td>";e+="<td><span class=bold>"+bufferLocale("page.total")+"</span></td>";e+="</tr>";for(var b=0;b<a.length;b++){var d=a[b];if(d.type==c){if(d.targetname!="ENV"&&d.targetname!="nil"){e+="<tr class=bgb>";e+="<td class=ltd>";if(d.targetid!=0){e+='<a href="'+webroot+"combat/detail/"+d.targetid+'">'}e+=getMobName(d.targetguid,d.targetname);if(d.targetid!=0){e+="</a>"}e+="</td>";e+="<td class=rtd>"+formatNumber(d.damage,"#,###")+"</td>";e+="</tr>"}}}e+="</table>";document.write(e)}function getActorID(a,c){for(var b=0;b<c.length;b++){if(c[b].bfaguid==a){return c[b].id}}return 0}function displayThreat(a,d,e,h){if(e==0){return}var g="<table class=general align=center cellpadding=3 cellspacing=1>";g+="<tr class=tophead align=center>";g+="<td><span class=bold>"+(d==15?bufferLocale(h):combatLocale(h))+"</span></td>";g+="<td><span class=bold>"+bufferLocale("page.total")+"</span></td>";g+="<td><span class=bold>"+threatLocale("page.skill.totalthreat")+"</span></td>";g+="<td><span class=bold>"+combatLocale("page.percent")+"</span></td>";g+="</tr>";for(var b=0;b<a.length;b++){var f=a[b];if(f.type==d&&f.threat>0){var c=f.totaldamage;if(d==2){c=f.totaldamage-f.ovh}if(d==15){c=f.total}g+="<tr class=bgb>";g+="<td class=ltd>"+abilityWithLink(f.abid,f.abname)+"</td>";g+="<td class=rtd>"+formatNumber(c,"#,###")+"</td>";g+="<td class=rtd>"+formatNumber(f.threat,"#,###")+"</td>";g+="<td class=rtd>"+formatNumber(f.threat*100/e,"#.#")+"%</td>";g+="</tr>"}}g+="</table>";document.write(g)}function showabilitytargetdetail(g,b,c,d){var e=$("#tr_"+g+"_"+encode(b)+"_"+d);if(e.css("display")!="none"){e.hide();return false}e.show();var h=$("#div_"+g+"_"+encode(b)+"_"+d);if(h.text()==""){var a=getTargetDetailData(g,b,c,d);var f="";f+='<table width="400" cellpadding=3 cellspacing=1 padding=10>';f+="<tr class=head align=center>";f+='<td width="20">&nbsp;</td>';f+="<td><span class=bold>"+combatLocale("page.playername")+"</span></td>";f+='<td width="100"><span class=bold>'+combatDetailLocale("page.skill.damage")+"</span></td>";f+='<td width="50"><span class=bold>'+combatDetailLocale("page.skill.land")+"</span></td>";f+="</tr>";for(i=0;i<a.length;i++){f+="<tr class="+(i%2==0?"bgb":"bga")+">";f+="<td>&nbsp;</td>";f+="<td>";if(a[i][1].tid!=0){f+='<a href="'+webroot+"combat/detail/"+a[i][1].tid+'">'}f+=getMobName(a[i][1].tuid,a[i][1].tname);if(target.targetid!=0){f+="</a>"}f+="</td>";f+='<td class="rtd">'+formatNumber(a[i][1].total,"#,###")+"</td>";f+='<td class="rtd">'+a[i][1].hits+"</td>";f+="</tr>"}f+="</table>";h.append(f)}return false}function renderdetail(l,e,c){var j="";var f=8;if(l=="damageout"||l=="damagetaken"){if($("#"+l+"tbody").text()==""){displayDamageAbilityDiv(l,e,c,f)}if(l=="damagetaken"){if($("#schooldamagetakentbody").text()==""){displayDamageAbilityDiv("schooldamagetaken",e,c,f)}}}if(l=="healingout"||l=="healingtaken"){if($("#"+l+"tbody").text()==""){var m=getJsonDetailData(l,e,c);var d=0;var k=l=="healingout"?totalhealingout:totalhealingtaken;for(;d<m.length;d++){j+="<tr class="+(d%2==0?"bgb":"bga")+">";if(d==0){j+='<td rowspan="'+((m.length<f?f:m.length)*2)+'" bgcolor="#444444" width="240">';j+='<div id="chart'+l+'"></div>';j+="</td>"}j+='<td align=center><div style="background-color:'+pieColor[d%20]+';width:10px; height:10px;border:#333333 1px solid">&nbsp;</div></td>';j+='<td> (<a href="#" onclick="return showabilitytargetdetail('+m[d][1].abid+" , '"+m[d][1].abname+"' , '"+bfaguid+"' , "+divpagetype(l)+')">+</a>) '+abilityWithLink(m[d][1].abid,m[d][1].abname)+"</td>";j+='<td class="rtd">'+formatNumber(m[d][1].effheal,"#,###")+"</td>";if(l=="healingout"){j+='<td class="rtd">'+formatNumber(m[d][1].effheal*100/totaleffhealingout,"#.#")+"%</td>"}else{j+='<td class="rtd">'+formatNumber(m[d][1].totaldamage*100/k,"#.#")+"%</td>"}var a=(m[d][1].dots!=m[d][1].totalhits?(m[d][1].totalhits-m[d][1].dots):m[d][1].totalhits);var b="";if(m[d][1].hits>0){b+="|"+combatDetailLocale("page.skill.hits")+" : "+m[d][1].hits}if(m[d][1].crits>0){b+="|"+combatDetailLocale("page.skill.crits")+" : "+m[d][1].crits+" ("+formatNumber(m[d][1].crits*100/a,"#.#")+"%)"}j+='<td class="rtd"><span title="'+b+'">'+a+"</span></td>";j+='<td class="rtd">'+formatNumber(m[d][1].totaldamage,"#,###")+"</td>";j+='<td class="rtd">'+formatNumber(m[d][1].ovh*100/m[d][1].totaldamage,"#.#")+"%</td>";j+='<td class="rtd">'+((m[d][1].hitdamage==0)?"":(m[d][1].hits+m[d][1].glancinghit))+"</td>";j+='<td class="rtd">'+((m[d][1].hitdamage==0)?"":('<span title="|'+combatDetailLocale("page.skill.hits")+" : "+(m[d][1].hits+m[d][1].glancinghit)+"|"+combatDetailLocale("page.skill.max")+" : "+formatNumber(m[d][1].hitmax,"#,###")+"|"+combatDetailLocale("page.skill.min")+" : "+formatNumber(m[d][1].hitmin,"#,###")+"|"+combatDetailLocale("page.skill.avg")+" : "+formatNumber(m[d][1].hitdamage/(m[d][1].hits+m[d][1].glancinghit),"#,###")+'">'+formatNumber(m[d][1].hitdamage/(m[d][1].hits+m[d][1].glancinghit),"#,###")+"</span>"))+"</td>";var a=(a==m[d][1].crits)?(m[d][1].crits+m[d][1].dots):(m[d][1].totalhits-m[d][1].dots);j+='<td class="rtd">'+((m[d][1].crits==0)?"":'<span title="|'+combatDetailLocale("page.skill.crits")+" : "+m[d][1].crits+"|"+combatDetailLocale("page.skill.max")+" : "+formatNumber(m[d][1].critmax,"#,###")+"|"+combatDetailLocale("page.skill.min")+" : "+formatNumber(m[d][1].critmin,"#,###")+"|"+combatDetailLocale("page.skill.avg")+" : "+formatNumber(m[d][1].critdamage/(m[d][1].crits),"#,###")+'">'+formatNumber(m[d][1].crits*100/a,"#.#")+"%")+"</span></td>";var h=m[d][1].dots+m[d][1].dotcrits;j+='<td class="rtd">'+((h==0)?"":h)+"</td>";j+='<td class="rtd">'+((h==0)?"":'<span title="|'+combatDetailLocale("page.skill.dots")+" : "+h+"|"+combatDetailLocale("page.skill.max")+" : "+formatNumber(m[d][1].dotmax,"#,###")+"|"+combatDetailLocale("page.skill.min")+" : "+formatNumber(m[d][1].dotmin,"#,###")+"|"+combatDetailLocale("page.skill.avg")+" : "+formatNumber(m[d][1].dotdamage/m[d][1].dots,"#,###")+'">'+formatNumber(m[d][1].dotdamage/m[d][1].dots,"#,###")+"</span>")+"</td>";j+='<td class="rtd">'+((m[d][1].dotcrits==0)?"":'<span title="|'+combatDetailLocale("page.skill.crits")+" : "+m[d][1].dotcrits+"|"+combatDetailLocale("page.skill.max")+" : "+formatNumber(m[d][1].dotcritmax,"#,###")+"|"+combatDetailLocale("page.skill.min")+" : "+formatNumber(m[d][1].dotcritmin,"#,###")+"|"+combatDetailLocale("page.skill.avg")+" : "+formatNumber(m[d][1].dotcritdamage/m[d][1].dotcrits,"#,###")+'">'+formatNumber(m[d][1].dotcrits*100/h,"#.#")+"%")+"</span></td>";j+="</tr>";j+='<tr style="display:none" id=\'tr_'+m[d][1].abid+"_"+encode(m[d][1].abname)+"_"+divpagetype(l)+"'>";j+='<td colspan="15"><div id=\'div_'+m[d][1].abid+"_"+encode(m[d][1].abname)+"_"+divpagetype(l)+"'></div></td>";j+="</tr>"}while(d++<f){j+="<tr>";j+='<td colspan="15">&nbsp;</td>';j+="</tr>"}$("#"+l+"tbody").append(j);var g=new FusionCharts(static_webroot+"images/FusionCharts/FCF_Pie3D.swf","chart"+l,"240","180");g.setDataXML(getDamagePieChart(m,combatDetailLocale("page.skill."+l+".percent"),1));g.render("chart"+l);$("#"+l+"tbody span[title]").css({borderBottom:"1px solid #ffebc6"}).cluetip({width:"135px",splitTitle:"|",arrows:false,dropShadow:false,showTitle:false})}}$("#charttable").hide();if(l=="realtime"){$("#charttable").show();showActorChart("rtchart",chartbegintime,chartendtime,realtimes.realtime,mevs.majorevent,bfaguid)}this.location.hash="#"+l}function displayDamageAbilityDiv(u,h,r,q){var o="";var j=getJsonDetailData(u,h,r);var p=0;var v=u=="damageout"?totaldamageout:totaldamagetaken;for(;p<j.length;p++){o+="<tr class="+(p%2==0?"bgb":"bga")+">";if(p==0){o+='<td rowspan="'+((j.length<q?q:j.length)*2)+'" bgcolor="#444444" width="240">';o+='<div id="chart'+u+'"></div>';o+="</td>"}o+='<td align=center><div style="background-color:'+pieColor[p%20]+';width:10px; height:10px;border:#333333 1px solid">&nbsp;</div></td>';o+='<td> (<a href="#" onclick="return showabilitytargetdetail('+j[p][1].abid+" , '"+j[p][1].abname+"' , '"+bfaguid+"' , "+divpagetype(u)+')">+</a>) '+abilityWithLink(j[p][1].abid,j[p][1].abname)+"</td>";o+='<td class="rtd">'+formatNumber(j[p][1].totaldamage,"#,###")+"</td>";var f=j[p][1].misscount+j[p][1].dodgecount+j[p][1].parrycount+j[p][1].resistcount+j[p][1].deflectcount+j[p][1].immunecount+j[p][1].blockcount+j[p][1].absorbcount;var n=j[p][1].totalhits;var e=j[p][1].dots+j[p][1].dotcrits;var t=n-e-f+((bfid<=7618833&&j[p][1].deflectcount>0)?j[p][1].deflectcount:0);var k=n-e;var d=j[p][1].totaldamage;var b=j[p][1].dotdamage+j[p][1].dotcritdamage;var s=j[p][1].hitdamage+j[p][1].critdamage;var c="";if(j[p][1].hits>0){c+="|"+combatDetailLocale("page.skill.hits")+" : "+j[p][1].hits}if(j[p][1].crits>0){c+="|"+combatDetailLocale("page.skill.crits")+" : "+j[p][1].crits+" ("+formatNumber(j[p][1].crits*100/k,"#.#")+"%)"}if(j[p][1].glancinghit>0){c+="|"+combatDetailLocale("page.skill.glancing")+" : "+j[p][1].glancinghit+" ("+formatNumber(j[p][1].glancinghit*100/k,"#.#")+"%)"}if(f>0){c+="|"+combatDetailLocale("page.skill.miss")+" : "+f+" ("+(f==k?"?":formatNumber(f*100/k,"#.#"))+"%)"}if(j[p][1].dots>0){c+="|"+combatDetailLocale("page.skill.dots")+" : "+j[p][1].dots}if(j[p][1].dotcrits>0){c+="|"+combatDetailLocale("page.skill.crits")+" : "+j[p][1].dotcrits+" ("+formatNumber(j[p][1].dotcrits*100/e,"#.#")+"%)"}o+='<td class="rtd"><span title="'+c+'">'+j[p][1].totalhits+"</span></td>";o+='<td class="rtd">'+formatNumber(j[p][1].totaldamage*100/v,"#.#")+"%</td>";o+='<td class="rtd">'+((t==0)?"":t)+"</td>";o+='<td class="rtd">'+((s==0)?"":('<span title="|'+combatDetailLocale("page.skill.dd")+" : "+t+"|"+combatDetailLocale("page.skill.max")+" : "+formatNumber(j[p][1].critmax==0?j[p][1].hitmax:j[p][1].critmax,"#,###")+"|"+combatDetailLocale("page.skill.min")+" : "+formatNumber(j[p][1].hitmin,"#,###")+"|"+combatDetailLocale("page.skill.avg")+" : "+formatNumber(s/t,"#,###")+'">'+formatNumber(s/t,"#,###")+"</span>"))+"</td>";o+='<td class="rtd">'+((j[p][1].crits==0||j[p][1].crits==k)?"":'<span title="|'+combatDetailLocale("page.skill.crits")+" : "+j[p][1].crits+"|"+combatDetailLocale("page.skill.max")+" : "+formatNumber(j[p][1].critmax,"#,###")+"|"+combatDetailLocale("page.skill.min")+" : "+formatNumber(j[p][1].critmin,"#,###")+"|"+combatDetailLocale("page.skill.avg")+" : "+formatNumber(j[p][1].critdamage/j[p][1].crits,"#,###")+'">'+formatNumber(j[p][1].crits*100/k,"#.#")+"%")+"</span></td>";o+='<td class="rtd">'+((e==0)?"":e)+"</td>";o+='<td class="rtd">'+((e==0)?"":'<span title="|'+combatDetailLocale("page.skill.dots")+" : "+e+"|"+combatDetailLocale("page.skill.max")+" : "+formatNumber(j[p][1].dotcritmax==0?j[p][1].dotmax:j[p][1].dotcritmax,"#,###")+"|"+combatDetailLocale("page.skill.min")+" : "+formatNumber(j[p][1].dotmin,"#,###")+"|"+combatDetailLocale("page.skill.avg")+" : "+formatNumber((j[p][1].dotdamage+j[p][1].dotcritdamage)/e,"#,###")+'">'+formatNumber((j[p][1].dotdamage+j[p][1].dotcritdamage)/e,"#,###")+"</span>")+"</td>";o+='<td class="rtd">'+((j[p][1].dotcrits==0)?"":'<span title="|'+combatDetailLocale("page.skill.crits")+" : "+j[p][1].dotcrits+"|"+combatDetailLocale("page.skill.max")+" : "+formatNumber(j[p][1].dotcritmax,"#,###")+"|"+combatDetailLocale("page.skill.min")+" : "+formatNumber(j[p][1].dotcritmin,"#,###")+"|"+combatDetailLocale("page.skill.avg")+" : "+formatNumber(j[p][1].dotcritdamage/j[p][1].dotcrits,"#,###")+'">'+formatNumber(j[p][1].dotcrits*100/e,"#.#")+"%")+"</span></td>";var a="";if(j[p][1].misscount>0){a+="|"+combatDetailLocale("page.skill.miss")+" : "+j[p][1].misscount+" ("+formatNumber(j[p][1].misscount*100/k,"#.#")+"%)"}if(j[p][1].dodgecount>0){a+="|"+combatDetailLocale("page.skill.dodge")+" : "+j[p][1].dodgecount+" ("+formatNumber(j[p][1].dodgecount*100/k,"#.#")+"%)"}if(j[p][1].parrycount>0){a+="|"+combatDetailLocale("page.skill.parry")+" : "+j[p][1].parrycount+" ("+formatNumber(j[p][1].parrycount*100/k,"#.#")+"%)"}if(j[p][1].resistcount>0){a+="|"+combatDetailLocale("page.skill.resist")+" : "+j[p][1].resistcount+" ("+formatNumber(j[p][1].resistcount*100/k,"#.#")+"%)"}if(j[p][1].deflectcount>0){a+="|"+combatDetailLocale("page.skill.deflect")+" : "+j[p][1].deflectcount+" ("+formatNumber(j[p][1].deflectcount*100/k,"#.#")+"%)"}if(j[p][1].immunecount>0){a+="|"+combatDetailLocale("page.skill.immune")+" : "+j[p][1].immunecount+" ("+formatNumber(j[p][1].immunecount*100/k,"#.#")+"%)"}if(j[p][1].blockcount>0){a+="|"+combatDetailLocale("page.skill.block")+" : "+j[p][1].blockcount+" ("+formatNumber(j[p][1].blockcount*100/k,"#.#")+"%)"}if(j[p][1].absorbcount>0){a+="|"+combatDetailLocale("page.skill.absorb")+" : "+j[p][1].absorbcount+" ("+formatNumber(j[p][1].absorbcount*100/k,"#.#")+"%)"}o+='<td align="center">'+((f==0)?"":'<span title="'+a+'">'+(f==k?"?":formatNumber(f*100/k,"#.#"))+"%</span>")+"</td>";var l=j[p][1].partialresist+j[p][1].partialblock+j[p][1].partialabsorb;var g="";if(j[p][1].partialresist>0){g+="|"+combatDetailLocale("page.skill.partialresist")+" : "+formatNumber(j[p][1].partialresist,"#,###")}if(j[p][1].partialblock>0){g+="|"+combatDetailLocale("page.skill.partialblock")+" : "+formatNumber(j[p][1].partialblock,"#,###")}if(j[p][1].partialabsorb>0){g+="|"+combatDetailLocale("page.skill.partialabsorb")+" : "+formatNumber(j[p][1].partialabsorb,"#,###")}o+='<td align="center">'+((l==0)?"":'<span title="'+g+'">'+formatNumber(l*100/(j[p][1].totaldamage+j[p][1].partialresist+j[p][1].partialblock+j[p][1].partialabsorb),"#.#")+"%</span>")+"</td>";o+="</tr>";o+='<tr style="display:none" id=\'tr_'+j[p][1].abid+"_"+encode(j[p][1].abname)+"_"+divpagetype(u)+"'>";o+='<td colspan="15"><div id=\'div_'+j[p][1].abid+"_"+encode(j[p][1].abname)+"_"+divpagetype(u)+"'></div></td>";o+="</tr>"}while(p++<q){o+='<tr height="25">';o+='<td colspan="15">&nbsp;</td>';o+="</tr>"}$("#"+u+"tbody").append(o);$("#"+u+"tbody span[title]").css({borderBottom:"1px solid #ffebc6"}).cluetip({width:"135px",splitTitle:"|",arrows:false,dropShadow:false,showTitle:false});var m=new FusionCharts(static_webroot+"images/FusionCharts/FCF_Pie3D.swf","chart"+u,"240","180");m.setDataXML(getDamagePieChart(j,combatDetailLocale("page.skill."+(u=="schooldamagetaken"?"damagetaken":u)+".percent"),1));m.render("chart"+u)}function getJsonDetailData(a,f,c){if(a=="healingout"||a=="healingtaken"){f="effheal";c="desc"}var d=0;var e=[];for(var b=0;b<abilities.abs.length;b++){if((a=="damageout"&&abilities.abs[b].type==1)||(a=="healingout"&&abilities.abs[b].type==2)||(a=="damagetaken"&&abilities.abs[b].type==3)||(a=="schooldamagetaken"&&abilities.abs[b].type==5)||(a=="healingtaken"&&abilities.abs[b].type==4)){e[e.length]=[getOrderKey(abilities.abs[b],f),abilities.abs[b]]}}e.sort(c=="asc"?dynSortFnUp:dynSortFnDown);return e}function getTargetDetailData(e,a,b,c){var d=[];for(i=0;i<abtarget.abts.length;i++){if(abtarget.abts[i].abid==e&&abtarget.abts[i].abname==a&&abtarget.abts[i].auid==b&&abtarget.abts[i].type==c){d[d.length]=[abtarget.abts[i].total,abtarget.abts[i]]}}d.sort(dynSortFnDown);return d}function divpagetype(a){switch(a){case"damageout":return 1;case"healingout":return 2;case"damagetaken":return 3;case"healingtaken":return 4;case"schooldamagetaken":return 5}return 1}function showBossrushList(b,c,a,f,e){var d=getObject("layer-"+c+"-"+e+"-"+f);if(d&&d.style){if(d.style.display==""){d.style.display="none"}else{d.style.display="";updateContent(b+"rank/bossrushdetail/"+c+"/"+a+"/"+f+"/"+e,"inlayer-"+c+"-"+e+"-"+f)}}}function showClazzBossRushList(b,c,a,f,e){var d=getObject("layer-"+c+"-"+e+"-"+f);if(d&&d.style){if(d.style.display==""){d.style.display="none"}else{d.style.display="";updateContent(b+"rank/clazzbossrushdetail/"+c+"/"+a+"/"+f+"/"+e,"inlayer-"+c+"-"+e+"-"+f)}}};
