if(document.getElementsByName("keywords")[0].content.indexOf("player")>-1){ main(); } function main(){ var tables = document.getElementsByTagName("table"); var abilities = {"-":0}; var skills = {}; var stats = {}; var features = {}; var masteries = []; var EXP = {}; for(i=0;i tr -> th elements for(k=0;k-1){ output += 1; } } return output; } function align(cell,how="center"){ cell.className = cell.className.replace("leftalign",""); cell.className = cell.className.replace("rightalign",""); cell.className = cell.className.replace("centeralign",""); cell.className += " "+how+"align"; } for(i=0;i-1) { stats["HD Improvement"] = parseInt(exp_value.substring(exp_value.indexOf("d")+1,exp_value.length)); stats["HD Increase"] = parseInt(exp_value.substring(0,exp_value.indexOf("d"))); exp_value = stats["HD Improvement"]+stats["HD Increase"]; } else { exp_value = 0; exp.innerHTML = "0"; } } EXP[stat.innerHTML.trim()] = exp_value; } for(i=0;i-1){ exp = parseInt(exp_str.substring(0,exp_str.indexOf("/"))); } else { exp = parseInt(exp_str); } EXP[feature.innerHTML.trim()] = exp; } } var HP = 1 + Math.floor((skills["Persistence"]+skills["Toughness"])/2); if(HP<1){ HP = 1; } for(h=1;h<=EXP["HP"];h++){ if(h%5==0 && abilities["CON"]>=1){ HP += abilities["CON"]; } else { HP += 1; } } stats["HP"].innerHTML = " "+HP+" "; if(!("HD Increase" in stats) && !("HD Improvement" in stats)){ stats["HD Increase"] = 0; stats["HD Improvement"] = 0; } var hd = [Math.floor(stats["HD Increase"]/2)+1]; hd.push(4+2*Math.floor(stats["HD Improvement"]/2)); stats["Hit Dice"].innerHTML = hd[0]+"d"+hd[1]; var AC = 8 + Math.ceil(skills["Toughness"]/3) + Math.ceil(skills["Evasion"]/3); stats["AC"].innerHTML = " "+AC+" "; var exp_total = [0,parseInt(stats["EXP Total"].innerHTML.trim())]; for(key in EXP){ var temp_exp = parseInt(EXP[key]); if(!isNaN(temp_exp)){ exp_total[0] += temp_exp; } } stats["EXP Total"].innerHTML = (exp_total[1]-exp_total[0])+"/"+exp_total[1]; }