mirror of
https://github.com/Nighthawk42/roll20-character-sheets.git
synced 2026-08-30 19:52:29 +00:00
611 lines
50 KiB
HTML
611 lines
50 KiB
HTML
|
|
<div>
|
|
<div style='display: inline-block; vertical-align: top; width: 588px; height: 250px; margin: 0px 0px 0px 0px; border: 2px solid transparent;'>
|
|
<!-- Biography -->
|
|
<label class="sheet-profileLabel" style="width: 580px; font-size: 25px; text-align: center; margin: 20px 0px 0px 0px; padding-left: 224px;" data-i18n="hack100-u">HACK100</label>
|
|
<label class="sheet-profileLabel" style="width: 580px; font-size: 25px; text-align: center; padding-left: 210px;" data-i18n="characterSheet-u">CHARACTER SHEET</label>
|
|
<label class="sheet-profileLabel" style="width: 60px; text-align: center; margin: 0px 0px 0px 0px; padding: 8px 2px 2px 2px;" data-i18n="name-u">NAME</label>
|
|
<input type="text" name="attr_character_name" class="sheet-profileInput" style="width: 510px;" value="">
|
|
<label class="sheet-profileLabel" style="width: 230px; margin: 10px 0px 0px 0px; padding: 8px 2px 2px 8px;" data-i18n="BACKGROUND & MOTIVATION">BACKGROUND & MOTIVATION</label>
|
|
<input type="text" name="attr_background1" class="sheet-profileInput" style="width: 340px; margin: 6px 0px 0px 2px;" value="">
|
|
<input type="text" name="attr_background2" class="sheet-profileInput" style="width: 560px; margin: 6px 0px 0px 10px;" value="">
|
|
<input type="text" name="attr_background3" class="sheet-profileInput" style="width: 560px; margin: 6px 0px 0px 10px;" value="">
|
|
</div>
|
|
<div style='display: inline-block; vertical-align: top; width: 196px; height: 236px; margin: 16px 0px 0px 0px; border: 2px solid Black;'>
|
|
<img name="attr_character_avatar" title="Image: 194w x 234h pixels" style="width: 194px; height: 234px; border: 0px solid black; background: transparent; margin: 0px 0px 0px 0px;">
|
|
</div>
|
|
|
|
<!-- Abilities -->
|
|
<div style='display: inline-block; vertical-align: top; width: 820px; height: 240px; margin: 0px 0px 0px 0px; border: 2px solid transparent;'>
|
|
<label class="sheet-profileLabel" style="width: 80px; text-align: left; margin: 16px 0px 0px 0px; padding: 2px;" data-i18n="abilities-u">ABILITIES</label>
|
|
<div style='display: inline-block; vertical-align: top; width: 196px; height: 236px; margin: 0px 0px 0px -50px; border: 2px solid transparent;'>
|
|
<label class="sheet-profileLabel" style="width: 60px; text-align: left; font-size: 16px; font-weight: 500; font-style: italic; margin: 36px 0px 0px 66px; padding: 2px;" data-i18n="bonus-c">Bonus</label>
|
|
<label class="sheet-profileLabel" style="width: 60px; text-align: left; font-size: 16px; font-weight: 500; font-style: italic; margin: 36px 0px 0px 0px; padding: 2px;" data-i18n="check-c">Check</label>
|
|
|
|
<button class="btn sheet-skillName" type="action" name="act_strength" title="Strength Roll">
|
|
<label class="sheet-profileLabel" style="width: 66px; text-align: right; font-size: 16px; font-weight: 500; margin:0; padding: 0;" data-i18n="strength-c">Strength</label></button>
|
|
<input type="text" name="attr_strength_bonus" class="sheet-profileInput" style="width: 28px; height: 28px; margin: 4px 0px 0px 4px; border: 2px solid Black;" value="">
|
|
<input type="text" name="attr_strength" class="sheet-profileInput" style="width: 28px; height: 28px; margin: 4px 0px 0px 0px; border: 2px solid Black; margin-left: -4px;" value="">
|
|
<input name="attr_strength_check" type="checkbox" style="width: 16px; height: 16px; margin: 0px 0px 0px 12px; color: transparent; border: 2px solid Black; border-radius: 0; accent-color: Black;" value="1">
|
|
|
|
<button class="btn sheet-skillName" type="action" name="act_perception" style="margin-top: 16px;" title="Perception Roll">
|
|
<label class="sheet-profileLabel" style="width: 66px; text-align: right; font-size: 16px; font-weight: 500; margin:0; padding: 0;" data-i18n="perception-c">Perception</label></button>
|
|
<input type="text" name="attr_perception_bonus" class="sheet-profileInput" style="width: 28px; height: 28px; margin: 16px 0px 0px 4px; border: 2px solid Black;" value="">
|
|
<input type="text" name="attr_perception" class="sheet-profileInput" style="width: 28px; height: 28px; margin: 16px 0px 0px 0px; border: 2px solid Black; margin-left: -4px;" value="">
|
|
<input name="attr_perception_check" type="checkbox" style="width: 16px; height: 16px; margin: 16px 0px 0px 12px; color: transparent; border: 2px solid Black; border-radius: 0; accent-color: Black;" value="1">
|
|
|
|
<button class="btn sheet-skillName" type="action" name="act_melee" style="margin-top: 16px;" title="Melee Roll">
|
|
<label class="sheet-profileLabel" style="width: 66px; text-align: right; font-size: 16px; font-weight: 500; margin:0; padding: 0;" data-i18n="melee-c">Melee</label></button>
|
|
<input type="text" name="attr_melee_bonus" class="sheet-profileInput" style="width: 28px; height: 28px; margin: 16px 0px 0px 4px; border: 2px solid Black;" value="">
|
|
<input type="text" name="attr_melee" class="sheet-profileInput" style="width: 28px; height: 28px; margin: 16px 0px 0px 0px; border: 2px solid Black; margin-left: -4px;" value="">
|
|
<input name="attr_melee_check" type="checkbox" style="width: 16px; height: 16px; margin: 16px 0px 0px 12px; color: transparent; border: 2px solid Black; border-radius: 0; accent-color: Black;" value="1">
|
|
</div>
|
|
<div style='display: inline-block; vertical-align: top; width: 196px; height: 236px; margin: 0px 0px 0px -4px; border: 2px solid transparent;'>
|
|
<label class="sheet-profileLabel" style="width: 60px; text-align: left; font-size: 16px; font-weight: 500; font-style: italic; margin: 36px 0px 0px 66px; padding: 2px;" data-i18n="bonus-c">Bonus</label>
|
|
<label class="sheet-profileLabel" style="width: 60px; text-align: left; font-size: 16px; font-weight: 500; font-style: italic; margin: 36px 0px 0px 0px; padding: 2px;" data-i18n="check-c">Check</label>
|
|
|
|
<button class="btn sheet-skillName" type="action" name="act_agility" title="Agility Roll">
|
|
<label class="sheet-profileLabel" style="width: 66px; text-align: right; font-size: 16px; font-weight: 500; margin:0; padding: 0;" data-i18n="agility-c">Agility</label></button>
|
|
<input type="text" name="attr_agility_bonus" class="sheet-profileInput" style="width: 28px; height: 28px; margin: 4px 0px 0px 4px; border: 2px solid Black;" value="">
|
|
<input type="text" name="attr_agility" class="sheet-profileInput" style="width: 28px; height: 28px; margin: 4px 0px 0px 0px; border: 2px solid Black; margin-left: -4px;" value="">
|
|
<input name="attr_agility_check" type="checkbox" style="width: 16px; height: 16px; margin: 0px 0px 0px 12px; color: transparent; border: 2px solid Black; border-radius: 0; accent-color: Black;" value="1">
|
|
|
|
<button class="btn sheet-skillName" type="action" name="act_reasoning" style="margin-top: 16px;" title="Reasoning Roll">
|
|
<label class="sheet-profileLabel" style="width: 66px; text-align: right; font-size: 16px; font-weight: 500; margin:0; padding: 0;" data-i18n="reasoning-c">Reasoning</label></button>
|
|
<input type="text" name="attr_reasoning_bonus" class="sheet-profileInput" style="width: 28px; height: 28px; margin: 16px 0px 0px 4px; border: 2px solid Black;" value="">
|
|
<input type="text" name="attr_reasoning" class="sheet-profileInput" style="width: 28px; height: 28px; margin: 16px 0px 0px 0px; border: 2px solid Black; margin-left: -4px;" value="">
|
|
<input name="attr_reasoning_check" type="checkbox" style="width: 16px; height: 16px; margin: 16px 0px 0px 12px; color: transparent; border: 2px solid Black; border-radius: 0; accent-color: Black;" value="1">
|
|
|
|
<button class="btn sheet-skillName" type="action" name="act_ranged" style="margin-top: 16px;" title="Ranged Roll">
|
|
<label class="sheet-profileLabel" style="width: 66px; text-align: right; font-size: 16px; font-weight: 500; margin:0; padding: 0;" data-i18n="ranged-c">Ranged</label></button>
|
|
<input type="text" name="attr_ranged_bonus" class="sheet-profileInput" style="width: 28px; height: 28px; margin: 16px 0px 0px 4px; border: 2px solid Black;" value="">
|
|
<input type="text" name="attr_ranged" class="sheet-profileInput" style="width: 28px; height: 28px; margin: 16px 0px 0px 0px; border: 2px solid Black; margin-left: -4px;" value="">
|
|
<input name="attr_ranged_check" type="checkbox" style="width: 16px; height: 16px; margin: 16px 0px 0px 12px; color: transparent; border: 2px solid Black; border-radius: 0; accent-color: Black;" value="1">
|
|
</div>
|
|
<div style='display: inline-block; vertical-align: top; width: 190px; height: 236px; margin: 0px 0px 0px -4px; border: 2px solid transparent;'>
|
|
<label class="sheet-profileLabel" style="width: 60px; text-align: left; font-size: 16px; font-weight: 500; font-style: italic; margin: 36px 0px 0px 66px; padding: 2px;" data-i18n="bonus-c">Bonus</label>
|
|
<label class="sheet-profileLabel" style="width: 60px; text-align: left; font-size: 16px; font-weight: 500; font-style: italic; margin: 36px 0px 0px 0px; padding: 2px;" data-i18n="check-c">Check</label>
|
|
|
|
<button class="btn sheet-skillName" type="action" name="act_stealth" title="Stealth Roll">
|
|
<label class="sheet-profileLabel" style="width: 66px; text-align: right; font-size: 16px; font-weight: 500; margin:0; padding: 0;" data-i18n="stealth-c">Stealth</label></button>
|
|
<input type="text" name="attr_stealth_bonus" class="sheet-profileInput" style="width: 28px; height: 28px; margin: 4px 0px 0px 4px; border: 2px solid Black;" value="">
|
|
<input type="text" name="attr_stealth" class="sheet-profileInput" style="width: 28px; height: 28px; margin: 4px 0px 0px 0px; border: 2px solid Black; margin-left: -4px;" value="">
|
|
<input name="attr_stealth_check" type="checkbox" style="width: 16px; height: 16px; margin: 0px 0px 0px 12px; color: transparent; border: 2px solid Black; border-radius: 0; accent-color: Black;" value="1">
|
|
|
|
<button class="btn sheet-skillName" type="action" name="act_influence" style="margin-top: 16px;" title="Influence Roll">
|
|
<label class="sheet-profileLabel" style="width: 66px; text-align: right; font-size: 16px; font-weight: 500; margin:0; padding: 0;" data-i18n="influence-c">Influence</label></button>
|
|
<input type="text" name="attr_influence_bonus" class="sheet-profileInput" style="width: 28px; height: 28px; margin: 16px 0px 0px 4px; border: 2px solid Black;" value="">
|
|
<input type="text" name="attr_influence" class="sheet-profileInput" style="width: 28px; height: 28px; margin: 16px 0px 0px 0px; border: 2px solid Black; margin-left: -4px;" value="">
|
|
<input name="attr_influence_check" type="checkbox" style="width: 16px; height: 16px; margin: 16px 0px 0px 12px; color: transparent; border: 2px solid Black; border-radius: 0; accent-color: Black;" value="1">
|
|
|
|
<label class="sheet-profileLabel" style="width: 66px; text-align: right; font-size: 16px; font-weight: 500; margin: 18px 0px 0px 0px; padding: 2px;" data-i18n="movement-c">Movement</label>
|
|
<input type="text" name="attr_movement" class="sheet-profileInput" style="width: 56px; height: 28px; text-align: center; margin: 16px 0px 0px 4px; border: 2px solid Black;" value="8">
|
|
</div>
|
|
<div style='display: inline-block; vertical-align: top; width: 190px; height: 236px; margin: 0px 0px 0px -4px; border: 2px solid transparent;'>
|
|
<label class="sheet-profileLabel" style="width: 60px; text-align: left; font-size: 16px; font-weight: 500; font-style: italic; margin: 36px 0px 0px 66px; padding: 2px;" data-i18n="bonus-c">Bonus</label>
|
|
<label class="sheet-profileLabel" style="width: 60px; text-align: left; font-size: 16px; font-weight: 500; font-style: italic; margin: 36px 0px 0px 0px; padding: 2px;" data-i18n="check-c">Check</label>
|
|
|
|
<button class="btn sheet-skillName" type="action" name="act_toughness" title="Toughness Roll">
|
|
<label class="sheet-profileLabel" style="width: 66px; text-align: right; font-size: 16px; font-weight: 500; margin:0; padding: 0;" data-i18n="toughness-c">Toughness</label></button>
|
|
<input type="text" name="attr_toughness_bonus" class="sheet-profileInput" style="width: 28px; height: 28px; margin: 4px 0px 0px 4px; border: 2px solid Black;" value="">
|
|
<input type="text" name="attr_toughness" class="sheet-profileInput" style="width: 28px; height: 28px; margin: 4px 0px 0px 0px; border: 2px solid Black; margin-left: -4px;" value="">
|
|
<input name="attr_toughness_check" type="checkbox" style="width: 16px; height: 16px; margin: 0px 0px 0px 12px; color: transparent; border: 2px solid Black; border-radius: 0; accent-color: Black;" value="1">
|
|
|
|
<button class="btn sheet-skillName" type="action" name="act_willPower" style="margin-top: 16px;" title="Will Power Roll">
|
|
<label class="sheet-profileLabel" style="width: 66px; text-align: right; font-size: 16px; font-weight: 500; margin:0; padding: 0;" data-i18n="willPower-c">Will Power</label></button>
|
|
<input type="text" name="attr_willpower_bonus" class="sheet-profileInput" style="width: 28px; height: 28px; margin: 16px 0px 0px 4px; border: 2px solid Black;" value="">
|
|
<input type="text" name="attr_willpower" class="sheet-profileInput" style="width: 28px; height: 28px; margin: 16px 0px 0px 0px; border: 2px solid Black; margin-left: -4px;" value="">
|
|
<input name="attr_willpower_check" type="checkbox" style="width: 16px; height: 16px; margin: 16px 0px 0px 12px; color: transparent; border: 2px solid Black; border-radius: 0; accent-color: Black;" value="1">
|
|
|
|
<button class="btn sheet-skillName" type="action" name="act_initiative" style="margin: 12px 0px 0px 0px;" title="Initiative Roll">
|
|
<label class="sheet-profileLabel" style="width: 66px; text-align: center; font-size: 18px; font-weight: 500; margin:0; padding: 0;" data-i18n="initiative-c">Initiative</label></button>
|
|
</div>
|
|
</div>
|
|
<!-- Specialisms -->
|
|
<div style='display: inline-block; vertical-align: top; width: 410px; height: 250px; margin: 0px 0px 0px 0px; border: 2px solid transparent;'>
|
|
<label class="sheet-profileLabel" style="width: 400px; text-align: left; margin: -8px 0px 0px 0px; padding: 2px;" data-i18n="specialisms-u">SPECIALISMS</label>
|
|
|
|
<label class="sheet-profileLabel" style="width: 50px; text-align: left; font-size: 16px; font-weight: 500; font-style: italic; margin: -6px 0px 0px 298px; padding: 2px;" data-i18n="bonus-c">Bonus</label>
|
|
<label class="sheet-profileLabel" style="width: 42px; text-align: left; font-size: 16px; font-weight: 500; font-style: italic; margin: -6px 0px 0px 10px; padding: 2px;" data-i18n="check-c">Check</label>
|
|
|
|
<button type="action" name="act_specialism1" style="width: 16px; height: 24px; font-family: dicefontd20; margin: 0px 0px 0px 0px; color: Red; background-color: transparent; padding: 4px 0px 2px 0px; font-size: 16px; border: 0px solid Black;" >t</button>
|
|
<input type="text" name="attr_specialism1_name" class="sheet-profileInput" style="width: 272px; height: 28px; margin: -14px 0px 0px 4px; border: 0px; border-radius: 0; border-bottom: 2px solid Black;" value="">
|
|
<input type="text" name="attr_specialism1_bonus" class="sheet-profileInput" style="width: 28px; height: 28px; margin: -14px 0px 0px 4px; border: 2px solid Black;" value="">
|
|
<input type="text" name="attr_specialism1" class="sheet-profileInput" style="width: 28px; height: 28px; margin: -14px 0px 0px 0px; border: 2px solid Black; margin-left: -4px;" value="">
|
|
<input name="attr_specialism1_check" type="checkbox" style="width: 16px; height: 16px; margin: -14px 10px 0px 16px; color: transparent; border: 2px solid Black; border-radius: 0; accent-color: Black;" value="1">
|
|
|
|
<button type="action" name="act_specialism2" style="width: 16px; height: 30px; font-family: dicefontd20; margin: 8px 0px 0px 0px; color: Red; background-color: transparent; padding: 4px 0px 2px 0px; font-size: 16px; border: 0px solid Black;" >t</button>
|
|
<input type="text" name="attr_specialism2_name" class="sheet-profileInput" style="width: 272px; height: 28px; margin: -2px 0px 0px 4px; border: 0px; border-radius: 0; border-bottom: 2px solid Black;" value="">
|
|
<input type="text" name="attr_specialism2_bonus" class="sheet-profileInput" style="width: 28px; height: 28px; margin: -2px 0px 0px 4px; border: 2px solid Black;" value="">
|
|
<input type="text" name="attr_specialism2" class="sheet-profileInput" style="width: 28px; height: 28px; margin: -2px 0px 0px 0px; border: 2px solid Black; margin-left: -4px;" value="">
|
|
<input name="attr_specialism2_check" type="checkbox" style="width: 16px; height: 16px; margin: -2px 10px 0px 18px; color: transparent; border: 2px solid Black; border-radius: 0; accent-color: Black;" value="1">
|
|
|
|
<button type="action" name="act_specialism3" style="width: 16px; height: 30px; font-family: dicefontd20; margin: 8px 0px 0px 0px; color: Red; background-color: transparent; padding: 4px 0px 2px 0px; font-size: 16px; border: 0px solid Black;" >t</button>
|
|
<input type="text" name="attr_specialism3_name" class="sheet-profileInput" style="width: 272px; height: 28px; margin: -2px 0px 0px 4px; border: 0px; border-radius: 0; border-bottom: 2px solid Black;" value="">
|
|
<input type="text" name="attr_specialism3_bonus" class="sheet-profileInput" style="width: 28px; height: 28px; margin: -2px 0px 0px 4px; border: 2px solid Black;" value="">
|
|
<input type="text" name="attr_specialism3" class="sheet-profileInput" style="width: 28px; height: 28px; margin: -2px 0px 0px 0px; border: 2px solid Black; margin-left: -4px;" value="">
|
|
<input name="attr_specialism3_check" type="checkbox" style="width: 16px; height: 16px; margin: -2px 10px 0px 18px; color: transparent; border: 2px solid Black; border-radius: 0; accent-color: Black;" value="1">
|
|
|
|
<button type="action" name="act_specialism4" style="width: 16px; height: 30px; font-family: dicefontd20; margin: 8px 0px 0px 0px; color: Red; background-color: transparent; padding: 4px 0px 2px 0px; font-size: 16px; border: 0px solid Black;" >t</button>
|
|
<input type="text" name="attr_specialism4_name" class="sheet-profileInput" style="width: 272px; height: 28px; margin: -2px 0px 0px 4px; border: 0px; border-radius: 0; border-bottom: 2px solid Black;" value="">
|
|
<input type="text" name="attr_specialism4_bonus" class="sheet-profileInput" style="width: 28px; height: 28px; margin: -2px 0px 0px 4px; border: 2px solid Black;" value="">
|
|
<input type="text" name="attr_specialism4" class="sheet-profileInput" style="width: 28px; height: 28px; margin: -2px 0px 0px 0px; border: 2px solid Black; margin-left: -4px;" value="">
|
|
<input name="attr_specialism4_check" type="checkbox" style="width: 16px; height: 16px; margin: -2px 10px 0px 18px; color: transparent; border: 2px solid Black; border-radius: 0; accent-color: Black;" value="1">
|
|
|
|
<button type="action" name="act_specialism5" style="width: 16px; height: 30px; font-family: dicefontd20; margin: 8px 0px 0px 0px; color: Red; background-color: transparent; padding: 4px 0px 2px 0px; font-size: 16px; border: 0px solid Black;" >t</button>
|
|
<input type="text" name="attr_specialism5_name" class="sheet-profileInput" style="width: 272px; height: 28px; margin: -2px 0px 0px 4px; border: 0px; border-radius: 0; border-bottom: 2px solid Black;" value="">
|
|
<input type="text" name="attr_specialism5_bonus" class="sheet-profileInput" style="width: 28px; height: 28px; margin: -2px 0px 0px 4px; border: 2px solid Black;" value="">
|
|
<input type="text" name="attr_specialism5" class="sheet-profileInput" style="width: 28px; height: 28px; margin: -2px 0px 0px 0px; border: 2px solid Black; margin-left: -4px;" value="">
|
|
<input name="attr_specialism5_check" type="checkbox" style="width: 16px; height: 16px; margin: -2px 10px 0px 18px; color: transparent; border: 2px solid Black; border-radius: 0; accent-color: Black;" value="1">
|
|
</div>
|
|
|
|
<div style='display: inline-block; vertical-align: top; width: 390px; height: 250px; margin: -6px 0px 0px 0px; border: 1px solid transparent;'>
|
|
<!-- Health -->
|
|
<label class="sheet-profileLabel" style="width: 70px; text-align: left; margin: -4px 0px 0px 88px; padding: 2px;" data-i18n="health-u">HEALTH</label>
|
|
<input type="text" name="attr_health" class="sheet-profileInput" style="width: 60px; height: 28px; text-align: center; margin: -14px 0px 0px 4px; border-bottom: 2px solid Black;" value="" title="Current Health">
|
|
<label class="sheet-profileLabel" style="width: 10px; text-align: center; margin: -8px 0px 0px 0px; padding: 2px;" >/</label>
|
|
<input type="text" name="attr_health_maximum" class="sheet-profileInput" style="width: 60px; height: 28px; text-align: center; margin: -14px 0px 0px 4px; border-bottom: 2px solid Black;" value="" title="Maximum Health">
|
|
<!-- Weapons -->
|
|
<label class="sheet-profileLabel" style="width: 380px; text-align: left; margin: -4px 0px 8px 8px; padding: 2px;" data-i18n="weapons-u" data-i18n-title="weaponDef-c">WEAPONS</label>
|
|
<div style="display: inline-block; vertical-align: top; width: 380px; height: 30px; margin: 0px 0px 0px 0px; color: transparent; border: 1px solid transparent;">
|
|
<button type="roll" name="roll_weapon1" style="width: 16px; height: 24px; font-family: dicefontd20; margin: -9px 0px 0px 0px; color: Red; background-color: transparent; padding: 4px 0px 2px 0px; font-size: 16px; border: 0px solid Black;" value="&{template:check} {{name=@{character_name} *for* @{weapon1_name}}} {{Damage=[[@{weapon1_damage}+@{weapon1_melee_bonus}*@{melee_bonus}+@{weapon1_range_bonus}*@{ranged_bonus}]]}} {{Description=@{weapon1_description}}}" ></button>
|
|
<input type="text" name="attr_weapon1_name" class="sheet-profileInput" style="width: 132px; height: 28px; text-align: center; margin: -12px 0px 0px 4px; border: 0px; border-radius: 0; border-bottom: 2px solid Black;" value="">
|
|
<input type="text" name="attr_weapon1_damage" class="sheet-profileInput" style="width: 90px; height: 28px; text-align: center; margin: -12px 0px 0px 4px; border: 2px solid Black;" value="" data-i18n-title="weaponDamage-c">
|
|
<div style="display: inline-block; vertical-align: top; width: 16px; height: 28px; margin: -12px 0px 0px 0px; color: transparent; border: 0px solid Green;">
|
|
<input name="attr_weapon1_melee_bonus" type="checkbox" style="width: 12px; height: 12px; margin: -6px 0px 0px 2px; color: transparent; border: 2px solid Black; border-radius: 0; accent-color: Black;" value="1" data-i18n-title="addMeleeDamageBonus-c">
|
|
<input name="attr_weapon1_range_bonus" type="checkbox" style="width: 12px; height: 12px; margin: -6px 0px 0px 2px; color: transparent; border: 2px solid Black; border-radius: 0; accent-color: Black;" value="1" data-i18n-title="addRangeDamageBonus-c">
|
|
</div>
|
|
<input type="text" name="attr_weapon1_description" class="sheet-profileInput" style="width: 100px; height: 28px; text-align: center; margin: -12px 0px 0px 4px; border: 0px; border-radius: 0; border-bottom: 2px solid Black;" value="" data-i18n-title="effectDescription-c">
|
|
</div>
|
|
<div style="display: inline-block; vertical-align: top; width: 380px; height: 30px; margin: 12px 0px 0px 0px; color: transparent; border: 1px solid transparent;">
|
|
<button type="roll" name="roll_weapon2" style="width: 16px; height: 24px; font-family: dicefontd20; margin: -9px 0px 0px 0px; color: Red; background-color: transparent; padding: 4px 0px 2px 0px; font-size: 16px; border: 0px solid Black;" value="&{template:check} {{name=@{character_name} *for* @{weapon2_name}}} {{Damage=[[@{weapon2_damage}+@{weapon2_melee_bonus}*@{melee_bonus}+@{weapon2_range_bonus}*@{ranged_bonus}]]}} {{Description=@{weapon2_description}}}" ></button>
|
|
<input type="text" name="attr_weapon2_name" class="sheet-profileInput" style="width: 132px; height: 28px; text-align: center; margin: -6px 0px 0px 4px; border: 0px; border-radius: 0; border-bottom: 2px solid Black;" value="">
|
|
<input type="text" name="attr_weapon2_damage" class="sheet-profileInput" style="width: 90px; height: 28px; text-align: center; margin: -6px 0px 0px 4px; border: 2px solid Black;" value="" data-i18n-title="weaponDamage-c">
|
|
<div style="display: inline-block; vertical-align: top; width: 16px; height: 28px; margin: -12px 0px 0px 0px; color: transparent; border: 0px solid Green;">
|
|
<input name="attr_weapon2_melee_bonus" type="checkbox" style="width: 12px; height: 12px; margin: 3px 0px 0px 2px; color: transparent; border: 2px solid Black; border-radius: 0; accent-color: Black;" value="1" data-i18n-title="addMeleeDamageBonus-c">
|
|
<input name="attr_weapon2_range_bonus" type="checkbox" style="width: 12px; height: 12px; margin: 3px 0px 0px 2px; color: transparent; border: 2px solid Black; border-radius: 0; accent-color: Black;" value="1" data-i18n-title="addRangeDamageBonus-c">
|
|
</div>
|
|
<input type="text" name="attr_weapon2_description" class="sheet-profileInput" style="width: 100px; height: 28px; text-align: center; margin: -6px 0px 0px 4px; border: 0px; border-radius: 0; border-bottom: 2px solid Black;" value="" data-i18n-title="effectDescription-c">
|
|
</div>
|
|
<div style="display: inline-block; vertical-align: top; width: 380px; height: 30px; margin: 14px 0px 0px 0px; color: transparent; border: 1px solid transparent;">
|
|
<button type="roll" name="roll_weapon3" style="width: 16px; height: 24px; font-family: dicefontd20; margin: -12px 0px 0px 0px; color: Red; background-color: transparent; padding: 4px 0px 2px 0px; font-size: 16px; border: 0px solid Black;" value="&{template:check} {{name=@{character_name} *for* @{weapon3_name}}} {{Damage=[[@{weapon3_damage}+@{weapon3_melee_bonus}*@{melee_bonus}+@{weapon3_range_bonus}*@{ranged_bonus}]]}} {{Description=@{weapon3_description}}}" ></button>
|
|
<input type="text" name="attr_weapon3_name" class="sheet-profileInput" style="width: 132px; height: 28px; text-align: center; margin: -9px 0px 0px 4px; border: 0px; border-radius: 0; border-bottom: 2px solid Black;" value="">
|
|
<input type="text" name="attr_weapon3_damage" class="sheet-profileInput" style="width: 90px; height: 28px; text-align: center; margin: -9px 0px 0px 4px; border: 2px solid Black;" value="" data-i18n-title="weaponDamage-c">
|
|
<div style="display: inline-block; vertical-align: top; width: 16px; height: 28px; margin: -12px 0px 0px 0px; color: transparent; border: 0px solid Green;">
|
|
<input name="attr_weapon3_melee_bonus" type="checkbox" style="width: 12px; height: 12px; margin: -6px 0px 0px 2px; color: transparent; border: 2px solid Black; border-radius: 0; accent-color: Black;" value="1" data-i18n-title="addMeleeDamageBonus-c">
|
|
<input name="attr_weapon3_range_bonus" type="checkbox" style="width: 12px; height: 12px; margin: -6px 0px 0px 2px; color: transparent; border: 2px solid Black; border-radius: 0; accent-color: Black;" value="1" data-i18n-title="addRangeDamageBonus-c">
|
|
</div>
|
|
<input type="text" name="attr_weapon3_description" class="sheet-profileInput" style="width: 100px; height: 28px; text-align: center; margin: -9px 0px 0px 4px; border: 0px; border-radius: 0; border-bottom: 2px solid Black;" value="" data-i18n-title="effectDescription-c">
|
|
</div>
|
|
<div style="display: inline-block; vertical-align: top; width: 380px; height: 30px; margin: 14px 0px 0px 0px; color: transparent; border: 1px solid transparent;">
|
|
<button type="roll" name="roll_weapon4" style="width: 16px; height: 24px; font-family: dicefontd20; margin: -9px 0px 0px 0px; color: Red; background-color: transparent; padding: 4px 0px 2px 0px; font-size: 16px; border: 0px solid Black;" value="&{template:check} {{name=@{character_name} *for* @{weapon4_name}}} {{Damage=[[@{weapon4_damage}+@{weapon4_melee_bonus}*@{melee_bonus}+@{weapon4_range_bonus}*@{ranged_bonus}]]}} {{Description=@{weapon4_description}}}" ></button>
|
|
<input type="text" name="attr_weapon4_name" class="sheet-profileInput" style="width: 132px; height: 28px; text-align: center; margin: -12px 0px 0px 4px; border: 0px; border-radius: 0; border-bottom: 2px solid Black;" value="">
|
|
<input type="text" name="attr_weapon4_damage" class="sheet-profileInput" style="width: 90px; height: 28px; text-align: center; margin: -12px 0px 0px 4px; border: 2px solid Black;" value="" data-i18n-title="weaponDamage-c">
|
|
<div style="display: inline-block; vertical-align: top; width: 16px; height: 28px; margin: -12px 0px 0px 0px; color: transparent; border: 0px solid Green;">
|
|
<input name="attr_weapon4_melee_bonus" type="checkbox" style="width: 12px; height: 12px; margin: -6px 0px 0px 2px; color: transparent; border: 2px solid Black; border-radius: 0; accent-color: Black;" value="1" data-i18n-title="addMeleeDamageBonus-c">
|
|
<input name="attr_weapon4_range_bonus" type="checkbox" style="width: 12px; height: 12px; margin: -6px 0px 0px 2px; color: transparent; border: 2px solid Black; border-radius: 0; accent-color: Black;" value="1" data-i18n-title="addRangeDamageBonus-c">
|
|
</div>
|
|
<input type="text" name="attr_weapon4_description" class="sheet-profileInput" style="width: 100px; height: 28px; text-align: center; margin: -12px 0px 0px 4px; border: 0px; border-radius: 0; border-bottom: 2px solid Black;" value="" data-i18n-title="effectDescription-c">
|
|
</div>
|
|
</div>
|
|
<!-- Equipment -->
|
|
<div style='display: inline-block; vertical-align: top; width: 810px; height: 440px; margin: 0px 0px 0px 0px; border: 2px solid transparent;'>
|
|
<label class="sheet-profileLabel" style="width: 800px; text-align: left; margin: 36px 0px 0px 2px; padding: 2px;" data-i18n="equipment-u">EQUIPMENT</label>
|
|
|
|
<div style='display: inline-block; vertical-align: top; width: 390px; height: 370px; margin: 0px 0px 0px 0px; border: 2px solid transparent;'>
|
|
<label class="sheet-profileLabel" style="width: 50px; text-align: left; font-size: 16px; font-weight: 500; font-style: italic; margin: 12px 0px 0px 0px; padding: 2px;" data-i18n="item-c">Item</label>
|
|
<label class="sheet-profileLabel" style="width: 150px; text-align: left; font-size: 16px; font-weight: 500; font-style: italic; margin: 12px 0px 0px 144px; padding: 2px;" data-i18n="location-c">Location</label>
|
|
|
|
<input type="text" name="attr_item1l" class="sheet-profileInput" style="width: 170px; height: 28px; margin: 12px 0px 0px 0px; border: 0px; border-radius: 0; border-bottom: 3px solid Black;" value="">
|
|
<input type="text" name="attr_location1l" class="sheet-profileInput" style="width: 130px; height: 28px; margin: 12px 0px 0px 26px; border: 0px; border-radius: 0; border-bottom: 3px solid Black;" value="">
|
|
|
|
<input type="text" name="attr_item2l" class="sheet-profileInput" style="width: 170px; height: 28px; margin: 16px 0px 0px 0px; border: 0px; border-radius: 0; border-bottom: 3px solid Black;" value="">
|
|
<input type="text" name="attr_location2l" class="sheet-profileInput" style="width: 130px; height: 28px; margin: 16px 0px 0px 26px; border: 0px; border-radius: 0; border-bottom: 3px solid Black;" value="">
|
|
|
|
<input type="text" name="attr_item3l" class="sheet-profileInput" style="width: 170px; height: 28px; margin: 16px 0px 0px 0px; border: 0px; border-radius: 0; border-bottom: 3px solid Black;" value="">
|
|
<input type="text" name="attr_location3l" class="sheet-profileInput" style="width: 130px; height: 28px; margin: 16px 0px 0px 26px; border: 0px; border-radius: 0; border-bottom: 3px solid Black;" value="">
|
|
|
|
<input type="text" name="attr_item4l" class="sheet-profileInput" style="width: 170px; height: 28px; margin: 16px 0px 0px 0px; border: 0px; border-radius: 0; border-bottom: 3px solid Black;" value="">
|
|
<input type="text" name="attr_location4l" class="sheet-profileInput" style="width: 130px; height: 28px; margin: 16px 0px 0px 26px; border: 0px; border-radius: 0; border-bottom: 3px solid Black;" value="">
|
|
|
|
<input type="text" name="attr_item5l" class="sheet-profileInput" style="width: 170px; height: 28px; margin: 16px 0px 0px 0px; border: 0px; border-radius: 0; border-bottom: 3px solid Black;" value="">
|
|
<input type="text" name="attr_location5l" class="sheet-profileInput" style="width: 130px; height: 28px; margin: 16px 0px 0px 26px; border: 0px; border-radius: 0; border-bottom: 3px solid Black;" value="">
|
|
|
|
<input type="text" name="attr_item6l" class="sheet-profileInput" style="width: 170px; height: 28px; margin: 16px 0px 0px 0px; border: 0px; border-radius: 0; border-bottom: 3px solid Black;" value="">
|
|
<input type="text" name="attr_location6l" class="sheet-profileInput" style="width: 130px; height: 28px; margin: 16px 0px 0px 26px; border: 0px; border-radius: 0; border-bottom: 3px solid Black;" value="">
|
|
|
|
<label class="sheet-profileLabel" style="width: 80px; text-align: left; font-size: 20px; font-weight: 700; font-style: italic; margin: 40px 0px 0px 0px; padding: 2px;" data-i18n="currency-u">Currency</label>
|
|
<input type="text" name="attr_currency" class="sheet-profileInput" style="width: 230px; height: 28px; text-align: center; margin: 36px 0px 0px 8px; border: 0px; border-radius: 0; border-bottom: 3px solid Black;" value="">
|
|
</div>
|
|
|
|
<div style='display: inline-block; vertical-align: top; width: 390px; height: 370px; margin: 0px 0px 0px 0px; border: 2px solid transparent;'>
|
|
<label class="sheet-profileLabel" style="width: 50px; text-align: left; font-size: 16px; font-weight: 500; font-style: italic; margin: 12px 0px 0px 0px; padding: 2px;" data-i18n="item-c">Item</label>
|
|
<label class="sheet-profileLabel" style="width: 150px; text-align: left; font-size: 16px; font-weight: 500; font-style: italic; margin: 12px 0px 0px 144px; padding: 2px;" data-i18n="location-c">Location</label>
|
|
|
|
<input type="text" name="attr_item1r" class="sheet-profileInput" style="width: 170px; height: 28px; margin: 12px 0px 0px 0px; border: 0px; border-radius: 0; border-bottom: 3px solid Black;" value="">
|
|
<input type="text" name="attr_location1r" class="sheet-profileInput" style="width: 130px; height: 28px; margin: 12px 0px 0px 26px; border: 0px; border-radius: 0; border-bottom: 3px solid Black;" value="">
|
|
|
|
<input type="text" name="attr_item2r" class="sheet-profileInput" style="width: 170px; height: 28px; margin: 16px 0px 0px 0px; border: 0px; border-radius: 0; border-bottom: 3px solid Black;" value="">
|
|
<input type="text" name="attr_location2r" class="sheet-profileInput" style="width: 130px; height: 28px; margin: 16px 0px 0px 26px; border: 0px; border-radius: 0; border-bottom: 3px solid Black;" value="">
|
|
|
|
<input type="text" name="attr_item3r" class="sheet-profileInput" style="width: 170px; height: 28px; margin: 16px 0px 0px 0px; border: 0px; border-radius: 0; border-bottom: 3px solid Black;" value="">
|
|
<input type="text" name="attr_location3r" class="sheet-profileInput" style="width: 130px; height: 28px; margin: 16px 0px 0px 26px; border: 0px; border-radius: 0; border-bottom: 3px solid Black;" value="">
|
|
|
|
<input type="text" name="attr_item4r" class="sheet-profileInput" style="width: 170px; height: 28px; margin: 16px 0px 0px 0px; border: 0px; border-radius: 0; border-bottom: 3px solid Black;" value="">
|
|
<input type="text" name="attr_location4r" class="sheet-profileInput" style="width: 130px; height: 28px; margin: 16px 0px 0px 26px; border: 0px; border-radius: 0; border-bottom: 3px solid Black;" value="">
|
|
|
|
<input type="text" name="attr_item5r" class="sheet-profileInput" style="width: 170px; height: 28px; margin: 16px 0px 0px 0px; border: 0px; border-radius: 0; border-bottom: 3px solid Black;" value="">
|
|
<input type="text" name="attr_location5r" class="sheet-profileInput" style="width: 130px; height: 28px; margin: 16px 0px 0px 26px; border: 0px; border-radius: 0; border-bottom: 3px solid Black;" value="">
|
|
|
|
<input type="text" name="attr_item6r" class="sheet-profileInput" style="width: 170px; height: 28px; margin: 16px 0px 0px 0px; border: 0px; border-radius: 0; border-bottom: 3px solid Black;" value="">
|
|
<input type="text" name="attr_location6r" class="sheet-profileInput" style="width: 130px; height: 28px; margin: 16px 0px 0px 26px; border: 0px; border-radius: 0; border-bottom: 3px solid Black;" value="">
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<!-- Roll Templates -->
|
|
|
|
<rolltemplate class="sheet-rolltemplate-initiative">
|
|
<div class="container">
|
|
<div><h1>Initiative *for* {{name}}</h1></div>
|
|
<div class="arrow-container"><div class="arrow-right"></div></div>
|
|
<div class="rowcolor"><span class="tcat">Rolled: </span>{{computed::roll1}}</div>
|
|
</div>
|
|
</rolltemplate>
|
|
|
|
<rolltemplate class="sheet-rolltemplate-check">
|
|
<div class="container">
|
|
<!-- <div><h1>{{name}}{{#SkillName}} *for* {{SkillName}}{{/SkillName}}</h1></div> -->
|
|
<div><h1>{{name}}{{#SkillName}}<span class="tcat" data-i18n="for-l"> *for* </span> {{SkillName}}{{/SkillName}}</h1></div>
|
|
<div class="arrow-container"><div class="arrow-right"></div></div>
|
|
{{#Check}}
|
|
<div class="rowcolor"><span class="tcat" data-i18n="check:-c">Check: </span>{{computed::Roll}}</div>
|
|
<div class="rowcolor"><span class="tcat" data-i18n="target:-c">Target: </span>{{Target}}</div>
|
|
{{#rollBetween() computed::Roll 0 Target }}
|
|
<div class="rowcolor"><span class="tcat" data-i18n="result:-c">Result: </span><span data-i18n="success-c">Success</span></div>
|
|
{{/rollBetween() computed::Roll 0 Target }}
|
|
{{#rollGreater() computed::Roll Target}}
|
|
<div class="rowcolor"><span class="tcat" data-i18n="result:-c">Result: </span><span data-i18n="failure-c">Failure</span></div>
|
|
{{/rollGreater() computed::Roll Target}}
|
|
{{/Check}}
|
|
{{#computed::Status}}
|
|
{{#rollTotal() computed::Status 0 }}
|
|
<div class="rowcolor"><span class="tcat" data-i18n="status:-c">Status: </span><span data-i18n="normal-c">Normal</span></div>
|
|
{{/rollTotal() computed::Status 0 }}
|
|
{{#rollTotal() computed::Status 1 }}
|
|
<div class="rowcolor"><span class="tcat" data-i18n="status:-c">Status: </span><span data-i18n="critical!-c">Critical!</span></div>
|
|
{{/rollTotal() computed::Status 1 }}
|
|
{{#rollTotal() computed::Status 2 }}
|
|
<div class="rowcolor"><span class="tcat" data-i18n="status:-c">Status: </span><span data-i18n="fumble!-c">Fumble!</span></div>
|
|
{{/rollTotal() computed::Status 2 }}
|
|
{{#rollTotal() computed::Status 3 }}
|
|
<div class="rowcolor"><span class="tcat" data-i18n="status:-c">Status: </span><span data-i18n="alwaysSuccess-c">Always Success</span></div>
|
|
{{/rollTotal() computed::Status 3 }}
|
|
{{#rollTotal() computed::Status 4 }}
|
|
<div class="rowcolor"><span class="tcat" data-i18n="status:-c">Status: </span><span data-i18n="alwaysFailure-c">Always Failure</span></div>
|
|
{{/rollTotal() computed::Status 4 }}
|
|
{{/computed::Status}}
|
|
{{#DL}}
|
|
<div class="rowcolor"><span class="tcat">DL: </span>{{DL}}</div>
|
|
{{#rollLess() computed::Roll DL }}
|
|
<div class="rowcolor"><span class="tcat" data-i18n="result:-c">Result: </span><span data-i18n="failure-c">Failure</span></div>
|
|
{{/rollLess() computed::Roll DL }}
|
|
{{#^rollLess() computed::Roll DL }}
|
|
<div class="rowcolor"><span class="tcat" data-i18n="result:-c">Result: </span><span data-i18n="success-c">Success!</span></div>
|
|
{{/^rollLess() computed::Roll DL }}
|
|
{{/DL}}
|
|
{{#Damage}}
|
|
<div class="rowcolor"><span class="tcat" data-i18n="damage:-c">Damage: </span>{{Damage}}</div>
|
|
{{/Damage}}
|
|
{{#Description}}
|
|
<div class="rowcolor"><span class="tcat" data-i18n="description:-c">Description: </span>{{Description}}</div>
|
|
{{/Description}}
|
|
</div>
|
|
</rolltemplate>
|
|
|
|
|
|
<script type="text/worker">
|
|
|
|
on("sheet:opened", function(eventInfo){
|
|
|
|
|
|
getAttrs(["setupDone"], function(pvalue) {
|
|
console.log("Hello there");
|
|
|
|
let SetupDone=parseInt(pvalue.setupDone);
|
|
console.log("setupdone: "+SetupDone );
|
|
|
|
if (SetupDone==0){
|
|
console.log("Do setup");
|
|
setAttrs({setupDone:1});
|
|
}
|
|
});
|
|
});
|
|
|
|
|
|
on("change:strength change:perception change:melee change:agility change:reasoning change:ranged change:stealth change:influence change:toughness change:willpower", function(eventInfo) {
|
|
let TriggerName = eventInfo.triggerName;
|
|
let Name = eventInfo.triggerName.substring(8);
|
|
|
|
//console.log(" TriggerName: " + TriggerName);
|
|
//console.log(" Name: " + Name);
|
|
//console.log(" eventInfo: " + JSON.stringify(eventInfo));
|
|
|
|
getAttrs(["strength", "perception","melee","agility","reasoning", "ranged", "stealth","influence","toughness","willpower"], function(values) {
|
|
let Strength = parseInt(values.strength)||0;
|
|
let Perception = parseInt(values.perception)||0;
|
|
let Melee = parseInt(values.melee)||0;
|
|
let Agility = parseInt(values.agility)||0;
|
|
let Reasoning = parseInt(values.reasoning)||0;
|
|
let Ranged = parseInt(values.ranged)||0;
|
|
let Stealth = parseInt(values.stealth)||0;
|
|
let Influence = parseInt(values.influence)||0;
|
|
let Toughness = parseInt(values.toughness)||0;
|
|
let Willpower = parseInt(values.willpower)||0;
|
|
let StrengthBonus = Math.floor(Strength/10);
|
|
let PerceptionBonus = Math.floor(Perception/10);
|
|
let MeleeBonus = Math.floor(Melee/10);
|
|
let AgilityBonus = Math.floor(Agility/10);
|
|
let ReasoningBonus = Math.floor(Reasoning/10);
|
|
let RangedBonus = Math.floor(Ranged/10);
|
|
let StealthBonus = Math.floor(Stealth/10);
|
|
let InfluenceBonus = Math.floor(Influence/10);
|
|
let ToughnessBonus = Math.floor(Toughness/10);
|
|
let WillpowerBonus = Math.floor(Willpower/10);
|
|
|
|
setAttrs({
|
|
strength_bonus: StrengthBonus, perception_bonus: PerceptionBonus, melee_bonus: MeleeBonus, agility_bonus: AgilityBonus,
|
|
reasoning_bonus:ReasoningBonus, ranged_bonus: RangedBonus, stealth_bonus: StealthBonus, influence_bonus: InfluenceBonus,
|
|
toughness_bonus: ToughnessBonus, willpower_bonus: WillpowerBonus
|
|
});
|
|
});
|
|
});
|
|
|
|
|
|
on("change:specialism1 change:specialism2 change:specialism3 change:specialism4 change:specialism5", function(eventInfo) {
|
|
let TriggerName = eventInfo.triggerName;
|
|
let Name = eventInfo.triggerName.substring(8);
|
|
|
|
//console.log(" TriggerName: " + TriggerName);
|
|
//console.log(" Name: " + Name);
|
|
//console.log(" eventInfo: " + JSON.stringify(eventInfo));
|
|
|
|
getAttrs(["specialism1", "specialism2","specialism3","specialism4","specialism5"], function(values) {
|
|
let Specialism1 = parseInt(values.specialism1)||0;
|
|
let Specialism2 = parseInt(values.specialism2)||0;
|
|
let Specialism3 = parseInt(values.specialism3)||0;
|
|
let Specialism4 = parseInt(values.specialism4)||0;
|
|
let Specialism5 = parseInt(values.specialism5)||0;
|
|
|
|
let Specialism1Bonus = Math.floor(Specialism1/10);
|
|
let Specialism2Bonus = Math.floor(Specialism2/10);
|
|
let Specialism3Bonus = Math.floor(Specialism3/10);
|
|
let Specialism4Bonus = Math.floor(Specialism4/10);
|
|
let Specialism5Bonus = Math.floor(Specialism5/10);
|
|
|
|
|
|
setAttrs({
|
|
specialism1_bonus: Specialism1Bonus, specialism2_bonus: Specialism2Bonus, specialism3_bonus: Specialism3Bonus,
|
|
specialism4_bonus: Specialism4Bonus, specialism5_bonus:Specialism5Bonus
|
|
});
|
|
});
|
|
});
|
|
|
|
on("change:toughness_bonus change:willpower_bonus", function(eventInfo) {
|
|
let TriggerName = eventInfo.triggerName;
|
|
let Name = eventInfo.triggerName.substring(8);
|
|
|
|
//console.log(" TriggerName: " + TriggerName);
|
|
//console.log(" Name: " + Name);
|
|
//console.log(" eventInfo: " + JSON.stringify(eventInfo));
|
|
|
|
getAttrs(["toughness_bonus","willpower_bonus"], function(values) {
|
|
let ToughnessBonus = parseInt(values.toughness_bonus)||0;
|
|
let WillpowerBonus = parseInt(values.willpower_bonus)||0;
|
|
let HealthMax = (ToughnessBonus + WillpowerBonus) * 2;
|
|
console.log(" HealthMax: " + HealthMax);
|
|
|
|
setAttrs({
|
|
health_maximum: HealthMax
|
|
});
|
|
});
|
|
|
|
});
|
|
|
|
|
|
on("clicked:strength clicked:perception clicked:melee clicked:agility clicked:reasoning clicked:ranged clicked:stealth clicked:influence clicked:toughness clicked:willpower", function(eventInfo) {
|
|
let TriggerName = eventInfo.triggerName;
|
|
let Name = eventInfo.triggerName.substring(8);
|
|
|
|
//console.log(" TriggerName: " + TriggerName);
|
|
//console.log(" Name: " + Name);
|
|
//console.log(" eventInfo: " + JSON.stringify(eventInfo));
|
|
|
|
getAttrs(["strength", "perception","melee","agility","reasoning", "ranged", "stealth","influence","toughness","willpower",
|
|
"strength_bonus", "perception_bonus","melee_bonus","agility_bonus","reasoning_bonus", "ranged_bonus", "stealth_bonus",
|
|
"influence_bonus","toughness_bonus","willpower_bonus"], function(values) {
|
|
let Strength = parseInt(values.strength)||0;
|
|
let Perception = parseInt(values.perception)||0;
|
|
let Melee = parseInt(values.melee)||0;
|
|
let Agility = parseInt(values.agility)||0;
|
|
let Reasoning = parseInt(values.reasoning)||0;
|
|
let Ranged = parseInt(values.ranged)||0;
|
|
let Stealth = parseInt(values.stealth)||0;
|
|
let Influence = parseInt(values.influence)||0;
|
|
let Toughness = parseInt(values.toughness)||0;
|
|
let Willpower = parseInt(values.willpower)||0;
|
|
let StrengthBonus = parseInt(values.strength_bonus)||0;
|
|
let PerceptionBonus = parseInt(values.perception_bonus)||0;
|
|
let MeleeBonus = parseInt(values.melee_bonus)||0;
|
|
let AgilityBonus = parseInt(values.agility_bonus)||0;
|
|
let ReasoningBonus = parseInt(values.reasoning_bonus)||0;
|
|
let RangedBonus = parseInt(values.ranged_bonus)||0;
|
|
let StealthBonus = parseInt(values.stealth_bonus)||0;
|
|
let InfluenceBonus = parseInt(values.influence_bonus)||0;
|
|
let ToughnessBonus = parseInt(values.toughness_bonus)||0;
|
|
let WillpowerBonus = parseInt(values.willpower_bonus)||0;
|
|
|
|
|
|
let AttributeName = "No Name";
|
|
let Target = 0;
|
|
|
|
switch (Name) {
|
|
case "strength": AttributeName = "Strength"; Target = Strength /*+ StrengthBonus*/ ; break;
|
|
case "perception": AttributeName = "Perception"; Target = Perception /*+ PerceptionBonus*/; break;
|
|
case "melee": AttributeName = "Melee"; Target = Melee /*+ MeleeBonus*/; break;
|
|
case "agility": AttributeName = "Agility"; Target = Agility /*+ AgilityBonus*/; break;
|
|
case "reasoning": AttributeName = "Reasoning"; Target = Reasoning /*+ ReasoningBonus*/; break;
|
|
case "ranged": AttributeName = "Ranged"; Target = Ranged /*+ RangedBonus*/; break;
|
|
case "stealth": AttributeName = "Stealth"; Target = Stealth /*+ StealthBonus*/; break;
|
|
case "influence": AttributeName = "Influence"; Target = Influence /*+ InfluenceBonus*/; break;
|
|
case "toughness": AttributeName = "Toughness"; Target = Toughness /*+ ToughnessBonus*/; break;
|
|
case "willpower": AttributeName = "Willpower"; Target = Willpower /*+ WillpowerBonus*/; break;
|
|
default:
|
|
AttributeName = "No Name";
|
|
}
|
|
|
|
console.log(" Name: " + Name + " AttributeName " + AttributeName + " Target " + Target);
|
|
|
|
|
|
const rollBase = "&{template:check} {{name=@{character_name} *for* " + AttributeName + "}} {{Check=[[1]]}} {{Status=[[0]]}} {{Roll=[[1d100]]}} {{Target=[[@{"+Name+"}]]}}";
|
|
console.log(" rollBase = " + rollBase);
|
|
|
|
startRoll(rollBase, rollResult => {
|
|
|
|
console.log(" Roll Dice " + rollResult.results.Roll.dice );
|
|
//console.log(" Roll Dice 1 " + rollResult.results.Roll.dice[0] );
|
|
let Die1 = rollResult.results.Roll.dice[0];
|
|
let Status = 0;
|
|
if ((Die1 === 1) ||(Die1 === 11) ||(Die1 === 22) ||(Die1 === 33) ||(Die1 === 44) ||(Die1 === 55) ||(Die1 === 66) || (Die1 === 77) ||(Die1 === 88) ||(Die1 === 99) ||(Die1 === 100)) {
|
|
console.log(" Extreme Result Detected " + Die1 );
|
|
if (Die1 <= Target) {
|
|
Status = 1; // "Critical"
|
|
} else {
|
|
Status = 2; // "Fumble"
|
|
}
|
|
} else {
|
|
if ((Die1 < 6) && (Target > Die1)){
|
|
Status = 3; // "Always Success"
|
|
} else if ((Die1 > 95) && (Target < Die1)){
|
|
Status = 4; // "Always Failure"
|
|
}
|
|
}
|
|
|
|
let computed = rollResult.results.Roll.result; // Not altering total, just want to check if War Dice were used
|
|
console.log(" Status " + Status );
|
|
|
|
finishRoll(
|
|
rollResult.rollId,
|
|
{
|
|
Status: Status
|
|
}
|
|
);
|
|
});
|
|
|
|
});
|
|
});
|
|
|
|
|
|
on("clicked:specialism1 clicked:specialism2 clicked:specialism3 clicked:specialism4 clicked:specialism5", function(eventInfo) {
|
|
let TriggerName = eventInfo.triggerName;
|
|
let Name = eventInfo.triggerName.substring(8);
|
|
|
|
console.log(" TriggerName: " + TriggerName);
|
|
console.log(" Name: " + Name);
|
|
console.log(" eventInfo: " + JSON.stringify(eventInfo));
|
|
|
|
getAttrs(["specialism1", "specialism1_name","specialism1_bonus","specialism2", "specialism2_name","specialism2_bonus",
|
|
"specialism3", "specialism3_name","specialism3_bonus", "specialism4", "specialism4_name","specialism4_bonus",
|
|
"specialism5", "specialism5_name","specialism5_bonus"], function(values) {
|
|
let Specialism1 = parseInt(values.specialism1)||0;
|
|
let Specialism1Bonus = parseInt(values.specialism1_bonus)||0;
|
|
let Specialism1Name = values.specialism1_name;
|
|
|
|
let Specialism2 = parseInt(values.specialism2)||0;
|
|
let Specialism2Bonus = parseInt(values.specialism2_bonus)||0;
|
|
let Specialism2Name = values.specialism2_name;
|
|
|
|
let Specialism3 = parseInt(values.specialism3)||0;
|
|
let Specialism3Bonus = parseInt(values.specialism3_bonus)||0;
|
|
let Specialism3Name = values.specialism3_name;
|
|
|
|
let Specialism4 = parseInt(values.specialism4)||0;
|
|
let Specialism4Bonus = parseInt(values.specialism4_bonus)||0;
|
|
let Specialism4Name = values.specialism4_name;
|
|
|
|
let Specialism5 = parseInt(values.specialism5)||0;
|
|
let Specialism5Bonus = parseInt(values.specialism5_bonus)||0;
|
|
let Specialism5Name = values.specialism5_name;
|
|
|
|
|
|
let AttributeName = "No Name";
|
|
let Target = 0;
|
|
|
|
switch (Name) {
|
|
case "specialism1": AttributeName = Specialism1Name; Target = Specialism1 /*+ Specialism1Bonus*/; break;
|
|
case "specialism2": AttributeName = Specialism2Name; Target = Specialism2 /*+ Specialism2Bonus*/; break;
|
|
case "specialism3": AttributeName = Specialism3Name; Target = Specialism3 /*+ Specialism3Bonus*/; break;
|
|
case "specialism4": AttributeName = Specialism4Name; Target = Specialism4 /*+ Specialism4Bonus*/; break;
|
|
case "specialism5": AttributeName = Specialism5Name; Target = Specialism5 /*+ Specialism5Bonus*/; break;
|
|
default:
|
|
AttributeName = "No Name";
|
|
}
|
|
|
|
console.log(" Name: " + Name + " AttributeName " + AttributeName);
|
|
|
|
const rollBase = "&{template:check} {{name=@{character_name} *specials* " + AttributeName + "}} {{Check=[[1]]}} {{Status=[[0]]}} {{Roll=[[1d100]]}} {{Target=[[@{"+Name+"}]]}}";
|
|
console.log(" rollBase = " + rollBase);
|
|
|
|
startRoll(rollBase, rollResult => {
|
|
|
|
console.log(" Roll Dice " + rollResult.results.Roll.dice );
|
|
console.log(" Roll Dice 1 " + rollResult.results.Roll.dice[0] );
|
|
let Die1 = rollResult.results.Roll.dice[0];
|
|
let Status = 0;
|
|
if ((Die1 === 1) ||(Die1 === 11) ||(Die1 === 22) ||(Die1 === 33) ||(Die1 === 44) ||(Die1 === 55) ||(Die1 === 66) || (Die1 === 77) ||(Die1 === 88) ||(Die1 === 99) ||(Die1 === 100)) {
|
|
console.log(" Extreme Result Detected " + Die1 );
|
|
if (Die1 <= Target) {
|
|
Status = 1; // "Critical"
|
|
} else {
|
|
Status = 2; // "Fumble"
|
|
}
|
|
} else {
|
|
if ((Die1 < 6) && (Target > Die1)){
|
|
Status = 3; // "Always Success"
|
|
} else if ((Die1 > 95) && (Target < Die1)){
|
|
Status = 4; // "Always Failure"
|
|
}
|
|
}
|
|
|
|
let computed = rollResult.results.Roll.result; // Not altering total, just want to check if War Dice were used
|
|
|
|
finishRoll(
|
|
rollResult.rollId,
|
|
{
|
|
Status: Status
|
|
}
|
|
);
|
|
});
|
|
|
|
});
|
|
});
|
|
|
|
|
|
|
|
on('clicked:initiative', (info) => {
|
|
startRoll("&{template:initiative} {{name=@{character_name}}} {{roll1=[[1d10+@{agility_bonus} &{tracker}]]}}", (results) => {
|
|
const total = results.results.roll1.result;
|
|
const computed = total;
|
|
|
|
setAttrs({ initiative: computed });
|
|
|
|
finishRoll(
|
|
results.rollId,
|
|
{
|
|
roll1: computed
|
|
}
|
|
);
|
|
});
|
|
});
|
|
|
|
</script>
|