mirror of
https://github.com/Nighthawk42/roll20-character-sheets.git
synced 2026-08-30 03:40:32 +00:00
2139 lines
102 KiB
HTML
2139 lines
102 KiB
HTML
<div class="sheet-overall-wrapper">
|
|
<!-- Settings Tab -->
|
|
<input type="checkbox" name="attr_tabsettings" class="sheet-tab sheet-tab-settings" value="1">
|
|
<span class="sheet-tab sheet-tab-settings">Settings</span>
|
|
|
|
<!-- Whisper to GM toggle -->
|
|
<input type="checkbox" name="attr_tabwgm" class="sheet-tab sheet-tab-wgm" value="1">
|
|
<span class="sheet-tab sheet-tab-wgm">/w GM</span>
|
|
<input type="hidden" name="attr_whisper" value="">
|
|
|
|
<!-- Settings Section -->
|
|
|
|
<div class="sheet-section-settings">
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-3-7">
|
|
</div>
|
|
<div class="sheet-col-3-7">
|
|
<h4 class="sheet-center">Settings</h4>
|
|
<span class="sheet-spacer"></span>
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-2 sheet-padr">
|
|
<div class="sheet-center sheet-small-label sheet-sub-header">
|
|
<div class="sheet-tooltip">Send Initiative to Tracker [?]
|
|
<span class="sheet-tooltiptext-middle">Rolling initiative with token selected sends roll to tracker</span>
|
|
</div>
|
|
</div>
|
|
<select name="attr_setting_tracker">
|
|
<option value="&{tracker}" selected>Send to tracker</option>
|
|
<option value=" ">Don't send to tracker</option>
|
|
</select>
|
|
</div>
|
|
<div class="sheet-col-1-2">
|
|
<div class="sheet-center sheet-small-label sheet-sub-header">
|
|
<div class="sheet-tooltip">Initiative Type [?]
|
|
<span class="sheet-tooltiptext-middle">Deluxe: Dexterity-based roll, Classic: Simple 1d20</span>
|
|
</div>
|
|
</div>
|
|
<select name="attr_newinit_toggle">
|
|
<option value=1 selected>Deluxe Initiative</option>
|
|
<option value=0>Classic Initiative</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!----------------------------------------------------------->
|
|
|
|
<!--Main Header -->
|
|
|
|
<div class="sheet-core-header sheet-padb">
|
|
<div class="sheet-row">
|
|
<!-- LOGO -->
|
|
<div class="sheet-col-1-8">
|
|
<div class="sheet-logo">
|
|
<img src="https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Low%20Fantasy%20Gaming/LFG_LOGO.png" alt="Low Fantasy Gaming" width=100 >
|
|
</div>
|
|
<div class="sheet-logo-dark">
|
|
<img src="https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Low%20Fantasy%20Gaming/LFG_LOGO_DARK.png" alt="Low Fantasy Gaming" width=100 >
|
|
</div>
|
|
</div>
|
|
<!-- Sheet version -->
|
|
<div class="sheet-col-1-8 sheet-center">
|
|
<br/> <br/>
|
|
<p class="sheet-last-updated">Sheet version 4.0<br/>March 2023</p>
|
|
<input name="attr_version" type="hidden">
|
|
</div>
|
|
<!-- Character info -->
|
|
<div class="sheet-col-1-4 sheet-small-label sheet-center">
|
|
<br/> <br/> <br/>
|
|
<input class="sheet-underlined sheet-center" type="text" name="attr_character_name"><br/>Character Name
|
|
</div>
|
|
<div class="sheet-col-1-8 sheet-small-label sheet-center">
|
|
<br/> <br/> <br/>
|
|
<input class="sheet-underlined sheet-center" type="text" name="attr_class"><br/>Class
|
|
</div>
|
|
<div class="sheet-col-1-8 sheet-small-label sheet-center">
|
|
<br/> <br/> <br/>
|
|
<input class="sheet-underlined sheet-center" type="number" min="0" step="1" value="1" name="attr_level"><br/>Level
|
|
</div>
|
|
<div class="sheet-col-1-8 sheet-small-label sheet-center">
|
|
<br/> <br/> <br/>
|
|
<input class="sheet-underlined sheet-center" type="number" min="0" step="1" value="0" name="attr_xp"><br/>XP
|
|
</div>
|
|
<div class="sheet-col-1-8 sheet-small-label sheet-center">
|
|
<br/> <br/> <br/>
|
|
<input class="sheet-underlined sheet-center" type="number" min="0" step="1" value="0" name="attr_xp_goal"><br/>XP Goal
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Personal Details -->
|
|
|
|
<h4 class="sheet-center">Personal Details</h4>
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-7 sheet-small-label sheet-center"><input class="sheet-underlined sheet-center" type="text" name="attr_gender"><br/>Gender</div>
|
|
<div class="sheet-col-1-7 sheet-small-label sheet-center"><input class="sheet-underlined sheet-center" type="number" name="attr_age"><br/>Age</div>
|
|
<div class="sheet-col-1-7 sheet-small-label sheet-center"><input class="sheet-underlined sheet-center" type="text" name="attr_height"><br/>Height</div>
|
|
<div class="sheet-col-1-7 sheet-small-label sheet-center"><input class="sheet-underlined sheet-center" type="text" name="attr_weight"><br/>Weight</div>
|
|
<div class="sheet-col-1-7 sheet-small-label sheet-center"><input class="sheet-underlined sheet-center" type="text" name="attr_eyes"><br/>Eyes</div>
|
|
<div class="sheet-col-1-7 sheet-small-label sheet-center"><input class="sheet-underlined sheet-center" type="text" name="attr_hair"><br/>Hair</div>
|
|
<div class="sheet-col-1-7 sheet-small-label sheet-center"><input class="sheet-underlined sheet-center" type="text" name="attr_race"><br/>Race</div>
|
|
</div>
|
|
<div class="sheet-row sheet-padb">
|
|
<div class="sheet-col-1-4 sheet-small-label sheet-center"><input class="sheet-underlined sheet-center" type="text" name="attr_background"><br/>Background</div>
|
|
<div class="sheet-col-5-8 sheet-small-label sheet-center"><input class="sheet-underlined sheet-center" type="text" name="attr_languages"><br/>Languages</div>
|
|
<div class="sheet-col-1-8 sheet-small-label sheet-center"><input class="sheet-underlined sheet-center" type="text" name="attr_vision"><br/>Vision</div>
|
|
</div>
|
|
|
|
<!-- Statistics -->
|
|
|
|
<h4 class="sheet-center">Statistics</h4>
|
|
<div class="sheet-row sheet-padb">
|
|
<div class="sheet-col-1-6 sheet-padr">
|
|
<div class="sheet-center sheet-small-label sheet-sub-header">Hit Points</div>
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-2 sheet-small-label sheet-center">
|
|
<input class="sheet-underlined" type="number" name="attr_HP" step="1" value="0">
|
|
<br/>Current
|
|
</div>
|
|
<div class="sheet-col-1-2 sheet-small-label sheet-center">
|
|
<input class="sheet-underlined" type="number" name="attr_HP_max" min="1" step="1" value="1">
|
|
<br/>Max
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-col-1-6 sheet-padr">
|
|
<div class="sheet-center sheet-small-label sheet-sub-header">Attack Bonus</div>
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-1 sheet-small-label sheet-center">
|
|
<input class="sheet-underlined sheet-center" type="number" name="attr_class_hitbonus" step="1" value="0">
|
|
<br/>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-col-1-6 sheet-padr">
|
|
<div class="sheet-center sheet-small-label sheet-sub-header">
|
|
<div class="sheet-tooltip">Armour Class [?]
|
|
<span class="sheet-tooltiptext-middle">10 + Dex modifier + armour AC bonus.</span>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-1 sheet-small-label sheet-center">
|
|
<input class="sheet-underlined sheet-center" type="number" name="attr_armour_class" step="1" value="10">
|
|
<br/>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-col-1-6 sheet-padr">
|
|
<div class="sheet-col-1">
|
|
<div class="sheet-center sheet-small-label sheet-sub-header">
|
|
<div class="sheet-tooltip">Reroll Pool [?]
|
|
<span class="sheet-tooltiptext-middle">Rerolls are for Skill checks, Luck rolls, Rest recoveries, and Dead tests.</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-2 sheet-small-label sheet-center">
|
|
<input class="sheet-underlined" type="number" name="attr_rerolls" step="1" value="0">
|
|
<br/>Current
|
|
</div>
|
|
<div class="sheet-col-1-2 sheet-small-label sheet-center">
|
|
<input class="sheet-underlined" type="number" name="attr_rerolls_max" value="0">
|
|
<br/>Max
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-col-1-6 sheet-padr">
|
|
<div class="sheet-col-1">
|
|
<div class="sheet-center sheet-small-label sheet-sub-header">
|
|
<div class="sheet-tooltip">DDM Threshold [?]
|
|
<span class="sheet-tooltiptext-middle">Rolls equal to or below the threshold trigger a roll on the Dark and Dangerous Magic table.</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-col-1-4 sheet-padr">
|
|
<button type="roll" class="sheet-roll" name="roll_DDM" value="@{whisper} &{template:5eDefault} {{ddm=1}} {{title=Dark & Dangerous Magic}} {{subheader=@{character_name}}} {{ddmroll=[[1d20]]}} {{ddmthreshold=[[@{DDM}]]}}"></button>
|
|
</div>
|
|
<div class="sheet-col-5-8 sheet-small-label sheet-center">
|
|
<input class="sheet-underlined sheet-center" type="number" name="attr_DDM" step="1" value="1">
|
|
</div>
|
|
</div>
|
|
<div class="sheet-col-1-6">
|
|
<input type="hidden" class="sheet-newinit" name="attr_newinit_toggle" value="1"/>
|
|
<div class="sheet-section-oldinit">
|
|
<div class="sheet-center sheet-small-label sheet-sub-header">Classic Initiative</div>
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-2-6 sheet-small-label sheet-center">
|
|
<input class="sheet-underlined" type="number" name="attr_initiative" step="1" value="0">
|
|
+Misc
|
|
</div>
|
|
<div class="sheet-col-3-6 sheet-small-label sheet-center">
|
|
<select name="attr_oldinitiativeadvantage">
|
|
<option value="2d20kh1">ADV</option>
|
|
<option value="1d20" selected>NO</option>
|
|
<option value="2d20kl1">DIS</option>
|
|
</select>
|
|
<br/>Advantage
|
|
</div>
|
|
<div class="sheet-col-1-6 sheet-small-label sheet-center">
|
|
<button type="roll" name="roll_ClassicInitiative" value="@{whisper} &{template:5eDefault} {{ability=1}} {{title=Classic Initiative Roll}} {{subheader=@{character_name}}} {{initiative=[[ @{oldinitiativeadvantage}+(@{initiative}) @{setting_tracker} ]]}}"></button>
|
|
<div class="sheet-tiny-spacer"></div>Roll
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-section-newinit">
|
|
<div class="sheet-center sheet-small-label sheet-sub-header">Deluxe Initiative</div>
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-2-6 sheet-small-label sheet-center">
|
|
<input class="sheet-underlined" type="number" name="attr_initiative" step="1" value="0">
|
|
+Misc
|
|
</div>
|
|
<div class="sheet-col-3-6 sheet-small-label sheet-center">
|
|
<select name="attr_initiativeadvantage">
|
|
<option value="2d20cs=1cf=20kl1">ADV</option>
|
|
<option value="1d20cs=1cf=20" selected>NO</option>
|
|
<option value="2d20cs=1cf=20kh1">DIS</option>
|
|
</select>
|
|
<br/>Advantage
|
|
</div>
|
|
<div class="sheet-col-1-6 sheet-small-label sheet-center">
|
|
<button type="roll" name="roll_DeluxeInitiative" value="@{whisper} &{template:5eDefault} {{ability=1}} {{title=Initiative Check}} {{subheader=@{character_name}}} {{difference=[[ [[{@{dexterity}[Dexterity] +(@{initiative}[Initiative Modifier]), 18}kl1]] - [[@{initiativeadvantage}]] @{setting_tracker} ]]}} {{roll=$[[1]]}} {{target=$[[0]]}} {{gsresult=[[ {( @{dexterity} + (@{initiative}) )/2} ]]}} {{tfresult=[[ {[[floor( ([[ {( @{dexterity} + (@{initiative}) ), ceil(0+0) }kh1 ]])*1.5 )]], 19}kl1 ]]}}"></button>
|
|
<div class="sheet-tiny-spacer"></div>Roll
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<!----------------------------------------------------------->
|
|
|
|
<!-- Tabs -->
|
|
|
|
<input type="checkbox" name="attr_tab1" class="sheet-tab sheet-tab1" value="1" checked />
|
|
<span class="sheet-tab sheet-tab1">Main</span>
|
|
<input type="checkbox" name="attr_tab2" class="sheet-tab sheet-tab2" value="1" checked />
|
|
<span class="sheet-tab sheet-tab2">Features</span>
|
|
<input type="checkbox" name="attr_tab3" class="sheet-tab sheet-tab3" value="1" checked />
|
|
<span class="sheet-tab sheet-tab3">Attacks</span>
|
|
<input type="checkbox" name="attr_tab4" class="sheet-tab sheet-tab4" value="1" checked />
|
|
<span class="sheet-tab sheet-tab4">Spellbook</span>
|
|
<input type="checkbox" name="attr_tab5" class="sheet-tab sheet-tab5" value="1" checked />
|
|
<span class="sheet-tab sheet-tab5">Inventory</span>
|
|
<input type="checkbox" name="attr_tab6" class="sheet-tab sheet-tab6" value="1" checked />
|
|
<span class="sheet-tab sheet-tab6">Conditions</span>
|
|
<input type="checkbox" name="attr_tab7" class="sheet-tab sheet-tab7" value="1" checked />
|
|
<span class="sheet-tab sheet-tab7">Notes</span>
|
|
<span class="sheet-spacer"></span>
|
|
<!----------------------------------------------------------->
|
|
|
|
<!-- Main Tab -->
|
|
|
|
<div class="sheet-section-main">
|
|
<span class="sheet-spacer"></span>
|
|
<div class="sheet-row">
|
|
|
|
<!-- Attributes -->
|
|
|
|
<div class="sheet-col-7-12 sheet-padr">
|
|
<h4 class="sheet-center">Attributes</h4>
|
|
<div class="sheet-row sheet-sub-header">
|
|
<div class="sheet-col-1-12 sheet-center sheet-small-label">Score</div>
|
|
<div class="sheet-col-1-12 sheet-center sheet-small-label">Max</div>
|
|
<div class="sheet-col-1-10 sheet-center sheet-small-label"> </div>
|
|
<div class="sheet-col-1-16 sheet-center sheet-small-label">Mod</div>
|
|
<div class="sheet-col-1-16 sheet-center sheet-small-label">GS</div>
|
|
<div class="sheet-col-1-16 sheet-center sheet-small-label">TF</div>
|
|
<div class="sheet-col-1-8 sheet-center sheet-small-label">Advantage</div>
|
|
<div class="sheet-col-1-12 sheet-center sheet-small-label">Modifier</div>
|
|
<div class="sheet-col-1-14 sheet-center sheet-small-label">Roll</div>
|
|
<div class="sheet-col-1-4 sheet-center sheet-small-label">Notes</div>
|
|
</div>
|
|
|
|
<!-- Strength -->
|
|
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-12"><input type="number" name="attr_strength" min="1" step="1" value="10"/></div>
|
|
<div class="sheet-col-1-12"><input type="number" name="attr_strength_max" min="1" step="1" value="10"/></div>
|
|
<div class="sheet-col-1-10 sheet-core-stat-label">Str</div>
|
|
<div class="sheet-col-1-16"><input type="text" class="sheet-numlocked" name="attr_strength_mod" value="0" readonly/></div>
|
|
<div class="sheet-col-1-16"><input type="number" class="sheet-numlocked sheet-spinhide" name="attr_strength_gs" value="1" readonly/></div>
|
|
<div class="sheet-col-1-16"><input type="number" class="sheet-numlocked sheet-spinhide" name="attr_strength_tf" value="20" readonly/></div>
|
|
<div class="sheet-col-1-8">
|
|
<select name="attr_strengthadvantage">
|
|
<option value="2d20cs=1cf=20kl1">ADV</option>
|
|
<option value="1d20cs=1cf=20" selected>NO</option>
|
|
<option value="2d20cs=1cf=20kh1">DIS</option>
|
|
</select>
|
|
</div>
|
|
<div class="sheet-col-1-12">
|
|
<input type="number" name="attr_strength_rollmod" value="0" step="1">
|
|
</div>
|
|
<div class="sheet-col-1-16">
|
|
<button type="roll" name="roll_Str" value="@{whisper} &{template:5eDefault} {{ability=1}} {{title=Strength Check}} {{subheader=@{character_name}}} {{difference=[[ [[{@{strength}[Attribute] +(@{strength_rollmod}[RollModifier]), 19}kl1]] - [[@{strengthadvantage}]] ]]}} {{target=$[[0]]}} {{roll=$[[1]]}} {{gsresult=[[ {( @{strength} + @{strength_rollmod} )/2} ]]}} {{tfresult=[[ {[[floor( ([[ {( @{strength} ), ceil(0+0) }kh1 ]])*1.5 )]], 19}kl1 ]]}}"></button>
|
|
</div>
|
|
<div class="sheet-col-1-4 sheet-tiny-note">Melee, Athletics</div>
|
|
</div>
|
|
|
|
<!-- Dexterity -->
|
|
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-12"><input type="number" name="attr_dexterity" min="1" step="1" value="10"/></div>
|
|
<div class="sheet-col-1-12"><input type="number" name="attr_dexterity_max" min="1" step="1" value="10"/></div>
|
|
<div class="sheet-col-1-10 sheet-core-stat-label">Dex</div>
|
|
<div class="sheet-col-1-16"><input type="text" class="sheet-numlocked" name="attr_dexterity_mod" value="0" readonly/></div>
|
|
<div class="sheet-col-1-16"><input type="number" class="sheet-numlocked sheet-spinhide" name="attr_dexterity_gs" value="1" readonly/></div>
|
|
<div class="sheet-col-1-16"><input type="number" class="sheet-numlocked sheet-spinhide" name="attr_dexterity_tf" value="20" readonly/></div>
|
|
<div class="sheet-col-1-8">
|
|
<select name="attr_dexterityadvantage">
|
|
<option value="2d20cs=1cf=20kl1">ADV</option>
|
|
<option value="1d20cs=1cf=20" selected>NO</option>
|
|
<option value="2d20cs=1cf=20kh1">DIS</option>
|
|
</select>
|
|
</div>
|
|
<div class="sheet-col-1-12">
|
|
<input type="number" name="attr_dexterity_rollmod" value="0" step="1">
|
|
</div>
|
|
<div class="sheet-col-1-16">
|
|
<button type="roll" name="roll_Dex" value="@{whisper} &{template:5eDefault} {{ability=1}} {{title=Dexterity Check}} {{subheader=@{character_name}}} {{difference=[[ [[{@{dexterity}[Attribute] +(@{dexterity_rollmod}[RollModifier]), 19}kl1]] - [[@{dexterityadvantage}]] ]]}} {{target=$[[0]]}} {{roll=$[[1]]}} {{gsresult=[[ {( @{dexterity} + @{dexterity_rollmod} )/2} ]]}} {{tfresult=[[ {[[floor( ([[ {( @{dexterity} + @{dexterity_rollmod} ), ceil(0+0) }kh1 ]])*1.5 )]], 19}kl1 ]]}}"></button>
|
|
</div>
|
|
<div class="sheet-col-1-4 sheet-tiny-note">Ranged, AC</div>
|
|
</div>
|
|
|
|
<!-- Constitution -->
|
|
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-12"><input type="number" name="attr_constitution" min="1" step="1" value="10"/></div>
|
|
<div class="sheet-col-1-12"><input type="number" name="attr_constitution_max" min="1" step="1" value="10"/></div>
|
|
<div class="sheet-col-1-10 sheet-core-stat-label">Con</div>
|
|
<div class="sheet-col-1-16"><input type="text" class="sheet-numlocked" name="attr_constitution_mod" value="0" readonly/></div>
|
|
<div class="sheet-col-1-16"><input type="number" class="sheet-numlocked sheet-spinhide" name="attr_constitution_gs" value="1" readonly/></div>
|
|
<div class="sheet-col-1-16"><input type="number" class="sheet-numlocked sheet-spinhide" name="attr_constitution_tf" value="20" readonly/></div>
|
|
<div class="sheet-col-1-8">
|
|
<select name="attr_constitutionadvantage">
|
|
<option value="2d20cs=1cf=20kl1">ADV</option>
|
|
<option value="1d20cs=1cf=20" selected>NO</option>
|
|
<option value="2d20cs=1cf=20kh1">DIS</option>
|
|
</select>
|
|
</div>
|
|
<div class="sheet-col-1-12">
|
|
<input type="number" name="attr_constitution_rollmod" value="0" step="1">
|
|
</div>
|
|
<div class="sheet-col-1-16">
|
|
<button type="roll" name="roll_Con" value="@{whisper} &{template:5eDefault} {{ability=1}} {{title=Constitution Check}} {{subheader=@{character_name}}} {{difference=[[ [[{@{constitution}[Attribute] +(@{constitution_rollmod}[RollModifier]), 19}kl1]] - [[@{constitutionadvantage}]] ]]}} {{target=$[[0]]}} {{roll=$[[1]]}} {{gsresult=[[ {( @{constitution} + @{constitution_rollmod} )/2} ]]}} {{tfresult=[[ {[[floor( ([[ {( @{constitution} + @{constitution_rollmod} ), ceil(0+0) }kh1 ]])*1.5 )]], 19}kl1 ]]}}"></button>
|
|
</div>
|
|
<div class="sheet-col-1-4 sheet-tiny-note">Hit Points, Poison</div>
|
|
</div>
|
|
|
|
<!-- Intelligence -->
|
|
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-12"><input type="number" name="attr_intelligence" min="1" step="1" value="10"/></div>
|
|
<div class="sheet-col-1-12"><input type="number" name="attr_intelligence_max" min="1" step="1" value="10"/></div>
|
|
<div class="sheet-col-1-10 sheet-core-stat-label">Int</div>
|
|
<div class="sheet-col-1-16"><input type="text" class="sheet-numlocked" name="attr_intelligence_mod" value="0" readonly/></div>
|
|
<div class="sheet-col-1-16"><input type="number" class="sheet-numlocked sheet-spinhide" name="attr_intelligence_gs" value="1" readonly/></div>
|
|
<div class="sheet-col-1-16"><input type="number" class="sheet-numlocked sheet-spinhide" name="attr_intelligence_tf" value="20" readonly/></div>
|
|
<div class="sheet-col-1-8">
|
|
<select name="attr_intelligenceadvantage">
|
|
<option value="2d20cs=1cf=20kl1">ADV</option>
|
|
<option value="1d20cs=1cf=20" selected>NO</option>
|
|
<option value="2d20cs=1cf=20kh1">DIS</option>
|
|
</select>
|
|
</div>
|
|
<div class="sheet-col-1-12">
|
|
<input type="number" name="attr_intelligence_rollmod" value="0" step="1">
|
|
</div>
|
|
<div class="sheet-col-1-16">
|
|
<button type="roll" name="roll_Int" value="@{whisper} &{template:5eDefault} {{ability=1}} {{title=Intelligence Check}} {{subheader=@{character_name}}} {{difference=[[ [[{@{intelligence}[Attribute] +(@{intelligence_rollmod}[RollModifier]), 19}kl1]] - [[@{intelligenceadvantage}]] ]]}} {{target=$[[0]]}} {{roll=$[[1]]}} {{gsresult=[[ {( @{intelligence} + @{intelligence_rollmod} )/2} ]]}} {{tfresult=[[ {[[floor( ([[ {( @{intelligence} + @{intelligence_rollmod} ), ceil(0+0) }kh1 ]])*1.5 )]], 19}kl1 ]]}}"></button>
|
|
</div>
|
|
<div class="sheet-col-1-4 sheet-tiny-note">Lore, Insight, Lang</div>
|
|
</div>
|
|
|
|
<!-- Perception -->
|
|
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-12"><input type="number" name="attr_perception" min="1" step="1" value="10"/></div>
|
|
<div class="sheet-col-1-12"><input type="number" name="attr_perception_max" min="1" step="1" value="10"/></div>
|
|
<div class="sheet-col-1-10 sheet-core-stat-label">Per</div>
|
|
<div class="sheet-col-1-16"><input type="text" class="sheet-numlocked" name="attr_perception_mod" value="0" readonly/></div>
|
|
<div class="sheet-col-1-16"><input type="number" class="sheet-numlocked sheet-spinhide" name="attr_perception_gs" value="1" readonly/></div>
|
|
<div class="sheet-col-1-16"><input type="number" class="sheet-numlocked sheet-spinhide" name="attr_perception_tf" value="20" readonly/></div>
|
|
<div class="sheet-col-1-8">
|
|
<select name="attr_perceptionadvantage">
|
|
<option value="2d20cs=1cf=20kl1">ADV</option>
|
|
<option value="1d20cs=1cf=20" selected>NO</option>
|
|
<option value="2d20cs=1cf=20kh1">DIS</option>
|
|
</select>
|
|
</div>
|
|
<div class="sheet-col-1-12">
|
|
<input type="number" name="attr_perception_rollmod" value="0" step="1">
|
|
</div>
|
|
<div class="sheet-col-1-16">
|
|
<button type="roll" name="roll_Per" value="@{whisper} &{template:5eDefault} {{ability=1}} {{title=Perception Check}} {{subheader=@{character_name}}} {{difference=[[ [[{@{perception}[Attribute] +(@{perception_rollmod}[RollModifier]), 19}kl1]] - [[@{perceptionadvantage}]] ]]}} {{target=$[[0]]}} {{roll=$[[1]]}} {{gsresult=[[ {( @{perception} + @{perception_rollmod} )/2} ]]}} {{tfresult=[[ {[[floor( ([[ {( @{perception} + @{perception_rollmod} ), ceil(0+0) }kh1 ]])*1.5 )]], 19}kl1 ]]}}"></button>
|
|
</div>
|
|
<div class="sheet-col-1-4 sheet-tiny-note">Alertness, Detection</div>
|
|
</div>
|
|
|
|
<!-- Willpower -->
|
|
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-12"><input type="number" name="attr_willpower" min="1" step="1" value="10"/></div>
|
|
<div class="sheet-col-1-12"><input type="number" name="attr_willpower_max" min="1" step="1" value="10"/></div>
|
|
<div class="sheet-col-1-10 sheet-core-stat-label">Will</div>
|
|
<div class="sheet-col-1-16"><input type="text" class="sheet-numlocked" name="attr_willpower_mod" value="0" readonly/></div>
|
|
<div class="sheet-col-1-16"><input type="number" class="sheet-numlocked sheet-spinhide" name="attr_willpower_gs" value="1" readonly/></div>
|
|
<div class="sheet-col-1-16"><input type="number" class="sheet-numlocked sheet-spinhide" name="attr_willpower_tf" value="20" readonly/></div>
|
|
<div class="sheet-col-1-8">
|
|
<select name="attr_willpoweradvantage">
|
|
<option value="2d20cs=1cf=20kl1">ADV</option>
|
|
<option value="1d20cs=1cf=20" selected>NO</option>
|
|
<option value="2d20cs=1cf=20kh1">DIS</option>
|
|
</select>
|
|
</div>
|
|
<div class="sheet-col-1-12">
|
|
<input type="number" name="attr_willpower_rollmod" value="0" step="1">
|
|
</div>
|
|
<div class="sheet-col-1-16">
|
|
<button type="roll" name="roll_Will" value="@{whisper} &{template:5eDefault} {{ability=1}} {{title=Willpower Check}} {{subheader=@{character_name}}} {{difference=[[ [[{@{willpower}[Attribute] +(@{willpower_rollmod}[RollModifier]), 19}kl1]] - [[@{willpoweradvantage}]] ]]}} {{target=$[[0]]}} {{roll=$[[1]]}} {{gsresult=[[ {( @{willpower} + @{willpower_rollmod} )/2} ]]}} {{tfresult=[[ {[[floor( ([[ {( @{willpower} + @{willpower_rollmod} ), ceil(0+0) }kh1 ]])*1.5 )]], 19}kl1 ]]}}"></button>
|
|
</div>
|
|
<div class="sheet-col-1-4 sheet-tiny-note">Mental Def, Recovery</div>
|
|
</div>
|
|
|
|
<!-- Charisma -->
|
|
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-12"><input type="number" name="attr_charisma" min="1" step="1" value="10"/></div>
|
|
<div class="sheet-col-1-12"><input type="number" name="attr_charisma_max" min="1" step="1" value="10"/></div>
|
|
<div class="sheet-col-1-10 sheet-core-stat-label">Cha</div>
|
|
<div class="sheet-col-1-16"><input type="text" class="sheet-numlocked" name="attr_charisma_mod" value="0" readonly/></div>
|
|
<div class="sheet-col-1-16"><input type="number" class="sheet-numlocked sheet-spinhide" name="attr_charisma_gs" value="1" readonly/></div>
|
|
<div class="sheet-col-1-16"><input type="number" class="sheet-numlocked sheet-spinhide" name="attr_charisma_tf" value="20" readonly/></div>
|
|
<div class="sheet-col-1-8">
|
|
<select name="attr_charismaadvantage">
|
|
<option value="2d20cs=1cf=20kl1">ADV</option>
|
|
<option value="1d20cs=1cf=20" selected>NO</option>
|
|
<option value="2d20cs=1cf=20kh1">DIS</option>
|
|
</select>
|
|
</div>
|
|
<div class="sheet-col-1-12">
|
|
<input type="number" name="attr_charisma_rollmod" value="0" step="1">
|
|
</div>
|
|
<div class="sheet-col-1-16">
|
|
<button type="roll" name="roll_Cha" value="@{whisper} &{template:5eDefault} {{ability=1}} {{title=Charisma Check}} {{subheader=@{character_name}}} {{difference=[[ [[{@{charisma}[Attribute] +(@{charisma_rollmod}[RollModifier]), 19}kl1]] - [[@{charismaadvantage}]] ]]}} {{target=$[[0]]}} {{roll=$[[1]]}} {{gsresult=[[ {( @{charisma} + @{charisma_rollmod} )/2} ]]}} {{tfresult=[[ {[[floor( ([[ {( @{charisma} + @{charisma_rollmod} ), ceil(0+0) }kh1 ]])*1.5 )]], 19}kl1 ]]}}"></button>
|
|
</div>
|
|
<div class="sheet-col-1-4 sheet-tiny-note">Influence, Morale</div>
|
|
</div>
|
|
|
|
<!-- Luck -->
|
|
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-12"><input type="number" name="attr_luck" min="1" step="1" value="10"/></div>
|
|
<div class="sheet-col-1-12"><input type="number" name="attr_luck_max" min="1" step="1" value="10"/></div>
|
|
<div class="sheet-col-1-10 sheet-luck-stat-label">Luck</div>
|
|
<div class="sheet-col-3-16">
|
|
<select name="attr_luckvs">
|
|
<option value="1" selected>Luck Check</option>
|
|
<option value="2">(STR) Save</option>
|
|
<option value="3">(DEX) Save</option>
|
|
<option value="4">(CON) Save</option>
|
|
<option value="5">(INT) Save</option>
|
|
<option value="6">(PER) Save</option>
|
|
<option value="7">(WILL) Save</option>
|
|
<option value="8">(CHA) Save</option>
|
|
</select>
|
|
</div>
|
|
<div class="sheet-col-1-8">
|
|
<select name="attr_luckadvantage">
|
|
<option value="2d20cs=1cf=20kl1">ADV</option>
|
|
<option value="1d20cs=1cf=20" selected>NO</option>
|
|
<option value="2d20cs=1cf=20kh1">DIS</option>
|
|
</select>
|
|
</div>
|
|
<div class="sheet-col-1-12">
|
|
<input type="number" name="attr_luck_rollmod" value="0" step="1">
|
|
</div>
|
|
<div class="sheet-col-1-16">
|
|
<input class="sheet-hide-it" type="text" name="attr_lucksave_title" value="Luck Check">
|
|
<input class="sheet-hide-it" type="text" name="attr_lucksave_mod" value="0">
|
|
<button type="roll" name="roll_Luck" value="@{whisper} &{template:5eDefault} {{ability=1}} {{title=@{lucksave_title}}} {{subheader=@{character_name}}} {{difference=[[[[{[[{(@{luck} + @{luck_rollmod}), ceil(@{level}/2)}kh1]][LuckBase] + @{lucksave_mod}[AttributeModifier], 19}kl1]] - [[@{luckadvantage}]]]]}} {{target=$[[1]]}} {{roll=$[[2]]}} {{gsresult=[[ {( {(@{luck} + @{luck_rollmod}), ceil(@{level}/2)}kh1 )/2} ]]}} {{tfresult=[[ {[[floor( ([[ {( [[ {(@{luck} + @{luck_rollmod}), ceil(@{level}/2)}kh1 ]] ), ceil(0+0) }kh1 ]])*1.5 )]], 19}kl1 ]]}}"></button>
|
|
</div>
|
|
<div class="sheet-col-1-4 sheet-tiny-note">Saves, Exploits</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Skills -->
|
|
|
|
<div class="sheet-col-5-12">
|
|
<h4 class="sheet-center">Skills</h4>
|
|
<div class="sheet-row sheet-sub-header">
|
|
<div class="sheet-col-7-15 sheet-center sheet-small-label">Skill Name</div>
|
|
<div class="sheet-col-1-6 sheet-center sheet-small-label">Attribute</div>
|
|
<div class="sheet-col-1-6 sheet-center sheet-small-label">Advantage</div>
|
|
<div class="sheet-col-1-10 sheet-center sheet-small-label">Modifier</div>
|
|
<div class="sheet-col-1-10 sheet-center sheet-small-label">Roll</div>
|
|
</div>
|
|
<fieldset class="repeating_skills">
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-7-15">
|
|
<input type="text" name="attr_skillname">
|
|
</div>
|
|
<div class="sheet-col-1-6">
|
|
<select name="attr_skilltype">
|
|
<option value="STR" selected>STR</option>
|
|
<option value="DEX">DEX</option>
|
|
<option value="CON">CON</option>
|
|
<option value="INT">INT</option>
|
|
<option value="PER">PER</option>
|
|
<option value="WILL">WILL</option>
|
|
<option value="CHA">CHA</option>
|
|
<option value="LUCK">LUCK</option>
|
|
</select>
|
|
</div>
|
|
<input type="hidden" name="attr_skilltarget" value="@{strength}" readonly>
|
|
<div class="sheet-col-1-6">
|
|
<select name="attr_skilladvantage">
|
|
<option value="2d20cs=1cf=20kl1">ADV</option>
|
|
<option value="1d20cs=1cf=20" selected>NO</option>
|
|
<option value="2d20cs=1cf=20kh1">DIS</option>
|
|
</select>
|
|
</div>
|
|
<div class="sheet-col-1-10">
|
|
<input type="number" name="attr_skillmod" value="0" step="1">
|
|
</div>
|
|
<div class="sheet-col-1-10 sheet-center">
|
|
<button type="roll" name="roll_Skill" value="@{whisper} &{template:5eDefault} {{ability=1}} {{title=@{skillname} Check (@{skilltype})}} {{subheader=@{character_name}}} {{difference=[[ [[{@{skilltarget}[Attribute] + 1 + (@{skillmod}[Modifier]), 19}kl1]] - [[@{skilladvantage}]] ]]}} {{target=$[[0]]}} {{roll=$[[1]]}} {{gsresult=[[{(@{skilltarget}+1+@{skillmod})/2}]]}} {{tfresult=[[ {[[floor( ([[ {( @{skilltarget} + 1 + (@{skillmod}) ), ceil(0+0) }kh1 ]])*1.5 )]], 19}kl1 ]]}}"></button>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
<!----------------------------------------------------------->
|
|
|
|
<!-- Features -->
|
|
|
|
<div class="sheet-section-class">
|
|
<span class="sheet-spacer"></span>
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1">
|
|
<h4 class="sheet-center">Features</h4>
|
|
<div class="sheet-row sheet-sub-header">
|
|
<div class="sheet-col-1-6 sheet-center sheet-small-label">Feature Name / Uses</div>
|
|
<div class="sheet-col-5-6 sheet-center sheet-small-label">Feature Description</div>
|
|
</div>
|
|
<fieldset class="repeating_features">
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-6">
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1">
|
|
<div class="sheet-auto-expand">
|
|
<span name="attr_featurename"></span>
|
|
<textarea class="sheet-auto-expand" spellcheck="false" name="attr_featurename"></textarea>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-3-10">
|
|
<input type="number" name="attr_feature_uses" min="0" step="1" value="0"/>
|
|
</div>
|
|
<div class="sheet-col-1-10 sheet-padt sheet-tiny-note">
|
|
/
|
|
</div>
|
|
<div class="sheet-col-3-10">
|
|
<input type="number" name="attr_feature_uses_max" min="0" step="1" value="0"/>
|
|
</div>
|
|
<div class="sheet-col-1-4">
|
|
<button class="sheet-chat-roll" type="roll" name="roll_Feature" value="@{whisper} &{template:5eDefault} {{feature=1}} {{featuresubheader=@{character_name}}} {{featureuses=@{feature_uses}}} {{featureusesmax=@{feature_uses|max}}} {{featureusesmaxnum=[[@{feature_uses|max}]]}} {{title=@{featurename}}} {{featureshowdesc=@{featuredescr}}}"></button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-col-5-6">
|
|
<div class="sheet-auto-expand">
|
|
<span name="attr_featuredescr"></span>
|
|
<textarea class="sheet-auto-expand" spellcheck="false" name="attr_featuredescr"></textarea>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<!----------------------------------------------------------->
|
|
|
|
<!-- Combat -->
|
|
|
|
<div class="sheet-section-combat">
|
|
<span class="sheet-spacer"></span>
|
|
<div class="sheet-col-1">
|
|
|
|
<!-- Melee Attacks -->
|
|
|
|
<h4 class="sheet-center">Melee Attacks</h4>
|
|
<div class="sheet-row">
|
|
<div class="sheet-row sheet-sub-header">
|
|
<div class="sheet-col-5-14 sheet-center sheet-small-label sheet-padr">Attack Name</div>
|
|
<div class="sheet-col-1-12 sheet-center sheet-small-label sheet-padr">Attribute</div>
|
|
<div class="sheet-col-1-12 sheet-center sheet-small-label sheet-padr">Advantage</div>
|
|
<div class="sheet-col-1-15 sheet-center sheet-small-label sheet-padr">+Hit</div>
|
|
<div class="sheet-col-1-15 sheet-center sheet-small-label sheet-padr">+Dmg</div>
|
|
<div class="sheet-col-1-8 sheet-center sheet-small-label sheet-padr">Base Dmg</div>
|
|
<div class="sheet-col-1-12 sheet-center sheet-small-label sheet-padr">Crit Range</div>
|
|
<div class="sheet-col-1-12 sheet-center sheet-small-label sheet-padr">
|
|
<div class="sheet-tooltip">Crit Dmg [?]
|
|
<span class="sheet-tooltiptext-right">Maximum damage + attribute modifier + half your level rounded up</span>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-col-1-23 sheet-center sheet-small-label">
|
|
<div class="sheet-tooltip">Roll [?]
|
|
<span class="sheet-tooltiptext-right">Check box to display description in rolls</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<fieldset class="repeating_meleeattacks">
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-5-14 sheet-padr"><input type="text" name="attr_melee_attackname"></div>
|
|
<div class="sheet-col-1-12 sheet-padr">
|
|
<select name="attr_melee_attribute">
|
|
<option value="@{strength_mod}" selected>STR</option>
|
|
<option value="@{dexterity_mod}">DEX</option>
|
|
<option value="@{constitution_mod}">CON</option>
|
|
<option value="@{intelligence_mod}">INT</option>
|
|
<option value="@{perception_mod}">PER</option>
|
|
<option value="@{willpower_mod}">WILL</option>
|
|
<option value="@{charisma_mod}">CHA</option>
|
|
<option value="0">NONE</option>
|
|
</select>
|
|
</div>
|
|
<div class="sheet-col-1-12 sheet-padr">
|
|
<select name="attr_melee_advantage">
|
|
<option value="2d20kh1">ADV</option>
|
|
<option value="1d20" selected>NO</option>
|
|
<option value="2d20kl1">DIS</option>
|
|
</select>
|
|
</div>
|
|
<div class="sheet-col-1-15 sheet-padr"><input type="number" name="attr_melee_hitbonus" value="0" step="1"></div>
|
|
<div class="sheet-col-1-15 sheet-padr"><input type="number" name="attr_melee_dmgbonus" value="0" step="1"></div>
|
|
<div class="sheet-col-1-8 sheet-padr"><input class="sheet-center" type="text" name="attr_melee_dmgbase" value="1d4"></div>
|
|
<div class="sheet-col-1-12 sheet-padr">
|
|
<select name="attr_melee_critrange">
|
|
<option value="" selected>20</option>
|
|
<option value="cs>19">19-20</option>
|
|
<option value="cs>18">18-20</option>
|
|
</select>
|
|
</div>
|
|
<div class="sheet-col-1-12 sheet-padr"><input type="number" name="attr_melee_dmgcrit" value="4"></div>
|
|
<div class="sheet-col-1-24 sheet-padr sheet-center">
|
|
<button type="roll" class="sheet-roll" name="roll_MeleeAttack" value="@{whisper} &{template:5eDefault} {{attack=1}} {{title=@{melee_attackname}}} {{subheader=@{character_name}}} {{attack=[[@{melee_advantage}@{melee_critrange} +@{class_hitbonus}[AttackBonus] +(@{melee_attribute}[AttributeModifier]) +(@{melee_hitbonus}[HitBonus])]]}} {{damage=[[@{melee_dmgbase} +(@{melee_attribute}[Attribute Modifier]) +(@{melee_dmgbonus}[Damage Bonus])]]}} {{19=[[19]]}} {{19check=[[19+@{class_hitbonus}+(@{melee_attribute})+(@{melee_hitbonus})]]}} {{critdamage=[[@{melee_dmgcrit}]]}} @{meleedescr_toggle}"></button>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-19-20 sheet-padr">
|
|
<div class="sheet-auto-expand">
|
|
<span name="attr_melee_description"></span>
|
|
<textarea class="sheet-auto-expand" spellcheck="false" name="attr_melee_description" placeholder="Notes: On a nat 19..."></textarea>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-col-1-24 sheet-center sheet-padr">
|
|
<input type="checkbox" name="attr_meleedescr_toggle" value="@{meleedescr_var}">
|
|
<input type="hidden" name="attr_meleedescr_var" value={{attackdescription=@{melee_description}}}>
|
|
</div>
|
|
</div><hr/>
|
|
</fieldset>
|
|
|
|
<!-- Ranged Attacks -->
|
|
|
|
<div class="sheet-col-1">
|
|
<h4 class="sheet-center">Ranged Attacks</h4>
|
|
<div class="sheet-row">
|
|
<div class="sheet-row sheet-sub-header">
|
|
<div class="sheet-col-3-11 sheet-center sheet-small-label sheet-padr">Attack Name</div>
|
|
<div class="sheet-col-1-12 sheet-center sheet-small-label sheet-padr">Range</div>
|
|
<div class="sheet-col-1-12 sheet-center sheet-small-label sheet-padr">Attribute</div>
|
|
<div class="sheet-col-1-12 sheet-center sheet-small-label sheet-padr">Advantage</div>
|
|
<div class="sheet-col-1-15 sheet-center sheet-small-label sheet-padr">+Hit</div>
|
|
<div class="sheet-col-1-15 sheet-center sheet-small-label sheet-padr">+Dmg</div>
|
|
<div class="sheet-col-1-8 sheet-center sheet-small-label sheet-padr">Base Dmg</div>
|
|
<div class="sheet-col-1-12 sheet-center sheet-small-label sheet-padr">Crit Range</div>
|
|
<div class="sheet-col-1-12 sheet-center sheet-small-label sheet-padr">
|
|
<div class="sheet-tooltip">Crit Dmg [?]
|
|
<span class="sheet-tooltiptext-right">Maximum damage + attribute modifier + half your level rounded up</span>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-col-1-23 sheet-center sheet-small-label">
|
|
<div class="sheet-tooltip">Roll [?]
|
|
<span class="sheet-tooltiptext-right">Check box to display description in rolls</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<fieldset class="repeating_rangedattacks">
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-3-11 sheet-padr"><input type="text" name="attr_range_attackname"></div>
|
|
<div class="sheet-col-1-12 sheet-padr"><input type="text" name="attr_range_distance"></div>
|
|
<div class="sheet-col-1-12 sheet-padr">
|
|
<select name="attr_range_attribute">
|
|
<option value="@{strength_mod}">STR</option>
|
|
<option value="@{dexterity_mod}" selected>DEX</option>
|
|
<option value="@{constitution_mod}">CON</option>
|
|
<option value="@{intelligence_mod}">INT</option>
|
|
<option value="@{perception_mod}">PER</option>
|
|
<option value="@{willpower_mod}">WILL</option>
|
|
<option value="@{charisma_mod}">CHA</option>
|
|
<option value="0">NONE</option>
|
|
</select>
|
|
</div>
|
|
<div class="sheet-col-1-12 sheet-padr">
|
|
<select name="attr_range_advantage">
|
|
<option value="2d20kh1">ADV</option>
|
|
<option value="1d20" selected>NO</option>
|
|
<option value="2d20kl1">DIS</option>
|
|
</select>
|
|
</div>
|
|
<div class="sheet-col-1-15 sheet-padr"><input type="number" name="attr_range_hitbonus" value="0" step="1"></div>
|
|
<div class="sheet-col-1-15 sheet-padr"><input type="number" name="attr_range_dmgbonus" value="0" step="1"></div>
|
|
<div class="sheet-col-1-8 sheet-padr"><input class="sheet-center" type="text" name="attr_range_dmgbase" value="1d4"></div>
|
|
<div class="sheet-col-1-12 sheet-padr">
|
|
<select name="attr_range_critrange">
|
|
<option value="" selected>20</option>
|
|
<option value="cs>19">19-20</option>
|
|
<option value="cs>18">18-20</option>
|
|
</select>
|
|
</div>
|
|
<div class="sheet-col-1-12 sheet-padr"><input type="number" name="attr_range_dmgcrit" value="4"></div>
|
|
<div class="sheet-col-1-24 sheet-padr sheet-center">
|
|
<button type="roll" class="sheet-roll" name="roll_RangeAttack" value="@{whisper} &{template:5eDefault} {{attack=1}} {{title=@{range_attackname} (Range:@{range_distance})}} {{subheader=@{character_name}}} {{attack=[[@{range_advantage}@{range_critrange} +@{class_hitbonus}[AttackBonus] +(@{range_attribute}[AttributeModifier]) +(@{range_hitbonus}[HitBonus])]]}} {{damage=[[@{range_dmgbase} +(@{range_attribute}[Attribute Modifier]) +(@{range_dmgbonus}[Damage Bonus])]]}} {{19=[[19]]}} {{19check=[[19+@{class_hitbonus}+(@{range_attribute})+(@{range_hitbonus})]]}} {{critdamage=[[@{range_dmgcrit}]]}} @{rangedescr_toggle}"></button>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-19-20 sheet-padr">
|
|
<div class="sheet-auto-expand">
|
|
<span name="attr_range_description"></span>
|
|
<textarea class="sheet-auto-expand" spellcheck="false" name="attr_range_description" placeholder="Notes: On a nat 19..."></textarea>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-col-1-24 sheet-center sheet-padr">
|
|
<input type="checkbox" name="attr_rangedescr_toggle" value="@{rangedescr_var}">
|
|
<input type="hidden" name="attr_rangedescr_var" value={{attackdescription=@{range_description}}}>
|
|
</div>
|
|
</div><hr/>
|
|
<span class="sheet-spacer"></span>
|
|
</fieldset>
|
|
</div>
|
|
<!----------------------------------------------------------->
|
|
|
|
<!-- Spellbook -->
|
|
|
|
<div class="sheet-section-spellbook">
|
|
<span class="sheet-spacer"></span>
|
|
<h4 class="sheet-center">Spellbook</h4>
|
|
<span class="sheet-spacer"></span>
|
|
<input type="checkbox" name="attr_spellpagetab1" class="sheet-tab sheet-spelltab1" value="1" checked/>
|
|
<span class="sheet-tab sheet-spelltab1">Level 1</span>
|
|
<input type="checkbox" name="attr_spellpagetab2" class="sheet-tab sheet-spelltab2" value="1" checked/>
|
|
<span class="sheet-tab sheet-spelltab2">Level 2</span>
|
|
<input type="checkbox" name="attr_spellpagetab3" class="sheet-tab sheet-spelltab3" value="1" checked/>
|
|
<span class="sheet-tab sheet-spelltab3">Level 3</span>
|
|
<input type="checkbox" name="attr_spellpagetab4" class="sheet-tab sheet-spelltab4" value="1" checked/>
|
|
<span class="sheet-tab sheet-spelltab4">Level 4</span>
|
|
<input type="checkbox" name="attr_spellpagetab5" class="sheet-tab sheet-spelltab5" value="1" checked/>
|
|
<span class="sheet-tab sheet-spelltab5">Level 5</span>
|
|
<input type="checkbox" name="attr_spellpagetab6" class="sheet-tab sheet-spelltab6" value="1" checked/>
|
|
<span class="sheet-tab sheet-spelltab6">Level 6</span>
|
|
<input type="checkbox" name="attr_spellpagetaball" class="sheet-tab sheet-spelltaball" value="1" checked/>
|
|
<span class="sheet-tab sheet-spelltaball">Show/Hide All</span>
|
|
<span class="sheet-spacer"></span>
|
|
<!-- BEGIN SPELL PAGES -->
|
|
<!-- BEGIN new spell page -->
|
|
<div class="sheet-spell-page1">
|
|
<div class="sheet-row sheet-sub-header">
|
|
<div class="sheet-col-1 sheet-center sheet-small-label">
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-6-7">
|
|
Level 1
|
|
</div>
|
|
<div class="sheet-col-1-7">
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-3"><input type="number" name="attr_spellscast1" value="0" min="0" step="1"/></div>
|
|
<div class="sheet-col-1-24">/</div>
|
|
<div class="sheet-col-1-3"><input type="number" name="attr_spellscast1_max" value="0" min="0" step="1"/></div>
|
|
<div class="sheet-col-7-24 sheet-small-label">Spells Cast</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<fieldset class="repeating_spellbooklevel1">
|
|
<!-- BEGIN spell row -->
|
|
<span class="sheet-spacer"></span>
|
|
<div class="sheet-margin-bottom sheet-padr sheet-padl">
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-8 sheet-vert-bottom sheet-center sheet-small-label">Spell Level</div>
|
|
<div class="sheet-col-13-24 sheet-vert-bottom sheet-center sheet-small-label">Spell Name</div>
|
|
<div class="sheet-col-1-8 sheet-vert-bottom sheet-center sheet-small-label">Range</div>
|
|
<div class="sheet-col-1-8 sheet-vert-bottom sheet-center sheet-small-label">Duration</div>
|
|
<div class="sheet-col-1-12 sheet-vert-bottom sheet-center sheet-small-label">Roll</div>
|
|
</div>
|
|
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-8 sheet-vert-middle sheet-center">Level 1<input type="hidden" name="attr_spellbaselevel" value="1"></div>
|
|
<div class="sheet-col-13-24 sheet-vert-middle"><input type="text" name="attr_spellname"></div>
|
|
<div class="sheet-col-1-8 sheet-vert-middle"><input type="text" name="attr_spellrange"></div>
|
|
<div class="sheet-col-1-8 sheet-vert-middle"><input type="text" name="attr_spellduration"></div>
|
|
<div class="sheet-col-1-12 sheet-center">
|
|
<button type="roll" class="sheet-roll" name="roll_SpellCast" value="@{whisper} &{template:5eDefault} {{spell=1}} {{spellshowinfoblock=1}} {{spellshowdesc=1}} {{title=@{spellname}}} {{subheader=@{character_name}}} {{subheaderright=Level @{spellbaselevel} Spell • @{spellscast1}/@{spellscast1|max}}} {{spellduration=@{spellduration}}} {{spellrange=@{spellrange}}} {{spelldescription=@{spelldescr}}} {{ddmrequest=[Dark & Dangerous Magic Roll](~@{character_id}|DDM)}}"></button>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1">
|
|
<div class="sheet-auto-expand">
|
|
<span name="attr_spelldescr"></span>
|
|
<textarea class="sheet-auto-expand" spellcheck="false" name="attr_spelldescr" placeholder="Spell Description and Effects..."></textarea>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<span class="sheet-spacer"></span>
|
|
</div>
|
|
<!-- END spell row -->
|
|
</fieldset>
|
|
</div>
|
|
<!-- END spell page -->
|
|
<!-- BEGIN new spell page -->
|
|
<div class="sheet-spell-page2">
|
|
<div class="sheet-row sheet-sub-header">
|
|
<div class="sheet-col-1 sheet-vert-bottom sheet-center sheet-small-label">
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-6-7">
|
|
Level 2
|
|
</div>
|
|
<div class="sheet-col-1-7">
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-3"><input type="number" name="attr_spellscast2" value="0" min="0" step="1"/></div>
|
|
<div class="sheet-col-1-24">/</div>
|
|
<div class="sheet-col-1-3"><input type="number" name="attr_spellscast2_max" value="0" min="0" step="1"/></div>
|
|
<div class="sheet-col-7-24 sheet-small-label">Spells Cast</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<fieldset class="repeating_spellbooklevel2">
|
|
<!-- BEGIN spell row -->
|
|
<span class="sheet-spacer"></span>
|
|
<div class="sheet-margin-bottom sheet-padr sheet-padl">
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-8 sheet-vert-bottom sheet-center sheet-small-label">Spell Level</div>
|
|
<div class="sheet-col-13-24 sheet-vert-bottom sheet-center sheet-small-label">Spell Name</div>
|
|
<div class="sheet-col-1-8 sheet-vert-bottom sheet-center sheet-small-label">Range</div>
|
|
<div class="sheet-col-1-8 sheet-vert-bottom sheet-center sheet-small-label">Duration</div>
|
|
<div class="sheet-col-1-12 sheet-vert-bottom sheet-center sheet-small-label">Roll</div>
|
|
</div>
|
|
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-8 sheet-vert-middle sheet-center">Level 2<input type="hidden" name="attr_spellbaselevel" value="2"></div>
|
|
<div class="sheet-col-13-24 sheet-vert-middle"><input type="text" name="attr_spellname"></div>
|
|
<div class="sheet-col-1-8 sheet-vert-middle"><input type="text" name="attr_spellrange"></div>
|
|
<div class="sheet-col-1-8 sheet-vert-middle"><input type="text" name="attr_spellduration"></div>
|
|
<div class="sheet-col-1-12 sheet-center">
|
|
<button type="roll" class="sheet-roll" name="roll_SpellCast" value="@{whisper} &{template:5eDefault} {{spell=1}} {{spellshowinfoblock=1}} {{spellshowdesc=1}} {{title=@{spellname}}} {{subheader=@{character_name}}} {{subheaderright=Level @{spellbaselevel} Spell • @{spellscast2}/@{spellscast2|max}}} {{spellduration=@{spellduration}}} {{spellrange=@{spellrange}}} {{spelldescription=@{spelldescr}}} {{ddmrequest=[Dark & Dangerous Magic Roll](~@{character_id}|DDM)}}"></button>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1">
|
|
<div class="sheet-auto-expand">
|
|
<span name="attr_spelldescr"></span>
|
|
<textarea class="sheet-auto-expand" spellcheck="false" name="attr_spelldescr" placeholder="Spell Description and Effects..."></textarea>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<span class="sheet-spacer"></span>
|
|
</div>
|
|
<!-- END spell row -->
|
|
</fieldset>
|
|
</div>
|
|
<!-- END spell page -->
|
|
<!-- BEGIN new spell page -->
|
|
<div class="sheet-spell-page3">
|
|
<div class="sheet-row sheet-sub-header">
|
|
<div class="sheet-col-1 sheet-vert-bottom sheet-center sheet-small-label">
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-6-7">
|
|
Level 3
|
|
</div>
|
|
<div class="sheet-col-1-7">
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-3"><input type="number" name="attr_spellscast3" value="0" min="0" step="1"/></div>
|
|
<div class="sheet-col-1-24">/</div>
|
|
<div class="sheet-col-1-3"><input type="number" name="attr_spellscast3_max" value="0" min="0" step="1"/></div>
|
|
<div class="sheet-col-7-24 sheet-small-label">Spells Cast</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<fieldset class="repeating_spellbooklevel3">
|
|
<!-- BEGIN spell row -->
|
|
<span class="sheet-spacer"></span>
|
|
<div class="sheet-margin-bottom sheet-padr sheet-padl">
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-8 sheet-vert-bottom sheet-center sheet-small-label">Spell Level</div>
|
|
<div class="sheet-col-13-24 sheet-vert-bottom sheet-center sheet-small-label">Spell Name</div>
|
|
<div class="sheet-col-1-8 sheet-vert-bottom sheet-center sheet-small-label">Range</div>
|
|
<div class="sheet-col-1-8 sheet-vert-bottom sheet-center sheet-small-label">Duration</div>
|
|
<div class="sheet-col-1-12 sheet-vert-bottom sheet-center sheet-small-label">Roll</div>
|
|
</div>
|
|
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-8 sheet-vert-middle sheet-center">Level 3<input type="hidden" name="attr_spellbaselevel" value="3"></div>
|
|
<div class="sheet-col-13-24 sheet-vert-middle"><input type="text" name="attr_spellname"></div>
|
|
<div class="sheet-col-1-8 sheet-vert-middle"><input type="text" name="attr_spellrange"></div>
|
|
<div class="sheet-col-1-8 sheet-vert-middle"><input type="text" name="attr_spellduration"></div>
|
|
<div class="sheet-col-1-12 sheet-center">
|
|
<button type="roll" class="sheet-roll" name="roll_SpellCast" value="@{whisper} &{template:5eDefault} {{spell=1}} {{spellshowinfoblock=1}} {{spellshowdesc=1}} {{title=@{spellname}}} {{subheader=@{character_name}}} {{subheaderright=Level @{spellbaselevel} Spell • @{spellscast3}/@{spellscast3|max}}} {{spellduration=@{spellduration}}} {{spellrange=@{spellrange}}} {{spelldescription=@{spelldescr}}} {{ddmrequest=[Dark & Dangerous Magic Roll](~@{character_id}|DDM)}}"></button>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1">
|
|
<div class="sheet-auto-expand">
|
|
<span name="attr_spelldescr"></span>
|
|
<textarea class="sheet-auto-expand" spellcheck="false" name="attr_spelldescr" placeholder="Spell Description and Effects..."></textarea>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<span class="sheet-spacer"></span>
|
|
</div>
|
|
<!-- END spell row -->
|
|
</fieldset>
|
|
</div>
|
|
<!-- END spell page -->
|
|
<!-- BEGIN new spell page -->
|
|
<div class="sheet-spell-page4">
|
|
<div class="sheet-row sheet-sub-header">
|
|
<div class="sheet-col-1 sheet-vert-bottom sheet-center sheet-small-label">
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-6-7">
|
|
Level 4
|
|
</div>
|
|
<div class="sheet-col-1-7">
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-3"><input type="number" name="attr_spellscast4" value="0" min="0" step="1"/></div>
|
|
<div class="sheet-col-1-24">/</div>
|
|
<div class="sheet-col-1-3"><input type="number" name="attr_spellscast4_max" value="0" min="0" step="1"/></div>
|
|
<div class="sheet-col-7-24 sheet-small-label">Spells Cast</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<fieldset class="repeating_spellbooklevel4">
|
|
<!-- BEGIN spell row -->
|
|
<span class="sheet-spacer"></span>
|
|
<div class="sheet-margin-bottom sheet-padr sheet-padl">
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-8 sheet-vert-bottom sheet-center sheet-small-label">Spell Level</div>
|
|
<div class="sheet-col-13-24 sheet-vert-bottom sheet-center sheet-small-label">Spell Name</div>
|
|
<div class="sheet-col-1-8 sheet-vert-bottom sheet-center sheet-small-label">Range</div>
|
|
<div class="sheet-col-1-8 sheet-vert-bottom sheet-center sheet-small-label">Duration</div>
|
|
<div class="sheet-col-1-12 sheet-vert-bottom sheet-center sheet-small-label">Roll</div>
|
|
</div>
|
|
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-8 sheet-vert-middle sheet-center">Level 4<input type="hidden" name="attr_spellbaselevel" value="4"></div>
|
|
<div class="sheet-col-13-24 sheet-vert-middle"><input type="text" name="attr_spellname"></div>
|
|
<div class="sheet-col-1-8 sheet-vert-middle"><input type="text" name="attr_spellrange"></div>
|
|
<div class="sheet-col-1-8 sheet-vert-middle"><input type="text" name="attr_spellduration"></div>
|
|
<div class="sheet-col-1-12 sheet-center">
|
|
<button type="roll" class="sheet-roll" name="roll_SpellCast" value="@{whisper} &{template:5eDefault} {{spell=1}} {{spellshowinfoblock=1}} {{spellshowdesc=1}} {{title=@{spellname}}} {{subheader=@{character_name}}} {{subheaderright=Level @{spellbaselevel} Spell • @{spellscast4}/@{spellscast4|max}}} {{spellduration=@{spellduration}}} {{spellrange=@{spellrange}}} {{spelldescription=@{spelldescr}}} {{ddmrequest=[Dark & Dangerous Magic Roll](~@{character_id}|DDM)}}"></button>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1">
|
|
<div class="sheet-auto-expand">
|
|
<span name="attr_spelldescr"></span>
|
|
<textarea class="sheet-auto-expand" spellcheck="false" name="attr_spelldescr" placeholder="Spell Description and Effects..."></textarea>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<span class="sheet-spacer"></span>
|
|
</div>
|
|
<!-- END spell row -->
|
|
</fieldset>
|
|
</div>
|
|
<!-- END spell page -->
|
|
<!-- BEGIN new spell page -->
|
|
<div class="sheet-spell-page5">
|
|
<div class="sheet-row sheet-sub-header">
|
|
<div class="sheet-col-1 sheet-vert-bottom sheet-center sheet-small-label">
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-6-7">Level 5</div>
|
|
<div class="sheet-col-1-7">
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-3"><input type="number" name="attr_spellscast5" value="0" min="0" step="1"/></div>
|
|
<div class="sheet-col-1-24">/</div>
|
|
<div class="sheet-col-1-3"><input type="number" name="attr_spellscast5_max" value="0" min="0" step="1"/></div>
|
|
<div class="sheet-col-7-24 sheet-small-label">Spells Cast</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<fieldset class="repeating_spellbooklevel5">
|
|
<!-- BEGIN spell row -->
|
|
<span class="sheet-spacer"></span>
|
|
<div class="sheet-margin-bottom sheet-padr sheet-padl">
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-8 sheet-vert-bottom sheet-center sheet-small-label">Spell Level</div>
|
|
<div class="sheet-col-13-24 sheet-vert-bottom sheet-center sheet-small-label">Spell Name</div>
|
|
<div class="sheet-col-1-8 sheet-vert-bottom sheet-center sheet-small-label">Range</div>
|
|
<div class="sheet-col-1-8 sheet-vert-bottom sheet-center sheet-small-label">Duration</div>
|
|
<div class="sheet-col-1-12 sheet-vert-bottom sheet-center sheet-small-label">Roll</div>
|
|
</div>
|
|
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-8 sheet-vert-middle sheet-center">Level 5<input type="hidden" name="attr_spellbaselevel" value="5"></div>
|
|
<div class="sheet-col-13-24 sheet-vert-middle"><input type="text" name="attr_spellname"></div>
|
|
<div class="sheet-col-1-8 sheet-vert-middle"><input type="text" name="attr_spellrange"></div>
|
|
<div class="sheet-col-1-8 sheet-vert-middle"><input type="text" name="attr_spellduration"></div>
|
|
<div class="sheet-col-1-12 sheet-center">
|
|
<button type="roll" class="sheet-roll" name="roll_SpellCast" value="@{whisper} &{template:5eDefault} {{spell=1}} {{spellshowinfoblock=1}} {{spellshowdesc=1}} {{title=@{spellname}}} {{subheader=@{character_name}}} {{subheaderright=Level @{spellbaselevel} Spell • @{spellscast5}/@{spellscast5|max}}} {{spellduration=@{spellduration}}} {{spellrange=@{spellrange}}} {{spelldescription=@{spelldescr}}} {{ddmrequest=[Dark & Dangerous Magic Roll](~@{character_id}|DDM)}}"></button>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1">
|
|
<div class="sheet-auto-expand">
|
|
<span name="attr_spelldescr"></span>
|
|
<textarea class="sheet-auto-expand" spellcheck="false" name="attr_spelldescr" placeholder="Spell Description and Effects..."></textarea>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<span class="sheet-spacer"></span>
|
|
</div>
|
|
<!-- END spell row -->
|
|
</fieldset>
|
|
</div>
|
|
<!-- END spell page -->
|
|
<!-- BEGIN new spell page -->
|
|
<div class="sheet-spell-page6">
|
|
<div class="sheet-row sheet-sub-header">
|
|
<div class="sheet-col-1 sheet-vert-bottom sheet-center sheet-small-label">
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-6-7">Level 6</div>
|
|
<div class="sheet-col-1-7">
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-3"><input type="number" name="attr_spellscast6" value="0" min="0" step="1"/></div>
|
|
<div class="sheet-col-1-24">/</div>
|
|
<div class="sheet-col-1-3"><input type="number" name="attr_spellscast6_max" value="0" min="0" step="1"/></div>
|
|
<div class="sheet-col-7-24 sheet-small-label">Spells Cast</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<fieldset class="repeating_spellbooklevel6">
|
|
<!-- BEGIN spell row -->
|
|
<span class="sheet-spacer"></span>
|
|
<div class="sheet-margin-bottom sheet-padr sheet-padl">
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-8 sheet-vert-bottom sheet-center sheet-small-label">Spell Level</div>
|
|
<div class="sheet-col-13-24 sheet-vert-bottom sheet-center sheet-small-label">Spell Name</div>
|
|
<div class="sheet-col-1-8 sheet-vert-bottom sheet-center sheet-small-label">Range</div>
|
|
<div class="sheet-col-1-8 sheet-vert-bottom sheet-center sheet-small-label">Duration</div>
|
|
<div class="sheet-col-1-12 sheet-vert-bottom sheet-center sheet-small-label">Roll</div>
|
|
</div>
|
|
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-8 sheet-vert-middle sheet-center">Level 6<input type="hidden" name="attr_spellbaselevel" value="6"></div>
|
|
<div class="sheet-col-13-24 sheet-vert-middle"><input type="text" name="attr_spellname"></div>
|
|
<div class="sheet-col-1-8 sheet-vert-middle"><input type="text" name="attr_spellrange"></div>
|
|
<div class="sheet-col-1-8 sheet-vert-middle"><input type="text" name="attr_spellduration"></div>
|
|
<div class="sheet-col-1-12 sheet-center">
|
|
<button type="roll" class="sheet-roll" name="roll_SpellCast" value="@{whisper} &{template:5eDefault} {{spell=1}} {{spellshowinfoblock=1}} {{spellshowdesc=1}} {{title=@{spellname}}} {{subheader=@{character_name}}} {{subheaderright=Level @{spellbaselevel} Spell • @{spellscast6}/@{spellscast6|max}}} {{spellduration=@{spellduration}}} {{spellrange=@{spellrange}}} {{spelldescription=@{spelldescr}}} {{ddmrequest=[Dark & Dangerous Magic Roll](~@{character_id}|DDM)}}"></button>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1">
|
|
<div class="sheet-auto-expand">
|
|
<span name="attr_spelldescr"></span>
|
|
<textarea class="sheet-auto-expand" spellcheck="false" name="attr_spelldescr" placeholder="Spell Description and Effects..."></textarea>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<span class="sheet-spacer"></span>
|
|
</div>
|
|
<!-- END spell row -->
|
|
</fieldset>
|
|
</div>
|
|
<!-- END spell page -->
|
|
<!-- END AUTO GENERATED SPELL PAGES -->
|
|
</div>
|
|
<!----------------------------------------------------------->
|
|
|
|
<!--Inventory -->
|
|
|
|
<div class="sheet-section-inventory">
|
|
<span class="sheet-spacer"></span>
|
|
<div class="sheet-row">
|
|
<!-- Loot-->
|
|
<div class="sheet-col-1-2 sheet-padr">
|
|
<h4 class="sheet-center">Coin</h4>
|
|
<div class="sheet-row sheet-sub-header">
|
|
<div class="sheet-col-1-6 sheet-center sheet-small-label">CP</div>
|
|
<div class="sheet-col-1-6 sheet-center sheet-small-label">SP</div>
|
|
<div class="sheet-col-1-6 sheet-center sheet-small-label">EP</div>
|
|
<div class="sheet-col-1-6 sheet-center sheet-small-label">GP</div>
|
|
<div class="sheet-col-1-6 sheet-center sheet-small-label">PP</div>
|
|
<div class="sheet-col-1-6 sheet-center sheet-small-label">Total (GP)</div>
|
|
</div>
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-6" title="Copper Pieces"><input type="number" name="attr_cp" value="0" min="0" step="1"></div>
|
|
<div class="sheet-col-1-6" title="Silver Pieces"><input type="number" name="attr_sp" value="0" min="0" step="1"></div>
|
|
<div class="sheet-col-1-6" title="Electrum Pieces"><input type="number" name="attr_ep" value="0" min="0" step="1"></div>
|
|
<div class="sheet-col-1-6" title="Gold Pieces"><input type="number" name="attr_gp" value="0" min="0" step="1"></div>
|
|
<div class="sheet-col-1-6" title="Platinum Pieces"><input type="number" name="attr_pp" value="0" min="0" step="1"></div>
|
|
<div class="sheet-col-1-6" title="Total (in Gold Pieces)"><input type="number" name="attr_money_total_gp" value="(@{cp} / 100) + (@{sp} / 10) + (@{ep} / 2) + @{gp} + (@{pp} * 5) " disabled="disabled"></div>
|
|
</div>
|
|
<h4 class="sheet-center">Treasure/Loot/Inventory Notes</h4>
|
|
<div class="sheet-row sheet-padr">
|
|
<textarea name="attr_lootnotes"></textarea>
|
|
</div>
|
|
</div>
|
|
<!-- Inventory Locations -->
|
|
<div class="sheet-col-1-2">
|
|
<h4 class="sheet-center">Inventory Locations</h4>
|
|
<div class="sheet-row sheet-sub-header">
|
|
<div class="sheet-col-1-8 sheet-center sheet-small-label sheet-padl">Tab</div>
|
|
<div class="sheet-col-7-8 sheet-center sheet-small-label">Name</div>
|
|
</div>
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-8 sheet-center sheet-padl">1</div>
|
|
<div class="sheet-col-7-8 sheet-center"><input type="text" name="attr_itab1" value="Worn"></div>
|
|
</div>
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-8 sheet-center sheet-padl">2</div>
|
|
<div class="sheet-col-7-8 sheet-center"><input type="text" name="attr_itab2" value="Carried"></div>
|
|
</div>
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-8 sheet-center sheet-padl">3</div>
|
|
<div class="sheet-col-7-8 sheet-center"><input type="text" name="attr_itab3" value="Backpack"></div>
|
|
</div>
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-8 sheet-center sheet-padl">4</div>
|
|
<div class="sheet-col-7-8 sheet-center"><input type="text" name="attr_itab4" value="Belt pouch"></div>
|
|
</div>
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-8 sheet-center sheet-padl">5</div>
|
|
<div class="sheet-col-7-8 sheet-center"><input type="text" name="attr_itab5" value="Sack large"></div>
|
|
</div>
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-8 sheet-center sheet-padl">6</div>
|
|
<div class="sheet-col-7-8 sheet-center"><input type="text" name="attr_itab6" value="Mount"></div>
|
|
</div>
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1-8 sheet-center sheet-padl">7</div>
|
|
<div class="sheet-col-7-8 sheet-center"><input type="text" name="attr_itab7" value="Other"></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Inventory Tabs -->
|
|
|
|
<h4 class="sheet-center">Inventory</h4>
|
|
<input type="checkbox" name="attr_inventorytab1" class="sheet-tab sheet-inventorytab1" value="1" title="Page 1" />
|
|
<span class="sheet-tab sheet-inventorytab1" name="attr_itab1"></span>
|
|
<input type="checkbox" name="attr_inventorytab2" class="sheet-tab sheet-inventorytab2" value="2" title="Page 2" />
|
|
<span class="sheet-tab sheet-inventorytab2" name="attr_itab2"></span>
|
|
<input type="checkbox" name="attr_inventorytab3" class="sheet-tab sheet-inventorytab3" value="3" title="Page 3" />
|
|
<span class="sheet-tab sheet-inventorytab3" name="attr_itab3"></span>
|
|
<input type="checkbox" name="attr_inventorytab4" class="sheet-tab sheet-inventorytab4" value="4" title="Page 4" />
|
|
<span class="sheet-tab sheet-inventorytab4" name="attr_itab4"></span>
|
|
<input type="checkbox" name="attr_inventorytab5" class="sheet-tab sheet-inventorytab5" value="5" title="Page 5" />
|
|
<span class="sheet-tab sheet-inventorytab5" name="attr_itab5"></span>
|
|
<input type="checkbox" name="attr_inventorytab6" class="sheet-tab sheet-inventorytab6" value="6" title="Page 6" />
|
|
<span class="sheet-tab sheet-inventorytab6" name="attr_itab6"></span>
|
|
<input type="checkbox" name="attr_inventorytab7" class="sheet-tab sheet-inventorytab7" value="7" title="Page 7" />
|
|
<span class="sheet-tab sheet-inventorytab7" name="attr_itab7"></span>
|
|
<span class="sheet-spacer"></span>
|
|
|
|
<!-- Inventory Page 1 -->
|
|
<div class="sheet-inventory-page1">
|
|
<div class="sheet-row sheet-sub-header">
|
|
<div class="sheet-col-1 sheet-center sheet-small-label sheet-padl"><span name="attr_itab1"></span></div>
|
|
<div class="sheet-col-1-4 sheet-center sheet-small-label sheet-padl">Name</div>
|
|
<div class="sheet-col-2-21 sheet-center sheet-small-label">Qty</div>
|
|
<div class="sheet-col-2-21 sheet-center sheet-small-label">Uses</div>
|
|
<div class="sheet-col-13-24 sheet-center sheet-small-label sheet-padl">Notes</div>
|
|
</div>
|
|
<fieldset class="repeating_inventtab1">
|
|
<div class="sheet-row sheet-padb">
|
|
<div class="sheet-col-1-4 sheet-left">
|
|
<div class="sheet-auto-expand">
|
|
<span name="attr_itemname"></span>
|
|
<textarea class="sheet-auto-expand" spellcheck="false" name="attr_itemname"></textarea>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-col-2-21 sheet-padl sheet-center"><input type="number" name="attr_itemquantity"></div>
|
|
<div class="sheet-col-2-21 sheet-padl sheet-center"><input type="number" name="attr_itemuses"></div>
|
|
<div class="sheet-col-13-24 sheet-padl sheet-left">
|
|
<div class="sheet-auto-expand">
|
|
<span name="attr_itemdesc"></span>
|
|
<textarea class="sheet-auto-expand" spellcheck="false" name="attr_itemdesc"></textarea>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
|
|
<!-- Inventory Page 2 -->
|
|
<div class="sheet-inventory-page2">
|
|
<div class="sheet-row sheet-sub-header">
|
|
<div class="sheet-col-1 sheet-center sheet-small-label sheet-padl"><span name="attr_itab2"></span></div>
|
|
<div class="sheet-col-1-4 sheet-center sheet-small-label sheet-padl">Name</div>
|
|
<div class="sheet-col-2-21 sheet-center sheet-small-label">Qty</div>
|
|
<div class="sheet-col-2-21 sheet-center sheet-small-label">Uses</div>
|
|
<div class="sheet-col-13-24 sheet-center sheet-small-label sheet-padl">Notes</div>
|
|
</div>
|
|
<fieldset class="repeating_inventtab2">
|
|
<div class="sheet-row sheet-padb">
|
|
<div class="sheet-col-1-4 sheet-left">
|
|
<div class="sheet-auto-expand">
|
|
<span name="attr_itemname"></span>
|
|
<textarea class="sheet-auto-expand" spellcheck="false" name="attr_itemname"></textarea>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-col-2-21 sheet-padl sheet-center"><input type="number" name="attr_itemquantity"></div>
|
|
<div class="sheet-col-2-21 sheet-padl sheet-center"><input type="number" name="attr_itemuses"></div>
|
|
<div class="sheet-col-13-24 sheet-padl sheet-left">
|
|
<div class="sheet-auto-expand">
|
|
<span name="attr_itemdesc"></span>
|
|
<textarea class="sheet-auto-expand" spellcheck="false" name="attr_itemdesc"></textarea>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
|
|
<!-- Inventory Page 3 -->
|
|
<div class="sheet-inventory-page3">
|
|
<div class="sheet-row sheet-sub-header">
|
|
<div class="sheet-col-1 sheet-center sheet-small-label sheet-padl"><span name="attr_itab3"></span></div>
|
|
<div class="sheet-col-1-4 sheet-center sheet-small-label sheet-padl">Name</div>
|
|
<div class="sheet-col-2-21 sheet-center sheet-small-label">Qty</div>
|
|
<div class="sheet-col-2-21 sheet-center sheet-small-label">Uses</div>
|
|
<div class="sheet-col-13-24 sheet-center sheet-small-label sheet-padl">Notes</div>
|
|
</div>
|
|
<fieldset class="repeating_inventtab3">
|
|
<div class="sheet-row sheet-padb">
|
|
<div class="sheet-col-1-4 sheet-left">
|
|
<div class="sheet-auto-expand">
|
|
<span name="attr_itemname"></span>
|
|
<textarea class="sheet-auto-expand" spellcheck="false" name="attr_itemname"></textarea>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-col-2-21 sheet-padl sheet-center"><input type="number" name="attr_itemquantity"></div>
|
|
<div class="sheet-col-2-21 sheet-padl sheet-center"><input type="number" name="attr_itemuses"></div>
|
|
<div class="sheet-col-13-24 sheet-padl sheet-left">
|
|
<div class="sheet-auto-expand">
|
|
<span name="attr_itemdesc"></span>
|
|
<textarea class="sheet-auto-expand" spellcheck="false" name="attr_itemdesc"></textarea>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
|
|
<!-- Inventory Page 4 -->
|
|
<div class="sheet-inventory-page4">
|
|
<div class="sheet-row sheet-sub-header">
|
|
<div class="sheet-col-1 sheet-center sheet-small-label sheet-padl"><span name="attr_itab4"></span></div>
|
|
<div class="sheet-col-1-4 sheet-center sheet-small-label sheet-padl">Name</div>
|
|
<div class="sheet-col-2-21 sheet-center sheet-small-label">Qty</div>
|
|
<div class="sheet-col-2-21 sheet-center sheet-small-label">Uses</div>
|
|
<div class="sheet-col-13-24 sheet-center sheet-small-label sheet-padl">Notes</div>
|
|
</div>
|
|
<fieldset class="repeating_inventtab4">
|
|
<div class="sheet-row sheet-padb">
|
|
<div class="sheet-col-1-4 sheet-left">
|
|
<div class="sheet-auto-expand">
|
|
<span name="attr_itemname"></span>
|
|
<textarea class="sheet-auto-expand" spellcheck="false" name="attr_itemname"></textarea>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-col-2-21 sheet-padl sheet-center"><input type="number" name="attr_itemquantity"></div>
|
|
<div class="sheet-col-2-21 sheet-padl sheet-center"><input type="number" name="attr_itemuses"></div>
|
|
<div class="sheet-col-13-24 sheet-padl sheet-left">
|
|
<div class="sheet-auto-expand">
|
|
<span name="attr_itemdesc"></span>
|
|
<textarea class="sheet-auto-expand" spellcheck="false" name="attr_itemdesc"></textarea>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
|
|
<!-- Inventory Page 5 -->
|
|
<div class="sheet-inventory-page5">
|
|
<div class="sheet-row sheet-sub-header">
|
|
<div class="sheet-col-1 sheet-center sheet-small-label sheet-padl"><span name="attr_itab5"></span></div>
|
|
<div class="sheet-col-1-4 sheet-center sheet-small-label sheet-padl">Name</div>
|
|
<div class="sheet-col-2-21 sheet-center sheet-small-label">Qty</div>
|
|
<div class="sheet-col-2-21 sheet-center sheet-small-label">Uses</div>
|
|
<div class="sheet-col-13-24 sheet-center sheet-small-label sheet-padl">Notes</div>
|
|
</div>
|
|
<fieldset class="repeating_inventtab5">
|
|
<div class="sheet-row sheet-padb">
|
|
<div class="sheet-col-1-4 sheet-left">
|
|
<div class="sheet-auto-expand">
|
|
<span name="attr_itemname"></span>
|
|
<textarea class="sheet-auto-expand" spellcheck="false" name="attr_itemname"></textarea>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-col-2-21 sheet-padl sheet-center"><input type="number" name="attr_itemquantity"></div>
|
|
<div class="sheet-col-2-21 sheet-padl sheet-center"><input type="number" name="attr_itemuses"></div>
|
|
<div class="sheet-col-13-24 sheet-padl sheet-left">
|
|
<div class="sheet-auto-expand">
|
|
<span name="attr_itemdesc"></span>
|
|
<textarea class="sheet-auto-expand" spellcheck="false" name="attr_itemdesc"></textarea>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
|
|
<!-- Inventory Page 6 -->
|
|
<div class="sheet-inventory-page6">
|
|
<div class="sheet-row sheet-sub-header">
|
|
<div class="sheet-col-1 sheet-center sheet-small-label sheet-padl"><span name="attr_itab6"></span></div>
|
|
<div class="sheet-col-1-4 sheet-center sheet-small-label sheet-padl">Name</div>
|
|
<div class="sheet-col-2-21 sheet-center sheet-small-label">Qty</div>
|
|
<div class="sheet-col-2-21 sheet-center sheet-small-label">Uses</div>
|
|
<div class="sheet-col-13-24 sheet-center sheet-small-label sheet-padl">Notes</div>
|
|
</div>
|
|
<fieldset class="repeating_inventtab6">
|
|
<div class="sheet-row sheet-padb">
|
|
<div class="sheet-col-1-4 sheet-left">
|
|
<div class="sheet-auto-expand">
|
|
<span name="attr_itemname"></span>
|
|
<textarea class="sheet-auto-expand" spellcheck="false" name="attr_itemname"></textarea>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-col-2-21 sheet-padl sheet-center"><input type="number" name="attr_itemquantity"></div>
|
|
<div class="sheet-col-2-21 sheet-padl sheet-center"><input type="number" name="attr_itemuses"></div>
|
|
<div class="sheet-col-13-24 sheet-padl sheet-left">
|
|
<div class="sheet-auto-expand">
|
|
<span name="attr_itemdesc"></span>
|
|
<textarea class="sheet-auto-expand" spellcheck="false" name="attr_itemdesc"></textarea>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<span class="sheet-spacer"></span>
|
|
</fieldset>
|
|
</div>
|
|
|
|
<!-- Inventory Page 7 -->
|
|
<div class="sheet-inventory-page7">
|
|
<div class="sheet-row sheet-sub-header">
|
|
<div class="sheet-col-1 sheet-center sheet-small-label sheet-padl"><span name="attr_itab7"></span></div>
|
|
<div class="sheet-col-1-4 sheet-center sheet-small-label sheet-padl">Name</div>
|
|
<div class="sheet-col-2-21 sheet-center sheet-small-label">Qty</div>
|
|
<div class="sheet-col-2-21 sheet-center sheet-small-label">Uses</div>
|
|
<div class="sheet-col-13-24 sheet-center sheet-small-label sheet-padl">Notes</div>
|
|
</div>
|
|
<fieldset class="repeating_inventtab7">
|
|
<div class="sheet-row sheet-padb">
|
|
<div class="sheet-col-1-4 sheet-left">
|
|
<div class="sheet-auto-expand">
|
|
<span name="attr_itemname"></span>
|
|
<textarea class="sheet-auto-expand" spellcheck="false" name="attr_itemname"></textarea>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-col-2-21 sheet-padl sheet-center"><input type="number" name="attr_itemquantity"></div>
|
|
<div class="sheet-col-2-21 sheet-padl sheet-center"><input type="number" name="attr_itemuses"></div>
|
|
<div class="sheet-col-13-24 sheet-padl sheet-left">
|
|
<div class="sheet-auto-expand">
|
|
<span name="attr_itemdesc"></span>
|
|
<textarea class="sheet-auto-expand" spellcheck="false" name="attr_itemdesc"></textarea>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
</div>
|
|
<!----------------------------------------------------------->
|
|
|
|
<!-- Conditions -->
|
|
<div class="sheet-section-conditions">
|
|
<span class="sheet-spacer"></span>
|
|
<h4 class="sheet-center">Conditions</h4>
|
|
<div class="sheet-row">
|
|
<div class="sheet-row sheet-sub-header">
|
|
<div class="sheet-col-1-6 sheet-center sheet-small-label">Type/Duration</div>
|
|
<div class="sheet-col-5-6 sheet-center sheet-small-label">Description</div>
|
|
</div>
|
|
<fieldset class="repeating_conditions">
|
|
<div class="sheet-row sheet-padb">
|
|
<div class="sheet-col-1-6">
|
|
<div class="sheet-auto-expand">
|
|
<span name="attr_conditionname"></span>
|
|
<textarea class="sheet-auto-expand" spellcheck="false" name="attr_conditionname" placeholder="Condition..."></textarea>
|
|
</div>
|
|
<div class="sheet-auto-expand">
|
|
<span name="attr_conditionduration"></span>
|
|
<textarea class="sheet-auto-expand" spellcheck="false" name="attr_conditionduration" placeholder="Duration..."></textarea>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-col-5-6">
|
|
<div class="sheet-auto-expand">
|
|
<span name="attr_conditiondescr"></span>
|
|
<textarea class="sheet-auto-expand" spellcheck="false" name="attr_conditiondescr"></textarea>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
</div>
|
|
<!----------------------------------------------------------->
|
|
|
|
<!-- Notes -->
|
|
|
|
<div class="sheet-section-notes">
|
|
<span class="sheet-spacer"></span>
|
|
<h4 class="sheet-center">Notes/Journal</h4>
|
|
<div class="sheet-auto-expand" style="min-height: 200px">
|
|
<span name="attr_notes"></span>
|
|
<textarea class="sheet-auto-expand" spellcheck="false" name="attr_notes"></textarea>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<!----------------------------------------------------------->
|
|
|
|
<!-- Roll Templates -->
|
|
|
|
<rolltemplate class="sheet-rolltemplate-5eDefault">
|
|
<div class="sheet-rt-card">
|
|
<div class="sheet-rt-header{{#attack}} sheet-attack{{/attack}}{{#spell}} sheet-spell{{/spell}}{{#ability}} sheet-ability{{/ability}}{{#save}} sheet-save{{/save}}{{#feature}} sheet-feature{{/feature}}{{#ddm}} sheet-ddm{{/ddm}}">
|
|
<div class="sheet-rt-title">{{title}}</div>
|
|
{{#subheader}}
|
|
<div class="sheet-rt-subheader">{{subheader}}{{#subheaderright}} • {{subheaderright}}{{/subheaderright}}</div>
|
|
{{/subheader}}
|
|
{{#featuresubheader}}
|
|
{{#rollGreater() featureusesmaxnum 0}}
|
|
<div class="sheet-rt-subheader">{{featuresubheader}} • {{featureuses}}/{{featureusesmax}} Uses</div>
|
|
{{/rollGreater() featureusesmaxnum 0}}
|
|
{{#^rollGreater() featureusesmaxnum 0}}
|
|
<div class="sheet-rt-subheader">{{featuresubheader}}</div>
|
|
{{/^rollGreater() featureusesmaxnum 0}}
|
|
{{/featuresubheader}}
|
|
{{#subheader2}}
|
|
<div class="sheet-rt-subheader">{{subheader2}}{{#subheaderright2}} • {{subheaderright2}}{{/subheaderright2}}</div>
|
|
{{/subheader2}}
|
|
</div>
|
|
{{#emote}}
|
|
<p class="sheet-rt-emote">{{character_name}} {{emote}}</p>
|
|
{{/emote}}
|
|
<div class="sheet-main-content">
|
|
{{#initiative}}
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-5-12 sheet-padl sheet-padr sheet-rt-key">Result</div>
|
|
<div class="sheet-col-7-12 sheet-padr sheet-rt-value">{{initiative}}</div>
|
|
</div>
|
|
{{/initiative}}
|
|
|
|
<!-- Ability and Skill Checks -->
|
|
{{#roll}}
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-5-12 sheet-padl sheet-padr sheet-rt-key">Roll</div>
|
|
<div class="sheet-col-7-12 sheet-padr sheet-rt-value">{{roll}}</div>
|
|
</div>
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-5-12 sheet-padl sheet-padr sheet-rt-key">Target</div>
|
|
<div class="sheet-col-7-12 sheet-padr sheet-rt-value">{{target}}</div>
|
|
</div>
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-5-12 sheet-padl sheet-padr sheet-rt-key">Outcome</div>
|
|
{{#rollGreater() roll target}}
|
|
{{#rollGreater() roll tfresult}}
|
|
<div class="sheet-col-7-12 sheet-padr sheet-rt-value" style="color:red;">{{difference}} Terrible Failure!</div>
|
|
{{/rollGreater() roll tfresult}}
|
|
{{#^rollGreater() roll tfresult}}
|
|
<div class="sheet-col-7-12 sheet-padr sheet-rt-value" style="color:red;">{{difference}} Failure!</div>
|
|
{{/^rollGreater() roll tfresult}}
|
|
{{/rollGreater() roll target}}
|
|
|
|
{{#^rollGreater() roll target}}
|
|
{{#rollGreater() roll gsresult}}
|
|
<div class="sheet-col-7-12 sheet-padr sheet-rt-value" style="color:green;">{{difference}} Success!</div>
|
|
{{/rollGreater() roll gsresult}}
|
|
{{#^rollGreater() roll gsresult}}
|
|
<div class="sheet-col-7-12 sheet-padr sheet-rt-value" style="color:green;">{{difference}} Great Success!</div>
|
|
{{/^rollGreater() roll gsresult}}
|
|
{{/^rollGreater() roll target}}
|
|
</div>
|
|
{{/roll}}
|
|
|
|
<!-- Attacks -->
|
|
{{#attack}}
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-5-12 sheet-padl sheet-padr sheet-rt-key">Attack</div>
|
|
{{#rollWasFumble() attack}}
|
|
<div class="sheet-col-7-12 sheet-padr sheet-rt-value" style="color:red;">hits AC {{attack}}, Fumble!</div>
|
|
</div>
|
|
{{/rollWasFumble() attack}}
|
|
{{#^rollWasFumble() attack}}
|
|
{{#rollWasCrit() attack}}
|
|
<div class="sheet-col-7-12 sheet-padr sheet-rt-value" style="color:green;">hits AC {{attack}}, Critical!</div>
|
|
</div>
|
|
{{#rollTotal() attack 19check}}
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-5-12 sheet-padl sheet-padr sheet-rt-key">Nat 19</div>
|
|
<div class="sheet-col-7-12 sheet-padr sheet-rt-value" style="color:green;">{{19}} Trigger!</div>
|
|
</div>
|
|
{{/rollTotal() attack 19check}}
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-5-12 sheet-padl sheet-padr sheet-rt-key">Crit Dmg</div>
|
|
<div class="sheet-col-7-12 sheet-padr sheet-rt-value">{{critdamage}}</div>
|
|
</div>
|
|
{{/rollWasCrit() attack}}
|
|
{{#^rollWasCrit() attack}}
|
|
<div class="sheet-col-7-12 sheet-padr sheet-rt-value">hits AC {{attack}}</div>
|
|
</div>
|
|
{{#rollTotal() attack 19check}}
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-5-12 sheet-padl sheet-padr sheet-rt-key">Nat 19</div>
|
|
<div class="sheet-col-7-12 sheet-padr sheet-rt-value" style="color:green;">{{19}} Trigger!</div>
|
|
</div>
|
|
{{/rollTotal() attack 19check}}
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-5-12 sheet-padl sheet-padr sheet-rt-key">Damage</div>
|
|
<div class="sheet-col-7-12 sheet-padr sheet-rt-value">{{damage}}</div>
|
|
</div>
|
|
{{/^rollWasCrit() attack}}
|
|
{{/^rollWasFumble() attack}}
|
|
{{/attack}}
|
|
|
|
{{#attackdescription}}
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1 sheet-padl sheet-padr sheet-rt-value">{{attackdescription}}</div>
|
|
</div>
|
|
{{/attackdescription}}
|
|
|
|
<!-- DDM -->
|
|
{{#ddm}}
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-5-12 sheet-padl sheet-padr sheet-rt-key">Threshold</div>
|
|
<div class="sheet-col-7-12 sheet-padl sheet-padr sheet-rt-value">{{ddmthreshold}}</div>
|
|
</div>
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-5-12 sheet-padl sheet-padr sheet-rt-key">Result</div>
|
|
{{#rollGreater() ddmroll ddmthreshold}}
|
|
<div class="sheet-col-7-12 sheet-padl sheet-padr sheet-rt-value">{{ddmroll}}</div>
|
|
{{/rollGreater() ddmroll ddmthreshold}}
|
|
{{#^rollGreater() ddmroll ddmthreshold}}
|
|
<div class="sheet-col-7-12 sheet-padl sheet-padr sheet-rt-value" style="color: red;">{{ddmroll}} Trigger!</div>
|
|
{{/^rollGreater() ddmroll ddmthreshold}}
|
|
</div>
|
|
{{/ddm}}
|
|
|
|
<!-- Spellcasting -->
|
|
{{#spellshowinfoblock}}
|
|
<div class="sheet-row sheet-padb">
|
|
<div class="sheet-col-1-2 sheet-padl sheet-padr sheet-center"><span class="sheet-rt-key">Duration</span><br/><span class="sheet-rt-value">{{spellduration}}</span></div>
|
|
<div class="sheet-col-1-2 sheet-padl sheet-padr sheet-center"><span class="sheet-rt-key">Range</span><br/><span class="sheet-rt-value">{{spellrange}}</span></div>
|
|
</div>
|
|
{{/spellshowinfoblock}}
|
|
{{#spellshowattack}}
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-5-12 sheet-padl sheet-padr sheet-rt-key">Attack</div>
|
|
<div class="sheet-col-7-12 sheet-padr sheet-rt-value">{{spellattack}} AC Hit</div>
|
|
</div>
|
|
{{/spellshowattack}}
|
|
{{#spellshowsavethrow}}
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-5-12 sheet-padl sheet-padr sheet-rt-key">Save</div>
|
|
<div class="sheet-col-7-12 sheet-padr sheet-rt-value">{{spellsavestat}}</div>
|
|
</div>
|
|
{{/spellshowsavethrow}}
|
|
{{#spellshowhealing}}
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-5-12 sheet-padl sheet-padr sheet-rt-key">Healing</div>
|
|
<div class="sheet-col-7-12 sheet-padr sheet-rt-value">{{spellhealing}} HP healed</div>
|
|
</div>
|
|
{{/spellshowhealing}}
|
|
{{#spellshowdamage}}
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-5-12 sheet-padl sheet-padr sheet-rt-key">Damage</div>
|
|
<div class="sheet-col-7-12 sheet-padr sheet-rt-value">{{spelldamage}}</div>
|
|
</div>
|
|
{{/spellshowdamage}}
|
|
{{#spellshoweffects}}
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-5-12 sheet-padl sheet-padr sheet-rt-key">Effect</div>
|
|
<div class="sheet-col-7-12 sheet-padr sheet-rt-value">{{spelleffect}}</div>
|
|
</div>
|
|
{{/spellshoweffects}}
|
|
{{#spellshowsavethrow}}
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-5-12 sheet-padl sheet-padr sheet-rt-key">Save success</div>
|
|
<div class="sheet-col-7-12 sheet-padr sheet-rt-value">{{spellsavesuccess}}</div>
|
|
</div>
|
|
{{/spellshowsavethrow}}
|
|
{{#spellshowdesc}}
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1 sheet-padl sheet-padr sheet-rt-key">Spell Description</div>
|
|
<div class="sheet-col-1 sheet-padl sheet-padr sheet-rt-value">{{spelldescription}}</div>
|
|
</div>
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1 sheet-padl sheet-padr sheet-rt-value sheet-center">{{ddmrequest}}</div>
|
|
</div>
|
|
{{/spellshowdesc}}
|
|
{{#featureshowdesc}}
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1 sheet-padl sheet-padr sheet-rt-key">Description</div>
|
|
<div class="sheet-col-1 sheet-padl sheet-padr sheet-rt-value">{{featureshowdesc}}</div>
|
|
</div>
|
|
{{/featureshowdesc}}
|
|
|
|
<!-- NPC -->
|
|
<!-- Generic section -->
|
|
{{#freetext}}
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1 sheet-padl sheet-padr sheet-rt-key-wide">{{freetextname}}</div>
|
|
<div class="sheet-col-1 sheet-padl sheet-padr sheet-rt-value">{{freetext}}</div>
|
|
</div>
|
|
{{/freetext}}
|
|
|
|
<!-- Outputall -->
|
|
{{#outputall}}
|
|
{{#allprops() outputall title subheader subheaderright subheader2 subheaderright2 emote attack spell ability save feature ddm}}
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-5-12 sheet-padl sheet-padr sheet-rt-key">{{key}}</div>
|
|
<div class="sheet-col-7-12 sheet-padr sheet-rt-value">{{value}}</div>
|
|
</div>
|
|
{{/allprops() outputall title subheader subheaderright subheader2 subheaderright2 emote attack spell ability save feature ddm}}
|
|
{{/outputall}}
|
|
{{#chatmenu}}
|
|
{{#allprops() chatmenu title subheader subheaderright subheader2 subheaderright2 emote attack spell ability save feature ddm}}
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-1 sheet-padl sheet-padr sheet-rt-key-wide">{{key}}</div>
|
|
<div class="sheet-col-1 sheet-padl sheet-padr sheet-rt-value">{{value}}</div>
|
|
</div>
|
|
{{/allprops() chatmenu title subheader subheaderright subheader2 subheaderright2 emote attack spell ability save feature ddm}}
|
|
{{/chatmenu}}
|
|
|
|
<!-- DEBUG -->
|
|
{{#debug}}
|
|
{{#allprops()}}
|
|
<div class="sheet-row">
|
|
<div class="sheet-col-5-12 sheet-padl sheet-padr sheet-rt-key">{{key}} (DEBUG)</div>
|
|
<div class="sheet-col-7-12 sheet-padr sheet-rt-value">{{value}}</div>
|
|
</div>
|
|
{{/allprops()}}
|
|
{{/debug}}
|
|
</div>
|
|
</div>
|
|
</rolltemplate>
|
|
<!----------------------------------------------------------->
|
|
|
|
<!-- Sheet workers -->
|
|
|
|
<script type="text/worker">
|
|
|
|
// Toggle whisper
|
|
on("change:tabwgm", function() {
|
|
getAttrs(["tabwgm"], function(values) {
|
|
switch (values.tabwgm) {
|
|
case "0": setAttrs({ whisper: "" });
|
|
break;
|
|
case "1": setAttrs({ whisper: "/w gm " });
|
|
break;
|
|
default: setAttrs({ whisper: "" });
|
|
}
|
|
});
|
|
});
|
|
|
|
// Show/Hide All Spelltabs
|
|
on("change:spellpagetaball", function() {
|
|
getAttrs(["spellpagetaball"], function(values) {
|
|
switch (values.spellpagetaball) {
|
|
case "0":
|
|
setAttrs({ spellpagetab1: 0 });
|
|
setAttrs({ spellpagetab2: 0 });
|
|
setAttrs({ spellpagetab3: 0 });
|
|
setAttrs({ spellpagetab4: 0 });
|
|
setAttrs({ spellpagetab5: 0 });
|
|
setAttrs({ spellpagetab6: 0 });
|
|
break;
|
|
case "1":
|
|
setAttrs({ spellpagetab1: 1 });
|
|
setAttrs({ spellpagetab2: 1 });
|
|
setAttrs({ spellpagetab3: 1 });
|
|
setAttrs({ spellpagetab4: 1 });
|
|
setAttrs({ spellpagetab5: 1 });
|
|
setAttrs({ spellpagetab6: 1 });
|
|
}
|
|
});
|
|
});
|
|
|
|
// Ability modifiers
|
|
['strength', 'dexterity', 'constitution', 'intelligence', 'perception', 'willpower', 'charisma', 'luck'].forEach(ability => {
|
|
on(`sheet:opened change:${ability.toLowerCase()}`, () => {
|
|
getAttrs([ability.toLowerCase()], v => {
|
|
const value = parseInt(v[ability.toLowerCase()]) || 10,
|
|
setting = {};
|
|
setting[`${ability}_gs`] = Math.floor(value/2);
|
|
setting[`${ability}_tf`] = Math.min(Math.floor(value*1.5) + 1, 20);
|
|
if (value <= 4) setting[`${ability}_mod`] = -3;
|
|
else if (value <= 6) setting[`${ability}_mod`] = -2;
|
|
else if (value <= 8) setting[`${ability}_mod`] = -1;
|
|
else if (value <= 12) setting[`${ability}_mod`] = 0;
|
|
else if (value <= 14) setting[`${ability}_mod`] = 1;
|
|
else if (value <= 16) setting[`${ability}_mod`] = 2;
|
|
else if (value <= 18) setting[`${ability}_mod`] = 3;
|
|
else if (value <= 20) setting[`${ability}_mod`] = 4;
|
|
else if (value <= 22) setting[`${ability}_mod`] = 5;
|
|
else if (value <= 24) setting[`${ability}_mod`] = 6;
|
|
else if (value <= 26) setting[`${ability}_mod`] = 7;
|
|
else if (value <= 28) setting[`${ability}_mod`] = 8;
|
|
else if (value <= 30) setting[`${ability}_mod`] = 9;
|
|
else setting[`${ability}_mod`] = 10;
|
|
setAttrs(setting);
|
|
});
|
|
});
|
|
});
|
|
|
|
// Update associated attribute for luck save
|
|
on("change:luckvs", function() {
|
|
getAttrs(["luckvs"], function(values) {
|
|
switch (values.luckvs) {
|
|
case "1":
|
|
setAttrs({ lucksave_title: "Luck Check", lucksave_mod: "0" });
|
|
break;
|
|
case "2":
|
|
getAttrs(["strength_mod"], function(values) {
|
|
setAttrs({ lucksave_title: "Luck(STR) Save", lucksave_mod: values.strength_mod });
|
|
});
|
|
break;
|
|
case "3":
|
|
getAttrs(["dexterity_mod"], function(values) {
|
|
setAttrs({ lucksave_title: "Luck(DEX) Save", lucksave_mod: values.dexterity_mod });
|
|
});
|
|
break;
|
|
case "4":
|
|
getAttrs(["constitution_mod"], function(values) {
|
|
setAttrs({ lucksave_title: "Luck(CON) Save", lucksave_mod: values.constitution_mod });
|
|
});
|
|
break;
|
|
case "5":
|
|
getAttrs(["intelligence_mod"], function(values) {
|
|
setAttrs({ lucksave_title: "Luck(INT) Save", lucksave_mod: values.intelligence_mod });
|
|
});
|
|
break;
|
|
case "6":
|
|
getAttrs(["perception_mod"], function(values) {
|
|
setAttrs({ lucksave_title: "Luck(PER) Save", lucksave_mod: values.perception_mod });
|
|
});
|
|
break;
|
|
case "7":
|
|
getAttrs(["willpower_mod"], function(values) {
|
|
setAttrs({ lucksave_title: "Luck(WILL) Save", lucksave_mod: values.willpower_mod });
|
|
});
|
|
break;
|
|
case "8":
|
|
getAttrs(["charisma_mod"], function(values) {
|
|
setAttrs({ lucksave_title: "Luck(CHA) Save", lucksave_mod: values.charisma_mod });
|
|
});
|
|
break;
|
|
default:
|
|
setAttrs({ lucksave_title: "Luck Check", lucksave_mod: "0" });
|
|
}
|
|
});
|
|
});
|
|
|
|
// Update associated attribute for skill
|
|
on("change:repeating_skills:skilltype", function() {
|
|
getAttrs(["repeating_skills_skilltype"], function(values) {
|
|
switch (values.repeating_skills_skilltype) {
|
|
case "STR":
|
|
getAttrs(["strength"], function(values) {
|
|
setAttrs({ repeating_skills_skilltarget: values.strength });
|
|
});
|
|
break;
|
|
case "DEX":
|
|
getAttrs(["dexterity"], function(values) {
|
|
setAttrs({ repeating_skills_skilltarget: values.dexterity });
|
|
});
|
|
break;
|
|
case "CON":
|
|
getAttrs(["constitution"], function(values) {
|
|
setAttrs({ repeating_skills_skilltarget: values.constitution });
|
|
});
|
|
break;
|
|
case "INT":
|
|
getAttrs(["intelligence"], function(values) {
|
|
setAttrs({ repeating_skills_skilltarget: values.intelligence });
|
|
});
|
|
break;
|
|
case "PER":
|
|
getAttrs(["perception"], function(values) {
|
|
setAttrs({ repeating_skills_skilltarget: values.perception });
|
|
});
|
|
break;
|
|
case "WILL":
|
|
getAttrs(["willpower"], function(values) {
|
|
setAttrs({ repeating_skills_skilltarget: values.willpower });
|
|
});
|
|
break;
|
|
case "CHA":
|
|
getAttrs(["charisma"], function(values) {
|
|
setAttrs({ repeating_skills_skilltarget: values.charisma });
|
|
});
|
|
break;
|
|
case "LUCK":
|
|
getAttrs(["luck"], function(values) {
|
|
setAttrs({ repeating_skills_skilltarget: values.luck });
|
|
});
|
|
break;
|
|
default:
|
|
getAttrs(["strength"], function(values) {
|
|
setAttrs({ repeating_skills_skilltarget: values.strength });
|
|
});
|
|
}
|
|
});
|
|
});
|
|
|
|
// Update associated attribute for all skills when attribute is updated
|
|
on("change:strength change:dexterity change:constitution change:intelligence change:perception change:willpower change:charisma change:luck", function() {
|
|
getSectionIDs('repeating_skills', function (idArray) {
|
|
getAttrs(idArray.map(id => `repeating_skills_${id}_skilltype`), function (values) {
|
|
idArray.forEach(function (id) {
|
|
switch (values[`repeating_skills_${id}_skilltype`]) {
|
|
case "STR":
|
|
getAttrs(["strength"], function(strval) {
|
|
let setting = {};
|
|
setting[`repeating_skills_${id}_skilltarget`] = strval.strength;
|
|
setAttrs(setting);
|
|
});
|
|
break;
|
|
case "DEX":
|
|
getAttrs(["dexterity"], function(dexval) {
|
|
let setting = {};
|
|
setting[`repeating_skills_${id}_skilltarget`] = dexval.dexterity;
|
|
setAttrs(setting);
|
|
});
|
|
break;
|
|
case "CON":
|
|
getAttrs(["constitution"], function(conval) {
|
|
let setting = {};
|
|
setting[`repeating_skills_${id}_skilltarget`] = conval.constitution;
|
|
setAttrs(setting);
|
|
});
|
|
break;
|
|
case "INT":
|
|
getAttrs(["intelligence"], function(intval) {
|
|
let setting = {};
|
|
setting[`repeating_skills_${id}_skilltarget`] = intval.intelligence;
|
|
setAttrs(setting);
|
|
});
|
|
break;
|
|
case "PER":
|
|
getAttrs(["perception"], function(perval) {
|
|
let setting = {};
|
|
setting[`repeating_skills_${id}_skilltarget`] = perval.perception;
|
|
setAttrs(setting);
|
|
});
|
|
break;
|
|
case "WILL":
|
|
getAttrs(["willpower"], function(willval) {
|
|
let setting = {};
|
|
setting[`repeating_skills_${id}_skilltarget`] = willval.willpower;
|
|
setAttrs(setting);
|
|
});
|
|
break;
|
|
case "CHA":
|
|
getAttrs(["charisma"], function(chaval) {
|
|
let setting = {};
|
|
setting[`repeating_skills_${id}_skilltarget`] = chaval.charisma;
|
|
setAttrs(setting);
|
|
});
|
|
break;
|
|
case "LUCK":
|
|
getAttrs(["luck"], function(luckval) {
|
|
let setting = {};
|
|
setting[`repeating_skills_${id}_skilltarget`] = luckval.luck;
|
|
setAttrs(setting);
|
|
});
|
|
break;
|
|
default:
|
|
}
|
|
});
|
|
});
|
|
});
|
|
});
|
|
|
|
<!-- Converting to new sheets -->
|
|
|
|
<!-- Get section IDs -->
|
|
var getSectionIDsOrdered = function (sectionName, callback) {
|
|
'use strict';
|
|
getAttrs([`_reporder_${sectionName}`], function (v) {
|
|
getSectionIDs(sectionName, function (idArray) {
|
|
let reporderArray = v[`_reporder_${sectionName}`] ? v[`_reporder_${sectionName}`].toLowerCase().split(',') : [],
|
|
ids = [...new Set(reporderArray.filter(x => idArray.includes(x)).concat(idArray))];
|
|
callback(ids);
|
|
});
|
|
});
|
|
};
|
|
|
|
var convertFromOldSheet = function () {
|
|
var notes1="";
|
|
var notes2="";
|
|
// Non-repeating attributes to rename
|
|
let conversionData = {
|
|
"size" : "race",
|
|
"vision" : "background",
|
|
"prolanguages" : "languages",
|
|
"alignment" : "vision",
|
|
"strength" : "strength_max",
|
|
"dexterity" : "dexterity_max",
|
|
"constitution" : "constitution_max",
|
|
"intelligence" : "intelligence_max",
|
|
"perception" : "perception_max",
|
|
"willpower" : "willpower_max",
|
|
"charisma" : "charisma_max",
|
|
"luck" : "luck_max",
|
|
"nil" : "armour_class",
|
|
"initiative" : "rerolls"
|
|
};
|
|
// Non-repeating attribute renaming
|
|
getAttrs(Object.keys(conversionData), function (values) {
|
|
let setting = {};
|
|
Object.keys(conversionData).forEach(function (oldAttr) {
|
|
if (values[oldAttr] != null) {
|
|
// set value of new attribute to the old one
|
|
setting[conversionData[oldAttr]] = values[oldAttr];
|
|
}
|
|
});
|
|
console.log("Setting non-repeating attributes.");
|
|
setAttrs(setting);
|
|
});
|
|
|
|
//Special Case to bring over the two note fields into one notes field here.
|
|
getAttrs(["notey","noob"], function(values) {
|
|
if (values.notey != null) { notes1=values.notey; }
|
|
if (values.noob != null) { notes2=values.notey; }
|
|
setAttrs({lootnotes: (notes1 + "\n" + notes2)});
|
|
});
|
|
|
|
getSectionIDs('repeating_meleeattacks', function (idArray) {
|
|
console.log("Setting repeating_meleeattacks attributes.");
|
|
getAttrs(idArray.map(id => `repeating_meleeattacks_${id}_meleeweaponname`), function (values) {
|
|
let setting = {};
|
|
idArray.forEach(function (id) {
|
|
setting[`repeating_meleeattacks_${id}_melee_weaponname`] = values[`repeating_meleeattacks_${id}_meleeweaponname`];
|
|
});
|
|
setAttrs(setting);
|
|
});
|
|
getAttrs(idArray.map(id => `repeating_meleeattacks_${id}_meleemagic`), function (values) {
|
|
let setting = {};
|
|
idArray.forEach(function (id) {
|
|
setting[`class_hitbonus`] = values[`repeating_meleeattacks_${id}_meleemagic`];
|
|
});
|
|
setAttrs(setting);
|
|
});
|
|
getAttrs(idArray.map(id => `repeating_meleeattacks_${id}_meleemisc`), function (values) {
|
|
let setting = {};
|
|
idArray.forEach(function (id) {
|
|
setting[`repeating_meleeattacks_${id}_melee_hitbonus`] = values[`repeating_meleeattacks_${id}_meleemisc`];
|
|
setting[`repeating_meleeattacks_${id}_melee_dmgbonus`] = values[`repeating_meleeattacks_${id}_meleemisc`];
|
|
});
|
|
setAttrs(setting);
|
|
});
|
|
getAttrs(idArray.map(id => `repeating_meleeattacks_${id}_meleedmg`), function (values) {
|
|
let setting = {};
|
|
idArray.forEach(function (id) {
|
|
setting[`repeating_meleeattacks_${id}_melee_dmgbase`] = values[`repeating_meleeattacks_${id}_meleedmg`];
|
|
});
|
|
setAttrs(setting);
|
|
});
|
|
getAttrs(idArray.map(id => `repeating_meleeattacks_${id}_meleeacbonus`), function (values) {
|
|
let setting = {};
|
|
idArray.forEach(function (id) {
|
|
setting[`repeating_meleeattacks_${id}_melee_description`] = values[`repeating_meleeattacks_${id}_meleeacbonus`];
|
|
});
|
|
setAttrs(setting);
|
|
});
|
|
});
|
|
|
|
getSectionIDs('repeating_rangedattacks', function (idArray) {
|
|
console.log("Setting repeating_rangedattacks attributes.");
|
|
getAttrs(idArray.map(id => `repeating_rangedattacks_${id}_rangeweaponname`), function (values) {
|
|
let setting = {};
|
|
idArray.forEach(function (id) {
|
|
setting[`repeating_rangedattacks_${id}_range_weaponname`] = values[`repeating_rangedattacks_${id}_rangeweaponname`];
|
|
});
|
|
setAttrs(setting);
|
|
});
|
|
getAttrs(idArray.map(id => `repeating_rangedattacks_${id}_rangemisc`), function (values) {
|
|
let setting = {};
|
|
idArray.forEach(function (id) {
|
|
setting[`repeating_rangedattacks_${id}_range_hitbonus`] = values[`repeating_rangedattacks_${id}_rangemisc`];
|
|
setting[`repeating_rangedattacks_${id}_range_dmgbonus`] = values[`repeating_rangedattacks_${id}_rangemisc`];
|
|
});
|
|
setAttrs(setting);
|
|
});
|
|
getAttrs(idArray.map(id => `repeating_rangedattacks_${id}_rangedmg`), function (values) {
|
|
let setting = {};
|
|
idArray.forEach(function (id) {
|
|
setting[`repeating_rangedattacks_${id}_range_dmgbase`] = values[`repeating_rangedattacks_${id}_rangedmg`];
|
|
});
|
|
setAttrs(setting);
|
|
});
|
|
getAttrs(idArray.map(id => `repeating_rangedattacks_${id}_rangeacbonus`), function (values) {
|
|
let setting = {};
|
|
idArray.forEach(function (id) {
|
|
setting[`repeating_rangedattacks_${id}_range_distance`] = values[`repeating_rangedattacks_${id}_rangeacbonus`];
|
|
});
|
|
setAttrs(setting);
|
|
});
|
|
getAttrs(idArray.map(id => `repeating_rangedattacks_${id}_rangesaves`), function (values) {
|
|
let setting = {};
|
|
idArray.forEach(function (id) {
|
|
setting[`repeating_rangedattacks_${id}_range_description`] = values[`repeating_rangedattacks_${id}_rangesaves`];
|
|
});
|
|
setAttrs(setting);
|
|
});
|
|
});
|
|
};
|
|
|
|
var convertToVers4 = function () {
|
|
|
|
// Non-repeating attributes to rename
|
|
let conversionData = {
|
|
"size" : "race",
|
|
"vision" : "background"
|
|
};
|
|
// Non-repeating attribute renaming
|
|
getAttrs(Object.keys(conversionData), function (values) {
|
|
let setting = {};
|
|
Object.keys(conversionData).forEach(function (oldAttr) {
|
|
if (values[oldAttr] != null) {
|
|
// set value of new attribute to the old one
|
|
setting[conversionData[oldAttr]] = values[oldAttr];
|
|
}
|
|
});
|
|
console.log("Setting non-repeating attributes.");
|
|
setAttrs(setting);
|
|
});
|
|
|
|
getSectionIDs('repeating_meleeattacks', function (idArray) {
|
|
console.log("Setting repeating_meleeattacks attributes.");
|
|
getAttrs(idArray.map(id => `repeating_meleeattacks_${id}_melee_weaponname`), function (values) {
|
|
let setting = {};
|
|
idArray.forEach(function (id) {
|
|
setting[`repeating_meleeattacks_${id}_melee_attackname`] = values[`repeating_meleeattacks_${id}_melee_weaponname`];
|
|
});
|
|
setAttrs(setting);
|
|
});
|
|
});
|
|
|
|
getSectionIDs('repeating_rangedattacks', function (idArray) {
|
|
console.log("Setting repeating_rangedattacks attributes.");
|
|
getAttrs(idArray.map(id => `repeating_rangedattacks_${id}_range_weaponname`), function (values) {
|
|
let setting = {};
|
|
idArray.forEach(function (id) {
|
|
setting[`repeating_rangedattacks_${id}_range_attackname`] = values[`repeating_rangedattacks_${id}_range_weaponname`];
|
|
});
|
|
setAttrs(setting);
|
|
});
|
|
});
|
|
|
|
|
|
getSectionIDs('repeating_injuries', function (idArray) {
|
|
console.log("Moving repeating_injuriess to repeating_conditions.");
|
|
var newIDs = {};
|
|
getAttrs(idArray.map(id => `repeating_injuries_${id}_injuryname`), function (values) {
|
|
var IDnr = 0;
|
|
let setting = {};
|
|
idArray.forEach(function (id) {
|
|
newIDs[IDnr] = generateRowID();
|
|
setting["repeating_conditions_" + newIDs[IDnr] + "_conditionname"] = values[`repeating_injuries_${id}_injuryname`];
|
|
IDnr += 1;
|
|
});
|
|
setAttrs(setting);
|
|
});
|
|
getAttrs(idArray.map(id => `repeating_injuries_${id}_injurydescr`), function (values) {
|
|
var IDnr = 0;
|
|
let setting = {};
|
|
idArray.forEach(function (id) {
|
|
setting["repeating_conditions_" + newIDs[IDnr] + "_conditiondescr"] = values[`repeating_injuries_${id}_injurydescr`];
|
|
IDnr += 1;
|
|
});
|
|
setAttrs(setting);
|
|
});
|
|
console.log("Done setting repeating_conditions attributes.");
|
|
});
|
|
};
|
|
|
|
on('sheet:opened', function () {
|
|
console.log("Sheet opened.");
|
|
let currentVersion = '4.0';
|
|
getAttrs(['version','lootnotes'], function (values) {
|
|
if (!values.version) {
|
|
//Special Case to check if the custom sheet was already in use prior to adding version control logic
|
|
if (values.lootnotes) {
|
|
console.log("Special Case Cancel Upgrade from V1.0");
|
|
}
|
|
else{
|
|
//The old sheet had many variables whose names did not match sheet headings.
|
|
//I do my best to assign them to appropriate variables in the upgraded sheet.
|
|
console.log("Upgrading Sheet from V1.0");
|
|
convertFromOldSheet();
|
|
}
|
|
}
|
|
else{
|
|
switch (values.version) {
|
|
case '2.1':
|
|
// V3 won't require any conversion.
|
|
// Making compatible with Deluxe Edition of LFG.
|
|
case '3.0':
|
|
console.log("Upgrading Sheet from V3.0 to V4.0");
|
|
convertToVers4();
|
|
case '4.0':
|
|
//etc
|
|
}
|
|
}
|
|
setAttrs({
|
|
version: currentVersion
|
|
});
|
|
});
|
|
});
|
|
</script>
|
|
|
|
|
|
|
|
|