Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Properties
- var skillBackgroundImage = "http://i.imgur.com/wiFOCFZ.png";
- var parryBackgroundImage = "http://i.imgur.com/wiFOCFZ.png";
- var psychicBackgroundImage = "http://i.imgur.com/wiFOCFZ.png";
- var magicBackgroundImage = "http://i.imgur.com/wiFOCFZ.png";
- var combatBackgroundImage = "http://i.imgur.com/wiFOCFZ.png";
- var initBackgroundImage = "http://i.imgur.com/wiFOCFZ.png";
- var skillLineImage = "http://i.imgur.com/M0MBhn2.png";
- var parryLineImage = "http://i.imgur.com/M0MBhn2.png";
- var psychicLineImage = "http://i.imgur.com/M0MBhn2.png";
- var magicLineImage = "http://i.imgur.com/M0MBhn2.png";
- var combatLineImage = "http://i.imgur.com/M0MBhn2.png";
- var initLineImage = "http://i.imgur.com/M0MBhn2.png";
- var critSucCombat = 1; //set to 0 to turn off crit success
- var critFailCombat = 100; //set to 101 to turn off crit failure
- var attackSymbol = "http://i.imgur.com/8qxwt6D.png";
- var shootSymbol = "http://i.imgur.com/0xyAjAv.png";
- var ulfricSymbol = "http://i.imgur.com/86dULxQ.png";
- var critSucParry = 1; //set to 0 to turn off crit success
- var critFailParry = 100; //set to 101 to turn off crit failure
- var parrySymbol = "http://i.imgur.com/uO7vkzJ.png";
- var critSucSkill = 1; //set to 0 to turn off crit success
- var critFailSkill = 100; //set to 101 to turn off crit failure
- var skillSymbol = "http://i.imgur.com/COrr5Ag.png";
- var magicSymbol = "http://i.imgur.com/pusXx1U.png";
- var initSymbol = "http://i.imgur.com/BcYG0mH.png";
- var fortunePointBackground = "http://i.imgur.com/B8isZnB.png";
- var critSucPsychic = 1; //set to 0 to turn off crit success
- var critFailPsychic = 100; //set to 101 to turn off crit failure
- var psychicSymbol = "http://i.imgur.com/0HGEZS1.png";
- /// Templates
- var warhammerCombatTableTemplate = "<table style='max-width: 250px; min-width:150px; background-image:url("+combatBackgroundImage+"); background-size: 100% 100%; background-repeat: no-repeat;font-family: \"Century Gothic\", CenturyGothic, AppleGothic, sans-serif;'>"
- +'<tr><th COLSPAN="2" style="text-align:center;padding-top:15px;">Attack Test<<FORTUNE>></th></tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;">'
- +'<img class="sheet-imghr" style="width:95%;" src="'+combatLineImage+'" />'
- +'</td>'
- +'</tr>'
- + '<tr>'
- +'<td style="text-align:center; width:25%;padding-left:10px;"><img class="sheet-imghr" style="width:100%;" src="<<ATTACK_SYMBOL>>" /></td>'
- +'<td style="text-align:center; width:75%;padding-right:10px;"><b><<ATTACK_NAME>></b></td>'
- +'</tr>'
- +'<td COLSPAN="2" style="text-align:center;">'
- +'<img class="sheet-imghr" style="width:95%;" src="'+combatLineImage+'" />'
- +'</td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Stat :</b></span> <b><<STAT_NUMBER>> %</b></td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Attack :</b></span> <span style="color: <<COLOR>>"><b><<ROLL_NUMBER>></b></span></td>'
- +'</tr>'
- +'<tr>'
- +'<<ROLL_RESULT>>'
- +'</tr>'
- +'<tr>'
- +'<<ROLL_DEGREE>>'
- +'</tr>'
- +'<<IF_HIT>>'
- +'<<QUALITIES>>'
- +'<tr><td COLSPAN="2" style="padding-top:15px;"></td></tr>'
- +'</table>';
- var warhammerCombatSuccessTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;color: green;'><b>Success!</b></td>";
- var warhammerCombatCriticalSuccessTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;color: green;'><b>Critical Success!</b></td>";
- var warhammerCombatFailureTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;color: red;'><b>Failure!</b></td>";
- var warhammerCombatCriticalFailureTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;color: red;'><b>Critical Failure!</b></td>";
- var warhammerCombatDoSTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;'><b>Degree of Success:</b> <<DEGREE>></td>";
- var warhammerCombatDoFTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;'><b>Degree of Failure:</b> <<DEGREE>></td>";
- var warhammerCombatHitTemplate = '<tr>'
- +'<td COLSPAN="2" style="text-align:center;">'
- +'<img class="sheet-imghr" style="width:95%;" src="'+combatLineImage+'" />'
- +'</td>'
- +'</tr>'
- + '<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Hit Location :</b></span> <b><<HIT_LOCATION>></b> (<<HIT_REVERSE>>)</td>'
- +'<tr>'
- + '<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Damage Modifier :</b></span> <b><<DAMAGE_MOD>></b></td>'
- +'<tr>'
- + '<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Damage :</b></span> <span style="color: <<DAMAGE_COLOR1>>;"><b><<DAMAGE1_TOTAL>></b> (<<ROLL_DAMAGE1>>)</span></td>'
- +'<tr>'
- +'<<IMPACT>>'
- +'<<ULFRIC_FURY>>';
- var warhammerCombatImpactTemplate = '<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Damage Impact :</b></span> <span style="color: <<DAMAGE_COLOR2>>;"><b><<DAMAGE2_TOTAL>></b> (<<ROLL_DAMAGE2>>)</span></td>'
- +'<tr>';
- var warhammerCombatUlfricFuryTemplate = '<tr>'
- +'<td COLSPAN="2" style="text-align:center;">'
- +'<img class="sheet-imghr" style="width:95%;" src="'+combatLineImage+'" />'
- +'</td>'
- +'</tr>'
- + '<tr>'
- +'<td style="text-align:center; width:25%;padding-left:10px;"><img class="sheet-imghr" style="width:100%;" src="'+ ulfricSymbol +'" /></td>'
- +"<td style='text-align:center;'><span style='font-style:oblique;font-weight:bolder;color: red;'><b>RIGHTEOUS FURY!</b></td>"
- +'</tr>'
- + '<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Crit Confirm :</b></span><span style="color: <<CONFIRM_COLOR>>"> <b><<CRIT_CONFIRM>></b></span></td>'
- +'<tr>'
- +'<<CRIT_ROLL_CONFIRMED>>';
- var warhammerCombatCriticalDamage = '<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Crit Damage :</b></span> <b><<CRIT_DAMAGE>></b> <<CRIT_ROLLEDDMG>></td>'
- +'<tr>'
- + '<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Total Damage :</b></span> <b><<TOTAL_DAMAGE>></b></td>'
- +'<tr>';
- var warhammerCombatQualitiesTemplate = '<tr>'
- +'<td COLSPAN="2" style="text-align:center;">'
- +'<img class="sheet-imghr" style="width:95%;" src="'+combatLineImage+'" />'
- +'</td>'
- +'</tr>'
- + '<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Qualities :</b></span> <b><<QUALITIES>></b></td>'
- +'<tr>';
- var warhammerCombatRetryTemplate = "<tr><td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;'><a href='<<RETRY>>' style='background-image:url("+fortunePointBackground+"); border:0px; background-repeat:no-repeat; background-size:100% 100%; background-color:transparent; background-position:center; color:black; padding:10px 20px 10px 30px'>Use Fate Point!</a></td></tr>";
- var warhammerCombatUlfricRetryTableTemplate = "<table style='max-width: 250px; background-image:url("+combatBackgroundImage+"); background-size: 100% 100%; background-repeat: no-repeat;font-family: \"Century Gothic\", CenturyGothic, AppleGothic, sans-serif;'>"
- +"<tr><th COLSPAN='2' style='text-align:center;padding-top:15px;'>Ulfric's Fury Fortune Point</th></tr>"
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;">'
- +'<img class="sheet-imghr" style="width:95%;" src="'+combatLineImage+'" />'
- +'</td>'
- +'</tr>'
- + '<tr>'
- +'<td style="text-align:center; width:25%;padding-left:10px;"><img class="sheet-imghr" style="width:100%;" src="<<ATTACK_SYMBOL>>" /></td>'
- +'<td style="text-align:center; width:75%;padding-right:10px;"><b><<ATTACK_NAME>></b></td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;">'
- +'<img class="sheet-imghr" style="width:95%;" src="'+combatLineImage+'" />'
- +'</td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Stat :</b></span> <b><<STAT_NUMBER>> %</b></td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Crit Confirm :</b></span> <span style="color: <<CONFIRM_COLOR>>"><b><<CRIT_CONFIRM>></b></span></td>'
- +'</tr>'
- +'<<IF_HIT>>'
- +'<tr><td COLSPAN="2" style="padding-top:15px;"></td></tr>'
- +'</table>';
- var warhammerParryTableTemplate = "<table style='max-width: 250px; min-width:150px; background-image:url("+parryBackgroundImage+"); background-size: 100% 100%; background-repeat: no-repeat;font-family: \"Century Gothic\", CenturyGothic, AppleGothic, sans-serif;'>"
- +"<tr><th COLSPAN='2' style='text-align:center;padding-top:15px;'>Parry Test<<FORTUNE>></th></tr>"
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;">'
- +'<img class="sheet-imghr" style="width:95%;" src="'+parryLineImage+'" />'
- +'</td>'
- +'</tr>'
- + '<tr>'
- +'<td style="text-align:center; width:25%;padding-left:10px;"><img class="sheet-imghr" style="width:100%;" src="'+ parrySymbol +'" /></td>'
- +'<td style="text-align:center; width:75%;padding-right:10px;"><b><<ATTACK_NAME>></b></td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;">'
- +'<img class="sheet-imghr" style="width:95%;" src="'+parryLineImage+'" />'
- +'</td>'
- +'</tr>'
- + '<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Stat :</b></span> <b><<STAT_NUMBER>> %</b></td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Roll :</b></span> <span style="color: <<COLOR>>"><b><<ROLL_NUMBER>></b></span></td>'
- +'</tr>'
- +'<tr>'
- +'<<ROLL_RESULT>>'
- +'<tr>'
- +'<tr>'
- +'<<ROLL_DEGREE>>'
- +'<tr>'
- +'<<ROLL_RETRY>>'
- +'<tr><td COLSPAN="2" style="padding-top:15px;"></td></tr>'
- +'</table>';
- var warhammerParrySuccessTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;color: green;'><b>Success!</b></td>";
- var warhammerParryCriticalSuccessTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;color: green;'><b>Critical Success!</b></td>";
- var warhammerParryFailureTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;color: red;'><b>Failure!</b></td>";
- var warhammerParryCriticalFailureTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;color: red;'><b>Critical Failure!</b></td>";
- var warhammerParryDoSTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;'><b>Degree of Success:</b> <<DEGREE>></td>";
- var warhammerParryDoFTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;'><b>Degree of Failure:</b> <<DEGREE>></td>";
- var warhammerParryRetryTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;'><a href='<<RETRY>>' style='background-image:url("+fortunePointBackground+"); border:0px; background-repeat:no-repeat; background-size:100% 100%; background-color:transparent; background-position:center; color:black; padding:10px 20px 10px 30px'>Use Fate Point!</a></td>";
- var warhammerPsychicTableTemplate = "<table style='max-width: 250px; min-width:150px; background-image:url("+psychicBackgroundImage+"); background-size: 100% 100%; background-repeat: no-repeat;font-family: \"Century Gothic\", CenturyGothic, AppleGothic, sans-serif;'>"
- +"<tr><th COLSPAN='2' style='text-align:center;padding-top:15px;'>Focus Power Test<<FORTUNE>></th></tr>"
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;">'
- +'<img class="sheet-imghr" style="width:95%;" src="'+psychicLineImage+'" />'
- +'</td>'
- +'</tr>'
- + '<tr>'
- +'<td style="text-align:center; width:25%;padding-left:10px;"><img class="sheet-imghr" style="width:100%;" src="'+ psychicSymbol +'" /></td>'
- +'<td style="text-align:center; width:75%;padding-right:10px;"><b><<PSYCHIC_NAME>></b></td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;">'
- +'<img class="sheet-imghr" style="width:95%;" src="'+psychicLineImage+'" />'
- +'</td>'
- +'</tr>'
- + '<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Sanctioned? :</b></span> <b><<SANCTIONED_NUMBER>></b></td>'
- +'</tr>'
- + '<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Stat :</b></span> <b><<STAT_NUMBER>> %</b></td>'
- +'</tr>'
- + '<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Psy Rating :</b></span> <b><<PSY_NUMBER>></b></td>'
- +'</tr>'
- + '<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Bonus Psy Rating :</b></span> <b><<BONUSPSY_NUMBER>></b></td>'
- +'</tr>'
- + '<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Push Psy Rating :</b></span> <b><<PUSHPSY_NUMBER>></b></td>'
- +'</tr>'
- + '<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Sustained Effects :</b></span> <b><<EFFECTS_NUMBER>></b></td>'
- +'</tr>'
- + '<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Effective PR :</b></span> <b><<EFFECTIVEPSY_NUMBER>></b></td>'
- +'</tr>'
- + '<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Rolling for :</b></span> <b><<EFFECTIVESTAT_NUMBER>></b></td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Roll :</b></span> <span style="color: <<COLOR>>"><b><<ROLL_NUMBER>></b></span></td>'
- +'</tr>'
- +'<<ROLL_DOUBLES>>'
- +'<tr>'
- +'<<ROLL_RESULT>>'
- +'</tr>'
- +'<tr>'
- +'<<ROLL_DEGREE>>'
- +'</tr>'
- +'<<ROLL_DOUBLES_RESULT>>'
- +'<<ROLL_PERILS_OF_WARP>>'
- +'<<ROLL_RETRY>>'
- +'<tr><td COLSPAN="2" style="padding-top:15px;"></td></tr>'
- +'</table>';
- var warhammerPsychicSuccessTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;color: green;'><b>Success!</b></td>";
- var warhammerPsychicDoublesTemplate = "<tr><td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;color: red;'><b>DOUBLES!</b></td></tr>";
- var warhammerPsychicCriticalSuccessTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;color: green;'><b>Critical Success!</b></td>";
- var warhammerPsychicFailureTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;color: red;'><b>Failure!</b></td>";
- var warhammerPsychicCriticalFailureTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;color: red;'><b>Critical Failure!</b></td>";
- var warhammerPsychicDoSTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;'><b>Degree of Success:</b> <<DEGREE>></td>";
- var warhammerPsychicDoFTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;'><b>Degree of Failure:</b> <<DEGREE>></td>";
- var warhammerPsychicPhenomenaTemplate = "<tr><td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;'><b>Psychic Phenomena:</b> <<PHENOMENA>></td></tr>";
- var warhammerPsychicPerilsTemplate = "<tr><td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;color: red;'><b>PERILS OF THE WARP!</b></td></tr><tr><td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;'><b>Perils of the Warp :</b> <<PERILS>></td></tr>";
- var warhammerPsychicRetryTemplate = "<tr><td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;'><a href='<<RETRY>>' style='background-image:url("+fortunePointBackground+"); border:0px; background-repeat:no-repeat; background-size:100% 100%; background-color:transparent; background-position:center; color:black; padding:10px 20px 10px 30px'>Use Fate Point!</a></td></tr>";
- var warhammerSkillTableTemplate = "<table style='max-width: 250px; min-width:150px; background-image:url("+skillBackgroundImage+"); background-size: 100% 100%; background-repeat: no-repeat;font-family: \"Century Gothic\", CenturyGothic, AppleGothic, sans-serif;'>"
- +'<tr><th COLSPAN="2" style="text-align:center;padding-top:15px;">Simple Test<<FORTUNE>></th></tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;">'
- +'<img class="sheet-imghr" style="width:95%;" src="'+skillLineImage+'" />'
- +'</td>'
- +'</tr>'
- + '<tr>'
- +'<td style="text-align:center; width:30%;padding-left:10px;"><img class="sheet-imghr" style="width:100%;" src="' + skillSymbol + '" /></td>'
- +'<td style="text-align:center; width:70%;padding-right:10px;"><b><<SKILL_NAME>></b></td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;">'
- +'<img class="sheet-imghr" style="width:95%;" src="'+skillLineImage+'" />'
- +'</td>'
- +'</tr>'
- + '<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Stat :</b></span> <b><<STAT_NUMBER>> %</b></td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Roll :</b></span> <span style="color: <<COLOR>>"><b><<ROLL_NUMBER>></b></span></td>'
- +'</tr>'
- +'<tr>'
- +'<<ROLL_RESULT>>'
- +'<tr>'
- +'<tr>'
- +'<<ROLL_DEGREE>>'
- +'<tr>'
- +'<<ROLL_RETRY>>'
- +'<tr><td COLSPAN="2" style="padding-top:15px;"></td></tr>'
- +'</table>';
- var warhammerSkillSuccessTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;color: green;'><b>Success!</b></td>";
- var warhammerSkillCriticalSuccessTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;color: green;'><b>Critical Success!</b></td>";
- var warhammerSkillFailureTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;color: red;'><b>Failure!</b></td>";
- var warhammerSkillCriticalFailureTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;color: red;'><b>Critical Failure!</b></td>";
- var warhammerSkillDoSTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;'><b>Degree of Success:</b> <<DEGREE>></td>";
- var warhammerSkillDoFTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;'><b>Degree of Failure:</b> <<DEGREE>></td>";
- var warhammerSkillRetryTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;'><a href='<<RETRY>>' style='background-image:url("+fortunePointBackground+"); border:0px; background-repeat:no-repeat; background-size:100% 100%; background-color:transparent; background-position:center; color:black; padding:10px 20px 10px 30px'>Use Fate Point!</a></td>";
- var warhammerMagicTableTemplate = "<table style='max-width: 250px; min-width:150px; background-image:url("+magicBackgroundImage+"); background-size: 100% 100%; background-repeat: no-repeat;font-family: \"Century Gothic\", CenturyGothic, AppleGothic, sans-serif;'>"
- +'<tr><th COLSPAN="2" style="text-align:center;padding-top:25px;padding-left:10px;padding-right:10px;"><b>Casting Roll</b></th></tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;padding-left:10px;padding-right:10px;">'
- +'<img class="sheet-imghr" style="width:95%;" src="'+magicLineImage+'" />'
- +'</td>'
- +'</tr>'
- + '<tr>'
- +'<td style="text-align:center; width:40%;padding-left:10px;"><img class="sheet-imghr" style="width:100%;" src="<<SPELL_IMAGE>>" /></td>'
- +'<td style="text-align:center; width:60%;padding-right:10px;"><b><<SPELL_NAME>></b></td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;padding-left:10px;padding-right:10px;">'
- +'<img class="sheet-imghr" style="width:95%;" src="'+magicLineImage+'" />'
- +'</td>'
- +'</tr>'
- +'<<INCLUDE_TEXT>>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;padding-left:10px;padding-right:10px;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Casting Number :</b></span> <b><<CAST_NUMBER>></b></td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;padding-left:10px;padding-right:10px;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Magic Characteristic :</b></span> <b><<MAGIC_MAX>></b></td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;padding-left:10px;padding-right:10px;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Magic Used :</b></span> <b><<MAGIC_USED>></b></td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;padding-left:10px;padding-right:10px;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Channel Used :</b></span> <b><<CHANNEL>></b></td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;padding-left:10px;padding-right:10px;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Additional Dice :</b></span> <b><<GOOD_DICE>></b></td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;padding-left:10px;padding-right:10px;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Modifier to Total :</b></span> <b><<MODIFIER_TOTAL>></b></td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;padding-left:10px;padding-right:10px;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Modifier to Dice :</b></span> <b><<MODIFIER_DICE>></b></td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;padding-left:10px;padding-right:10px;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Penalty for Armor :</b></span> <b><<MODIFIER_ARMOR>></b></td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;padding-left:10px;padding-right:10px;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Chaos Dice :</b></span> <b><<CHAOS_DICE>></b></td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;padding-left:10px;padding-right:10px;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Using Dhar :</b></span> <b><<DHAR>></b></td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;padding-left:10px;padding-right:10px;">'
- +'<img class="sheet-imghr" style="width:95%;" src="'+magicLineImage+'" />'
- +'</td>'
- +'</tr>'
- +'<tr>'
- +"<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;color: #B31515;padding-left:10px;padding-right:10px;'><b>Roll</b></td>"
- +'</tr>'
- +'<tr>'
- +"<td COLSPAN='2' style='text-align:center;padding-left:10px;padding-right:10px;'><<DICE_ROLL>></td>"
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;padding-left:10px;padding-right:10px;">'
- +'<img class="sheet-imghr" style="width:95%;" src="'+magicLineImage+'" />'
- +'</td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;padding-left:10px;padding-right:10px;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Casting Number :</b></span> <b><<CAST_NUMBER>></b></td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Total :</b></span> <b><<TOTAL>></b></td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>With Component (+<<COMP>>) :</b></span> <b><<TOTALCOMP>></b></td>'
- +'</tr>'
- +'<tr>'
- +'<<RESULT>>'
- +'</tr>'
- +'<<BAD_STUFF>>'
- +'<tr><td COLSPAN="2" style="padding-top:25px;padding-left:10px;padding-right:10px;"></td></tr>'
- +'</table>';
- var warhammerMagicTextTemplate = '<tr>'
- +"<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;padding-left:10px;padding-right:10px;'><b>Description</b></td>"
- +'</tr>'
- +'<tr>'
- +"<td COLSPAN='2' style='text-align:center;padding-left:10px;padding-right:10px;'><<DESCRIPTION>></td>"
- +'</tr>'
- +'<tr>'
- +"<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;padding-left:10px;padding-right:10px;'><b>Ingredients</b></td>"
- +'</tr>'
- +'<tr>'
- +"<td COLSPAN='2' style='text-align:center;padding-left:10px;padding-right:10px;'><<INGREDIENTS>></td>"
- +'</tr>'
- +'<tr>'
- +'<tr>'
- +"<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;padding-left:10px;padding-right:10px;'><b>Range</b></td>"
- +'</tr>'
- +'<tr>'
- +"<td COLSPAN='2' style='text-align:center;padding-left:10px;padding-right:10px;'><<RANGE>></td>"
- +'</tr>'
- +'<tr>'
- +'<tr>'
- +"<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;padding-left:10px;padding-right:10px;'><b>Casting Time</b></td>"
- +'</tr>'
- +'<tr>'
- +"<td COLSPAN='2' style='text-align:center;padding-left:10px;padding-right:10px;'><<CASTING_TIME>></td>"
- +'</tr>'
- +'<tr>'
- +'<tr>'
- +"<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;padding-left:10px;padding-right:10px;'><b>Duration</b></td>"
- +'</tr>'
- +'<tr>'
- +"<td COLSPAN='2' style='text-align:center;padding-left:10px;padding-right:10px;'><<DURATION>></td>"
- +'</tr>'
- +'<tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;padding-left:10px;padding-right:10px;">'
- +'<img class="sheet-imghr" style="width:95%;" src="'+magicLineImage+'" />'
- +'</td>'
- +'</tr>';
- var warhammerMagicSuccessTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;color: green;'><b>Success!</b></td>";
- var warhammerMagicFailureTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;color: red;'><b>Failure!</b></td>";
- var warhammerMagicDiceTemplate = "<span style='white-space:nowrap;color: black; margin:2px; padding:1px'><b><<DICE_TOTAL>></b> (<<DICE_RESULT>>)</span> <<DICE_ROLL>>";
- var warhammerChaosDiceTemplate = "<span style='white-space:nowrap;color: red; margin:2px; padding:1px'><b><<DICE_RESULT>></b></span> <<DICE_ROLL>>";
- var warhammerMagicBadStuffTemplate = '<tr>'
- +"<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;color: red;padding-left:10px;padding-right:10px;'>BAD STUFF HAPPENS!<br>TZEENTCH'S CURSE / WRATH OF THE GODS!</td>"
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;padding-left:10px;padding-right:10px;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Bad Stuff Roll :</b></span> <span style="color:red"><b><<BAD_ROLL>></b></span></td>'
- +'</tr>'
- +'<<BAD_STUFF>>';
- var warhammerMagicBadStuffDoublesTemplate = '<tr>'
- +"<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;color: red;padding-left:10px;padding-right:10px;'>DOUBLES!</td>"
- +'</tr>';
- var warhammerInitiativeTableTemplate = "<table style='max-width: 250px; min-width:150px; background-image:url("+initBackgroundImage+"); background-size: 100% 100%; background-repeat: no-repeat;font-family: \"Century Gothic\", CenturyGothic, AppleGothic, sans-serif;'>"
- +'<tr><th COLSPAN="2" style="text-align:center;padding-top:15px;">Initiative Roll</th></tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;">'
- +'<img class="sheet-imghr" style="width:95%;" src="'+initLineImage+'" />'
- +'</td>'
- +'</tr>'
- + '<tr>'
- +'<td style="text-align:center; width:25%;padding-left:10px;"><img class="sheet-imghr" style="width:100%;" src="' + initSymbol + '" /></td>'
- +'<td style="text-align:center; width:75%;padding-right:10px;"><b><<CHAR_NAME>></b></td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;">'
- +'<img class="sheet-imghr" style="width:95%;" src="'+initLineImage+'" />'
- +'</td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Bonus :</b></span> <b><<AGILITY>></b></td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Roll :</b></span> <b><<ROLL>></b></td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;">'
- +'<img class="sheet-imghr" style="width:95%;" src="'+initLineImage+'" />'
- +'</td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Total :</b></span> <b><<TOTAL>></b></td>'
- +'</tr>'
- +'<tr><td COLSPAN="2" style="padding-top:15px;"></td></tr>'
- +'</table>';
- var warhammerAttackTableTemplate = "<table style='max-width: 250px; min-width:150px; background-image:url("+combatBackgroundImage+"); background-size: 100% 100%; background-repeat: no-repeat;font-family: \"Century Gothic\", CenturyGothic, AppleGothic, sans-serif;'>"
- +'<tr><th COLSPAN="2" style="text-align:center;padding-top:15px;"><<ATTACK_OR_PARRY>> Test<<FORTUNE>></th></tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;">'
- +'<img class="sheet-imghr" style="width:95%;" src="'+combatLineImage+'" />'
- +'</td>'
- +'</tr>'
- + '<tr>'
- +'<td style="text-align:center; width:25%;padding-left:10px;"><img class="sheet-imghr" style="width:100%;" src="<<ATTACK_SYMBOL>>" /></td>'
- +'<td style="text-align:center; width:75%;padding-right:10px;"><b><<ATTACK_NAME>></b></td>'
- +'</tr>'
- +'<td COLSPAN="2" style="text-align:center;">'
- +'<img class="sheet-imghr" style="width:95%;" src="'+combatLineImage+'" />'
- +'</td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Stat :</b></span> <b><<STAT_NUMBER>> %</b></td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Roll :</b></span> <span style="color: <<COLOR>>"><b><<ROLL_NUMBER>></b></span></td>'
- +'</tr>'
- +'<<JAMMED>>'
- +'<tr>'
- +'<<ROLL_RESULT>>'
- +'</tr>'
- +'<tr>'
- +'<<ROLL_DEGREE>>'
- +'</tr>'
- +'<<IF_HIT>>'
- +'<<QUALITIES>>'
- +'<tr><td COLSPAN="2" style="padding-top:15px;"></td></tr>'
- +'</table>';
- var warhammerAttackJammedTemplate = "<tr><td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;color: red;'><b>Possibly Jammed?</b></td></tr>"
- var warhammerAttackSuccessTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;color: green;'><b>Success!</b></td>";
- var warhammerAttackCriticalSuccessTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;color: green;'><b>Critical Success!</b></td>";
- var warhammerAttackFailureTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;color: red;'><b>Failure!</b></td>";
- var warhammerAttackCriticalFailureTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;color: red;'><b>Critical Failure!</b></td>";
- var warhammerAttackDoSTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;'><b>Degree of Success:</b> <<DEGREE>></td>";
- var warhammerAttackDoFTemplate = "<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;'><b>Degree of Failure:</b> <<DEGREE>></td>";
- var warhammerAttackHitTemplate = '<tr>'
- +'<td COLSPAN="2" style="text-align:center;">'
- +'<img class="sheet-imghr" style="width:95%;" src="'+combatLineImage+'" />'
- +'</td>'
- +'</tr>'
- + '<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515; "><b>Hit Location :</b></span> <b><<HIT_LOCATION>></b> (<<HIT_REVERSE>>)</td>'
- +'</tr>';
- var warhammerAttackQualitiesTemplate = '<tr>'
- +'<td COLSPAN="2" style="text-align:center;">'
- +'<img class="sheet-imghr" style="width:95%;" src="'+combatLineImage+'" />'
- +'</td>'
- +'</tr>'
- + '<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><div style="padding-left:25px;padding-right:25px;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Qualities :</b></span> <b><<QUALITIES>></b></div></td>'
- +'</tr>';
- var warhammerAttackRetryTemplate = '<tr><td COLSPAN="2" style="text-align:center;font-style:oblique;font-weight:bolder;"><a href="<<RETRY>>" style="background-image:url('+fortunePointBackground+'); border:0px; background-repeat:no-repeat; background-size:100% 100%; background-color:transparent; background-position:center; color:black; padding:10px 20px 10px 30px">Use Fate Point!</a></td></tr>';
- ///Functions
- function WarhammerCombatDice(char, player, targetnum, mod, moddamage, impact, symbolTest, hidden, title, qualities, whoSent, retried, playerid, lastId)
- {
- if (isNaN(symbolTest)) symbolTest = 0;
- var addTitle = false;
- if (title != null)
- {
- if (title != "")
- {
- addTitle = true;
- }
- }
- var addQualities = false;
- if (qualities != null)
- {
- if (qualities != "")
- {
- addQualities = true;
- }
- }
- if (impact != 0 && impact != 1)
- {
- impact = 0;
- }
- var target = Number(targetnum) + Number(mod);
- var targetNumber = Number(target);
- //if (targetNumber > 99) targetNumber = 99;
- if (targetNumber < 1) targetNumber = 1;
- var tableCreation = warhammerCombatTableTemplate;
- if (addTitle == true)
- {
- tableCreation = tableCreation.replace("<<ATTACK_NAME>>", title + " ");
- }
- else
- {
- tableCreation = tableCreation.replace("<<ATTACK_NAME>>", "Custom Attack");
- }
- tableCreation = tableCreation.replace("<<STAT_NUMBER>>", targetNumber);
- if (symbolTest == 0)
- {
- tableCreation = tableCreation.replace("<<ATTACK_SYMBOL>>", attackSymbol);
- }
- else
- {
- tableCreation = tableCreation.replace("<<ATTACK_SYMBOL>>", shootSymbol);
- }
- if (retried == true)
- {
- tableCreation = tableCreation.replace("<<FORTUNE>>", " (Fortune Point)");
- }
- else
- {
- tableCreation = tableCreation.replace("<<FORTUNE>>", "");
- }
- var resulttemp = warhammerCombatFailureTemplate;
- var rollOne = randomInteger(10) - 1;
- var rollTwo = randomInteger(10) - 1;
- var sum = (rollOne * 10) + rollTwo;
- if (sum == 0) sum = 100;
- var succ = false;
- var color = "red";
- if (sum <= targetNumber && sum != 100)
- {
- succ = true;
- color = "green";
- resulttemp = warhammerCombatSuccessTemplate;
- }
- if (sum <= critSucCombat)
- {
- resulttemp = warhammerCombatCriticalSuccessTemplate;
- }
- if (sum >= critFailCombat)
- {
- succ = false;
- color = "red";
- resulttemp = warhammerCombatCriticalFailureTemplate;
- }
- tableCreation = tableCreation.replace("<<COLOR>>", color);
- tableCreation = tableCreation.replace("<<ROLL_NUMBER>>", sum);
- var MoS = 0;
- if (sum > targetNumber || sum == 100)
- {
- MoS = sum - targetNumber;
- }
- else
- {
- MoS = targetNumber - sum;
- }
- if (succ == true)
- {
- tableCreation = tableCreation.replace("<<ROLL_DEGREE>>", warhammerCombatDoSTemplate);
- }
- else
- {
- tableCreation = tableCreation.replace("<<ROLL_DEGREE>>", warhammerCombatDoFTemplate);
- }
- tableCreation = tableCreation.replace("<<DEGREE>>", Math.floor((MoS + 10)/10));
- tableCreation = tableCreation.replace("<<ROLL_RESULT>>", resulttemp);
- if (succ == false)
- {
- if (retried == false)
- {
- tableCreation = tableCreation.replace("<<IF_HIT>>", warhammerCombatRetryTemplate);
- if (addQualities == false) qualities = "None";
- if (addTitle == false) title = "Custom Attack";
- tableCreation = tableCreation.replace("<<RETRY>>", "!wardmgrollretryattack ;" + char + ";" + player + ";" + targetnum + ";" + mod + ";" + moddamage + ";" + impact + ";" + symbolTest + ";" + hidden + ";" + title + ";" + qualities + ";" + whoSent + ";" + true + ";" + playerid + ";" + lastId);
- }
- else
- {
- tableCreation = tableCreation.replace("<<IF_HIT>>", "");
- }
- }
- if (succ == true)
- {
- tableCreation = tableCreation.replace("<<IF_HIT>>", warhammerCombatHitTemplate);
- var sum2 = (rollTwo * 10) + rollOne;
- if (sum2 == 0) sum2 = 100;
- var locationHit = "";
- if (sum2 >= 86)
- {
- locationHit = "Left Leg";
- }
- else if (sum2 >= 71)
- {
- locationHit = "Right Leg";
- }
- else if (sum2 >= 31)
- {
- locationHit = "Body";
- }
- else if (sum2 >= 21)
- {
- locationHit = "Left Arm";
- }
- else if (sum2 >= 11)
- {
- locationHit = "Right Arm";
- }
- else
- {
- locationHit = "Head";
- }
- tableCreation = tableCreation.replace("<<HIT_LOCATION>>", locationHit);
- tableCreation = tableCreation.replace("<<HIT_REVERSE>>", sum2);
- var damage1 = randomInteger(10);
- var damage2 = -1;
- if (impact == 1)
- {
- damage2 = randomInteger(10);
- }
- var main_damage = damage1;
- if (damage2 > damage1)
- {
- main_damage = damage2;
- }
- main_damage = main_damage + Number(moddamage);
- var ulric = false;
- if (damage1 == 10 || damage2 == 10)
- {
- ulric = true;
- }
- var tempdamage = damage1 + Number(moddamage);
- if (Number(moddamage) > 0)
- {
- tableCreation = tableCreation.replace("<<DAMAGE_MOD>>", "+<<DAMAGE_MOD>>");
- }
- else if (Number(moddamage) < 0)
- {
- tableCreation = tableCreation.replace("<<DAMAGE_MOD>>", "-<<DAMAGE_MOD>>");
- }
- tableCreation = tableCreation.replace("<<DAMAGE_MOD>>", moddamage);
- tableCreation = tableCreation.replace("<<DAMAGE1_TOTAL>>", tempdamage);
- tableCreation = tableCreation.replace("<<ROLL_DAMAGE1>>", damage1);
- if (impact == 1)
- {
- tableCreation = tableCreation.replace("<<IMPACT>>", warhammerCombatImpactTemplate);
- tempdamage = damage2 + Number(moddamage);
- tableCreation = tableCreation.replace("<<DAMAGE2_TOTAL>>", tempdamage);
- tableCreation = tableCreation.replace("<<ROLL_DAMAGE2>>", damage2);
- }
- else
- {
- tableCreation = tableCreation.replace("<<IMPACT>>", "");
- }
- if (ulric == true)
- {
- tableCreation = tableCreation.replace("<<ULFRIC_FURY>>", warhammerCombatUlfricFuryTemplate);
- if(damage1 == 10) tableCreation = tableCreation.replace("<<DAMAGE_COLOR1>>", "green");
- else tableCreation = tableCreation.replace("<<DAMAGE_COLOR1>>", "black");
- if(damage2 == 10) tableCreation = tableCreation.replace("<<DAMAGE_COLOR2>>", "green");
- else tableCreation = tableCreation.replace("<<DAMAGE_COLOR2>>", "black");
- var rollConfirmCrit = randomInteger(100);
- var colorConfirm = "red";
- if (rollConfirmCrit <= targetNumber && rollConfirmCrit != 100)
- {
- colorConfirm = "green";
- tableCreation = tableCreation.replace("<<CRIT_ROLL_CONFIRMED>>", warhammerCombatCriticalDamage);
- var tempCritDamage = randomInteger(10);
- var tempTotalCritDamage = tempCritDamage;
- var rolledstr = "(" + tempCritDamage;
- if (tempCritDamage == 10) rolledstr +="<b>!</b>";
- while(tempCritDamage == 10)
- {
- tempCritDamage = randomInteger(10);
- tempTotalCritDamage = tempTotalCritDamage + tempCritDamage;
- rolledstr += "," + tempCritDamage;
- if (tempCritDamage == 10) rolledstr +="<b>!</b>";
- }
- rolledstr += ")";
- main_damage = main_damage + tempTotalCritDamage;
- tableCreation = tableCreation.replace("<<CRIT_DAMAGE>>", tempTotalCritDamage);
- tableCreation = tableCreation.replace("<<CRIT_ROLLEDDMG>>", rolledstr);
- tableCreation = tableCreation.replace("<<TOTAL_DAMAGE>>", main_damage);
- }
- else
- {
- tableCreation = tableCreation.replace("<<CRIT_ROLL_CONFIRMED>>", warhammerCombatRetryTemplate);
- tableCreation = tableCreation.replace("<<RETRY>>", "!wardmgrollretrycrit ;" + char + ";" + player + ";" + targetNumber + ";" + main_damage + ";" + hidden + ";" + whoSent + ";" + title + ";" + playerid + ";" + lastId);
- }
- tableCreation = tableCreation.replace("<<CRIT_CONFIRM>>", rollConfirmCrit);
- tableCreation = tableCreation.replace("<<CONFIRM_COLOR>>", colorConfirm);
- }
- else
- {
- tableCreation = tableCreation.replace("<<ULFRIC_FURY>>", "");
- tableCreation = tableCreation.replace("<<DAMAGE_COLOR1>>", "black");
- tableCreation = tableCreation.replace("<<DAMAGE_COLOR2>>", "black");
- }
- }
- if (addQualities == true)
- {
- tableCreation = tableCreation.replace("<<QUALITIES>>", warhammerCombatQualitiesTemplate);
- tableCreation = tableCreation.replace("<<QUALITIES>>", qualities);
- }
- else
- {
- tableCreation = tableCreation.replace("<<QUALITIES>>", "");
- }
- if (hidden==2)
- {
- var tempText = "/w " + whoSent + " "+tableCreation;
- if (player==1) sendChat("player|"+char, tempText);
- else sendChat("character|"+char, tempText);
- }
- if (hidden >= 1) tableCreation = "/w gm " + tableCreation;
- if (player==1) sendChat("player|"+char, tableCreation);
- else sendChat("character|"+char, tableCreation);
- };
- function WarhammerCombatDiceRetryCrit(char, player, targetNumber, main_damage, hidden, whoSent, title)
- {
- var tableCreation = warhammerCombatUlfricRetryTableTemplate;
- var addTitle = false;
- if (title != null)
- {
- if (title != "")
- {
- addTitle = true;
- }
- }
- if (addTitle == true)
- {
- tableCreation = tableCreation.replace("<<ATTACK_NAME>>", title + " ");
- }
- else
- {
- tableCreation = tableCreation.replace("<<ATTACK_NAME>>", "Custom Attack");
- }
- tableCreation = tableCreation.replace("<<ATTACK_SYMBOL>>", ulfricSymbol);
- tableCreation = tableCreation.replace("<<STAT_NUMBER>>", targetNumber);
- var rollConfirmCrit = randomInteger(100);
- main_damage = Number(main_damage);
- var colorConfirm = "red";
- if (rollConfirmCrit <= targetNumber && rollConfirmCrit != 100)
- {
- colorConfirm = "green";
- tableCreation = tableCreation.replace("<<IF_HIT>>", warhammerCombatCriticalDamage);
- var tempCritDamage = randomInteger(10);
- var tempTotalCritDamage = tempCritDamage;
- var rolledstr = "(" + tempCritDamage;
- if (tempCritDamage == 10) rolledstr +="<b>!</b>";
- while(tempCritDamage == 10)
- {
- tempCritDamage = randomInteger(10);
- tempTotalCritDamage = tempTotalCritDamage + tempCritDamage;
- rolledstr += "," + tempCritDamage;
- if (tempCritDamage == 10) rolledstr +="<b>!</b>";
- }
- rolledstr += ")"
- main_damage = main_damage + tempTotalCritDamage;
- tableCreation = tableCreation.replace("<<CRIT_DAMAGE>>", tempTotalCritDamage);
- tableCreation = tableCreation.replace("<<CRIT_ROLLEDDMG>>", rolledstr);
- tableCreation = tableCreation.replace("<<TOTAL_DAMAGE>>", main_damage);
- }
- else
- {
- tableCreation = tableCreation.replace("<<IF_HIT>>", "");
- }
- tableCreation = tableCreation.replace("<<CRIT_CONFIRM>>", rollConfirmCrit);
- tableCreation = tableCreation.replace("<<CONFIRM_COLOR>>", colorConfirm);
- if (hidden==2)
- {
- var tempText = "/w " + whoSent + " "+tableCreation;
- if (player==1) sendChat("player|"+char, tempText);
- else sendChat("character|"+char, tempText);
- }
- if (hidden >= 1) tableCreation = "/w gm " + tableCreation;
- if (player==1) sendChat("player|"+char, tableCreation);
- else sendChat("character|"+char, tableCreation);
- };
- function WarhammerParryDice(char, player, targetnum, mod, hidden, title, whoSent, retried, playerid, lastId)
- {
- var addTitle = false;
- if (title != null)
- {
- if (title != "")
- {
- addTitle = true;
- }
- }
- var target = Number(targetnum) + Number(mod);
- var targetNumber = Number(target);
- //if (targetNumber > 99) targetNumber = 99;
- if (targetNumber < 1) targetNumber = 1;
- var tableCreation = warhammerParryTableTemplate;
- if (addTitle == true)
- {
- tableCreation = tableCreation.replace("<<ATTACK_NAME>>", title + " ");
- }
- else
- {
- tableCreation = tableCreation.replace("<<ATTACK_NAME>>", "Custom Parry");
- }
- if ( Boolean(retried) == true)
- {
- tableCreation = tableCreation.replace("<<FORTUNE>>", " (Fortune's Point)");
- }
- else
- {
- tableCreation = tableCreation.replace("<<FORTUNE>>", "");
- }
- tableCreation = tableCreation.replace("<<STAT_NUMBER>>", targetNumber);
- var resulttemp = warhammerParryFailureTemplate;
- var rollOne = randomInteger(10) - 1;
- var rollTwo = randomInteger(10) - 1;
- var sum = (rollOne * 10) + rollTwo;
- if (sum == 0) sum = 100;
- var succ = false;
- var color = "red";
- if (sum <= targetNumber && sum != 100)
- {
- succ = true;
- color = "green";
- resulttemp = warhammerParrySuccessTemplate;
- }
- if (sum <= critSucParry)
- {
- resulttemp = warhammerParryCriticalSuccessTemplate;
- }
- if (sum >= critFailParry)
- {
- succ = false;
- color = "red";
- resulttemp = warhammerParryCriticalFailureTemplate;
- }
- tableCreation = tableCreation.replace("<<COLOR>>", color);
- tableCreation = tableCreation.replace("<<ROLL_NUMBER>>", sum);
- var MoS = 0;
- if (sum > targetNumber)
- {
- MoS = sum - targetNumber;
- }
- else
- {
- MoS = targetNumber - sum;
- }
- if (succ == true)
- {
- tableCreation = tableCreation.replace("<<ROLL_DEGREE>>", warhammerParryDoSTemplate);
- }
- else
- {
- tableCreation = tableCreation.replace("<<ROLL_DEGREE>>", warhammerParryDoFTemplate);
- }
- tableCreation = tableCreation.replace("<<DEGREE>>", Math.floor((MoS + 10)/10));
- tableCreation = tableCreation.replace("<<ROLL_RESULT>>", resulttemp);
- if (succ == false && Boolean(retried) == false)
- {
- tableCreation = tableCreation.replace("<<ROLL_RETRY>>", warhammerParryRetryTemplate);
- tableCreation = tableCreation.replace("<<RETRY>>", "!warparryrollretry ;" + char + ";" + player + ";" + targetnum + ";" + mod + ";" + hidden + ";" + title + ";" + whoSent + ";true" + ";" + playerid + ";" + lastId);
- }
- else
- {
- tableCreation = tableCreation.replace("<<ROLL_RETRY>>", "");
- }
- if (hidden==2)
- {
- var tempText = "/w " + whoSent + " "+tableCreation;
- if (player==1) sendChat("player|"+char, tempText);
- else sendChat("character|"+char, tempText);
- }
- if (hidden >= 1) tableCreation = "/w gm " + tableCreation;
- if (player==1) sendChat("player|"+char, tableCreation);
- else sendChat("character|"+char, tableCreation);
- };
- function WarhammerPsychicDice(char, player, targetnum, mod, optionPsy, psy, bonuspsy, pushpsy, effects, sanctioned, hidden, title, whoSent, retried, playerid, lastId)
- {
- var addTitle = false;
- if (title != null)
- {
- if (title != "")
- {
- addTitle = true;
- }
- }
- // 0 unfettered, 1 fettered, 2 push
- if (!optionPsy)
- {
- optionPsy = 0;
- }
- optionPsy = Number(optionPsy);
- if (!mod)
- {
- mod = 0;
- }
- mod = Number(mod);
- if (!psy)
- {
- psy = 0;
- }
- psy = Number(psy);
- if (!bonuspsy)
- {
- bonuspsy = 0;
- }
- bonuspsy = Number(bonuspsy);
- if (!sanctioned)
- {
- sanctioned = 0;
- }
- sanctioned = Number(sanctioned);
- if (!pushpsy)
- {
- pushpsy = 0;
- }
- if (optionPsy != 2) pushpsy = 0;
- if (sanctioned == 0) if (pushpsy > 3) pushpsy = 3;
- pushpsy = Number(pushpsy);
- if (!effects)
- {
- effects = 0;
- }
- effects = Number(effects);
- if (effects != 0)
- {
- effects = effects + 1;
- }
- var target = Number(targetnum) + Number(mod);
- var targetNumber = Number(target);
- //if (targetNumber > 99) targetNumber = 99;
- if (targetNumber < 1) targetNumber = 1;
- var tableCreation = warhammerPsychicTableTemplate;
- if (addTitle == true)
- {
- tableCreation = tableCreation.replace("<<PSYCHIC_NAME>>", title);
- }
- else
- {
- tableCreation = tableCreation.replace("<<PSYCHIC_NAME>>", "Custom Focus Power Test");
- }
- if ( Boolean(retried) == true)
- {
- tableCreation = tableCreation.replace("<<FORTUNE>>", " (Fortune's Point)");
- }
- else
- {
- tableCreation = tableCreation.replace("<<FORTUNE>>", "");
- }
- var effectivePsy = 0;
- if (optionPsy == 0)
- {
- effectivePsy = Math.floor(psy/2) + bonuspsy - effects;
- }
- if (optionPsy == 1)
- {
- effectivePsy = psy + bonuspsy - effects;
- }
- if (optionPsy == 2)
- {
- effectivePsy = psy + pushpsy + bonuspsy - effects;
- }
- if (effectivePsy == 0)
- {
- if (player==1) sendChat("player|"+char, "Effective Psy Rating is ZERO! Power failed.");
- else sendChat("character|"+char, "Effective Psy Rating is ZERO! Power failed.");
- return;
- }
- if (sanctioned == 0)
- {
- tableCreation = tableCreation.replace("<<SANCTIONED_NUMBER>>", "Heretic!");
- }
- else
- {
- tableCreation = tableCreation.replace("<<SANCTIONED_NUMBER>>", "Yes");
- }
- tableCreation = tableCreation.replace("<<PSY_NUMBER>>", psy);
- tableCreation = tableCreation.replace("<<BONUSPSY_NUMBER>>", bonuspsy);
- tableCreation = tableCreation.replace("<<PUSHPSY_NUMBER>>", pushpsy);
- tableCreation = tableCreation.replace("<<EFFECTS_NUMBER>>", effects);
- tableCreation = tableCreation.replace("<<EFFECTIVEPSY_NUMBER>>", effectivePsy);
- var effetiveTargetNum = 0;
- effetiveTargetNum = targetNumber + (effectivePsy * 5);
- var testedVersus = effetiveTargetNum;
- //if (testedVersus > 99) testedVersus = 99;
- if (effetiveTargetNum > 90) effetiveTargetNum = 90;
- tableCreation = tableCreation.replace("<<EFFECTIVESTAT_NUMBER>>", testedVersus + " (" + effetiveTargetNum + ")");
- tableCreation = tableCreation.replace("<<STAT_NUMBER>>", targetNumber);
- targetNumber = effetiveTargetNum;
- var resulttemp = warhammerPsychicFailureTemplate;
- var rollOne = randomInteger(10) - 1;
- var rollTwo = randomInteger(10) - 1;
- var sum = (rollOne * 10) + rollTwo;
- if (sum == 0) sum = 100;
- var succ = false;
- var color = "red";
- if (sum <= targetNumber && sum < 91)
- {
- succ = true;
- color = "green";
- resulttemp = warhammerPsychicSuccessTemplate;
- }
- if (sum <= critSucPsychic)
- {
- resulttemp = warhammerPsychicCriticalSuccessTemplate;
- }
- if (sum >= critFailPsychic)
- {
- succ = false;
- color = "red";
- resulttemp = warhammerPsychicCriticalFailureTemplate;
- }
- if (rollOne == rollTwo && optionPsy != 0)
- {
- tableCreation = tableCreation.replace("<<ROLL_DOUBLES>>", warhammerPsychicDoublesTemplate);
- var badroll = randomInteger(100);
- var additionalBad = 0;
- if (sanctioned == 0)
- {
- additionalBad = additionalBad + (effectivePsy * 5);
- if (optionPsy == 2)
- {
- additionalBad = additionalBad + (pushpsy * 10);
- }
- }
- if (sanctioned == 1)
- {
- if (optionPsy == 2)
- {
- additionalBad = additionalBad + (pushpsy * 5);
- }
- }
- if (effects > 0)
- {
- additionalBad = additionalBad + 10;
- }
- badroll = badroll + additionalBad;
- tableCreation = tableCreation.replace("<<ROLL_DOUBLES_RESULT>>", warhammerPsychicPhenomenaTemplate);
- tableCreation = tableCreation.replace("<<PHENOMENA>>", badroll);
- if (badroll >= 75)
- {
- tableCreation = tableCreation.replace("<<ROLL_PERILS_OF_WARP>>", warhammerPsychicPerilsTemplate);
- var verybadroll = randomInteger(100);
- verybadroll = verybadroll + additionalBad;
- tableCreation = tableCreation.replace("<<PERILS>>", verybadroll);
- }
- else
- {
- tableCreation = tableCreation.replace("<<ROLL_PERILS_OF_WARP>>", "");
- }
- }
- else
- {
- tableCreation = tableCreation.replace("<<ROLL_DOUBLES>>", "");
- tableCreation = tableCreation.replace("<<ROLL_DOUBLES_RESULT>>", "");
- tableCreation = tableCreation.replace("<<ROLL_PERILS_OF_WARP>>", "");
- }
- tableCreation = tableCreation.replace("<<COLOR>>", color);
- tableCreation = tableCreation.replace("<<ROLL_NUMBER>>", sum);
- var MoS = 0;
- if (sum > testedVersus)
- {
- MoS = sum - testedVersus;
- }
- else
- {
- MoS = testedVersus - sum;
- }
- if (succ == true)
- {
- tableCreation = tableCreation.replace("<<ROLL_DEGREE>>", warhammerPsychicDoSTemplate);
- }
- else
- {
- tableCreation = tableCreation.replace("<<ROLL_DEGREE>>", warhammerPsychicDoFTemplate);
- }
- tableCreation = tableCreation.replace("<<DEGREE>>", Math.floor((MoS + 10)/10));
- tableCreation = tableCreation.replace("<<ROLL_RESULT>>", resulttemp);
- if (succ == false && Boolean(retried) == false)
- {
- tableCreation = tableCreation.replace("<<ROLL_RETRY>>", warhammerPsychicRetryTemplate);
- tableCreation = tableCreation.replace("<<RETRY>>", "!warPsychicrollretry ;" + char + ";" + player + ";" + targetnum + ";" + mod + ";" + optionPsy + ";" + psy + ";" + bonuspsy + ";" + pushpsy + ";" + effects + ";" + sanctioned + ";" + hidden + ";" + title + ";" + whoSent + ";true" + ";" + playerid + ";" + lastId);
- }
- else
- {
- tableCreation = tableCreation.replace("<<ROLL_RETRY>>", "");
- }
- if (hidden==2)
- {
- var tempText = "/w " + whoSent + " "+tableCreation;
- if (player==1) sendChat("player|"+char, tempText);
- else sendChat("character|"+char, tempText);
- }
- if (hidden >= 1) tableCreation = "/w gm " + tableCreation;
- if (player==1) sendChat("player|"+char, tableCreation);
- else sendChat("character|"+char, tableCreation);
- };
- function WarhammerForceField(char, player, quality, explode, hidden, whoSent, playerid)
- {
- if (!quality)
- {
- quality = 50;
- }
- if (!explode)
- {
- explode = 15;
- }
- if (quality > 100) quality = 100;
- if (explode < 0) explode = 0;
- quality = Number(quality);
- explode = Number(explode);
- var rollOne = randomInteger(10) - 1;
- var rollTwo = randomInteger(10) - 1;
- var sum = (rollOne * 10) + rollTwo;
- if (sum == 0) sum = 100;
- var mess = "<table style='max-width: 250px; min-width:150px; background-image:url("+combatBackgroundImage+"); background-size: 100% 100%; background-repeat: no-repeat;font-family: \"Century Gothic\", CenturyGothic, AppleGothic, sans-serif;'>"
- +'<tr><th COLSPAN="2" style="text-align:center;padding-top:15px;">Force Field Test</th></tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;">'
- +'<img class="sheet-imghr" style="width:95%;" src="'+combatLineImage+'" />'
- +'</td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Rating :</b></span> '+quality+' %</td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Overload on or less :</b></span> '+explode+' %</td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Roll :</b></span> <b>'+sum+' </b></td>'
- +'</tr>';
- if (sum <= quality)
- {
- mess = mess
- +'<tr>'
- +"<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;color:green'><b>And it worked!</b></td>"
- +'</tr>';
- }
- else
- {
- mess = mess
- +'<tr>'
- +"<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;color:red'><b>... and I got hit...</b></td>"
- +'</tr>';
- }
- if (sum <= explode)
- {
- mess = mess
- +'<tr>'
- +"<td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;color:red'><b>... but stopped working. Repair is Tech Use -30...</b></td>"
- +'</tr>';
- }
- mess = mess +'<tr><td COLSPAN="2" style="padding-top:15px;"></td></tr>'
- +'</table>';
- if (hidden==2)
- {
- var tempText = "/w " + whoSent + " "+mess;
- if (player==1) sendChat("player|"+char, tempText);
- else sendChat("character|"+char, tempText);
- }
- if (hidden >= 1) mess = "/w gm " + mess;
- if (player==1) sendChat("player|"+char, mess);
- else sendChat("character|"+char, mess);
- };
- function WarhammerDice(char, player, targetnum, mod, hidden, title, whoSent, retried, playerid, lastId)
- {
- var addTitle = false;
- if (title != null)
- {
- if (title != "")
- {
- addTitle = true;
- }
- }
- var target = Number(targetnum) + Number(mod);
- var targetNumber = Number(target);
- //if (targetNumber > 99) targetNumber = 99;
- if (targetNumber < 1) targetNumber = 1;
- var tableCreation = warhammerSkillTableTemplate;
- if (addTitle == true)
- {
- tableCreation = tableCreation.replace("<<SKILL_NAME>>", title + " ");
- }
- else
- {
- tableCreation = tableCreation.replace("<<SKILL_NAME>>", "Custom Roll");
- }
- if ( Boolean(retried) == true)
- {
- tableCreation = tableCreation.replace("<<FORTUNE>>", " (Fate's Point)");
- }
- else
- {
- tableCreation = tableCreation.replace("<<FORTUNE>>", "");
- }
- tableCreation = tableCreation.replace("<<STAT_NUMBER>>", targetNumber);
- var resulttemp = warhammerSkillFailureTemplate;
- var rollOne = randomInteger(10) - 1;
- var rollTwo = randomInteger(10) - 1;
- var sum = (rollOne * 10) + rollTwo;
- if (sum == 0) sum = 100;
- var succ = false;
- var color = "red";
- if (sum <= targetNumber && sum != 100)
- {
- succ = true;
- color = "green";
- resulttemp = warhammerSkillSuccessTemplate;
- }
- if (sum <= critSucSkill)
- {
- resulttemp = warhammerSkillCriticalSuccessTemplate;
- }
- if (sum >= critFailSkill)
- {
- succ = false;
- color = "red";
- resulttemp = warhammerSkillCriticalFailureTemplate;
- }
- tableCreation = tableCreation.replace("<<COLOR>>", color);
- tableCreation = tableCreation.replace("<<ROLL_NUMBER>>", sum);
- var MoS = 0;
- if (sum > targetNumber)
- {
- MoS = sum - targetNumber;
- }
- else
- {
- MoS = targetNumber - sum;
- }
- if (succ == true)
- {
- tableCreation = tableCreation.replace("<<ROLL_DEGREE>>", warhammerSkillDoSTemplate);
- }
- else
- {
- tableCreation = tableCreation.replace("<<ROLL_DEGREE>>", warhammerSkillDoFTemplate);
- }
- tableCreation = tableCreation.replace("<<DEGREE>>", Math.floor((MoS + 10)/10));
- tableCreation = tableCreation.replace("<<ROLL_RESULT>>", resulttemp);
- if (succ == false && retried == false)
- {
- tableCreation = tableCreation.replace("<<ROLL_RETRY>>", warhammerSkillRetryTemplate);
- tableCreation = tableCreation.replace("<<RETRY>>", "!warrollretry ;" + char + ";" + player + ";" + targetnum + ";" + mod + ";" + hidden + ";" + title + ";" + whoSent + ";true;" + playerid + ";" + lastId);
- }
- else
- {
- tableCreation = tableCreation.replace("<<ROLL_RETRY>>", "");
- }
- if (hidden==2)
- {
- var tempText = "/w " + whoSent + " "+tableCreation;
- if (player==1) sendChat("player|"+char, tempText);
- else sendChat("character|"+char, tempText);
- }
- if (hidden >= 1) tableCreation = "/w gm " + tableCreation;
- if (player==1) sendChat("player|"+char, tableCreation);
- else sendChat("character|"+char, tableCreation);
- };
- function WarhammerInitiative(char, player, agility, hidden, name, whoSent)
- {
- var addName = false;
- if (name != null)
- {
- if (name != "")
- {
- addName = true;
- }
- }
- agility = Number(agility);
- var tableCreation = warhammerInitiativeTableTemplate;
- if (addName == true)
- {
- tableCreation = tableCreation.replace("<<CHAR_NAME>>", name);
- }
- else
- {
- tableCreation = tableCreation.replace("<<CHAR_NAME>>", "NPC");
- }
- tableCreation = tableCreation.replace("<<AGILITY>>", agility);
- var initTotal = 0;
- var initRoll = randomInteger(10);
- initTotal += initRoll;
- tableCreation = tableCreation.replace("<<ROLL>>", initRoll);
- initTotal += agility;
- tableCreation = tableCreation.replace("<<TOTAL>>", initTotal);
- var turnorder;
- if (Campaign().get("turnorder") == "")
- {
- turnorder = [];
- }
- else
- turnorder = JSON.parse(Campaign().get("turnorder"));
- turnorder.push({
- id: "-1",
- pr: initTotal,
- custom: name
- });
- Campaign().set("turnorder", JSON.stringify(turnorder));
- if (hidden==2)
- {
- var tempText = "/w " + whoSent + " "+tableCreation;
- if (player==1) sendChat("player|"+char, tempText);
- else sendChat("character|"+char, tempText);
- }
- if (hidden >= 1) tableCreation = "/w gm " + tableCreation;
- if (player==1) sendChat("player|"+char, tableCreation);
- else sendChat("character|"+char, tableCreation);
- };
- function WarhammerMagicDice(char, player, magic, magicmax, channel, gooddice, modtototal, modtodice, armorpenal, chaosdice, dhar, componentvalue, hidden, spellnumber, includetext, spellname, spelldesc, spellcomponent, spelltime, spellduration, spellrange, spellimage, whoSent)
- {
- if (!spellname)
- {
- spellname = "Custom Spell";
- }
- if (!spelldesc)
- {
- spelldesc = "?";
- }
- if (spelldesc == "") spelldesc = "?";
- if (!spellcomponent)
- {
- spellcomponent = "?";
- }
- if (spellcomponent == "") spellcomponent = "?";
- if (!spellimage)
- {
- spellimage = magicSymbol;
- }
- if (!spelltime)
- {
- spelltime = "?";
- }
- if (spelltime == "") spelltime = "?";
- if (!spellduration)
- {
- spellduration = "?";
- }
- if (spellduration == "") spellduration = "?";
- if (!spellrange)
- {
- spellrange = "?";
- }
- if (spellrange == "") spellrange = "?";
- dhar = Number(dhar);
- if (dhar != 0 && dhar != 1)
- {
- dhar = 0;
- }
- componentvalue = Number(componentvalue);
- if (componentvalue < 0)
- {
- componentvalue = 0;
- }
- magic = Number(magic);
- if (magic < 1) magic = 1;
- magicmax = Number(magicmax);
- if (magicmax < 0) magicmax = 1;
- if (magicmax < magic) magic = magicmax;
- if (channel != 1 && channel != 0) channel = 0;
- if (includetext != 1 && includetext != 0) includetext = 0;
- modtototal = Number(modtototal);
- modtodice = Number(modtodice);
- armorpenal = Number(armorpenal);
- gooddice = Number(gooddice);
- if (gooddice < 0) gooddice = 0;
- chaosdice = Number(chaosdice);
- if (chaosdice < 0) chaosdice = 0;
- spellnumber = Number(spellnumber);
- if (spellnumber < 1) spellnumber = 1;
- var tableCreation = warhammerMagicTableTemplate;
- tableCreation = tableCreation.replace("<<SPELL_NAME>>", spellname);
- tableCreation = tableCreation.replace("<<SPELL_IMAGE>>", spellimage);
- if (includetext == 1)
- {
- tableCreation = tableCreation.replace("<<INCLUDE_TEXT>>", warhammerMagicTextTemplate);
- tableCreation = tableCreation.replace("<<DESCRIPTION>>", spelldesc);
- tableCreation = tableCreation.replace("<<INGREDIENTS>>", spellcomponent);
- tableCreation = tableCreation.replace("<<RANGE>>", spellrange);
- tableCreation = tableCreation.replace("<<CASTING_TIME>>", spelltime);
- tableCreation = tableCreation.replace("<<DURATION>>", spellduration);
- }
- else
- {
- tableCreation = tableCreation.replace("<<INCLUDE_TEXT>>", "");
- }
- tableCreation = tableCreation.replace("<<CAST_NUMBER>>", spellnumber);
- tableCreation = tableCreation.replace("<<CAST_NUMBER>>", spellnumber);
- tableCreation = tableCreation.replace("<<MAGIC_MAX>>", magicmax);
- tableCreation = tableCreation.replace("<<MAGIC_USED>>", magic);
- tableCreation = tableCreation.replace("<<GOOD_DICE>>", gooddice);
- var channelstr = "";
- if (channel == 0) channelstr = "No";
- else channelstr = "Yes (+" + magicmax + ")";
- tableCreation = tableCreation.replace("<<CHANNEL>>", channelstr);
- tableCreation = tableCreation.replace("<<MODIFIER_TOTAL>>", modtototal);
- tableCreation = tableCreation.replace("<<MODIFIER_DICE>>", modtodice);
- tableCreation = tableCreation.replace("<<MODIFIER_ARMOR>>", armorpenal);
- tableCreation = tableCreation.replace("<<CHAOS_DICE>>", chaosdice);
- if (dhar == 1)
- {
- tableCreation = tableCreation.replace("<<DHAR>>", "Yes");
- }
- else
- {
- tableCreation = tableCreation.replace("<<DHAR>>", "No");
- }
- var diceResults = [];
- var numberDice = gooddice + magic + dhar;
- var rollSum = 0;
- var lowestRoll = 0;
- for (var i = 0; i < numberDice; i++)
- {
- var roll = randomInteger(10);
- diceResults.push(roll);
- if (lowestRoll >= roll) lowestRoll = roll;
- if (lowestRoll == 0) lowestRoll = roll;
- rollSum += roll + modtodice;
- tableCreation = tableCreation.replace("<<DICE_ROLL>>", warhammerMagicDiceTemplate);
- tableCreation = tableCreation.replace("<<DICE_TOTAL>>", (roll + modtodice));
- tableCreation = tableCreation.replace("<<DICE_RESULT>>", roll);
- if ((diceResults.length % 3) == 0) tableCreation = tableCreation.replace("<<DICE_ROLL>>", "<br><<DICE_ROLL>>");
- }
- if (dhar == 1)
- {
- rollSum -= lowestRoll;
- tableCreation = tableCreation.replace("<<DICE_ROLL>>", "<br><b>Dhar, not counting roll:</b> " + lowestRoll.toString() + "<<DICE_ROLL>>");
- }
- if (chaosdice > 0) tableCreation = tableCreation.replace("<<DICE_ROLL>>", "<br><<DICE_ROLL>>");
- for (var i = 0; i < chaosdice; i++)
- {
- var roll = randomInteger(10);
- diceResults.push(roll);
- tableCreation = tableCreation.replace("<<DICE_ROLL>>", warhammerChaosDiceTemplate);
- tableCreation = tableCreation.replace("<<DICE_RESULT>>", roll);
- if (((i+1) % 3) == 0) tableCreation = tableCreation.replace("<<DICE_ROLL>>", "<br><<DICE_ROLL>>");
- }
- tableCreation = tableCreation.replace("<<DICE_ROLL>>", "");
- rollSum += armorpenal;
- rollSum += modtototal;
- if (channel == 1) rollSum += magicmax;
- var dup = false
- if (diceResults.length > 1)
- {
- var sorted_arr = diceResults.slice().sort();
- for (var i = 0; i < diceResults.length - 1; i++)
- {
- if (sorted_arr[i + 1] == sorted_arr[i])
- {
- dup = true;
- break;
- }
- }
- }
- if (dup == true)
- {
- tableCreation = tableCreation.replace("<<BAD_STUFF>>", warhammerMagicBadStuffTemplate);
- var badroll = randomInteger(100);
- tableCreation = tableCreation.replace("<<BAD_ROLL>>", badroll);
- if ((badroll % 11) == 0)
- {
- tableCreation = tableCreation.replace("<<BAD_STUFF>>", warhammerMagicBadStuffDoublesTemplate);
- }
- else
- {
- tableCreation = tableCreation.replace("<<BAD_STUFF>>", "");
- }
- }
- else
- {
- tableCreation = tableCreation.replace("<<BAD_STUFF>>", "");
- }
- if (rollSum >= spellnumber)
- {
- tableCreation = tableCreation.replace("<<RESULT>>", warhammerMagicSuccessTemplate);
- }
- else
- {
- tableCreation = tableCreation.replace("<<RESULT>>", warhammerMagicFailureTemplate);
- }
- tableCreation = tableCreation.replace("<<TOTAL>>", rollSum);
- var sumcomponent = componentvalue + rollSum;
- tableCreation = tableCreation.replace("<<COMP>>", componentvalue);
- tableCreation = tableCreation.replace("<<TOTALCOMP>>", sumcomponent);
- if (hidden==2)
- {
- var tempText = "/w " + whoSent + " "+tableCreation;
- if (player==1) sendChat("player|"+char, tempText);
- else sendChat("character|"+char, tempText);
- }
- if (hidden >= 1) tableCreation = "/w gm " + tableCreation;
- if (player==1) sendChat("player|"+char, tableCreation);
- else sendChat("character|"+char, tableCreation);
- };
- function WarhammerAttackDice(char, player, targetnum, mod, ranged, hidden, title, qualities, whoSent, retried, playerid, lastId)
- {
- var addTitle = false;
- if (title != null)
- {
- if (title != "")
- {
- addTitle = true;
- }
- }
- var addQualities = false;
- if (qualities != null)
- {
- if (qualities != "")
- {
- addQualities = true;
- }
- }
- else
- {
- qualities = "None";
- }
- if (!ranged)
- {
- ranged = 0;
- }
- if (!targetnum)
- {
- targetnum = 0;
- }
- if (!mod)
- {
- mod = 0;
- }
- ranged = Number(ranged);
- var target = Number(targetnum) + Number(mod);
- var targetNumber = Number(target);
- //if (targetNumber > 99) targetNumber = 99;
- if (targetNumber < 1) targetNumber = 1;
- var tableCreation = warhammerAttackTableTemplate;
- if (ranged == 0)
- {
- tableCreation = tableCreation.replace("<<ATTACK_SYMBOL>>", attackSymbol);
- tableCreation = tableCreation.replace("<<ATTACK_OR_PARRY>>", "Melee");
- }
- if (ranged == 1)
- {
- tableCreation = tableCreation.replace("<<ATTACK_SYMBOL>>", shootSymbol);
- tableCreation = tableCreation.replace("<<ATTACK_OR_PARRY>>", "Ranged");
- }
- if (ranged == 2)
- {
- tableCreation = tableCreation.replace("<<ATTACK_SYMBOL>>", parrySymbol);
- tableCreation = tableCreation.replace("<<ATTACK_OR_PARRY>>", "Parry");
- }
- if (addTitle == true)
- {
- tableCreation = tableCreation.replace("<<ATTACK_NAME>>", title + "<<PARRY_TEST>> ");
- if (ranged == 2)
- {
- tableCreation = tableCreation.replace("<<PARRY_TEST>>", "'s Parry ");
- }
- else
- {
- tableCreation = tableCreation.replace("<<PARRY_TEST>>", "");
- }
- }
- else
- {
- tableCreation = tableCreation.replace("<<ATTACK_NAME>>", "Custom Roll");
- }
- if ( Boolean(retried) == true)
- {
- tableCreation = tableCreation.replace("<<FORTUNE>>", " (Fate's Point)");
- }
- else
- {
- tableCreation = tableCreation.replace("<<FORTUNE>>", "");
- }
- tableCreation = tableCreation.replace("<<STAT_NUMBER>>", targetNumber);
- var resulttemp = warhammerAttackFailureTemplate;
- var rollOne = randomInteger(10) - 1;
- var rollTwo = randomInteger(10) - 1;
- var sum = (rollOne * 10) + rollTwo;
- if (sum == 0) sum = 100;
- var succ = false;
- var color = "red";
- if (sum <= targetNumber && sum != 100)
- {
- succ = true;
- color = "green";
- resulttemp = warhammerAttackSuccessTemplate;
- }
- if (sum <= critSucSkill)
- {
- resulttemp = warhammerAttackCriticalSuccessTemplate;
- }
- if (sum >= critFailSkill)
- {
- succ = false;
- color = "red";
- resulttemp = warhammerAttackCriticalFailureTemplate;
- }
- if (ranged == 1 && sum > 95)
- {
- tableCreation = tableCreation.replace("<<JAMMED>>", warhammerAttackJammedTemplate);
- }
- else
- {
- tableCreation = tableCreation.replace("<<JAMMED>>", "");
- }
- tableCreation = tableCreation.replace("<<COLOR>>", color);
- tableCreation = tableCreation.replace("<<ROLL_NUMBER>>", sum);
- var MoS = 0;
- if (sum > targetNumber)
- {
- MoS = sum - targetNumber;
- }
- else
- {
- MoS = targetNumber - sum;
- }
- if (succ == true)
- {
- tableCreation = tableCreation.replace("<<ROLL_DEGREE>>", warhammerAttackDoSTemplate);
- }
- else
- {
- tableCreation = tableCreation.replace("<<ROLL_DEGREE>>", warhammerAttackDoFTemplate);
- }
- tableCreation = tableCreation.replace("<<DEGREE>>", Math.floor((MoS + 10)/10));
- tableCreation = tableCreation.replace("<<ROLL_RESULT>>", resulttemp);
- if (succ == false && retried == false)
- {
- title = title.replace(/'/g , "");
- qualities = qualities.replace(/'/g , "");
- title = title.replace(/:/g , "");
- qualities = qualities.replace(/:/g , "");
- tableCreation = tableCreation.replace("<<IF_HIT>>", warhammerAttackRetryTemplate);
- if (title.indexOf('[') != -1 && title.indexOf('[') != 0) title = title.substring(0, title.indexOf('['));
- tableCreation = tableCreation.replace("<<RETRY>>", "!warattackrollretry ;" + char + ";" + player + ";" + targetnum + ";" + mod + ";" + ranged + ";" + hidden + ";" + title + ";" + qualities + ";" + whoSent + ";true;" + playerid + ";" + lastId);
- }
- if (succ == true && ranged != 2)
- {
- tableCreation = tableCreation.replace("<<IF_HIT>>", warhammerAttackHitTemplate);
- var sum2 = (rollTwo * 10) + rollOne;
- if (sum2 == 0) sum2 = 100;
- var locationHit = "";
- if (sum2 >= 91)
- {
- locationHit = "Left Leg";
- }
- else if (sum2 >= 81)
- {
- locationHit = "Right Leg";
- }
- else if (sum2 >= 56)
- {
- locationHit = "Body";
- }
- else if (sum2 >= 36)
- {
- locationHit = "Left Arm";
- }
- else if (sum2 >= 16)
- {
- locationHit = "Right Arm";
- }
- else
- {
- locationHit = "Head";
- }
- tableCreation = tableCreation.replace("<<HIT_LOCATION>>", locationHit);
- tableCreation = tableCreation.replace("<<HIT_REVERSE>>", sum2);
- }
- else
- {
- tableCreation = tableCreation.replace("<<IF_HIT>>", "");
- }
- if (addQualities == true)
- {
- tableCreation = tableCreation.replace("<<QUALITIES>>", warhammerAttackQualitiesTemplate);
- tableCreation = tableCreation.replace("<<QUALITIES>>", qualities);
- }
- else
- {
- tableCreation = tableCreation.replace("<<QUALITIES>>", "");
- }
- if (hidden==2)
- {
- var tempText = "/w " + whoSent + " "+tableCreation;
- if (player==1) sendChat("player|"+char, tempText);
- else sendChat("character|"+char, tempText);
- }
- if (hidden >= 1) tableCreation = "/w gm " + tableCreation;
- if (player==1) sendChat("player|"+char, tableCreation);
- else sendChat("character|"+char, tableCreation);
- };
- function WarhammerDamageHits(char, player, melee, hits, damage, tearing, typeDamage, penetration, hidden, weaponName, whoSent, playerid)
- {
- if (!melee)
- {
- melee = 1;
- }
- if (melee != 0 && melee != 1) melee = 1;
- if (!hits)
- {
- hits = 1;
- }
- if (hits <= 0) hits = 1;
- if (!damage)
- {
- damage = "1d10";
- }
- if (!tearing)
- {
- tearing = 0;
- }
- if (!typeDamage)
- {
- typeDamage = "Unknown";
- }
- if (!penetration)
- {
- penetration = 0;
- }
- if (!weaponName)
- {
- weaponName = "Custom Weapon";
- }
- penetration = Number(penetration);
- tearing = Number(tearing);
- hits = Number(hits);
- var meleeText = "Melee ";
- if (melee != 1) meleeText = "Ranged ";
- var mess = "<table style='max-width: 250px; min-width:150px; background-image:url("+combatBackgroundImage+"); background-size: 100% 100%; background-repeat: no-repeat;font-family: \"Century Gothic\", CenturyGothic, AppleGothic, sans-serif;'>"
- +'<tr><th COLSPAN="2" style="text-align:center;padding-top:15px;">'+meleeText+'Damage Hits</th></tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;">'
- +'<img class="sheet-imghr" style="width:95%;" src="'+combatLineImage+'" />'
- +'</td>'
- +'</tr>'
- + '<tr>'
- +'<td COLSPAN="2" style="text-align:center; width:100%;padding-right:10px;padding-left:10px"><b>'+weaponName+'</b></td>'
- +'</tr>'
- +'<td COLSPAN="2" style="text-align:center;">'
- +'<img class="sheet-imghr" style="width:95%;" src="'+combatLineImage+'" />'
- +'</td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Penetration :</b></span> [['+penetration+']] </td>'
- +'</tr>'
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Damage Type :</b></span> <b>'+typeDamage+' </b></td>'
- +'</tr>';
- if (tearing == 1)
- {
- mess = mess
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;"><span style="font-style:oblique;font-weight:bolder;color: #B31515;"><b>Tearing? :</b></span> <b>Rip and Tear!</b></td>'
- +'</tr>';
- }
- var damageQuery = "";
- for (i = 0; i < hits; i++)
- {
- damageQuery = damageQuery + "[[" + damage + " ]] ";
- }
- mess = mess
- +'<tr>'
- +'<td COLSPAN="2" style="text-align:center;">'
- +'<img class="sheet-imghr" style="width:95%;" src="'+combatLineImage+'" />'
- +'</td>'
- +'</tr>'
- +"<tr><td COLSPAN='2' style='text-align:center;font-style:oblique;font-weight:bolder;height:25px'><b>Damage</b></td></tr>"
- +'<tr>'
- +"<td COLSPAN='2' style='text-align:center;'>"+damageQuery+"</td>"
- +'</tr>';
- mess = mess +'<tr><td COLSPAN="2" style="padding-top:15px;"></td></tr>'
- +'</table>';
- if (hidden==2)
- {
- var tempText = "/w " + whoSent + " "+mess;
- if (player==1) sendChat("player|"+char, tempText);
- else sendChat("character|"+char, tempText);
- }
- if (hidden >= 1) mess = "/w gm " + mess;
- if (player==1) sendChat("player|"+char, mess);
- else sendChat("character|"+char, mess);
- };
- on("chat:message", function(msg) {
- if ( msg.type != 'api' ) return;
- var cmd = "";
- if (_.has(msg, 'inlinerolls')) {
- cmd = _.chain(msg.inlinerolls)
- .reduce(function(previous, current, index) {
- previous['$[[' + index + ']]'] = current.results.total || 0;
- return previous;
- },{})
- .reduce(function(previous, current, index) {
- return previous.replace(index, current);
- }, msg.content)
- .value();
- } else {
- cmd = msg.content;
- }
- var cmd = cmd.toLowerCase().split(' ');
- if ( cmd[0] == "!warroll" )
- {
- var inputName = msg.who;
- var list = findObjs( {
- _type: "character",
- name: inputName
- });
- var cmd2 = msg.content.split(' ');
- var str = "";
- for (i = 4; i < cmd2.length; i++)
- {
- str = str + " " + cmd2[i];
- }
- str = str.substring(1);
- var roll = 0;
- if (isNaN(cmd[1]) == false)
- {
- roll = cmd[1];
- }
- else
- {
- msg.inlinerolls
- }
- if (_.has(state.WarhammerDiceStatus.playerDiceLastRoll, msg.playerid))
- {
- state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid].LastRollId = (Math.random() + 1).toString(36).substring(7);;
- }
- else
- {
- state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid] = { LastRollId: (Math.random() + 1).toString(36).substring(7)}
- }
- if (list.length == 0)
- {
- WarhammerDice( msg.playerid, 1, cmd[1], cmd[2], cmd[3], str, inputName, false, msg.playerid, state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid].LastRollId);
- }
- else
- {
- WarhammerDice( list[0].id, 0, cmd[1], cmd[2], cmd[3], str, inputName, false, msg.playerid, state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid].LastRollId);
- }
- }
- else if ( cmd[0] == "!warmagicroll" )
- {
- var inputName = msg.who;
- var list = findObjs( {
- _type: "character",
- name: inputName
- });
- var cmd2 = msg.content.split(' ');
- var str = "";
- for (i = 14; i < cmd2.length; i++)
- {
- str = str + " " + cmd2[i];
- }
- str = str.substring(1);
- var spelldesc = str.splitArgs();
- if (_.has(state.WarhammerDiceStatus.playerDiceLastRoll, msg.playerid))
- {
- state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid].LastRollId = (Math.random() + 1).toString(36).substring(7);;
- }
- else
- {
- state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid] = { LastRollId: (Math.random() + 1).toString(36).substring(7)}
- }
- var roll = 0;
- if (isNaN(cmd[1]) == false)
- {
- roll = cmd[1];
- }
- else
- {
- msg.inlinerolls
- }
- if (list.length == 0)
- {
- //magic, magicmax, channel, gooddice, modtototal, modtodice, armorpenal, chaosdice, dhar, componentvalue, hidden, spellnumber, spellname, spelldesc, spellcomponent, spelltime, spellduration, spellrange, spellimage, whoSent)
- WarhammerMagicDice( msg.playerid, 1, cmd[1], cmd[2], cmd[3], cmd[4], cmd[5], cmd[6], cmd[7], cmd[8], cmd[9], cmd[10], cmd[11], cmd[12], cmd[13], spelldesc[0], spelldesc[1], spelldesc[2], spelldesc[3], spelldesc[4], spelldesc[5], spelldesc[6], inputName);
- }
- else
- {
- //magic, magicmax, channel, gooddice, modtototal, modtodice, armorpenal, chaosdice, dhar, componentvalue, hidden, spellnumber, spellname, spelldesc, spellcomponent, spelltime, spellduration, spellrange, spellimage, whoSent)
- WarhammerMagicDice( list[0].id, 0, cmd[1], cmd[2], cmd[3], cmd[4], cmd[5], cmd[6], cmd[7], cmd[8], cmd[9], cmd[10], cmd[11], cmd[12], cmd[13], spelldesc[0], spelldesc[1], spelldesc[2], spelldesc[3], spelldesc[4], spelldesc[5], spelldesc[6], inputName);
- }
- }
- else if ( cmd[0] == "!warinitroll" )
- {
- var inputName = msg.who;
- var list = findObjs( {
- _type: "character",
- name: inputName
- });
- var cmd2 = msg.content.split(' ');
- var str = "";
- for (i = 3; i < cmd2.length; i++)
- {
- str = str + " " + cmd2[i];
- }
- str = str.substring(1);
- if (_.has(state.WarhammerDiceStatus.playerDiceLastRoll, msg.playerid))
- {
- state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid].LastRollId = (Math.random() + 1).toString(36).substring(7);;
- }
- else
- {
- state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid] = { LastRollId: (Math.random() + 1).toString(36).substring(7)}
- }
- var roll = 0;
- if (isNaN(cmd[1]) == false)
- {
- roll = cmd[1];
- }
- else
- {
- msg.inlinerolls
- }
- if (list.length == 0)
- {
- WarhammerInitiative( msg.playerid, 1, cmd[1], cmd[2], str, inputName);
- }
- else
- {
- WarhammerInitiative( list[0].id, 0, cmd[1], cmd[2], str, inputName);
- }
- }
- else if ( cmd[0] == "!warparryroll" )
- {
- var inputName = msg.who;
- var list = findObjs( {
- _type: "character",
- name: inputName
- });
- var cmd2 = msg.content.split(' ');
- var str = "";
- for (i = 4; i < cmd2.length; i++)
- {
- str = str + " " + cmd2[i];
- }
- str = str.substring(1);
- if (_.has(state.WarhammerDiceStatus.playerDiceLastRoll, msg.playerid))
- {
- state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid].LastRollId = (Math.random() + 1).toString(36).substring(7);;
- }
- else
- {
- state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid] = { LastRollId: (Math.random() + 1).toString(36).substring(7)}
- }
- var roll = 0;
- if (isNaN(cmd[1]) == false)
- {
- roll = cmd[1];
- }
- else
- {
- msg.inlinerolls
- }
- if (list.length == 0)
- {
- WarhammerParryDice( msg.playerid, 1, cmd[1], cmd[2], cmd[3], str, inputName, false, msg.playerid, state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid].LastRollId);
- }
- else
- {
- WarhammerParryDice( list[0].id, 0, cmd[1], cmd[2], cmd[3], str, inputName, false, msg.playerid, state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid].LastRollId);
- }
- }
- else if ( cmd[0] == "!warpsychicroll" )
- {
- var inputName = msg.who;
- var list = findObjs( {
- _type: "character",
- name: inputName
- });
- var cmd2 = msg.content.split(' ');
- var str = "";
- for (i = 10; i < cmd2.length; i++)
- {
- str = str + " " + cmd2[i];
- }
- str = str.substring(1);
- if (_.has(state.WarhammerDiceStatus.playerDiceLastRoll, msg.playerid))
- {
- state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid].LastRollId = (Math.random() + 1).toString(36).substring(7);;
- }
- else
- {
- state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid] = { LastRollId: (Math.random() + 1).toString(36).substring(7)}
- }
- var roll = 0;
- if (isNaN(cmd[1]) == false)
- {
- roll = cmd[1];
- }
- else
- {
- msg.inlinerolls
- }
- if (list.length == 0)
- {
- WarhammerPsychicDice( msg.playerid, 1, cmd[1], cmd[2], cmd[3], cmd[4], cmd[5], cmd[6], cmd[7], cmd[8], cmd[9], str, inputName, false, msg.playerid, state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid].LastRollId);
- }
- else
- {
- WarhammerPsychicDice( list[0].id, 0, cmd[1], cmd[2], cmd[3], cmd[4], cmd[5], cmd[6], cmd[7], cmd[8], cmd[9], str, inputName, false, msg.playerid, state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid].LastRollId);
- }
- }
- else if ( cmd[0] == "!warattackroll" )
- {
- var inputName = msg.who;
- var list = findObjs( {
- _type: "character",
- name: inputName
- });
- var cmd2 = msg.content.split(' ');
- var str = "";
- for (i = 5; i < cmd2.length; i++)
- {
- str = str + " " + cmd2[i];
- }
- str = str.substring(1);
- if (_.has(state.WarhammerDiceStatus.playerDiceLastRoll, msg.playerid))
- {
- state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid].LastRollId = (Math.random() + 1).toString(36).substring(7);;
- }
- else
- {
- state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid] = { LastRollId: (Math.random() + 1).toString(36).substring(7)}
- }
- var attackNameAndQualities = str.splitArgs();
- var roll = 0;
- if (isNaN(cmd[1]) == false)
- {
- roll = cmd[1];
- }
- else
- {
- msg.inlinerolls
- }
- if (list.length == 0)
- {
- WarhammerAttackDice( msg.playerid, 1, cmd[1], cmd[2], cmd[3], cmd[4], attackNameAndQualities[0], attackNameAndQualities[1], inputName, false, msg.playerid, state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid].LastRollId);
- }
- else
- {
- WarhammerAttackDice( list[0].id, 0, cmd[1], cmd[2], cmd[3], cmd[4], attackNameAndQualities[0], attackNameAndQualities[1], inputName, false, msg.playerid, state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid].LastRollId);
- }
- }
- else if ( cmd[0] == "!wardmgroll" )
- {
- var inputName = msg.who;
- var list = findObjs( {
- _type: "character",
- name: inputName
- });
- var cmd2 = msg.content.split(' ');
- var str = "";
- for (i = 7; i < cmd2.length; i++)
- {
- str = str + " " + cmd2[i];
- }
- str = str.substring(1);
- if (_.has(state.WarhammerDiceStatus.playerDiceLastRoll, msg.playerid))
- {
- state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid].LastRollId = (Math.random() + 1).toString(36).substring(7);;
- }
- else
- {
- state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid] = { LastRollId: (Math.random() + 1).toString(36).substring(7)}
- }
- var attackNameAndQualities = str.splitArgs();
- var roll = 0;
- if (isNaN(cmd[1]) == false)
- {
- roll = cmd[1];
- }
- else
- {
- msg.inlinerolls
- }
- if (list.length == 0)
- {
- WarhammerCombatDice( msg.playerid, 1, cmd[1], cmd[2], cmd[3], cmd[4], cmd[5], cmd[6], attackNameAndQualities[0], attackNameAndQualities[1], inputName, false, msg.playerid, state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid].LastRollId);
- }
- else
- {
- WarhammerCombatDice( list[0].id, 0, cmd[1], cmd[2], cmd[3], cmd[4], cmd[5], cmd[6], attackNameAndQualities[0], attackNameAndQualities[1], inputName, false, msg.playerid, state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid].LastRollId);
- }
- }
- else if (cmd[0] == "!warrollretry" && _.has(state.WarhammerDiceStatus.playerDiceLastRoll, msg.playerid))
- {
- var retryArgs = msg.content.splitArgs(";");
- if (retryArgs[9] == msg.playerid && state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid].LastRollId == retryArgs[10])
- {
- state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid].LastRollId = (Math.random() + 1).toString(36).substring(7);
- WarhammerDice( retryArgs[1], retryArgs[2], retryArgs[3], retryArgs[4], retryArgs[5], retryArgs[6], retryArgs[7], retryArgs[8]);
- }
- }
- else if (cmd[0] == "!warpsychicrollretry" && _.has(state.WarhammerDiceStatus.playerDiceLastRoll, msg.playerid))
- {
- var retryArgs = msg.content.splitArgs(";");
- if (retryArgs[15] == msg.playerid && state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid].LastRollId == retryArgs[16])
- {
- state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid].LastRollId = (Math.random() + 1).toString(36).substring(7);
- WarhammerPsychicDice( retryArgs[1], retryArgs[2], retryArgs[3], retryArgs[4], retryArgs[5], retryArgs[6], retryArgs[7], retryArgs[8], retryArgs[9], retryArgs[10], retryArgs[11], retryArgs[12], retryArgs[13], retryArgs[14]);
- }
- }
- else if (cmd[0] == "!wardmgrollretryattack" && _.has(state.WarhammerDiceStatus.playerDiceLastRoll, msg.playerid))
- {
- var retryArgs = msg.content.splitArgs(";");
- if (retryArgs[13] == msg.playerid && state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid].LastRollId == retryArgs[14])
- {
- state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid].LastRollId = (Math.random() + 1).toString(36).substring(7);
- WarhammerCombatDice( retryArgs[1], retryArgs[2], retryArgs[3], retryArgs[4], retryArgs[5], retryArgs[6], retryArgs[7], retryArgs[8], retryArgs[9], retryArgs[10], retryArgs[11], retryArgs[12]);
- }
- }
- else if (cmd[0] == "!wardmgrollretrycrit" && _.has(state.WarhammerDiceStatus.playerDiceLastRoll, msg.playerid))
- {
- var retryArgs = msg.content.splitArgs(";");
- if (retryArgs[8] == msg.playerid && state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid].LastRollId == retryArgs[9])
- {
- state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid].LastRollId = (Math.random() + 1).toString(36).substring(7);
- WarhammerCombatDiceRetryCrit( retryArgs[1], retryArgs[2], retryArgs[3], retryArgs[4], retryArgs[5], retryArgs[6], retryArgs[7]);
- }
- }
- else if (cmd[0] == "!warparryrollretry" && _.has(state.WarhammerDiceStatus.playerDiceLastRoll, msg.playerid))
- {
- var retryArgs = msg.content.splitArgs(";");
- if (retryArgs[9] == msg.playerid && state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid].LastRollId == retryArgs[10])
- {
- state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid].LastRollId = (Math.random() + 1).toString(36).substring(7);
- WarhammerParryDice( retryArgs[1], retryArgs[2], retryArgs[3], retryArgs[4], retryArgs[5], retryArgs[6], retryArgs[7], retryArgs[8]);
- }
- }
- else if (cmd[0] == "!warattackrollretry" && _.has(state.WarhammerDiceStatus.playerDiceLastRoll, msg.playerid))
- {
- var retryArgs = msg.content.splitArgs(";");
- if (retryArgs[11] == msg.playerid && state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid].LastRollId == retryArgs[12])
- {
- state.WarhammerDiceStatus.playerDiceLastRoll[msg.playerid].LastRollId = (Math.random() + 1).toString(36).substring(7);
- WarhammerAttackDice( retryArgs[1], retryArgs[2], retryArgs[3], retryArgs[4], retryArgs[5], retryArgs[6], retryArgs[7], retryArgs[8], retryArgs[9], retryArgs[10]);
- }
- }
- else if (cmd[0] == "!warforcefield")
- {
- var inputName = msg.who;
- var list = findObjs( {
- _type: "character",
- name: inputName
- });
- if (list.length == 0)
- {
- WarhammerForceField( msg.playerid, 1, cmd[1], cmd[2], cmd[3], inputName, msg.playerid );
- }
- else
- {
- WarhammerForceField( list[0].id, 0, cmd[1], cmd[2], cmd[3], inputName, msg.playerid );
- }
- }
- else if (cmd[0] == "!wardamagehits")
- {
- var inputName = msg.who;
- var list = findObjs( {
- _type: "character",
- name: inputName
- });
- var cmd2 = "";
- if (_.has(msg, 'inlinerolls')) {
- cmd2 = _.chain(msg.inlinerolls)
- .reduce(function(previous, current, index) {
- previous['$[[' + index + ']]'] = current.results.total || 0;
- return previous;
- },{})
- .reduce(function(previous, current, index) {
- return previous.replace(index, current);
- }, msg.content)
- .value();
- } else {
- cmd2 = msg.content;
- }
- cmd2 = cmd2.split(';');
- if (list.length == 0)
- {
- WarhammerDamageHits( msg.playerid, 1, cmd2[1], cmd2[2], cmd2[3], cmd2[4], cmd2[5], cmd2[6], cmd2[7], cmd2[8], inputName, msg.playerid );
- }
- else
- {
- WarhammerDamageHits( list[0].id, 0, cmd2[1], cmd2[2], cmd2[3], cmd2[4], cmd2[5], cmd2[6], cmd2[7], cmd2[8], inputName, msg.playerid );
- }
- }
- });
- on('ready',function() {
- "use strict";
- if( ! state.WarhammerDiceStatus ) {
- state.WarhammerDiceStatus = {
- playerDiceLastRoll: {}
- };
- }
- });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement