mirror of
https://github.com/Nighthawk42/roll20-character-sheets.git
synced 2026-08-30 11:42:29 +00:00
4479 lines
178 KiB
HTML
4479 lines
178 KiB
HTML
<div aria-label="Announces changes to sheet" class="sheet-announcements">
|
||
<input type="checkbox" name="attr_anchk1" class="sheet-anchk sheet-chkannounce" value="1" title="Show Announcements" /><span></span><b style="color:red;">Announcements</b>
|
||
<div class="sheet-chk-announce sheet-chkannounce" selectable="true">
|
||
<h2 style="margin-bottom:-15px;">Recent Changes</h2>
|
||
<br />
|
||
<p style="font-size:10pt;color:black;">Sheet version: 2.1.2</p>
|
||
<div class="sheet-announce-items">
|
||
<p style="font-size:9pt;color:black;font-style:italic;">
|
||
Fixed small bug in exceptional strength Bend Bars & Open Doors stats <br />
|
||
- (Aqua Alex)<br />
|
||
</p>
|
||
<p style="font-size:10pt;color:black;font-style:normal;">
|
||
To view the full change log and sheet documentation, please visit the wiki page! <span class="sheet-selectable">https://wiki.roll20.net/ADnD_2nd_Edition_Character_sheet</span>
|
||
</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<br />
|
||
<input type="radio" name="attr_tab" class="sheet-tab sheet-tab1" value="1" checked="checked" /><span></span>Character Sheet - Spells <input type="radio" name="attr_tab" class="sheet-tab sheet-tab3" value="3"/><span></span> | Monster Sheet <input type="radio" name="attr_tab" class="sheet-tab sheet-tab2" value="2"/><span></span>
|
||
<br /><br />
|
||
<div class="sheet-tab-content sheet-tab1">
|
||
<div class="sheet-2colrow">
|
||
<div class="sheet-col">
|
||
<h2>Character Info</h2>
|
||
<table style='width:300px;'>
|
||
<tr>
|
||
<td><br />
|
||
<tr>
|
||
<td>
|
||
<h4>Name:</h4>
|
||
<input type="text" name="attr_character_name">
|
||
</td>
|
||
<td><b>Class:</b><br /><input type="text" name="attr_class"/></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Level:</b><br /><input type="text" name="attr_level" class="" /></td>
|
||
<td><b>Kit:</b><br /><input type="text" name="attr_kit" class="" /></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Race:</b><br /><input type="text" name="attr_race"/></td>
|
||
<td><b>Alignment:</b><br /><input type="text" name="attr_alignment"/></td>
|
||
</tr>
|
||
<tr>
|
||
<td>
|
||
<hr>
|
||
</td>
|
||
<td>
|
||
<hr>
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>THAC0:<input type="text" name="attr_PC_THAC0" class="sheet-short" value="@{PC_THAC0}"/></b> <br />
|
||
<b>HP: <input type="text" name="attr_HP" class="sheet-short" value="@{HP}"/>/<input type="text" name="attr_HP_max" class="sheet-short" /></b>
|
||
</td>
|
||
<td><b>AC: <input type="number" name="attr_AC" class="sheet-short" /></b> <br />
|
||
<b>AC Surprised: <input type="text" name="attr_ACsurprise" class="sheet-short" /></b> <br />
|
||
<b>AC Shieldless:<input type="text" name="attr_ACshieldless" class="sheet-short" /></b>
|
||
</td>
|
||
</tr>
|
||
</table>
|
||
<b>Armor Type:</b><br />
|
||
<textarea name="attr_armtype" width="20"></textarea>
|
||
<table>
|
||
<tr>
|
||
<td>
|
||
<hr>
|
||
</td>
|
||
<td>
|
||
<hr>
|
||
</td>
|
||
</tr>
|
||
<tr></tr>
|
||
<td><b>Height: <input type="text" name="attr_Height" class="sheet-short" /></b> <br />
|
||
<b>Weight:<input type="text" name="attr_Weight" class="sheet-short" /></b>
|
||
</td>
|
||
<td><b>Age: <input type="number" name="attr_Age" class="sheet-short" /></b> <br />
|
||
<b>Max age: <input type="number" name="attr_Agemax" class="sheet-short" /></b>
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td><br /><b>Handedness:<input type="text" name="attr_Handedness"/></b></td>
|
||
</tr>
|
||
<tr>
|
||
<td>
|
||
<hr>
|
||
</td>
|
||
<td>
|
||
<hr>
|
||
</td>
|
||
</tr>
|
||
</table>
|
||
<h4>Experience</h4>
|
||
<fieldset class="repeating_XP" name="attr_repxp">
|
||
<table>
|
||
<tr>
|
||
<td><b>Class:<br /><input type="text" name="attr_expclassname"></b></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Current Exp:<br /><input type="text" name="attr_expcurrent1"></b></td>
|
||
<td><b>Gained Exp:<br /><input type="text" name="attr_expgain1"></b></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>New Exp Total:<br /><input type="text" name="attr_expnew" value="@{expcurrent1}+@{expgain1}" disabled="true"></b></td>
|
||
<td><b>Prime Req Exp Total:<br /><input type="text" name="attr_expprime" value="@{expcurrent1}+(@{expgain1}*(1+(@{prime1}/100)))" disabled="true"></b></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Prime Requisite Bonus:</b><br /><input type="text" name="attr_prime1" class="short" value="10">%</td>
|
||
</tr>
|
||
</table>
|
||
</fieldset>
|
||
</div>
|
||
<div class="sheet-col">
|
||
<br />
|
||
<h4>Saving Throws</h4>
|
||
<table style='border-collapse: collapse; border-spacing: 0;'>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'> </td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Target</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Modifier</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Notes</td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Paralyzation,<br />Poison, or<br />Death Magic</td>
|
||
<td><input type="text" name="attr_partar" class="sheet-short"/></td>
|
||
<td><input type="text" name="attr_parmod" class="sheet-short"/></td>
|
||
<td><input type="text" name="attr_parnotes"/><button type="roll" name="roll_parsave" value="/gmroll {1d20+[[@{parmod}?{Misc. bonus (please include + or -)|+0}]]}>[[@{partar}]] [Save vs. Paralyzation, Poison, or Death Magic]"></button></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Rod, Staff,<br />or Wand</td>
|
||
<td><input type="text" name="attr_rodtar" class="sheet-short"/></td>
|
||
<td><input type="text" name="attr_rodmod" class="sheet-short"/></td>
|
||
<td><input type="text" name="attr_rodnotes"/><button type="roll" name="roll_rodsave" value="/gmroll {1d20+[[@{rodmod}?{Misc. bonus (please include + or -)|+0}]]}>[[@{rodtar}]] [Save vs. Rod, Staff, or Wand]"></button></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Petrification<br />or <br />Polymorph</td>
|
||
<td><input type="text" name="attr_pettar" class="sheet-short"/></td>
|
||
<td><input type="text" name="attr_petmod" class="sheet-short"/></td>
|
||
<td><input type="text" name="attr_petnotes"/><button type="roll" name="roll_petsave" value="/gmroll {1d20+[[@{petmod}?{Misc. bonus (please include + or -)|+0}]]}>[[@{pettar}]] [Save vs. Petrification or Polymorph]"></button></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Breath<br />Weapon</td>
|
||
<td><input type="text" name="attr_breathtar" class="sheet-short"/></td>
|
||
<td><input type="text" name="attr_breathmod" class="sheet-short"/></td>
|
||
<td><input type="text" name="attr_breathnotes"/><button type="roll" name="roll_breathsave" value="/gmroll {1d20+[[@{breathmod}?{Misc. bonus (please include + or -)|+0}]]}>[[@{breathtar}]] [Save vs. Breath Weapon]"></button></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Spell</td>
|
||
<td><input type="text" name="attr_sptar" class="sheet-short"/></td>
|
||
<td><input type="text" name="attr_spmod" class="sheet-short"/></td>
|
||
<td><input type="text" name="attr_spnotes"/><button type="roll" name="roll_spsave" value="/gmroll {1d20+[[@{spmod}?{Misc. bonus (please include + or -)|+0}]]}>[[@{sptar}]] [Save vs. Spell]"></button></td>
|
||
</tr>
|
||
</table>
|
||
<br />
|
||
<br />
|
||
<h4>Movement</h4>
|
||
<input type="radio" name="attr_tab2" class="sheet-tab sheet-tab1" value="1" checked="checked" /><span></span>Basic Encumbrance<br />
|
||
<input type="radio" name="attr_tab2" class="sheet-tab sheet-tab2" value="2"/><span></span>Advanced Encumbrance
|
||
<div class="sheet-tab-content sheet-tab1">
|
||
<table style='border-collapse: collapse; border-spacing: 0;'>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'> </td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Speed</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Weight</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Att Pen</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>AC Pen</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Notes</td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Base</td>
|
||
<td><input type="text" name="attr_basespeed" class="sheet-short"/></td>
|
||
<td><input type="text" name="attr_baseweight" class="sheet-short"/></td>
|
||
<td><input type="number" name="attr_basepen" class="sheet-short" value="0"/></td>
|
||
<td><input type="number" name="attr_basepenAC" class="sheet-short" value="0"/></td>
|
||
<td><input type="text" name="attr_basemovnotes"/></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Light Enc. (-1/3)</td>
|
||
<td><input type="number" name="attr_lightspeed" value="@{basespeed}-[[@{basespeed}*1/3]]" disabled="true" /></td>
|
||
<td><input type="text" name="attr_lightweight" class="sheet-short"/></td>
|
||
<td><input type="number" name="attr_lightpen" class="sheet-short" value="0"/></td>
|
||
<td><input type="number" name="attr_lightpenAC" class="sheet-short" value="0"/></td>
|
||
<td><input type="text" name="attr_lightmovnotes"/></td>
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Moderate Enc. (-1/2)</td>
|
||
<td><input type="number" name="attr_modspeed" value="@{basespeed}-[[@{basespeed}*1/2]]" disabled="true" /></td>
|
||
<td><input type="text" name="attr_modweight" class="sheet-short"/></td>
|
||
<td><input type="number" name="attr_modpen" class="sheet-short" value="-1"/></td>
|
||
<td><input type="number" name="attr_modpenAC" class="sheet-short" value="0"/></td>
|
||
<td><input type="text" name="attr_modmovnotes"/></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Heavy Enc. (-2/3)</td>
|
||
<td><input type="number" name="attr_heavyspeed" value="@{basespeed}-[[@{basespeed}*2/3]]" disabled="true" /></td>
|
||
<td><input type="text" name="attr_heavyweight" class="sheet-short"/></td>
|
||
<td><input type="number" name="attr_heavypen" class="sheet-short" value="-2"/></td>
|
||
<td><input type="number" name="attr_heavypenAC" class="sheet-short" value="1"/></td>
|
||
<td><input type="text" name="attr_heavymovnotes"/></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Severe Enc. (1)</td>
|
||
<td><input type="number" name="attr_sevspeed" value="1" disabled="true" /></td>
|
||
<td><input type="text" name="attr_sevweight" class="sheet-short"/></td>
|
||
<td><input type="number" name="attr_sevpen" class="sheet-short" value="-4"/></td>
|
||
<td><input type="number" name="attr_sevpenAC" class="sheet-short" value="3"/></td>
|
||
<td><input type="text" name="attr_sevmovnotes"/></td>
|
||
</tr>
|
||
</table>
|
||
</div>
|
||
<div class="sheet-tab-content sheet-tab2">
|
||
<table style='border-collapse: collapse; border-spacing: 0;'>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Movement Rate</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>|Weight</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>|Att Pen</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>|AC Pen</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>|Notes</td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>12/6</td>
|
||
<td><input type="text" name="attr_12weight" class="sheet-short"/></td>
|
||
<td><input type="text" name="attr_12pen" class="sheet-short" value="0"/></td>
|
||
<td><input type="text" name="attr_12penAC" class="sheet-short" value="0"/></td>
|
||
<td><input type="text" name="attr_12movnotes"/></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>11/5</td>
|
||
<td><input type="text" name="attr_11weight" class="sheet-short"/></td>
|
||
<td><input type="text" name="attr_11pen" class="sheet-short" value="0"/></td>
|
||
<td><input type="text" name="attr_11penAC" class="sheet-short" value="0"/></td>
|
||
<td><input type="text" name="attr_11movnotes"/></td>
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>10/5</td>
|
||
<td><input type="text" name="attr_10weight" class="sheet-short"/></td>
|
||
<td><input type="text" name="attr_10pen" class="sheet-short" value="0"/></td>
|
||
<td><input type="text" name="attr_10penAC" class="sheet-short" value="0"/></td>
|
||
<td><input type="text" name="attr_10movnotes"/></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>9/4</td>
|
||
<td><input type="text" name="attr_9weight" class="sheet-short"/></td>
|
||
<td><input type="text" name="attr_9pen" class="sheet-short" value="0"/></td>
|
||
<td><input type="text" name="attr_9penAC" class="sheet-short" value="0"/></td>
|
||
<td><input type="text" name="attr_9movnotes"/></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>8/4</td>
|
||
<td><input type="text" name="attr_8weight" class="sheet-short"/></td>
|
||
<td><input type="text" name="attr_8pen" class="sheet-short" value="0"/></td>
|
||
<td><input type="text" name="attr_8penAC" class="sheet-short" value="0"/></td>
|
||
<td><input type="text" name="attr_8movnotes"/></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>7/3</td>
|
||
<td><input type="text" name="attr_7weight" class="sheet-short"/></td>
|
||
<td><input type="text" name="attr_7pen" class="sheet-short" value="0"/></td>
|
||
<td><input type="text" name="attr_7penAC" class="sheet-short" value="0"/></td>
|
||
<td><input type="text" name="attr_7movnotes"/></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>6/3</td>
|
||
<td><input type="text" name="attr_6weight" class="sheet-short"/></td>
|
||
<td><input type="text" name="attr_6pen" class="sheet-short" value="-1"/></td>
|
||
<td><input type="text" name="attr_6penAC" class="sheet-short" value="0"/></td>
|
||
<td><input type="text" name="attr_6movnotes"/></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>5/2</td>
|
||
<td><input type="text" name="attr_5weight" class="sheet-short"/></td>
|
||
<td><input type="text" name="attr_5pen" class="sheet-short" value="-1"/></td>
|
||
<td><input type="text" name="attr_5penAC" class="sheet-short" value="0"/></td>
|
||
<td><input type="text" name="attr_5movnotes"/></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>4/2</td>
|
||
<td><input type="text" name="attr_4weight" class="sheet-short"/></td>
|
||
<td><input type="text" name="attr_4pen" class="sheet-short" value="-2"/></td>
|
||
<td><input type="text" name="attr_4penAC" class="sheet-short" value="1"/></td>
|
||
<td><input type="text" name="attr_4movnotes"/></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>3/1</td>
|
||
<td><input type="text" name="attr_3weight" class="sheet-short"/></td>
|
||
<td><input type="text" name="attr_3pen" class="sheet-short" value="-2"/></td>
|
||
<td><input type="text" name="attr_3penAC" class="sheet-short" value="1"/></td>
|
||
<td><input type="text" name="attr_3movnotes"/></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>2/1</td>
|
||
<td><input type="text" name="attr_2weight" class="sheet-short"/></td>
|
||
<td><input type="text" name="attr_2pen" class="sheet-short" value="-2"/></td>
|
||
<td><input type="text" name="attr_2penAC" class="sheet-short" value="1"/></td>
|
||
<td><input type="text" name="attr_2movnotes"/></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>1/1</td>
|
||
<td><input type="text" name="attr_1weight" class="sheet-short"/></td>
|
||
<td><input type="text" name="attr_1pen" class="sheet-short" value="-4"/></td>
|
||
<td><input type="text" name="attr_1penAC" class="sheet-short" value="3"/></td>
|
||
<td><input type="text" name="attr_1movnotes"/></td>
|
||
</tr>
|
||
</table>
|
||
</div>
|
||
Current weight:<input type="number" name="attr_movweighttotal" class="sheet-nobut" value="@{totalweightCarry}+1-1" disabled="true">
|
||
<br />
|
||
<h4>Player notes</h4>
|
||
<textarea name="attr_pnotes"></textarea>
|
||
</div>
|
||
</div>
|
||
<hr>
|
||
<input type="radio" name="attr_tab3" class="sheet-tab sheet-tab1" value="1" checked="checked" /><span></span>Standard<br />
|
||
<input type="radio" name="attr_tab3" class="sheet-tab sheet-tab2" value="2"/><span></span>Players Option
|
||
<h4>Ability Scores</h4>
|
||
<div class="sheet-tab-content sheet-tab1">
|
||
<table style='border-collapse: collapse; border-spacing: 0;'>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'></td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Score</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Hit Bonus</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Damage Adj.</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Weight Allow.</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Max. Press</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Open Door</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Bend Bars/<br />Lift Gate</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Notes</td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Strength</td>
|
||
<td><input type="text" name="attr_Strength" class="short" value="10(00)"/></td>
|
||
<td><input type="text" name="attr_strengthhit" class="sheet-short" value="+0"/></td>
|
||
<td><input type="text" name="attr_strengthdmg" class="sheet-short" value="+0"/></td>
|
||
<td><input type="text" name="attr_carryweight" class="sheet-short" value="0"/></td>
|
||
<td><input type="text" name="attr_maxpress" class="sheet-short" value="0"/></td>
|
||
<td><input type="text" name="attr_open" class="sheet-short" value="0(0)"/></td>
|
||
<td><input type="text" name="attr_bend" class="sheet-short" value="0"/>%</td>
|
||
<td><input type="text" name="attr_strnotes"></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'></td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Score</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Reaction Adj.</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Missile Atk. Adj.</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Defense <br />Adj.</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Pick Pockets</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Open Locks</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'> Move Climb<br /> Silently Walls</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Notes</td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Dexterity</td>
|
||
<td><input type="text" name="attr_Dexterity" class="short" value="@{Dexterity}"/></td>
|
||
<td><input type="text" name="attr_dexreact" class="sheet-short" value="+0"/></td>
|
||
<td><input type="text" name="attr_dexmissile" class="sheet-short" value="+0"/></td>
|
||
<td><input type="text" name="attr_dexdefense" class="sheet-short" value="+0"/></td>
|
||
<td><input type="text" name="attr_ppd" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_old" value="+0" class="sheet-short"/>%</td>
|
||
<td>
|
||
<input type="text" name="attr_msd" value="+0" class="sheet-short"/>%<input type="text" name="attr_cwd" value="+0" class="sheet-short"/>%
|
||
</td>
|
||
<td><input type="text" name="attr_dexnotes"></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'></td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Score</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>HP Adj.</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>System Shock</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Resurrection Survival</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Poison Save*</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Magic Save* </td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Regeneration</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Notes</td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Constitution</td>
|
||
<td><input type="text" name="attr_Constitution" class="short" value="@{Constitution}"/></td>
|
||
<td><input type="text" name="attr_conadj" class="sheet-short" value="+0"/></td>
|
||
<td><input type="text" name="attr_conshock" class="sheet-short" value="0"/>%</td>
|
||
<td><input type="text" name="attr_conres" class="sheet-short" value="0"/>%</td>
|
||
<td><input type="text" name="attr_conpoisonbonus" class="sheet-short" value="+0"/></td>
|
||
<td><input type="text" name="attr_conmagicbonus" class="sheet-short" value="+0"/></td>
|
||
<td><input type="text" name="attr_conregen" class="sheet-short" value="0"/></td>
|
||
<td><input type="text" name="attr_connotes"></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'></td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Score</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Number of Languages</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Max Spell Level</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Chance to Learn Spell</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Max # of Spells</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'> </td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Immunity</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Notes</td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Intelligence</td>
|
||
<td><input type="text" name="attr_Intelligence" class="short" value="@{Intelligence}"/></td>
|
||
<td><input type="text" name="attr_intlang" class="sheet-short" value="0"/></td>
|
||
<td><input type="text" name="attr_intlvl" class="sheet-short" value="0"/></td>
|
||
<td><input type="text" name="attr_intchance" class="sheet-short" value="0"/>%</td>
|
||
<td><input type="text" name="attr_intmax" class="sheet-short" value="0"/></td>
|
||
<td> </td>
|
||
<td><input type="text" name="attr_intimm"></td>
|
||
<td><input type="text" name="attr_intnotes"></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'></td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Score</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Magical Def Bonus</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Bonus Spells</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Clerical Spell Failure</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'> </td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'> </td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Spell Immunity</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Notes</td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Wisdom</td>
|
||
<td><input type="text" name="attr_Wisdom" class="short" value="@{Wisdom}"/></td>
|
||
<td><input type="text" name="attr_wisdef" class="sheet-short" value="+0"/></td>
|
||
<td><input type="text" name="attr_wisbonus" class="sheet-short"/></td>
|
||
<td><input type="text" name="attr_wisfail" class="sheet-short" value="0"/>%</td>
|
||
<td> </td>
|
||
<td> </td>
|
||
<td><input type="text" name="attr_wisimm"/></td>
|
||
<td><input type="text" name="attr_wisnotes"/></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'></td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Score</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Max # of Hench</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Base Loyalty</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Reaction Adjustment</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'> </td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'> </td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'> </td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Notes</td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Charisma</td>
|
||
<td><input type="text" name="attr_Charisma" class="short" value="@{Charisma}"/></td>
|
||
<td><input type="text" name="attr_chamax" class="sheet-short" value="0"/></td>
|
||
<td><input type="text" name="attr_chaloy" class="sheet-short" value="+0"/></td>
|
||
<td><input type="text" name="attr_chareact" class="sheet-short" value="+0"/></td>
|
||
<td> </td>
|
||
<td> </td>
|
||
<td> </td>
|
||
<td><input type="text" name="attr_chanotes"/></td>
|
||
</tr>
|
||
</table>
|
||
</div>
|
||
<div class="sheet-tab-content sheet-tab2">
|
||
<table style='border-collapse: collapse; border-spacing: 0;'>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Strength</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'><input type="text" name="attr_Strength" class="short" value="10(00)"/></td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Hit Bonus</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Damage Adj.</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Weight Allow.</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Max. Press</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Open Door</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Bend Bars/<br />Lift Gate</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Notes</td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'><em> Stamina<br /><br /> Muscle</em></td>
|
||
<td><input type="text" name="attr_Stamina" class="short" value="10(00)"/><br /><input type="text" name="attr_Muscle" class="short" value="10(00)"/></td>
|
||
<td><input type="number" class="short" disabled="true"><br /><input type="text" name="attr_strengthhit" class="sheet-short" value="0"/></td>
|
||
<td><input type="number" class="short" disabled="true"><br /><input type="text" name="attr_strengthdmg" class="sheet-short" value="0"/></td>
|
||
<td><input type="text" name="attr_carryweight" class="sheet-short" value="0"/><br /><input type="number" class="short" disabled="true"></td>
|
||
<td><input type="number" class="short" disabled="true"><br /><input type="text" name="attr_maxpress" class="sheet-short" value="0"/></td>
|
||
<td><input type="number" class="short" disabled="true"><br /><input type="text" name="attr_open" class="sheet-short" value="0(0)"/></td>
|
||
<td><input type="number" class="short" disabled="true"><br /><input type="text" name="attr_bend" class="sheet-short" value="0"/>%</td>
|
||
<td><input type="text" name="attr_strnotes"></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Dexterity</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'><input type="text" name="attr_Dexterity" class="short" value="@{Dexterity}"/></td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Reaction Adj.</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Missile Atk. Adj.</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Defense <br />Adj.</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Pick Pockets</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Open Locks</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'> Move Climb<br /> Silently Walls</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Notes</td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'><em> Aim<br /><br /> Balance</em></td>
|
||
<td><input type="text" name="attr_Aim" class="short" value="@{Aim}"/><br /><input type="text" name="attr_Balance" class="short" value="@{Balance}"/></td>
|
||
<td><input type="number" class="short" disabled="true"><br /><input type="text" name="attr_dexreact" class="sheet-short" value="0"/></td>
|
||
<td><input type="text" name="attr_dexmissile" class="sheet-short" value="+0"/><br /><input type="number" class="short" disabled="true"></td>
|
||
<td><input type="number" class="short" disabled="true"><br /><input type="text" name="attr_dexdefense" class="sheet-short" value="0"/></td>
|
||
<td><input type="text" name="attr_ppd" value="+0" class="sheet-short"/>%<br /><input type="number" class="short" disabled="true"></td>
|
||
<td><input type="text" name="attr_old" value="+0" class="sheet-short"/>%<br /><input type="number" class="short" disabled="true"></td>
|
||
<td><input type="number" class="short" disabled="true"> <input type="number" class="short" disabled="true"><br />
|
||
<input type="text" name="attr_msd" value="+0" class="sheet-short"/>%<input type="text" name="attr_cwd" value="+0" class="sheet-short"/>%
|
||
</td>
|
||
<td><input type="text" name="attr_dexnotes"></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Constitution</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'><input type="text" name="attr_Constitution" class="short" value="@{Constitution}"/></td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>HP Adj.</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>System Shock</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Resurrection Survival</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Poison Save*</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Magic Save* </td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Regeneration</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Notes</td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'><em> Health<br /><br /> Fitness</em></td>
|
||
<td><input type="text" name="attr_Health" class="short" value="@{Health}"/><input type="text" name="attr_Fitness" class="short" value="@{Fitness}"/></td>
|
||
<td><input type="number" class="short" disabled="true"><br /><input type="text" name="attr_conadj" class="sheet-short" value="0"/></td>
|
||
<td><input type="text" name="attr_conshock" class="sheet-short" value="0"/>%<br /><input type="number" class="short" disabled="true"></td>
|
||
<td><input type="number" class="short" disabled="true"><br /><input type="text" name="attr_conres" class="sheet-short" value="0"/>%</td>
|
||
<td><input type="text" name="attr_conpoisonbonus" class="sheet-short" value="+0"/><br /><input type="number" class="short" disabled="true"></td>
|
||
<td><input type="text" name="attr_conmagicbonus" class="sheet-short" value="+0"/><br /><input type="number" class="short" disabled="true"></td>
|
||
<td><input type="number" class="short" disabled="true"><br /><input type="text" name="attr_conregen" class="sheet-short" value="0"/></td>
|
||
<td><input type="text" name="attr_connotes"></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Intelligence</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'><input type="text" name="attr_Intelligence" class="short" value="@{Intelligence}"/></td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Number of Languages</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Max Spell Level</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Chance to Learn Spell</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Max # of Spells</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'> </td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Immunity</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Notes</td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'><em> Reason<br /><br /> Knowledge</em></td>
|
||
<td><input type="text" name="attr_Reason" class="short" value="@{Reason}"/><input type="text" name="attr_Knowledge" class="short" value="@{Knowledge}"/></td>
|
||
<td><input type="number" class="short" disabled="true"><br /><input type="text" name="attr_intlang" class="sheet-short" value="0"/></td>
|
||
<td><input type="text" name="attr_intlvl" class="sheet-short" value="0"/><br /><input type="number" class="short" disabled="true"></td>
|
||
<td><input type="number" class="short" disabled="true"><br /><input type="text" name="attr_intchance" class="sheet-short" value="0"/>%</td>
|
||
<td><input type="text" name="attr_intmax" class="sheet-short" value="0"/><br /><input type="number" class="short" disabled="true"></td>
|
||
<td> </td>
|
||
<td><input type="text" name="attr_intimm"><br /><input type="text" class="" disabled="true"></td>
|
||
<td><input type="text" name="attr_intnotes"></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Wisdom</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'><input type="text" name="attr_Wisdom" class="short" value="@{Wisdom}"/></td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Magical Def Bonus</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Bonus Spells</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Clerical Spell Failure</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'> </td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'> </td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Spell Immunity</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Notes</td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'><em> Intuition<br /><br /> Willpower</em></td>
|
||
<td><input type="text" name="attr_Intuition" class="short" value="@{Intuition}"/><input type="text" name="attr_Willpower" class="short" value="@{Willpower}"/></td>
|
||
<td><input type="number" class="short" disabled="true"><br /><input type="text" name="attr_wisdef" class="sheet-short" value="0"/></td>
|
||
<td><input type="text" name="attr_wisbonus" class="sheet-short"/><br /><input type="number" class="short" disabled="true"></td>
|
||
<td><input type="text" name="attr_wisfail" class="sheet-short" value="0"/>%<br /><input type="number" class="short" disabled="true"></td>
|
||
<td> </td>
|
||
<td> </td>
|
||
<td><input type="text" class="" disabled="true"><br /><input type="text" name="attr_wisimm"/></td>
|
||
<td><input type="text" name="attr_wisnotes"/></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Charisma</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'><input type="text" name="attr_Charisma" class="short" value="@{Charisma}"/></td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Max # of Hench</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Base Loyalty</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Reaction Adjustment</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'> </td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'> </td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'> </td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Notes</td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'><em> Leadership<br /><br /> Appearance</em></td>
|
||
<td><input type="text" name="attr_Leadership" class="short" value="@{Leadership}"/><br /><input type="text" name="attr_Appearance" class="short" value="@{Appearance}"/></td>
|
||
<td><input type="text" name="attr_chamax" class="sheet-short" value="0"/><br /><input type="number" class="short" disabled="true"></td>
|
||
<td><input type="text" name="attr_chaloy" class="sheet-short" value="+0"/><br /><input type="number" class="short" disabled="true"></td>
|
||
<td><input type="number" class="short" disabled="true"><br /><input type="text" name="attr_chareact" class="sheet-short" value="0"/></td>
|
||
<td> </td>
|
||
<td> </td>
|
||
<td> </td>
|
||
<td><input type="text" name="attr_chanotes"/></td>
|
||
</tr>
|
||
</table>
|
||
</div>
|
||
<br /><b>Notes</b>
|
||
<textarea name="attr_statnotes" placeholder="* Dwarves, gnomes and halflings gain saving throws against attacks from magical wands, staves, rods, and spells, this bonus is +1 for every 3 - 1/2 points of Constitution score. Dwarves and Halflings have a similar resistance to poisons of all sorts, so they gain a Constitution bonus identical to that for saving throws vs. magical attacks when they make saving throws vs. poison.
|
||
"></textarea>
|
||
<br />
|
||
<br />
|
||
<hr>
|
||
<h4>Weapons</h4>
|
||
Include all appropriate + or - signs for bonuses.<br />
|
||
<table style='border-collapse: collapse; border-spacing: 0;'>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Dex Str Dam Weapon</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'># of<br />Attacks</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Attack<br />Adj.</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Dam<br />Adj.</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>THAC0</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Dam SM</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Dam L</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Range</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Weight</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Size</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Type</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Speed</td>
|
||
</tr>
|
||
<tr>
|
||
<td> <input type='checkbox' name='attr_dexbonus' value='1' /><span></span> <input type='checkbox' name='attr_strbonus' value='1' /><span></span> <input type='checkbox' name='attr_strdambonus' value='1' /><span></span><input type="text" name="attr_weaponname" class="medium"></td>
|
||
<td><input type="text" name="attr_attacknum" class="sheet-short"></td>
|
||
<td><input type="text" name="attr_attackadj" class="sheet-short" value="+0"></td>
|
||
<td><input type="text" name="attr_damadj" class="sheet-short" value="+0"></td>
|
||
<td><input type="text" name="attr_ThAC0" class="sheet-short" value="20"><button type="roll" name="roll_hit1" value="/em hits an AC of [[@{ThAC0}-(1d20+(@{attackadj})+(?{Strength bonus. Do not modify this field|@{strengthhit}}*@{strbonus})+(?{Dexterity bonus. Do not modify this field|@{dexmissile}}*@{dexbonus})+(?{Misc. bonus|+0}))]] or worse using his/her @{weaponname}">Hit</button></td>
|
||
<td><input type="text" name="attr_damsm" class="sheet-short"><button type="roll" name="roll_test1" value="/em rolls [[@{damsm}+(@{damadj})+(?{Strength bonus. Do not modify this field|@{strengthdmg}}*@{strdambonus})+(?{Misc. bonus (please include + or -)|+0})]] damage using his/her @{weaponname}!"></button></td>
|
||
<td><input type="text" name="attr_daml" class="sheet-short"><button type="roll" name="roll_test2" value="/em rolls [[@{daml}+(@{damadj})+(?{Strength bonus. Do not modify this field|@{strengthdmg}}*@{strdambonus})+(?{Misc. bonus (please include + or -)|+0})]] damage using his/her @{weaponname}!"></button></td>
|
||
<td><input type="text" name="attr_range" class="sheet-mid"></td>
|
||
<td><input type="number" name="attr_weapweight" class="sheet-short"></td>
|
||
<td><input type="text" name="attr_weapsize" class="sheet-short"></td>
|
||
<td><input type="text" name="attr_Weaptype" class="sheet-short"></td>
|
||
<td><input type="number" name="attr_weapspeed" class="sheet-short"><button type="roll" name="roll_init" value="/gmroll 1d10+[[@{weapspeed}?{Misc. bonus (please include + or -)|+0}]] [Initiative (@{weaponname})]&{tracker}"></button></td>
|
||
</tr>
|
||
</table>
|
||
<fieldset name="repeating_weapons"class="repeating_weapons">
|
||
<table>
|
||
<tr>
|
||
<td> <input type='checkbox' name='attr_dexbonus' value='1' /><span></span> <input type='checkbox' name='attr_strbonus' value='1' /><span></span><input type='checkbox' name='attr_strdambonus' value='1' /><span></span><input type="text" name="attr_weaponname" class="medium"></td>
|
||
<td><input type="text" name="attr_attacknum" class="sheet-short"></td>
|
||
<td><input type="text" name="attr_attackadj" class="sheet-short" value="+0"></td>
|
||
<td><input type="text" name="attr_damadj" class="sheet-short" value="+0"></td>
|
||
<td><input type="text" name="attr_ThAC0" class="sheet-short" value="20"><button type="roll" name="roll_hit1" value="/em hits an AC of [[@{ThAC0}-(1d20+(@{attackadj})+(?{Strength bonus. Do not modify this field|@{strengthhit}}*@{strbonus})+(?{Dexterity bonus. Do not modify this field|@{dexmissile}}*@{dexbonus})+(?{Misc. bonus|+0}))]] or worse using his/her @{weaponname}">Hit</button></td>
|
||
<td><input type="text" name="attr_damsm" class="sheet-short"><button type="roll" name="roll_test1" value="/em rolls [[@{damsm}+(@{damadj})+(?{Strength bonus. Do not modify this field|@{strengthdmg}}*@{strdambonus})+(?{Misc. bonus (please include + or -)|+0})]] damage using his/her @{weaponname}!"></button></td>
|
||
<td><input type="text" name="attr_daml" class="sheet-short"><button type="roll" name="roll_test2" value="/em rolls [[@{daml}+(@{damadj})+(?{Strength bonus. Do not modify this field|@{strengthdmg}}*@{strdambonus})+(?{Misc. bonus (please include + or -)|+0})]] damage using his/her @{weaponname}!"></button></td>
|
||
<td><input type="text" name="attr_range" class="sheet-mid"></td>
|
||
<td><input type="number" name="attr_weapweight" class="sheet-short"></td>
|
||
<td><input type="text" name="attr_weapsize" class="sheet-short"></td>
|
||
<td><input type="text" name="attr_weaptype" class="sheet-short"></td>
|
||
<td><input type="number" name="attr_weapspeed" class="sheet-short"><button type="roll" name="roll_init" value="/gmroll 1d10+[[@{weapspeed}?{Misc. bonus (please include + or -)|+0}]] [Initiative (@{weaponname})]&{tracker}"></button></td>
|
||
</tr>
|
||
</table>
|
||
</fieldset>
|
||
<br /><b>Notes</b>
|
||
<textarea name="attr_weaponnotes"></textarea>
|
||
<hr>
|
||
<h4>Special Abilities and Attacks</h4>
|
||
<br />
|
||
<textarea name="attr_abilitiesnotes"></textarea>
|
||
<br />
|
||
<h4>Rogue Skills</h4>
|
||
<div>
|
||
<input type="checkbox" name="attr_rsChk" class="arrow" /><span></span>Hide
|
||
<div class="body">
|
||
<strong>Backstab Multiplier:</strong><input type="text" name="attr_backstabmultiplier" class="tiny">
|
||
<table style='border-collapse: collapse; border-spacing: 0;'>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Skill</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Base</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Race</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Dex</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Armor</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Level</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Total</td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Pick Pockets</td>
|
||
<td><input type="text" name="attr_ppb" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_ppr" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_ppd" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_ppa" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_ppl" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_ppt" value="@{ppb}@{ppr}@{ppd}@{ppa}@{ppl}" disabled="true" class="sheet-short"/>%<button type="roll" name="roll_pp" value="/gmroll {1d100+[[?{Misc. modifier|+0}]]}<[[@{ppt}]] [Pick Pockets]"></button><button type="roll" name="roll_ppnoarmor" value="/gmroll {1d100+[[?{Misc. modifier|+0}]]}<[[@{ppb}@{ppr}@{ppd}@{ppl}]] [Pick Pockets (no armor)]">No armor</button></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Open Locks</td>
|
||
<td><input type="text" name="attr_olb" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_olr" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_old" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_ola" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_oll" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_olt" value="@{olb}@{olr}@{old}@{ola}@{oll}" disabled="true" class="sheet-short"/>%<button type="roll" name="roll_ol" value="/gmroll {1d100+[[?{Misc. modifier|+0}]]}<[[@{olt}]] [Open Locks]"></button><button type="roll" name="roll_olnoarmor" value="/gmroll {1d100+[[?{Misc. modifier|+0}]]}<[[@{olb}@{olr}@{old}@{oll}]] [Open Locks (no armor)]">No armor</button></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: brtd;'>Find/Remove Traps</td>
|
||
<td><input type="text" name="attr_rtb" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_rtr" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_rtd" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_rta" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_rtl" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_rtt" value="@{rtb}@{rtr}@{rtd}@{rta}@{rtl}" disabled="true" class="sheet-short"/>%<button type="roll" name="roll_rt" value="/gmroll {1d100+[[?{Misc. modifier|+0}]]}<[[@{rtt}]] [Find/Remove Traps]"></button><button type="roll" name="roll_rtnoarmor" value="/gmroll {1d100+[[?{Misc. modifier|+0}]]}<[[@{rtb}@{rtr}@{rtd}@{rtl}]] [Find/Remove Traps (no armor)]">No armor</button></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bmsd;'>Move Silently</td>
|
||
<td><input type="text" name="attr_msb" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_msr" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_msd" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_msa" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_msl" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_mst" value="@{msb}@{msr}@{msd}@{msa}@{msl}" disabled="true" class="sheet-short"/>%<button type="roll" name="roll_ms" value="/gmroll {1d100+[[?{Misc. modifier|+0}]]}<[[@{mst}]] [Move Silently]"></button><button type="roll" name="roll_msnoarmor" value="/gmroll {1d100+[[?{Misc. modifier|+0}]]}<[[@{msb}@{msr}@{msd}@{msl}]] [Move Silently (no armor)]">No armor</button></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Hide in Shadows</td>
|
||
<td><input type="text" name="attr_hsb" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_hsr" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_hsd" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_hsa" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_hsl" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_hst" value="@{hsb}@{hsr}@{hsd}@{hsa}@{hsl}" disabled="true" class="sheet-short"/>%<button type="roll" name="roll_hs" value="/gmroll {1d100+[[?{Misc. modifier|+0}]]}<[[@{hst}]] [Hide in Shadows]"></button><button type="roll" name="roll_hsnoarmor" value="/gmroll {1d100+[[?{Misc. modifier|+0}]]}<[[@{hsb}@{hsr}@{hsd}@{hsl}]] [Hide in Shadows (no armor)]">No armor</button></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Detect Noise</td>
|
||
<td><input type="text" name="attr_dnb" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_dnr" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_dnd" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_dna" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_dnl" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_dnt" value="@{dnb}@{dnr}@{dnd}@{dna}@{dnl}" disabled="true" class="sheet-short"/>%<button type="roll" name="roll_dn" value="/gmroll {1d100+[[?{Misc. modifier|+0}]]}<[[@{dnt}]] [Detect Noise]"></button><button type="roll" name="roll_dnnoarmor" value="/gmroll {1d100+[[?{Misc. modifier|+0}]]}<[[@{dnb}@{dnr}@{dnd}@{dnl}]] [Detect Noise (no armor)]">No armor</button></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Climb Walls</td>
|
||
<td><input type="text" name="attr_cwb" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_cwr" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_cwd" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_cwa" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_cwl" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_cwt" value="@{cwb}@{cwr}@{cwd}@{cwa}@{cwl}" disabled="true" class="sheet-short"/>%<button type="roll" name="roll_cw" value="/gmroll {1d100+[[?{Misc. modifier|+0}]]}<[[@{cwt}]] [Climb Walls]"></button><button type="roll" name="roll_cwnoarmor" value="/gmroll {1d100+[[?{Misc. modifier|+0}]]}<[[@{cwb}@{cwr}@{cwd}@{cwl}]] [Climb Walls (no armor)]">No armor</button></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Read Languages</td>
|
||
<td><input type="text" name="attr_rlb" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_rlr" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_rld" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_rla" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_rll" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_rlt" value="@{rlb}@{rlr}@{rld}@{rla}@{rll}" disabled="true" class="sheet-short"/>%<button type="roll" name="roll_rl" value="/gmroll {1d100+[[?{Misc. modifier|+0}]]}<[[@{rlt}]] [Read Languages]"></button><button type="roll" name="roll_rlnoarmor" value="/gmroll {1d100+[[?{Misc. modifier|+0}]]}<[[@{rlb}@{rlr}@{rld}@{rll}]] [Read Languages (no armor)]">No armor</button></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Detect Magic*</td>
|
||
<td><input type="text" name="attr_dmb" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_dmr" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_dmd" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_dma" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_dml" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_dmt" value="@{dmb}@{dmr}@{dmd}@{dma}@{dml}" disabled="true" class="sheet-short"/>%<button type="roll" name="roll_dm" value="/gmroll {1d100+[[?{Misc. modifier|+0}]]}<[[@{dmt}]] [Detect Magic]"></button><button type="roll" name="roll_dmnoarmor" value="/gmroll {1d100+[[?{Misc. modifier|+0}]]}<[[@{dmb}@{dmr}@{dmd}@{dml}]] [Detect Magic (no armor)]">No armor</button></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Detect Illusion*</td>
|
||
<td><input type="text" name="attr_dib" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_dir" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_did" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_dia" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_dil" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_dit" value="@{dib}@{dir}@{did}@{dia}@{dil}" disabled="true" class="sheet-short"/>%<button type="roll" name="roll_di" value="/gmroll {1d100+[[?{Misc. modifier|+0}]]}<[[@{dit}]] [Detect Illusion*]"></button><button type="roll" name="roll_dinoarmor" value="/gmroll {1d100+[[?{Misc. modifier|+0}]]}<[[@{dib}@{dir}@{did}@{dil}]] [Detect Illusion* (no armor)]">No armor</button></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Bribe*</td>
|
||
<td><input type="text" name="attr_brb" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_brr" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_brd" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_bra" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_brl" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_brt" value="@{brb}@{brr}@{brd}@{bra}@{brl}" disabled="true" class="sheet-short"/>%<button type="roll" name="roll_br" value="/gmroll {1d100+[[?{Misc. modifier|+0}]]}<[[@{brt}]] [Bribe*]"></button><button type="roll" name="roll_brnoarmor" value="/gmroll {1d100+[[?{Misc. modifier|+0}]]}<[[@{brb}@{brr}@{brd}@{brl}]] [Bribe* (no armor)]">No armor</button></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Tunneling*</td>
|
||
<td><input type="text" name="attr_tub" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_tur" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_tud" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_tua" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_tul" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_tut" value="@{tub}@{tur}@{tud}@{tua}@{tul}" disabled="true" class="sheet-short"/>%<button type="roll" name="roll_tu" value="/gmroll {1d100+[[?{Misc. modifier|+0}]]}<[[@{tut}]] [Tunneling*]"></button><button type="roll" name="roll_tunoarmor" value="/gmroll {1d100+[[?{Misc. modifier|+0}]]}<[[@{tub}@{tur}@{tud}@{tul}]] [Tunneling* (no armor)]">No armor</button></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Escape Bonds*</td>
|
||
<td><input type="text" name="attr_ebb" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_ebr" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_ebd" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_eba" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_ebl" value="+0" class="sheet-short"/>%</td>
|
||
<td><input type="text" name="attr_ebt" value="@{ebb}@{ebr}@{ebd}@{eba}@{ebl}" disabled="true" class="sheet-short"/>%<button type="roll" name="roll_eb" value="/gmroll {1d100+[[?{Misc. modifier|+0}]]}<[[@{ebt}]] [Escape Bonds*]"></button><button type="roll" name="roll_ebnoarmor" value="/gmroll {1d100+[[?{Misc. modifier|+0}]]}<[[@{ebb}@{ebr}@{ebd}@{ebl}]] [Escape Bonds* (no armor)]">No armor</button></td>
|
||
</tr>
|
||
</table>
|
||
Skills with an asterisk (*) are from Skills & Powers, and may be ignored for campaigns using core rules.
|
||
</div>
|
||
</div>
|
||
<br />
|
||
<hr>
|
||
<div class="sheet-2colrow">
|
||
<div class="sheet-col">
|
||
<h4>Proficiencies and Languages</h4>
|
||
<br />
|
||
<b>Weapon Proficiencies</b><br />
|
||
<ul>
|
||
<fieldset name="repeating_weaponprofs"class="repeating_weaponprofs">
|
||
<table>
|
||
<tr>
|
||
<td><input type="text" name="attr_weapprofname" ></td>
|
||
</tr>
|
||
</table>
|
||
</fieldset>
|
||
</ul>
|
||
<br /><br />
|
||
<b>Non-Weapon Proficiencies</b><br />
|
||
<ul>
|
||
<fieldset name="repeating_profs"class="repeating_profs">
|
||
<table>
|
||
<tr>
|
||
<td><input type="text" name="attr_profname" ></td>
|
||
<td>(<input type="text" name="attr_profstatnum" class="sheet-short"></td>
|
||
<td>±<input type="text" name="attr_profmod" class="sheet-short">)
|
||
<button type="roll" name="Profroll" value="/roll 1d20<[[@{profstatnum}@{profmod}]] @{profname}"></button>
|
||
</td>
|
||
</tr>
|
||
</table>
|
||
</fieldset>
|
||
</ul>
|
||
<br /><br />
|
||
<b>Languages</b><br />
|
||
<ul>
|
||
<fieldset name="repeating_langs"class="repeating_langs">
|
||
<table>
|
||
<tr>
|
||
<td><input type="text" name="attr_langname" ></td>
|
||
</tr>
|
||
</table>
|
||
</fieldset>
|
||
</ul>
|
||
</div>
|
||
<div class="sheet-col">
|
||
<h4>Spells Memorized and Spell Book</h4>
|
||
<br />
|
||
<b>Spells Memorized</b><br />
|
||
<ul>
|
||
<br />
|
||
<fieldset name="repeating_spells"class="repeating_spells">
|
||
<table>
|
||
<tr>
|
||
<td>
|
||
<select name="attr_spelllevel" class="sheet-short">
|
||
<option value="1">1st</option>
|
||
<option value="2">2nd</option>
|
||
<option value="3">3rd</option>
|
||
<option value="4">4th</option>
|
||
<option value="5">5th</option>
|
||
<option value="6">6th</option>
|
||
<option value="7">7th</option>
|
||
<option value="8">8th</option>
|
||
<option value="9">9th</option>
|
||
</select>
|
||
<input type="text" name="attr_spellname" value="spell name" ><input type="checkbox" name="attr_castcheck" class="sheet-left"> <span></span>Cast today
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td>
|
||
Casting Time: <input type="text" name="attr_casttime" class="sheet-short"><button type="roll" name="roll_initspell" value="/gmroll 1d10+@{casttime}&{tracker}">Initiative</button>
|
||
</td>
|
||
</tr>
|
||
</table>
|
||
</fieldset>
|
||
</ul>
|
||
<br /><br />
|
||
<b>Spell Book</b><br />
|
||
<ul><br />
|
||
<textarea name="attr_pellmem"></textarea>
|
||
</ul>
|
||
<br /><br />
|
||
<b>Scrolls</b><br />
|
||
<ul>
|
||
<fieldset name="repeating_scrolls" class="repeating_scrolls">
|
||
<input type="text" name="attr_scroll">
|
||
</fieldset>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
<hr>
|
||
<div class="sheet-2colrow">
|
||
<div class="sheet-col">
|
||
<h4>Gear</h4>
|
||
<table style='border-collapse: collapse; border-spacing: 0;'>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Description</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Weight</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Location</td>
|
||
</tr>
|
||
<tr>
|
||
<td><input type="text" name="attr_geardesc"></td>
|
||
<td><input type="number" name="attr_gearweigh" class="sheet-short" value="0"></td>
|
||
<td><input type="text" name="attr_gearloc" class=""></td>
|
||
</tr>
|
||
</table>
|
||
<fieldset name="repeating_gear" class="repeating_gear">
|
||
<table style='border-collapse: collapse; border-spacing: 0;'>
|
||
<tr>
|
||
<td><input type="text" name="attr_geardesc"></td>
|
||
<td><input type="number" name="attr_gearweigh" class="sheet-short" value="0"></td>
|
||
<td><input type="text" name="attr_gearloc" class=""></td>
|
||
</tr>
|
||
</table>
|
||
</fieldset>
|
||
<br />
|
||
Tot Gear weight:<input type="number" name="attr_gearweighttotal" class="sheet-nobut">
|
||
Tot Weapon weight:<input type="number" name="attr_weapweighttotal" class="sheet-nobut"><br />
|
||
Total weight:<input type="number" name="attr_totalweightCarry" class="sheet-nobut"><br />
|
||
<b>Notes</b>
|
||
<textarea name="attr_gearnotes"></textarea>
|
||
</div>
|
||
<div class="sheet-col">
|
||
<h4>Wealth</h4>
|
||
<br />
|
||
<input type="number" name="attr_plat" class="sheet-nobut"> <b>PP</b>
|
||
<input type="number" name="attr_gold" class="sheet-nobut"> <b>GP</b>
|
||
<input type="number" name="attr_elec" class="sheet-nobut"> <b>EP</b>
|
||
<input type="number" name="attr_silv" class="sheet-nobut"> <b>SP</b>
|
||
<input type="number" name="attr_copp" class="sheet-nobut"> <b>CP</b><br />
|
||
<b>Total GP value from gems:</b> <input type="text" name="attr_gemsvalue" class="short">
|
||
<br /><b>Total GP value from other items:</b> <input type="text" name="attr_othervalue" class="short"><br /><br />
|
||
<h4>Currency Conversion Calculator</h4>
|
||
<table style='border-collapse: collapse; border-spacing: 0;'>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Currency</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>|Quantity</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>|Copper</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>|Silver</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>|Electrum</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>|Gold</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>|Platinum</td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Copper</td>
|
||
<td><input type="number" name="attr_copq" class="sheet-short"/></td>
|
||
<td><input type="text" name="attr_copcop" class="sheet-short" value="@{copq}*1" disabled="true"/></td>
|
||
<td><input type="text" name="attr_cops" class="sheet-short" value="@{copq}/10" disabled="true"/></td>
|
||
<td><input type="text" name="attr_cope" class="sheet-short" value="@{cops}/5" disabled="true"/></td>
|
||
<td><input type="text" name="attr_copg" class="sheet-short" value="@{cops}/10" disabled="true"/></td>
|
||
<td><input type="text" name="attr_copp" class="sheet-short" value="@{copg}/5" disabled="true"/></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Silver</td>
|
||
<td><input type="number" name="attr_sq" class="sheet-short"/></td>
|
||
<td><input type="text" name="attr_scop" class="sheet-short" value="@{sq}*10" disabled="true"/></td>
|
||
<td><input type="text" name="attr_ss" class="sheet-short" value="@{sq}*1" disabled="true"/></td>
|
||
<td><input type="text" name="attr_se" class="sheet-short" value="@{ss}/5" disabled="true"/></td>
|
||
<td><input type="text" name="attr_sg" class="sheet-short" value="@{ss}/10" disabled="true"/></td>
|
||
<td><input type="text" name="attr_sp" class="sheet-short" value="@{sg}/5" disabled="true"/></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Electrum</td>
|
||
<td><input type="number" name="attr_eq" class="sheet-short"/></td>
|
||
<td><input type="text" name="attr_ecop" class="sheet-short" value="@{es}*10" disabled="true"/></td>
|
||
<td><input type="text" name="attr_es" class="sheet-short" value="@{eq}*5" disabled="true"/></td>
|
||
<td><input type="text" name="attr_ee" class="sheet-short" value="@{eq}*1" disabled="true"/></td>
|
||
<td><input type="text" name="attr_eg" class="sheet-short" value="@{es}/10" disabled="true"/></td>
|
||
<td><input type="text" name="attr_ep" class="sheet-short" value="@{eg}/5" disabled="true"/></td>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Gold</td>
|
||
<td><input type="number" name="attr_gq" class="sheet-short"/></td>
|
||
<td><input type="text" name="attr_gcop" class="sheet-short" value="@{gq}*100" disabled="true"/></td>
|
||
<td><input type="text" name="attr_gs" class="sheet-short" value="@{gq}*10" disabled="true"/></td>
|
||
<td><input type="text" name="attr_ge" class="sheet-short" value="@{gs}/5" disabled="true"/></td>
|
||
<td><input type="text" name="attr_gg" class="sheet-short" value="@{gq}*1" disabled="true"/></td>
|
||
<td><input type="text" name="attr_gp" class="sheet-short" value="@{gg}/5" disabled="true"/></td>
|
||
</tr>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Platinum</td>
|
||
<td><input type="number" name="attr_pq" class="sheet-short"/></td>
|
||
<td><input type="text" name="attr_pcop" class="sheet-short" value="@{ps}*10" disabled="true"/></td>
|
||
<td><input type="text" name="attr_ps" class="sheet-short" value="@{pg}*10" disabled="true"/></td>
|
||
<td><input type="text" name="attr_pe" class="sheet-short" value="@{ps}/5" disabled="true"/></td>
|
||
<td><input type="text" name="attr_pg" class="sheet-short" value="@{pq}*5" disabled="true"/></td>
|
||
<td><input type="text" name="attr_pp" class="sheet-short" value="@{pq}*1" disabled="true"/></td>
|
||
</tr>
|
||
</table>
|
||
<br />
|
||
<b>Gems</b><br />
|
||
<textarea name="attr_gems"></textarea>
|
||
<b>Other Items Of Value</b><br />
|
||
<textarea name="attr_otherval"></textarea>
|
||
<br />
|
||
(100 Copper = 10 Silver = 2 Electrum = 1 Gold = 1/5 Platinum)<br />
|
||
</div>
|
||
</div>
|
||
<hr>
|
||
<h4>Henchpersons/Animal Companions</h4>
|
||
<table style='border-collapse: collapse; border-spacing: 0;'>
|
||
<tr>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Name</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>AC</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Race/Class</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>HD/Lvl</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>#AT</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>THAC0</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Dmg</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>HP</td>
|
||
<td style='background-color: #26ADE4; color: #FFF; font-weight: bold;'>Notes</td>
|
||
</tr>
|
||
<tr>
|
||
<td><input type="text" name="attr_henchname"></td>
|
||
<td><input type="text" name="attr_henchac" class="sheet-short"></td>
|
||
<td> <input type="text" name="attr_henchrace"></td>
|
||
<td><input type="text" name="attr_henchlvl" class="sheet-short"></td>
|
||
<td><input type="text" name="attr_henchatknum" class="sheet-short"></td>
|
||
<td> <input type="text" name="attr_henchthac" class="sheet-short"></td>
|
||
<td><input type="text" name="attr_henchdmg" class="sheet-short"></td>
|
||
<td><input type="number" name="attr_henchhp" class="sheet-nobut" value="@{HP}"/>/<input type="number" name="attr_henchhpmax" class="sheet-nobut" /></td>
|
||
<td><input type="text" name="attr_henchnotes"></td>
|
||
</tr>
|
||
</table>
|
||
<fieldset name="repeating_hench" class="repeating_hench">
|
||
<tr>
|
||
<td><input type="text" name="attr_henchname"></td>
|
||
<td><input type="text" name="attr_henchac" class="sheet-short"></td>
|
||
<td><input type="text" name="attr_henchrace"></td>
|
||
<td><input type="text" name="attr_henchlvl" class="sheet-short"></td>
|
||
<td><input type="text" name="attr_henchatknum" class="sheet-short"></td>
|
||
<td><input type="text" name="attr_henchthac" class="sheet-short"></td>
|
||
<td><input type="text" name="attr_henchdmg" class="sheet-short"></td>
|
||
<td><input type="number" name="attr_henchhp" class="sheet-nobut" value="@{HP}"/>/<input type="number" name="attr_henchhpmax" class="sheet-nobut" /></td>
|
||
<td><input type="text" name="attr_henchnotes"></td>
|
||
</tr>
|
||
</table>
|
||
</fieldset>
|
||
<br />
|
||
<b>Notes</b>
|
||
<textarea name="attr_henchnotesarea"></textarea>
|
||
<hr>
|
||
</div>
|
||
<div class="sheet-tab-content sheet-tab2">
|
||
<h2>Monster Info</h2>
|
||
<h4>Name:</h4>
|
||
<input type="text" name="attr_character_name">
|
||
<div class="body">
|
||
<div class='sheet-3colrow'>
|
||
<div class='sheet-col'>
|
||
<table>
|
||
<tr>
|
||
<td><b>Climate/Terrain:</b></td>
|
||
<td><input type="text" name="attr_climateterrain"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Frequency:</b></td>
|
||
<td><input type="text" name="attr_frequency"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Organization:</b></td>
|
||
<td><input type="text" name="attr_organization"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Activity Cycle:</b></td>
|
||
<td><input type="text" name="attr_cycle"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Diet:</b></td>
|
||
<td><input type="text" name="attr_diet"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Intelligence:</b></td>
|
||
<td><input type="text" name="attr_monsterintelligence"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Treasure:</b></td>
|
||
<td><input type="text" name="attr_treasure"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Alignment:</b></td>
|
||
<td><input type="text" name="attr_monsteralignment"></td>
|
||
</tr>
|
||
</table>
|
||
</div>
|
||
<div class='sheet-col'>
|
||
<table>
|
||
<tr>
|
||
<td><b>No. Appearing:</b></td>
|
||
<td><input type="text" name="attr_appearing" class="short"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Armor Class:</b></td>
|
||
<td><input type="text" name="attr_monsterarmor" class="short"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Movement:</b></td>
|
||
<td><input type="text" name="attr_movement" class="medium"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Hit Dice:</b></td>
|
||
<td><input type="text" name="attr_hitdice"class="short"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>THAC0:</b></td>
|
||
<td><input type="text" name="attr_monsterthac0"class="short"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>No. of Attacks:</b></td>
|
||
<td><input type="text" name="attr_monsteratknum"class="tiny"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Damage/Attack:</b></td>
|
||
<td><input type="text" name="attr_monsterdmg"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Special Attacks:</b></td>
|
||
<td><input type="text" name="attr_monsterspecattacks"></td>
|
||
</tr>
|
||
</table>
|
||
</div>
|
||
<div class='sheet-col'>
|
||
<table>
|
||
<tr>
|
||
<td><b>Special Defenses:</b></td>
|
||
<td><input type="text" name="attr_monsterspecdefenses"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Magic Resistance:</b></td>
|
||
<td><input type="text" name="attr_monstermagicresist"class="short">%</td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Size:</b></td>
|
||
<td><input type="text" name="attr_monstersize" class="tiny"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Morale:</b></td>
|
||
<td><input type="text" name="attr_monstermorale"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>XP Value:</b></td>
|
||
<td><input type="text" name="attr_monsterxp"></td>
|
||
</tr>
|
||
</table>
|
||
</div>
|
||
</div>
|
||
<textarea name="attr_monsterdesc" placeholder="Description"></textarea>
|
||
<br />
|
||
<h4>Combat</h4>
|
||
<textarea name="attr_monstercombat"></textarea>
|
||
<br />
|
||
<h4>Habitat/Society</h4>
|
||
<textarea name="attr_monsterhabitat"></textarea>
|
||
<br />
|
||
<h4>Ecology</h4>
|
||
<textarea name="attr_monsterecology"></textarea>
|
||
<br />
|
||
<h3>Variants</h3>
|
||
<fieldset class="repeating_monstervariants" name="monstervariants">
|
||
<input type="text" name="attr_variantname">
|
||
<div class='sheet-3colrow'>
|
||
<div class='sheet-col'>
|
||
<table>
|
||
<tr>
|
||
<td><b>Climate/Terrain:</b></td>
|
||
<td><input type="text" name="attr_climateterrain"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Frequency:</b></td>
|
||
<td><input type="text" name="attr_frequency"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Organization:</b></td>
|
||
<td><input type="text" name="attr_organization"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Activity Cycle:</b></td>
|
||
<td><input type="text" name="attr_cycle"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Diet:</b></td>
|
||
<td><input type="text" name="attr_diet"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Intelligence:</b></td>
|
||
<td><input type="text" name="attr_monsterintelligence"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Treasure:</b></td>
|
||
<td><input type="text" name="attr_treasure"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Alignment:</b></td>
|
||
<td><input type="text" name="attr_monsteralignment"></td>
|
||
</tr>
|
||
</table>
|
||
</div>
|
||
<div class='sheet-col'>
|
||
<table>
|
||
<tr>
|
||
<td><b>No. Appearing:</b></td>
|
||
<td><input type="text" name="attr_appearing" class="short"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Armor Class:</b></td>
|
||
<td><input type="text" name="attr_monsterarmor" class="short"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Movement:</b></td>
|
||
<td><input type="text" name="attr_movement" class="medium"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Hit Dice:</b></td>
|
||
<td><input type="text" name="attr_hitdice"class="short"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>THAC0:</b></td>
|
||
<td><input type="text" name="attr_monsterthac0"class="short"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>No. of Attacks:</b></td>
|
||
<td><input type="text" name="attr_monsteratknum"class="tiny"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Damage/Attack:</b></td>
|
||
<td><input type="text" name="attr_monsterdmg"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Special Attacks:</b></td>
|
||
<td><input type="text" name="attr_monsterspecattacks"></td>
|
||
</tr>
|
||
</table>
|
||
</div>
|
||
<div class='sheet-col'>
|
||
<table>
|
||
<tr>
|
||
<td><b>Special Defenses:</b></td>
|
||
<td><input type="text" name="attr_monsterspecdefenses"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Magic Resistance:</b></td>
|
||
<td><input type="text" name="attr_monstermagicresist"class="short">%</td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Size:</b></td>
|
||
<td><input type="text" name="attr_monstersize" class="tiny"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>Morale:</b></td>
|
||
<td><input type="text" name="attr_monstermorale"></td>
|
||
</tr>
|
||
<tr>
|
||
<td><b>XP Value:</b></td>
|
||
<td><input type="text" name="attr_monsterxp"></td>
|
||
</tr>
|
||
</table>
|
||
</div>
|
||
</div>
|
||
<textarea name="attr_monsterdesc"></textarea>
|
||
<br />
|
||
</fieldset>
|
||
</div>
|
||
</div>
|
||
<div class="sheet-tab-content sheet-tab3">
|
||
<h3>PRIEST SPELLS </h3>
|
||
<div>
|
||
<input type="checkbox" name="attr_3rsChkP" class="arrow" /><span></span>Hide
|
||
<br />
|
||
<div class="body">
|
||
<b>Equivalent Priest Casting Level</b> <input type="number" style="width: 50px" name="attr_3EquivalentPriestLevel" value="0"min="0" max="999"/><br />
|
||
<h4>Priest Spells Available</h4><br />
|
||
<b>1</b> <input type="number" name="attr_3pspell1" class="sheet-short">
|
||
<b>2</b> <input type="number" name="attr_3pspell2" class="sheet-short">
|
||
<b>3</b> <input type="number" name="attr_3pspell3" class="sheet-short">
|
||
<b>4</b> <input type="number" name="attr_3pspell4" class="sheet-short">
|
||
<b>5</b> <input type="number" name="attr_3pspell5" class="sheet-short">
|
||
<b>6</b> <input type="number" name="attr_3pspell6" class="sheet-short">
|
||
<b>7</b> <input type="number" name="attr_3pspell7" class="sheet-short">
|
||
<br />
|
||
<br />
|
||
<h4>Priest Spheres Allowed</h4><br />
|
||
<b>All</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3pSphereAll" />
|
||
<option value="Non">None</option>
|
||
<option value="Maj">Major</option>
|
||
<option value="Min">Minor</option>
|
||
</select>
|
||
<b>Animal</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3pSphereAni" />
|
||
<option value="Non">None</option>
|
||
<option value="Maj">Major</option>
|
||
<option value="Min">Minor</option>
|
||
</select>
|
||
<b>Astral</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3pSphereAst" />
|
||
<option value="Non">None</option>
|
||
<option value="Maj">Major</option>
|
||
<option value="Min">Minor</option>
|
||
</select>
|
||
<b>Chaos</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3pSphereChao" />
|
||
<option value="Non">None</option>
|
||
<option value="Maj">Major</option>
|
||
<option value="Min">Minor</option>
|
||
</select>
|
||
<br />
|
||
<b>Charm</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3pSphereChar" />
|
||
<option value="Non">None</option>
|
||
<option value="Maj">Major</option>
|
||
<option value="Min">Minor</option>
|
||
</select>
|
||
<b>Combat</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3pSphereCom" />
|
||
<option value="Non">None</option>
|
||
<option value="Maj">Major</option>
|
||
<option value="Min">Minor</option>
|
||
</select>
|
||
<b>Creation</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3pSphereCre" />
|
||
<option value="Non">None</option>
|
||
<option value="Maj">Major</option>
|
||
<option value="Min">Minor</option>
|
||
</select>
|
||
<b>Divination</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3pSphereDiv" />
|
||
<option value="Non">None</option>
|
||
<option value="Maj">Major</option>
|
||
<option value="Min">Minor</option>
|
||
</select>
|
||
<br >
|
||
<b>Elemental</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3pSphereEle" />
|
||
<option value="Non">None</option>
|
||
<option value="Maj">Major</option>
|
||
<option value="Min">Minor</option>
|
||
<option value="Air">Air</option>
|
||
<option value="Ear">Earth</option>
|
||
<option value="Fir">Fire</option>
|
||
<option value="Fir">Water</option>
|
||
</select>
|
||
<b>Guardian</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3pSphereGua" />
|
||
<option value="Non">None</option>
|
||
<option value="Maj">Major</option>
|
||
<option value="Min">Minor</option>
|
||
</select>
|
||
<b>Healing</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3pSphereHea" />
|
||
<option value="Non">None</option>
|
||
<option value="Maj">Major</option>
|
||
<option value="Min">Minor</option>
|
||
</select>
|
||
<b>Law</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3pSphereLaw" />
|
||
<option value="Non">None</option>
|
||
<option value="Maj">Major</option>
|
||
<option value="Min">Minor</option>
|
||
</select>
|
||
<br />
|
||
<b>Necromantic</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3pSphereNec" />
|
||
<option value="Non">None</option>
|
||
<option value="Maj">Major</option>
|
||
<option value="Min">Minor</option>
|
||
</select>
|
||
<b>Numbers</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3pSphereNum" />
|
||
<option value="Non">None</option>
|
||
<option value="Maj">Major</option>
|
||
<option value="Min">Minor</option>
|
||
</select>
|
||
<b>Plant</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3pSpherePla" />
|
||
<option value="Non">None</option>
|
||
<option value="Maj">Major</option>
|
||
<option value="Min">Minor</option>
|
||
</select>
|
||
<b>Protection</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3pSpherePro" />
|
||
<option value="Non">None</option>
|
||
<option value="Maj">Major</option>
|
||
<option value="Min">Minor</option>
|
||
</select>
|
||
<br />
|
||
<b>Summoning</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3pSphereSum" />
|
||
<option value="Non">None</option>
|
||
<option value="Maj">Major</option>
|
||
<option value="Min">Minor</option>
|
||
</select>
|
||
<b>Sun</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3pSphereSun" />
|
||
<option value="Non">None</option>
|
||
<option value="Maj">Major</option>
|
||
<option value="Min">Minor</option>
|
||
</select>
|
||
<b>Thought</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3pSphereTho" />
|
||
<option value="Non">None</option>
|
||
<option value="Maj">Major</option>
|
||
<option value="Min">Minor</option>
|
||
</select>
|
||
<b>Time</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3pSphereTim" />
|
||
<option value="Non">None</option>
|
||
<option value="Maj">Major</option>
|
||
<option value="Min">Minor</option>
|
||
</select>
|
||
<br />
|
||
<b>Travelers</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3pSphereTra" />
|
||
<option value="Non">None</option>
|
||
<option value="Maj">Major</option>
|
||
<option value="Min">Minor</option>
|
||
</select>
|
||
<b>War</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3pSphereWar" />
|
||
<option value="Non">None</option>
|
||
<option value="Maj">Major</option>
|
||
<option value="Min">Minor</option>
|
||
</select>
|
||
<b>Wards</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3pSphereWard" />
|
||
<option value="Non">None</option>
|
||
<option value="Maj">Major</option>
|
||
<option value="Min">Minor</option>
|
||
</select>
|
||
<b>Weather</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3pSphereWea" />
|
||
<option value="Non">None</option>
|
||
<option value="Maj">Major</option>
|
||
<option value="Min">Minor</option>
|
||
</select>
|
||
</div>
|
||
</div>
|
||
<br /> <br />
|
||
<h3>WIZARD SPELLS </h3>
|
||
<div>
|
||
<input type="checkbox" name="attr_3rsChkW" class="arrow" /><span></span>Hide
|
||
<br />
|
||
<div class="body">
|
||
<b>Equivalent Wizard Casting Level</b> <input type="number" style="width: 50px" name="attr_3EquivalentWizardLevel" value="0"min="0" max="999"/><br />
|
||
<h4>Wizard Spells Available</h4><br />
|
||
<b>1</b> <input type="number" name="attr_3wspell1" class="sheet-short">
|
||
<b>2</b> <input type="number" name="attr_3wspell2" class="sheet-short">
|
||
<b>3</b> <input type="number" name="attr_3wspell3" class="sheet-short">
|
||
<b>4</b> <input type="number" name="attr_3wspell4" class="sheet-short">
|
||
<b>5</b> <input type="number" name="attr_3wspell5" class="sheet-short">
|
||
<b>6</b> <input type="number" name="attr_3wspell6" class="sheet-short">
|
||
<b>7</b> <input type="number" name="attr_3wspell7" class="sheet-short">
|
||
<b>8</b> <input type="number" name="attr_3wspell8" class="sheet-short">
|
||
<b>9</b> <input type="number" name="attr_3wspell9" class="sheet-short">
|
||
<br />
|
||
<br />
|
||
<h4>Wizard Schools Allowed</h4><br />
|
||
<b>Abjuration</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3wSchoolAbj" />
|
||
<option value="Gen">General</option>
|
||
<option value="Opp">Opposition</option>
|
||
<option value="Spec">Specialist</option>
|
||
</select>
|
||
<b>Alteration</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3wSchoolAlt" />
|
||
<option value="Gen">General</option>
|
||
<option value="Opp">Opposition</option>
|
||
<option value="Spec">Specialist</option>
|
||
</select>
|
||
<b>Conjuration/Summoning</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3wSchoolCon" />
|
||
<option value="Gen">General</option>
|
||
<option value="Opp">Opposition</option>
|
||
<option value="Spec">Specialist</option>
|
||
</select>
|
||
<br />
|
||
<b>Enchantment/Charm</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3wSchoolEnc" />
|
||
<option value="Gen">General</option>
|
||
<option value="Opp">Opposition</option>
|
||
<option value="Spec">Specialist</option>
|
||
</select>
|
||
<b>Illusion/Phantasm</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3wSchoolIll" />
|
||
<option value="Gen">General</option>
|
||
<option value="Opp">Opposition</option>
|
||
<option value="Spec">Specialist</option>
|
||
</select>
|
||
<b>Invocation/Evocation</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3wSchoolInv" />
|
||
<option value="Gen">General</option>
|
||
<option value="Opp">Opposition</option>
|
||
<option value="Spec">Specialist</option>
|
||
</select>
|
||
<br />
|
||
<b>Divination</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3wSchoolDiv" />
|
||
<option value="Gen">General</option>
|
||
<option value="Opp">Opposition</option>
|
||
<option value="Spec">Specialist</option>
|
||
</select>
|
||
<b>Necromancy</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3wSchoolNec" />
|
||
<option value="Gen">General</option>
|
||
<option value="Opp">Opposition</option>
|
||
<option value="Spec">Specialist</option>
|
||
</select>
|
||
<b>Wild Magic</b>
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3wSchoolWil" />
|
||
<option value="Gen">General</option>
|
||
<option value="Opp">Opposition</option>
|
||
<option value="Spec">Specialist</option>
|
||
</select>
|
||
</div>
|
||
</div>
|
||
<br />
|
||
<br />
|
||
<h3>SPELL BOOK</h3><br />
|
||
<b>Spell Book Pages</b> <input type="number" style="width: 50px" name="attr_3SpellBookPages" value="1" min="0"/><br />
|
||
<div class="spells" style="width: 100%">
|
||
<span style="display:inline-block; width: 30px" >Mem</span>
|
||
<span style="display:inline-block; width: 80px" >Type</span>
|
||
<span style="display:inline-block; width: 50px" >Level</span>
|
||
<span style="display:inline-block; width: 200px" >Name</span>
|
||
<span style="display:inline-block; width: 50px" >Time</span>
|
||
<span style="display:inline-block; width: 70px" >INIT</span>
|
||
<span style="display:inline-block; width: 200px" >Macro Name</span>
|
||
<span style="display:inline-block; width: 70px" >CAST</span>
|
||
<span style="display:inline-block; width: 70px" >Memorized</span>
|
||
<span style="display:inline-block; width: 70px" >Times Cast</span>
|
||
<fieldset class="repeating_3spells">
|
||
<div class="spellbook">
|
||
<input type="checkbox" style="width: 30px" name="attr_3memocheck"> <span></span>
|
||
<select class="sheet-mid" style="width: 80px" name="attr_3spelltype" />
|
||
<option value="P">Priest</option>
|
||
<option value="W">Wizard</option>
|
||
</select>
|
||
<input type="number" style="width: 50px" name="attr_3spelllevel" value="1" min="1" max="9"/>
|
||
<input type="text" style="width: 200px" name="attr_3spellname" value="Name of Spell" >
|
||
<input type="text" style="width: 50px" name="attr_3casttime" value="0">
|
||
<button type="roll" style="width: 70px" name="roll_3initspell" value="/gmroll 1d10+@{3casttime}&{tracker}"> </button>
|
||
<input type="text" style="width: 200px" name="attr_3macroname" value="% or # and Name of Macro" >
|
||
<button type="roll" style="width: 70px" name="roll_3spellmacro" value="@{3macroname}"> </button>
|
||
<input type="number" style="width: 50px" name="attr_3spellMemorized" value="0"/>
|
||
<input type="number" style="width: 50px" name="attr_3spellCast" value="0"/>
|
||
<!-- comment -->
|
||
</div>
|
||
</fieldset>
|
||
</div>
|
||
<br /><br />
|
||
<h4>Scrolls</h4><br />
|
||
<div class="scrolls" style="width: 100%">
|
||
<span style="display:inline-block; width: 100px" >Type</span>
|
||
<span style="display:inline-block; width: 50px" >Level</span>
|
||
<span style="display:inline-block; width: 200px" >Name</span>
|
||
<span style="display:inline-block; width: 50px" >Time</span>
|
||
<span style="display:inline-block; width: 70px" >INIT</span>
|
||
<span style="display:inline-block; width: 50px" >Cast Lvl</span>
|
||
<span style="display:inline-block; width: 200px" >Macro Name</span>
|
||
<span style="display:inline-block; width: 70px" >CAST</span>
|
||
<fieldset class="repeating_3scrolls">
|
||
<div class="scrollist">
|
||
<select class="sheet-mid" style="width: 100px" name="attr_3scrolltype" />
|
||
<option value="P">Priest</option>
|
||
<option value="R">Protection</option>
|
||
<option value="W">Wizard</option>
|
||
</select>
|
||
<input type="number" style="width: 50px" name="attr_3scrollspelllevel" value="1"min="1" max="9"/>
|
||
<input type="text" style="width: 200px" name="attr_3scrollspellname" value="Name of Scroll" >
|
||
<input type="text" style="width: 50px" name="attr_3scrollcasttime" value="0">
|
||
<button type="roll" style="width: 70px" name="roll_3scrollinitspell" value="/gmroll 1d10+@{3scrollcasttime}&{tracker}"> </button>
|
||
<input type="number" style="width: 50px" name="attr_3scrollcastlevel" value="0"/>
|
||
<input type="text" style="width: 200px" name="attr_3scrollmacroname" value="% or # and Name of Macro" >
|
||
<button type="roll" style="width: 70px" name="roll_3scrollspellmacro" value="@{3scrollmacroname}"> </button>
|
||
<!-- comment -->
|
||
</div>
|
||
</fieldset>
|
||
</div>
|
||
<br /><br />
|
||
<h4>Spell Notes</h4><br />
|
||
<ul>
|
||
<textarea name="attr_3spellnotes"></textarea>
|
||
</ul>
|
||
</div>
|
||
<rolltemplate class="sheet-rolltemplate-2Edefault">
|
||
<div class="sheet-template-container">
|
||
<div class="sheet-default-head">
|
||
<table>
|
||
<tr>
|
||
<th class="sheet-template-title1">{{name}}</th>
|
||
</tr>
|
||
{{#subtitle}}
|
||
<tr>
|
||
<th class="sheet-template-subtitle1">{{subtitle}}</th>
|
||
</tr>
|
||
{{/subtitle}}
|
||
</table>
|
||
</div>
|
||
<div class="sheet-template-body">
|
||
<table>
|
||
{{#allprops() desc desc1 desc2 name subtitle}}
|
||
<tr>
|
||
<td class="default-c1">{{key}}</td>
|
||
<td class="default-c2">{{value}}</td>
|
||
{{/allprops() desc desc1 desc2 name subtitle}}
|
||
{{#desc}}
|
||
<tr>
|
||
<td class="default-c3" colspan="2">{{desc}}</td>
|
||
</tr>
|
||
{{/desc}}
|
||
{{#desc1}}
|
||
<tr>
|
||
<td class="default-c3" colspan="2">{{desc1}}</td>
|
||
</tr>
|
||
{{/desc1}}
|
||
{{#desc2}}
|
||
<tr>
|
||
<td class="default-c3" colspan="2">{{desc2}}</td>
|
||
</tr>
|
||
{{/desc2}}
|
||
</table>
|
||
</div>
|
||
</div>
|
||
</rolltemplate>
|
||
<rolltemplate class="sheet-rolltemplate-2Eattack">
|
||
<div class="sheet-template-container">
|
||
<div class="sheet-attack-head">
|
||
<table>
|
||
<tr>
|
||
<th class="sheet-template-title1">{{title}}</th>
|
||
</tr>
|
||
<tr>
|
||
<th class="sheet-template-subtitle1">{{subtitle}}</th>
|
||
</tr>
|
||
</table>
|
||
</div>
|
||
<div class="sheet-template-body">
|
||
<table>
|
||
<tr>
|
||
<td colspan="3"><span class="weapon-used">{{weapon_used}}</span></td>
|
||
</tr>
|
||
<tr>
|
||
<td class="attack-c1"><b>S/M</b></td>
|
||
<td class="attack-c2" rowspan="2">{{ac_hit}}</td>
|
||
<td class="attack-c1"><b>L</b></td>
|
||
</tr>
|
||
{{#crit_s}}{{#crit_l}}
|
||
{{#rollWasCrit() ac_hit}}
|
||
<tr>
|
||
<td class="attack-c3" rowspan="2">{{crit_s}}</td>
|
||
<td class="attack-c3" rowspan="2">{{crit_l}}</td>
|
||
</tr>
|
||
<tr>
|
||
<td class="attack-c4"><b>AC Hit</b></td>
|
||
</tr>
|
||
<tr>
|
||
<td colspan="3" class="attack-c5">CRITICAL HIT!{{#crit}}<br /><span class='attack-crit'>{{crit}}</span>{{/crit}}</td>
|
||
</tr>
|
||
{{/rollWasCrit() ac_hit }}
|
||
{{#^rollWasCrit() ac_hit}}
|
||
<tr>
|
||
<td class="attack-c3" rowspan="2">{{dmg_s}}</td>
|
||
<td class="attack-c3" rowspan="2">{{dmg_l}}</td>
|
||
</tr>
|
||
<tr>
|
||
<td class="attack-c4"><b>AC Hit</b></td>
|
||
</tr>
|
||
{{/^rollWasCrit() ac_hit}}
|
||
{{/crit_l}}{{/crit_s}}
|
||
{{^crit_s}}{{^crit_l}}
|
||
<tr>
|
||
<td class="attack-c3" rowspan="2">{{dmg_s}}</td>
|
||
<td class="attack-c3" rowspan="2">{{dmg_l}}</td>
|
||
</tr>
|
||
<tr>
|
||
<td class="attack-c4"><b>AC Hit</b></td>
|
||
</tr>
|
||
{{#rollWasCrit() ac_hit}}
|
||
<tr>
|
||
<td colspan="3" class="attack-c5">CRITICAL HIT!{{#crit}}<br /><span class='attack-crit'>{{crit}}</span>{{/crit}}</td>
|
||
</tr>
|
||
{{/rollWasCrit() ac_hit}}
|
||
{{/crit_l}}{{/crit_s}}
|
||
{{#rollWasFumble() ac_hit }}
|
||
<tr>
|
||
<td colspan="3" class="attack-c6">FUMBLE!{{#fumble}}<br /><span class='attack-fumble'>{{fumble}}</span>{{/fumble}}</td>
|
||
</tr>
|
||
{{/rollWasFumble() ac_hit }}
|
||
</table>
|
||
</div>
|
||
</div>
|
||
</rolltemplate>
|
||
<rolltemplate class="sheet-rolltemplate-2Espell">
|
||
<div class="sheet-template-container">
|
||
<div class="sheet-spell-head">
|
||
<table>
|
||
<tr>
|
||
<th class="sheet-template-title1">{{title}}</th>
|
||
</tr>
|
||
<tr>
|
||
<th class="sheet-template-subtitle1">{{splevel}} * {{school}}</th>
|
||
</tr>
|
||
{{#sphere}}
|
||
<tr>
|
||
<th class="sheet-template-subtitle1">Priest Sphere: {{sphere}}</th>
|
||
</tr>
|
||
{{/sphere}}
|
||
</table>
|
||
</div>
|
||
<div class="sheet-template-body">
|
||
<table>
|
||
<tr>
|
||
<td class="sheet-spell-c1"><span class="sheet-spell-prop">Components</span><br />{{components}}</td>
|
||
<td class="spell-c1"><span class="sheet-spell-prop">Casting Time</span><br />{{time}}</td>
|
||
</tr>
|
||
<tr>
|
||
<td class="sheet-spell-c1"><span class="sheet-spell-prop">Range</span><br />{{range}}</td>
|
||
<td class="spell-c1"><span class="sheet-spell-prop">Duration</span><br />{{duration}}</td>
|
||
</tr>
|
||
<tr>
|
||
<td class="sheet-spell-c1"><span class="sheet-spell-prop">Area of Effect</span><br />{{aoe}}</td>
|
||
<td class="spell-c1"><span class="sheet-spell-prop">Saving Throw</span><br />{{save}}</td>
|
||
</tr>
|
||
{{#damage}}
|
||
<tr>
|
||
<td colspan="2" class="sheet-spell-c1"><span class="sheet-spell-prop">Damage:</span> {{damage}} {{damagetype}}</td>
|
||
</tr>
|
||
{{/damage}}
|
||
{{#healing}}
|
||
<tr>
|
||
<td colspan="2" class="sheet-spell-c1"><span class="sheet-spell-prop">Healing:</span> {{healing}}</td>
|
||
</tr>
|
||
{{/healing}}
|
||
{{#reference}}
|
||
<tr>
|
||
<td colspan="2" class="sheet-spell-c1"><span class="sheet-spell-prop">Reference:</span> {{reference}}</td>
|
||
</tr>
|
||
{{/reference}}
|
||
{{#materials}}
|
||
<tr>
|
||
<td colspan="2" class="sheet-spell-c1"><span class="sheet-spell-prop">Spell Materials:</span> {{materials}}</td>
|
||
</tr>
|
||
{{/materials}}
|
||
{{#effects}}
|
||
<tr>
|
||
<td colspan="2" class="sheet-spell-c2"><span class="sheet-spell-prop">Effects:</span> {{effects}}</td>
|
||
</tr>
|
||
{{/effects}}
|
||
</table>
|
||
</div>
|
||
</div>
|
||
</rolltemplate>
|
||
<rolltemplate class="sheet-rolltemplate-2Eprotscroll">
|
||
<div class="sheet-template-container">
|
||
<div class="sheet-protscroll-head">
|
||
<table>
|
||
<tr>
|
||
<th class="sheet-template-title1">{{title}}</th>
|
||
</tr>
|
||
</table>
|
||
</div>
|
||
<div class="sheet-template-body">
|
||
<table>
|
||
<tr>
|
||
<td class="spell-c1"><span class="sheet-spell-prop">Reading Time</span><br />{{time}}</td>
|
||
<td class="spell-c1"><span class="sheet-spell-prop">Duration</span><br />{{duration}}</td>
|
||
</tr>
|
||
{{#reference}}
|
||
<tr>
|
||
<td colspan="2" class="sheet-spell-c1"><span class="sheet-spell-prop">Reference:</span> {{reference}}</td>
|
||
</tr>
|
||
{{/reference}}
|
||
{{#effects}}
|
||
<tr>
|
||
<td colspan="2" class="sheet-spell-c2"><span class="sheet-spell-prop">Effects:</span> {{effects}}</td>
|
||
</tr>
|
||
{{/effects}}
|
||
</table>
|
||
</div>
|
||
</div>
|
||
</rolltemplate>
|
||
<rolltemplate class="sheet-rolltemplate-2Esave">
|
||
<div class="sheet-template-container">
|
||
<div class="save-head">
|
||
<table>
|
||
<tr>
|
||
<th class="sheet-template-title1">Save vs. {{savevs}}</th>
|
||
</tr>
|
||
<tr>
|
||
<th class="sheet-template-subtitle1">for {{character}}</th>
|
||
</tr>
|
||
</table>
|
||
</div>
|
||
<div class="sheet-template-body">
|
||
<table>
|
||
<tr>
|
||
<td class="save-c1">Saving Throw Roll:</td>
|
||
<td class="save-c2">{{saveroll}}</td>
|
||
</tr>
|
||
<tr>
|
||
<td class="save-c1">Saving Throw Target:</td>
|
||
<td class="save-c2">{{savetarget}}</td>
|
||
</tr>
|
||
{{#rollTotal() saveroll savetarget}}
|
||
<tr>
|
||
<td class="save-c3" colspan="2">Success!</td>
|
||
</tr>
|
||
{{/rollTotal() saveroll savetarget}}
|
||
{{#rollGreater() saveroll savetarget}}
|
||
<tr>
|
||
<td class="save-c3" colspan="2">Success!</td>
|
||
</tr>
|
||
{{/rollGreater() saveroll savetarget}}
|
||
{{#rollLess() saveroll savetarget}}
|
||
<tr>
|
||
<td class="save-c4" colspan="2">Failed!</td>
|
||
</tr>
|
||
{{/rollLess() saveroll savetarget}}
|
||
</table>
|
||
</div>
|
||
</div>
|
||
</rolltemplate>
|
||
<rolltemplate class="sheet-rolltemplate-2Echeck">
|
||
<div class="sheet-template-container">
|
||
<div class="sheet-check-head">
|
||
<table>
|
||
<tr>
|
||
<th class="sheet-template-title1">Check vs. {{checkvs}}</th>
|
||
</tr>
|
||
<tr>
|
||
<th class="sheet-template-subtitle1">for {{character}}</th>
|
||
</tr>
|
||
</table>
|
||
</div>
|
||
<div class="sheet-template-body">
|
||
<table>
|
||
<tr>
|
||
<td class="sheet-check-c1">Check Roll:</td>
|
||
<td class="sheet-check-c2">{{checkroll}}</td>
|
||
</tr>
|
||
<tr>
|
||
<td class="sheet-check-c1">Check Target:</td>
|
||
<td class="sheet-check-c2">{{checktarget}}</td>
|
||
</tr>
|
||
{{#rollTotal() checkroll checktarget}}
|
||
<tr>
|
||
<td class="sheet-check-c3" colspan="2">Success!</td>
|
||
</tr>
|
||
{{/rollTotal() checkroll checktarget}}
|
||
{{#rollLess() checkroll checktarget}}
|
||
<tr>
|
||
<td class="sheet-check-c3" colspan="2">Success!</td>
|
||
</tr>
|
||
{{/rollLess() checkroll checktarget}}
|
||
{{#rollGreater() checkroll checktarget}}
|
||
<tr>
|
||
<td class="sheet-check-c4" colspan="2">Failed!</td>
|
||
</tr>
|
||
{{/rollGreater() checkroll checktarget}}
|
||
</table>
|
||
</div>
|
||
</div>
|
||
</rolltemplate>
|
||
<rolltemplate class="sheet-rolltemplate-2Einversecheck">
|
||
<div class="sheet-template-container">
|
||
<div class="sheet-check-head">
|
||
<table>
|
||
<tr>
|
||
<th class="sheet-template-title1">Check vs. {{checkvs}}</th>
|
||
</tr>
|
||
<tr>
|
||
<th class="sheet-template-subtitle1">for {{character}}</th>
|
||
</tr>
|
||
</table>
|
||
</div>
|
||
<div class="sheet-template-body">
|
||
<table>
|
||
<tr>
|
||
<td class="sheet-check-c1">Check Roll:</td>
|
||
<td class="sheet-check-c2">{{checkroll}}</td>
|
||
</tr>
|
||
<tr>
|
||
<td class="sheet-check-c1">Check Target:</td>
|
||
<td class="sheet-check-c2">{{checktarget}}</td>
|
||
</tr>
|
||
{{#rollTotal() checkroll checktarget}}
|
||
<tr>
|
||
<td class="sheet-check-c3" colspan="2">Fail!</td>
|
||
</tr>
|
||
{{/rollTotal() checkroll checktarget}}
|
||
{{#rollLess() checkroll checktarget}}
|
||
<tr>
|
||
<td class="sheet-check-c3" colspan="2">Fail!</td>
|
||
</tr>
|
||
{{/rollLess() checkroll checktarget}}
|
||
{{#rollGreater() checkroll checktarget}}
|
||
<tr>
|
||
<td class="sheet-check-c4" colspan="2">Success!</td>
|
||
</tr>
|
||
{{/rollGreater() checkroll checktarget}}
|
||
</table>
|
||
</div>
|
||
</div>
|
||
</rolltemplate>
|
||
|
||
<!-- WORKERS -->
|
||
<script type="text/worker">
|
||
|
||
/* ---- BEGIN: TheAaronSheet.js ---- */
|
||
// Github: https://github.com/shdwjk/TheAaronSheet/blob/master/TheAaronSheet.js
|
||
// By: The Aaron, Arcane Scriptomancer
|
||
// Contact: https://app.roll20.net/users/104025/the-aaron
|
||
|
||
var TAS = TAS || (function(){
|
||
'use strict';
|
||
|
||
var version = '0.2.5',
|
||
lastUpdate = 1504710542,
|
||
|
||
loggingSettings = {
|
||
debug: {
|
||
key: 'debug',
|
||
title: 'DEBUG',
|
||
color: {
|
||
bgLabel: '#7732A2',
|
||
label: '#F2EF40',
|
||
bgText: '#FFFEB7',
|
||
text: '#7732A2'
|
||
}
|
||
},
|
||
error: {
|
||
key: 'error',
|
||
title: 'Error',
|
||
color: {
|
||
bgLabel: '#C11713',
|
||
label: 'white',
|
||
bgText: '#C11713',
|
||
text: 'white'
|
||
}
|
||
},
|
||
warn: {
|
||
key: 'warn',
|
||
title: 'Warning',
|
||
color: {
|
||
bgLabel: '#F29140',
|
||
label: 'white',
|
||
bgText: '#FFD8B7',
|
||
text: 'black'
|
||
}
|
||
},
|
||
info: {
|
||
key: 'info',
|
||
title: 'Info',
|
||
color: {
|
||
bgLabel: '#413FA9',
|
||
label: 'white',
|
||
bgText: '#B3B2EB',
|
||
text: 'black'
|
||
}
|
||
},
|
||
notice: {
|
||
key: 'notice',
|
||
title: 'Notice',
|
||
color: {
|
||
bgLabel: '#33C133',
|
||
label: 'white',
|
||
bgText: '#ADF1AD',
|
||
text: 'black'
|
||
}
|
||
},
|
||
log: {
|
||
key: 'log',
|
||
title: 'Log',
|
||
color: {
|
||
bgLabel: '#f2f240',
|
||
label: 'black',
|
||
bgText: '#ffff90',
|
||
text: 'black'
|
||
}
|
||
},
|
||
callstack: {
|
||
key: 'TAS',
|
||
title: 'function',
|
||
color: {
|
||
bgLabel: '#413FA9',
|
||
label: 'white',
|
||
bgText: '#B3B2EB',
|
||
text: 'black'
|
||
}
|
||
},
|
||
callstack_async: {
|
||
key: 'TAS',
|
||
title: 'ASYNC CALL',
|
||
color: {
|
||
bgLabel: '#413FA9',
|
||
label: 'white',
|
||
bgText: '#413FA9',
|
||
text: 'white'
|
||
}
|
||
},
|
||
TAS: {
|
||
key: 'TAS',
|
||
title: 'TAS',
|
||
color: {
|
||
bgLabel: 'grey',
|
||
label: 'black;background:linear-gradient(#304352,#d7d2cc,#d7d2cc,#d7d2cc,#304352)',
|
||
bgText: 'grey',
|
||
text: 'black;background:linear-gradient(#304352,#d7d2cc,#d7d2cc,#d7d2cc,#304352)'
|
||
}
|
||
}
|
||
},
|
||
|
||
|
||
config = {
|
||
debugMode: false,
|
||
logging: {
|
||
log: true,
|
||
notice: true,
|
||
info: true,
|
||
warn: true,
|
||
error: true,
|
||
debug: false
|
||
}
|
||
},
|
||
|
||
callstackRegistry = [],
|
||
queuedUpdates = {}, //< Used for delaying saves till the last moment.
|
||
|
||
complexType = function(o){
|
||
switch(typeof o){
|
||
case 'string':
|
||
return 'string';
|
||
case 'boolean':
|
||
return 'boolean';
|
||
case 'number':
|
||
return (_.isNaN(o) ? 'NaN' : (o.toString().match(/\./) ? 'decimal' : 'integer'));
|
||
case 'function':
|
||
return 'function: '+(o.name ? o.name+'()' : '(anonymous)');
|
||
case 'object':
|
||
return (_.isArray(o) ? 'array' : (_.isArguments(o) ? 'arguments' : ( _.isNull(o) ? 'null' : 'object')));
|
||
default:
|
||
return typeof o;
|
||
}
|
||
},
|
||
|
||
dataLogger = function(primaryLogger,secondaryLogger,data){
|
||
_.each(data,function(m){
|
||
var type = complexType(m);
|
||
switch(type){
|
||
case 'string':
|
||
primaryLogger(m);
|
||
break;
|
||
case 'undefined':
|
||
case 'null':
|
||
case 'NaN':
|
||
primaryLogger('['+type+']');
|
||
break;
|
||
case 'number':
|
||
case 'not a number':
|
||
case 'integer':
|
||
case 'decimal':
|
||
case 'boolean':
|
||
primaryLogger('['+type+']: '+m);
|
||
break;
|
||
default:
|
||
primaryLogger('['+type+']:=========================================');
|
||
secondaryLogger(m);
|
||
primaryLogger('=========================================================');
|
||
break;
|
||
}
|
||
});
|
||
},
|
||
|
||
|
||
colorLog = function(options){
|
||
var coloredLoggerFunction,
|
||
key = options.key,
|
||
label = options.title || 'TAS',
|
||
lBGColor = (options.color && options.color.bgLabel) || 'blue',
|
||
lTxtColor = (options.color && options.color.label) || 'white',
|
||
mBGColor = (options.color && options.color.bgText) || 'blue',
|
||
mTxtColor = (options.color && options.color.text) || 'white';
|
||
|
||
coloredLoggerFunction = function(message){
|
||
/* eslint-disable no-console */
|
||
console.log(
|
||
'%c '+label+': %c '+message + ' ',
|
||
'background-color: '+lBGColor+';color: '+lTxtColor+'; font-weight:bold;',
|
||
'background-color: '+mBGColor+';color: '+mTxtColor+';'
|
||
);
|
||
/* eslint-enable no-console */
|
||
};
|
||
return function(){
|
||
if('TAS'===key || config.logging[key]){
|
||
/* eslint-disable no-console */
|
||
dataLogger(coloredLoggerFunction,function(m){console.log(m);},_.toArray(arguments));
|
||
/* eslint-enable no-console */
|
||
}
|
||
};
|
||
},
|
||
|
||
logDebug = colorLog(loggingSettings.debug),
|
||
logError = colorLog(loggingSettings.error),
|
||
logWarn = colorLog(loggingSettings.warn),
|
||
logInfo = colorLog(loggingSettings.info),
|
||
logNotice = colorLog(loggingSettings.notice),
|
||
logLog = colorLog(loggingSettings.log),
|
||
log = colorLog(loggingSettings.TAS),
|
||
logCS = colorLog(loggingSettings.callstack),
|
||
logCSA = colorLog(loggingSettings.callstack_async),
|
||
|
||
registerCallstack = function(callstack,label){
|
||
var idx=_.findIndex(callstackRegistry,function(o){
|
||
return (_.difference(o.stack,callstack).length === _.difference(callstack,o.stack).length) &&
|
||
_.difference(o.stack,callstack).length === 0 &&
|
||
o.label === label;
|
||
});
|
||
if(-1 === idx){
|
||
idx=callstackRegistry.length;
|
||
callstackRegistry.push({
|
||
stack: callstack,
|
||
label: label
|
||
});
|
||
}
|
||
return idx;
|
||
},
|
||
|
||
setConfigOption = function(options){
|
||
var newconf =_.defaults(options,config);
|
||
newconf.logging=_.defaults(
|
||
(options && options.logging)||{},
|
||
config.logging
|
||
);
|
||
config=newconf;
|
||
},
|
||
|
||
isDebugMode = function(){
|
||
return config.debugMode;
|
||
},
|
||
|
||
debugMode = function(){
|
||
config.logging.debug=true;
|
||
config.debugMode = true;
|
||
},
|
||
|
||
getCallstack = function(){
|
||
var e = new Error('dummy'),
|
||
stack = _.map(_.rest(e.stack.replace(/^[^(]+?[\n$]/gm, '')
|
||
.replace(/^\s+at\s+/gm, '')
|
||
.replace(/^Object.<anonymous>\s*\(/gm, '{anonymous}()@')
|
||
.split('\n')),function(l){
|
||
return l.replace(/\s+.*$/,'');
|
||
});
|
||
return stack;
|
||
},
|
||
logCallstackSub = function(cs){
|
||
var matches, csa;
|
||
_.find(cs,function(line){
|
||
matches = line.match(/TAS_CALLSTACK_(\d+)/);
|
||
if(matches){
|
||
csa=callstackRegistry[matches[1]];
|
||
logCSA( '===================='+(csa.label ? '> '+csa.label+' <' : '')+'====================');
|
||
logCallstackSub(csa.stack);
|
||
return true;
|
||
}
|
||
logCS(line);
|
||
return false;
|
||
});
|
||
},
|
||
logCallstack = function(){
|
||
var cs;
|
||
if(config.debugMode){
|
||
cs = getCallstack();
|
||
cs.shift();
|
||
log('==============================> CALLSTACK <==============================');
|
||
logCallstackSub(cs);
|
||
log('=========================================================================');
|
||
}
|
||
},
|
||
|
||
|
||
wrapCallback = function (label, callback, context){
|
||
var callstack;
|
||
if('function' === typeof label){
|
||
context=callback;
|
||
callback=label;
|
||
label=undefined;
|
||
}
|
||
if(!config.debugMode){
|
||
return (function(cb,ctx){
|
||
return function(){
|
||
cb.apply(ctx||{},arguments);
|
||
};
|
||
}(callback,context));
|
||
}
|
||
|
||
callstack = getCallstack();
|
||
callstack.shift();
|
||
|
||
return (function(cb,ctx,cs,lbl){
|
||
var ctxref=registerCallstack(cs,lbl);
|
||
|
||
/*jshint -W054 */
|
||
return new Function('cb','ctx','TASlog',
|
||
"return function TAS_CALLSTACK_"+ctxref+"(){"+
|
||
"var start,end;"+
|
||
"TASlog('Entering: '+(cb.name||'(anonymous function)'));"+
|
||
"start=_.now();"+
|
||
"cb.apply(ctx||{},arguments);"+
|
||
"end=_.now();"+
|
||
"TASlog('Exiting: '+(cb.name||'(anonymous function)')+' :: '+(end-start)+'ms elapsed');"+
|
||
"};")(cb,ctx,log);
|
||
/*jshint +W054 */
|
||
}(callback,context,callstack,label));
|
||
},
|
||
|
||
|
||
prepareUpdate = function( attribute, value ){
|
||
queuedUpdates[attribute]=value;
|
||
},
|
||
|
||
applyQueuedUpdates = function() {
|
||
setAttrs(queuedUpdates);
|
||
queuedUpdates = {};
|
||
},
|
||
|
||
namesFromArgs = function(args,base){
|
||
return _.chain(args)
|
||
.reduce(function(memo,attr){
|
||
if('string' === typeof attr) {
|
||
memo.push(attr);
|
||
} else if(_.isArray(args) || _.isArguments(args)){
|
||
memo = namesFromArgs(attr,memo);
|
||
}
|
||
return memo;
|
||
},(_.isArray(base) && base) || [])
|
||
.uniq()
|
||
.value();
|
||
},
|
||
|
||
addId = function(obj,value){
|
||
Object.defineProperty(obj,'id',{
|
||
value: value,
|
||
writable: false,
|
||
enumerable: false
|
||
});
|
||
},
|
||
|
||
addProp = function(obj,prop,value,fullname){
|
||
(function(){
|
||
var pname=(_.contains(['S','F','I','D'],prop) ? '_'+prop : prop),
|
||
full_pname = fullname || prop,
|
||
pvalue=value;
|
||
|
||
_.each(['S','I','F'],function(p){
|
||
if( !_.has(obj,p)){
|
||
Object.defineProperty(obj, p, {
|
||
value: {},
|
||
enumerable: false,
|
||
readonly: true
|
||
});
|
||
}
|
||
});
|
||
if( !_.has(obj,'D')){
|
||
Object.defineProperty(obj, 'D', {
|
||
value: _.reduce(_.range(10),function(m,d){
|
||
Object.defineProperty(m, d, {
|
||
value: {},
|
||
enumerable: true,
|
||
readonly: true
|
||
});
|
||
return m;
|
||
},{}),
|
||
enumerable: false,
|
||
readonly: true
|
||
});
|
||
}
|
||
|
||
|
||
// Raw value
|
||
Object.defineProperty(obj, pname, {
|
||
enumerable: true,
|
||
set: function(v){
|
||
if(v!==pvalue) {
|
||
pvalue=v;
|
||
prepareUpdate(full_pname,v);
|
||
}
|
||
},
|
||
get: function(){
|
||
return pvalue;
|
||
}
|
||
});
|
||
|
||
// string value
|
||
Object.defineProperty(obj.S, pname, {
|
||
enumerable: true,
|
||
set: function(v){
|
||
var val=v.toString();
|
||
if(val !== pvalue) {
|
||
pvalue=val;
|
||
prepareUpdate(full_pname,val);
|
||
}
|
||
},
|
||
get: function(){
|
||
return pvalue.toString();
|
||
}
|
||
});
|
||
|
||
// int value
|
||
Object.defineProperty(obj.I, pname, {
|
||
enumerable: true,
|
||
set: function(v){
|
||
var val=parseInt(v,10) || 0;
|
||
if(val !== pvalue){
|
||
pvalue=val;
|
||
prepareUpdate(full_pname,val);
|
||
}
|
||
},
|
||
get: function(){
|
||
return parseInt(pvalue,10) || 0;
|
||
}
|
||
});
|
||
|
||
// float value
|
||
Object.defineProperty(obj.F, pname, {
|
||
enumerable: true,
|
||
set: function(v){
|
||
var val=parseFloat(v) || 0;
|
||
if(val !== pvalue) {
|
||
pvalue=val;
|
||
prepareUpdate(full_pname,val);
|
||
}
|
||
},
|
||
get: function(){
|
||
return parseFloat(pvalue) || 0;
|
||
}
|
||
});
|
||
_.each(_.range(10),function(d){
|
||
Object.defineProperty(obj.D[d], pname, {
|
||
enumerable: true,
|
||
set: function(v){
|
||
var val=(parseFloat(v) || 0).toFixed(d);
|
||
if(val !== pvalue){
|
||
pvalue=val;
|
||
prepareUpdate(full_pname,val);
|
||
}
|
||
},
|
||
get: function(){
|
||
return (parseFloat(pvalue) || 0).toFixed(d);
|
||
}
|
||
});
|
||
});
|
||
|
||
}());
|
||
},
|
||
|
||
repeating = function( section ) {
|
||
return (function(s){
|
||
var sectionName = s,
|
||
attrNames = [],
|
||
fieldNames = [],
|
||
operations = [],
|
||
after = [],
|
||
|
||
repAttrs = function TAS_Repeating_Attrs(){
|
||
attrNames = namesFromArgs(arguments,attrNames);
|
||
return this;
|
||
},
|
||
repFields = function TAS_Repeating_Fields(){
|
||
fieldNames = namesFromArgs(arguments,fieldNames);
|
||
return this;
|
||
},
|
||
repReduce = function TAS_Repeating_Reduce(func, initial, final, context) {
|
||
operations.push({
|
||
type: 'reduce',
|
||
func: (func && _.isFunction(func) && func) || _.noop,
|
||
memo: (_.isUndefined(initial) && 0) || initial,
|
||
final: (final && _.isFunction(final) && final) || _.noop,
|
||
context: context || {}
|
||
});
|
||
return this;
|
||
},
|
||
repMap = function TAS_Repeating_Map(func, final, context) {
|
||
operations.push({
|
||
type: 'map',
|
||
func: (func && _.isFunction(func) && func) || _.noop,
|
||
final: (final && _.isFunction(final) && final) || _.noop,
|
||
context: context || {}
|
||
});
|
||
return this;
|
||
},
|
||
repEach = function TAS_Repeating_Each(func, final, context) {
|
||
operations.push({
|
||
type: 'each',
|
||
func: (func && _.isFunction(func) && func) || _.noop,
|
||
final: (final && _.isFunction(final) && final) || _.noop,
|
||
context: context || {}
|
||
});
|
||
return this;
|
||
},
|
||
repTap = function TAS_Repeating_Tap(final, context) {
|
||
operations.push({
|
||
type: 'tap',
|
||
final: (final && _.isFunction(final) && final) || _.noop,
|
||
context: context || {}
|
||
});
|
||
return this;
|
||
},
|
||
repAfter = function TAS_Repeating_After(callback,context) {
|
||
after.push({
|
||
callback: (callback && _.isFunction(callback) && callback) || _.noop,
|
||
context: context || {}
|
||
});
|
||
return this;
|
||
},
|
||
repExecute = function TAS_Repeating_Execute(callback,context){
|
||
var rowSet = {},
|
||
attrSet = {},
|
||
fieldIds = [],
|
||
fullFieldNames = [];
|
||
|
||
repAfter(callback,context);
|
||
|
||
// call each operation per row.
|
||
// call each operation's final
|
||
getSectionIDs("repeating_"+sectionName,function(ids){
|
||
fieldIds = ids;
|
||
fullFieldNames = _.reduce(fieldIds,function(memo,id){
|
||
return memo.concat(_.map(fieldNames,function(name){
|
||
return 'repeating_'+sectionName+'_'+id+'_'+name;
|
||
}));
|
||
},[]);
|
||
getAttrs( _.uniq(attrNames.concat(fullFieldNames)), function(values){
|
||
_.each(attrNames,function(aname){
|
||
if(values.hasOwnProperty(aname)){
|
||
addProp(attrSet,aname,values[aname]);
|
||
}
|
||
});
|
||
|
||
rowSet = _.reduce(fieldIds,function(memo,id){
|
||
var r={};
|
||
addId(r,id);
|
||
_.each(fieldNames,function(name){
|
||
var fn = 'repeating_'+sectionName+'_'+id+'_'+name;
|
||
addProp(r,name,values[fn],fn);
|
||
});
|
||
|
||
memo[id]=r;
|
||
|
||
return memo;
|
||
},{});
|
||
|
||
_.each(operations,function(op){
|
||
var res;
|
||
switch(op.type){
|
||
case 'tap':
|
||
_.bind(op.final,op.context,rowSet,attrSet)();
|
||
break;
|
||
|
||
case 'each':
|
||
_.each(rowSet,function(r){
|
||
_.bind(op.func,op.context,r,attrSet,r.id,rowSet)();
|
||
});
|
||
_.bind(op.final,op.context,rowSet,attrSet)();
|
||
break;
|
||
|
||
case 'map':
|
||
res = _.map(rowSet,function(r){
|
||
return _.bind(op.func,op.context,r,attrSet,r.id,rowSet)();
|
||
});
|
||
_.bind(op.final,op.context,res,rowSet,attrSet)();
|
||
break;
|
||
|
||
case 'reduce':
|
||
res = op.memo;
|
||
_.each(rowSet,function(r){
|
||
res = _.bind(op.func,op.context,res,r,attrSet,r.id,rowSet)();
|
||
});
|
||
_.bind(op.final,op.context,res,rowSet,attrSet)();
|
||
break;
|
||
}
|
||
});
|
||
|
||
// finalize attrs
|
||
applyQueuedUpdates();
|
||
_.each(after,function(op){
|
||
_.bind(op.callback,op.context)();
|
||
});
|
||
});
|
||
});
|
||
};
|
||
|
||
return {
|
||
attrs: repAttrs,
|
||
attr: repAttrs,
|
||
|
||
column: repFields,
|
||
columns: repFields,
|
||
field: repFields,
|
||
fields: repFields,
|
||
|
||
reduce: repReduce,
|
||
inject: repReduce,
|
||
foldl: repReduce,
|
||
|
||
map: repMap,
|
||
collect: repMap,
|
||
|
||
each: repEach,
|
||
forEach: repEach,
|
||
|
||
tap: repTap,
|
||
'do': repTap,
|
||
|
||
after: repAfter,
|
||
last: repAfter,
|
||
done: repAfter,
|
||
|
||
execute: repExecute,
|
||
go: repExecute,
|
||
run: repExecute
|
||
};
|
||
}(section));
|
||
},
|
||
|
||
|
||
repeatingSimpleSum = function(section, field, destination){
|
||
repeating(section)
|
||
.attr(destination)
|
||
.field(field)
|
||
.reduce(function(m,r){
|
||
return m + (r.F[field]);
|
||
},0,function(t,r,a){
|
||
a.S[destination]=t;
|
||
})
|
||
.execute();
|
||
};
|
||
|
||
/* eslint-disable no-console */
|
||
console.log('%c•.¸¸.•*´¨`*•.¸¸.•*´¨`*•.¸ The Aaron Sheet v'+version+' ¸.•*´¨`*•.¸¸.•*´¨`*•.¸¸.•','background: linear-gradient(to right,green,white,white,green); color:black;text-shadow: 0 0 8px white;');
|
||
console.log('%c•.¸¸.•*´¨`*•.¸¸.•*´¨`*•.¸ Last update: '+(new Date(lastUpdate*1000))+' ¸.•*´¨`*•.¸¸.•*´¨`*•.¸¸.•','background: linear-gradient(to right,green,white,white,green); color:black;text-shadow: 0 0 8px white;');
|
||
/* eslint-enable no-console */
|
||
|
||
|
||
return {
|
||
/* Repeating Sections */
|
||
repeatingSimpleSum: repeatingSimpleSum,
|
||
repeating: repeating,
|
||
|
||
/* Configuration */
|
||
config: setConfigOption,
|
||
|
||
/* Debugging */
|
||
callback: wrapCallback,
|
||
callstack: logCallstack,
|
||
debugMode: debugMode,
|
||
isDebugMode: isDebugMode,
|
||
_fn: wrapCallback,
|
||
|
||
/* Logging */
|
||
debug: logDebug,
|
||
error: logError,
|
||
warn: logWarn,
|
||
info: logInfo,
|
||
notice: logNotice,
|
||
log: logLog
|
||
};
|
||
}());
|
||
/* ---- END: TheAaronSheet.js ---- */
|
||
|
||
//Set attributes based on strength
|
||
var text1 = "10";
|
||
var ntext = "10";
|
||
var exc_str = 10;
|
||
on("change:strength", function() {
|
||
getAttrs(["strength"], function(values) {
|
||
switch (values.strength) {
|
||
case "0":
|
||
setAttrs({
|
||
strengthhit: "+0",
|
||
strengthdmg: "+0",
|
||
carryweight: "0",
|
||
maxpress: "0",
|
||
open: "0",
|
||
bend: "0",
|
||
strnotes: "INVALID STR",
|
||
baseweight: "0",
|
||
lightweight: "0",
|
||
modweight: "0",
|
||
heavyweight: "0",
|
||
sevweight: "0"
|
||
});
|
||
break;
|
||
case "1":
|
||
setAttrs({
|
||
strengthhit: "-5",
|
||
strengthdmg: "-4",
|
||
carryweight: "1",
|
||
maxpress: "3",
|
||
open: "1",
|
||
bend: "0",
|
||
baseweight: "0",
|
||
lightweight: "0",
|
||
modweight: "0",
|
||
heavyweight: "0",
|
||
sevweight: "1"
|
||
});
|
||
break;
|
||
case "2":
|
||
setAttrs({
|
||
strengthhit: "-3",
|
||
strengthdmg: "-2",
|
||
carryweight: "1",
|
||
maxpress: "5",
|
||
open: "1",
|
||
bend: "0",
|
||
baseweight: "1",
|
||
lightweight: "2",
|
||
modweight: "3",
|
||
heavyweight: "4",
|
||
sevweight: "6"
|
||
});
|
||
break;
|
||
case "3":
|
||
setAttrs({
|
||
strengthhit: "-3",
|
||
strengthdmg: "-1",
|
||
carryweight: "5",
|
||
maxpress: "10",
|
||
open: "2",
|
||
bend: "0",
|
||
baseweight: "5",
|
||
lightweight: "6",
|
||
modweight: "7",
|
||
heavyweight: "9",
|
||
sevweight: "10"
|
||
});
|
||
break;
|
||
case "4":
|
||
case "5":
|
||
setAttrs({
|
||
strengthhit: "-2",
|
||
strengthdmg: "-1",
|
||
carryweight: "10",
|
||
maxpress: "25",
|
||
open: "3",
|
||
bend: "0",
|
||
baseweight: "10",
|
||
lightweight: "13",
|
||
modweight: "16",
|
||
heavyweight: "19",
|
||
sevweight: "25"
|
||
});
|
||
break;
|
||
case "6":
|
||
case "7":
|
||
setAttrs({
|
||
strengthhit: "-1",
|
||
strengthdmg: "+0",
|
||
carryweight: "20",
|
||
maxpress: "55",
|
||
open: "4",
|
||
bend: "0",
|
||
baseweight: "20",
|
||
lightweight: "29",
|
||
modweight: "38",
|
||
heavyweight: "46",
|
||
sevweight: "55"
|
||
});
|
||
break;
|
||
case "8":
|
||
case "9":
|
||
setAttrs({
|
||
strengthhit: "+0",
|
||
strengthdmg: "+0",
|
||
carryweight: "35",
|
||
maxpress: "90",
|
||
open: "5",
|
||
bend: "1",
|
||
baseweight: "35",
|
||
lightweight: "50",
|
||
modweight: "65",
|
||
heavyweight: "80",
|
||
sevweight: "90"
|
||
});
|
||
break;
|
||
case "10":
|
||
case "11":
|
||
setAttrs({
|
||
strengthhit: "+0",
|
||
strengthdmg: "+0",
|
||
carryweight: "40",
|
||
maxpress: "115",
|
||
open: "6",
|
||
bend: "2",
|
||
baseweight: "40",
|
||
lightweight: "58",
|
||
modweight: "76",
|
||
heavyweight: "96",
|
||
sevweight: "115"
|
||
});
|
||
break;
|
||
case "12":
|
||
case "13":
|
||
setAttrs({
|
||
strengthhit: "+0",
|
||
strengthdmg: "+0",
|
||
carryweight: "45",
|
||
maxpress: "140",
|
||
open: "7",
|
||
bend: "4",
|
||
baseweight: "45",
|
||
lightweight: "69",
|
||
modweight: "93",
|
||
heavyweight: "117",
|
||
sevweight: "140"
|
||
});
|
||
break;
|
||
case "14":
|
||
case "15":
|
||
setAttrs({
|
||
strengthhit: "+0",
|
||
strengthdmg: "+0",
|
||
carryweight: "55",
|
||
maxpress: "170",
|
||
open: "8",
|
||
bend: "7",
|
||
baseweight: "55",
|
||
lightweight: "85",
|
||
modweight: "115",
|
||
heavyweight: "145",
|
||
sevweight: "170"
|
||
});
|
||
break;
|
||
case "16":
|
||
setAttrs({
|
||
strengthhit: "+0",
|
||
strengthdmg: "+1",
|
||
carryweight: "70",
|
||
maxpress: "195",
|
||
open: "9",
|
||
bend: "10",
|
||
baseweight: "70",
|
||
lightweight: "100",
|
||
modweight: "130",
|
||
heavyweight: "160",
|
||
sevweight: "195"
|
||
});
|
||
break;
|
||
case "17":
|
||
setAttrs({
|
||
strengthhit: "+1",
|
||
strengthdmg: "+1",
|
||
carryweight: "85",
|
||
maxpress: "220",
|
||
open: "10",
|
||
bend: "13",
|
||
baseweight: "85",
|
||
lightweight: "121",
|
||
modweight: "157",
|
||
heavyweight: "193",
|
||
sevweight: "220"
|
||
});
|
||
break;
|
||
case "18":
|
||
setAttrs({
|
||
strengthhit: "+1",
|
||
strengthdmg: "+2",
|
||
carryweight: "110",
|
||
maxpress: "255",
|
||
open: "11",
|
||
bend: "16",
|
||
baseweight: "110",
|
||
lightweight: "149",
|
||
modweight: "188",
|
||
heavyweight: "227",
|
||
sevweight: "255"
|
||
});
|
||
break;
|
||
case "19":
|
||
setAttrs({
|
||
strengthhit: "+3",
|
||
strengthdmg: "+7",
|
||
carryweight: "485",
|
||
maxpress: "640",
|
||
open: "16(8)",
|
||
bend: "50",
|
||
baseweight: "485",
|
||
lightweight: "524",
|
||
modweight: "563",
|
||
heavyweight: "602",
|
||
sevweight: "640"
|
||
});
|
||
break;
|
||
case "20":
|
||
setAttrs({
|
||
strengthhit: "+3",
|
||
strengthdmg: "+8",
|
||
carryweight: "535",
|
||
maxpress: "700",
|
||
open: "17(10)",
|
||
bend: "60",
|
||
baseweight: "535",
|
||
lightweight: "574",
|
||
modweight: "613",
|
||
heavyweight: "652",
|
||
sevweight: "700"
|
||
});
|
||
break;
|
||
case "21":
|
||
setAttrs({
|
||
strengthhit: "+4",
|
||
strengthdmg: "+9",
|
||
carryweight: "635",
|
||
maxpress: "810",
|
||
open: "17(12)",
|
||
bend: "70",
|
||
baseweight: "635",
|
||
lightweight: "674",
|
||
modweight: "713",
|
||
heavyweight: "752",
|
||
sevweight: "810"
|
||
});
|
||
break;
|
||
case "22":
|
||
setAttrs({
|
||
strengthhit: "+4",
|
||
strengthdmg: "+10",
|
||
carryweight: "785",
|
||
maxpress: "970",
|
||
open: "18(14)",
|
||
bend: "80",
|
||
baseweight: "785",
|
||
lightweight: "824",
|
||
modweight: "863",
|
||
heavyweight: "902",
|
||
sevweight: "970"
|
||
});
|
||
break;
|
||
case "23":
|
||
setAttrs({
|
||
strengthhit: "+5",
|
||
strengthdmg: "+11",
|
||
carryweight: "935",
|
||
maxpress: "1130",
|
||
open: "18(16)",
|
||
bend: "90",
|
||
baseweight: "935",
|
||
lightweight: "974",
|
||
modweight: "1013",
|
||
heavyweight: "1052",
|
||
sevweight: "1130"
|
||
});
|
||
break;
|
||
case "24":
|
||
setAttrs({
|
||
strengthhit: "+6",
|
||
strengthdmg: "+12",
|
||
carryweight: "1235",
|
||
maxpress: "1440",
|
||
open: "19(17)",
|
||
bend: "95",
|
||
baseweight: "1235",
|
||
lightweight: "1274",
|
||
modweight: "1313",
|
||
heavyweight: "1352",
|
||
sevweight: "1440"
|
||
});
|
||
break;
|
||
case "25":
|
||
setAttrs({
|
||
strengthhit: "+7",
|
||
strengthdmg: "+14",
|
||
carryweight: "1535",
|
||
maxpress: "1750",
|
||
open: "19(18)",
|
||
bend: "99",
|
||
baseweight: "1535",
|
||
lightweight: "1574",
|
||
modweight: "1613",
|
||
heavyweight: "1652",
|
||
sevweight: "1750"
|
||
});
|
||
break;
|
||
default:
|
||
// Checking if not a number or greater then 25 then set everything to 0
|
||
if (_.isNaN(parseInt(values.strength))) {
|
||
setAttrs({
|
||
strengthhit: "+0",
|
||
strengthdmg: "+0",
|
||
carryweight: "0",
|
||
maxpress: "0",
|
||
open: "0",
|
||
bend: "0",
|
||
strnotes: "INVALID STR",
|
||
baseweight: "0",
|
||
lightweight: "0",
|
||
modweight: "0",
|
||
heavyweight: "0",
|
||
sevweight: "0"
|
||
});
|
||
break;
|
||
}
|
||
if (parseInt(values.strength) > 25) {
|
||
setAttrs({
|
||
strengthhit: "+0",
|
||
strengthdmg: "+0",
|
||
carryweight: "0",
|
||
maxpress: "0",
|
||
open: "0",
|
||
bend: "0",
|
||
strnotes: "INVALID STR",
|
||
baseweight: "0",
|
||
lightweight: "0",
|
||
modweight: "0",
|
||
heavyweight: "0",
|
||
sevweight: "0"
|
||
});
|
||
break;
|
||
}
|
||
// Exceptional Strength now need Value between ()
|
||
text1 = values.strength;
|
||
ntext = text1.replace("18 (", "");
|
||
ntext = ntext.replace("18(", "");
|
||
exc_str = parseInt(ntext);
|
||
if (_.isNaN(exc_str)) {
|
||
setAttrs({
|
||
strengthhit: "+0",
|
||
strengthdmg: "+0",
|
||
carryweight: "0",
|
||
maxpress: "0",
|
||
open: "0",
|
||
bend: "0",
|
||
strnotes: "INVALID STR",
|
||
baseweight: "0",
|
||
lightweight: "0",
|
||
modweight: "0",
|
||
heavyweight: "0",
|
||
sevweight: "0"
|
||
});
|
||
break;
|
||
}
|
||
switch (true) {
|
||
case (exc_str > 0 && exc_str < 51):
|
||
setAttrs({
|
||
strengthhit: "+1",
|
||
strengthdmg: "+3",
|
||
carryweight: "135",
|
||
maxpress: "280",
|
||
open: "12",
|
||
bend: "20",
|
||
baseweight: "135",
|
||
lightweight: "174",
|
||
modweight: "213",
|
||
heavyweight: "252",
|
||
sevweight: "280"
|
||
});
|
||
break;
|
||
case (exc_str > 50 && exc_str < 76):
|
||
setAttrs({
|
||
strengthhit: "+2",
|
||
strengthdmg: "+3",
|
||
carryweight: "160",
|
||
maxpress: "305",
|
||
open: "13",
|
||
bend: "25",
|
||
baseweight: "160",
|
||
lightweight: "199",
|
||
modweight: "238",
|
||
heavyweight: "277",
|
||
sevweight: "305"
|
||
});
|
||
break;
|
||
case (exc_str > 75 && exc_str < 91):
|
||
setAttrs({
|
||
strengthhit: "+2",
|
||
strengthdmg: "+4",
|
||
carryweight: "185",
|
||
maxpress: "330",
|
||
open: "14",
|
||
bend: "30",
|
||
baseweight: "185",
|
||
lightweight: "224",
|
||
modweight: "263",
|
||
heavyweight: "302",
|
||
sevweight: "330"
|
||
});
|
||
break;
|
||
case (exc_str > 90 && exc_str < 100):
|
||
setAttrs({
|
||
strengthhit: "+2",
|
||
strengthdmg: "+5",
|
||
carryweight: "235",
|
||
maxpress: "380",
|
||
open: "15(3)",
|
||
bend: "35",
|
||
baseweight: "235",
|
||
lightweight: "274",
|
||
modweight: "313",
|
||
heavyweight: "352",
|
||
sevweight: "380"
|
||
});
|
||
break;
|
||
case (exc_str < 1):
|
||
case (exc_str > 99): //100 can be (100) or (00)
|
||
setAttrs({
|
||
strengthhit: "+3",
|
||
strengthdmg: "+6",
|
||
carryweight: "335",
|
||
maxpress: "480",
|
||
open: "16(6)",
|
||
bend: "40",
|
||
baseweight: "335",
|
||
lightweight: "374",
|
||
modweight: "413",
|
||
heavyweight: "452",
|
||
sevweight: "480"
|
||
});
|
||
break;
|
||
} //end switch exceptional str
|
||
} //end switch
|
||
}); //end getAttrs
|
||
}); //end on("change:strength")
|
||
|
||
//Set attributes based on dexterity
|
||
on("change:dexterity", function() {
|
||
getAttrs(["dexterity"], function(values) {
|
||
switch (values.dexterity) {
|
||
case "1":
|
||
setAttrs({
|
||
dexreact: "-6",
|
||
dexmissile: "-6",
|
||
dexdefense: "+5",
|
||
ppd: "-55",
|
||
old: "-50",
|
||
rtd: "-50",
|
||
msd: "-60",
|
||
hsd: "-50",
|
||
cwd: "-50",
|
||
tud: "-50",
|
||
ebd: "-55"
|
||
});
|
||
break;
|
||
case "2":
|
||
setAttrs({
|
||
dexreact: "-4",
|
||
dexmissile: "-4",
|
||
dexdefense: "+5",
|
||
ppd: "-50",
|
||
old: "-45",
|
||
rtd: "-45",
|
||
msd: "-55",
|
||
hsd: "-45",
|
||
cwd: "-45",
|
||
tud: "-45",
|
||
ebd: "-50"
|
||
});
|
||
break;
|
||
case "3":
|
||
setAttrs({
|
||
dexreact: "-3",
|
||
dexmissile: "-3",
|
||
dexdefense: "+4",
|
||
ppd: "-45",
|
||
old: "-40",
|
||
rtd: "-40",
|
||
msd: "-50",
|
||
hsd: "-40",
|
||
cwd: "-40",
|
||
tud: "-40",
|
||
ebd: "-45"
|
||
});
|
||
break;
|
||
case "4":
|
||
setAttrs({
|
||
dexreact: "-2",
|
||
dexmissile: "-2",
|
||
dexdefense: "+3",
|
||
ppd: "-40",
|
||
old: "-35",
|
||
rtd: "-35",
|
||
msd: "-45",
|
||
hsd: "-35",
|
||
cwd: "-35",
|
||
tud: "-35",
|
||
ebd: "-40"
|
||
});
|
||
break;
|
||
case "5":
|
||
setAttrs({
|
||
dexreact: "-1",
|
||
dexmissile: "-1",
|
||
dexdefense: "+2",
|
||
ppd: "-35",
|
||
old: "-30",
|
||
rtd: "-30",
|
||
msd: "-40",
|
||
hsd: "-30",
|
||
cwd: "-30",
|
||
tud: "-30",
|
||
ebd: "-35"
|
||
});
|
||
break;
|
||
case "6":
|
||
setAttrs({
|
||
dexreact: "+0",
|
||
dexmissile: "+0",
|
||
dexdefense: "+1",
|
||
ppd: "-30",
|
||
old: "-25",
|
||
rtd: "-25",
|
||
msd: "-35",
|
||
hsd: "-25",
|
||
cwd: "-25",
|
||
tud: "-25",
|
||
ebd: "-30"
|
||
});
|
||
break;
|
||
case "7":
|
||
setAttrs({
|
||
dexreact: "+0",
|
||
dexmissile: "+0",
|
||
dexdefense: "+0",
|
||
ppd: "-25",
|
||
old: "-20",
|
||
rtd: "-20",
|
||
msd: "-30",
|
||
hsd: "-20",
|
||
cwd: "-20",
|
||
tud: "-20",
|
||
ebd: "-25"
|
||
});
|
||
break;
|
||
case "8":
|
||
setAttrs({
|
||
dexreact: "+0",
|
||
dexmissile: "+0",
|
||
dexdefense: "+0",
|
||
ppd: "-20",
|
||
old: "-15",
|
||
rtd: "-15",
|
||
msd: "-25",
|
||
hsd: "-15",
|
||
cwd: "-15",
|
||
tud: "-15",
|
||
ebd: "-20"
|
||
});
|
||
break;
|
||
case "9":
|
||
setAttrs({
|
||
dexreact: "+0",
|
||
dexmissile: "+0",
|
||
dexdefense: "+0",
|
||
ppd: "-15",
|
||
old: "-10",
|
||
rtd: "-10",
|
||
msd: "-20",
|
||
hsd: "-10",
|
||
cwd: "-10",
|
||
tud: "-10",
|
||
ebd: "-15"
|
||
});
|
||
break;
|
||
case "10":
|
||
setAttrs({
|
||
dexreact: "+0",
|
||
dexmissile: "+0",
|
||
dexdefense: "+0",
|
||
ppd: "-10",
|
||
old: "-5",
|
||
rtd: "-10",
|
||
msd: "-15",
|
||
hsd: "-5",
|
||
cwd: "-5",
|
||
tud: "-5",
|
||
ebd: "-10"
|
||
});
|
||
break;
|
||
case "11":
|
||
setAttrs({
|
||
dexreact: "+0",
|
||
dexmissile: "+0",
|
||
dexdefense: "+0",
|
||
ppd: "-5",
|
||
old: "+0",
|
||
rtd: "-5",
|
||
msd: "-10",
|
||
hsd: "+0",
|
||
cwd: "+0",
|
||
tud: "+0",
|
||
ebd: "-5"
|
||
});
|
||
break;
|
||
case "12":
|
||
setAttrs({
|
||
dexreact: "+0",
|
||
dexmissile: "+0",
|
||
dexdefense: "+0",
|
||
ppd: "+0",
|
||
old: "+0",
|
||
rtd: "+0",
|
||
msd: "-5",
|
||
hsd: "+0",
|
||
cwd: "+0",
|
||
tud: "+0",
|
||
ebd: "+0"
|
||
});
|
||
break;
|
||
case "13":
|
||
setAttrs({
|
||
dexreact: "+0",
|
||
dexmissile: "+0",
|
||
dexdefense: "+0",
|
||
ppd: "+0",
|
||
old: "+0",
|
||
rtd: "+0",
|
||
msd: "+0",
|
||
hsd: "+0",
|
||
cwd: "+0",
|
||
tud: "+0",
|
||
ebd: "+0"
|
||
});
|
||
break;
|
||
case "14":
|
||
setAttrs({
|
||
dexreact: "+0",
|
||
dexmissile: "+0",
|
||
dexdefense: "+0",
|
||
ppd: "+0",
|
||
old: "+0",
|
||
rtd: "+0",
|
||
msd: "+0",
|
||
hsd: "+0",
|
||
cwd: "+0",
|
||
tud: "+0",
|
||
ebd: "+0"
|
||
});
|
||
break;
|
||
case "15":
|
||
setAttrs({
|
||
dexreact: "+0",
|
||
dexmissile: "+0",
|
||
dexdefense: "-1",
|
||
ppd: "+0",
|
||
old: "+0",
|
||
rtd: "+0",
|
||
msd: "+0",
|
||
hsd: "+0",
|
||
cwd: "+0",
|
||
tud: "+0",
|
||
ebd: "+0"
|
||
});
|
||
break;
|
||
case "16":
|
||
setAttrs({
|
||
dexreact: "+1",
|
||
dexmissile: "+1",
|
||
dexdefense: "-2",
|
||
ppd: "+0",
|
||
old: "+5",
|
||
rtd: "+0",
|
||
msd: "+0",
|
||
hsd: "+0",
|
||
cwd: "+0",
|
||
tud: "+0",
|
||
ebd: "+0"
|
||
});
|
||
break;
|
||
case "17":
|
||
setAttrs({
|
||
dexreact: "+2",
|
||
dexmissile: "+2",
|
||
dexdefense: "-3",
|
||
ppd: "+5",
|
||
old: "+10",
|
||
rtd: "+0",
|
||
msd: "+5",
|
||
hsd: "+5",
|
||
cwd: "+5",
|
||
tud: "+0",
|
||
ebd: "+5"
|
||
});
|
||
break;
|
||
case "18":
|
||
setAttrs({
|
||
dexreact: "+2",
|
||
dexmissile: "+2",
|
||
dexdefense: "-4",
|
||
ppd: "+10",
|
||
old: "+15",
|
||
rtd: "+5",
|
||
msd: "+10",
|
||
hsd: "+10",
|
||
cwd: "+10",
|
||
tud: "+5",
|
||
ebd: "+10"
|
||
});
|
||
break;
|
||
case "19":
|
||
setAttrs({
|
||
dexreact: "+3",
|
||
dexmissile: "+3",
|
||
dexdefense: "-4",
|
||
ppd: "+15",
|
||
old: "+20",
|
||
rtd: "+10",
|
||
msd: "+15",
|
||
hsd: "+15",
|
||
cwd: "+15",
|
||
tud: "+10",
|
||
ebd: "+15"
|
||
});
|
||
break;
|
||
case "20":
|
||
setAttrs({
|
||
dexreact: "+3",
|
||
dexmissile: "+3",
|
||
dexdefense: "-4",
|
||
ppd: "+20",
|
||
old: "+20",
|
||
rtd: "+15",
|
||
msd: "+15",
|
||
hsd: "+20",
|
||
cwd: "+20",
|
||
tud: "+15",
|
||
ebd: "+20"
|
||
});
|
||
break;
|
||
case "21":
|
||
setAttrs({
|
||
dexreact: "+4",
|
||
dexmissile: "+4",
|
||
dexdefense: "-5",
|
||
ppd: "+20",
|
||
old: "+25",
|
||
rtd: "+20",
|
||
msd: "+20",
|
||
hsd: "+25",
|
||
cwd: "+20",
|
||
tud: "+20",
|
||
ebd: "+25"
|
||
});
|
||
break;
|
||
case "22":
|
||
setAttrs({
|
||
dexreact: "+4",
|
||
dexmissile: "+4",
|
||
dexdefense: "-5",
|
||
ppd: "+25",
|
||
old: "+25",
|
||
rtd: "+20",
|
||
msd: "+20",
|
||
hsd: "+30",
|
||
cwd: "+25",
|
||
tud: "+30",
|
||
ebd: "+30"
|
||
});
|
||
break;
|
||
case "23":
|
||
setAttrs({
|
||
dexreact: "+4",
|
||
dexmissile: "+4",
|
||
dexdefense: "-5",
|
||
ppd: "+25",
|
||
old: "30",
|
||
rtd: "+25",
|
||
msd: "+25",
|
||
hsd: "+35",
|
||
cwd: "+25",
|
||
tud: "+35",
|
||
ebd: "+35"
|
||
});
|
||
break;
|
||
case "24":
|
||
setAttrs({
|
||
dexreact: "+5",
|
||
dexmissile: "+5",
|
||
dexdefense: "-6",
|
||
ppd: "+30",
|
||
old: "+30",
|
||
rtd: "+25",
|
||
msd: "+25",
|
||
hsd: "+40",
|
||
cwd: "+30",
|
||
tud: "+40",
|
||
ebd: "+40"
|
||
});
|
||
break;
|
||
case "25":
|
||
setAttrs({
|
||
dexreact: "+5",
|
||
dexmissile: "+5",
|
||
dexdefense: "-6",
|
||
ppd: "+35",
|
||
old: "+35",
|
||
rtd: "+30",
|
||
msd: "+30",
|
||
hsd: "+45",
|
||
cwd: "+35",
|
||
tud: "+45",
|
||
ebd: "+45"
|
||
});
|
||
break;
|
||
default: // if not a number or greater then 25 then set everything to 0
|
||
setAttrs({
|
||
dexreact: "+0",
|
||
dexmissile: "+0",
|
||
dexdefense: "+0",
|
||
ppd: "+0",
|
||
old: "+0",
|
||
rtd: "+0",
|
||
msd: "+0",
|
||
hsd: "+0",
|
||
cwd: "+0",
|
||
tud: "+0",
|
||
ebd: "+0",
|
||
dexnotes: "INVALID DEX"
|
||
});
|
||
} //end switch
|
||
}); //end getAttrs
|
||
}); //end on("change:dexterity")
|
||
//Set attributes based on constitution
|
||
on("change:constitution", function() {
|
||
getAttrs(["constitution", "class"], function(values) {
|
||
var str = values.class;
|
||
var booleanMatch = /paladin|warrior|ranger|fighter/i.test(str);
|
||
switch (values.constitution) {
|
||
case "1":
|
||
setAttrs({
|
||
conadj: "-3",
|
||
conshock: "25",
|
||
conres: "30",
|
||
conpoisonbonus: "-2",
|
||
conmagicbonus: "+0",
|
||
conregen: "0"
|
||
});
|
||
break;
|
||
case "2":
|
||
setAttrs({
|
||
conadj: "-2",
|
||
conshock: "30",
|
||
conres: "35",
|
||
conpoisonbonus: "-1",
|
||
conmagicbonus: "+0",
|
||
conregen: "0"
|
||
});
|
||
break;
|
||
case "3":
|
||
setAttrs({
|
||
conadj: "-2",
|
||
conshock: "35",
|
||
conres: "40",
|
||
conpoisonbonus: "+0",
|
||
conmagicbonus: "+0",
|
||
conregen: "0"
|
||
});
|
||
break;
|
||
case "4":
|
||
setAttrs({
|
||
conadj: "-1",
|
||
conshock: "40",
|
||
conres: "45",
|
||
conpoisonbonus: "+0",
|
||
conmagicbonus: "+0",
|
||
conregen: "0"
|
||
});
|
||
break;
|
||
case "5":
|
||
setAttrs({
|
||
conadj: "-1",
|
||
conshock: "45",
|
||
conres: "50",
|
||
conpoisonbonus: "+0",
|
||
conmagicbonus: "+0",
|
||
conregen: "0"
|
||
});
|
||
break;
|
||
case "6":
|
||
setAttrs({
|
||
conadj: "-1",
|
||
conshock: "50",
|
||
conres: "55",
|
||
conpoisonbonus: "+0",
|
||
conmagicbonus: "+0",
|
||
conregen: "0"
|
||
});
|
||
break;
|
||
case "7":
|
||
setAttrs({
|
||
conadj: "+0",
|
||
conshock: "55",
|
||
conres: "60",
|
||
conpoisonbonus: "+0",
|
||
conmagicbonus: "+0",
|
||
conregen: "0"
|
||
});
|
||
break;
|
||
case "8":
|
||
setAttrs({
|
||
conadj: "+0",
|
||
conshock: "60",
|
||
conres: "65",
|
||
conpoisonbonus: "+0",
|
||
conmagicbonus: "+0",
|
||
conregen: "0"
|
||
});
|
||
break;
|
||
case "9":
|
||
setAttrs({
|
||
conadj: "+0",
|
||
conshock: "65",
|
||
conres: "70",
|
||
conpoisonbonus: "+0",
|
||
conmagicbonus: "+0",
|
||
conregen: "0"
|
||
});
|
||
break;
|
||
case "10":
|
||
setAttrs({
|
||
conadj: "+0",
|
||
conshock: "70",
|
||
conres: "75",
|
||
conpoisonbonus: "+0",
|
||
conmagicbonus: "+0",
|
||
conregen: "0"
|
||
});
|
||
break;
|
||
case "11":
|
||
setAttrs({
|
||
conadj: "+0",
|
||
conshock: "75",
|
||
conres: "80",
|
||
conpoisonbonus: "+0",
|
||
conmagicbonus: "+0",
|
||
conregen: "0"
|
||
});
|
||
break;
|
||
case "12":
|
||
setAttrs({
|
||
conadj: "+0",
|
||
conshock: "80",
|
||
conres: "85",
|
||
conpoisonbonus: "+0",
|
||
conmagicbonus: "+0",
|
||
conregen: "0"
|
||
});
|
||
break;
|
||
case "13":
|
||
setAttrs({
|
||
conadj: "+0",
|
||
conshock: "85",
|
||
conres: "90",
|
||
conpoisonbonus: "+0",
|
||
conmagicbonus: "+0",
|
||
conregen: "0"
|
||
});
|
||
break;
|
||
case "14":
|
||
setAttrs({
|
||
conadj: "+0",
|
||
conshock: "88",
|
||
conres: "92",
|
||
conpoisonbonus: "+0",
|
||
conmagicbonus: "+0",
|
||
conregen: "0"
|
||
});
|
||
break;
|
||
case "15":
|
||
setAttrs({
|
||
conadj: "+1",
|
||
conshock: "90",
|
||
conres: "94",
|
||
conpoisonbonus: "+0",
|
||
conmagicbonus: "+0",
|
||
conregen: "0"
|
||
});
|
||
break;
|
||
case "16":
|
||
setAttrs({
|
||
conadj: "+2",
|
||
conshock: "95",
|
||
conres: "96",
|
||
conpoisonbonus: "+0",
|
||
conmagicbonus: "+0",
|
||
conregen: "0"
|
||
});
|
||
break;
|
||
case "17":
|
||
if (booleanMatch) {
|
||
setAttrs({
|
||
conadj: "+3",
|
||
conshock: "97",
|
||
conres: "98",
|
||
conpoisonbonus: "+0",
|
||
conmagicbonus: "+0",
|
||
conregen: "0"
|
||
});
|
||
} else {
|
||
setAttrs({
|
||
conadj: "+2",
|
||
conshock: "97",
|
||
conres: "98",
|
||
conpoisonbonus: "+0",
|
||
conmagicbonus: "+0",
|
||
conregen: "0"
|
||
});
|
||
}
|
||
break;
|
||
case "18":
|
||
if (booleanMatch) {
|
||
setAttrs({
|
||
conadj: "+4",
|
||
conshock: "99",
|
||
conres: "100",
|
||
conpoisonbonus: "+0",
|
||
conmagicbonus: "+0",
|
||
conregen: "0"
|
||
});
|
||
} else {
|
||
setAttrs({
|
||
conadj: "+2",
|
||
conshock: "99",
|
||
conres: "100",
|
||
conpoisonbonus: "+0",
|
||
conmagicbonus: "+0",
|
||
conregen: "0"
|
||
});
|
||
}
|
||
break;
|
||
case "19":
|
||
if (booleanMatch) {
|
||
setAttrs({
|
||
conadj: "+5",
|
||
conshock: "99",
|
||
conres: "100",
|
||
conpoisonbonus: "+1",
|
||
conmagicbonus: "+0",
|
||
conregen: "0"
|
||
});
|
||
} else {
|
||
setAttrs({
|
||
conadj: "+2",
|
||
conshock: "99",
|
||
conres: "100",
|
||
conpoisonbonus: "+1",
|
||
conmagicbonus: "+0",
|
||
conregen: "0"
|
||
});
|
||
}
|
||
break;
|
||
case "20":
|
||
if (booleanMatch) {
|
||
setAttrs({
|
||
conadj: "+5",
|
||
conshock: "99",
|
||
conres: "100",
|
||
conpoisonbonus: "+1",
|
||
conmagicbonus: "+0",
|
||
conregen: "1/6",
|
||
connotes: "1 hp/6 Turns - not acid/fire"
|
||
});
|
||
} else {
|
||
setAttrs({
|
||
conadj: "+2",
|
||
conshock: "99",
|
||
conres: "100",
|
||
conpoisonbonus: "+1",
|
||
conmagicbonus: "+0",
|
||
conregen: "1/6",
|
||
connotes: "1 hp/6 Turns - not acid/fire"
|
||
});
|
||
}
|
||
break;
|
||
case "21":
|
||
if (booleanMatch) {
|
||
setAttrs({
|
||
conadj: "+6",
|
||
conshock: "99",
|
||
conres: "100",
|
||
conpoisonbonus: "+2",
|
||
conmagicbonus: "+0",
|
||
conregen: "1/5",
|
||
connotes: "1 hp/5 Turns - not acid/fire"
|
||
});
|
||
} else {
|
||
setAttrs({
|
||
conadj: "+2",
|
||
conshock: "99",
|
||
conres: "100",
|
||
conpoisonbonus: "+2",
|
||
conmagicbonus: "+0",
|
||
conregen: "1/5",
|
||
connotes: "1 hp/5 Turns - not acid/fire"
|
||
});
|
||
}
|
||
break;
|
||
case "22":
|
||
if (booleanMatch) {
|
||
setAttrs({
|
||
conadj: "+6",
|
||
conshock: "99",
|
||
conres: "100",
|
||
conpoisonbonus: "+2",
|
||
conmagicbonus: "+0",
|
||
conregen: "1/4",
|
||
connotes: "1 hp/4 Turns - not acid/fire"
|
||
});
|
||
} else {
|
||
setAttrs({
|
||
conadj: "+2",
|
||
conshock: "99",
|
||
conres: "100",
|
||
conpoisonbonus: "+2",
|
||
conmagicbonus: "+0",
|
||
conregen: "1/4",
|
||
connotes: "1 hp/4 Turns - not acid/fire"
|
||
});
|
||
}
|
||
break;
|
||
case "23":
|
||
if (booleanMatch) {
|
||
setAttrs({
|
||
conadj: "+6",
|
||
conshock: "99",
|
||
conres: "100",
|
||
conpoisonbonus: "+3",
|
||
conmagicbonus: "+0",
|
||
conregen: "1/3",
|
||
connotes: "1 hp/3 Turns - not acid/fire"
|
||
});
|
||
} else {
|
||
setAttrs({
|
||
conadj: "+2",
|
||
conshock: "99",
|
||
conres: "100",
|
||
conpoisonbonus: "+3",
|
||
conmagicbonus: "+0",
|
||
conregen: "1/3",
|
||
connotes: "1 hp/3 Turns - not acid/fire"
|
||
});
|
||
}
|
||
break;
|
||
case "24":
|
||
if (booleanMatch) {
|
||
setAttrs({
|
||
conadj: "+7",
|
||
conshock: "99",
|
||
conres: "100",
|
||
conpoisonbonus: "+3",
|
||
conmagicbonus: "+0",
|
||
conregen: "1/2",
|
||
connotes: "1 hp/2 Turns - not acid/fire"
|
||
});
|
||
} else {
|
||
setAttrs({
|
||
conadj: "+2",
|
||
conshock: "99",
|
||
conres: "100",
|
||
conpoisonbonus: "+3",
|
||
conmagicbonus: "+0",
|
||
conregen: "1/2",
|
||
connotes: "1 hp/2 Turns - not acid/fire"
|
||
});
|
||
}
|
||
break;
|
||
case "25":
|
||
if (booleanMatch) {
|
||
setAttrs({
|
||
conadj: "+7",
|
||
conshock: "100",
|
||
conres: "100",
|
||
conpoisonbonus: "+4",
|
||
conmagicbonus: "+0",
|
||
conregen: "1/1",
|
||
connotes: "1 hp/Turn - not acid/fire"
|
||
});
|
||
} else {
|
||
setAttrs({
|
||
conadj: "+2",
|
||
conshock: "100",
|
||
conres: "100",
|
||
conpoisonbonus: "+4",
|
||
conmagicbonus: "+0",
|
||
conregen: "1/1",
|
||
connotes: "1 hp/Turn - not acid/fire"
|
||
});
|
||
}
|
||
break;
|
||
default: // if not a number or greater then 25 then set everything to 0
|
||
setAttrs({
|
||
conadj: "+0",
|
||
conshock: "+0",
|
||
conres: "+0",
|
||
conpoisonbonus: "+0",
|
||
conmagicbonus: "+0",
|
||
conregen: "0",
|
||
connotes: " ",
|
||
connotes: "INVALID CON"
|
||
});
|
||
break;
|
||
} //end switch
|
||
}); //end getAttrs
|
||
}); //end on("change:constitution")
|
||
//Set attributes based on Intelligence
|
||
on("change:Intelligence", function() {
|
||
getAttrs(["Intelligence"], function(values) {
|
||
switch (values.Intelligence) {
|
||
case "1":
|
||
setAttrs({
|
||
intlang: "0",
|
||
intlvl: "",
|
||
intchance: "",
|
||
intmax: "",
|
||
intimm: "",
|
||
intnotes: "Communicate by Grunts & Gestures"
|
||
});
|
||
break;
|
||
case "2":
|
||
setAttrs({
|
||
intlang: "1",
|
||
intlvl: "",
|
||
intchance: "",
|
||
intmax: "",
|
||
intimm: ""
|
||
});
|
||
break;
|
||
case "3":
|
||
setAttrs({
|
||
intlang: "1",
|
||
intlvl: "",
|
||
intchance: "",
|
||
intmax: "",
|
||
intimm: ""
|
||
});
|
||
break;
|
||
case "4":
|
||
setAttrs({
|
||
intlang: "1",
|
||
intlvl: "",
|
||
intchance: "",
|
||
intmax: "",
|
||
intimm: ""
|
||
});
|
||
break;
|
||
case "5":
|
||
setAttrs({
|
||
intlang: "1",
|
||
intlvl: "",
|
||
intchance: "",
|
||
intmax: "",
|
||
intimm: ""
|
||
});
|
||
break;
|
||
case "6":
|
||
setAttrs({
|
||
intlang: "1",
|
||
intlvl: "",
|
||
intchance: "",
|
||
intmax: "",
|
||
intimm: ""
|
||
});
|
||
break;
|
||
case "7":
|
||
setAttrs({
|
||
intlang: "1",
|
||
intlvl: "",
|
||
intchance: "",
|
||
intmax: "",
|
||
intimm: ""
|
||
});
|
||
break;
|
||
case "8":
|
||
setAttrs({
|
||
intlang: "1",
|
||
intlvl: "",
|
||
intchance: "",
|
||
intmax: "",
|
||
intimm: ""
|
||
});
|
||
break;
|
||
case "9":
|
||
setAttrs({
|
||
intlang: "2",
|
||
intlvl: "4th",
|
||
intchance: "35",
|
||
intmax: "6",
|
||
intimm: ""
|
||
});
|
||
break;
|
||
case "10":
|
||
setAttrs({
|
||
intlang: "2",
|
||
intlvl: "5th",
|
||
intchance: "40",
|
||
intmax: "7",
|
||
intimm: ""
|
||
});
|
||
break;
|
||
case "11":
|
||
setAttrs({
|
||
intlang: "2",
|
||
intlvl: "5th",
|
||
intchance: "45",
|
||
intmax: "7",
|
||
intimm: ""
|
||
});
|
||
break;
|
||
case "12":
|
||
setAttrs({
|
||
intlang: "3",
|
||
intlvl: "6th",
|
||
intchance: "50",
|
||
intmax: "7",
|
||
intimm: ""
|
||
});
|
||
break;
|
||
case "13":
|
||
setAttrs({
|
||
intlang: "3",
|
||
intlvl: "6th",
|
||
intchance: "55",
|
||
intmax: "9",
|
||
intimm: ""
|
||
});
|
||
break;
|
||
case "14":
|
||
setAttrs({
|
||
intlang: "4",
|
||
intlvl: "7th",
|
||
intchance: "60",
|
||
intmax: "9",
|
||
intimm: ""
|
||
});
|
||
break;
|
||
case "15":
|
||
setAttrs({
|
||
intlang: "4",
|
||
intlvl: "7th",
|
||
intchance: "65",
|
||
intmax: "11",
|
||
intimm: ""
|
||
});
|
||
break;
|
||
case "16":
|
||
setAttrs({
|
||
intlang: "5",
|
||
intlvl: "8th",
|
||
intchance: "70",
|
||
intmax: "11",
|
||
intimm: ""
|
||
});
|
||
break;
|
||
case "17":
|
||
setAttrs({
|
||
intlang: "6",
|
||
intlvl: "8th",
|
||
intchance: "75",
|
||
intmax: "14",
|
||
intimm: ""
|
||
});
|
||
break;
|
||
case "18":
|
||
setAttrs({
|
||
intlang: "7",
|
||
intlvl: "9th",
|
||
intchance: "85",
|
||
intmax: "18",
|
||
intimm: ""
|
||
});
|
||
break;
|
||
case "19":
|
||
setAttrs({
|
||
intlang: "8",
|
||
intlvl: "9th",
|
||
intchance: "95",
|
||
intmax: "All",
|
||
intimm: "1st lvl Illusion"
|
||
});
|
||
break;
|
||
case "20":
|
||
setAttrs({
|
||
intlang: "9",
|
||
intlvl: "9th",
|
||
intchance: "96",
|
||
intmax: "All",
|
||
intimm: "1st & 2nd lvl Illusion"
|
||
});
|
||
break;
|
||
case "21":
|
||
setAttrs({
|
||
intlang: "10",
|
||
intlvl: "9th",
|
||
intchance: "97",
|
||
intmax: "All",
|
||
intimm: "1st-3th lvl Illusion"
|
||
});
|
||
break;
|
||
case "22":
|
||
setAttrs({
|
||
intlang: "11",
|
||
intlvl: "9th",
|
||
intchance: "98",
|
||
intmax: "All",
|
||
intimm: "1st-4th lvl Illusion"
|
||
});
|
||
break;
|
||
case "23":
|
||
setAttrs({
|
||
intlang: "12",
|
||
intlvl: "9th",
|
||
intchance: "99",
|
||
intmax: "All",
|
||
intimm: "1st-5th lvl Illusion"
|
||
});
|
||
break;
|
||
case "24":
|
||
setAttrs({
|
||
intlang: "15",
|
||
intlvl: "9th",
|
||
intchance: "100",
|
||
intmax: "All",
|
||
intimm: "1st-6th lvl Illusion"
|
||
});
|
||
break;
|
||
case "25":
|
||
setAttrs({
|
||
intlang: "20",
|
||
intlvl: "9th",
|
||
intchance: "100",
|
||
intmax: "All",
|
||
intimm: "1st-7th lvl Illusion"
|
||
});
|
||
break;
|
||
default: // if not a number or not between 0 and 26 set everything to 0
|
||
setAttrs({
|
||
intlang: "",
|
||
intlvl: "",
|
||
intchance: "",
|
||
intmax: "",
|
||
intimm: "",
|
||
intnotes: "INVALID INT"
|
||
});
|
||
break;
|
||
} //end switch
|
||
}); //end getAttrs
|
||
}); //end on("change:Intelligence")
|
||
//Set attributes based on Wisdom
|
||
on("change:Wisdom", function() {
|
||
getAttrs(["Wisdom"], function(values) {
|
||
switch (values.Wisdom) {
|
||
case "1":
|
||
setAttrs({
|
||
wisdef: "-6",
|
||
wisbonus: "",
|
||
wisfail: "80",
|
||
wisimm: ""
|
||
});
|
||
break;
|
||
case "2":
|
||
setAttrs({
|
||
wisdef: "-4",
|
||
wisbonus: "",
|
||
wisfail: "60",
|
||
wisimm: ""
|
||
});
|
||
break;
|
||
case "3":
|
||
setAttrs({
|
||
wisdef: "-3",
|
||
wisbonus: "",
|
||
wisfail: "50",
|
||
wisimm: ""
|
||
});
|
||
break;
|
||
case "4":
|
||
setAttrs({
|
||
wisdef: "-2",
|
||
wisbonus: "",
|
||
wisfail: "45",
|
||
wisimm: ""
|
||
});
|
||
break;
|
||
case "5":
|
||
setAttrs({
|
||
wisdef: "-1",
|
||
wisbonus: "",
|
||
wisfail: "40",
|
||
wisimm: ""
|
||
});
|
||
break;
|
||
case "6":
|
||
setAttrs({
|
||
wisdef: "-1",
|
||
wisbonus: "",
|
||
wisfail: "35",
|
||
wisimm: ""
|
||
});
|
||
break;
|
||
case "7":
|
||
setAttrs({
|
||
wisdef: "-1",
|
||
wisbonus: "",
|
||
wisfail: "30",
|
||
wisimm: ""
|
||
});
|
||
break;
|
||
case "8":
|
||
setAttrs({
|
||
wisdef: "+0",
|
||
wisbonus: "",
|
||
wisfail: "25",
|
||
wisimm: ""
|
||
});
|
||
break;
|
||
case "9":
|
||
setAttrs({
|
||
wisdef: "+0",
|
||
wisbonus: "+0",
|
||
wisfail: "20",
|
||
wisimm: ""
|
||
});
|
||
break;
|
||
case "10":
|
||
setAttrs({
|
||
wisdef: "+0",
|
||
wisbonus: "+0",
|
||
wisfail: "15",
|
||
wisimm: ""
|
||
});
|
||
break;
|
||
case "11":
|
||
setAttrs({
|
||
wisdef: "+0",
|
||
wisbonus: "+0",
|
||
wisfail: "10",
|
||
wisimm: ""
|
||
});
|
||
break;
|
||
case "12":
|
||
setAttrs({
|
||
wisdef: "+0",
|
||
wisbonus: "+0",
|
||
wisfail: "05",
|
||
wisimm: ""
|
||
});
|
||
break;
|
||
case "13":
|
||
setAttrs({
|
||
wisdef: "+0",
|
||
wisbonus: "1st",
|
||
wisfail: "+0",
|
||
wisimm: ""
|
||
});
|
||
break;
|
||
case "14":
|
||
setAttrs({
|
||
wisdef: "+0",
|
||
wisbonus: "1st",
|
||
wisfail: "+0",
|
||
wisimm: ""
|
||
});
|
||
break;
|
||
case "15":
|
||
setAttrs({
|
||
wisdef: "+1",
|
||
wisbonus: "2nd",
|
||
wisfail: "+0",
|
||
wisimm: ""
|
||
});
|
||
break;
|
||
case "16":
|
||
setAttrs({
|
||
wisdef: "+2",
|
||
wisbonus: "2nd",
|
||
wisfail: "+0",
|
||
wisimm: ""
|
||
});
|
||
break;
|
||
case "17":
|
||
setAttrs({
|
||
wisdef: "+3",
|
||
wisbonus: "3rd",
|
||
wisfail: "+0",
|
||
wisimm: ""
|
||
});
|
||
break;
|
||
case "18":
|
||
setAttrs({
|
||
wisdef: "+4",
|
||
wisbonus: "4th",
|
||
wisfail: "+0",
|
||
wisimm: ""
|
||
});
|
||
break;
|
||
case "19":
|
||
setAttrs({
|
||
wisdef: "+4",
|
||
wisbonus: "1st,3rd",
|
||
wisfail: "+0",
|
||
wisimm: "cause fear, charm person, command, friends, hypnotism"
|
||
});
|
||
break;
|
||
case "20":
|
||
setAttrs({
|
||
wisdef: "+4",
|
||
wisbonus: "2nd,4th",
|
||
wisfail: "+0",
|
||
wisimm: "forget, hold person, ray of enfeeblement, scare"
|
||
});
|
||
break;
|
||
case "21":
|
||
setAttrs({
|
||
wisdef: "+4",
|
||
wisbonus: "3rd,5th",
|
||
wisfail: "+0",
|
||
wisimm: "fear"
|
||
});
|
||
break;
|
||
case "22":
|
||
setAttrs({
|
||
wisdef: "+4",
|
||
wisbonus: "4th,5th",
|
||
wisfail: "+0",
|
||
wisimm: "charm monster, confusion, emotion, fumble, suggestion"
|
||
});
|
||
break;
|
||
case "23":
|
||
setAttrs({
|
||
wisdef: "+4",
|
||
wisbonus: "1dt,6th",
|
||
wisfail: "+0",
|
||
wisimm: "chaos, feeblemind, hold monster, magic jar, quest"
|
||
});
|
||
break;
|
||
case "24":
|
||
setAttrs({
|
||
wisdef: "+4",
|
||
wisbonus: "5th,6th",
|
||
wisfail: "+0",
|
||
wisimm: "geas, mass suggestion, rod of rulership"
|
||
});
|
||
break;
|
||
case "25":
|
||
setAttrs({
|
||
wisdef: "+4",
|
||
wisbonus: "6th,7th",
|
||
wisfail: "+0",
|
||
wisimm: "antipathy/sympathy, death spell, mass charm"
|
||
});
|
||
break;
|
||
default: // if not a number or not between 0 and 26 set everything to 0
|
||
setAttrs({
|
||
wisdef: "+0",
|
||
wisbonus: "",
|
||
wisfail: "+0",
|
||
wisimm: "",
|
||
wisnotes: "INVALID WIS"
|
||
});
|
||
break;
|
||
} //end switch
|
||
}); //end getAttrs
|
||
}); //end on("change:Wisdom")
|
||
//Set attributes based on Charisma
|
||
on("change:Charisma", function() {
|
||
getAttrs(["Charisma"], function(values) {
|
||
switch (values.Charisma) {
|
||
case "1":
|
||
setAttrs({
|
||
chamax: "+0",
|
||
chaloy: "-8",
|
||
chareact: "-7"
|
||
});
|
||
break;
|
||
case "2":
|
||
setAttrs({
|
||
chamax: "1",
|
||
chaloy: "-7",
|
||
chareact: "-6"
|
||
});
|
||
break;
|
||
case "3":
|
||
setAttrs({
|
||
chamax: "1",
|
||
chaloy: "-6",
|
||
chareact: "-5"
|
||
});
|
||
break;
|
||
case "4":
|
||
setAttrs({
|
||
chamax: "1",
|
||
chaloy: "-5",
|
||
chareact: "-4"
|
||
});
|
||
break;
|
||
case "5":
|
||
setAttrs({
|
||
chamax: "2",
|
||
chaloy: "-4",
|
||
chareact: "-3"
|
||
});
|
||
break;
|
||
case "6":
|
||
setAttrs({
|
||
chamax: "2",
|
||
chaloy: "-3",
|
||
chareact: "-2"
|
||
});
|
||
break;
|
||
case "7":
|
||
setAttrs({
|
||
chamax: "3",
|
||
chaloy: "-2",
|
||
chareact: "-1"
|
||
});
|
||
break;
|
||
case "8":
|
||
setAttrs({
|
||
chamax: "3",
|
||
chaloy: "-1",
|
||
chareact: "+0"
|
||
});
|
||
break;
|
||
case "9":
|
||
setAttrs({
|
||
chamax: "4",
|
||
chaloy: "+0",
|
||
chareact: "+0"
|
||
});
|
||
break;
|
||
case "10":
|
||
setAttrs({
|
||
chamax: "4",
|
||
chaloy: "+0",
|
||
chareact: "+0"
|
||
});
|
||
break;
|
||
case "11":
|
||
setAttrs({
|
||
chamax: "4",
|
||
chaloy: "+0",
|
||
chareact: "+0"
|
||
});
|
||
break;
|
||
case "12":
|
||
setAttrs({
|
||
chamax: "5",
|
||
chaloy: "+0",
|
||
chareact: "+0"
|
||
});
|
||
break;
|
||
case "13":
|
||
setAttrs({
|
||
chamax: "5",
|
||
chaloy: "+0",
|
||
chareact: "+1"
|
||
});
|
||
break;
|
||
case "14":
|
||
setAttrs({
|
||
chamax: "6",
|
||
chaloy: "+1",
|
||
chareact: "+2"
|
||
});
|
||
break;
|
||
case "15":
|
||
setAttrs({
|
||
chamax: "7",
|
||
chaloy: "+3",
|
||
chareact: "+3"
|
||
});
|
||
break;
|
||
case "16":
|
||
setAttrs({
|
||
chamax: "8",
|
||
chaloy: "+4",
|
||
chareact: "+5"
|
||
});
|
||
break;
|
||
case "17":
|
||
setAttrs({
|
||
chamax: "10",
|
||
chaloy: "+6",
|
||
chareact: "+6"
|
||
});
|
||
break;
|
||
case "18":
|
||
setAttrs({
|
||
chamax: "15",
|
||
chaloy: "+8",
|
||
chareact: "+7"
|
||
});
|
||
break;
|
||
case "19":
|
||
setAttrs({
|
||
chamax: "20",
|
||
chaloy: "+10",
|
||
chareact: "+8"
|
||
});
|
||
break;
|
||
case "20":
|
||
setAttrs({
|
||
chamax: "25",
|
||
chaloy: "+12",
|
||
chareact: "+9"
|
||
});
|
||
break;
|
||
case "21":
|
||
setAttrs({
|
||
chamax: "30",
|
||
chaloy: "+14",
|
||
chareact: "+10"
|
||
});
|
||
break;
|
||
case "22":
|
||
setAttrs({
|
||
chamax: "35",
|
||
chaloy: "+16",
|
||
chareact: "+11"
|
||
});
|
||
break;
|
||
case "23":
|
||
setAttrs({
|
||
chamax: "40",
|
||
chaloy: "+18",
|
||
chareact: "+12"
|
||
});
|
||
break;
|
||
case "24":
|
||
setAttrs({
|
||
chamax: "45",
|
||
chaloy: "+20",
|
||
chareact: "+13"
|
||
});
|
||
break;
|
||
case "25":
|
||
setAttrs({
|
||
chamax: "50",
|
||
chaloy: "+20",
|
||
chareact: "+14"
|
||
});
|
||
break;
|
||
default: // if not a number or not between 0 and 26 set everything to 0
|
||
setAttrs({
|
||
chamax: "+0",
|
||
chaloy: "+0",
|
||
chareact: "+0",
|
||
chanotes: "INVALID CHA"
|
||
});
|
||
break;
|
||
} //end switch
|
||
}); //end getAttrs
|
||
}); //end on("change:Charisma")
|
||
|
||
/* sort out total gearweight */
|
||
on('change:repeating_gear:gearweigh change:gearweigh', function(){
|
||
TAS.repeating('gear') //<-- The repeating section name
|
||
.attrs('gearweigh','gearweighttotal') //<-- the attributes outside the repeating section
|
||
.fields('gearweigh') //<-- the field (attribute) inside the repeating section
|
||
.reduce(function(m,r){
|
||
m.weigh+=r.F.gearweigh; //<-- sum up the ones in the repeating section
|
||
return m;
|
||
},{weigh:0},function(m,r,a){
|
||
a.D[2].gearweighttotal = a.F.gearweigh + m.weigh; //<-- add the sum and the outside attribute and store it.
|
||
})
|
||
.execute(); //<-- cause all the above to run.
|
||
});
|
||
|
||
/* sort out total weapweight */
|
||
on('change:repeating_weapons:weapweight change:weapweight', function(){
|
||
TAS.repeating('weapons') //<-- The repeating section name
|
||
.attrs('weapweight','weapweighttotal') //<-- the attributes outside the repeating section
|
||
.fields('weapweight') //<-- the field (attribute) inside the repeating section
|
||
.reduce(function(m,r){
|
||
m.weigh+=r.F.weapweight; //<-- sum up the ones in the repeating section
|
||
return m;
|
||
},{weigh:0},function(m,r,a){
|
||
a.D[2].weapweighttotal = a.F.weapweight + m.weigh; //<-- add the sum and the outside attribute and store it.
|
||
})
|
||
.execute(); //<-- cause all the above to run.
|
||
});
|
||
|
||
on('change:gearweighttotal change:weapweighttotal', function() {
|
||
getAttrs(["gearweighttotal", "weapweighttotal"], function(values) {
|
||
//setAttrs({ totalweightCarry: (parseFloat(values.gearweighttotal)+parseFloat(values.weapweighttotal)).toFixed(2)});
|
||
setAttrs({ totalweightCarry: (values.gearweighttotal)});
|
||
});
|
||
});
|
||
</script>
|
||
|
||
|