mirror of
https://github.com/Nighthawk42/roll20-character-sheets.git
synced 2026-08-31 04:02:29 +00:00
* Updates for better translation support * Update translation file * Fixed ^willpower * Fixed display_attributes to use translations * Added quality to chat button & updated setting action * Added ammo button * Add button css * Updated the image addresses
4023 lines
266 KiB
HTML
4023 lines
266 KiB
HTML
<!-- ~~~~~~~~ Character Sheet Page, default view ~~~~~~~~ -->
|
|
<input class="sheet_type" name="attr_sheet_type" type="hidden" value="pc">
|
|
<!-- ~~~~~~~~ Show & hide optional Magic & Resonance areas ~~~~~~~~ -->
|
|
<input class="character-type" name="attr_flag_special" type="hidden" value="mundane">
|
|
|
|
<!-- ~~~~~~~~+:+:::::+:+::+:+:+::+:+:+:+::+:+::::::+:+::+:+:+:+::+:+:::::+:+:+:+:::::+:+::+:+:+::+:+:+:+::+:+:+:~~~~~~~~ -->
|
|
<!-- ~~~~~~~~:+:+::+:+:+:+:+::+:+:+:+:+:+: Tabs :+:+::+:+:+::+:+:+:+::+:+:+::+:+:+:+::+:+:::::+:+:+:+:+:+:+:+:+:~~~~~~~~ -->
|
|
<!-- ~~~~~~~~+:+:::::+:+::+:+:::::+:+::+:+:+::+:+:+:+::+:+:::::+:+:::::+:+:+:+:::::+:+::+:+:+::+:+:+:+::+::+:+:+~~~~~~~~ -->
|
|
<div class="tabs">
|
|
<div class="info-box">
|
|
<img src="https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Shadowrun5thEdition/ShadowrunLogo.png" style="max-height: 200px;" />
|
|
<div>
|
|
<h1 data-i18n="character">Character</h1><input type="text" name="attr_character_name" placeholder="Character name" title="@{character_name}" />
|
|
<h1 data-i18n="player">Player</h1><input type="text" name="attr_player_name" placeholder="Player name" title="@{player_name}" />
|
|
</div>
|
|
</div>
|
|
<div class="tab-whisper">
|
|
<input type="hidden" name="attr_gm_toggle" value=" " /><button type="action" name="act_whisper" title="whisper" data-i18n="gm">/w GM</button>
|
|
</div>
|
|
<div class="tab-toggles">
|
|
<input type="hidden" name="attr_wound_toggle" value="@{wounds}" /><button type="action" name="act_wound" title="@{wound_toggle}" data-i18n="wounds">wounds</button>
|
|
<input type="hidden" name="attr_modifier_toggle" value="?{Modifiers +/-|0}" /><button type="action" name="act_modifier" title="@{modifier_toggle}" data-i18n="modifiers">modifiers</button>
|
|
<input type="hidden" name="attr_edge_toggle" value="@{edge}" /><button type="action" name="act_edge" title="@{edge_toggle}" data-i18n="edge">edge</button>
|
|
<button type="roll" value="@{gm_toggle} &{template:rolls}{{header=^{d6}}}{{base=^{d6}}}{{dice=[[(?{d6s|0}d6>5)]]}}" title="Roll D6s"><span class="d6">L</span></button>
|
|
</div>
|
|
<div class="tab-col">
|
|
<input type="hidden" name="attr_tab" value="core" />
|
|
<button type="action" name="act_tab_core" title="@{tab}" data-i18n="core">core</button>
|
|
<button type="action" name="act_tab_arms" title="@{tab}" data-i18n="arms">arms</button>
|
|
<button type="action" name="act_tab_augs" title="@{tab}" data-i18n="augs">augs</button>
|
|
<button type="action" name="act_tab_gear" title="@{tab}" data-i18n="gear">gear</button>
|
|
<button type="action" name="act_tab_magic" title="@{tab}" data-i18n="magic">magic</button>
|
|
<button type="action" name="act_tab_matrix" title="@{tab}" data-i18n="matrix">matrix</button>
|
|
<button type="action" name="act_tab_social" title="@{tab}" data-i18n="social">social</button>
|
|
<button type="action" name="act_tab_vehicle" title="@{tab}" data-i18n="vehicle">vehicle</button>
|
|
<button type="action" name="act_tab_options" title="@{tab}">y</button>
|
|
</div>
|
|
<div class="tab-sheet">
|
|
<select name="attr_sheet_type" title="Sheet Type">
|
|
<option value="grunt" data-i18n="grunt">Grunt</option>
|
|
<option value="host" data-i18n="host">Host</option>
|
|
<option value="sprite" data-i18n="sprite">Sprite</option>
|
|
<option value="vehicle" data-i18n="vehicle">Vehicle</option>
|
|
<option value="pc" data-i18n="pc">PC</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- ~~~~~~~~+:+:::::+:+::+:+:+::+:+:+:+::+:+::::::+:+::+:+:+:+::+:+:::::+:+:+:+:::::+:+::+:+:+::+:+:+:+::::+:+:~~~~~~~~ -->
|
|
<!-- ~~~~~~~~:+:+::+:+:+:+:+::+:+:+:+:+:+: Start of PC Sheet :+:+::+:+:+::+:+:+:+::+:+:+::+:+:+:+::+:+:::::+:+:~~~~~~~~ -->
|
|
<!-- ~~~~~~~~+:+:::::+:+::+:+:::::+:+::+:+:+::+:+:+:+::+:+:::::+:+:::::+:+:+:+:::::+:+::+:+:+::+:+:+:+::+::+:+:+~~~~~~~~ -->
|
|
<div class="pc">
|
|
<input class="options_toggle" name="attr_tab" type="hidden" value="options" />
|
|
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ START OF THE STATIC LEFT COLUMN ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
|
|
<div class="static pc-col">
|
|
<div class="pc-row core-info">
|
|
<div class="header"><div class="triangle"></div><h1 data-i18n="personal">Personal Data</h1></div>
|
|
<div class="border-box">
|
|
<div class="pc-box small-box">
|
|
<div class="row-long pd-nam">
|
|
<h2 data-i18n="namealias">NAME/PRIMARY ALIAS</h2><input type="text" name="attr_name" placeholder="name" title="@{name}" />
|
|
</div>
|
|
<div class="row-long pd-meta">
|
|
<h2 data-i18n="metatype">Metatype</h2><input type="text" name="attr_metatype" placeholder="metatype" title="@{metatype}" />
|
|
<h2 data-i18n="ethnicity">Ethnicity</h2><input type="text" name="attr_ethnicity" placeholder="ethnicity" title="@{ethnicity}" />
|
|
</div>
|
|
<div class="row-long pd-age">
|
|
<h2 data-i18n="age">Age</h2><input type="text" name="attr_age" placeholder="age" title="@{age}" />
|
|
<h2 data-i18n="sex">Sex</h2><input type="text" name="attr_sex" placeholder="sex" title="@{sex}" />
|
|
<h2 data-i18n="height">Height</h2><input type="text" name="attr_height" placeholder="height" title="@{height}" >
|
|
<h2 data-i18n="weight">Weight</h2><input type="text" name="attr_weight" placeholder="weight" title="@{weight}" />
|
|
</div>
|
|
<div class="row-long pd-rep">
|
|
<h2 data-i18n="streetcred">Street Cred</h2><input type="number" name="attr_street_cred" placeholder="#" title="@{street_cred}" />
|
|
<h2 data-i18n="notoriety">Notoriety</h2><input type="number" name="attr_notoriety" placeholder="#" title="@{notoriety}" />
|
|
<h2 data-i18n="publicawareness">Public Awereness</h2><input type="number" name="attr_public_awareness" placeholder="#" title="@{public_awareness}" />
|
|
</div>
|
|
<div class="row-long pd-kar">
|
|
<h2 data-i18n="karma">Karma</h2><input type="number" name="attr_karma" placeholder="#" title="@{karma}" />
|
|
<h2 data-i18n="totalkarma">Total Karma</h2><input type="number" name="attr_total_karma" placeholder="#" title="@{total_karma}" />
|
|
<h2 data-i18n="misc">Misc</h2><input type="text" name="attr_misc" placeholder="misc" title="@{misc}" />
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ START OF ATTRIBUTES ROW ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
|
|
<div class="pc-row">
|
|
<div class="header"><div class="triangle"></div><h1 data-i18n="attributes">Attributes</h1></div>
|
|
<div class="border-box">
|
|
<div class="pc-box medium-box attr-box">
|
|
<input type="checkbox" class="settings-toggle" name="attr_flag_attribute" checked="checked" title="Settings toggle" /><span>x</span>
|
|
<div class="attr-col attr-col-left">
|
|
<!-- ~~:+: Body :+:~~ -->
|
|
<input type="hidden" name="attr_body" value="" />
|
|
<button type="roll" name="body" value="@{gm_toggle} &{template:rolls}{{header=^{body}}}{{base=^{attributes}}}{{dice=[[(@{body}+(@{attribute_roll})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}"><span class="red" data-i18n="body">Body</span></button>
|
|
<div class="attr-und">
|
|
<div class="settings">
|
|
<input type="number" name="attr_body_base" value="" placeholder="3" title="@{body_base}" /><span class="tiny-span"> + </span>
|
|
<input type="number" name="attr_body_modifier" value="" placeholder="0" title="@{body_modifier}" /><span class="tiny-span"> = </span>
|
|
<span class="totals" name="attr_display_body" title="@{body}" /></span>
|
|
</div>
|
|
<div class="display"><span name="attr_display_body" title="@{body}"></span></div>
|
|
</div>
|
|
<!-- ~~:+: Agility :+:~~ -->
|
|
<input type="hidden" name="attr_agility" value="" />
|
|
<button type="roll" name="agility" value="@{gm_toggle} &{template:rolls}{{header=^{agility}}}{{base=^{attributes}}}{{dice=[[(@{agility}+(@{attribute_roll})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}"><span class="red" data-i18n="agility">Agility</span></button>
|
|
<div class="attr-und">
|
|
<div class="settings">
|
|
<input type="number" name="attr_agility_base" value="" placeholder="3" title="@{agility_base}" /><span class="tiny-span"> + </span>
|
|
<input type="number" name="attr_agility_modifier" value="" placeholder="0" title="@{agility_modifier}" /><span class="tiny-span"> = </span>
|
|
<span class="totals" name="attr_display_agility" title="@{agility}" /></span>
|
|
</div>
|
|
<div class="display"><span name="attr_display_agility" title="@{agility}"></span></div>
|
|
</div>
|
|
<!-- ~~:+: Reaction :+:~~ -->
|
|
<input type="hidden" name="attr_reaction" value="" />
|
|
<button type="roll" name="reaction" value="@{gm_toggle} &{template:rolls}{{header=^{reaction}}}{{base=^{attributes}}}{{dice=[[(@{reaction}+(@{attribute_roll})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}"><span class="red" data-i18n="reaction">Reaction</span></button>
|
|
<div class="attr-und">
|
|
<div class="settings">
|
|
<input type="number" name="attr_reaction_base" value="" placeholder="3" title="@{reaction_base}" /><span class="tiny-span"> + </span>
|
|
<input type="number" name="attr_reaction_modifier" value="" placeholder="0" title="@{reaction_modifier}" /><span class="tiny-span"> = </span>
|
|
<span class="totals" name="attr_display_reaction" title="@{reaction}" /></span>
|
|
</div>
|
|
<div class="display"><span name="attr_display_reaction" title="@{reaction}"></span></div>
|
|
</div>
|
|
<!-- ~~:+: Strength :+:~~ -->
|
|
<input type="hidden" name="attr_strength" value="" />
|
|
<button type="roll" name="strength" value="@{gm_toggle} &{template:rolls}{{header=^{strength}}}{{base=^{attributes}}}{{dice=[[(@{strength}+(@{attribute_roll})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}"><span class="red" data-i18n="strength">Strength</span></button>
|
|
<div class="attr-und">
|
|
<div class="settings">
|
|
<input type="number" name="attr_strength_base" value="" placeholder="3" title="@{strength_base}" /><span class="tiny-span"> + </span>
|
|
<input type="number" name="attr_strength_modifier" value="" placeholder="0" title="@{strength_modifier}" /><span class="tiny-span"> = </span>
|
|
<span class="totals" name="attr_display_strength" title="@{strength}" /></span>
|
|
</div>
|
|
<div class="display"><span name="attr_display_strength" title="@{strength}"></span></div>
|
|
</div>
|
|
<!-- ~~:+: Willpower :+:~~ -->
|
|
<input type="hidden" name="attr_willpower" value="" />
|
|
<button type="roll" name="willpower" value="@{gm_toggle} &{template:rolls}{{header=^{willpower}}}{{base=^{attributes}}}{{dice=[[(@{willpower}+(@{attribute_roll})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}"><span data-i18n="willpower">Willpower</span></button>
|
|
<div class="attr-und">
|
|
<div class="settings">
|
|
<input type="number" name="attr_willpower_base" value="" placeholder="3" title="@{willpower_base}" /><span class="tiny-span"> + </span>
|
|
<input type="number" name="attr_willpower_modifier" value="" placeholder="0" title="@{willpower_modifier}" /><span class="tiny-span"> = </span>
|
|
<span class="totals" name="attr_display_willpower" title="@{willpower}" /></span>
|
|
</div>
|
|
<div class="display"><span name="attr_display_willpower" title="@{willpower}"></span></div>
|
|
</div>
|
|
<!-- ~~:+: Logic :+:~~ -->
|
|
<input type="hidden" name="attr_logic" value="" />
|
|
<button type="roll" name="logic" value="@{gm_toggle} &{template:rolls}{{header=^{logic}}}{{base=^{attributes}}}{{dice=[[(@{logic}+(@{attribute_roll})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}"><span data-i18n="logic">Logic</span></button>
|
|
<div class="attr-und">
|
|
<div class="settings">
|
|
<input type="number" name="attr_logic_base" value="" placeholder="3" title="@{logic_base}" /><span class="tiny-span"> + </span>
|
|
<input type="number" name="attr_logic_modifier" value="" placeholder="0" title="@{logic_modifier}" /><span class="tiny-span"> = </span>
|
|
<span class="totals" name="attr_display_logic" title="@{logic}" /></span>
|
|
</div>
|
|
<div class="display"><span name="attr_display_logic" title="@{logic}"></span></div>
|
|
</div>
|
|
<!-- ~~:+: Intuition :+:~~ -->
|
|
<input type="hidden" name="attr_intuition" value="" />
|
|
<button type="roll" name="intuition" value="@{gm_toggle} &{template:rolls}{{header=^{intuition}}}{{base=^{attributes}}}{{dice=[[(@{intuition}+(@{attribute_roll})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}"><span data-i18n="intuition">Intuition</span></button>
|
|
<div class="attr-und">
|
|
<div class="settings">
|
|
<input type="number" name="attr_intuition_base" value="" placeholder="3" title="@{intuition_base}" /><span class="tiny-span"> + </span>
|
|
<input type="number" name="attr_intuition_modifier" value="" placeholder="0" title="@{intuition_modifier}" /><span class="tiny-span"> = </span>
|
|
<span class="totals" name="attr_display_intuition" title="@{intuition}" /></span>
|
|
</div>
|
|
<div class="display"><span name="attr_display_intuition" title="@{intuition}"></span></div>
|
|
</div>
|
|
<!-- ~~:+: Charisma :+:~~ -->
|
|
<input type="hidden" name="attr_charisma" value="" />
|
|
<button type="roll" name="charisma" value="@{gm_toggle} &{template:rolls}{{header=^{charisma}}}{{base=^{attributes}}}{{dice=[[(@{charisma}+(@{attribute_roll})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}"><span data-i18n="charisma">Charisma</span></button>
|
|
<div class="attr-und">
|
|
<div class="settings">
|
|
<input type="number" name="attr_charisma_base" value="" placeholder="3" title="@{charisma_base}" /><span class="tiny-span"> + </span>
|
|
<input type="number" name="attr_charisma_modifier" value="" placeholder="0" title="@{charisma_modifier}" /><span class="tiny-span"> = </span>
|
|
<span class="totals" name="attr_display_charisma" title="@{charisma}" /></span>
|
|
</div>
|
|
<div class="display"><span name="attr_display_charisma" title="@{charisma}"></span></div>
|
|
</div>
|
|
<!-- ~~:+: Edge :+:~~ -->
|
|
<button type="roll" name="edge" value="@{gm_toggle} &{template:rolls}{{header=^{edge}}}{{base=^{attributes}}}{{dice=[[(@{edge}+(@{attribute_roll})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}"><span data-i18n="edge">Edge</span></button>
|
|
<div class="attr-und">
|
|
<div class="settings">
|
|
<input type="number" name="attr_edge" placeholder="3" title="@{edge}" />
|
|
</div>
|
|
<div class="display"><span name="attr_edge" title="@{edge}"></span></div>
|
|
</div>
|
|
</div>
|
|
<div class="attr-col attr-col-right">
|
|
<!-- ~~:+: Essence :+:~~ -->
|
|
<label data-i18n="essence">Essence</label>
|
|
<div class="attr-und">
|
|
<div class="settings"><input type="text" min="0" name="attr_essence" placeholder="6" title="@{essence}" /></div>
|
|
<div class="display"><span name="attr_essence" title="@{essence}"></span></div>
|
|
</div>
|
|
<!-- ~~:+: Magic or Resonance :+:~~ -->
|
|
<input type="hidden" name="attr_magic" value="3" />
|
|
<input type="hidden" name="attr_resonance" value="3" />
|
|
<label data-i18n="magicres">Magic/Resonance</label>
|
|
<div class="attr-und">
|
|
<div class="settings">
|
|
<div class="hide-magic">
|
|
<input type="number" name="attr_magic_base" placeholder="0" title="@{magic_base}" /><span class="tiny-span"> + </span>
|
|
<input type="number" name="attr_magic_modifier" placeholder="0" title="@{magic_modifier}" /><span class="tiny-span"> = </span>
|
|
<span class="totals" name="attr_display_magic" title="@{magic}" /></span>
|
|
</div>
|
|
<div class="hide-resonance">
|
|
<input type="number" name="attr_resonance_base" placeholder="0" title="@{resonance_base}" /><span class="tiny-span"> + </span>
|
|
<input type="number" name="attr_resonance_modifier" placeholder="0" title="@{resonance_modifier}" /><span class="tiny-span"> = </span>
|
|
<span class="totals" name="attr_display_resonance" title="@{resonance}" /></span>
|
|
</div>
|
|
</div>
|
|
<div class="display">
|
|
<div class="hide-magic"><span name="attr_display_magic" title="@{magic}"></span></div>
|
|
<div class="hide-resonance"><span name="attr_display_resonance" title="@{resonance}"></span></div>
|
|
</div>
|
|
</div>
|
|
<!-- ~~:+: Initiative :+:~~ -->
|
|
<input type="hidden" name="attr_initiative_mod" value="6" />
|
|
<input type="hidden" name="attr_initiative_dice" value="1" min="1" max="5" />
|
|
<button class="attr-ini" name="initiative" type="roll" value="@{gm_toggle} &{template:rolls}{{header=^{initiative}}}{{base=^{base}}}{{dice=[[(@{initiative_mod}+@{wound_toggle}+@{modifier_toggle})+(@{initiative_dice})d6cf0 &{tracker}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}"><span class="attr-ini red" data-i18n="initiative">Initiative</span></button>
|
|
<div class="attr-und attr-ini">
|
|
<div class="settings">
|
|
<input type="number" name="attr_initiative_modifier" value="0" placeholder="0" title="@{initiative_modifier}" /><span class="tiny-span"> + </span>
|
|
<input type="number" name="attr_initiative_dice_modifier" value="0" min="0" max="4" placeholder="modifier" title="@{initiative_dice_modifier}" />
|
|
<span class="tiny-span "data-i18n="d6"> d6</span><span class="tiny-span"> = </span>
|
|
<span name="attr_display_initiative_mod"></span><span class="tiny-span" title="@{initiative_mod}"> + </span>
|
|
<span name="attr_initiative_dice"></span><span class="tiny-span" title="@{initiative_dice}" data-i18n="d6"> d6</span>
|
|
</div>
|
|
<div class="display">
|
|
<span name="attr_display_initiative_mod" title="@{initiative_mod}"></span><span class="tiny-span"> + </span>
|
|
<span name="attr_initiative_dice" title="@{initiative_dice}"></span><span class="tiny-span" data-i18n="d6"> d6</span>
|
|
</div>
|
|
</div>
|
|
<!-- ~~:+: Matrix Initative :+:~~ -->
|
|
<input type="hidden" name="attr_matrix_mod" value="0" />
|
|
<input type="hidden" name="attr_matrix_dice" max="5" />
|
|
<button class="attr-ini" name="matrix initiative" type="roll" value="@{gm_toggle} &{template:rolls}{{header=^{matrixinitiative}}}{{base=^{base}}}{{dice=[[(@{matrix_mod}+@{wound_toggle}+@{modifier_toggle})+(@{matrix_dice})d6cf0 &{tracker}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}">
|
|
<span class="attr-ini red init-settings" data-i18n="matrixinit">Matrix Ini</span>
|
|
<span class="attr-ini red init-display" data-i18n="matrixinitiative">Matrix Initiative</span>
|
|
</button>
|
|
<div class="attr-und attr-ini">
|
|
<div class="settings">
|
|
<input type="number" name="attr_matrix_mod_modifier" value="0" placeholder="0" title="@{matrix_mod_modifier}" /><span class="tiny-span"> + </span>
|
|
<input type="number" name="attr_matrix_dice_modifier" value="0" min="0" max="4" placeholder="modifier" title="@{matrix_dice_modifier}" />
|
|
<span class="tiny-span" data-i18n="d6"> d6</span><span class="tiny-span"> = </span>
|
|
<span name="attr_display_matrix_mod" title="@{matrix_mod}"></span><span class="tiny-span"> + </span>
|
|
<span name="attr_matrix_dice" title="@{matrix_mod}"></span><span class="tiny-span" data-i18n="d6"> d6</span>
|
|
</div>
|
|
<div class="display">
|
|
<span name="attr_display_matrix_mod" title="@{matrix_mod}"></span><span class="tiny-span"> + </span>
|
|
<span name="attr_matrix_dice" title="@{matrix_dice}"></span><span class="tiny-span" data-i18n="d6"> d6</span>
|
|
</div>
|
|
</div>
|
|
<!-- ~~:+: Astral Initative :+:~~ -->
|
|
<input type="hidden" name="attr_astral_mod" value="6" />
|
|
<input type="hidden" name="attr_astral_dice" value="3" max="5" />
|
|
<button class="attr-ini" name="astral initiative" type="roll" value="@{gm_toggle} &{template:rolls}{{header=^{astralinitiative}}}{{base=^{base}}}{{dice=[[(@{astral_mod}+@{wound_toggle}+@{modifier_toggle})+(@{astral_dice})d6cf0 &{tracker}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}">
|
|
<span class="attr-ini red init-settings" data-i18n="astralini">Astral Ini</span>
|
|
<span class="attr-ini red init-display" data-i18n="astralinitiative">Astral Initiative</span>
|
|
</button>
|
|
<div class="attr-und attr-ini">
|
|
<div class="settings">
|
|
<div class="hide-magic">
|
|
<input type="number" name="attr_astral_mod_modifier" value="0" placeholder="modifier" title="@{astral_mod_modifier}" /><span class="tiny-span"> + </span>
|
|
<input type="number" name="attr_astral_dice_modifier" value="0" min="0" max="3" placeholder="modifier" title="@{astral_dice_modifier}" />
|
|
<span class="tiny-span" data-i18n="d6"> d6</span><span class="tiny-span"> = </span>
|
|
<span name="attr_display_astral_mod" title="@{astral_mod}"></span><span class="tiny-span"> + </span>
|
|
<span name="attr_astral_dice" title="@{astral_dice}"></span><span class="tiny-span" data-i18n="d6"> d6</span>
|
|
</div>
|
|
</div>
|
|
<div class="display">
|
|
<span name="attr_display_astral_mod" title="@{astral_mod}"></span><span class="tiny-span"> + </span>
|
|
<span name="attr_astral_dice" title="@{astral_dice}"></span><span class="tiny-span" data-i18n="d6"> d6</span>
|
|
</div>
|
|
</div>
|
|
<!-- ~~:+: Composure :+:~~ -->
|
|
<input type="hidden" name="attr_composure" value="" />
|
|
<button type="roll" name="composure" value="@{gm_toggle} &{template:rolls}{{header=^{composure}}}{{base=^{base}}}{{dice=[[(@{composure}+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}}"><span data-i18n="composure">Composure</span></button>
|
|
<div class="attr-und">
|
|
<div class="settings">
|
|
<input type="number" name="attr_composure_modifier" placeholder="0" title="@{composure_modifier}" /><span class="tiny-span"> = </span>
|
|
<span class="totals" name="attr_composure" title="@{composure}" /></span>
|
|
</div>
|
|
<div class="display">
|
|
<span name="attr_composure" title="@{composure}"></span>
|
|
</div>
|
|
</div>
|
|
<!-- ~~:+: Judge Intentions :+:~~ -->
|
|
<input type="hidden" name="attr_judge_intentions" value="" />
|
|
<button type="roll" name="judge intentions" value="@{gm_toggle} &{template:rolls}{{header=^{judgeintentions}}}{{base=^{base}}}{{dice=[[(@{judge_intentions}+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}">
|
|
<span data-i18n="judgeintentions">Judge Intentions</span>
|
|
</button>
|
|
<div class="attr-und">
|
|
<div class="settings">
|
|
<input type="number" name="attr_judge_intentions_modifier" placeholder="0" title="@{judge_intentions_modifier}" /><span class="tiny-span"> = </span>
|
|
<span class="totals" name="attr_judge_intentions" title="@{judge_intentions}" /></span>
|
|
</div>
|
|
<div class="display">
|
|
<span name="attr_judge_intentions" title="@{judge_intentions}"></span>
|
|
</div>
|
|
</div>
|
|
<!-- ~~:+: Memory :+:~~ -->
|
|
<input type="hidden" name="attr_memory" value="" />
|
|
<button type="roll" name="memory" value="@{gm_toggle} &{template:rolls}{{header=^{memory}}}{{base=^{base}}}{{dice=[[(@{memory}+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}">
|
|
<span data-i18n="memory">Memory</span>
|
|
</button>
|
|
<div class="attr-und">
|
|
<div class="settings">
|
|
<input type="number" name="attr_memory_modifier" placeholder="0" title="@{memory_modifier}" /><span class="tiny-span"> = </span>
|
|
<span class="totals" name="attr_memory" title="@{memory}" /></span>
|
|
</div>
|
|
<div class="display">
|
|
<span name="attr_memory" title="@{memory}"></span>
|
|
</div>
|
|
</div>
|
|
<!-- ~~:+: Lift & Carry :+:~~ -->
|
|
<input type="hidden" name="attr_lift_carry" value="" />
|
|
<button type="roll" name="lift & carry" value="@{gm_toggle} &{template:rolls}{{header=^{liftcarry}}}{{base=^{base}}}{{dice=[[(@{lift_carry}+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}">
|
|
<span data-i18n="liftcarry">Lift & Carry</span>
|
|
</button>
|
|
<div class="attr-und">
|
|
<div class="settings">
|
|
<input type="number" name="attr_lift_carry_modifier" placeholder="0" title="@{lift_carry_modifier}" /><span class="tiny-span"> = </span>
|
|
<span class="totals" name="attr_lift_carry" title="@{lift_carry}" /></span>
|
|
</div>
|
|
<div class="display">
|
|
<span name="attr_lift_carry" title="@{lift_carry}"></span>
|
|
</div>
|
|
</div>
|
|
<!-- ~~:+: Walk & Run :+:~~ -->
|
|
<input type="hidden" name="attr_walk" value="12" />
|
|
<input type="hidden" name="attr_run" value="24" />
|
|
<label data-i18n="movement">Movement</label>
|
|
<div class="attr-und">
|
|
<div class="settings">
|
|
<input type="number" name="attr_walk_modifier" value="" placeholder="0" title="@{walk_modifier}" /><span class="tiny-span"> / </span>
|
|
<input type="number" name="attr_run_modifier" value="" placeholder="0" title="@{run_modifier}" /><span class="tiny-span"> / +</span>
|
|
<input type="number" name="attr_movement_mod" value="2" placeholder="2" title="@{movement_mod}" />
|
|
</div>
|
|
<div class="display">
|
|
<span name="attr_walk" title="@{walk}"></span><span> / </span>
|
|
<span name="attr_run" title="@{run}"></span><span> / +</span>
|
|
<span name="attr_movement_mod" title="@{movement_mod}"></span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="attr-lim">
|
|
<div class="settings">
|
|
<label data-i18n="physicallimit">Physical Limit: </label><input type="number" name="attr_physical_limit_modifier" placeholder="0" title="@{physical_limit_modifier}" />
|
|
<span class="tiny-span"> = </span><span class="totals" name="attr_physical_limit" title="@{physical_limit}" /></span>
|
|
<label data-i18n="mentallimit">Mental Limit: </label><input type="number" name="attr_mental_limit_modifier" placeholder="0" title="@{mental_limit_modifier}" />
|
|
<span class="tiny-span"> = </span><span class="totals" name="attr_mental_limit" title="@{mental_limit}" /></span>
|
|
<label data-i18n="sociallimit">Social Limit: </label><input type="number" name="attr_social_limit_modifier" placeholder="0" title="@{social_limit_modifier}" />
|
|
<span class="tiny-span"> = </span><span class="totals" name="attr_social_limit" title="@{social_limit}" /></span>
|
|
</div>
|
|
<div class="display">
|
|
<label data-i18n="physicallimit">Physical Limit: </label><div><span name="attr_physical_limit" title="@{physical_limit}"></span></div>
|
|
<label data-i18n="mentallimit">Mental Limit: </label><div><span name="attr_mental_limit" title="@{mental_limit}"></span></div>
|
|
<label data-i18n="sociallimit">Social Limit: </label><div><span name="attr_social_limit" title="@{social_limit}"></span></div>
|
|
</div>
|
|
</div>
|
|
<div class="edg-hex" style="width: 50%;">
|
|
<input class="edge-zero"type="hidden" name="attr_edge_hex" value="0"/>
|
|
<input class="hex-hider"type="hidden" name="attr_edge" value="1"/>
|
|
<input type="checkbox" name="attr_edge_hex" value="1" /><span class="hexagon"></span>
|
|
<input type="checkbox" name="attr_edge_hex" value="2" /><span class="hexagon"></span>
|
|
<input type="checkbox" name="attr_edge_hex" value="3" /><span class="hexagon"></span>
|
|
<input type="checkbox" name="attr_edge_hex" value="4" /><span class="hexagon"></span>
|
|
<input type="checkbox" name="attr_edge_hex" value="5" /><span class="hexagon"></span>
|
|
<input type="checkbox" name="attr_edge_hex" value="6" /><span class="hexagon"></span>
|
|
<input type="checkbox" name="attr_edge_hex" value="7" /><span class="hexagon"></span>
|
|
<input type="checkbox" name="attr_edge_hex" value="8" /><span class="hexagon"></span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div><!-- ~~~~~~~~ End of PC Attributes~~~~~~~~ -->
|
|
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ START OF SKILLS ROW ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
|
|
<div class="pc-row">
|
|
<div class="header">
|
|
<div class="header htab">
|
|
<div class="triangle"></div>
|
|
<input class="tab-switch" type="radio" name="attr_skill_toggle" value="active" checked="checked" title="Active skills" /><h1 data-i18n="active">Active</h1>
|
|
<div class="right-tri"></div>
|
|
</div>
|
|
<div class="header htab">
|
|
<div class="triangle"></div>
|
|
<input class="tab-switch" type="radio" name="attr_skill_toggle" value="knowledge" title="Knowledge skills" /><h1 data-i18n="know">Know..</h1>
|
|
<div class="right-tri"></div>
|
|
</div>
|
|
<div class="header htab">
|
|
<div class="triangle"></div>
|
|
<input class="tab-switch" type="radio" name="attr_skill_toggle" value="language" title="Language skills" /><h1 data-i18n="lang">Lang..</h1>
|
|
<div class="right-tri"></div>
|
|
</div>
|
|
<div class="triangle"></div><h1 data-i18n="skills">Skills</h1>
|
|
</div>
|
|
<div class="border-box repeat-box skill-box">
|
|
<div class="pc-box medium-box">
|
|
<div class="row-long">
|
|
<h3 data-i18n="skill">Skill</h3><h3 data-i18n="rtg">RTG</h3><h3 data-i18n="attribute">Attribute</h3>
|
|
</div>
|
|
<input class="tab-switch" type="hidden" name="attr_skill_toggle" value="active">
|
|
<div class="skills-active">
|
|
<div class="row-long">
|
|
<div class="name" style="width: 81%;">
|
|
<button type="roll" name="default" value="@{gm_toggle} &{template:rolls}{{header=^{default}}}{{base=@{default_display}}}{{dice=[[((@{default_attribute}+-1)+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" ><span data-i18n="default">Default a skill</span></button>
|
|
</div>
|
|
<input type="hidden" name="attr_default_display" />
|
|
<select class="attr-select" name="attr_default_attribute" style="position: inherit;" title="Skill attribute">
|
|
<option value="@{body}" data-i18n="body">Body</option>
|
|
<option value="@{agility}" selected="selected" data-i18n="agility">Agility</option>
|
|
<option value="@{reaction}" data-i18n="reaction">Reaction</option>
|
|
<option value="@{strength}" data-i18n="strength">Strength</option>
|
|
<option value="@{willpower}" data-i18n="willpower">Willpower</option>
|
|
<option value="@{logic}" data-i18n="logic">Logic</option>
|
|
<option value="@{intuition}" data-i18n="intuition">Intuition</option>
|
|
<option value="@{charisma}" data-i18n="charisma">Charisma</option>
|
|
<option value="@{magic}" data-i18n="magic">Magic</option>
|
|
<option value="@{resonance}" data-i18n="resonance">Resonance</option>
|
|
</select>
|
|
</div>
|
|
<fieldset class="repeating_active">
|
|
<input type="checkbox" class="settings-toggle" name="attr_flag" checked="checked" title="Settings toggle" /><span>x</span>
|
|
<div class="settings">
|
|
<div class="skills-row">
|
|
<input type="hidden" name="attr_dicepool" />
|
|
<select class="skill-select" name="attr_skill" title="Active skill" value="Close Combat Group">
|
|
<option class="option-headers" disabled="true" data-i18n="combatskills">Combat Skills</option>
|
|
<option class="option-groups" value="Close Combat Group" data-i18n="closecombat">Close Combat Group</option>
|
|
<option class="option-groups" value="Firearms Group" data-i18n="firearms">Firearms Group</option>
|
|
<option value="Archery" data-i18n="archery">Archery</option>
|
|
<option value="Automatics" data-i18n="automatics">Automatics</option>
|
|
<option value="Blades" data-i18n="blades">Blades</option>
|
|
<option value="Clubs" data-i18n="clubs">Clubs</option>
|
|
<option value="Exotic Melee" data-i18n="exoticmelee">Exotic Melee</option>
|
|
<option value="Exotic Range" data-i18n="exoticrange">Exotic Range</option>
|
|
<option value="Heavy Weapons" data-i18n="heavyweapons">Heavy Weapons</option>
|
|
<option value="Longarms" data-i18n="longarms">Longarms</option>
|
|
<option value="Pistols" data-i18n="pistols">Pistols</option>
|
|
<option value="Throwing Weapons" data-i18n="throwingweapons">Throwing Weapons</option>
|
|
<option value="Unarmed Combat" data-i18n="unarmedcombat">Unarmed Combat</option>
|
|
<option class="option-headers" disabled="true" data-i18n="physicalskills">Physical Skills</option>
|
|
<option class="option-groups" value="Athletics Group" data-i18n="athleticsgroup">Athletics Group</option>
|
|
<option class="option-groups" value="Outdoors Group" data-i18n="outdoorsgroup">Outdoors Group</option>
|
|
<option class="option-groups" value="Stealth Group" data-i18n="stealthgroup">Stealth Group</option>
|
|
<option value="Disguise" data-i18n="disguise">Disguise</option>
|
|
<option value="Diving" data-i18n="diving">Diving</option>
|
|
<option value="Escape Artist" data-i18n="escapeartist">Escape Artist</option>
|
|
<option value="Flight" data-i18n="flight">Flight</option>
|
|
<option value="Free Fall" data-i18n="freefall">Free Fall</option>
|
|
<option value="Gymnastics" data-i18n="gymnastics">Gymnastics</option>
|
|
<option value="Palming" data-i18n="palming">Palming</option>
|
|
<option value="Perception" data-i18n="perception">Perception</option>
|
|
<option value="Running" data-i18n="running">Running</option>
|
|
<option value="Sneaking" data-i18n="sneaking">Sneaking</option>
|
|
<option value="Survival" data-i18n="survival">Survival</option>
|
|
<option value="Swimming" data-i18n="swimming">Swimming</option>
|
|
<option value="Tracking" data-i18n="tracking">Tracking</option>
|
|
<option class="option-headers" disabled="true" data-i18n="socialskills">Social Skills</option>
|
|
<option class="option-groups" value="Acting Group" data-i18n="actinggroup">Acting Group</option>
|
|
<option class="option-groups" value="Influence Group" data-i18n="influencegroup">Influence Group</option>
|
|
<option value="Con" data-i18n="con">Con</option>
|
|
<option value="Etiquette" data-i18n="etiquette">Etiquette</option>
|
|
<option value="Impersonation" data-i18n="impersonation">Impersonation</option>
|
|
<option value="Instruction" data-i18n="instruction">Instruction</option>
|
|
<option value="Intimidation" data-i18n="intimidation">Intimidation</option>
|
|
<option value="Leadership" data-i18n="leadership">Leadership</option>
|
|
<option value="Negotiation" data-i18n="negotiation">Negotiation</option>
|
|
<option value="Performance" data-i18n="performance">Performance</option>
|
|
<option class="option-headers" disabled="true" data-i18n="magicalskills">Magical Skills</option>
|
|
<option class="option-groups" value="Conjuring Group" data-i18n="conjuringgroup">Conjuring Group</option>
|
|
<option class="option-groups" value="Enchanting Group" data-i18n="enchantinggroup">Enchanting Group</option>
|
|
<option class="option-groups" value="Sorcery Group" data-i18n="sorcerygroup">Sorcery Group</option>
|
|
<option value="Alchemy" data-i18n="alchemy">Alchemy</option>
|
|
<option value="Arcana" data-i18n="arcana">Arcana</option>
|
|
<option value="Assensing" data-i18n="assensing">Assensing</option>
|
|
<option value="Astral Combat" data-i18n="astralcombat">Astral Combat</option>
|
|
<option value="Banishing" data-i18n="banishing">Banishing</option>
|
|
<option value="Binding" data-i18n="binding">Binding</option>
|
|
<option value="Counterspelling" data-i18n="counterspelling">Counterspelling</option>
|
|
<option value="Disenchanting" data-i18n="disenchanting">Disenchanting</option>
|
|
<option value="Ritual Spellcasting" data-i18n="ritualspellcasting">Ritual Spellcasting</option>
|
|
<option value="Spellcasting" data-i18n="spellcasting">Spellcasting</option>
|
|
<option value="Summoning" data-i18n="summoning">Summoning</option>
|
|
<option class="option-headers" disabled="true" data-i18n="resonanceskills">Resonance Skills</option>
|
|
<option class="option-groups" value="Tasking Group" data-i18n="taskinggroup">Tasking Group</option>
|
|
<option value="Compiling" data-i18n="compiling">Compiling</option>
|
|
<option value="Decompiling" data-i18n="decompiling">Decompiling</option>
|
|
<option value="Registering" data-i18n="registering">Registering</option>
|
|
<option class="option-headers" disabled="true" data-i18n="technicalskills">Technical Skills</option>
|
|
<option class="option-groups" value="Biotech Group" data-i18n="biotechgroup">Biotech Group</option>
|
|
<option class="option-groups" value="Cracking Group" data-i18n="crackinggroup">Cracking Group</option>
|
|
<option class="option-groups" value="Electronics Group" data-i18n="electronicsgroup">Electronics Group</option>
|
|
<option class="option-groups" value="Engineering Group" data-i18n="engineeringgroup">Engineering Group</option>
|
|
<option value="Aeronautics Mechanic" data-i18n="aeronauticsmechanic">Aeronautics Mechanic</option>
|
|
<option value="Animal Handling" data-i18n="animalhandling">Animal Handling</option>
|
|
<option value="Armorer" data-i18n="armorer">Armorer</option>
|
|
<option value="Artisan" data-i18n="artisan">Artisan</option>
|
|
<option value="Automotive Mechanic" data-i18n="automotivemechanic">Automotive Mechanic</option>
|
|
<option value="Biotechnology" data-i18n="biotechnology">Biotechnology</option>
|
|
<option value="Chemistry" data-i18n="chemistry">Chemistry</option>
|
|
<option value="Computer" data-i18n="computer">Computer</option>
|
|
<option value="Cybercombat" data-i18n="cybercombat">Cybercombat</option>
|
|
<option value="Cybertechnology" data-i18n="cybertechnology">Cybertechnology</option>
|
|
<option value="Demolitions" data-i18n="demolitions">Demolitions</option>
|
|
<option value="Electronic Warfare" data-i18n="eletronicwarfare">Electronic Warfare</option>
|
|
<option value="First Aid" data-i18n="firstaid">First Aid</option>
|
|
<option value="Forgery" data-i18n="forgery">Forgery</option>
|
|
<option value="Hacking" data-i18n="hacking">Hacking</option>
|
|
<option value="Hardware" data-i18n="hardware">Hardware</option>
|
|
<option value="Industrial Mechanic" data-i18n="industrialmechanic">Industrial Mechanic</option>
|
|
<option value="Locksmith" data-i18n="locksmith">Locksmith</option>
|
|
<option value="Medicine" data-i18n="medicine">Medicine</option>
|
|
<option value="Nautical Mechanic" data-i18n="nauticalmechanic">Nautical Mechanic</option>
|
|
<option value="Navigation" data-i18n="navigation">Navigation</option>
|
|
<option value="Gunnery" data-i18n="gunnery">Gunnery</option>
|
|
<option value="Pilot Aerospace" data-i18n="pilotaerospace">Pilot Aerospace</option>
|
|
<option value="Pilot Aircraft" data-i18n="pilotaircraft">Pilot Aircraft</option>
|
|
<option value="Pilot Exotic Vehicle" data-i18n="pilotexoticvehicle">Pilot Exotic Vehicle</option>
|
|
<option value="Pilot Ground Craft" data-i18n="pilotgroundcraft">Pilot Ground Craft</option>
|
|
<option value="Pilot Walker" data-i18n="pilotwalker">Pilot Walker</option>
|
|
<option value="Pilot Watercraft" data-i18n="pilotwatercraft">Pilot Watercraft</option>
|
|
<option value="Software" data-i18n="software">Software</option>
|
|
</select>
|
|
<input type="number" name="attr_rating" min="0" placeholder="0" title="Skill rating" />
|
|
<div class="settings-row">
|
|
<label data-i18n="specializations">Specializations</label><input type="text" name="attr_specialization" placeholder="Specalizations" title="Skill specializations" />
|
|
<label data-i18n="ratingmodifier">Rating Modifier</label><input type="number" name="attr_rating_modifier" min="0" placeholder="0" title="Skill rating bonus" />
|
|
</div>
|
|
<label data-i18n="notes">Notes</label>
|
|
<textarea name="attr_notes" value="" placeholder="Notes"></textarea>
|
|
</div>
|
|
</div>
|
|
<div class="display">
|
|
<div class="name">
|
|
<button type="roll" name="skill" value="@{gm_toggle} &{template:rolls}{{header=@{skill}}}{{base=@{display_attribute}}}{{dice=[[((@{dicepool}+@{attribute})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" ><span name="attr_display"></span></button>
|
|
<button class="spec-button" name="specialization" type="roll" value="@{gm_toggle} &{template:rolls}{{header=@{skill}}}{{base=@{display_attribute}}}{{dice=[[(@{dicepool}+@{attribute}+2+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=Spec: @{specialization}}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}"><span name="attr_display_specialization"></span></button>
|
|
</div>
|
|
<div class="rank"><span name="attr_display_rating" title="Skill rating"></span></div>
|
|
</div>
|
|
<input type="hidden" name="attr_display_attribute" />
|
|
<select class="attr-select" name="attr_attribute" title="Skill attribute">
|
|
<option value="@{body}" data-i18n="body">Body</option>
|
|
<option value="@{agility}" selected="selected" data-i18n="agility">Agility</option>
|
|
<option value="@{reaction}" data-i18n="reaction">Reaction</option>
|
|
<option value="@{strength}" data-i18n="strength">Strength</option>
|
|
<option value="@{willpower}" data-i18n="willpower">Willpower</option>
|
|
<option value="@{logic}" data-i18n="logic">Logic</option>
|
|
<option value="@{intuition}" data-i18n="intuition">Intuition</option>
|
|
<option value="@{charisma}" data-i18n="charisma">Charisma</option>
|
|
<option value="@{magic}" data-i18n="magic">Magic</option>
|
|
<option value="@{resonance}" data-i18n="resonance">Resonance</option>
|
|
</select>
|
|
</fieldset>
|
|
</div>
|
|
<div class="skills-know">
|
|
<fieldset class="repeating_knowledge">
|
|
<input type="checkbox" class="settings-toggle" name="attr_flag" checked="checked" title="Settings toggle" /><span>x</span>
|
|
<div class="settings">
|
|
<div class="skills-row">
|
|
<input type="hidden" name="attr_dicepool"/>
|
|
<input type="text" name="attr_skill" placeholder="Knowledge skill name" title="Knowledge skill name" />
|
|
<input type="number" name="attr_rating" placeholder="0" title="Skill rating" />
|
|
<div class="settings-row">
|
|
<label data-i18n="specializations">Specializations</label><input type="text" name="attr_specialization" placeholder="Specalizations" title="Knowledge specializations" />
|
|
<label data-i18n="ratingmodifier">Rating Modifier</label><input type="number" name="attr_rating_modifier" placeholder="0" title="Skill rating bonus" />
|
|
</div>
|
|
<label data-i18n="notes">Notes</label>
|
|
<textarea name="attr_notes" value="" placeholder="Notes"></textarea>
|
|
</div>
|
|
</div>
|
|
<div class="display">
|
|
<div class="name">
|
|
<button type="roll" name="knowledge" value="@{gm_toggle} &{template:rolls}{{header=@{skill}}}{{base=@{display_attribute}}}{{dice=[[(@{dicepool}+@{attribute}+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}"><span name="attr_display"></span></button>
|
|
<button class="spec-button" name="knowledge specialization" type="roll" value="@{gm_toggle} &{template:rolls}{{header=@{skill}}}{{base=@{display_attribute}}}{{dice=[[(@{dicepool}+@{attribute}+2+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=Spec: @{specialization}}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}"><span name="attr_display_specialization"></span></button>
|
|
</div>
|
|
<div class="rank"><span name="attr_display_rating" title="Skill rating"></span></div>
|
|
</div>
|
|
<input type="hidden" name="attr_display_attribute" />
|
|
<select class="attr-select" name="attr_attribute" title="Skill attribute">
|
|
<option value="@{body}" data-i18n="body">Body</option>
|
|
<option value="@{agility}" data-i18n="agility">Agility</option>
|
|
<option value="@{reaction}" data-i18n="reaction">Reaction</option>
|
|
<option value="@{strength}" data-i18n="strength">Strength</option>
|
|
<option value="@{willpower}" data-i18n="willpower">Willpower</option>
|
|
<option value="@{logic}" selected="selected" data-i18n="logic">Logic</option>
|
|
<option value="@{intuition}" data-i18n="intuition">Intuition</option>
|
|
<option value="@{charisma}" data-i18n="charisma">Charisma</option>
|
|
<option value="@{magic}" data-i18n="magic">Magic</option>
|
|
<option value="@{resonance}" data-i18n="resonance">Resonance</option>
|
|
</select>
|
|
</fieldset>
|
|
</div>
|
|
<div class="skills-lang">
|
|
<fieldset class="repeating_language">
|
|
<input type="checkbox" class="settings-toggle" name="attr_flag" checked="checked" title="Settings toggle" /><span>x</span>
|
|
<div class="settings">
|
|
<div class="skills-row">
|
|
<input type="hidden" name="attr_dicepool" />
|
|
<input type="text" name="attr_skill" placeholder="Language" title="Language skill name" />
|
|
<input type="number" name="attr_rating" placeholder="0" title="Skill rating" />
|
|
<div class="settings-row">
|
|
<label data-i18n="specializations">Specializations</label><input type="text" name="attr_specialization" placeholder="Specalizations" title="Language specializations" />
|
|
<label data-i18n="ratingmodifier">Rating Modifier</label><input class="language-native" type="number" min="0" name="attr_rating_modifier" placeholder="0" title="Language rating bonus" />
|
|
</div>
|
|
<label data-i18n="notes">Notes</label>
|
|
<textarea name="attr_notes" value="" placeholder="Notes"></textarea>
|
|
</div>
|
|
</div>
|
|
<div class="display">
|
|
<div class="name">
|
|
<button type="roll" name="language" value="@{gm_toggle} &{template:rolls}{{header=@{skill}}}{{base=@{display_attribute}}}{{dice=[[((@{dicepool}+@{attribute})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}"><span name="attr_display"></span></button>
|
|
<button class="spec-button" name="language specialization" type="roll" value="@{gm_toggle} &{template:rolls}{{header=@{skill}}}{{base=@{display_attribute}}}{{dice=[[(@{dicepool}+@{attribute}+2+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=Spec: @{specialization}}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}"><span name="attr_display_specialization"></span></button>
|
|
</div>
|
|
<div class="rank"><span name="attr_display_rating" title="Skill rating"></span></div>
|
|
</div>
|
|
<input type="hidden" name="attr_display_attribute" />
|
|
<select class="attr-select" name="attr_attribute" title="Skill attribute">
|
|
<option value="@{body}" data-i18n="body">Body</option>
|
|
<option value="@{agility}" data-i18n="agility">Agility</option>
|
|
<option value="@{reaction}" data-i18n="reaction">Reaction</option>
|
|
<option value="@{strength}" data-i18n="strength">Strength</option>
|
|
<option value="@{willpower}" data-i18n="willpower">Willpower</option>
|
|
<option value="@{logic}" data-i18n="logic">Logic</option>
|
|
<option value="@{intuition}" selected="selected" data-i18n="intuition">Intuition</option>
|
|
<option value="@{charisma}" data-i18n="charisma">Charisma</option>
|
|
<option value="@{magic}" data-i18n="magic">Magic</option>
|
|
<option value="@{resonance}" data-i18n="resonance">Resonance</option>
|
|
</select>
|
|
</fieldset>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div><!-- ~~~~~~~~ End of PC Skills ~~~~~~~~ -->
|
|
</div><!-- ~~~~~~~~ END OF THE STATIC LEFT COLUMN ~~~~~~~~ -->
|
|
<!-- ~~~~~~~~ START OF THE RIGHT COLUMN 'CORE' ~~~~~~~~ -->
|
|
<div class="core pc-col">
|
|
<div class="pc-row">
|
|
<div class="header right-header"><h1 data-i18n="corecombatinfo">Core Combat Info</h1><div class="right-tri"></div></div>
|
|
<div class="border-box">
|
|
<div class="pc-box small-box core-combat">
|
|
<div class="row-long cc-arm">
|
|
<h2 data-i18n="primaryarmor">Primary Armor</h2>
|
|
<button type="roll" name="soak" value="@{gm_toggle} &{template:rolls}{{header=^{soak}}}{{base=^{base}}}{{dice=[[((@{soak})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}} style="width: 32%;">
|
|
<span name="attr_armor_name" title="@{soak}"></span></button>
|
|
<h3 data-i18n="rating">Rating</h3>
|
|
<button type="roll" name="armor" value="@{gm_toggle} &{template:rolls}{{header=@{armor}}}{{base= ^{armor}}}{{dice=[[((@{armor_rating})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}">
|
|
<span name="attr_armor_rating" title="@{armor_rating}"></span></button>
|
|
<div class="armor-buttons">
|
|
<button type="roll" name="defense" value="@{gm_toggle} &{template:rolls}{{header=^{defense}}}{{base=^{base}}}{{dice=[[((@{defense})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Defense Roll"><span class="pictosC" title="@{defense}">e</span></button>
|
|
<button type="roll" name="acid protection" value="@{gm_toggle} &{template:rolls}{{header=^{acidprotection}}}{{base=^{base}}}{{dice=[[((@{soak}+@{acid_modifier})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Acid Protection"><span class="pictos3" title="@{acid_modifier}">d</span></button>
|
|
<button type="roll" name="cold protection" value="@{gm_toggle} &{template:rolls}{{header=^{coldprotection}}}{{base=^{base}}}{{dice=[[((@{soak}+@{cold_modifier})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Cold Protection"><span title="@{cold_modifier}">b</span></button>
|
|
<button type="roll" name="electrical protection" value="@{gm_toggle} &{template:rolls}{{header=^{electricalprotection}}}{{base=^{base}}}{{dice=[[((@{soak}+@{electrical_modifier})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Electrical Protection"><span title="@{electrical_modifier}">e</span></button>
|
|
<button type="roll" name="fire protection" value="@{gm_toggle} &{template:rolls}{{header=^{fireprotection}}}{{base=^{base}}}{{dice=[[((@{soak}+@{fire_modifier})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Fire Protection"><span class="pictos3" title="@{fire_modifier}">j</span></button>
|
|
<button type="roll" name="radiation protection" value="@{gm_toggle} &{template:rolls}{{header=^{radiationprotection}}}{{base=^{base}}}{{dice=[[((@{soak}+@{radiation_modifier})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Radiation Protection"><span class="pictos3" title="@{radiation_modifier}">l</span></button>
|
|
</div>
|
|
</div>
|
|
<div class="row-long cc-row">
|
|
<h2 data-i18n="primaryrangedweapon">Primary Ranged Weapon</h2>
|
|
<button type="roll" name="primary range" value="@{gm_toggle} &{template:rolls}{{header=@{primary_range_weapon}}}{{base=^{base}}}{{dice=[[((@{primary_range_weapon_skill}+@{primary_range_weapon_dicepool}+@{agility})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=@{primary_range_weapon_mode}, ACC @{primary_range_weapon_acc}, DV @{primary_range_weapon_damage}, AP @{primary_range_weapon_ap}}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Primary range weapon"><span name="attr_primary_range_weapon" title="@{primary_range_weapon}"></span></button>
|
|
<!-- Ammo removal button -->
|
|
<button name="act_shots_remove" type="action">4</button>
|
|
<button type="action" name="act_primary_ammo" title="Shots Fired">
|
|
<img src="https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Shadowrun5thEdition/gun.png" /><span name="attr_shots_fired"></span>
|
|
</button>
|
|
<button name="act_shots_add" type="action">4</button>
|
|
</div>
|
|
<div class="cc-row">
|
|
<h3 data-i18n="dam">Dam</h3><span name="attr_primary_range_weapon_damage" title="@{primary_range_weapon_damage}"></span>
|
|
<h3 data-i18n="acc">ACC</h3><span name="attr_primary_range_weapon_acc" title="@{primary_range_weapon_acc}"></span>
|
|
<h3 data-i18n="ap">AP</h3><span name="attr_primary_range_weapon_ap" title="@{primary_range_weapon_ap}"></span>
|
|
<h3 data-i18n="mode">Mode</h3><span name="attr_primary_range_weapon_mode" title="@{primary_range_weapon_mode}"></span>
|
|
<h3 data-i18n="rc">RC</h3><span name="attr_primary_range_weapon_recoil" title="@{primary_range_weapon_recoil}"></span>
|
|
<h3 data-i18n="ammo">Ammo</h3>
|
|
<span name="attr_primary_range_weapon_ammo" title="@{primary_range_weapon_ammo}"></span>
|
|
<span name="attr_primary_range_weapon_ammo_max" title="@{primary_range_weapon_ammo_max}"></span>
|
|
<button class="pictos" name="act_reload" type="action">0</button>
|
|
</div>
|
|
<div class="row-long cc-row">
|
|
<h2 data-i18n="primarymeleeweapon">Primary Melee Weapon</h2>
|
|
<button type="roll" name="primary melee" value="@{gm_toggle} &{template:rolls}{{header=@{primary_melee_weapon}}}{{base=^{base}}}{{dice=[[((@{primary_melee_weapon_skill}+@{primary_melee_weapon_dicepool}+@{agility})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=ACC @{primary_melee_weapon_acc}, DV @{primary_melee_weapon_damage}, AP @{primary_melee_weapon_ap}, Reach @{primary_melee_weapon_reach}}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Primary melee weapon"><span name="attr_primary_melee_weapon" title="@{primary_melee_weapon}"></span></button>
|
|
</div>
|
|
<div class="cc-row">
|
|
<h3 data-i18n="reach">Reach</h3><span name="attr_primary_melee_weapon_reach" title="@{primary_melee_weapon_reach}"></span>
|
|
<h3 data-i18n="dam">Dam</h3><span name="attr_primary_melee_weapon_damage" title="@{primary_melee_weapon_damage}"></span>
|
|
<h3 data-i18n="acc">ACC</h3><span name="attr_primary_melee_weapon_acc" title="@{primary_melee_weapon_acc}"></span>
|
|
<h3 data-i18n="ap">AP</h3><span name="attr_primary_melee_weapon_ap" title="@{primary_melee_weapon_ap}"></span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ START OF THE CONDITION MONITOR ROW ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
|
|
<div class="pc-row">
|
|
<div class="header right-header"><h1 data-i18n="conditionmonitor">Condition Monitor</h1><div class="right-tri"></div></div>
|
|
<div class="border-box">
|
|
<div class="pc-box medium-box condition-box">
|
|
<input type="checkbox" class="settings-toggle" name="attr_flag_condition" checked="checked" title="Settings toggle" /><span>x</span>
|
|
<div class="settings">
|
|
<label data-i18n="conditionmonitormodifiers">Condition Monitor Modifiers (P/S): </label>
|
|
<input type="hidden" name="attr_physical" value="10" />
|
|
<input type="hidden" name="attr_stun" value="10" />
|
|
<input type="hidden" name="attr_physical_max" min="0" value="10" />
|
|
<input type="hidden" name="attr_stun_max" min="0" value="10" />
|
|
<input type="number" name="attr_physical_modifier" value="" placeholder="#" title="@{physical_modifier}" /><span> / </span>
|
|
<input type="number" name="attr_stun_modifier" value="" placeholder="#" title="@{stun_modifier}" /><br />
|
|
<input type="hidden" name="attr_overflow" value="3" />
|
|
<label data-i18n="overflowmodifier">Overflow Modifier</label><input type="number" name="attr_overflow_modifier" value="" placeholder="#" title="@{overflow_modifier}" /><br />
|
|
<label data-i18n="paintolerance">Pain Tolerance</label><input type="number" name="attr_pain_tolerance" value="0" placeholder="#" title="@{pain_tolerance}" />
|
|
<div class="con-footer">
|
|
<span data-i18n="painfooter">Low Pain Tolernace adds a -1 and High Pain Tolerance adds a +1 per rank.</span>
|
|
</div>
|
|
</div>
|
|
<div class="display">
|
|
<div class="con-track">
|
|
<input type="hidden" name="attr_physical_damage" value="0" />
|
|
<button type="action" name="act_cond_reset_physical" data-i18n="physicaldamagetrack">Physical Damage Track</button>
|
|
<div class="squares">
|
|
<input class="hex-hider" type="hidden" name="attr_physical_max" value="10" />
|
|
<input type="radio" name="attr_physical_damage" value="1" /><span></span>
|
|
<input type="radio" name="attr_physical_damage" value="2" /><span></span>
|
|
<input type="radio" name="attr_physical_damage" value="3" /><span></span><div>-1</div>
|
|
<input type="radio" name="attr_physical_damage" value="4" /><span></span>
|
|
<input type="radio" name="attr_physical_damage" value="5" /><span></span>
|
|
<input type="radio" name="attr_physical_damage" value="6" /><span></span><div>-2</div>
|
|
<input type="radio" name="attr_physical_damage" value="7" /><span></span>
|
|
<input type="radio" name="attr_physical_damage" value="8" /><span></span>
|
|
<input type="radio" name="attr_physical_damage" value="9" /><span></span><div>-3</div>
|
|
<input type="radio" name="attr_physical_damage" value="10" /><span></span>
|
|
<input type="radio" name="attr_physical_damage" value="11" /><span></span>
|
|
<input type="radio" name="attr_physical_damage" value="12" /><span></span><div>-4</div>
|
|
<input type="radio" name="attr_physical_damage" value="13" /><span></span>
|
|
<input type="radio" name="attr_physical_damage" value="14" /><span></span>
|
|
<input type="radio" name="attr_physical_damage" value="15" /><span></span><div>-5</div>
|
|
<input type="radio" name="attr_physical_damage" value="16" /><span></span>
|
|
<input type="radio" name="attr_physical_damage" value="17" /><span></span>
|
|
<input type="radio" name="attr_physical_damage" value="18" /><span></span><div>-6</div>
|
|
</div>
|
|
<div class="con-footer" title="@{overflow}">
|
|
<label data-i18n="overflow">Overflow</label><div class="attr-und"><span name="attr_overflow"></span></div>
|
|
</div>
|
|
</div>
|
|
<div class="con-track">
|
|
<input type="hidden" name="attr_stun_damage" value="0" />
|
|
<button type="action" name="act_cond_reset_stun" data-i18n="stundamagetrack">Stun Damage Track</button>
|
|
<div class="squares">
|
|
<input class="hex-hider" type="hidden" name="attr_stun_max" value="10" />
|
|
<input type="radio" name="attr_stun_damage" value="1" /><span></span>
|
|
<input type="radio" name="attr_stun_damage" value="2" /><span></span>
|
|
<input type="radio" name="attr_stun_damage" value="3" /><span></span><div>-1</div>
|
|
<input type="radio" name="attr_stun_damage" value="4" /><span></span>
|
|
<input type="radio" name="attr_stun_damage" value="5" /><span></span>
|
|
<input type="radio" name="attr_stun_damage" value="6" /><span></span><div>-2</div>
|
|
<input type="radio" name="attr_stun_damage" value="7" /><span></span>
|
|
<input type="radio" name="attr_stun_damage" value="8" /><span></span>
|
|
<input type="radio" name="attr_stun_damage" value="9" /><span></span><div>-3</div>
|
|
<input type="radio" name="attr_stun_damage" value="10" /><span></span>
|
|
<input type="radio" name="attr_stun_damage" value="11" /><span></span>
|
|
<input type="radio" name="attr_stun_damage" value="12" /><span></span><div>-4</div>
|
|
<input type="radio" name="attr_stun_damage" value="13" /><span></span>
|
|
<input type="radio" name="attr_stun_damage" value="14" /><span></span>
|
|
<input type="radio" name="attr_stun_damage" value="15" /><span></span><div>-5</div>
|
|
</div>
|
|
<div class="con-footer">
|
|
<span data-i18n="conditionfooter">For every 3 boxes of damage on any one damage track, the character takes a -1 Dice Pool modifier on tests; these modifiers are cumulative within and across damage tracks.</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div><!-- ~~~~~~~~ End of Condition Monitor ~~~~~~~~ -->
|
|
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ START OF THE QUALITY ROW ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
|
|
<div class="pc-row quality-box">
|
|
<div class="header right-header htab">
|
|
<input class="tab-switch" type="radio" name="attr_quality_toggle" value="quality" checked="checked" title="Qualities" />
|
|
<h1 data-i18n="qualities">Qualities</h1><div class="right-tri"></div>
|
|
</div>
|
|
<div class="header right-header">
|
|
<div class="header htab">
|
|
<div class="triangle"></div>
|
|
<input class="tab-switch" type="radio" name="attr_quality_toggle" value="martial" title="Martal Arts" />
|
|
<h1 data-i18n="martialarts">Martial Arts</h1><div class="right-tri"></div>
|
|
</div>
|
|
</div>
|
|
<div class="border-box repeat-box">
|
|
<div class="pc-box medium-box">
|
|
<input class="tab-switch" type="hidden" name="attr_quality_toggle" value="quality" />
|
|
<div class="quality">
|
|
<div class="row-long">
|
|
<h3 data-i18n="quality">Quality</h3><h3 data-i18n="type">Type</h3>
|
|
</div>
|
|
<fieldset class="repeating_quality">
|
|
<input type="hidden" class="settings-toggle" name="attr_flag_quality" value="settings" />
|
|
<button class="pictos" name="quality_chat" type="roll" value="@{gm_toggle} &{template:rolls}{{header=@{quality}}}{{desc=@{notes}}}">w</button>
|
|
<button class="pictos" name="act_quality" type="action">x</button>
|
|
<div class="settings"style="margin-left: 0px;"><!-- Remove this when all repeat boxes updated -->
|
|
<div>
|
|
<input type="text" name="attr_quality" placeholder="Quality name" title="Quality name" />
|
|
<select name="attr_type" title="Positive or Negative quality">
|
|
<option value="P" selected="selected" data-i18n="p">P</option>
|
|
<option value="N" selected="selected" data-i18n="n">N</option>
|
|
</select>
|
|
<div class="settings-row">
|
|
<label data-i18n="notes">Notes</label>
|
|
<textarea name="attr_notes" value="" placeholder="Notes"></textarea>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="display">
|
|
<input class="display-flag" type="checkbox" name="attr_display_flag">
|
|
<div class="display-row"><span name="attr_quality" title="Quality name"></span></div>
|
|
<div class="display-row"><span name="attr_type" title="Quality type"></span></div>
|
|
<div class="collapsable">
|
|
<span class="desc" name="attr_notes"></span>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
<div class="martial">
|
|
<div class="row-long">
|
|
<h3 data-i18n="technique">Technique</h3><h3 data-i18n="style">Style</h3>
|
|
</div>
|
|
<fieldset class="repeating_martial">
|
|
<input type="checkbox" class="settings-toggle" name="attr_flag_martial" checked="checked" title="Marital settings" /><span>x</span>
|
|
<div class="settings">
|
|
<div>
|
|
<input type="text" name="attr_technique" placeholder="Clinch" title="Technique name" />
|
|
<input type="text" name="attr_style" placeholder="Krav Maga" title="Style name" />
|
|
<div class="settings-row">
|
|
<label data-i18n="notes">Notes</label>
|
|
<textarea name="attr_notes" value="" placeholder="Notes"></textarea>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="display">
|
|
<input class="display-flag" type="checkbox" name="attr_display_flag">
|
|
<div class="display-row"><span name="attr_technique" title="Technique name"></span></div>
|
|
<div class="display-row"><span name="attr_style" title="Style name"></span></div>
|
|
<div class="collapsable">
|
|
<span class="desc" name="attr_notes"></span>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div><!-- ~~~~~~~~ End of Quality row ~~~~~~~~ -->
|
|
</div><!-- ~~~~~~~~ END OF THE RIGHT COLUMN 'CORE' ~~~~~~~~ -->
|
|
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ START OF THE RIGHT COLUMN 'ARMS' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
|
|
<div class="arms pc-col">
|
|
<div class="pc-row weapon-box"><!-- ~~~~~~~~ Start of the Weapon Section ~~~~~~~~ -->
|
|
<div class="header right-header"><h1 data-i18n="weapons">Weapons</h1><div class="right-tri"></div></div>
|
|
<div class="header right-header">
|
|
<div class="header htab">
|
|
<div class="triangle"></div>
|
|
<input class="tab-switch" type="radio" name="attr_weapon_type_toggle" value="range" checked="checked" title="Range weapons" /><h1 data-i18n="ranged">Ranged</h1>
|
|
<div class="right-tri"></div>
|
|
</div>
|
|
<div class="header htab">
|
|
<div class="triangle"></div>
|
|
<input class="tab-switch" type="radio" name="attr_weapon_type_toggle" value="melee" title="Melee weapons" /><h1 data-i18n="melee">Melee</h1>
|
|
<div class="right-tri"></div>
|
|
</div>
|
|
</div>
|
|
<div class="border-box repeat-box">
|
|
<div class="pc-box medium-box">
|
|
<input class="tab-switch" type="hidden" name="attr_weapon_type_toggle" value="range" />
|
|
<div class="weapon-range row-long">
|
|
<h3 data-i18n="weapon">Weapon</h3><h3 data-i18n="dam">Dam</h3><h3 data-i18n="acc">Acc</h3><h3 data-i18n="ap">AP</h3><h3 data-i18n="mode">Mode</h3><h3 data-i18n="rc">RC</h3><h3 data-i18n="ammo">Ammo</h3>
|
|
</div>
|
|
<div class="weapon-range">
|
|
<fieldset class="repeating_range">
|
|
<input type="checkbox" class="settings-toggle" name="attr_flag" checked="checked" value="primary" /><span>x</span>
|
|
<div class="settings">
|
|
<div>
|
|
<input type="text" name="attr_weapon" placeholder="Ares Alpha" title="Weapon name" />
|
|
<input type="text" name="attr_damage" placeholder="11P" style="width: 11%;" title="Damage" />
|
|
<input type="number" name="attr_acc" placeholder="5" title="Accuracy" />
|
|
<input type="number" name="attr_ap" placeholder="-2" title="Armor Penetration" />
|
|
<select name="attr_mode" title="Current mode" >
|
|
<option value="BF" data-i18n="bf">BF</option>
|
|
<option value="FA" data-i18n="fa">FA</option>
|
|
<option value="Other" data-i18n="other">Other</option>
|
|
<option value="SA" data-i18n="sa">SA</option>
|
|
<option value="SS" data-i18n="ss">SS</option>
|
|
</select>
|
|
<input type="number" name="attr_recoil" placeholder="2" title="Recoil Compensation" />
|
|
<input type="number" name="attr_ammo" placeholder="42" title="Ammo per clip" />
|
|
<div class="settings-row">
|
|
<label data-i18n="modeoptions">Mode Options</label><input type="text" name="attr_mode_options" placeholder="SA/BF/FA" title="Available modes" />
|
|
<label data-i18n="range">Range</label><input type="text" name="attr_range" placeholder="25/150/350/550" title="Range" />
|
|
<label data-i18n="primary">Primary</label><input type="checkbox" class="skill-select" name="attr_primary" value="primary" title="Add to Core tab as primary range" />
|
|
</div>
|
|
<div class="settings-row">
|
|
<input type="hidden" name="attr_dicepool" value="0" />
|
|
<label data-i18n="combatskill">Combat Skill</label>
|
|
<select class="skill-select" name="attr_skill" title="Weapon skill" >
|
|
<option class="option-headers" disabled="true" data-i18n="combatskills">Combat Skills</option>
|
|
<option class="option-groups" value="@{firearms}" data-i18n="firearms">Firearms Group</option>
|
|
<option value="@{archery}" data-i18n="archery">Archery</option>
|
|
<option value="@{automatics}" data-i18n="automatics">Automatics</option>
|
|
<option value="0" data-i18n="exoticrange">Exotic Range</option>
|
|
<option value="@{heavyweapons}" data-i18n="heavyweapons">Heavy Weapons</option>
|
|
<option value="@{longarms}" data-i18n="longarms">Longarms</option>
|
|
<option value="@{pistols}" data-i18n="pistols">Pistols</option>
|
|
<option value="@{throwingweapons}" data-i18n="throwingweapons">Throwing Weapons</option>
|
|
<option class="option-headers" disabled="true" data-i18n="vehicleskills">Vehicle Skills</option>
|
|
<option value="@{gunnery}" data-i18n="gunnery">Gunnery</option>
|
|
</select>
|
|
<label data-i18n="specializations">Specialization</label><input class="skill-select" type="checkbox" name="attr_spec" value="2" title="Applicable specialization" />
|
|
<label data-i18n="modifierdice">modifier dice</label><input type="number" name="attr_dicepool_modifier" title="Additional dicepool bonus" />
|
|
<input class="skill-select" type="hidden" name="attr_skill" /><br />
|
|
<div class="exotic-warning">
|
|
<span><i data-i18n="exoticnote">Exotics are not linked to skills. Use modifier Dice input to set skill dice.</i></span>
|
|
</div>
|
|
</div>
|
|
<div class="settings-row">
|
|
<label data-i18n="notes">Notes</label>
|
|
<textarea name="attr_notes" value="" placeholder="Notes"></textarea>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="display">
|
|
<div class="display-row" title="Roll attack">
|
|
<input class="flag-primary" type="hidden" name="attr_primary" value="" /><div title="Primary"><span>S</span></div>
|
|
<button type="roll" name="range" value="@{gm_toggle} &{template:rolls}{{header=@{weapon}}}{{base=^{agility}}}{{dice=[[((@{skill}+@{dicepool}+@{agility})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=@{mode}, ACC @{acc}, DV @{damage}, AP @{ap}}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}"><span name="attr_weapon"></span></button>
|
|
</div>
|
|
<div class="display-row" title="Damage"><span name="attr_damage"></span></div>
|
|
<div class="display-row" title="Accuracy"><span name="attr_acc"></span></div>
|
|
<div class="display-row" title="Armor Penetration"><span name="attr_ap"></span></div>
|
|
<select name="attr_mode" title="Current mode">
|
|
<option value="BF" data-i18n="bf">BF</option>
|
|
<option value="FA" data-i18n="fa">FA</option>
|
|
<option value="Other" data-i18n="other">Other</option>
|
|
<option value="SA" data-i18n="sa">SA</option>
|
|
<option value="SS" data-i18n="ss">SS</option>
|
|
</select>
|
|
<div class="display-row" title="Recoil Compensation"><span name="attr_recoil"></span></div>
|
|
<div class="display-row" title="Armor per clip"><span name="attr_ammo"></span></div>
|
|
<input class="display-flag" type="checkbox" name="attr_display_flag" title="Display notes" /><span>i</span>
|
|
<div class="collapsable">
|
|
<div class="desc" title="Mode options"><i><span name="attr_mode_options"></span></i></div>
|
|
<div class="desc" title="Range"><i><span name="attr_range"></span></i></div>
|
|
<div class="desc"><span name="attr_notes"></span></div>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
<div class="weapon-melee row-long">
|
|
<h3 data-i18n="weapon">Weapon</h3><h3 data-i18n="reach">Reach</h3><h3 data-i18n="dam">Dam</h3><h3 data-i18n="acc">Acc</h3><h3 data-i18n="ap">AP</h3>
|
|
</div>
|
|
<div class="weapon-melee">
|
|
<fieldset class="repeating_melee">
|
|
<input type="checkbox" class="settings-toggle" name="attr_flag" checked="checked" title="Settings toggle" /><span>x</span>
|
|
<div class="settings">
|
|
<div>
|
|
<input type="text" name="attr_weapon" placeholder="Katana" title="Weapon name" />
|
|
<input type="number" name="attr_reach" placeholder="1" title="Reach"/>
|
|
<input type="text" name="attr_damage" placeholder="6P" title="Damage"/>
|
|
<input type="number" name="attr_acc" placeholder="7" title="Accuracy"/>
|
|
<input type="number" name="attr_ap" placeholder="-3" title="Armor Penetration"/>
|
|
<label data-i18n="primary">Primary</label><input type="checkbox" class="skill-select" name="attr_primary" value="primary" title="Add to Core tab as primary melee"/>
|
|
<div class="settings-row">
|
|
<input type="hidden" name="attr_dicepool" value="0" />
|
|
<label data-i18n="primary">Primary</label>
|
|
<select class="skill-select" name="attr_skill" title="Weapon skill">
|
|
<option class="option-headers" disabled="true" data-i18n="combatskills">Combat Skills</option>
|
|
<option class="option-groups" value="@{closecombat}" data-i18n="closecombat">Close Combat Group</option>
|
|
<option value="@{blades}" data-i18n="blades">Blades</option>
|
|
<option value="@{clubs}" data-i18n="clubs">Clubs</option>
|
|
<option value="0" data-i18n="exoticmelee">Exotic Melee</option>
|
|
<option value="@{unarmedcombat}" data-i18n="unarmedcombat">Unarmed Combat</option>
|
|
<option class="option-headers" disabled="true" data-i18n="vehicleskills">Vehicle Skills</option>
|
|
<option value="@{gunnery}" data-i18n="gunnery">Gunnery</option>
|
|
</select>
|
|
<label data-i18n="specializations">Specialization</label><input class="skill-select" type="checkbox" name="attr_spec" value="+2" title="Applicable specialization"/>
|
|
<label data-i18n="modifierdice">modifier dice</label><input type="number" name="attr_dicepool_modifier" title="Additional dicepool bonus"/>
|
|
<div class="exotic-warning">
|
|
<span><i data-i18n="exoticnote">Exotic weapons are currently not linked to the skills section. Use modifier Dice input to set dicepool.</i></span>
|
|
</div>
|
|
</div>
|
|
<div class="settings-row">
|
|
<label data-i18n="notes">Notes</label>
|
|
<textarea name="attr_notes" value="" placeholder="Notes"></textarea>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="display">
|
|
<div class="display-row" title="Roll attack">
|
|
<input class="flag-primary" type="hidden" name="attr_primary" value="" /><div title="Primary"><span>S</span></div>
|
|
<button type="roll" name="melee" value="@{gm_toggle} &{template:rolls}{{header=@{weapon}}}{{base=^{agility}}}{{dice=[[((@{skill}+@{dicepool}+@{agility})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=ACC @{acc}, DV @{damage}, AP @{ap}, Reach @{reach}}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}"><span name="attr_weapon"></span></button>
|
|
</div>
|
|
<div class="display-row" title="Reach"><span name="attr_reach"></span></div>
|
|
<div class="display-row" title="Damage"><span name="attr_damage"></span></div>
|
|
<div class="display-row" title="Accuracy"><span name="attr_acc"></span></div>
|
|
<div class="display-row" title="Armor Penetration"><span name="attr_ap"></span></div>
|
|
<input class="display-flag" type="checkbox" name="attr_display_flag" title="Display notes" /><span>i</span>
|
|
<div class="collapsable">
|
|
<div class="desc"><span name="attr_notes"></span></div>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div><!-- ~~~~~~~~ End of the WEAPON Section ~~~~~~~~ -->
|
|
<div class="pc-row"><!-- ~~~~~~~~ Start of the ARMOR Section ~~~~~~~~ -->
|
|
<div class="header right-header"><h1>Armor</h1><div class="right-tri"></div></div>
|
|
<div class="border-box repeat-box armor-box">
|
|
<div class="pc-box medium-box">
|
|
<div class="row-long">
|
|
<h3 data-i18n="armor">Armor</h3><h3 data-i18n="rating">Rating</h3><h3 data-i18n="acid">Acid</h3><h3 data-i18n="cold">Cold</h3><h3 data-i18n="elec">Elec.</h3><h3 data-i18n="fire">Fire</h3><h3 data-i18n="radi">Radi.</h3>
|
|
</div>
|
|
<fieldset class="repeating_armor">
|
|
<input type="checkbox" class="settings-toggle" name="attr_flag" checked="checked" title="Settings toggle" /><span>x</span>
|
|
<div class="settings">
|
|
<div>
|
|
<input type="text" name="attr_name" placeholder="Armor Jacket" title="Armor name" />
|
|
<input type="number" name="attr_rating" min="0" value="0" placeholder="12" title="Rating" />
|
|
<input type="number" name="attr_acid_modifier" min="0" value="0" placeholder="+5" title="Acid modifier" />
|
|
<input type="number" name="attr_cold_modifier" min="0" value="0" placeholder="0" title="Cold modifier" />
|
|
<input type="number" name="attr_electrical_modifier" min="0" value="0" placeholder="+5" title="Electrical modifier" />
|
|
<input type="number" name="attr_fire_modifier" min="0" value="0" placeholder="0" title="Fire modifier" />
|
|
<input type="number" name="attr_radiation_modifier" min="0" value="0" placeholder="0" title="Radiation modifier" />
|
|
<div class="settings-row">
|
|
<label data-i18n="primary">Primary</label><input type="checkbox" class="skill-select" name="attr_primary" value="primary" title="Add to Core tab as primary armor" />
|
|
<label data-i18n="modifierdice">modifier dice</label><input type="number" name="attr_dicepool_modifier" min="0" value="0" title="Additional dicepool bonus" />
|
|
</div>
|
|
<div class="settings-row">
|
|
<label data-i18n="notes">Notes</label>
|
|
<textarea name="attr_notes" value="" placeholder="Notes"></textarea>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="display">
|
|
<div class="display-row" title="Soak roll">
|
|
<input class="flag-primary" type="hidden" name="attr_primary" value="" /><div title="Primary"><span>S</span></div>
|
|
<button type="roll" name="soak" value="@{gm_toggle} &{template:rolls}{{header=^{soak}}}{{base=^{body} ♦ ^{armor}}}{{dice=[[((@{body}+@{rating}+@{dicepool_modifier})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}"><span name="attr_name"></span></button>
|
|
</div>
|
|
<div class="display-row hoverswitch" title="Armor roll">
|
|
<button type="roll" name="armor" value="@{gm_toggle} &{template:rolls}{{header=@{armor}}}{{base= Armor}}{{dice=[[((@{rating})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}">
|
|
<span class="default" name="attr_rating"></span><!--<span class="hover" name="attr_soak"></span>--></button>
|
|
</div>
|
|
<div class="display-row hoverswitch" title="Acid protection roll"><button type="roll" name="acid protection" value="@{gm_toggle} &{template:rolls}{{header=^{acidprotection}}}{{base=^{body} ♦ ^{armor}}}{{dice=[[((@{body}+@{rating}+@{dicepool_modifier}+@{acid_modifier})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}">
|
|
<span class="default" name="attr_acid_modifier"></span><!--<span class="hover" name="attr_acid_protection"></span>--></button>
|
|
</div>
|
|
<div class="display-row hoverswitch" title="Cold protection roll"><button type="roll" name="cold protection" value="@{gm_toggle} &{template:rolls}{{header=^{coldprotection}}}{{base=^{body} ♦ ^{armor}}}{{dice=[[((@{body}+@{rating}+@{dicepool_modifier}+@{cold_modifier})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}">
|
|
<span class="default" name="attr_cold_modifier"></span><!--<span class="hover" name="attr_cold_protection"></span>--></button>
|
|
</div>
|
|
<div class="display-row hoverswitch" title="Electrical protection roll"><button type="roll" name="electrical protection" value="@{gm_toggle} &{template:rolls}{{header=^{electricalprotection}}}{{base=^{body} ♦ ^{armor}}}{{dice=[[((@{body}+@{rating}+@{dicepool_modifier}+@{electrical_modifier})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}">
|
|
<span class="default" name="attr_electrical_modifier"></span><!--<span class="hover" name="attr_electrical_protection"></span>--></button>
|
|
</div>
|
|
<div class="display-row hoverswitch" title="Fire protection roll"><button type="roll" name="fire protection" value="@{gm_toggle} &{template:rolls}{{header=^{fireprotection}}}{{base=^{body} ♦ ^{armor}}}{{dice=[[((@{body}+@{rating}+@{dicepool_modifier}+@{fire_modifier})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}">
|
|
<span class="default" name="attr_fire_modifier"></span><!--<span class="hover" name="attr_fire_protection"></span>--></button>
|
|
</div>
|
|
<div class="display-row hoverswitch" title="Radiation protection roll"><button type="roll" name="radiation protection" value="@{gm_toggle} &{template:rolls}{{header=^{radiationprotection}}}{{base=^{body} ♦ ^{armor}}}{{dice=[[((@{body}+@{rating}+@{dicepool_modifier}+@{radiation_modifier})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}">
|
|
<span class="default" name="attr_radiation_modifier"></span><!--<span class="hover" name="attr_radiation_protection"></span>--></button>
|
|
</div>
|
|
<input class="display-flag" type="checkbox" name="attr_display_flag" title="Display notes" /><span>i</span>
|
|
<div class="collapsable">
|
|
<div class="desc"><span name="attr_notes"></span></div>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
</div>
|
|
</div><!-- ~~~~~~~~ End of the ARMOR Section ~~~~~~~~ -->
|
|
</div><!-- ~~~~~~~~ END OF THE RIGHT COLUMN 'ARMS' ~~~~~~~~ -->
|
|
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ START OF THE RIGHT COLUMN 'AUGS' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
|
|
<div class="augs pc-col">
|
|
<div class="pc-row">
|
|
<div class="header right-header"><h1 data-i18n="augmentations">Augmentations</h1><div class="right-tri"></div></div>
|
|
<div class="border-box repeat-box aug-box">
|
|
<div class="pc-box medium-box">
|
|
<div class="row-long">
|
|
<h3 data-i18n="augmentations">Augementation</h3><h3 data-i18n="rating">Rating</h3><h3 data-i18n="essence">Essence</h3>
|
|
</div>
|
|
<fieldset class="repeating_augementations">
|
|
<input type="checkbox" class="settings-toggle" name="attr_flag" checked="checked" title="Settings toggle" /><span>x</span>
|
|
<div class="settings">
|
|
<div>
|
|
<input type="text" name="attr_augmentation" placeholder="Augementation" title="Augementation name" />
|
|
<input type="number" name="attr_rating" placeholder="#" title="Rating" />
|
|
<input type="text" name="attr_essence" placeholder="6" style="width: 10%" title="Essence cost" />
|
|
<label data-i18n="notes">Notes</label>
|
|
<textarea name="attr_notes" value="" placeholder="Notes"></textarea>
|
|
</div>
|
|
</div>
|
|
<div class="display">
|
|
<input class="display-flag" type="checkbox" name="attr_display_flag" title="Display settings" />
|
|
<div class="display-row" title="Augementation"><span name="attr_augmentation"></span></div>
|
|
<div class="display-row" title="Rating"><span name="attr_rating"></span></div>
|
|
<div class="display-row" title="Essence"><span name="attr_essence"></span></div>
|
|
<div class="collapsable">
|
|
<div class="desc"><span name="attr_notes"></span></div>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div><!-- ~~~~~~~~ END OF THE RIGHT COLUMN 'AUGS' ~~~~~~~~ -->
|
|
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ START OF THE RIGHT COLUMN 'GEAR' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
|
|
<div class="gear pc-col">
|
|
<div class="header right-header"><h1 data-i18n="gear">Gear</h1><div class="right-tri"></div></div>
|
|
<div class="border-box repeat-box item-box">
|
|
<div class="pc-box medium-box">
|
|
<div class="row-long">
|
|
<h3 data-i18n="item">Item</h3><h3 data-i18n="rating">Rating</h3>
|
|
</div>
|
|
<fieldset class="repeating_items">
|
|
<input type="checkbox" class="settings-toggle" name="attr_flag" checked="checked" title="Settings toggle" /><span>x</span>
|
|
<div class="settings">
|
|
<div>
|
|
<input type="text" name="attr_item" placeholder="Item name" title="Item name" />
|
|
<input type="number" name="attr_rating" placeholder="#" title="Rating"/>
|
|
<label data-i18n="notes">Notes</label>
|
|
<textarea name="attr_notes" value="" placeholder="Notes"></textarea>
|
|
</div>
|
|
</div>
|
|
<div class="display">
|
|
<input class="display-flag" type="checkbox" name="attr_display_flag" title="Settings toggle" />
|
|
<div class="display-row" title="Item name"><span name="attr_item"></span></div>
|
|
<div class="display-row" title="Rating"><span name="attr_rating"></span></div>
|
|
<div class="collapsable">
|
|
<div class="desc"><span name="attr_notes"></span></div>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
</div>
|
|
</div><!-- ~~~~~~~~ END OF THE RIGHT COLUMN 'GEAR' ~~~~~~~~ -->
|
|
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ START OF THE RIGHT COLUMN 'MAGIC' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
|
|
<div class="magic pc-col">
|
|
<div class="pc-row spell-box">
|
|
<div class="header right-header"><h1 data-i18n="magic">Magic</h1><div class="right-tri"></div></div>
|
|
<div class="header right-header">
|
|
<div class="header htab">
|
|
<div class="triangle"></div>
|
|
<input class="magic-toggle" type="radio" name="attr_magic_toggle" value="spells" checked="checked" title="Spells" /><h1 data-i18n="spells">Spells</h1><div class="right-tri"></div>
|
|
</div>
|
|
<div class="header htab">
|
|
<div class="triangle"></div>
|
|
<input class="magic-toggle" type="radio" name="attr_magic_toggle" value="preps" title="Preperation" /><h1 data-i18n="prep">Prep...</h1><div class="right-tri"></div>
|
|
</div>
|
|
<div class="header htab">
|
|
<div class="triangle"></div>
|
|
<input class="magic-toggle" type="radio" name="attr_magic_toggle" value="rituals" title="Rituals" /><h1 data-i18n="rituals">Rituals</h1><div class="right-tri"></div>
|
|
</div>
|
|
</div>
|
|
<div class="border-box repeat-box">
|
|
<div class="pc-box medium-box">
|
|
<input class="magic-toggle" type="hidden" name="attr_magic_toggle" value="spells">
|
|
<div class="row-long">
|
|
<h3 data-i18n="spells">Spells</h3><h3 data-i18n="type">Type</h3><h3 data-i18n="range">Range</h3><h3 data-i18n="duration">Duration</h3><h3 data-i18n="drain">Drain</h3>
|
|
</div>
|
|
<div class="magic-spells">
|
|
<fieldset class="repeating_spell">
|
|
<input type="checkbox" class="settings-toggle" name="attr_flag" checked="checked" title="Settings toggle" /><span>x</span>
|
|
<div class="settings">
|
|
<div>
|
|
<input type="text" name="attr_name" placeholder="Fireball" title="Spell name" />
|
|
<select name="attr_type" title="Type">
|
|
<option value="Mana" selected="selected" data-i18n="mana">Mana</option>
|
|
<option value="Physcial" data-i18n="physical">Physical</option>
|
|
</select>
|
|
<select name="attr_range" title="Range">
|
|
<option value="LOS" selected="selected" data-i18n="los">LOS</option>
|
|
<option value="LOS (A)" data-i18n="losa">LOS (A)</option>
|
|
<option value="Special" data-i18n="special">Special</option>
|
|
<option value="T" data-i18n="t">T</option>
|
|
<option value="T (A)" data-i18n="ta">T (A)</option>
|
|
</select>
|
|
<select name="attr_duration" title="Duration">
|
|
<option value="Instant" selected="selected" data-i18n="instant">Instant</option>
|
|
<option value="Permanent" data-i18n="permanent">Permanent</option>
|
|
<option value="Special" data-i18n="special">Special</option>
|
|
<option value="Sustained" data-i18n="sustained">Sustained</option>
|
|
</select>
|
|
<input type="number" name="attr_drain" value="" placeholder="-1" title="Drain code" />
|
|
<div class="settings-row">
|
|
<label data-i18n="spellcategory">Spell Category</label>
|
|
<select name="attr_category" title="Category">
|
|
<option class="option" value="Combat" selected="selected" data-i18n="combat">Combat</option>
|
|
<option class="option" value="Detection" data-i18n="detection">Detection</option>
|
|
<option class="option" value="Health" data-i18n="health">Health</option>
|
|
<option class="option" value="Illusion" data-i18n="illusion">Illusion</option>
|
|
<option class="option" value="Manipulation" data-i18n="manipulation">Manipulation</option>
|
|
<option class="option" value="Other" data-i18n="other">Other</option>
|
|
</select>
|
|
<input class="category" name="attr_category" type="hidden" value="Combat">
|
|
<div class="combat-type-hide">
|
|
<label data-i18n="combattype">Combat Type</label>
|
|
<select class="combat-type" name="attr_combat_type" title="Combat type">
|
|
<option class="option" value="Force " selected="selected"></option>
|
|
<option class="option" value="Direct, Force " data-i18n="direct">Direct</option>
|
|
<option class="option" value="Indirect, Force ?{Force|}, AP -" data-i18n="indirect">Indirect</option>
|
|
</select>
|
|
<label class="combat-type" data-i18n="damagetype">Combat Damage</label><input class="spell-input" type="text" name="attr_damage" value="" placeholder="P" title="Damage type" style="width: 8%;"/>
|
|
</div>
|
|
</div>
|
|
<div class="settings-row">
|
|
<input type="hidden" name="attr_dicepool" value="0" />
|
|
<label data-i18n="magicalskill">Magic Skill</label>
|
|
<select class="skill-select" name="attr_skill" title="Magic skill">
|
|
<option class="option-headers" disabled="true" data-i18n="magicalskills">Magic Skills</option>
|
|
<option class="option-groups" value="@{sorcery}" data-i18n="sorcerygroup">Sorcery Group</option>
|
|
<option value="@{spellcasting}" selected="selected" data-i18n="spellcasting">Spellcasting</option>
|
|
</select>
|
|
<label data-i18n="specializations">Specialization</label><input class="skill-select" type="checkbox" name="attr_spec" value="2" title="Applicable specialization" />
|
|
<label data-i18n="modifierdice">modifier dice</label><input type="number" name="attr_dicepool_modifier" title="Additional dicepool bonus" />
|
|
</div>
|
|
<div class="settings-row">
|
|
<label data-i18n="notes">Notes</label>
|
|
<textarea name="attr_notes" value="" placeholder="Notes"></textarea>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="display">
|
|
<div class="display-row" title="Spell roll">
|
|
<button type="roll" name="spell" value="@{gm_toggle} &{template:rolls}{{header=@{name}}}{{base=^{magic}}}{{dice=[[((@{skill}+@{dicepool}+@{magic})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=@{combat_type}?{Force|}}}{{drain=[[?{Force|}+(@{drain})]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}"><span name="attr_name"></span></button>
|
|
</div>
|
|
<div class="display-row" title="Type"><span name="attr_type"></span></div>
|
|
<div class="display-row" title="Range"><span name="attr_range"></span></div>
|
|
<div class="display-row" title="Duration"><span name="attr_duration"></span></div>
|
|
<div class="display-row" style="text-align: center;" title="Drain code"><span name="attr_drain"></span></div>
|
|
<input class="display-flag" type="checkbox" name="attr_display_flag" title="Display notes" /><span>i</span>
|
|
<div class="collapsable">
|
|
<div class="desc"><i><span name="attr_category" title="Category"></span></i></div>
|
|
<div class="desc"><i><input class="combat-type" type="hidden" name="attr_combat_type" title="Combat type" /><span></span></i></div>
|
|
<div class="desc"><span name="attr_notes"></span></div>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
<div class="magic-preps">
|
|
<fieldset class="repeating_preps">
|
|
<input type="checkbox" class="settings-toggle" name="attr_flag" checked="checked" title="Settings toggle" /><span>x</span>
|
|
<div class="settings">
|
|
<div>
|
|
<input type="text" name="attr_name" placeholder="Fireball" title="Spell name" />
|
|
<select name="attr_type" title="Type">
|
|
<option value="Mana" selected="selected" data-i18n="mana">Mana</option>
|
|
<option value="Physcial" data-i18n="physical">Physical</option>
|
|
</select>
|
|
<select name="attr_range" title="Range">
|
|
<option value="LOS" selected="selected" data-i18n="los">LOS</option>
|
|
<option value="LOS (A)" data-i18n="losa">LOS (A)</option>
|
|
<option value="Special" data-i18n="special">Special</option>
|
|
<option value="T" data-i18n="t">T</option>
|
|
<option value="T (A)" data-i18n="ta">T (A)</option>
|
|
</select>
|
|
<select name="attr_duration" title="Duration">
|
|
<option value="Instant" selected="selected" data-i18n="instant">Instant</option>
|
|
<option value="Permanent" data-i18n="permanent">Permanent</option>
|
|
<option value="Special" data-i18n="special">Special</option>
|
|
<option value="Sustained" data-i18n="sustained">Sustained</option>
|
|
</select>
|
|
<input type="number" name="attr_drain" value="" placeholder="-1" title="Drain code" />
|
|
<div class="settings-row">
|
|
<label data-i18n="spellcategory">Spell Category</label>
|
|
<select name="attr_category" title="Category">
|
|
<option class="option" value="Combat" selected="selected" data-i18n="combat">Combat</option>
|
|
<option class="option" value="Detection" data-i18n="detection">Detection</option>
|
|
<option class="option" value="Health" data-i18n="health">Health</option>
|
|
<option class="option" value="Illusion" data-i18n="illusion">Illusion</option>
|
|
<option class="option" value="Manipulation" data-i18n="manipulation">Manipulation</option>
|
|
<option class="option" value="Other" data-i18n="other">Other</option>
|
|
</select>
|
|
<input class="category" name="attr_category" type="hidden" value="Combat">
|
|
<div class="combat-type-hide">
|
|
<label data-i18n="combattype">Combat Type</label>
|
|
<select class="combat-type" name="attr_combat_type" title="Combat type">
|
|
<option class="option" value="Force " selected="selected"></option>
|
|
<option class="option" value="Direct, Force " data-i18n="direct">Direct</option>
|
|
<option class="option" value="Indirect, Force ?{Force|}, AP -" data-i18n="indirect">Indirect</option>
|
|
</select>
|
|
<label class="combat-type" data-i18n="damagetype">Combat Damage</label><input class="spell-input" type="text" name="attr_damage" value="" placeholder="P" title="Damage type" style="width: 8%;"/>
|
|
</div>
|
|
</div>
|
|
<div class="settings-row">
|
|
<input type="hidden" name="attr_dicepool" value="0" />
|
|
<label data-i18n="magicalskill">Magic Skill</label>
|
|
<select class="skill-select" name="attr_skill" title="Magic skill">
|
|
<option class="option-headers" disabled="true" data-i18n="magicalskills">Magic Skills</option>
|
|
<option class="option-groups" value="@{enchanting}" data-i18n="enchantinggroup">Enchanting Group</option>
|
|
<option value="@{alchemy}" selected="selected" data-i18n="alchemy">Alchemy</option>
|
|
</select>
|
|
<label data-i18n="specializations">Specialization</label><input class="skill-select" type="checkbox" name="attr_spec" value="2" title="Applicable specialization" />
|
|
<label data-i18n="modifierdice">modifier dice</label><input type="number" name="attr_dicepool_modifier" title="Additional dicepool bonus" />
|
|
</div>
|
|
<label data-i18n="notes">Notes</label>
|
|
<textarea name="attr_notes" value="" placeholder="Alchemy notes"></textarea>
|
|
</div>
|
|
</div>
|
|
<div class="display">
|
|
<input class="display-flag" type="checkbox" name="attr_display_flag" />
|
|
<div class="display-row" title="Spell roll"><button type="roll" name="alchemic" value="@{gm_toggle} &{template:rolls}{{header=@{name}}}{{base=^{magic}}}{{dice=[[((@{skill}+@{dicepool}+@{magic})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=@{combat_type}?{Force|}}}{{drain=[[?{Force|}+(@{drain})]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}"><span name="attr_name"></span></button></div>
|
|
<div class="display-row" title="Type"><span name="attr_type"></span></div>
|
|
<div class="display-row" title="Range"><span name="attr_range"></span></div>
|
|
<div class="display-row" title="Duration"><span name="attr_duration"></span></div>
|
|
<div class="display-row" style="text-align: center;" title="Drain code"><span name="attr_drain"></span></div>
|
|
<input class="display-flag" type="checkbox" name="attr_display_flag" title="Display notes" /><span>i</span>
|
|
<div class="collapsable">
|
|
<div class="desc"><i><span name="attr_category" title="Category"></span></i></div>
|
|
<div class="desc"><i><input class="combat-type" type="hidden" name="attr_combat_type" title="Combat type"/><span></span></i></div>
|
|
<div class="desc"><span name="attr_notes"></span></div>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
<div class="magic-rituals">
|
|
<fieldset class="repeating_ritual">
|
|
<input type="checkbox" class="settings-toggle" name="attr_flag" checked="checked" title="Settings toggle" /><span>x</span>
|
|
<div class="settings">
|
|
<div>
|
|
<input type="text" name="attr_name" placeholder="Curse (MATERIAL LINK, SPELL)" title="Ritual name" />
|
|
<div class="settings-row">
|
|
<input type="hidden" name="attr_dicepool" value="0" />
|
|
<label data-i18n="magicalskill">Magic Skill</label>
|
|
<select class="skill-select" name="attr_skill" title="Magic skill">
|
|
<option class="option-headers" disabled="true" data-i18n="magicalskills">Magic Skills</option>
|
|
<option class="option-groups" value="@{sorcery}" data-i18n="sorcerygroup">Sorcery Group</option>
|
|
<option value="@{ritualspell}" selected="selected" data-i18n="ritualspellcasting">Ritual Spellcasting</option>
|
|
</select>
|
|
<label data-i18n="specializations">Specialization</label><input class="skill-select" type="checkbox" name="attr_spec" value="2" title="Applicable specialization" />
|
|
<label data-i18n="modifierdice">modifier dice</label><input type="number" name="attr_dicepool_modifier" title="Additional dicepool bonus" />
|
|
</div>
|
|
<label data-i18n="notes">Notes</label>
|
|
<textarea name="attr_notes" value="" placeholder="Ritual notes"></textarea>
|
|
</div>
|
|
</div>
|
|
<div class="display">
|
|
<input class="display-flag" type="checkbox" name="attr_display_flag" />
|
|
<div class="display-row" class="Ritual roll"><button type="roll" name="ritual" value="@{gm_toggle} &{template:rolls}{{header=@{name}}}{{base=^{magic}}}{{dice=[[((@{skill}+@{dicepool}+@{magic})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=Force ?{Force|}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}"><span name="attr_name"></span></button></div>
|
|
<input class="display-flag" type="checkbox" name="attr_display_flag" title="Display notes" /><span>i</span>
|
|
<div class="collapsable">
|
|
<div class="desc"><span name="attr_notes"></span></div>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ START OF THE POWERS ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
|
|
<div class="pc-row">
|
|
<div class="header right-header"><h1>Adept Powers or Other Abilities</h1><div class="right-tri"></div></div>
|
|
<div class="border-box repeat-box powers-box">
|
|
<div class="pc-box medium-box">
|
|
<div class="row-long">
|
|
<h3>Name</h3><h3>Rating</h3>
|
|
</div>
|
|
<fieldset class="repeating_powers">
|
|
<input type="checkbox" class="settings-toggle" name="attr_flag" checked="checked" title="Settings toggle" /><span>x</span>
|
|
<div class="settings">
|
|
<div>
|
|
<input type="text" name="attr_name" placeholder="Adept powers or other ability" title="Ability or power name" />
|
|
<input type="number" name="attr_rating" placeholder="#" title="Rating" />
|
|
<label data-i18n="notes">Notes</label>
|
|
<textarea name="attr_notes" value="" placeholder="Power notes"></textarea>
|
|
</div>
|
|
</div>
|
|
<div class="display">
|
|
<input class="display-flag" type="checkbox" name="attr_display_flag" />
|
|
<div class="display-row" title="Ability or power name"><span name="attr_name"></span></div>
|
|
<div class="display-row" title="Rating"><span name="attr_rating"></span></div>
|
|
<div class="collapsable">
|
|
<div class="desc"><span name="attr_notes"></span></div>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div><!-- ~~~~~~~~ END OF THE RIGHT COLUMN 'MAGIC' ~~~~~~~~ -->
|
|
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ START OF THE RIGHT COLUMN 'MATRIX' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
|
|
<div class="matrix pc-col">
|
|
<div class="pc-row"><!-- ~~~~~~~~ Start of the Cyberdeck Row ~~~~~~~~ -->
|
|
<div class="header right-header"><h1 data-i18n="cyberdeck">Cyberdeck</h1><div class="right-tri"></div></div>
|
|
<div class="border-box repeat-box matrix-box">
|
|
<div class="pc-box medium-box cyberdeck">
|
|
<div class="row-long">
|
|
<label data-i18n="model">Model</label><input type="text" name="attr_cyberdeck" value="" placeholder="Sony CYI-720" title="Cyberdeck name" />
|
|
</div>
|
|
<div class="row-long">
|
|
<label><button type="roll" name="device rating" value="&{template:rolls}{{header=^{matrixsoak}}}{{header=^{devicerating}}}{{dice=[[((@{device_rating}+@{firewall})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Roll matrix soak" data-i18n="devicerating">Device Rating</button></label><input type="number" name="attr_device_rating" min="0" value="" placeholder="4" style="margin-right: 15%;" title="@{device_rating}" />
|
|
<label data-i18n="attributearray">Attribute Array</label>
|
|
<input type="number" name="attr_attribute_1" min="0" value="" placeholder="7" />
|
|
<input type="number" name="attr_attribute_2" min="0" value="" placeholder="6" />
|
|
<input type="number" name="attr_attribute_3" min="0" value="" placeholder="5" />
|
|
<input type="number" name="attr_attribute_4" min="0" value="" placeholder="4" />
|
|
</div>
|
|
<div class="row-long">
|
|
<h3 data-i18n="total">Total</h3><h3 data-i18n="temp">Temp</h3><h3 data-i18n="modifier">modifier</h3><h3 data-i18n="base">Base</h3><h3 data-i18n="baseslider">Base slider</h3><br />
|
|
<label><button type="roll" name="attack" value="&{template:rolls}{{header=^{attack}}}{{base=^{attack}}}{{dice=[[(@{attack}+(?{Attribute|Willpower,@{willpower}|Logic,@{logic}|Intuition,@{intuition}})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Roll attack" data-i18n="attack">Attack</button>
|
|
</label>
|
|
<div class="matrix-tot" title="@{attack}" ><span name="attr_attack"></span></div><span> = </span>
|
|
<input type="number" name="attr_attack_temp" min="0" value="" placeholder="0" title="@{attack_temp}" /><spam> + </spam>
|
|
<input type="number" name="attr_attack_modifier" min="0" value="" placeholder="0" title="@{attack_modifier}" /><spam> + </spam>
|
|
<input type="number" name="attr_attack_base" min="0" value="" placeholder="7" title="@{attack_base}" />
|
|
<div class="device-attr">
|
|
<div class="matrix-bubble matrixAttack">
|
|
<input type="radio" name="attr_attack_base" value="1" /><span></span>
|
|
<input type="radio" name="attr_attack_base" value="2" /><span></span>
|
|
<input type="radio" name="attr_attack_base" value="3" /><span></span>
|
|
<input type="radio" name="attr_attack_base" value="4" /><span></span>
|
|
<input type="radio" name="attr_attack_base" value="5" /><span></span>
|
|
<input type="radio" name="attr_attack_base" value="6" /><span></span>
|
|
<input type="radio" name="attr_attack_base" value="7" /><span></span>
|
|
<input type="radio" name="attr_attack_base" value="8" /><span></span>
|
|
<input type="radio" name="attr_attack_base" value="9" /><span></span>
|
|
<input type="radio" name="attr_attack_base" value="10" /><span></span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row-long">
|
|
<label><button type="roll" name="sleaze" value="&{template:rolls}{{header=^{sleaze}}}{{base=^{base}}}{{dice=[[(@{sleaze}+(?{Attribute|Willpower,@{willpower}|Logic,@{logic}|Intuition,@{intuition}})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Roll sleaze" data-i18n="sleaze">Sleaze</button></label>
|
|
<div class="matrix-tot" title="@{sleaze}" ><span name="attr_sleaze"></span></div><span> = </span>
|
|
<input type="number" name="attr_sleaze_temp" min="0" value="" placeholder="0" title="@{sleaze_temp}" /><spam> + </spam>
|
|
<input type="number" name="attr_sleaze_modifier" min="0" value="" placeholder="0" title="@{sleaze_modifier}" /><spam> + </spam>
|
|
<input type="number" name="attr_sleaze_base" min="0" value="" placeholder="6" title="@{sleaze_base}" />
|
|
<div class="device-attr">
|
|
<div class="matrix-bubble matrixSleaze">
|
|
<input type="radio" name="attr_sleaze_base" value="1" /><span></span>
|
|
<input type="radio" name="attr_sleaze_base" value="2" /><span></span>
|
|
<input type="radio" name="attr_sleaze_base" value="3" /><span></span>
|
|
<input type="radio" name="attr_sleaze_base" value="4" /><span></span>
|
|
<input type="radio" name="attr_sleaze_base" value="5" /><span></span>
|
|
<input type="radio" name="attr_sleaze_base" value="6" /><span></span>
|
|
<input type="radio" name="attr_sleaze_base" value="7" /><span></span>
|
|
<input type="radio" name="attr_sleaze_base" value="8" /><span></span>
|
|
<input type="radio" name="attr_sleaze_base" value="9" /><span></span>
|
|
<input type="radio" name="attr_sleaze_base" value="10" /><span></span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row-long">
|
|
<label><button type="roll" name="data processing" value="&{template:rolls}{{header=^{dataprocessing}}}{{base=^{base}}}{{dice=[[(@{data_processing}+(?{Attribute|Willpower,@{willpower}|Logic,@{logic}|Intuition,@{intuition}})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Roll data processing" data-i18n="dataproc">Data Proc.</button></label>
|
|
<div class="matrix-tot" title="@{data_processing}" ><span name="attr_data_processing"></span></div><span> = </span>
|
|
<input type="number" name="attr_data_processing_temp" min="0" alue="" placeholder="0" title="@{data_processing_temp}" /><spam> + </spam>
|
|
<input type="number" name="attr_data_processing_modifier" min="0" value="" placeholder="0" title="@{data_processing_modifier}" /><spam> + </spam>
|
|
<input type="number" name="attr_data_processing_base" min="0" value="" placeholder="5" title="@{data_processing_base}" />
|
|
<div class="device-attr">
|
|
<div class="matrix-bubble matrixData">
|
|
<input type="radio" name="attr_data_processing_base" value="1" /><span></span>
|
|
<input type="radio" name="attr_data_processing_base" value="2" /><span></span>
|
|
<input type="radio" name="attr_data_processing_base" value="3" /><span></span>
|
|
<input type="radio" name="attr_data_processing_base" value="4" /><span></span>
|
|
<input type="radio" name="attr_data_processing_base" value="5" /><span></span>
|
|
<input type="radio" name="attr_data_processing_base" value="6" /><span></span>
|
|
<input type="radio" name="attr_data_processing_base" value="7" /><span></span>
|
|
<input type="radio" name="attr_data_processing_base" value="8" /><span></span>
|
|
<input type="radio" name="attr_data_processing_base" value="9" /><span></span>
|
|
<input type="radio" name="attr_data_processing_base" value="10" /><span></span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row-long">
|
|
<label><button type="roll" name="firewall" value="&{template:rolls}{{header=^{firewall}}}{{base=^{base}}}{{dice=[[(@{firewall}+(?{Attribute|Willpower,@{willpower}|Logic,@{logic}|Intuition,@{intuition}})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Roll firewall" data-i18n="firewall">Firewall</button></label>
|
|
<div class="matrix-tot" title="@{firewall}" ><span name="attr_firewall"></span></div><span> = </span>
|
|
<input type="number" name="attr_firewall_temp" min="0" value="" placeholder="0" title="@{firewall_temp}" /><spam> + </spam>
|
|
<input type="number" name="attr_firewall_modifier" min="0" value="" placeholder="0" title="@{firewall_modifier}" /><spam> + </spam>
|
|
<input type="number" name="attr_firewall_base" min="0" value="" placeholder="4" title="@{firewall_base}" />
|
|
<div class="device-attr">
|
|
<div class="matrix-bubble matrixFirewall">
|
|
<input type="radio" name="attr_firewall_base" value="1" /><span></span>
|
|
<input type="radio" name="attr_firewall_base" value="2" /><span></span>
|
|
<input type="radio" name="attr_firewall_base" value="3" /><span></span>
|
|
<input type="radio" name="attr_firewall_base" value="4" /><span></span>
|
|
<input type="radio" name="attr_firewall_base" value="5" /><span></span>
|
|
<input type="radio" name="attr_firewall_base" value="6" /><span></span>
|
|
<input type="radio" name="attr_firewall_base" value="7" /><span></span>
|
|
<input type="radio" name="attr_firewall_base" value="8" /><span></span>
|
|
<input type="radio" name="attr_firewall_base" value="9" /><span></span>
|
|
<input type="radio" name="attr_firewall_base" value="10" /><span></span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="con-hex">
|
|
<input type="radio" name="attr_matrix_con" value="0" /><h2 data-i18n="conditionmonitor">Condition Monitor</h2>
|
|
<input type="radio" name="attr_matrix_con" value="1" /><span class="hexagon"></span>
|
|
<input type="radio" name="attr_matrix_con" value="2" /><span class="hexagon"></span>
|
|
<input type="radio" name="attr_matrix_con" value="3" /><span class="hexagon"></span>
|
|
<input type="radio" name="attr_matrix_con" value="4" /><span class="hexagon"></span>
|
|
<input type="radio" name="attr_matrix_con" value="5" /><span class="hexagon"></span>
|
|
<input type="radio" name="attr_matrix_con" value="6" /><span class="hexagon"></span>
|
|
<input type="radio" name="attr_matrix_con" value="7" /><span class="hexagon"></span>
|
|
<input type="radio" name="attr_matrix_con" value="8" /><span class="hexagon"></span>
|
|
<input type="radio" name="attr_matrix_con" value="9" /><span class="hexagon"></span>
|
|
<input type="radio" name="attr_matrix_con" value="10" /><span class="hexagon"></span>
|
|
<input type="radio" name="attr_matrix_con" value="11" /><span class="hexagon"></span>
|
|
<input type="radio" name="attr_matrix_con" value="12" /><span class="hexagon"></span>
|
|
</div>
|
|
<h3>Programs</h3>
|
|
<div class="program-box">
|
|
<fieldset class="repeating_programs">
|
|
<input type="checkbox" class="settings-toggle" name="attr_flag" checked="checked" title="Settings toggle" /><span>x</span>
|
|
<div class="settings">
|
|
<div>
|
|
<input type="text" name="attr_program" value="" placeholder="Program name" title="Program name" />
|
|
<label data-i18n="notes">Notes</label>
|
|
<textarea name="attr_notes" placeholder="Program description"></textarea>
|
|
</div>
|
|
</div>
|
|
<div class="display">
|
|
<input type="checkbox" class="program-toggle" name="attr_program_on" checked="checked" title="Program loaded" /><span class="program-toggle" style="color: #000;">Q</span>
|
|
<input class="display-flag" type="checkbox" name="attr_display_flag" />
|
|
<div class="display-row" title="Program name"><span name="attr_program"></span></div>
|
|
<div class="collapsable">
|
|
<div class="desc"><span name="attr_notes"></span></div>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div><!-- ~~~~~~~~ End of the Cyberdeck Row ~~~~~~~~ -->
|
|
<div class="pc-row">
|
|
<div class="header right-header"><h1 data-i18n="complexform">Complex Forms</h1><div class="right-tri"></div></div>
|
|
<div class="border-box repeat-box form-box">
|
|
<div class="pc-box medium-box">
|
|
<div class="row-long">
|
|
<h3 data-i18n="complexform">Complex Form</h3><h3 data-i18n="target">Target</h3><h3 data-i18n="duration">Duration</h3><h3 data-i18n="fade">Fade</h3>
|
|
</div>
|
|
<fieldset class="repeating_forms">
|
|
<input type="checkbox" class="settings-toggle" name="attr_flag" checked="checked" title="Settings toggle" /><span>x</span>
|
|
<div class="settings">
|
|
<div>
|
|
<input type="text" name="attr_name" placeholder="Editor" title="Complex Form name" />
|
|
<select name="attr_target" title="Target">
|
|
<option class="option" value="Device" selected="selected" data-i18n="device">Device</option>
|
|
<option class="option" value="File" data-i18n="file">File</option>
|
|
<option class="option" value="Host" data-i18n="host">Host</option>
|
|
<option class="option" value="IC" data-i18n="ic">IC</option>
|
|
<option class="option" value="Persona" data-i18n="persona">Persona</option>
|
|
<option class="option" value="Other" data-i18n="other">Other</option>
|
|
<option class="option" value="Self" data-i18n="self">Self</option>
|
|
<option class="option" value="Sprite" data-i18n="sprite">Sprite</option>
|
|
</select>
|
|
<select name="attr_duration" title="Duration">
|
|
<option value="Extended" data-i18n="extended">Extended</option>
|
|
<option value="Instant" data-i18n="instant">Instant</option>
|
|
<option value="Permanent" data-i18n="permanent">Permanent</option>
|
|
<option value="Other" data-i18n="other">Other</option>
|
|
<option value="Sustained" data-i18n="sustained">Sustained</option>
|
|
</select>
|
|
<input type="number" name="attr_fade" value="" placeholder="-1" title="Fade code" />
|
|
<div class="settings-row">
|
|
<input type="hidden" name="attr_dicepool" value="0" />
|
|
<label>Tech. Skill</label>
|
|
<select class="skill-select" name="attr_skill" title="Technical skill" >
|
|
<option class="option-headers" disabled="true" data-i18n="technicalskills">Technical Skills</option>
|
|
<option class="option-groups" value="@{electronics}" data-i18n="electronicsgroup">Electronics Group</option>
|
|
<option value="@{software}" selected="selected" data-i18n="software">Software</option>
|
|
</select>
|
|
<label data-i18n="specializations">Specialization</label><input class="skill-select" type="checkbox" name="attr_spec" value="2" title="Applicable specialization" />
|
|
<label data-i18n="modifierdice">modifier dice</label><input type="number" name="attr_dicepool_modifier" title="Additional dicepool bonus" />
|
|
</div>
|
|
<label data-i18n="notes">Notes</label>
|
|
<textarea name="attr_notes" value="" placeholder="Notes"></textarea>
|
|
</div>
|
|
</div>
|
|
<div class="display">
|
|
<input class="display-flag" type="checkbox" name="attr_display_flag" />
|
|
<div class="display-row"><button type="roll" name="complex form" value="@{gm_toggle} &{template:rolls}{{header=@{name}}}{{base=^{resonance}}}{{dice=[[((@{skill}+@{dicepool}+@{resonance})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=Level ?{Level|}, Fade [[?{Level|}+(@{fade})]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}"><span name="attr_name"></span></button></div>
|
|
<div class="display-row" title="Target"><span name="attr_target"></span></div>
|
|
<div class="display-row" title="Duration"><span name="attr_duration"></span></div>
|
|
<div class="display-row" style="text-align: center;" title="Fade code"><span name="attr_fade"></span></div>
|
|
<input class="display-flag" type="checkbox" name="attr_display_flag" title="Display notes" /><span>i</span>
|
|
<div class="collapsable">
|
|
<div class="desc"><span name="attr_notes"></span></div>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div><!-- ~~~~~~~~ END OF THE RIGHT COLUMN 'MATRIX' ~~~~~~~~ -->
|
|
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ START OF THE RIGHT COLUMN 'SOCIAL' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
|
|
<div class="social pc-col">
|
|
<div class="pc-row"><!-- ~~~~~~~~ Start of Lifestyles Row ~~~~~~~~ -->
|
|
<div class="header right-header"><h1 data-i18n="idslifestylecurrency">IDs/Lifestyles/Currency</h1><div class="right-tri"></div></div>
|
|
<div class="border-box repeat-box lifestyle">
|
|
<div class="pc-box small-box social-box">
|
|
<div class="row-long"><h3 data-i18n="primarylifestyle">Primary Lifestyle</h3><input type="text" name="attr_primary_lifestyle" placeholder="Middle /w GRID subscription" style="width: 77%" title="@{primary_lifestyle}" /></div>
|
|
<div class="row-long"><h3 data-i18n="nuyen">Nuyen</h3><input type="text" name="attr_primary_nuyen" placeholder="$1,000 UCAS" style="width: 90%" title="@{primary_nuyen}" /></div>
|
|
<div class="row-long"><h3 data-i18n="licenses">Licenses</h3><input type="text" name="attr_primary_licenses"placeholder="Technomancer, Pistols..." style="width: 87%" title="@{primary_licenses}" /></div>
|
|
<div class="row-long">
|
|
<h3 data-i18n="fakeidsrelated">Fake IDs / Related Lifestyles / Funds / Licenses</h3>
|
|
</div>
|
|
<fieldset class="repeating_lifestyle">
|
|
<input type="checkbox" class="settings-toggle" name="attr_flag" checked="checked" title="Settings toggle" /><span>x</span>
|
|
<div class="settings">
|
|
<div>
|
|
<h3 data-i18n="fakeid">Fake ID</h3><textarea name="attr_name" placeholder="John Doe" title="Fake ID"></textarea>
|
|
<h3 data-i18n="relatedlifestyle">Related Lifestyle</h3><textarea name="attr_lifestyle" placeholder="Middle" title="Related lifestyle"></textarea>
|
|
<h3 data-i18n="funds">Funds</h3><textarea name="attr_funds" placeholder="$1,000 UCAS" title="Funds"></textarea>
|
|
<h3 data-i18n="licenses">Licenses</h3><textarea name="attr_licenses" placeholder="Technomancer, Pistols" title="Licenses"></textarea>
|
|
</div>
|
|
</div>
|
|
<div class="display">
|
|
<input class="display-flag" type="checkbox" name="attr_display_flag" />
|
|
<span name="attr_display" style="width: 100%;"></span>
|
|
<span name="attr_name" title="Fake ID"></span>
|
|
<span name="attr_lifestyle" title="Related lifestyle"></span>
|
|
<span name="attr_funds" title="Funds"></span>
|
|
<span name="attr_licenses" title="Licenses"></span>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
</div>
|
|
</div><!-- ~~~~~~~~ End of Lifestyle Row ~~~~~~~~ -->
|
|
<!-- ~~~~~~~~ Start Contacts Row ~~~~~~~~ -->
|
|
<div class="pc-row">
|
|
<div class="header right-header"><h1 data-i18n="contacts">Contacts</h1><div class="right-tri"></div></div>
|
|
<div class="border-box repeat-box contacts">
|
|
<div class="pc-box small-box">
|
|
<div class="row-long">
|
|
<h3 data-i18n="name">Name</h3><h3 data-i18n="loyalty">Loyalty</h3><h3 data-i18n="connection">Connection</h3><h3 data-i18n="favor">Favor</h3>
|
|
</div>
|
|
<fieldset class="repeating_contacts">
|
|
<input type="checkbox" class="settings-toggle" name="attr_flag" checked="checked" title="Settings toggle" /><span>x</span>
|
|
<div class="settings">
|
|
<div>
|
|
<input type="text" name="attr_name" placeholder="Old Crow" title="Contact name" />
|
|
<input type="number" name="attr_loyalty" min="1" placeholder="3" title="Loyalty" />
|
|
<input type="number" name="attr_connection" min="1" placeholder="8" title="Connection" />
|
|
<input type="number" name="attr_favors" placeholder="+2" title="Favors" />
|
|
<h3 data-i18n="notes">Notes</h3>
|
|
<textarea name="attr_notes" value="" placeholder="Notes"></textarea>
|
|
</div>
|
|
</div>
|
|
<div class="display">
|
|
<input class="display-flag" type="checkbox" name="attr_display_flag" />
|
|
<div class="display-row" title="Contact name"><span name="attr_display"></span></div>
|
|
<div class="display-row" title="Loyalty"><span name="attr_loyalty"></span></div>
|
|
<div class="display-row" title="Connection"><span name="attr_connection"></span></div>
|
|
<div class="display-row" title="Favors"><span name="attr_favors"></span></div>
|
|
<div class="collapsable">
|
|
<div class="desc" title="Notes"><span name="attr_notes"></span></div>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
</div>
|
|
</div><!-- ~~~~~~~~ End of Contacts row ~~~~~~~~ -->
|
|
</div><!-- ~~~~~~~~ END OF THE RIGHT COLUMN 'SOCIAL' ~~~~~~~~ -->
|
|
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ START OF THE RIGHT COLUMN 'VEHICLE' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
|
|
<div class="vehicle pc-col">
|
|
<div class="pc-row">
|
|
<div class="header right-header"><h1 data-i18n="vehicle">Vehicle</h1><div class="right-tri"></div></div>
|
|
<div class="border-box repeat-box vehicle-box">
|
|
<div class="pc-box medium-box">
|
|
<fieldset class="repeating_vehicle">
|
|
<input type="checkbox" class="settings-toggle" name="attr_flag" checked="checked" title="Settings toggle" /><span>x</span>
|
|
<div class="settings">
|
|
<div>
|
|
<div class="row-long">
|
|
<label data-i18n="name">Name</label>
|
|
<input type="text" name="attr_name" placeholder="name" title="Vehicle name" />
|
|
<input type="hidden" name="attr_display_name" />
|
|
<label data-i18n="handling">Handling</label>
|
|
<input type="hidden" name="attr_handling" />
|
|
<input type="number" name="attr_handling_base" placeholder="#" title="Handling base" />
|
|
<input type="number" name="attr_handling_modifier" placeholder="#" title="Handling modifier" />
|
|
<input type="number" name="attr_handling_temp" placeholder="#" title="Handling temp" />
|
|
<input type="hidden" name="attr_display_handling" placeholder="#" />
|
|
</div>
|
|
<div class="row-long">
|
|
<label data-i18n="acceleration">Acceleration</label>
|
|
<input type="hidden" name="attr_acceleration" />
|
|
<input type="number" name="attr_acceleration_base" placeholder="#" title="Acceleration base" />
|
|
<input type="number" name="attr_acceleration_modifier" placeholder="#" title="Acceleration modifier" />
|
|
<input type="number" name="attr_acceleration_temp" placeholder="#" title="Acceleration temp" />
|
|
<input type="hidden" name="attr_display_acceleration" placeholder="#" />
|
|
<label data-i18n="speed">Speed</label>
|
|
<input type="hidden" name="attr_speed" />
|
|
<input type="number" name="attr_speed_base" placeholder="#" title="Speed base" />
|
|
<input type="number" name="attr_speed_modifier" placeholder="#" title="Speed modifier" />
|
|
<input type="number" name="attr_speed_temp" placeholder="#" title="Speed temp" />
|
|
<input type="hidden" name="attr_display_speed" placeholder="#" />
|
|
</div>
|
|
<div class="row-long">
|
|
<label data-i18n="pilot">Pilot</label>
|
|
<input type="hidden" name="attr_pilot" />
|
|
<input type="number" name="attr_pilot_base" placeholder="#" title="Pilot base" />
|
|
<input type="number" name="attr_pilot_modifier" placeholder="#" title="Pilot modifier" />
|
|
<input type="number" name="attr_pilot_temp" placeholder="#" title="Pilot temp" />
|
|
<input type="hidden" name="attr_display_pilot" placeholder="#" />
|
|
<label data-i18n="body">Body</label>
|
|
<input type="hidden" name="attr_body" />
|
|
<input type="number" name="attr_body_base" placeholder="#" title="Body base" />
|
|
<input type="number" name="attr_body_modifier" placeholder="#" title="Body modifier" />
|
|
<input type="number" name="attr_body_temp" placeholder="#" title="Body temp" />
|
|
<input type="hidden" name="attr_display_body" placeholder="#" />
|
|
</div>
|
|
<div class="row-long">
|
|
<label data-i18n="armor">Armor</label>
|
|
<input type="hidden" name="attr_armor" />
|
|
<input type="number" name="attr_armor_base" placeholder="#" title="Amro base" />
|
|
<input type="number" name="attr_armor_modifier" placeholder="#" title="Armor modifier" />
|
|
<input type="number" name="attr_armor_temp" placeholder="#" title="Armor temp" />
|
|
<input type="hidden" name="attr_display_armor" placeholder="#" />
|
|
<label data-i18n="sensor">Sensor</label>
|
|
<input type="hidden" name="attr_sensor" />
|
|
<input type="number" name="attr_sensor_base" placeholder="#" title="Sensor base" />
|
|
<input type="number" name="attr_sensor_modifier" placeholder="#" title="Sensor modifier" />
|
|
<input type="number" name="attr_sensor_temp" placeholder="#" title="Sensor temp" />
|
|
<input type="hidden" name="attr_display_sensor" placeholder="#" />
|
|
</div>
|
|
<div class="row-long">
|
|
<h3 data-i18n="base">Base</h3><h3 data-i18n="modifier">Modifier</h3><h3 data-i18n="temp">Temp</h3><h3 data-i18n="base">Base</h3><h3 data-i18n="modifier">Modifier</h3><h3 data-i18n="temp">Temp</h3>
|
|
</div>
|
|
<h3 data-i18n="notes">Notes</h3>
|
|
<textarea name="attr_notes" value="" placeholder="Notes"></textarea>
|
|
</div>
|
|
</div>
|
|
<div class="display">
|
|
<input class="display-flag" type="checkbox" name="attr_display_flag" />
|
|
<div class="row-long">
|
|
<div class="display-row" title="Vehicle"><h3 data-i18n="vehicle">Vehicle</h3><div><span name="attr_display_name"></span></div></div>
|
|
<div class="display-row" title="Handling"><h3 data-i18n="handling">Handling</h3><div><span name="attr_display_handling"></span></div></div>
|
|
</div>
|
|
<div class="row-long">
|
|
<div class="display-row" title="Acceleration"><h3 data-i18n="acceleration">Acceleration</h3><div><span name="attr_display_acceleration"></span></div></div>
|
|
<div class="display-row" title="Speed"><h3 data-i18n="speed">Speed</h3><div><span name="attr_display_speed"></span></div></div>
|
|
</div>
|
|
<div class="row-long">
|
|
<div class="display-row" title="Pilot"><h3 data-i18n="pilot">Pilot</h3><div><span name="attr_display_pilot"></span></div></div>
|
|
<div class="display-row" title="Body"><h3 data-i18n="body">Body</h3><div><span name="attr_display_body"></span></div></div>
|
|
</div>
|
|
<div class="row-long">
|
|
<div class="display-row" title="Armor"><h3 data-i18n="armor">Armor</h3><div><span name="attr_display_armor"></span></div></div>
|
|
<div class="display-row" title="Sensor"><h3 data-i18n="sensor">Sensor</h3><div><span name="attr_display_sensor"></span></div></div>
|
|
</div>
|
|
<div class="collapsable">
|
|
<div class="desc"><span name="attr_notes"></span></div>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div><!-- ~~~~~~~~ End of the VEHICLE Column ~~~~~~~~ -->
|
|
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ START OF THE RIGHT COLUMN 'OPTIONS' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
|
|
<div class="options pc-col">
|
|
<div class="pc-row">
|
|
<div class="header right-header"><h1 data-i18n="options">Options</h1><div class="right-tri"></div></div>
|
|
<div class="border-box">
|
|
<div class="pc-box">
|
|
<div class="op-col">
|
|
<div>
|
|
<h2 data-i18n="character">Character</h2><br />
|
|
<label data-i18n="mundane">Mundane</label><input class="character-type" type="checkbox" name="attr_flag_special" value="mundane" title="@{flag_special}" checked /><br />
|
|
<label data-i18n="awakened">Awakened</label><input class="character-type" type="checkbox" name="attr_flag_special" value="magic" title="@{flag_special}" /><br />
|
|
<label data-i18n="emerged">Emerged</label><input class="character-type" type="checkbox" name="attr_flag_special" value="resonance" title="@{flag_special}" />
|
|
</div>
|
|
<div>
|
|
<h2 data-i18n="sheetselect">Sheet Select</h2><br />
|
|
<select name="attr_sheet_type" title="@{sheet_type}">
|
|
<option value="pc" data-i18n="pc">PC</option>
|
|
<option value="grunt" data-i18n="grunt">grunt</option>
|
|
<option value="host" data-i18n="host">Host</option>
|
|
<option value="sprite" data-i18n="sprite">Sprite</option>
|
|
<option value="vehicle" data-i18n="vehicle">Vehicle</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
<div class="op-col">
|
|
<div>
|
|
<h2 data-i18n="temporarymodifiers">Temporary Modifiers</h2><br />
|
|
<label data-i18n="defense">Defense</label><input type="number" name="attr_defense_temp" title="@{defense_temp}" /><input type="checkbox" name="attr_defense_temp_flag" value="on" checked />
|
|
<label data-i18n="soak">Soak</label><input type="number" name="attr_soak_temp" title="@{soak_temp}" /><input type="checkbox" name="attr_soak_temp_flag" value="on" checked />
|
|
<hr />
|
|
<label data-i18n="body">Body</label><input type="number" name="attr_body_temp" title="@{body_temp}" /><input type="checkbox" name="attr_body_temp_flag" value="on" checked />
|
|
<label data-i18n="agility">Agility</label><input type="number" name="attr_agility_temp" title="@{agility_temp}" /><input type="checkbox" name="attr_agility_temp_flag" value="on" checked />
|
|
<label data-i18n="reaction">Reaction</label><input type="number" name="attr_reaction_temp" title="@{reaction_temp}" /><input type="checkbox" name="attr_reaction_temp_flag" value="on" checked />
|
|
<label data-i18n="strength">Strength</label><input type="number" name="attr_strength_temp" title="@{strength_temp}" /><input type="checkbox" name="attr_strength_temp_flag" value="on" checked />
|
|
<label data-i18n="willpower">Willpower</label><input type="number" name="attr_willpower_temp" title="@{willpower_temp}" /><input type="checkbox" name="attr_willpower_temp_flag" value="on" checked />
|
|
<label data-i18n="logic">Logic</label><input type="number" name="attr_logic_temp" title="@{logic_temp}" /><input type="checkbox" name="attr_logic_temp_flag" value="on" checked />
|
|
<label data-i18n="intuition">Intuition</label><input type="number" name="attr_intuition_temp" title="@{intuition_temp}" /><input type="checkbox" name="attr_intuition_temp_flag" value="on" checked />
|
|
<label data-i18n="charisma">Charisma</label><input type="number" name="attr_charisma_temp" title="@{charisma_temp}" /><input type="checkbox" name="attr_charisma_temp_flag" value="on" checked />
|
|
<label data-i18n="magic">Magic</label><input type="number" name="attr_magic_temp" title="@{magic_temp}" /><input type="checkbox" name="attr_magic_temp_flag" value="on" checked />
|
|
<label data-i18n="resonance">Resonance</label><input type="number" name="attr_resonance_temp" title="@{resonance_temp}" /><input type="checkbox" name="attr_resonance_temp_flag" value="on" checked />
|
|
<hr />
|
|
<label data-i18n="initiative">Initiative</label><input type="number" name="attr_initiative_temp" title="@{initiative_temp}" /><input type="checkbox" name="attr_initiative_temp_flag" value="on" checked />
|
|
<label data-i18n="initiativedice">Initiative Dice</label><input type="number" name="attr_initiative_dice_temp" title="@{initiative_dice_temp}" /><input type="checkbox" name="attr_initiative_dice_temp_flag" value="on" checked />
|
|
<hr />
|
|
<label data-i18n="mentallimit">Mental Limit</label><input type="number" name="attr_mental_limit_temp" title="@{mental_limit_temp}" /><input type="checkbox" name="attr_mental_limit_temp_flag" value="on" checked />
|
|
<label data-i18n="physicallimit">Physical Limit</label><input type="number" name="attr_physical_limit_temp" title="@{physical_limit_temp}" /><input type="checkbox" name="attr_physical_limit_temp_flag" value="on" checked />
|
|
<label data-i18n="sociallimit">Social Limit</label><input type="number" name="attr_social_limit_temp" title="@{social_limit_temp}" /><input type="checkbox" name="attr_social_limit_temp_flag" value="on" checked />
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div><!-- ~~~~~~~~ End of the OPTIONS Column ~~~~~~~~ -->
|
|
</div><!-- ~~~~~~~~ End of PC Sheet ~~~~~~~~ -->
|
|
|
|
<!-- ~~~~~~~~+:+:::::+:+::+:+:+::+:+:+:+::+:+::::::+:+::+:+:+:+::+:+:::::+:+:+:+:::::+:+::+:+:+::+:+:+:+::::+:+:~~~~~~~~ -->
|
|
<!-- ~~~~~~~~:+:+::+:+:+:+:+::+:+:+:+:+:+: Start of NPC Sheet :+:+::+:+:+::+:+:+:+::+:+:+::+:+:+:+::+:+:::::+:+:~~~~~~~~ -->
|
|
<!-- ~~~~~~~~+:+:::::+:+::+:+:::::+:+::+:+:+::+:+:+:+::+:+:::::+:+:::::+:+:+:+:::::+:+::+:+:+::+:+:+:+::+::+:+:+~~~~~~~~ -->
|
|
<div class="npc">
|
|
<div class="stats toggle"><!-- ~~~~~~~~ Start of the grunt Sheet ~~~~~~~~ -->
|
|
<input type="checkbox" class="settings-toggle npc-stats-toggle" name="attr_stats_toggle" checked="checked" /><span>y</span>
|
|
<div class="settings stat-inputs">
|
|
<input type="hidden" class="npc-type" name="attr_sheet_type" value="grunt" />
|
|
<!-- ~~~~~~~~ Attributes ~~~~~~~~ -->
|
|
<div class="grunt attribute">
|
|
<input type="hidden" class="character-type" name="attr_flag_special" />
|
|
<div class="attr-header">
|
|
<label data-i18n="b">B</label><br />
|
|
<input type="number" name="attr_body_base" placeholder="3" title="@{body_base}" value="3" /><br />
|
|
<span>(</span><input type="number" name="attr_body_modifier" placeholder="+" title="@{body_modifier}" value="" /><span>)</span>
|
|
</div>
|
|
<div class="attr-header">
|
|
<label data-i18n="a">A</label><br />
|
|
<input type="number" name="attr_agility_base" placeholder="3" title="@{agility_base}" value="3" /><br />
|
|
<span>(</span><input type="number" name="attr_agility_modifier" placeholder="+" title="@{agility_modifier}" value="" /><span>)</span>
|
|
</div>
|
|
<div class="attr-header">
|
|
<label data-i18n="r">R</label><br />
|
|
<input type="number" name="attr_reaction_base" placeholder="3" title="@{reaction_base}" value="3" /><br />
|
|
<span>(</span><input type="number" name="attr_reaction_modifier" placeholder="+" title="@{reaction_modifier}" value="" /><span>)</span>
|
|
</div>
|
|
<div class="attr-header">
|
|
<label data-i18n="s">S</label><br />
|
|
<input type="number" name="attr_strength_base" placeholder="3" title="@{strength_base}" value="3" /><br />
|
|
<span>(</span><input type="number" name="attr_strength_modifier" placeholder="+" title="@{strength_modifier}" value="" /><span>)</span>
|
|
</div>
|
|
<div class="attr-header">
|
|
<label data-i18n="w">W</label><br />
|
|
<input type="number" name="attr_willpower_base" placeholder="3" title="@{willpower_base}" value="3" /><br />
|
|
<span>(</span><input type="number" name="attr_willpower_modifier" placeholder="+" title="@{willpower_modifier}" value="" /><span>)</span>
|
|
</div>
|
|
<div class="attr-header">
|
|
<label data-i18n="l">L</label><br />
|
|
<input type="number" name="attr_logic_base" placeholder="3" title="@{logic_base}" value="3" /><br />
|
|
<span>(</span><input type="number" name="attr_logic_modifier" placeholder="+" title="@{logic_modifier}" value="" /><span>)</span>
|
|
</div>
|
|
<div class="attr-header">
|
|
<label data-i18n="i">I</label><br />
|
|
<input type="number" name="attr_intuition_base" placeholder="3" title="@{intuition_base}" value="3" /><br />
|
|
<span>(</span><input type="number" name="attr_intuition_modifier" placeholder="+" title="@{intuition_modifier}" value="" /><span>)</span>
|
|
</div>
|
|
<div class="attr-header">
|
|
<label data-i18n="c">C</label><br />
|
|
<input type="number" name="attr_charisma_base" placeholder="3" title="@{charisma_base}" value="3" /><br />
|
|
<span>(</span><input type="number" name="attr_charisma_modifier" placeholder="+" title="@{charisma_modifier}" value="" /><span>)</span>
|
|
</div>
|
|
<div class="attr-header"><label data-i18n="e">E</label><br /><input type="number" name="attr_edge" placeholder="3" title="@{edge}" value="0"/></div>
|
|
<div class="attr-header"><label data-i18n="ess">Ess</label><br /><input type="text" name="attr_essence" placeholder="3" style="width: 80%;" title="@{essence}" value="6" /></div>
|
|
<div class="attr-header magic"><label data-i18n="m">M</label><br /><input type="number" name="attr_magic" placeholder="0" title="@{magic}" value="3" /></div>
|
|
<div class="attr-header magic"><label data-i18n="f">F</label><br /><input type="number" name="attr_force" placeholder="0" title="@{force}" value="3" /></div>
|
|
<div class="attr-header resonance"><label data-i18n="r">R</label><br /><input type="number" name="attr_resonance" placeholder="0" title="@{resonance}" value="3" /></div>
|
|
</div>
|
|
<div class="host attribute">
|
|
<div class="attr-header"><label data-i18n="hostrating">Host Rating</label><br /><input type="number" name="attr_host_rating" placeholder="5" title="@{host_rating}" value="" /></div>
|
|
<div class="attr-header"><label data-i18n="attack">Attack</label><br /><input type="number" name="attr_attack" placeholder="5" title="@{attack}" value="" /></div>
|
|
<div class="attr-header"><label data-i18n="sleaze">Sleaze</label><br /><input type="number" name="attr_sleaze" placeholder="6" title="@{sleaze}" value="" /></div>
|
|
<div class="attr-header"><label data-i18n="dataprocessing">Data Processing</label><br /><input type="number" name="attr_data_processing" placeholder="7" title="@{data_processing}" value="" /></div>
|
|
<div class="attr-header"><label data-i18n="firewall">Firewall</label><br /><input type="number" name="attr_firewall" placeholder="8" title="@{firewall}" value="" /></div>
|
|
</div>
|
|
<div class="vehicle attribute">
|
|
<div class="attr-header"><label data-i18n="hand">Hand</label><br /><input type="number" name="attr_handling" placeholder="3" title="@{handling}" value="" /></div>
|
|
<div class="attr-header"><label data-i18n="handoff">Hand (Off)</label><br /><input type="number" name="attr_handling_offroad" placeholder="3" title="@{handling_offroad}" value="" /></div>
|
|
<div class="attr-header"><label data-i18n="speed">Speed</label><br /><input type="number" name="attr_speed" placeholder="3" title="@{speed}" value="" /></div>
|
|
<div class="attr-header"><label data-i18n="speedoff">Speed (Off)</label><br /><input type="number" name="attr_speed_offroad"placeholder="3" title="@{speed_offroad}" value="" /></div>
|
|
<div class="attr-header"><label data-i18n="accel">Accel</label><br /><input type="number" name="attr_acceleration"placeholder="3" title="@{acceleration}" value="" /></div>
|
|
<div class="attr-header"><label data-i18n="body">Body</label><br /><input type="number" name="attr_body" placeholder="3" title="@{body}" value="" /></div>
|
|
<div class="attr-header"><label data-i18n="pilot">Pilot</label><br /><input type="number" name="attr_pilot" placeholder="3" title="@{pilot}" value="" /></div>
|
|
<div class="attr-header"><label data-i18n="sensor">Sensor</label><br /><input type="number" name="attr_sensor" placeholder="3" title="@{sensor}" value="" /></div>
|
|
<div class="attr-header"><label data-i18n="seat">Seat</label><br /><input type="number" name="attr_seating" placeholder="3" title="@{seating}"value="" /></div>
|
|
</div>
|
|
<div class="sprite attribute">
|
|
<div class="attr-header"><label data-i18n="levelresonance">Level / Resonance</label><br /><input type="number" name="attr_level" placeholder="5" title="@{level}" value="" /></div>
|
|
<div class="attr-header"><label data-i18n="attack">Attack</label><br /><input type="number" name="attr_attack" placeholder="5" title="@{attack}" value="" /></div>
|
|
<div class="attr-header"><label data-i18n="sleaze">Sleaze</label><br /><input type="number" name="attr_sleaze" placeholder="6" title="@{sleaze}" value="" /></div>
|
|
<div class="attr-header"><label data-i18n="dataprocessing">Data Processing</label><br /><input type="number" name="attr_data_processing" placeholder="7" title="@{data_processing}" value="" /></div>
|
|
<div class="attr-header"><label data-i18n="firewall">Firewall</label><br /><input type="number" name="attr_firewall" placeholder="8" title="@{firewall}" value="" /></div>
|
|
</div>
|
|
<!-- ~~~~~~~~ modifieres ~~~~~~~~ -->
|
|
<h1 data-i18n="bonuses">Bonuses</h1>
|
|
<div class="leftcol"><!--Start Left modifieres-->
|
|
<input type="hidden" class="npc-type" name="attr_sheet_type" value="grunt" />
|
|
<div class="grunt">
|
|
<label data-i18n="pr">Professional Rating</label><input type="number" name="attr_pr" title="@{pr}" /><br />
|
|
<label data-i18n="initiative">Initiative</label>
|
|
<input type="number" name="attr_initiative_modifier" placeholder="0" title="@{initiative_modifier}" value="0" /><span> + </span>
|
|
<input type="number" name="attr_initiative_dice_modifier" min="0" max="4" placeholder="0" title="@{initiative_dice_modifier}" value="0" />
|
|
<span data-i18n="d6"> d6</span><span class="tiny-span"> = </span>
|
|
<span name="attr_display_initiative_mod"></span><span class="tiny-span" title="@{initiative_mod}"> + </span>
|
|
<span name="attr_initiative_dice"></span><span class="tiny-span" title="@{initiative_dice}" data-i18n="d6"> d6</span>
|
|
<input type="hidden" class="character-type" name="attr_flag_special" />
|
|
<div class="magic-skill">
|
|
<label data-i18n="astralinitiative">Astral Initiative</label>
|
|
<input type="number" name="attr_astral_mod_modifier" placeholder="0" title="@{astral_mod_modifier}" value="0" /><span> + </span>
|
|
<input type="number" name="attr_astral_dice_modifier" min="0" max="3" placeholder="0" title="@{astral_dice_modifier}" value="0" />
|
|
<span class="tiny-span" data-i18n="d6"> d6</span><span class="tiny-span"> = </span>
|
|
<span name="attr_display_astral_mod" title="@{astral_mod}"></span><span class="tiny-span"> + </span>
|
|
<span name="attr_astral_dice" title="@{astral_dice}"></span><span class="tiny-span" data-i18n="d6"> d6</span>
|
|
</div>
|
|
</div>
|
|
<div class="grunt sprite">
|
|
<label data-i18n="matrixinitiative">Matrix Initiative</label>
|
|
<input type="number" name="attr_matrix_mod_modifier" placeholder="0" title="@{matrix_mod_modifier}" value="0" /><span> + </span>
|
|
<input type="number" name="attr_matrix_dice_modifier" min="0" max="4" placeholder="0" title="@{matrix_dice_modifier}" value="0" />
|
|
<span class="tiny-span" data-i18n="d6"> d6</span><span class="tiny-span"> = </span>
|
|
<span name="attr_display_matrix_mod" title="@{matrix_mod}"></span><span class="tiny-span"> + </span>
|
|
<span name="attr_matrix_dice" title="@{matrix_mod}"></span><span class="tiny-span" data-i18n="d6"> d6</span>
|
|
</div>
|
|
<div class="grunt">
|
|
<label data-i18n="movement">Movement</label>
|
|
<input type="number" name="attr_walk_modifier" placeholder="0" title="@{walk_modifier}" value="0" /><span> / </span>
|
|
<input type="number" name="attr_run_modifier" placeholder="0" title="@{run_modifier}" value="0" /><span> / +</span>
|
|
<input type="number" name="attr_movement_mod" placeholder="2" title="@{movement_mod}" value="2" />
|
|
<span class="tiny-span"> = </span>
|
|
<span name="attr_walk" title="@{walk}"></span><span> / </span>
|
|
<span name="attr_run" title="@{run}"></span><span> / +</span>
|
|
<span name="attr_movement_mod" title="@{movement_mod}"></span>
|
|
<label data-i18n="conditionmonitorps">Condition Monitor (P/S)</label>
|
|
<input type="number" name="attr_physical_modifier" placeholder="0" title="@{physical_modifier}" value="0" /><span> / </span>
|
|
<input type="number" name="attr_stun_modifier" placeholder="0" title="@{stun_modifier}" value="0" />
|
|
<br />
|
|
<label data-i18n="limits">Limits</label><br />
|
|
<label data-i18n="physical" style="margin-left: 2%;">Physical </label>
|
|
<input type="number" name="attr_physical_limit_modifier" placeholder="0" title="@{physical_limit_modifier}" value="0" />
|
|
<span class="tiny-span"> = </span><span class="totals" name="attr_physical_limit" title="@{physical_limit}" /></span>,
|
|
<label data-i18n="mental">Mental </label>
|
|
<input type="number" name="attr_mental_limit_modifier" placeholder="0" title="@{mental_limit_modifier}" value="0" />
|
|
<span class="tiny-span"> = </span><span class="totals" name="attr_mental_limit" title="@{mental_limit}" /></span>,
|
|
<label data-i18n="social">Social </label>
|
|
<input type="number" name="attr_social_limit_modifier" placeholder="0" title="@{social_limit_modifier}" value="0" />
|
|
<span class="tiny-span"> = </span><span class="totals" name="attr_social_limit" title="@{social_limit}" /></span>
|
|
<br />
|
|
<label data-i18n="paintolerance">Pain Tolerance</label>
|
|
<input type="number" name="attr_pain_tolerance" min="-1" max="3" placeholder="0" title="@{pain_tolerance}" value="0" /><br />
|
|
</div>
|
|
<div class="vehicle">
|
|
<label data-i18n="conditionmonitorpm">Condition Monitor (P/M) </label>
|
|
<input type="number" name="attr_physical_modifier" placeholder="0" title="@{physical_modifier}" value="0" /><span> / </span>
|
|
<input type="number" name="attr_matrix_modifier" placeholder="0" title="@{matrix_modifier}" value="0" />
|
|
<br />
|
|
<label data-i18n="dataprocessing">Data Processing </label>
|
|
<input type="number" name="attr_data_processing" min="0" placeholder="0" title="@{data_processing}" value="" /><br />
|
|
<label data-i18n="firewall">Firewall </label>
|
|
<input type="number" name="attr_firewall" min="0" placeholder="0" title="@{firewall}" value="" /><br />
|
|
<label data-i18n="devicerating">Device Rating </label>
|
|
<input type="number" name="attr_device_rating" min="0" placeholder="0" title="@{device_rating}" value="" /><br />
|
|
</div>
|
|
</div><!--End Left modifieres-->
|
|
<div class="grunt vehicle 2col"><!--Start Mid modifieres-->
|
|
<label data-i18n="defense">Defense</label>
|
|
<input type="number" name="attr_defense_modifier" placeholder="0" value="0" />
|
|
<label data-i18n="armorrating">Armor Rating </label>
|
|
<input type="number" name="attr_armor_rating" placeholder="9" title="@{armor_rating}" value="0" /><br />
|
|
<label data-i18n="soakbonus">Soak Bonus </label>
|
|
<input type="number" name="attr_soak_modifier" placeholder="0" title="@{soak_modifier}" value="0" /><br />
|
|
<label data-i18n="acidprotection">Acid Protection </label>
|
|
<input type="number" name="attr_acid_modifier" placeholder="0" title="@{acid_modifier}" value="0" /><br />
|
|
<label data-i18n="coldprotection">Cold Protection </label>
|
|
<input type="number" name="attr_cold_modifier" placeholder="0" title="@{cold_modifier}" value="0" /><br />
|
|
<label data-i18n="electricalprotection">Electrical Protection </label>
|
|
<input type="number" name="attr_electrical_modifier" placeholder="0" title="@{electrical_modifier}" value="0" /><br />
|
|
<label data-i18n="fireprotection">Fire Protection </label>
|
|
<input type="number" name="attr_fire_modifier" placeholder="0" value="0" title="@{fire_modifier}"" /><br />
|
|
<label data-i18n="radiationprotection">Radiation Protection </label>
|
|
<input type="number" name="attr_radiation_modifier" placeholder="0" title="@{radiation_modifier}" value="0" />
|
|
</div>
|
|
<div class="grunt 2col"><!--Start Right Checkboxes -->
|
|
<input class="character-type" type="checkbox" name="attr_flag_special" checked="checked" title="@{flag_special}" value="mundane" /><label data-i18n="mundane">Mundane</label><br />
|
|
<input class="character-type" type="checkbox" name="attr_flag_special" title="@{flag_special}" value="magic" /><label data-i18n="awakened">Awakened</label><br />
|
|
<input class="character-type" type="checkbox" name="attr_flag_special" title="@{flag_special}" value="resonance" /><label data-i18n="emerged">Emerged</label>
|
|
<br /><br />
|
|
<input class="character-type" type="checkbox" name="attr_flag_matrix" title="@{flag_matrix}" value="matrix" /><label data-i18n="matrixdevice">Matrix Device</label>
|
|
</div>
|
|
<div class="vehicle 2col"><!--Start Right Checkboxes -->
|
|
<input class="character-type" type="checkbox" name="attr_flag_drone" title="@{flag_drone}" value="drone" /><label data-i18n="drone">Drone</label>
|
|
</div>
|
|
<br />
|
|
<!-- ~~~~~~~~ Qualities/Augs/Init/Gear/Weakness & Other STUFF ~~~~~~~~ -->
|
|
<div class="grunt textrow">
|
|
<label data-i18n="qualities">Qualities </label><textarea name="attr_quality" placeholder="Quality" title="@{quality}"></textarea><br />
|
|
<label data-i18n="augmentations">Augmentations </label><textarea name="attr_augmentations" placeholder="Augmentations" title="@{augmentations}"></textarea><br />
|
|
</div>
|
|
<div class="grunt vehicle textrow">
|
|
<label data-i18n="gear">Gear </label><textarea name="attr_gear" placeholder="Gear" title="@{gear}"></textarea>
|
|
</div>
|
|
<div class="vehicle textrow">
|
|
<label data-i18n="programs">Programs </label><textarea name="attr_programs" placeholder="Programs" title="@{programs}"></textarea><br />
|
|
<label data-i18n="modifications">Modifications </label><textarea name="attr_modifications" placeholder="Modifications" title="@{modifications}"></textarea>
|
|
</div>
|
|
<div class="grunt textrow">
|
|
<input type="hidden" class="character-type" name="attr_flag_special" />
|
|
<div class="magic textrow">
|
|
<label data-i18n="initiate">Initiate </label>
|
|
<input type="number" name="attr_initiate" value="0" placeholder="Grade" title="@{initiate}" /><textarea name="attr_metamagic" placeholder="Metamagics" title="@{metamagic}"></textarea><br />
|
|
<label data-i18n="powers">Powers </label><textarea name="attr_powers" placeholder="Powers" title="@{powers}"></textarea><br />
|
|
<label data-i18n="weakness">Weakness </label><textarea name="attr_weakness" placeholder="Weaknesses" title="@{weakness}"></textarea>
|
|
</div>
|
|
<input type="hidden" class="character-type" name="attr_flag_special" />
|
|
<div class="resonance textrow">
|
|
<label data-i18n="submersion">Submersion </label>
|
|
<input type="number" name="attr_submersion" value="0" placeholder="Grade" title="@{submersion}" /><textarea name="attr_echos" placeholder="Echos" title="@{echos}"></textarea><br />
|
|
</div>
|
|
</div>
|
|
</div><!-- ~~~~~~~~ End of Settings ~~~~~~~~ -->
|
|
<div class="display">
|
|
<!-- ~~~~~~~~ Attributes ~~~~~~~~ -->
|
|
<input type="hidden" class="npc-type" name="attr_sheet_type" value="grunt" />
|
|
<div class="grunt attribute">
|
|
<input type="hidden" class="character-type" name="attr_flag_special" />
|
|
<div class="attr-header">
|
|
<label><button type="roll" name="body" value="@{gm_toggle} &{template:rolls}{{header=Body}}{{base=^{base}}}{{dice=[[(@{body}+()+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Body Roll" data-i18n="b">B</button></label><br /><span name="attr_display_body"></span>
|
|
</div>
|
|
<div class="attr-header">
|
|
<label><button type="roll" name="agility" value="@{gm_toggle} &{template:rolls}{{header=Agility}}{{base=^{base}}}{{dice=[[(@{agility}+(@{attribute_roll})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Agility Roll" data-i18n="a">A</button></label><br /><span name="attr_display_agility"></span>
|
|
</div>
|
|
<div class="attr-header">
|
|
<label><button type="roll" name="reaction" value="@{gm_toggle} &{template:rolls}{{header=^{reaction}}}{{base=^{base}}}{{dice=[[(@{reaction}+(@{attribute_roll})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Reaction Roll" data-i18n="r">R</button></label><br /><span name="attr_display_reaction"></span>
|
|
</div>
|
|
<div class="attr-header">
|
|
<label><button type="roll" name="strength" value="@{gm_toggle} &{template:rolls}{{header=^{strength}}}{{base=^{base}}}{{dice=[[(@{strength}+(@{attribute_roll})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Strength Roll" data-i18n="s">S</button></label><br /><span name="attr_display_strength"></span>
|
|
</div>
|
|
<div class="attr-header">
|
|
<label><button type="roll" name="willpower" value="@{gm_toggle} &{template:rolls}{{header=^{willpower}}}{{base=^{base}}}{{dice=[[(@{willpower}+(@{attribute_roll})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Willpower Roll" data-i18n="w">W</button></label><br /><span name="attr_display_willpower"></span>
|
|
</div>
|
|
<div class="attr-header">
|
|
<label><button type="roll" name="logic" value="@{gm_toggle} &{template:rolls}{{header=^{logic}}}{{base=^{base}}}{{dice=[[(@{logic}+(@{attribute_roll})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Logic Roll" data-i18n="l">L</button></label><br /><span name="attr_display_logic"></span>
|
|
</div>
|
|
<div class="attr-header">
|
|
<label><button type="roll" name="intuition" value="@{gm_toggle} &{template:rolls}{{header=^{intuition}}}{{base=^{base}}}{{dice=[[(@{intuition}+(@{attribute_roll})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Intuition Roll" data-i18n="i">I</button></label><br /><span name="attr_display_intuition"></span>
|
|
</div>
|
|
<div class="attr-header">
|
|
<label><button type="roll" name="charisma" value="@{gm_toggle} &{template:rolls}{{header=^{charisma}}}{{base=^{base}}}{{dice=[[(@{charisma}+(@{attribute_roll})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Charisma Roll" data-i18n="c">C</button></label><br /><span name="attr_display_charisma"></span>
|
|
</div>
|
|
<div class="attr-header">
|
|
<label><button type="roll" name="edge" value="@{gm_toggle} &{template:rolls}{{header=^{edge}}}{{base=^{base}}}{{dice=[[(@{edge}+(?{Attribute|Only Edge,0|None,0|Body,@{body}|Agility,@{agility}|Reaction,@{reaction}|Strength,@{strength}|Willpower,@{willpower}|Logic,@{logic}|Intuition,@{intuition}|Charisma,@{charisma}|Edge,@{edge}})+@{wound_toggle}+@{modifier_toggle})d6>5]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}" title="Edge Roll">E</label><br /><span name="attr_edge"></span>
|
|
</div>
|
|
<div class="attr-header" title="@{essence}"><label data-i18n="ess">Ess</label><br /><span name="attr_essence"></span></div>
|
|
<div class="attr-header magic" title="@{magic}"><label data-i18n="m">M</label><br /><span name="attr_magic"></span></div>
|
|
<div class="attr-header magic" title="@{force}"><label data-i18n="f">F</label><br /><span name="attr_force"></span></div>
|
|
<div class="attr-header resonance" title="@{resonance}"><label data-i18n="r">R</label><br /><span name="attr_resonance"></span></div>
|
|
</div>
|
|
<div class="host attribute">
|
|
<div class="attr-header">
|
|
<label>
|
|
<button type="roll" name="host rating" value="@{gm_toggle} &{template:rolls}{{header=^{matrixsoak}}}{{base=^{hostrating} ♦ ^{hostrating}}}{{dice=[[((@{host_rating}+@{host_rating})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Host Rating Roll" data-i18n="hostrating">Host Rating</button>
|
|
</label><br />
|
|
<span name="attr_host_rating"></span>
|
|
</div>
|
|
<br />
|
|
<div class="attr-header">
|
|
<label>
|
|
<button type="roll" name="attack" value="@{gm_toggle} &{template:rolls}{{header=^{attack}}}{{base=^{attack}}}{{dice=[[(@{attack}+(@{host_rating})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Attack Roll" data-i18n="attack">Attack</button>
|
|
</label><br />
|
|
<span name="attr_attack"></span>
|
|
</div>
|
|
<br />
|
|
<div class="attr-header">
|
|
<label>
|
|
<button type="roll" name="sleaze" value="@{gm_toggle} &{template:rolls}{{header=^{sleaze}}}{{base=^{sleaze} ♦ ^{hostrating}}}{{dice=[[(@{sleaze}+(@{host_rating})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Sleaze Roll" data-i18n="sleaze">Sleaze</button>
|
|
</label><br />
|
|
<span name="attr_sleaze"></span>
|
|
</div>
|
|
<br />
|
|
<div class="attr-header">
|
|
<label>
|
|
<button type="roll" name="data processing" value="@{gm_toggle} &{template:rolls}{{header=^{dataprocessing}}}{{base=^{dataprocessing} ♦ ^{hostrating}}}{{dice=[[(@{data_processing}+(@{host_rating})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Data Processing Roll" data-i18n="dataprocessing">Data Processing</button>
|
|
</label><br />
|
|
<span name="attr_data_processing"></span>
|
|
</div>
|
|
<br />
|
|
<div class="attr-header">
|
|
<label>
|
|
<button type="roll" name="firewall" value="@{gm_toggle} &{template:rolls}{{header=^{firewall}}}{{base=^{firewall} ♦ ^{hostrating}}}{{dice=[[(@{firewall}+(@{host_rating})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Firewall Roll" data-i18n="firewall">Firewall</button>
|
|
</label><br />
|
|
<span name="attr_firewall"></span>
|
|
</div>
|
|
</div>
|
|
<div class="vehicle attribute">
|
|
<div class="attr-header" title="@{handling}"><label data-i18n="hand">Hand</label><br /><span name="attr_handling"></span></div>
|
|
<div class="attr-header" title="@{handling_offroad}"><label data-i18n="handoff">Hand (Off)</label><br /><span name="attr_handling_offroad"></span></div>
|
|
<div class="attr-header" title="@{speed}"><label data-i18n="speed">Speed</label><br /><span name="attr_speed"></span></div>
|
|
<div class="attr-header" title="@{speed_offroad}"><label data-i18n="speedoff">Speed (Off)</label><br /><span name="attr_speed_offroad"></span></div>
|
|
<div class="attr-header" title="@{acceleration}"><label data-i18n="accel">Accel</label><br /><span name="attr_acceleration"></span></div>
|
|
<div class="attr-header" title="@{body}"><label data-i18n="body">Body</label><br /><span name="attr_body"></span></div>
|
|
<div class="attr-header" title="@{pilot}"><label data-i18n="pilot">Pilot</label><br /><span name="attr_pilot"></span></div>
|
|
<div class="attr-header" title="@{sensor}"><label data-i18n="sensor">Sensor</label><br /><span name="attr_sensor"></span></div>
|
|
<div class="attr-header" title="@{seating}"><label data-i18n="seat">Seat</label><br /><span name="attr_seating"></span></div>
|
|
</div>
|
|
<div class="sprite attribute">
|
|
<div class="attr-header">
|
|
<label>
|
|
<button type="roll" name="level" value="@{gm_toggle} &{template:rolls}{{header=^{matrixsoak}}}{{base=^{level} ♦ ^{level}}}{{dice=[[((@{level}+@{level})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Matrix Resistance Roll" data-i18n="levelresonance">Level / Resonance</button>
|
|
</label><br />
|
|
<span name="attr_level"></span>
|
|
</div>
|
|
<br />
|
|
<div class="attr-header">
|
|
<label>
|
|
<button type="roll" name="attack" value="@{gm_toggle} &{template:rolls}{{header=^{attack} ♦ ^{level}}}{{base=Attack}}{{dice=[[((@{attack}+@{level})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Attack Roll" data-i18n="attack">Attack</button>
|
|
</label><br />
|
|
<span name="attr_attack"></span>
|
|
</div>
|
|
<br />
|
|
<div class="attr-header">
|
|
<label>
|
|
<button type="roll" name="sleaze" value="@{gm_toggle} &{template:rolls}{{header=^{sleaze}}}{{base=^{sleaze} ♦ ^{level}}}{{dice=[[((@{sleaze}+@{level})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Sleaze Roll" data-i18n="sleaze">Sleaze</button>
|
|
</label><br /><span name="attr_sleaze"></span>
|
|
</div>
|
|
<br />
|
|
<div class="attr-header">
|
|
<label>
|
|
<button type="roll" name="data processing" value="@{gm_toggle} &{template:rolls}{{header=^{dataprocessing}}}{{base=^{dataprocessing} ♦ ^{level}}}{{dice=[[((@{data_processing}+@{level})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Data Processing Roll" data-i18n="dataprocessing">Data Processing</button>
|
|
</label><br />
|
|
<span name="attr_data_processing"></span>
|
|
</div>
|
|
<br />
|
|
<div class="attr-header">
|
|
<label>
|
|
<button type="roll" name="firewall" value="@{gm_toggle} &{template:rolls}{{header=^{firewall}}}{{base=^{firewall} ♦ ^{level}}}{{dice=[[((@{firewall}+@{level})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Firewall Roll" data-i18n="firewall">Firewall</button>
|
|
</label><br />
|
|
<span name="attr_firewall"></span>
|
|
</div>
|
|
</div>
|
|
<!-- ~~~~~~~~ Initiative ~~~~~~~~ -->
|
|
<div class="grunt">
|
|
<div>
|
|
<label data-i18n="pr">Professional Rating</label><span name="attr_pr"></span>
|
|
</div>
|
|
<div>
|
|
<label>
|
|
<button type="roll" name="initiative" value="@{gm_toggle} &{template:rolls}{{header=^{initiative}}}{{base=^{base}}}{{dice=[[((@{initiative_mod})+@{wound_toggle}+@{modifier_toggle})+(@{initiative_dice})d6cf0 &{tracker}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Initiative Roll" data-i18n="initiative">Initiative</button>
|
|
</label>
|
|
<span name="attr_display_initiative_mod"></span><span> + </span><span name="attr_initiative_dice"></span><span data-i18n="d6">d6</span>
|
|
</div>
|
|
<!-- ~~~~~~~~ Astral Initiative ~~~~~~~~ -->
|
|
<input type="hidden" class="character-type" name="attr_flag_special" />
|
|
<div class="magic">
|
|
<label>
|
|
<button type="roll" name="astral initiative" value="@{gm_toggle} &{template:rolls}{{header=^{astralinitiative}}}{{base=^{base}}}{{dice=[[(@{astral_mod}+@{wound_toggle}+@{modifier_toggle})+(@{astral_dice})d6cf0 &{tracker}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Astral Initiative Roll" data-i18n="astralinitiative">Astral Initiative</button>
|
|
</label>
|
|
<span name="attr_display_astral_mod"></span><span> + </span><span name="attr_astral_dice"></span><span data-i18n="d6">d6</span>
|
|
<br />
|
|
</div>
|
|
</div>
|
|
<!-- ~~~~~~~~ Matrix Initiative ~~~~~~~~ -->
|
|
<div class="host grunt sprite vehicle">
|
|
<label><button type="roll" name="matrix initiative" value="@{gm_toggle} &{template:rolls}{{header=^{matrixinitiative}}}{{base=^{base}}}{{dice=[[((@{matrix_mod})+@{wound_toggle}+@{modifier_toggle})+(@{matrix_dice})d6cf0 &{tracker}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Matrix Initiative Roll" data-i18n="matrixinitiative">Matrix Initiative</button>
|
|
</label>
|
|
<span name="attr_display_matrix_mod"></span><span> + </span><span name="attr_matrix_dice"></span><span data-i18n="d6">d6</span>
|
|
</div>
|
|
<div class="grunt">
|
|
<!-- ~~~~~~~~ Movement ~~~~~~~~ -->
|
|
<div>
|
|
<label data-i18n="movement">Movement</label>
|
|
<span name="attr_walk" title="@{walk}"></span><span> / </span><span name="attr_run" title="@{run}"></span><span> / +</span><span name="attr_movement_mod" title="@{movement_mod}"></span>
|
|
</div>
|
|
<!-- ~~~~~~~~ Condition Monitor ~~~~~~~~ -->
|
|
<div>
|
|
<button type="action" name="act_cond_reset" data-i18n="conditionmonitorps">Condition Monitor (P/S)</button>
|
|
<span name="attr_physical" title="@{physical}"></span><span> / </span><span name="attr_stun" title="@{stun}"></span>
|
|
</div>
|
|
<!-- ~~~~~~~~ Limits ~~~~~~~~ -->
|
|
<div>
|
|
<label data-i18n="limits">Limits</label>
|
|
<span data-i18n="physical" style="margin-right: 1%">Physical </span><span name="attr_physical_limit" title="@{physical_limit}"></span>,
|
|
<span data-i18n="mental" style="margin-right: 1%">Mental </span><span name="attr_mental_limit" title="@{mental_limit}"></span>,
|
|
<span data-i18n="social" style="margin-right: 1%">Social </span><span name="attr_social_limit" title="@{social_limit}"></span>
|
|
</div>
|
|
</div>
|
|
<!-- ~~~~~~~~ Vehicle Display ~~~~~~~~ -->
|
|
<div class="vehicle">
|
|
<div>
|
|
<label data-i18n="dataprocessing">Data Processing</label><span name="attr_data_processing" title="@{data_processing}"></span><br />
|
|
<label data-i18n="firewall">Firewall</label><span name="attr_firewall" title="@{firewall}"></span><br />
|
|
<label data-i18n="devicerating">Device Rating</label><span name="attr_device_rating" title="@{device_rating}"></span><br />
|
|
<button type="action" name="act_cond_reset" data-i18n="conditionmonitorpm">Condition Monitor (P/M)</button>
|
|
<span name="attr_physical" title="@{physical}"></span><span> / </span><span name="attr_matrix" title="@{matrix}"></span>
|
|
</div>
|
|
</div>
|
|
<!-- ~~~~~~~~ Sprite Display ~~~~~~~~ -->
|
|
<div class="sprite">
|
|
<div>
|
|
≈
|
|
<span name="attr_matrix" title="@{matrix}"></span>
|
|
</div>
|
|
</div>
|
|
<!-- ~~~~~~~~ Host Display ~~~~~~~~ -->
|
|
<div class="host">
|
|
<button type="action" name="act_cond_reset" data-i18n="conditionmonitorm">Condition Monitor (M)</button>
|
|
<span name="attr_matrix" title="@{matrix}"></span>
|
|
</div>
|
|
<!-- ~~~~~~~~ Armor ~~~~~~~~ -->
|
|
<div class="grunt vehicle">
|
|
<div>
|
|
<label>
|
|
<button type="roll" name="soak" value="@{gm_toggle} &{template:rolls}{{header=^{soak}}}{{base=^{base}}}{{dice=[[(@{soak}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Soak Roll" data-i18n="armor">
|
|
Armor
|
|
</button>
|
|
</label>
|
|
<button type='roll' name="armor" value="@{gm_toggle} &{template:rolls}{{header=Armor Roll}}{{base=^{base}}}{{dice=[[(@{armor_rating}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Armor Roll">
|
|
<span name="attr_armor_rating"></span>
|
|
</button>
|
|
<div class="armor-buttons">
|
|
<button type="roll" value="@{gm_toggle} &{template:rolls}{{header=Defense}}{{base=^{base}}}{{dice=[[(@{defense}+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Defense Roll"><span class="pictosC">e</span></button>
|
|
<button type="roll" name="acid protection" value="@{gm_toggle} &{template:rolls}{{header=^{acidprotection}}}{{base=^{base}}}{{dice=[[(@{soak}+@{acid_modifier}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Acid Protection"><span class="pictos3" title="@{acid_modifier}">d</span></button>
|
|
<button type="roll" name="cold protection" value="@{gm_toggle} &{template:rolls}{{header=^{coldprotection}}}{{base=^{base}}}{{dice=[[(@{soak}+@{cold_modifier}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Cold Protection"><span title="@{cold_modifier}">b</span></button>
|
|
<button type="roll" name="electrical protection" value="@{gm_toggle} &{template:rolls}{{header=^{electricalprotection}}}{{base=^{base}}}{{dice=[[(@{soak}+@{electrical_modifier}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Electrical Protection"><span title="@{electrical_modifier}">e</span></button>
|
|
<button type="roll" name="fire protection" value="@{gm_toggle} &{template:rolls}{{header=^{fireprotection}}}{{base=^{base}}}{{dice=[[(@{soak}+@{fire_modifier}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Fire Protection"><span class="pictos3" title="@{fire_modifier}">j</span></button>
|
|
<button type="roll" name="radiation protection" value="@{gm_toggle} &{template:rolls}{{header=^{radiationprotection}}}{{base=^{base}}}{{dice=[[(@{soak}+@{radiation_modifier}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Radiation Protection"><span class="pictos3" title="@{radiation_modifier}">l</span></button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<!-- ~~~~~~~~ Skills ~~~~~~~~ -->
|
|
<input type="hidden" class="npc-type" name="attr_sheet_type" value="grunt" />
|
|
<div class="grunt skills">
|
|
<div class="skill-box"><label data-i18n="skills">Skills</label>
|
|
<fieldset class="repeating_active">
|
|
<div class="npc-repeating">
|
|
<input type="checkbox" class="settings-toggle" name="attr_flag" checked="checked" title="Settings toggle" /><span>x</span>
|
|
<button type="roll" name="skill" value="@{gm_toggle} &{template:rolls}{{header=@{skill}}}{{base=@{display_attribute}}}{{dice=[[((@{dicepool}+@{attribute})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Skill Roll"><span name="attr_display"></span></button>
|
|
<button class="spec-button" name="specialization" type="roll" value="@{gm_toggle} &{template:rolls}{{header=@{skill}}}{{base=@{display_attribute}}}{{dice=[[((@{dicepool}+@{attribute}+2)+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=Spec: @{specialization}}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Specialization Roll"><span name="attr_display_specialization"></span></button>
|
|
<span name="attr_display_rating"></span><span>,</span>
|
|
<div class="settings repeat-section">
|
|
<div class="skills-row">
|
|
<input type="hidden" name="attr_dicepool" />
|
|
<div class="settings-row">
|
|
<label data-i18n="skill">Skill</label>
|
|
<select class="skill-select" name="attr_skill" title="Active skill">
|
|
<option class="option-headers" disabled="true" data-i18n="combatskills">Combat Skills</option>
|
|
<option class="option-groups" value="Close Combat Group" data-i18n="closecombat">Close Combat Group</option>
|
|
<option class="option-groups" value="Firearms Group" data-i18n="firearms">Firearms Group</option>
|
|
<option value="Archery" data-i18n="archery">Archery</option>
|
|
<option value="Automatics" data-i18n="automatics">Automatics</option>
|
|
<option value="Blades" data-i18n="blades">Blades</option>
|
|
<option value="Clubs" data-i18n="clubs">Clubs</option>
|
|
<option value="Exotic Melee" data-i18n="exoticmelee">Exotic Melee</option>
|
|
<option value="Exotic Range" data-i18n="exoticrange">Exotic Range</option>
|
|
<option value="Heavy Weapons" data-i18n="heavyweapons">Heavy Weapons</option>
|
|
<option value="Longarms" data-i18n="longarms">Longarms</option>
|
|
<option value="Pistols" data-i18n="pistols">Pistols</option>
|
|
<option value="Throwing Weapons" data-i18n="throwingweapons">Throwing Weapons</option>
|
|
<option value="Unarmed Combat" data-i18n="unarmedcombat">Unarmed Combat</option>
|
|
<option class="option-headers" disabled="true" data-i18n="physicalskills">Physical Skills</option>
|
|
<option class="option-groups" value="Athletics Group" data-i18n="athleticsgroup">Athletics Group</option>
|
|
<option class="option-groups" value="Outdoors Group" data-i18n="outdoorsgroup">Outdoors Group</option>
|
|
<option class="option-groups" value="Stealth Group" data-i18n="stealthgroup">Stealth Group</option>
|
|
<option value="Disguise" data-i18n="disguise">Disguise</option>
|
|
<option value="Diving" data-i18n="diving">Diving</option>
|
|
<option value="Escape Artist" data-i18n="escapeartist">Escape Artist</option>
|
|
<option value="Flight" data-i18n="flight">Flight</option>
|
|
<option value="Free Fall" data-i18n="freefall">Free Fall</option>
|
|
<option value="Gymnastics" data-i18n="gymnastics">Gymnastics</option>
|
|
<option value="Palming" data-i18n="palming">Palming</option>
|
|
<option value="Perception" data-i18n="perception">Perception</option>
|
|
<option value="Running" data-i18n="running">Running</option>
|
|
<option value="Sneaking" data-i18n="sneaking">Sneaking</option>
|
|
<option value="Survival" data-i18n="survival">Survival</option>
|
|
<option value="Swimming" data-i18n="swimming">Swimming</option>
|
|
<option value="Tracking" data-i18n="tracking">Tracking</option>
|
|
<option class="option-headers" disabled="true" data-i18n="socialskills">Social Skills</option>
|
|
<option class="option-groups" value="Acting Group" data-i18n="actinggroup">Acting Group</option>
|
|
<option class="option-groups" value="Influence Group" data-i18n="influencegroup">Influence Group</option>
|
|
<option value="Con" data-i18n="con">Con</option>
|
|
<option value="Etiquette" data-i18n="etiquette">Etiquette</option>
|
|
<option value="Impersonation" data-i18n="impersonation">Impersonation</option>
|
|
<option value="Instruction" data-i18n="instruction">Instruction</option>
|
|
<option value="Intimidation" data-i18n="intimidation">Intimidation</option>
|
|
<option value="Leadership" data-i18n="leadership">Leadership</option>
|
|
<option value="Negotiation" data-i18n="negotiation">Negotiation</option>
|
|
<option value="Performance" data-i18n="performance">Performance</option>
|
|
<option class="option-headers" disabled="true" data-i18n="magicalskills">Magical Skills</option>
|
|
<option class="option-groups" value="Conjuring Group" data-i18n="conjuringgroup">Conjuring Group</option>
|
|
<option class="option-groups" value="Enchanting Group" data-i18n="enchantinggroup">Enchanting Group</option>
|
|
<option class="option-groups" value="Sorcery Group" data-i18n="sorcerygroup">Sorcery Group</option>
|
|
<option value="Alchemy" data-i18n="alchemy">Alchemy</option>
|
|
<option value="Arcana" data-i18n="arcana">Arcana</option>
|
|
<option value="Assensing" data-i18n="assensing">Assensing</option>
|
|
<option value="Astral Combat" data-i18n="astralcombat">Astral Combat</option>
|
|
<option value="Banishing" data-i18n="banishing">Banishing</option>
|
|
<option value="Binding" data-i18n="binding">Binding</option>
|
|
<option value="Counterspelling" data-i18n="counterspelling">Counterspelling</option>
|
|
<option value="Disenchanting" data-i18n="disenchanting">Disenchanting</option>
|
|
<option value="Ritual Spellcasting" data-i18n="ritualspellcasting">Ritual Spellcasting</option>
|
|
<option value="Spellcasting" data-i18n="spellcasting">Spellcasting</option>
|
|
<option value="Summoning" data-i18n="summoning">Summoning</option>
|
|
<option class="option-headers" disabled="true" data-i18n="resonanceskills">Resonance Skills</option>
|
|
<option class="option-groups" value="Tasking Group" data-i18n="taskinggroup">Tasking Group</option>
|
|
<option value="Compiling" data-i18n="compiling">Compiling</option>
|
|
<option value="Decompiling" data-i18n="decompiling">Decompiling</option>
|
|
<option value="Registering" data-i18n="registering">Registering</option>
|
|
<option class="option-headers" disabled="true" data-i18n="technicalskills">Technical Skills</option>
|
|
<option class="option-groups" value="Biotech Group" data-i18n="biotechgroup">Biotech Group</option>
|
|
<option class="option-groups" value="Cracking Group" data-i18n="crackinggroup">Cracking Group</option>
|
|
<option class="option-groups" value="Electronics Group" data-i18n="electronicsgroup">Electronics Group</option>
|
|
<option class="option-groups" value="Engineering Group" data-i18n="engineeringgroup">Engineering Group</option>
|
|
<option value="Aeronautics Mechanic" data-i18n="aeronauticsmechanic">Aeronautics Mechanic</option>
|
|
<option value="Animal Handling" data-i18n="animalhandling">Animal Handling</option>
|
|
<option value="Armorer" data-i18n="armorer">Armorer</option>
|
|
<option value="Artisan" data-i18n="artisan">Artisan</option>
|
|
<option value="Automotive Mechanic" data-i18n="automotivemechanic">Automotive Mechanic</option>
|
|
<option value="Biotechnology" data-i18n="biotechnology">Biotechnology</option>
|
|
<option value="Chemistry" data-i18n="chemistry">Chemistry</option>
|
|
<option value="Computer" data-i18n="computer">Computer</option>
|
|
<option value="Cybercombat" data-i18n="cybercombat">Cybercombat</option>
|
|
<option value="Cybertechnology" data-i18n="cybertechnology">Cybertechnology</option>
|
|
<option value="Demolitions" data-i18n="demolitions">Demolitions</option>
|
|
<option value="Electronic Warfare" data-i18n="eletronicwarfare">Electronic Warfare</option>
|
|
<option value="First Aid" data-i18n="firstaid">First Aid</option>
|
|
<option value="Forgery" data-i18n="forgery">Forgery</option>
|
|
<option value="Hacking" data-i18n="hacking">Hacking</option>
|
|
<option value="Hardware" data-i18n="hardware">Hardware</option>
|
|
<option value="Industrial Mechanic" data-i18n="industrialmechanic">Industrial Mechanic</option>
|
|
<option value="Locksmith" data-i18n="locksmith">Locksmith</option>
|
|
<option value="Medicine" data-i18n="medicine">Medicine</option>
|
|
<option value="Nautical Mechanic" data-i18n="nauticalmechanic">Nautical Mechanic</option>
|
|
<option value="Navigation" data-i18n="navigation">Navigation</option>
|
|
<option value="Gunnery" data-i18n="gunnery">Gunnery</option>
|
|
<option value="Pilot Aerospace" data-i18n="pilotaerospace">Pilot Aerospace</option>
|
|
<option value="Pilot Aircraft" data-i18n="pilotaircraft">Pilot Aircraft</option>
|
|
<option value="Pilot Exotic Vehicle" data-i18n="pilotexoticvehicle">Pilot Exotic Vehicle</option>
|
|
<option value="Pilot Ground Craft" data-i18n="pilotgroundcraft">Pilot Ground Craft</option>
|
|
<option value="Pilot Walker" data-i18n="pilotwalker">Pilot Walker</option>
|
|
<option value="Pilot Watercraft" data-i18n="pilotwatercraft">Pilot Watercraft</option>
|
|
<option value="Software" data-i18n="software">Software</option>
|
|
</select>
|
|
<label data-i18n="rating">Rating</label><input type="number" name="attr_rating" min="0" placeholder="0" />
|
|
<input type="hidden" name="attr_display_attribute" />
|
|
<select name="attr_attribute" title="Skill attribute">
|
|
<option value="@{body}" data-i18n="body">Body</option>
|
|
<option value="@{agility}" selected="selected" data-i18n="agility">agility</option>
|
|
<option value="@{reaction}" data-i18n="reaction">Reaction</option>
|
|
<option value="@{strength}" data-i18n="strength">Strength</option>
|
|
<option value="@{willpower}" data-i18n="willpower">Willpower</option>
|
|
<option value="@{logic}" data-i18n="logic">Logic</option>
|
|
<option value="@{intuition}" data-i18n="intuition">Intuition</option>
|
|
<option value="@{charisma}" data-i18n="charisma">Charisma</option>
|
|
<option value="@{magic}" data-i18n="magic">Magic</option>
|
|
<option value="@{resonance}" data-i18n="resonance">Resonance</option>
|
|
</select>
|
|
</div>
|
|
<div class="settings-row">
|
|
<label data-i18n="specializations">Specializations</label><input type="text" name="attr_specialization" placeholder="Specalizations" title="Active skill specialization" />
|
|
<label data-i18n="ratingmodifier">Rating Modifier</label><input type="number" name="attr_rating_modifier" min="0" placeholder="0" title="Skill rating modifier" />
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
<div class="skill-box"><label data-i18n="knowledgeskills">Knowledge Skills</label>
|
|
<fieldset class="repeating_knowledge">
|
|
<div class="npc-repeating">
|
|
<input type="checkbox" class="settings-toggle" name="attr_flag" checked="checked" title="Settings toggle" /><span>x</span>
|
|
<button type="roll" name="knowledge" value="@{gm_toggle} &{template:rolls}{{header=@{skill}}}{{base=@{display_attribute}}}{{dice=[[((@{dicepool}+@{attribute})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Knowledge Roll"><span name="attr_display"></span></button>
|
|
<button class="spec-button" type="roll" name="knowledge specialization" value="@{gm_toggle} &{template:rolls}{{header=@{skill}}}{{base=@{display_attribute}}}{{dice=[[((@{dicepool}+@{attribute}+2)+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=Spec: @{specialization}}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Specialization Roll"><span name="attr_display_specialization"></span></button>
|
|
<span name="attr_display_rating"></span><span>,</span>
|
|
<div class="settings repeat-section">
|
|
<div class="skills-row">
|
|
<input type="hidden" name="attr_dicepool" />
|
|
<div class="settings-row">
|
|
<label data-i18n="skill">Skill</label><input type="text" name="attr_skill" placeholder="Knowledge skill name" style="width: 61%;" title="Knowledge skill" />
|
|
<label data-i18n="rating">Rating</label><input type="number" name="attr_rating" min="0" placeholder="0" title="Skill rating"/>
|
|
<input type="hidden" name="attr_display_attribute" />
|
|
<select name="attr_attribute" title="Skill attribute">
|
|
<option value="@{body}" data-i18n="body">Body</option>
|
|
<option value="@{agility}" data-i18n="agility">agility</option>
|
|
<option value="@{reaction}" data-i18n="reaction">Reaction</option>
|
|
<option value="@{strength}" data-i18n="strength">Strength</option>
|
|
<option value="@{willpower}" data-i18n="willpower">Willpower</option>
|
|
<option value="@{logic}" selected="selected" data-i18n="logic">Logic</option>
|
|
<option value="@{intuition}" data-i18n="intuition">Intuition</option>
|
|
<option value="@{charisma}" data-i18n="charisma">Charisma</option>
|
|
<option value="@{magic}" data-i18n="magic">Magic</option>
|
|
<option value="@{resonance}" data-i18n="resonance">Resonance</option>
|
|
</select>
|
|
</div>
|
|
<div class="settings-row">
|
|
<label data-i18n="specializations">Specializations</label><input type="text" name="attr_specialization" placeholder="Specalizations" title="Specializations" />
|
|
<label data-i18n="ratingmodifier">Rating Modifier</label><input type="number" name="attr_rating_modifier" min="0" placeholder="0" title="Rating modifier" />
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
<div class="skill-box"><label data-i18n="languageskills">Language Skills</label>
|
|
<fieldset class="repeating_language">
|
|
<div class="npc-repeating">
|
|
<input type="checkbox" class="settings-toggle" name="attr_flag" checked="checked" title="Settings toggle" /><span>x</span>
|
|
<button type="roll" name="language" value="@{gm_toggle} &{template:rolls}{{header=@{skill}}}{{base=@{display_attribute}}}{{dice=[[((@{dicepool}+@{attribute})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Language Roll"><span name="attr_display"></span></button>
|
|
<button class="spec-button" type="roll" name="language specialization" value="@{gm_toggle} &{template:rolls}{{header=@{skill}}}{{base=@{display_attribute}}}{{dice=[[((@{dicepool}+@{attribute}+2)+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=Spec: @{specialization}}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Specialization Roll"><span name="attr_display_specialization"></span></button>
|
|
<span name="attr_display_rating"></span><span>,</span>
|
|
<div class="settings repeat-section">
|
|
<div class="skills-row">
|
|
<input type="hidden" name="attr_dicepool" />
|
|
<div class="settings-row">
|
|
<label data-i18n="skill">Skill</label><input type="text" name="attr_skill" placeholder="Language" style="width: 61%;" title="Language skill" />
|
|
<label data-i18n="rating">Rating</label><input type="number" name="attr_rating" min="0" placeholder="0" title="Rating" />
|
|
<input type="hidden" name="attr_display_attribute" />
|
|
<select name="attr_attribute" title="Skill attribute">
|
|
<option value="@{body}" data-i18n="body">Body</option>
|
|
<option value="@{agility}" data-i18n="agility">agility</option>
|
|
<option value="@{reaction}" data-i18n="reaction">Reaction</option>
|
|
<option value="@{strength}" data-i18n="strength">Strength</option>
|
|
<option value="@{willpower}" data-i18n="willpower">Willpower</option>
|
|
<option value="@{logic}" data-i18n="logic">Logic</option>
|
|
<option value="@{intuition}" selected="selected" data-i18n="intuition">Intuition</option>
|
|
<option value="@{charisma}" data-i18n="charisma">Charisma</option>
|
|
<option value="@{magic}" data-i18n="magic">Magic</option>
|
|
<option value="@{resonance}" data-i18n="resonance">Resonance</option>
|
|
</select>
|
|
</div>
|
|
<div class="settings-row">
|
|
<label data-i18n="specializations">Specializations</label><input type="text" name="attr_specialization" placeholder="Specalizations" title="Specalizations" />
|
|
<label data-i18n="ratingmodifier">Rating Modifier</label><input type="number" name="attr_rating_modifier" min="0" placeholder="0" title="Rating modifier" />
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
</div><!-- ~~~~~~~~ End of Skills ~~~~~~~~ -->
|
|
<div class="sprite skills">
|
|
<div class="skill-box"><label data-i18n="skills">Skills</label>
|
|
<fieldset class="repeating_active">
|
|
<div class="npc-repeating repeat-section">
|
|
<input type="checkbox" class="settings-toggle" name="attr_flag" checked="checked" title="Settings toggle" /><span>x</span>
|
|
<button type="roll" name="skill" value="@{gm_toggle} &{template:rolls}{{header=@{skill}}}{{base=Level}}{{dice=[[((@{level}+@{level})+@{modifier_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Level Roll"><span name="attr_display"></span></button><span>,</span>
|
|
<div class="settings">
|
|
<div class="skills-row">
|
|
<div class="settings-row">
|
|
<label data-i18n="skill">Skill</label>
|
|
<select class="skill-select" name="attr_skill" title="Skill">
|
|
<option value="Computer" data-i18n="computer">Computer</option>
|
|
<option value="Cybercombat" data-i18n="cybercombat">Cybercombat</option>
|
|
<option value="Electronic Warfare" data-i18n="eletronicwarfare">Electronic Warfare</option>
|
|
<option value="Hacking" data-i18n="hacking">Hacking</option>
|
|
<option value="Hardware" data-i18n="hardware">Hardware</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
<div class="skill-box"><label data-i18n="powers">Powers</label>
|
|
<fieldset class="repeating_powers">
|
|
<div class="npc-repeating repeat-section">
|
|
<input type="checkbox" class="settings-toggle" name="attr_flag" checked="checked" title="Settings toggle" /><span>x</span>
|
|
<button type="roll" name="powers" value="@{gm_toggle} &{template:rolls}{{header=@{power}}}{{base=Level}}{{dice=[[((@{level}+@{level})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Power Roll"><span name="attr_power"></span></button><span>,</span>
|
|
<div class="settings">
|
|
<div class="skills-row">
|
|
<div class="settings-row">
|
|
<label data-i18n="power">Power</label><input type="text" name="attr_power" style="width: 92%" title="Power" />
|
|
</div>
|
|
<label data-i18n="notes">Notes</label>
|
|
<textarea name="attr_notes" value="" placeholder="Powers notes"></textarea>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
</div>
|
|
<!-- ~~~~~~~~ Qualities/Augs/Init/Gear/Weakness & Other STUFF ~~~~~~~~ -->
|
|
<div class="grunt textrow">
|
|
<input type="hidden" class="optional-flag" name="attr_quality" value="0" />
|
|
<div class="textboxes">
|
|
<label data-i18n="qualities">Qualities</label>
|
|
<span name="attr_quality" title="@{quality}"></span>
|
|
</div>
|
|
<input type="hidden" class="optional-flag" name="attr_augmentations" value="0" />
|
|
<div class="textboxes">
|
|
<label data-i18n="augmentations">Augmentations</label>
|
|
<span name="attr_augmentations" title="@{augmentations}"></span>
|
|
</div>
|
|
<input type="hidden" class="optional-flag" name="attr_gear" value="0" />
|
|
<div class="textboxes">
|
|
<label data-i18n="gear">Gear</label>
|
|
<span name="attr_gear" title="@{gear}"></span>
|
|
</div>
|
|
<input type="hidden" class="optional-flag" name="attr_initiate" value="0" />
|
|
<div class="textboxes">
|
|
<label data-i18n="initiate">Initiate</label><span name="attr_initiate" title="@{initiate}"></span><br />
|
|
<label data-i18n="metamagic">Metamagics</label><span name="attr_metamagic" title="@{metamagic}"></span>
|
|
</div>
|
|
<input type="hidden" class="optional-flag" name="attr_submersion" value="0" />
|
|
<div class="textboxes">
|
|
<label data-i18n="submersion">Submersion</label><span name="attr_submersion" title="@{submersion}"></span><br />
|
|
<label data-i18n="echos">Echos</label><span name="attr_echos" title="@{echos}"></span>
|
|
</div>
|
|
<input type="hidden" class="optional-flag" name="attr_powers" value="0" />
|
|
<div class="textboxes">
|
|
<label data-i18n="powers">Powers</label>
|
|
<span name="attr_powers" title="@{powers}"></span>
|
|
</div>
|
|
</div>
|
|
<div class="grunt vehicle textrow">
|
|
<input type="hidden" class="b" name="attr_gear" value="0" />
|
|
<div class="textboxes">
|
|
<label data-i18n="gear">Gear</label>
|
|
<span name="attr_gear" title="@{gear}"></span>
|
|
</div>
|
|
<input type="hidden" class="optional-flag" name="attr_programs" value="0" />
|
|
<div class="textboxes">
|
|
<label data-i18n="programs">Programs</label>
|
|
<span name="attr_programs" title="@{programs}"></span>
|
|
</div>
|
|
<input type="hidden" class="optional-flag" name="attr_modifications" value="0" />
|
|
<div class="textboxes">
|
|
<label data-i18n="modifications">Modifications</label>
|
|
<span name="attr_modifications" title="@{modifications}"></span>
|
|
</div>
|
|
</div>
|
|
<div class="grunt">
|
|
<input type="hidden" class="optional-flag" name="attr_weakness" value="0" />
|
|
<div class="textboxes">
|
|
<label data-i18n="weakness">Weakness</label>
|
|
<span name="attr_weakness" title="@{weakness}"></span>
|
|
</div>
|
|
</div><!-- ~~~~ End of Display Qualities/Augs/Init/Gear/Weakness ~~~~~ -->
|
|
</div><!-- ~~~~~~~~ End of Display ~~~~~~~~ -->
|
|
</div><!-- ~~~~~~~~ End of Stats area ~~~~~~~~ -->
|
|
<!-- ~~~~~~~~ Weapons ~~~~~~~~ -->
|
|
<input type="hidden" class="npc-type" name="attr_sheet_type" value="grunt" />
|
|
<div class="grunt vehicle">
|
|
<h2 data-i18n="weapons">Weapons</h2>
|
|
<fieldset class="repeating_weapon">
|
|
<div class="repeating toggle">
|
|
<input type="checkbox" class="settings-toggle" name="attr_weapon_toggle" checked="checked" title="Settings toggle" /><span>x</span>
|
|
<div class="settings">
|
|
<div class="repeat-section npc-weapons">
|
|
<input type="radio" class="range-toggle" name="attr_weapon_range" checked="checked" title="Range weapon" value="0" /><span data-i18n="range">Range</span>
|
|
<input type="radio" class="melee-toggle" name="attr_weapon_range" title="Melee weapon" value="1" /><span data-i18n="melee">Melee</span>
|
|
<div class="repeat-row"><label data-i18n="dice">Dice</label><br/><input type="number" name="attr_weapon_dice" placeholder="18" title="Weapon dice" value="" /></div>
|
|
<div class="repeat-row repeat-row-20"><label data-i18n="name">Name</label><br/><input type="text" name="attr_weapon_name" placeholder="Ares Predator" title="Name" value="" /></div>
|
|
<div class="repeat-row repeat-row-20"><label data-i18n="type">Type</label><br/><input type="text" name="attr_weapon_type" placeholder="Heavy Pistol" title="Type" value="" /></div>
|
|
<div class="repeat-row weapon-melee repeat-row-8"><label data-i18n="reach">Reach</label><br/><input type="number" name="attr_weapon_reach" min="0" placeholder="Reach" title="Reach" value="0"/></div>
|
|
<div class="repeat-row"><label data-i18n="acc">Acc</label><br/><input type="text" name="attr_weapon_acc" placeholder="ACC" title="Accuracy" value="" /></div>
|
|
<div class="repeat-row"><label data-i18n="dam">Dam</label><br/><input type="text" class="wea-dv" name="attr_weapon_dv" placeholder="9P" title="Damage Value" value="" /></div>
|
|
<div class="repeat-row"><label data-i18n="ap">AP</label><br/><input type="number" name="attr_weapon_ap" placeholder="AP" title="Armor Penetration" value="" /></div>
|
|
<div class="repeat-row weapon-range repeat-row-8"><label data-i18n="modes">Modes</label><br/><input type="text" name="attr_weapon_mode" placeholder="SA/BF/FA" title="Modes" value="" /></div>
|
|
<div class="repeat-row weapon-range repeat-row-8"><label data-i18n="recoil">Recoil</label><br/><input type="text" name="attr_weapon_rc" placeholder="Recoil" title="Recoil Compensation" value="" /></div>
|
|
<div class="repeat-row weapon-range"><label data-i18n="ammo">Ammo</label><br/><input type="number" name="attr_weapon_ammo" placeholder="15" title="Ammo" value="" /></div>
|
|
<div class="repeat-row weapon-range" style="width: 2%;"><span>(c)</span></div>
|
|
<br />
|
|
<div class="weapon-note">
|
|
<input type="text" name="attr_weapon_note" value="" placeholder="w/ 3 clips of explosive rounds"/>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="display">
|
|
<input type="hidden" name="attr_weapon" value="" />
|
|
<div class="repeat-indent">
|
|
<span class="repeat-dice">(<span name="attr_weapon_dice" title="Weapon dicepool"></span>)</span>
|
|
<button type="roll" name="weapon" value="@{gm_toggle} &{template:rolls}{{header=@{weapon_type}}}{{base=^{base}}}{{dice=[[((@{weapon_dice})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=ACC @{weapon_acc}, DV @{weapon_dv}, AP @{weapon_ap}}}{{rea=[[@{weapon_reach}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Weapon Roll">
|
|
<span name="attr_weapon_name" title="Weapon name"></span>
|
|
</button>
|
|
<span name="attr_weapon"></span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div><!-- ~~~~~~~~ End Weapons ~~~~~~~~ -->
|
|
<!-- ~~~~~~~~ Spells ~~~~~~~~ -->
|
|
<input type="hidden" class="character-type" name="attr_flag_special" />
|
|
<div class="magic"><h2 data-i18n="spells">Spells</h2>
|
|
<fieldset class="repeating_NPCspell">
|
|
<div class="repeating toggle">
|
|
<input type="checkbox" class="settings-toggle" name="attr_toggle" checked="checked" title="Settings toggle" /><span>x</span>
|
|
<div class="settings">
|
|
<div class="repeat-section">
|
|
<div class="repeat-row repeat-row-15"><label data-i18n="spellcategory">Category</label><br/>
|
|
<select class="category" name="attr_category" title="Category">
|
|
<option class="option" value="Combat" selected="selected" data-i18n="combat">Combat</option>
|
|
<option class="option" value="Detection" data-i18n="detection">Detection</option>
|
|
<option class="option" value="Health" data-i18n="health">Health</option>
|
|
<option class="option" value="Illusion" data-i18n="illusion">Illusion</option>
|
|
<option class="option" value="Manipulation" data-i18n="manipulation">Manipulation</option>
|
|
</select>
|
|
</div>
|
|
<div class="repeat-row"><label data-i18n="dice">Dice</label><br/><input type="number" name="attr_dice" value="" placeholder="18" title="Spell dicepool" /></div>
|
|
<div class="repeat-row repeat-row-20"><label data-i18n="name">Name</label><br/><input type="text" name="attr_name" value="" placeholder="Fireball" title="Name" /></div>
|
|
<div class="repeat-row repeat-row-11"><label data-i18n="type">Type</label><br/>
|
|
<select name="attr_type" title="Type">
|
|
<option class="option" value="M" selected="selected" data-i18n="mana">Mana</option>
|
|
<option class="option" value="P" data-i18n="physical">Physical</option>
|
|
</select>
|
|
</div>
|
|
<div class="repeat-row repeat-row-11"><label data-i18n="range">Range</label><br/>
|
|
<select name="attr_range" title="Range">
|
|
<option value="LOS" selected="selected" data-i18n="los">LOS</option>
|
|
<option value="LOS (A)" data-i18n="losa">LOS (A)</option>
|
|
<option value="Special" data-i18n="special">Special</option>
|
|
<option value="T" data-i18n="t">T</option>
|
|
<option value="T (A)" data-i18n="ta">T (A)</option>
|
|
</select>
|
|
</div>
|
|
<div class="repeat-row repeat-row-12"><label data-i18n="duration">Duration</label><br/>
|
|
<select name="attr_duration" title="Duration">
|
|
<option value="Instant" selected="selected" data-i18n="instant">Instant</option>
|
|
<option value="Permanent" data-i18n="permanent">Permanent</option>
|
|
<option value="Special" data-i18n="special">Special</option>
|
|
<option value="Sustained" data-i18n="sustained">Sustained</option>
|
|
</select>
|
|
</div>
|
|
<div class="repeat-row"><label data-i18n="drain">Drain</label><br/><input type="number" name="attr_drain" value="" placeholder="-1" title="Drain code" /></div>
|
|
<input class="category" name="attr_category" type="hidden" value="Combat">
|
|
<div class="repeat-row repeat-row-11"><label data-i18n="combat">Combat</label><br/>
|
|
<select class="combat-type" name="attr_combat_type" title="Combat type">
|
|
<option class="option" value="Force " selected="selected"></option>
|
|
<option class="option" value="Direct, Force " data-i18n="direct">Direct</option>
|
|
<option class="option" value="Indirect, Force ?{Force|}, AP -" data-i18n="indirect">Indirect</option>
|
|
</select>
|
|
</div>
|
|
<div class="repeat-row"><label>Dam</label><br/>
|
|
<input class="spell-input" type="text" name="attr_damage" value="" placeholder="P" title="Damage type" />
|
|
</div>
|
|
<div class="weapon-note">
|
|
<input type="text" name="attr_note" value="" placeholder="Spell notes"/>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="display">
|
|
<input type="hidden" name="attr_spell" value="" />
|
|
<div class="repeat-indent">
|
|
<span class="repeat-dice">(<span name="attr_dice"></span>)</span> <button type="roll" name="spell" value="@{gm_toggle} &{template:rolls}{{header=@{name}}}{{base=^{base}}}{{dice=[[((@{dice})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=@{combat_type}?{Force|}, Drain [[?{Force|}+(@{drain})]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}">
|
|
<span name="attr_name"></span>
|
|
</button>
|
|
<span name="attr_spell"></span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div><!-- ~~~~~~~~ End of Spells ~~~~~~~~ -->
|
|
<!-- ~~~~~~~~ Complex Forms ~~~~~~~~ -->
|
|
<input type="hidden" class="character-type" name="attr_flag_special" />
|
|
<div class="resonance"><h2 data-i18n="complexform">Complex Forms</h2>
|
|
<fieldset class="repeating_form">
|
|
<div class="repeating spell toggle">
|
|
<input type="checkbox" class="settings-toggle" name="attr_form_toggle" checked="checked" title="Settings toggle" /><span>x</span>
|
|
<div class="settings">
|
|
<div class="repeat-section">
|
|
<div class="repeat-row"><label data-i18n="dice">Dice</label><input type="number" name="attr_software_dice" value="" placeholder="18" title="Software dicepool" /></div>
|
|
<div class="repeat-row repeat-row-20"><label data-i18n="name">Name</label><input type="text" name="attr_form_name" value="" placeholder="Editor" title="Complex form name" /></div>
|
|
<div class="repeat-row repeat-row-15"><label data-i18n="target">Target</label>
|
|
<select name="attr_form_target" title="Target">
|
|
<option class="option" value="Device" selected="selected" data-i18n="device">Device</option>
|
|
<option class="option" value="File" data-i18n="file">File</option>
|
|
<option class="option" value="Host" data-i18n="host">Host</option>
|
|
<option class="option" value="IC" data-i18n="ic">IC</option>
|
|
<option class="option" value="Persona" data-i18n="persona">Persona</option>
|
|
<option class="option" value="Self" data-i18n="self">Self</option>
|
|
<option class="option" value="Sprite" data-i18n="sprite">Sprite</option>
|
|
</select>
|
|
</div>
|
|
<div class="repeat-row repeat-row-11"><label data-i18n="duration">Duration</label><input class="spell-input" type="text" name="attr_form_duration" value="" placeholder="P" title="Duration" /></div>
|
|
<div class="repeat-row repeat-row-11"><label data-i18n="fadevalue">Fade Value</label><input type="number" name="attr_form_fade" value="" placeholder="+2" title="Fade code" /></div>
|
|
<div class="weapon-note">
|
|
<input type="text" name="attr_form_note" value="" placeholder="Form notes"/>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="display">
|
|
<input type="hidden" name="attr_form" value="" />
|
|
<div class="repeat-indent">
|
|
<span class="repeat-dice">(<span name="attr_software_dice"></span>)</span> <button type="roll" name="complex form" value="@{gm_toggle} &{template:rolls}{{header=@{form}}}{{base=^{base}}}{{dice=[[((@{form_dice})+@{wound_toggle}+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=?{Level|}, Fade [[?{Level|}+(@{form_fade})]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Complex form name">
|
|
<span name="attr_form_name"></span>
|
|
</button>
|
|
<span name="attr_form"></span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div><!-- ~~~~~~~~ End of Complex Forms ~~~~~~~~ -->
|
|
<!-- ~~~~~~~~ IC! ~~~~~~~~ -->
|
|
<input type="hidden" class="npc-type" name="attr_sheet_type" value="grunt" />
|
|
<div class="host"><h2 data-i18n="intrusioncountermeasures">Intrusion Countermeasures</h2>
|
|
<fieldset class="repeating_IC">
|
|
<div class="repeating toggle">
|
|
<input type="checkbox" class="settings-toggle" name="attr_weapon_toggle" checked="checked" title="Settings toggle" /><span>x</span>
|
|
<div class="settings">
|
|
<div class="repeat-section">
|
|
<div class="repeat-row" style="width: 33%;"><label data-i18n="name">Name</label><input type="text" name="attr_IC_name" value="" placeholder="IC Name" /></div>
|
|
<span>[</span>
|
|
<div class="repeat-row repeat-row-20"><label data-i18n="iclimit">IC Limit</label><br/>
|
|
<select name="attr_IC_limit" title="Limit">
|
|
<option class="option" value="@{attack}" selected="selected" data-i18n="attack">Attack</option>
|
|
<option class="option" value="@{data_processing}" data-i18n="dataprocessing">Data Processing</option>
|
|
</select>
|
|
</div>
|
|
<span>]</span>
|
|
<div class="repeat-row repeat-row-20"><label data-i18n="defenseattribute">Defense Attribute</label><br/>
|
|
<select name="attr_IC_attribute" title="Mental attribute resistance">
|
|
<option class="option" value="Willpower" selected="selected" data-i18n="willpower">Willpower</option>
|
|
<option class="option" value="Intuition" data-i18n="intuition">Intuition</option>
|
|
<option class="option" value="Logic" data-i18n="logic">Logic</option>
|
|
</select>
|
|
</div>
|
|
<span> vs. </span>
|
|
<div class="repeat-row repeat-row-20"><label data-i18n="defensematrixattr">Defense Matrix Attr.</label><br/>
|
|
<select name="attr_IC_matrix" title="Matrix attribute resistance">
|
|
<option class="option" value="Attack" data-i18n="attack">Attack</option>
|
|
<option class="option" value="Sleaze" data-i18n="sleaze">Sleaze</option>
|
|
<option class="option" value="Data Processing" selected="selected" data-i18n="dataprocessing">Data Processing</option>
|
|
<option class="option" value="Firewall" data-i18n="firewall">Firewall</option>
|
|
</select>
|
|
</div>
|
|
<div class="weapon-note">
|
|
<input type="text" name="attr_IC_note" value="" placeholder="IC notes"/>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="display">
|
|
<input type="hidden" name="attr_IC" value="" />
|
|
<input type="hidden" class="program-toggle" name="attr_program_toggle" value="" />
|
|
<div class="repeat-indent">
|
|
<input type="checkbox" class="program-toggle" name="attr_program_toggle" checked="checked" /><span class="program-toggle">Q</span>
|
|
<button type="roll" name="IC" value="@{gm_toggle} &{template:rolls}{{header=Intrusion Countermeasures}}{{base=^{base}}}{{dice=[[((@{IC_attack})+@{modifier_toggle})d6>5@{explode_toggle}]]}}{{desc=Defense: @{IC_attribute} + @{IC_matrix}}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Intrusion Countermeasures Roll">
|
|
<span name="attr_IC_name"></span>
|
|
</button>
|
|
<span name="attr_IC"></span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div><!-- ~~~~~~~~ End of IC! ~~~~~~~~ -->
|
|
<!-- ~~~~~~~~ Start of Matrix Area ~~~~~~~~ -->
|
|
<input type="hidden" class="character-type" name="attr_flag_matrix" />
|
|
<div class="matrix">
|
|
<div class="2col">
|
|
<h1 data-i18n="matrixdevice">Matrix Device</h1><input type="text" name="attr_device_name" placeholder="Sony CIY-720" />
|
|
</div>
|
|
<div class="2col">
|
|
<label>
|
|
<button type="roll" name="device rating" value="&{template:rolls}{{header=Matrix Resistance}}{{base=^{base}}}{{dice=[[((@{device_rating}+@{firewall})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Matrix Resistance Roll" data-i18n="devicerating">Device Rating</button>
|
|
</label>
|
|
<input type="number" name="attr_device_rating" value="" placeholder="4" title="Device Rating" />
|
|
</div>
|
|
<div class="device-attr">
|
|
<label>
|
|
<button type="roll" name="attack" value="&{template:rolls}{{header=Attack}}{{base=^{base}}}{{dice=[[(@{attack}+(?{Attribute|Willpower,@{willpower}|Logic,@{logic}|Intuition,@{intuition}})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Attack Roll" data-i18n="attack">Attack</button>
|
|
</label>
|
|
<div class="matrix-bubble matrixAttack">
|
|
<input type="radio" name="attr_attack" value="1" /><span></span>
|
|
<input type="radio" name="attr_attack" value="2" /><span></span>
|
|
<input type="radio" name="attr_attack" value="3" /><span></span>
|
|
<input type="radio" name="attr_attack" value="4" /><span></span>
|
|
<input type="radio" name="attr_attack" value="5" /><span></span>
|
|
<input type="radio" name="attr_attack" value="6" /><span></span>
|
|
<input type="radio" name="attr_attack" value="7" /><span></span>
|
|
<input type="radio" name="attr_attack" value="8" /><span></span>
|
|
<input type="radio" name="attr_attack" value="9" /><span></span>
|
|
<input type="radio" name="attr_attack" value="10" /><span></span>
|
|
<input type="radio" name="attr_attack" value="11" /><span></span>
|
|
<input type="radio" name="attr_attack" value="12" /><span></span>
|
|
<input type="radio" name="attr_attack" value="13" /><span></span>
|
|
<input type="radio" name="attr_attack" value="14" /><span></span>
|
|
<input type="radio" name="attr_attack" value="15" /><span></span>
|
|
<input type="radio" name="attr_attack" value="16" /><span></span>
|
|
<input type="radio" name="attr_attack" value="17" /><span></span>
|
|
<input type="radio" name="attr_attack" value="18" /><span></span>
|
|
<input type="radio" name="attr_attack" value="19" /><span></span>
|
|
<input type="radio" name="attr_attack" value="20" /><span></span>
|
|
</div>
|
|
<input type="number" name="attr_attack" value="" placeholder="4" />
|
|
</div>
|
|
<div class="device-attr">
|
|
<label>
|
|
<button type="roll" name="sleaze" value="&{template:rolls}{{header=^{sleaze}}}{{base=^{base}}}{{dice=[[(@{sleaze}+(?{Attribute|Willpower,@{willpower}|Logic,@{logic}|Intuition,@{intuition}})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Sleaze Roll" data-i18n="sleaze">Sleaze</button>
|
|
</label>
|
|
<div class="matrix-bubble matrixSleaze">
|
|
<input type="radio" name="attr_sleaze" value="1" /><span></span>
|
|
<input type="radio" name="attr_sleaze" value="2" /><span></span>
|
|
<input type="radio" name="attr_sleaze" value="3" /><span></span>
|
|
<input type="radio" name="attr_sleaze" value="4" /><span></span>
|
|
<input type="radio" name="attr_sleaze" value="5" /><span></span>
|
|
<input type="radio" name="attr_sleaze" value="6" /><span></span>
|
|
<input type="radio" name="attr_sleaze" value="7" /><span></span>
|
|
<input type="radio" name="attr_sleaze" value="8" /><span></span>
|
|
<input type="radio" name="attr_sleaze" value="9" /><span></span>
|
|
<input type="radio" name="attr_sleaze" value="10" /><span></span>
|
|
<input type="radio" name="attr_sleaze" value="11" /><span></span>
|
|
<input type="radio" name="attr_sleaze" value="12" /><span></span>
|
|
<input type="radio" name="attr_sleaze" value="13" /><span></span>
|
|
<input type="radio" name="attr_sleaze" value="14" /><span></span>
|
|
<input type="radio" name="attr_sleaze" value="15" /><span></span>
|
|
<input type="radio" name="attr_sleaze" value="16" /><span></span>
|
|
<input type="radio" name="attr_sleaze" value="17" /><span></span>
|
|
<input type="radio" name="attr_sleaze" value="18" /><span></span>
|
|
<input type="radio" name="attr_sleaze" value="19" /><span></span>
|
|
<input type="radio" name="attr_sleaze" value="20" /><span></span>
|
|
</div>
|
|
<input type="number" name="attr_sleaze" value="" placeholder="4" />
|
|
</div>
|
|
<div class="device-attr">
|
|
<label>
|
|
<button type="roll" name="data processing" value="&{template:rolls}{{header=^{dataprocessing}}}{{base=^{base}}}{{dice=[[(@{data_processing}+(?{Attribute|Willpower,@{willpower}|Logic,@{logic}|Intuition,@{intuition}})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Data Processing Roll" data-i18n="dataprocessing">Data Processing</button>
|
|
</label>
|
|
<div class="matrix-bubble matrixData">
|
|
<input type="radio" name="attr_data_processing" value="1" /><span></span>
|
|
<input type="radio" name="attr_data_processing" value="2" /><span></span>
|
|
<input type="radio" name="attr_data_processing" value="3" /><span></span>
|
|
<input type="radio" name="attr_data_processing" value="4" /><span></span>
|
|
<input type="radio" name="attr_data_processing" value="5" /><span></span>
|
|
<input type="radio" name="attr_data_processing" value="6" /><span></span>
|
|
<input type="radio" name="attr_data_processing" value="7" /><span></span>
|
|
<input type="radio" name="attr_data_processing" value="8" /><span></span>
|
|
<input type="radio" name="attr_data_processing" value="9" /><span></span>
|
|
<input type="radio" name="attr_data_processing" value="10" /><span></span>
|
|
<input type="radio" name="attr_data_processing" value="11" /><span></span>
|
|
<input type="radio" name="attr_data_processing" value="12" /><span></span>
|
|
<input type="radio" name="attr_data_processing" value="13" /><span></span>
|
|
<input type="radio" name="attr_data_processing" value="14" /><span></span>
|
|
<input type="radio" name="attr_data_processing" value="15" /><span></span>
|
|
<input type="radio" name="attr_data_processing" value="16" /><span></span>
|
|
<input type="radio" name="attr_data_processing" value="17" /><span></span>
|
|
<input type="radio" name="attr_data_processing" value="18" /><span></span>
|
|
<input type="radio" name="attr_data_processing" value="19" /><span></span>
|
|
<input type="radio" name="attr_data_processing" value="20" /><span></span>
|
|
</div>
|
|
<input type="number" name="attr_data_processing" value="" placeholder="4" />
|
|
</div>
|
|
<div class="device-attr">
|
|
<label>
|
|
<button type="roll" name="firewall" value="&{template:rolls}{{header=^{firewall}}}{{base=^{base}}}{{dice=[[(@{firewall}+(?{Attribute|Willpower,@{willpower}|Logic,@{logic}|Intuition,@{intuition}})+@{modifier_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifier_toggle}]]}}{{wound=[[@{wound_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" title="Firewall Roll" data-i18n="firewall">Firewall</button>
|
|
</label>
|
|
<div class="matrix-bubble matrixFirewall">
|
|
<input type="radio" name="attr_firewall" value="1" /><span></span>
|
|
<input type="radio" name="attr_firewall" value="2" /><span></span>
|
|
<input type="radio" name="attr_firewall" value="3" /><span></span>
|
|
<input type="radio" name="attr_firewall" value="4" /><span></span>
|
|
<input type="radio" name="attr_firewall" value="5" /><span></span>
|
|
<input type="radio" name="attr_firewall" value="6" /><span></span>
|
|
<input type="radio" name="attr_firewall" value="7" /><span></span>
|
|
<input type="radio" name="attr_firewall" value="8" /><span></span>
|
|
<input type="radio" name="attr_firewall" value="9" /><span></span>
|
|
<input type="radio" name="attr_firewall" value="10" /><span></span>
|
|
<input type="radio" name="attr_firewall" value="11" /><span></span>
|
|
<input type="radio" name="attr_firewall" value="12" /><span></span>
|
|
<input type="radio" name="attr_firewall" value="13" /><span></span>
|
|
<input type="radio" name="attr_firewall" value="14" /><span></span>
|
|
<input type="radio" name="attr_firewall" value="15" /><span></span>
|
|
<input type="radio" name="attr_firewall" value="16" /><span></span>
|
|
<input type="radio" name="attr_firewall" value="17" /><span></span>
|
|
<input type="radio" name="attr_firewall" value="18" /><span></span>
|
|
<input type="radio" name="attr_firewall" value="19" /><span></span>
|
|
<input type="radio" name="attr_firewall" value="20" /><span></span>
|
|
</div>
|
|
<input type="number" name="attr_firewall" value="" placeholder="4" />
|
|
</div>
|
|
<div class="matrix-program">
|
|
<h3 data-i18n="programs">Programs</h3>
|
|
<fieldset class="repeating_programs">
|
|
<div class="repeating toggle">
|
|
<input type="checkbox" class="settings-toggle" name="attr_program_toggle" checked="checked" title="Settings toggle" /><span>x</span>
|
|
<div class="settings">
|
|
<input type="text" name="attr_program" value="" placeholder="Program Name" title="Program name" />
|
|
<br />
|
|
<div class="weapon-note">
|
|
<input type="text" name="attr_program_note" value="" placeholder="Program Description" title="Description" />
|
|
</div>
|
|
</div>
|
|
<div class="display">
|
|
<input type="hidden" class="program-toggle" name="attr_program_on" value="" />
|
|
<div class="repeat-indent">
|
|
<input type="checkbox" class="program-toggle" name="attr_program_on" checked="checked" title="Toggle on/off" /><span class="program-toggle">Q</span>
|
|
<button type="roll" name="program" value="@{gm_toggle} &{template:rolls}{{header=@{program}}}{{desc=@{program_note}}}"><span name="attr_program"></span></button><span name="attr_program_note"></span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
</div><!-- ~~~~~~~~ End of Matrix Area ~~~~~~~~ -->
|
|
</div><!-- ~~~~~~~~ End of the NPC sheet ~~~~~~~~ -->
|
|
|
|
<div class="footer"><span data-i18n="copyrightfooter">The Topps Company, Inc. has sole ownership of the names, logo, artwork, marks, photographs, sounds, audio, video and/or any proprietary material used in connection with the game Shadowrun. The Topps Company, Inc. has granted permission to use such names, logos, artwork, marks and/or any proprietary materials for promotional and informational purposes on its website but does not endorse, and is not affiliated with any official capacity whatsoever.</span><span>Version </span><span name="attr_version"></span></div>
|
|
|
|
<!-- ~~~~~~~~+:+:::::+:+::+:+:+::+:+:+:+::+:+::::::+:+::+:+:+:+::+:+:::::+:+:+:+:::::+:+::+:+:+::+:+:+:+::::+:+:~~~~~~~~ -->
|
|
<!-- ~~~~~~~~:+:+::+:+:+:+:+::+:+:+:+:+:+: Roll Template :+:+::+:+:+::+:+:+:+::+:+:+::+:+:+:+::+:+::+:+:+:::+:+:~~~~~~~~ -->
|
|
<!-- ~~~~~~~~+:+:::::+:+::+:+:::::+:+::+:+:+::+:+:+:+::+:+:::::+:+:::::+:+:+:+:::::+:+::+:+:+::+:+:+:+::+::+:+:+~~~~~~~~ -->
|
|
<div class="rolltemplates">
|
|
<!--Roll Template for rolling without Focus-->
|
|
<rolltemplate class="sheet-rolltemplate-rolls">
|
|
<div class="sheet-template-body">
|
|
<div class="sheet-template-header">
|
|
{{#header}}{{header}}{{/header}}{{#spec}}<span> ({{spec}})</span>{{/spec}}<br />
|
|
{{#arm}}<span>{{arm}}</span>{{/arm}}
|
|
{{#base}}<span>{{base}}</span>{{/base}}
|
|
{{#rollLess() wound 0}}<span> ♦ </span><span data-i18n="wounds">Wounds</span>{{/rollLess() wound 0}}
|
|
{{#rollLess() mod 0}}<span> ♦ </span><span data-i18n="modifier">Modifier</span>{{/rollLess() mod 0}}
|
|
{{#rollGreater() mod 0}}<span> ♦ </span><span data-i18n="modifier">Modifier</span>{{/rollGreater() mod 0}}
|
|
{{#rollGreater() edge 0}}<span> ♦ </span><span data-i18n="edge">Edge</span>{{/rollGreater() edge 0}}
|
|
</div>
|
|
{{#dice}}<div class="sheet-template-row">{{dice}}</div>{{/dice}}
|
|
{{#desc}}
|
|
<div class="sheet-template-row">
|
|
<span class="sheet-template-desc">
|
|
{{desc}}
|
|
{{#rollGreater() rea 0}}, <span data-i18n="reach">Reach<span> {{rea}}{{/rollGreater() rea 0}}
|
|
{{#rollGreater() drain 1}}, <span data-i18n="drain">Drain</span> {{drain}}{{/rollGreater() drain 1}}
|
|
{{#rollLess() drain 2}}, <span data-i18n="drain-2">Drain 2<span>{{/rollLess() drain 2}}
|
|
</span>
|
|
</div>
|
|
{{/desc}}
|
|
{{#opp}}<div class="sheet-template-row">{{opp}}</div>{{/opp}}
|
|
</div>
|
|
</rolltemplate>
|
|
</div>
|
|
|
|
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Hidden Attributes ~~~~~~~~~~~~~~~~~~~~~~~~ -->
|
|
<input type="hidden" name="attr_version" value="1.5" />
|
|
<input type="hidden" name="attr_wounds" value="0" />
|
|
<input type="hidden" name="attr_explode_toggle" value="" />
|
|
<input type="hidden" name="attr_attribute_roll" value="" />
|
|
|
|
<input type="hidden" name="attr_armor_name" value="select a Primary in Arms" />
|
|
<input type="hidden" name="attr_soak" min="0" value="0" />
|
|
<input type="hidden" name="attr_acid_protection" min="0" value="0" />
|
|
<input type="hidden" name="attr_cold_protection" min="0" value="0" />
|
|
<input type="hidden" name="attr_electrical_protection" min="0" value="0" />
|
|
<input type="hidden" name="attr_fire_protection" min="0" value="0" />
|
|
<input type="hidden" name="attr_radiation_protection" min="0" value="0" />
|
|
|
|
<input type="hidden" name="attr_primary_range_weapon" value="select a Primary in Arms" />
|
|
<input type="hidden" name="attr_primary_range_weapon_skill" />
|
|
<input type="hidden" name="attr_primary_range_weapon_damage" />
|
|
<input type="hidden" name="attr_primary_range_weapon_dicepool" />
|
|
<input type="hidden" name="attr_primary_range_weapon_acc" />
|
|
<input type="hidden" name="attr_primary_range_weapon_ap" />
|
|
<input type="hidden" name="attr_primary_range_weapon_mode" />
|
|
<input type="hidden" name="attr_primary_range_weapon_recoil" />
|
|
<input type="hidden" name="attr_primary_range_weapon_ammo" />
|
|
<input type="hidden" name="attr_shots_fired" value="1" />
|
|
|
|
<input type="hidden" name="attr_primary_melee_weapon" value="select a Primary in Arms" />
|
|
<input type="hidden" name="attr_primary_melee_weapon_skill" />
|
|
<input type="hidden" name="attr_primary_melee_weapon_damage" />
|
|
<input type="hidden" name="attr_primary_melee_weapon_dicepool" />
|
|
<input type="hidden" name="attr_primary_melee_weapon_acc" />
|
|
<input type="hidden" name="attr_primary_melee_weapon_ap" />
|
|
<input type="hidden" name="attr_primary_melee_weapon_reach" />
|
|
|
|
<input type="hidden" name="attr_physical_limit" value="4" />
|
|
<input type="hidden" name="attr_mental_limit"s value="4" />
|
|
<input type="hidden" name="attr_social_limit" value="5" />
|
|
<input type="hidden" name="attr_initiative_mod" value="6" />
|
|
<input type="hidden" name="attr_initiative_dice" min="1" max="5" value="1" />
|
|
<input type="hidden" name="attr_astral_mod" value="6" />
|
|
<input type="hidden" name="attr_astral_dice" max="5" value="3" />
|
|
<input type="hidden" name="attr_matrix_mod" value="0" />
|
|
<input type="hidden" name="attr_matrix_dice" max="5" />
|
|
<input type="hidden" name="attr_walk" value="12" />
|
|
<input type="hidden" name="attr_run" value="24" />
|
|
<input type="hidden" name="attr_physical" value="10" />
|
|
<input type="hidden" name="attr_stun" value="10" />
|
|
<input type="hidden" name="attr_physical_max" min="0" value="10" />
|
|
<input type="hidden" name="attr_stun_max" min="0" value="10" />
|
|
<input type="hidden" name="attr_matrix" value="10" />
|
|
<input type="hidden" name="attr_matrix_max" min="8" value="10" />
|
|
<input type="hidden" name="attr_defense" value="6" />
|
|
|
|
<input type="hidden" name="attr_acting" min="0" value="0" />
|
|
<input type="hidden" name="attr_aeronauticsmechanic" min="0" value="0" />
|
|
<input type="hidden" name="attr_alchemy" min="0" value="0" />
|
|
<input type="hidden" name="attr_animalhandling" min="0" value="0" />
|
|
<input type="hidden" name="attr_arcana" min="0" value="0" />
|
|
<input type="hidden" name="attr_archery" min="0" value="0" />
|
|
<input type="hidden" name="attr_armorer" min="0" value="0" />
|
|
<input type="hidden" name="attr_artificing" min="0" value="0" />
|
|
<input type="hidden" name="attr_artisan" min="0" value="0" />
|
|
<input type="hidden" name="attr_assensing" min="0" value="0" />
|
|
<input type="hidden" name="attr_astralcombat" min="0" value="0" />
|
|
<input type="hidden" name="attr_athletics" min="0" value="0" />
|
|
<input type="hidden" name="attr_automatics" min="0" min="0" value="0" />
|
|
<input type="hidden" name="attr_automotivemechanic" min="0" value="0" />
|
|
<input type="hidden" name="attr_banishing" min="0" value="0" />
|
|
<input type="hidden" name="attr_binding" min="0" value="0" />
|
|
<input type="hidden" name="attr_biotech" min="0" value="0" />
|
|
<input type="hidden" name="attr_biotechnology" min="0" value="0" />
|
|
<input type="hidden" name="attr_blades" min="0" value="0" />
|
|
<input type="hidden" name="attr_chemistry" min="0" value="0" />
|
|
<input type="hidden" name="attr_closecombat" min="0" value="0" />
|
|
<input type="hidden" name="attr_clubs" min="0" value="0" />
|
|
<input type="hidden" name="attr_compiling" min="0" value="0" />
|
|
<input type="hidden" name="attr_computer" min="0" value="0" />
|
|
<input type="hidden" name="attr_con" min="0" value="0" />
|
|
<input type="hidden" name="attr_conjuring" min="0" value="0" />
|
|
<input type="hidden" name="attr_counterspelling" min="0" value="0" />
|
|
<input type="hidden" name="attr_cracking" min="0" value="0" />
|
|
<input type="hidden" name="attr_cybercombat" min="0" value="0" />
|
|
<input type="hidden" name="attr_cybertechnology" min="0" value="0" />
|
|
<input type="hidden" name="attr_decompiling" min="0" value="0" />
|
|
<input type="hidden" name="attr_demolitions" min="0" value="0" />
|
|
<input type="hidden" name="attr_disenchanting" min="0" value="0" />
|
|
<input type="hidden" name="attr_disguise" min="0" value="0" />
|
|
<input type="hidden" name="attr_diving" min="0" value="0" />
|
|
<input type="hidden" name="attr_electronics" min="0" value="0" />
|
|
<input type="hidden" name="attr_electronicwarfare" min="0" value="0" />
|
|
<input type="hidden" name="attr_enchanting" min="0" value="0" />
|
|
<input type="hidden" name="attr_engineering" min="0" value="0" />
|
|
<input type="hidden" name="attr_escapeartist" min="0" value="0" />
|
|
<input type="hidden" name="attr_etiquette" min="0" value="0" />
|
|
<input type="hidden" name="attr_exoticmelee" min="0" value="0" />
|
|
<input type="hidden" name="attr_exoticrange" min="0" value="0" />
|
|
<input type="hidden" name="attr_firearms" min="0" value="0" />
|
|
<input type="hidden" name="attr_firstaid" min="0" value="0" />
|
|
<input type="hidden" name="attr_flight" min="0" value="0" />
|
|
<input type="hidden" name="attr_forgery" min="0" value="0" />
|
|
<input type="hidden" name="attr_freefall" min="0" value="0" />
|
|
<input type="hidden" name="attr_gunnery" min="0" value="0" />
|
|
<input type="hidden" name="attr_gymnastics" min="0" value="0" />
|
|
<input type="hidden" name="attr_hacking" min="0" value="0" />
|
|
<input type="hidden" name="attr_hardware" min="0" value="0" />
|
|
<input type="hidden" name="attr_heavyweapons" min="0" value="0" />
|
|
<input type="hidden" name="attr_impersonation" min="0" value="0" />
|
|
<input type="hidden" name="attr_industrialmechanic" min="0" value="0" />
|
|
<input type="hidden" name="attr_influence" min="0" value="0" />
|
|
<input type="hidden" name="attr_instruction" min="0" value="0" />
|
|
<input type="hidden" name="attr_intimidation" min="0" value="0" />
|
|
<input type="hidden" name="attr_leadership" min="0" value="0" />
|
|
<input type="hidden" name="attr_locksmith" min="0" value="0" />
|
|
<input type="hidden" name="attr_longarms" min="0" value="0" />
|
|
<input type="hidden" name="attr_medicine" min="0" value="0" />
|
|
<input type="hidden" name="attr_nauticalmechanic" min="0" value="0" />
|
|
<input type="hidden" name="attr_navigation" min="0" value="0" />
|
|
<input type="hidden" name="attr_negotiation" min="0" value="0" />
|
|
<input type="hidden" name="attr_outdoors" min="0" value="0" />
|
|
<input type="hidden" name="attr_palming" min="0" value="0" />
|
|
<input type="hidden" name="attr_perception" min="0" value="0" />
|
|
<input type="hidden" name="attr_performance" min="0" value="0" />
|
|
<input type="hidden" name="attr_pilotaerospace" min="0" value="0" />
|
|
<input type="hidden" name="attr_pilotaircraft" min="0" value="0" />
|
|
<input type="hidden" name="attr_pilotexoticvehicle" min="0" value="0" />
|
|
<input type="hidden" name="attr_pilotgroundcraft" min="0" value="0" />
|
|
<input type="hidden" name="attr_pilotwalker" min="0" value="0" />
|
|
<input type="hidden" name="attr_pilotwatercraft" min="0" value="0" />
|
|
<input type="hidden" name="attr_pistols" min="0" value="0" />
|
|
<input type="hidden" name="attr_registering" min="0" value="0" />
|
|
<input type="hidden" name="attr_ritualspellcasting" min="0" value="0" />
|
|
<input type="hidden" name="attr_running" min="0" value="0" />
|
|
<input type="hidden" name="attr_sneaking" min="0" value="0" />
|
|
<input type="hidden" name="attr_software" min="0" value="0" />
|
|
<input type="hidden" name="attr_sorcery" min="0" value="0" />
|
|
<input type="hidden" name="attr_spellcasting" min="0" value="0" />
|
|
<input type="hidden" name="attr_stealth" min="0" value="0" />
|
|
<input type="hidden" name="attr_summoning" min="0" value="0" />
|
|
<input type="hidden" name="attr_survival" min="0" value="0" />
|
|
<input type="hidden" name="attr_swimming" min="0" value="0" />
|
|
<input type="hidden" name="attr_tasking" min="0" value="0" />
|
|
<input type="hidden" name="attr_throwingweapons" min="0" value="0" />
|
|
<input type="hidden" name="attr_tracking" min="0" value="0" />
|
|
<input type="hidden" name="attr_unarmedcombat" min="0" value="0" />
|
|
|
|
<!--Sheet Worker-->
|
|
<script type="text/worker">
|
|
|
|
//Sheet open versioning
|
|
on("sheet:opened", function() {
|
|
getAttrs(["version"], (v) => { versioning(parseFloat(v.version) || 1); });
|
|
|
|
let translations = [];
|
|
let attributes = ["attribute", "body", "agility", "reaction", "strength", "willpower", "logic", "intuition", "charisma", "edge", "none"];
|
|
attributes.forEach((attribute) => {
|
|
translations.push(getTranslationByKey(attribute));
|
|
});
|
|
|
|
let attribute_roll = `?{${translations[0]}`;
|
|
for (i = 1; i <= (attributes.length - 2); i += 1) {
|
|
attribute_roll += `|${translations[i]},@{${attributes[i]}}`;
|
|
};
|
|
attribute_roll += `|${translations[10]},0}`; //For None
|
|
|
|
setAttrs({
|
|
attribute_roll: attribute_roll
|
|
});
|
|
});
|
|
|
|
const versioning = (version) => {
|
|
console.log(`%c Shadowrun 5th Edition versioning, ${version}`, "color: blue; font-weight:bold");
|
|
if (version => 1.41) {
|
|
console.log(`%c Shadowrun 5th Edition is update to date`, "color: red; font-weight:bold");
|
|
} else if (version => 1.4) {
|
|
const toggles = [`wound_toggle`, `edge_toggle`, `modifier_toggle`];
|
|
getAttrs(toggles, (v) => {
|
|
let set = {};
|
|
toggles.forEach(attr => {
|
|
const name = attr.split("_")[0], value = v[`${attr}`].toString();
|
|
(value != "0" || !value.includes(name)) ? set[`${attr}`] = 0 : false;
|
|
});
|
|
setAttrs(set);
|
|
});
|
|
setAttrs({version: 1.41}, () => {versioning(1.41)});
|
|
} else if (version => 1.35) {
|
|
getAttrs(["sheet_type"], (v) => {
|
|
let update = {};
|
|
(v.sheet_type === "goon") ? update["sheet_type"] = "grunt" : false;
|
|
setAttrs(update);
|
|
});
|
|
setAttrs({version: 1.36}, () => {versioning(1.4)});
|
|
} else {
|
|
setAttrs({version: 1.35}, () => {versioning(1.35)});
|
|
};
|
|
};
|
|
|
|
on("clicked:shots_remove clicked:shots_add", (eventinfo) => {
|
|
getAttrs([`shots_fired`], (v) => {
|
|
let shots = parseInt(v[`shots_fired`]) || 0;
|
|
const trigger = eventinfo.triggerName;
|
|
setAttrs({
|
|
shots_fired: (shots > 0 && trigger.includes("remove")) ? shots -= 1 : trigger.includes("add") ? shots += 1 : shots
|
|
});
|
|
console.log(`%c SHOTS FIRED ${shots}`, "color:green; font-size: 16px");
|
|
});
|
|
});
|
|
|
|
on("clicked:primary_ammo", (eventinfo) => {
|
|
getAttrs([`primary_range_weapon_ammo`, `shots_fired`], (v) => {
|
|
let ammo = parseInt(v[`primary_range_weapon_ammo`]) || 0;
|
|
const shots = parseInt(v[`shots_fired`]) || 0;
|
|
setAttrs({
|
|
primary_range_weapon_ammo: ammo -= shots
|
|
});
|
|
});
|
|
});
|
|
|
|
on("clicked:reload", (eventinfo) => {
|
|
getAttrs([`primary_range_weapon_ammo_max`], (v) => {
|
|
const reload = parseInt(v[`primary_range_weapon_ammo_max`]) || 0;
|
|
setAttrs({
|
|
primary_range_weapon_ammo: reload
|
|
});
|
|
});
|
|
});
|
|
|
|
on("clicked:repeating_quality:quality", (eventinfo) => {
|
|
const source = (eventinfo.sourceAttribute).slice(0, -8);
|
|
|
|
getAttrs([`${source}_flag_quality`], (v) => {
|
|
setAttrs({
|
|
[`${source}_flag_quality`]: (v[`${source}_flag_quality`] === "settings") ? "display" : "settings"
|
|
});
|
|
});
|
|
});
|
|
|
|
on("clicked:whisper", (eventinfo) => {
|
|
getAttrs([`gm_toggle`], (v) => {
|
|
setAttrs({
|
|
gm_toggle: (!v.gm_toggle.includes("gm")) ? "/w gm" : " "
|
|
});
|
|
});
|
|
});
|
|
|
|
on("clicked:wound clicked:modifier clicked:edge", (eventinfo) => {
|
|
const attr = eventinfo.triggerName.split("clicked:")[1];
|
|
getAttrs([`${attr}_toggle`], (v) => {
|
|
const value = v[`${attr}_toggle`];
|
|
const change = (attr === "wound" && value != "@{wounds}") ? "@{wounds}" : (attr === "edge" && value != "@{edge}") ? "@{edge}" : (attr === "modifier" && value != "?{Modifiers +/-|0}") ? "?{Modifiers +/-|0}" : 0;
|
|
|
|
setAttrs({
|
|
[`${attr}_toggle`]: change
|
|
});
|
|
});
|
|
});
|
|
|
|
[`core`, `arms`, `augs`, `gear`, `magic`, `matrix`, `social`, `vehicle`, `options`].forEach(attr => {
|
|
on(`clicked:tab_${attr}`, () => {
|
|
console.log(`c% The button clicked was tab_${attr} update tab to ${attr}`);
|
|
setAttrs({tab: attr});
|
|
});
|
|
});
|
|
|
|
//Watch for Updates and Run the needed functions
|
|
on("change:agility change:walk_modifier change:run_modifier", () => {
|
|
update_movement();
|
|
});
|
|
|
|
on("change:body change:strength change:lift_carry_modifier", (eventinfo) => {
|
|
const source = eventinfo.sourceAttribute;
|
|
update_common_rolls(["body", "strength", "lift_carry_modifier"]);
|
|
//STRENGTH & BODY RUN THIS
|
|
(source.includes("strength") || source.includes("body")) ? update_limit("physical") : false;
|
|
//ONLY RUN ON BODY CHANGE
|
|
if (source.includes("body")) {
|
|
update_common_rolls(["body", "overflow_modifier"]);
|
|
update_common_rolls(["body", "armor_rating", "soak_modifier", "soak_temp", `soak_temp_flag`]);
|
|
update_track("physical");
|
|
};
|
|
});
|
|
|
|
on("change:reaction change:intuition", (eventinfo) => {
|
|
const source = eventinfo.sourceAttribute;
|
|
update_common_rolls(["reaction", "intuition", "defense_modifier", "defense_temp", `defense_temp_flag`]);
|
|
update_initiative();
|
|
//REACTION UPDATES PHYSICAL, INTUITION UPDATES MENTAL
|
|
(source.includes("reaction")) ? update_limit("physical") : update_limit("mental");
|
|
//ONLY RUN ON INTUITION CHANGE
|
|
(source.includes("intuition")) ? update_common_rolls(["charisma", "intuition", "judge_intentions_modifier"]) : false;
|
|
});
|
|
|
|
on("change:willpower", () => {
|
|
update_common_rolls(["charisma", "willpower", "composure_modifier"]);
|
|
update_common_rolls(["logic", "willpower", "memory_modifier"]);
|
|
update_track("stun");
|
|
update_limit("social");
|
|
update_limit("mental");
|
|
});
|
|
|
|
on("change:logic change:memory_modifier", (eventinfo) => {
|
|
const source = eventinfo.sourceAttribute;
|
|
update_common_rolls(["logic", "willpower", "memory_modifier"]);
|
|
//LOGIC UPDATES LIMIT
|
|
(source.includes("logic")) ? update_limit("mental") : false;
|
|
});
|
|
|
|
on("change:charisma change:composure_modifier change:judge_intentions_modifier", (eventinfo) => {
|
|
const source = eventinfo.sourceAttribute;
|
|
//CHARISMA & COMPOSURE UPDATE COMPOSURE
|
|
(source.includes("charisma") || source.includes("composure")) ? update_common_rolls(["charisma", "willpower", "composure_modifier"]) : false;
|
|
//CHARISMA & JUDGE INTENTIONS UPDATE JUDGE INTENTIONS
|
|
(source.includes("charisma") || source.includes("judge")) ? update_common_rolls(["charisma", "intuition", "judge_intentions_modifier"]) : false;
|
|
//ONLY CHARISMA UPDATES SOCIAL LIMIT
|
|
(source.includes("charisma")) ? update_limit("social") : false;
|
|
});
|
|
|
|
on("change:essence", () => {
|
|
update_limit("social");
|
|
});
|
|
|
|
on("change:physical_modifier change:flag_drone", () => {
|
|
update_track("physical");
|
|
});
|
|
|
|
on("change:stun_modifier", () => {
|
|
update_track("stun");
|
|
});
|
|
|
|
on("change:initiative_modifier change:initiative_temp change:initiative_temp_flag", () => {
|
|
update_initiative();
|
|
});
|
|
|
|
on("change:defense_modifier change:defense_temp change:defense_temp_flag", () => {
|
|
update_common_rolls(["reaction", "intuition", "defense_modifier", "defense_temp", `defense_temp_flag`]);
|
|
});
|
|
|
|
on("change:armor_rating change:soak_modifier change:soak_temp change:soak_temp_flag", () => {
|
|
update_common_rolls(["body", "armor_rating", "soak_modifier", "soak_temp", `soak_temp_flag`]);
|
|
});
|
|
|
|
on("change:mental_limit_modifier change:mental_limit_temp change:mental_limit_temp_flag change:physical_limit_modifier change:physical_limit_temp change:physical_limit_temp_flag change:social_limit_modifier change:social_limit_temp change:social_limit_temp_flag", (eventinfo) => {
|
|
const type = eventinfo.sourceAttribute.split("_")[0]; update_limit(type);
|
|
});
|
|
|
|
on("change:pain_tolerance", () => {
|
|
update_wounds();
|
|
});
|
|
|
|
//Calculate ATTRIBUTES
|
|
['body', 'agility', 'reaction', 'strength', 'willpower', 'logic', 'intuition','charisma','magic', 'resonance',
|
|
].forEach(attr => {
|
|
// Attach listener
|
|
on(`change:${attr}_base change:${attr}_modifier change:${attr}_temp change:${attr}_temp_flag`, () => {
|
|
// Load attribute values
|
|
getAttrs([`${attr}_base`, `${attr}_modifier`, `${attr}_temp`, `${attr}_temp_flag`], (v) => {
|
|
// Do some math to calculate the total
|
|
const bas = parseInt(v[`${attr}_base`]) || 0;
|
|
const mod = parseInt(v[`${attr}_modifier`]) || 0;
|
|
const tem = (v[`${attr}_temp_flag`] === "on") ? parseInt(v[`${attr}_temp`]) || 0 : 0;
|
|
const bon = mod + tem;
|
|
const stat = bas + bon;
|
|
|
|
// Update the finalized total
|
|
setAttrs({
|
|
[attr]: stat,
|
|
[`display_${attr}`]: bon === 0 ? bas : `${bas} (${stat})`
|
|
});
|
|
});
|
|
});
|
|
});
|
|
|
|
//Calculaute limts
|
|
const update_limit = (type) => {
|
|
let attrs = [`${type}_limit_modifier`, `${type}_limit_temp`, `${type}_limit_temp_flag`];
|
|
|
|
if (type === "mental") {
|
|
attrs.push("intuition", "willpower", "logic");
|
|
} else if (type === "physical") {
|
|
attrs.push("body", "reaction", "strength");
|
|
} else {
|
|
attrs.push("essence", "willpower", "charisma");
|
|
};
|
|
|
|
getAttrs(attrs, (v) => {
|
|
const attr1 = attrs[3], attr2 = attrs[4], attr3 = attrs[5];
|
|
const stat1 = (attr1 === "essence") ? Math.ceil(v[`${attr1}`]) || 0 : parseInt(v[`${attr1}`]) || 0; //Essence, Intuition, Body
|
|
const stat2 = parseInt(v[`${attr2}`]) || 0; //Willpower, Reaction
|
|
const stat3 = parseInt(v[`${attr3}`]) || 0; //Logic, Strenght, Charisma
|
|
|
|
const mod = parseInt(v[`${type}_limit_modifier`]) || 0;
|
|
const tem = (v[`${type}_limit_temp_flag`] === "on") ? parseInt(v[`${type}_limit_temp_flag`]) || 0 : 0;
|
|
|
|
const tot = ((stat1 + stat2 + (stat3 * 2))/3);
|
|
const update = Math.ceil(tot) + (mod + tem);
|
|
|
|
setAttrs({[`${type}_limit`]: update});
|
|
});
|
|
};
|
|
|
|
//This function checks changes to repeating_armor and updates the Primary Armor if needed
|
|
on("change:repeating_armor", (eventInfo) => {
|
|
const source = eventInfo.sourceAttribute;
|
|
const newV = eventInfo.newValue;
|
|
const arm = ["repeating_armor"];
|
|
const armors = [`${arm}_name`, `${arm}_rating`, `${arm}_acid_modifier`, `${arm}_electrical_modifier`, `${arm}_cold_modifier`,`${arm}_fire_modifier`, `${arm}_radiation_modifier`, `${arm}_dicepool_modifier`];
|
|
|
|
//Check if the event was related to the primary flag & armor is set to primary
|
|
if (source.includes('primary') && newV === 'primary') {
|
|
//Get attributes from the repeating_armor
|
|
getAttrs(armors, (v) => {
|
|
let update = {};
|
|
//Update the hidden static Primary Armor attributes with the repeating_armor attributes
|
|
_.each(armors, (armor) => {
|
|
const name = (armor.includes("name") || armor.includes("rating")) ? armor.split("repeating_")[1] : armor.split(`${arm}_`)[1];
|
|
update[`${name}`] = v[`${armor}`];
|
|
});
|
|
|
|
setAttrs(update);
|
|
});
|
|
|
|
//Set the other repeating_armor primary flags to 0 aka unchecked
|
|
getSectionIDs(`${arm}`, function(ids) {
|
|
let IDs = [];
|
|
let update = {};
|
|
|
|
for(var i=0; i < ids.length; i++) {
|
|
IDs.push(`${arm}_` + ids[i] + "_primary");
|
|
};
|
|
|
|
IDs.forEach(id => {
|
|
if (id != source) {
|
|
update[`${id}`] = 0;
|
|
};
|
|
});
|
|
|
|
setAttrs(update);
|
|
});
|
|
//Check if the event was for a relevant Primary Armor attribute
|
|
} else if (source.includes('name') || source.includes('rating') || source.includes('dicepool') || source.includes('acid') || source.includes('cold') || source.includes('electrical') || source.includes('fire') || source.includes('radiation')) {
|
|
//Get the primary flag attribute for this armor. Also get the repeating_armor attribute we'll need for an update, doing it now is more efficient.
|
|
getAttrs([`${arm}_primary`, `${source}`], (v) => {
|
|
//Check if this armor is the designated Primary Armor.
|
|
if (v[`${arm}_primary`] === 'primary') {
|
|
let update = {};
|
|
//Apply the repeating_armor attribute to its static counterpart
|
|
switch (true) {
|
|
case /name/.test(source) : update["armor_name"] = v[`${source}`]; break;
|
|
case /rating/.test(source) : update["armor_rating"] = v[`${source}`]; break;
|
|
case /dicepool/.test(source) : update["soak_modifier"] = v[`${source}`]; break;
|
|
case /acid/.test(source) : update["acid_modifier"] = v[`${source}`]; break;
|
|
case /cold/.test(source) : update["cold_modifier"] = v[`${source}`]; break;
|
|
case /electrical/.test(source): update["electrical_modifier"] = v[`${source}`]; break;
|
|
case /fire/.test(source) : update["fire_modifier"] = v[`${source}`]; break;
|
|
case /radiation/.test(source) : update["radiation_modifier"] = v[`${source}`]; break;
|
|
default: console.log(`Source ${source} was invalid`);}
|
|
|
|
setAttrs(update);
|
|
};
|
|
});
|
|
} else {
|
|
console.log("CHANGE NOT RELEVENT Primary Armor");
|
|
};
|
|
});
|
|
|
|
// COMMON ROLLS: MEOMORY, JUDGE INTETIONS, COMPOSURE, LIFT & CARRY, OVERFLOW, DEFENSE, & SOAK ROLLS
|
|
const update_common_rolls = (attrs) => {
|
|
getAttrs(attrs, (v) => {
|
|
const found = attrs.find((mod) => { return mod.includes("_modifier") });
|
|
const name = found.split("_modifier")[0];
|
|
let numbers = [];
|
|
|
|
//DEFENSE & SOAK HAVE TWO EXTRA ATTRIBUTES. TEMP IS NEEDED BUT ONLY IF THE FLAG IS CHECKED IN SETTINGS
|
|
const array = (name === "defense" || name === "soak") ? (v[`${name}_temp_flag`] === "on") ? attrs.splice(0, 4) : attrs.splice(0, 3) : attrs;
|
|
|
|
_.each(array, (attr) => { numbers.push(parseInt(v[`${attr}`]) || 0); });
|
|
const add = (a, b) => a + b, sum = numbers.reduce(add);
|
|
|
|
setAttrs({[`${name}`]: sum});
|
|
|
|
console.log(`%c ${name} = ${numbers} totaling ${sum}`, "color: green;font-weight: bold;");
|
|
});
|
|
};
|
|
|
|
//Calculate Movement Rates
|
|
var update_movement = () => {
|
|
getAttrs(["agility", "walk_modifier", "run_modifier"], (v) => {
|
|
const agi = parseInt(v.agility) || 0, wmod = parseInt(v.walk_modifier) || 0, rmod = parseInt(v.run_modifier) || 0;
|
|
let update = {};
|
|
update["walk"] = (agi * 2) + wmod;
|
|
update["run"] = (agi * 4) + rmod;
|
|
setAttrs(update);
|
|
});
|
|
};
|
|
|
|
//Update condition tracks
|
|
const update_track = (track) => {
|
|
let attrs = [`${track}_modifier`, `${track}_damage`];
|
|
(track === "stun") ? attrs.push("willpower") : attrs.push("body", "sheet_type", "flag_drone");
|
|
|
|
getAttrs(attrs, (v) =>{
|
|
const attr1 = attrs[2], stat1 = parseInt(v[`${attr1}`]) || 0; //Willpower or Body
|
|
const mod = parseInt(v[`${track}_modifier`]) || 0;
|
|
const dam = parseInt(v[`${track}_damage`]) || 0;
|
|
let update = {};
|
|
|
|
if (track === "stun" || v["sheet_type"] === "pc" || v["sheet_type"] === "grunt") {
|
|
tot = Math.ceil(stat1/2) + 8 + mod;
|
|
} else if (v["sheet_type"] === "vehicle" && v["flag_drone"] === "drone") {
|
|
tot = (Math.ceil(stat1/2) + 6 + mod);
|
|
} else if (v["sheet_type"] === "vehicle") {
|
|
tot = (Math.ceil(stat1/2) + 12 + mod);
|
|
} else {
|
|
tot = 0; //Sprites don't have Stun or Physical track
|
|
};
|
|
|
|
const current = (dam != 0) ? tot - dam : tot;
|
|
|
|
update[`${track}`] = current;
|
|
update[`${track}_max`] = tot;
|
|
|
|
setAttrs(update, {silent:true});
|
|
});
|
|
};
|
|
|
|
//Calculate Device Rating Track
|
|
on("change:device_rating change:matrix_modifier", () => {
|
|
getAttrs(["device_rating","matrix_modifier","matrix"], (v) =>{
|
|
const dev = parseInt(v.device_rating) || 0, mod = parseInt(v.matrix_modifier) || 0;
|
|
const dam = parseInt(v.matrix) || 0;
|
|
const tot = Math.ceil(dev/2) + 8 + mod;
|
|
const current = (dam > 0) ? dam : tot;
|
|
|
|
setAttrs({matrix: current});
|
|
setAttrs({matrix_max: tot});
|
|
});
|
|
});
|
|
|
|
//Convert physical into the physical damage track boxes and reverse
|
|
['physical', 'stun'].forEach(attr => {
|
|
on(`change:${attr} change:${attr}_damage`, function(eventinfo) {
|
|
getAttrs([`${attr}`, `${attr}_damage`, `${attr}_max`], (v) => {
|
|
const stat = parseInt(v[`${attr}`]) || 0, dam = parseInt(v[`${attr}_damage`]) || 0, max = parseInt(v[`${attr}_max`]) || 0, source = eventinfo.sourceAttribute;
|
|
const wou = (source === `${attr}`) ? max - stat : max - dam;
|
|
|
|
if (source === `${attr}`) {
|
|
(dam === wou) ? false : ((stat < max && dam != wou) ? setAttrs({[`${attr}_damage`]: wou}, {silent: true}) : setAttrs({[`${attr}_damage`]: 0}, {silent: true}));
|
|
} else {
|
|
(stat === wou) ? false : setAttrs({[`${attr}`]: wou}, {silent: true});
|
|
};
|
|
|
|
update_wounds();
|
|
});
|
|
});
|
|
});
|
|
|
|
const update_wounds = () => {
|
|
getAttrs(["stun_damage", "physical_damage", "pain_tolerance"], (v) => {
|
|
const stu = parseInt(v.stun_damage) || 0, phy = parseInt(v.physical_damage) || 0, pai = parseInt(v.pain_tolerance) || 0;
|
|
lowP = (pai < 0) ? 2 : 3;
|
|
highPhy = (pai > 0) ? phy - pai : phy;
|
|
highStu = (pai > 0) ? stu - pai : stu;
|
|
pMod = (phy > 0) ? (Math.floor(highPhy/lowP)) : 0;
|
|
sMod = (stu > 0) ? (Math.floor(highStu/lowP)) : 0;
|
|
wou = Math.floor(-(pMod) + -(sMod));
|
|
|
|
setAttrs({wounds: wou});
|
|
});
|
|
};
|
|
|
|
//Calculate Initiatves
|
|
var update_initiative = () => {
|
|
getAttrs(["reaction", "intuition", "initiative_modifier", "initiative_temp", "initiative_temp_flag"], (v) =>{
|
|
const rea = parseInt(v.reaction) || 0;
|
|
const int = parseInt(v.intuition) || 0;
|
|
const mod = parseInt(v.initiative_modifier) || 0;
|
|
const tem = (v.initiative_temp_flag === "on") ? parseInt(v.initiative_temp) || 0 : 0;
|
|
const bas = rea + int;
|
|
const tot = rea + int + mod + tem;
|
|
let update = {};
|
|
update["initiative_mod"] = tot;
|
|
(mod != 0) ? update["display_initiative_mod"] = bas + " (" + tot + ")" : update["display_initiative_mod"] = bas;
|
|
setAttrs(update);
|
|
});
|
|
};
|
|
|
|
on("change:initiative_dice_modifier change:edge_toggle change:initiative_dice_temp change:initiative_dice_temp_flag", () => {
|
|
getAttrs(["initiative_dice_modifier", "edge_toggle", "initiative_dice_temp", "initiative_dice_temp_flag"], (v) =>{
|
|
const mod = parseInt(v.initiative_dice_modifier) || 0;
|
|
const tem = (v.initiative_dice_temp_flag === "on") ? parseInt(v.initiative_dice_temp) || 0 : 0;
|
|
const bas = mod + tem;
|
|
const tot = Math.min(bas+1,5);
|
|
edg = (v.edge_toggle == 0) ? tot : 5;
|
|
|
|
setAttrs({initiative_dice: edg});
|
|
});
|
|
});
|
|
|
|
//Calculate Astral Initiatve
|
|
on("change:intuition change:astral_mod_modifier", () => {
|
|
getAttrs(["intuition", "astral_mod_modifier"], (v) => {
|
|
var int = parseInt(v.intuition) || 0;
|
|
var mod = parseInt(v.astral_mod_modifier) || 0;
|
|
var bas = int * 2;
|
|
var tot = (int * 2) + mod;
|
|
|
|
setAttrs({astral_mod: tot});
|
|
(mod != 0) ? setAttrs({display_astral_mod: bas + " (" + tot + ")"}) : setAttrs({display_astral_mod: bas});
|
|
});
|
|
});
|
|
|
|
on("change:astral_dice_modifier change:edge_toggle", () => {
|
|
getAttrs(["astral_dice_modifier", "edge_toggle"], (v) =>{
|
|
var mod = parseInt(v.astral_dice_modifier) || 0;
|
|
var tot = Math.min(mod+3,5);
|
|
edg = (v.edge_toggle == 0) ? tot : 5;
|
|
|
|
setAttrs({astral_dice: edg});
|
|
});
|
|
});
|
|
|
|
//Calculate Matrix Initiatve.
|
|
on("change:host_rating change:data_processing change:pilot change:intuition change:matrix_mod_modifier change:level change:matrix_dice_modifier change:edge_toggle", () => {
|
|
getAttrs(["sheet_type", "data_processing", "pilot", "intuition", "matrix_mod_modifier", "host_rating", "level", "matrix_dice_modifier", "edge_toggle"], (v) => {
|
|
var dat = parseInt(v.data_processing) || 0;
|
|
var pil = parseInt(v.pilot) || 0;
|
|
var int = parseInt(v.intuition) || 0;
|
|
var mat = parseInt(v.matrix_mod_modifier) || 0;
|
|
var hos = parseInt(v.host_rating) || 0;
|
|
var lev = parseInt(v.level) || 0;
|
|
var dic = parseInt(v.matrix_dice_modifier) || 0;
|
|
let update = {};
|
|
|
|
dice = (v.sheet_type === "grunt" && v.edge_toggle == 0) ? 4 + dic :
|
|
((v.sheet_type === "grunt" && v.edge_toggle != 0) ? 5 :
|
|
4);
|
|
|
|
tot = (v.sheet_type === "vehicle") ? dat + pil :
|
|
(v.sheet_type === "host") ? dat + hos :
|
|
(v.sheet_type === "sprite") ? dat + lev + mat :
|
|
dat + int + mat;
|
|
|
|
bas = (v.sheet_type === "sprite") ? dat + lev : dat + int ;
|
|
|
|
update["matrix_mod"] = tot;
|
|
update["matrix_dice"] = dice;
|
|
|
|
(mat != 0) ? update["display_matrix_mod"] = bas + " (" + tot + ")" : update["display_matrix_mod"] = tot;
|
|
|
|
setAttrs(update);
|
|
});
|
|
});
|
|
|
|
//Edge toggle to include ! for exploding dice
|
|
on("change:edge_toggle", () => {
|
|
getAttrs(["edge_toggle"], (v) =>{
|
|
edg = (v.edge_toggle != 0) ? "!" : "";
|
|
|
|
setAttrs({explode_toggle: edg});
|
|
});
|
|
});
|
|
|
|
//Calculate Reset Condition Track
|
|
on("clicked:cond_reset", () => {
|
|
getAttrs(["sheet_type","physical_max","stun_max", "matrix_max"], (v) => {
|
|
var phy = parseInt(v.physical_max) || 0;
|
|
var stun = parseInt(v.stun_max) || 0;
|
|
var mat = parseInt(v.matrix_max) || 0;
|
|
let update = {};
|
|
|
|
if (v.sheet_type === "grunt" || v.sheet_type === "pc") {
|
|
update["physical"] = phy;
|
|
update["stun"] = stun;
|
|
} else if (v.sheet_type === "sprite") {
|
|
update["matrix"] = mat;
|
|
} else if (v.sheet_type === "vehicle") {
|
|
update["physical"] = phy;
|
|
update["matrix"] = mat;
|
|
} else {
|
|
return "Not a grunt or vehicle";
|
|
};
|
|
|
|
setAttrs(update);
|
|
});
|
|
});
|
|
|
|
on("clicked:cond_reset_physical clicked:cond_reset_stun", (eventinfo) => {
|
|
const attr = eventinfo.triggerName.split("_")[2];
|
|
setAttrs({
|
|
[`${attr}_damage`] : 0
|
|
});
|
|
});
|
|
|
|
//Weapon displays set into an Array
|
|
// Builder function to display details properly
|
|
// Note that since undefined are falsey if there's no label or sign we can leave the parameters blank
|
|
function repeatingStringBuilder(v, keyBase) {
|
|
return function(key, label, sign) {
|
|
// fetch the attr from v checking if it has a value
|
|
const val = v[`${keyBase}${key}`];
|
|
if (!val) return '';
|
|
|
|
// Apply the sign if needed
|
|
const disp = sign && val > 0 ? `+${val}` : val;
|
|
|
|
// Apply label if needed
|
|
return label ? `${label} ${disp}` : disp;
|
|
}
|
|
}
|
|
|
|
on("change:repeating_weapon", () => {
|
|
getAttrs(["repeating_weapon_weapon_range", "repeating_weapon_weapon_melee", "repeating_weapon_weapon_type", "repeating_weapon_weapon_reach", "repeating_weapon_weapon_acc", "repeating_weapon_weapon_dv", "repeating_weapon_weapon_ap", "repeating_weapon_weapon_mode", "repeating_weapon_weapon_rc", "repeating_weapon_weapon_ammo", "repeating_weapon_weapon_note"], (v) =>{
|
|
// Local builder putting the needed variables into scope for repeatingStringBuilder
|
|
const b = repeatingStringBuilder(v, 'repeating_weapon_weapon_');
|
|
// Determine fields to display and in their proper order and formatting
|
|
// Anonymous function is purely stylistic and adds more overhead than just a simple switch/case. Personally I find the function looks cleaner and hides any internal scope that might conflict with outside
|
|
const display = (() => {
|
|
// 0 for weapon_range is a ranged weapon. A 1 is a melee weapon.
|
|
switch(v.repeating_weapon_weapon_range) {
|
|
case '0':
|
|
// Not a fan of how ammo has to be handled. Could potentially be placed in the repeatingStringBuilder if used more often for other change:repeating functions as some sort of suffix parameter
|
|
const ammo = b('amm');
|
|
return [
|
|
b('type'),
|
|
b('acc', 'ACC'),
|
|
b('dv', 'DV'),
|
|
b('ap', 'AP', true),
|
|
b('mode'),
|
|
b('rc', 'RC'),
|
|
ammo ? `${ammo} (c)` : '',
|
|
b('note')
|
|
];
|
|
case '1': return [
|
|
b('type'),
|
|
b('reach', 'Reach', true),
|
|
b('acc', 'ACC'),
|
|
b('dv', 'DV'),
|
|
b('ap', 'AP', true),
|
|
b('note')
|
|
];
|
|
default: return [
|
|
b('type'),
|
|
b('acc', 'ACC'),
|
|
b('dv', 'DV'),
|
|
b('ap', 'AP', true),
|
|
b('note')
|
|
];
|
|
}
|
|
})()
|
|
// Remove all empty strings
|
|
.filter(s => s)
|
|
// Concat all the strings and add comma between
|
|
.join(', ');
|
|
|
|
// Finally wrap square brackets around the weapon display
|
|
setAttrs({repeating_weapon_weapon: `[${display}]`});
|
|
});
|
|
});
|
|
|
|
//Spell displays set into an Array
|
|
on("change:repeating_NPCspell", () => {
|
|
getAttrs(["repeating_NPCspell_combat_type", "repeating_NPCspell_type", "repeating_NPCspell_range", "repeating_NPCspell_damage", "repeating_NPCspell_duration", "repeating_NPCspell_drain", "repeating_NPCspell_note", ], (v) =>{
|
|
var com = (v.repeating_NPCspell_combat_type);
|
|
var typ = "Type " + (v.repeating_NPCspell_type) + ", ";
|
|
var ran = (v.repeating_NPCspell_range) + ", ";
|
|
var dam = "Damage " + (v.repeating_NPCspell_damage) + ", ";
|
|
var dur = "Duration " + (v.repeating_NPCspell_duration) + ", ";
|
|
var not = (v.repeating_NPCspell_note);
|
|
dra = (v.repeating_NPCspell_drain > 0) ? ("F" + "+" + (v.repeating_NPCspell_drain) + ", ") :
|
|
((v.repeating_NPCspell_drain < 0) ? ("F" + (v.repeating_NPCspell_drain) + ", ") :
|
|
("F" + ", "));
|
|
display = (com === "Direct, Force ") ? (" (Direct) " + "[" + typ + ran + dam + dur + dra + not + "]") :
|
|
((com === "Indirect, Force ?{Force|}, AP -") ? (" (Indirect) " + "[" + typ + ran + dam + dur + dra + not + "]") :
|
|
(" [" + typ + ran + dur + dra + not + "]"));
|
|
setAttrs({repeating_NPCspell_spell: display});
|
|
});
|
|
});
|
|
|
|
//Complex Form displays set into an Array
|
|
on("change:repeating_form", () => {
|
|
getAttrs(["repeating_form_form_duration", "repeating_form_form_target", "repeating_form_form_fade", "repeating_form_form_note", ], (v) =>{
|
|
var tar = "Target " + (v.repeating_form_form_target) + ", ";
|
|
var dur = "Duration " + (v.repeating_form_form_duration) + ", ";
|
|
var not = (v.repeating_form_form_note);
|
|
|
|
fad = (v.repeating_form_form_fade > 0) ? ("L" + "+" + (v.repeating_form_form_fade) + ", ") :
|
|
((v.repeating_form_form_fade < 0) ? ("L" + (v.repeating_form_form_fade) + ", ") :
|
|
("L" + ", "));
|
|
|
|
var display = (" [" + tar + dur + fad + not + "]");
|
|
|
|
setAttrs({repeating_form_form: display});
|
|
});
|
|
});
|
|
|
|
//IC displays are set into an Array
|
|
on("change:repeating_IC", () => {
|
|
getAttrs(["attack", "data_processing", "repeating_IC_IC_limit", "repeating_IC_IC_attribute", "repeating_IC_IC_matrix", "repeating_IC_IC_note"], (v) =>{
|
|
var att = parseInt(v.attack) || 0;
|
|
var data = parseInt(v.data_processing) || 0;
|
|
var attr = (v.repeating_IC_IC_attribute);
|
|
var mat = (v.repeating_IC_IC_matrix);
|
|
var not = (v.repeating_IC_IC_note);
|
|
|
|
display = (v.repeating_IC_IC_limit === "@{data_processing}") ? (" (" + "[" + data + "]" + " vs. " + attr + " + " + mat + ", " + not + ")") : (" (" + "[" + att + "]" + " vs. " + attr + " + " + mat + ", " + not + ")");
|
|
|
|
setAttrs({repeating_IC_IC: display});
|
|
});
|
|
});
|
|
|
|
//IC Attack Dice & Condition Track
|
|
on("change:host_rating", () => {
|
|
getAttrs(["host_rating"], (v) => {
|
|
var hos = parseInt(v.host_rating) || 0;
|
|
var tot = 8 + Math.ceil(hos/2);
|
|
var atk = Math.min(hos + hos);
|
|
|
|
setAttrs({matrix: tot});
|
|
setAttrs({ic_attack: atk});
|
|
});
|
|
});
|
|
|
|
//Sprite Condition Track
|
|
on("change:level", () => {
|
|
getAttrs(["level"], (v) => {
|
|
var lev = parseInt(v.level) || 0;
|
|
var tot = 8 + Math.ceil(lev/2);
|
|
|
|
setAttrs({matrix: tot});
|
|
});
|
|
});
|
|
|
|
//REFACTORED Skills
|
|
['repeating_active','repeating_knowledge','repeating_language'].forEach(field => {
|
|
on(`change:${field}`, (eventinfo) => {
|
|
const source = eventinfo.sourceAttribute;
|
|
const type = eventinfo.sourceType;
|
|
|
|
if (source.includes("rating")) {
|
|
getAttrs([`${field}_rating`, `${field}_rating_modifier`], (v) => {
|
|
const bas = parseInt(v[`${field}_rating`]) || 0;
|
|
const mod = parseInt(v[`${field}_rating_modifier`]) || 0;
|
|
const tot = bas + mod;
|
|
|
|
setAttrs({
|
|
[`${field}_dicepool`]: tot,
|
|
[`${field}_display_rating`]: (mod === 0) ? bas : `${bas} (${tot})`
|
|
});
|
|
});
|
|
} else if (source.includes("attribute") && type === "player") {
|
|
getAttrs([`${source}`], (v) => {
|
|
const attribute = v[`${source}`].slice(2, -1);
|
|
const translation = getTranslationByKey(`${attribute}`);
|
|
setAttrs({
|
|
[`${field}_display_attribute`]: translation
|
|
});
|
|
});
|
|
} else if (source.includes("specialization") && type === "player") {
|
|
getAttrs([`${source}`], (v) => {
|
|
const bas = v[`${source}`];
|
|
const size = bas.length;
|
|
let display = (size > 0 && size <= 20) ? `(${bas})` : (size > 20 ) ? "(" + bas.slice(0, 20) + "...)" : " ";
|
|
|
|
setAttrs({
|
|
[`${field}_display_specialization`]: display
|
|
});
|
|
});
|
|
} else if (source.includes("skill")) {
|
|
getAttrs([`${source}`], (v) => {
|
|
const bas = v[`${source}`];
|
|
const size = bas.length;
|
|
let display = (size > 0 && size <= 20) ? bas : (size > 20 ) ? bas.slice(0, 20) + "..." : " ";
|
|
|
|
setAttrs({
|
|
[`${field}_display`]: display
|
|
});
|
|
});
|
|
} else if (source.includes("dicepool")) {
|
|
getAttrs([`${source}`, `${field}_skill`], (v) => {
|
|
const skill = v[`${field}_skill`];
|
|
let lowercase = skill.toLowerCase();
|
|
let removeGroup = (lowercase.includes("group")) ? lowercase.slice(0, -6) : lowercase;
|
|
let skillSet = (removeGroup.includes(" ")) ? removeGroup.replace(/ /g,"") : removeGroup;
|
|
|
|
setAttrs({
|
|
[`${skillSet}`]: v[`${source}`]
|
|
});
|
|
});
|
|
} else {
|
|
console.log(`Change to ${field} did not set attr`);
|
|
};
|
|
});
|
|
});
|
|
|
|
//Setting the Default attribute name for default skill
|
|
on("change:default_attribute", (eventinfo) => {
|
|
getAttrs(["default_display"], (v) => {
|
|
const display = (v.default_display);
|
|
let update = {};
|
|
|
|
//This sets a hidden input with the Attribute name so the roll template can use it to indicate what attribute was rolled
|
|
const attribute = eventinfo.newValue.slice(2, -1);
|
|
const translation = getTranslationByKey(`${attribute}`);
|
|
if (translation != display) {
|
|
setAttrs({
|
|
default_display: translation
|
|
});
|
|
};
|
|
});
|
|
});
|
|
|
|
//REFACTORED Range & MELEE UPDATES
|
|
['repeating_range','repeating_melee'].forEach(weap => {
|
|
on(`change:${weap}`, (eventInfo) => {
|
|
const source = eventInfo.sourceAttribute;
|
|
const newV = eventInfo.newValue;
|
|
const type = weap.slice(-5);
|
|
|
|
//Setting this here for now to ensure dicepool attribute gets updated. Remove in a future update
|
|
getAttrs([`${weap}_dicepool_modifier`, `${weap}_spec`], (v) => {
|
|
const mod = parseInt(v[`${weap}_dicepool_modifier`]) || 0;
|
|
const spec = parseInt(v[`${weap}_spec`]) || 0;
|
|
const tot = mod + spec;
|
|
|
|
setAttrs({[`${weap}_dicepool`]: tot});
|
|
});
|
|
|
|
if (source.includes('primary')) {
|
|
if (newV === 'primary') {
|
|
//Shared attributes names.
|
|
let array = ["dicepool", "weapon", "damage", "acc", "ap", "skill"];
|
|
//Add the range or melee specific ones
|
|
(type === "range") ? array.push("ammo", "ammo_max", "mode", "recoil") : array.push("reach");
|
|
//Add the repeating section to the begining of each attribute
|
|
let attrs = [];
|
|
for(var i=0; i < array.length; i++) {
|
|
attrs.push(`${weap}_` + array[i]);
|
|
};
|
|
|
|
getAttrs(attrs, (v) => {
|
|
let update = {};
|
|
//Primary weapon name does not follow the naming scheme.
|
|
update[`primary_${type}_weapon`] = v[`${weap}_weapon`];
|
|
|
|
_.each(array, (value) => {
|
|
if (value != undefined || value != "weapon") {
|
|
update[`primary_${type}_weapon_${value}`] = (value === "ammo_max") ? v[`${weap}_ammo`] : v[`${weap}_${value}`];
|
|
};
|
|
});
|
|
|
|
setAttrs(update);
|
|
});
|
|
|
|
//Set the other repeating_weapon primary flags to 0 aka unchecked
|
|
getSectionIDs(`${weap}`, function(ids) {
|
|
let IDs = [];
|
|
let update = {};
|
|
|
|
for(var i=0; i < ids.length; i++) {
|
|
IDs.push(`${weap}_` + ids[i] + "_primary");
|
|
};
|
|
|
|
IDs.forEach(id => {
|
|
if (id != source) {
|
|
update[`${id}`] = 0;
|
|
};
|
|
});
|
|
|
|
setAttrs(update);
|
|
});
|
|
};
|
|
} else if (source.includes('dicepool') || source.includes('weapon') || source.includes('damage') || source.includes('acc') || source.includes('ap') || source.includes('skill') || source.includes('reach') || source.includes('ammo') || source.includes('mode') || source.includes('recoil')) {
|
|
getAttrs([`${weap}_primary`, `${source}`], (v) => {
|
|
if (v[`${weap}_primary`] === 'primary') {
|
|
let update = {};
|
|
//This whole process needs refactored in the future. Its working for now.
|
|
if (source.includes('ammo')) {
|
|
update[`primary_${type}_weapon_ammo`] = v[`${source}`];
|
|
update[`primary_${type}_weapon_ammo_max`] = v[`${source}`];
|
|
} else {
|
|
console.log(eventinfo);
|
|
};
|
|
|
|
|
|
/* switch (true) {
|
|
case /weapon/.test(source): update[`primary_${type}_weapon`] = v[`${source}`]; break;
|
|
case /damage/.test(source): update[`primary_${type}_weapon_damage`] = v[`${source}`]; break;
|
|
case /dicepool/.test(source): update[`primary_${type}_weapon_dicepool`] = v[`${source}`]; break;
|
|
case /acc/.test(source): update[`primary_${type}_weapon_acc`] = v[`${source}`]; break;
|
|
case /ap/.test(source): update[`primary_${type}_weapon_ap`] = v[`${source}`]; break;
|
|
case /skill/.test(source): update[`primary_${type}_weapon_skill`] = v[`${source}`]; break;
|
|
case /reach/.test(source): update[`primary_${type}_weapon_reach`] = v[`${source}`]; break;
|
|
case /ammo/.test(source): update[`primary_${type}_weapon_ammo`] = v[`${source}`], update[`primary_${type}_weapon_ammo_max`] = v[`${source}`]; break;
|
|
case /mode/.test(source): update[`primary_${type}_weapon_mode`] = v[`${source}`]; break;
|
|
case /recoil/.test(source): update[`primary_${type}_weapon_recoil`] = v[`${source}`]; break;
|
|
default: console.log(`Source ${source} was invalid`);} */
|
|
|
|
setAttrs(update);
|
|
};
|
|
});
|
|
} else {
|
|
console.log("Change was not relevant.");
|
|
};
|
|
});
|
|
});
|
|
|
|
//PC SPELLS/PREPS/RITUALS
|
|
['repeating_spell','repeating_preps','repeating_ritual'].forEach(field => {
|
|
// Attach listener
|
|
on(`change:${field}`, (eventInfo) => {
|
|
const source = eventInfo.sourceAttribute;
|
|
|
|
if (source.includes("dicepool") || source.includes("specialization")) {
|
|
getAttrs([`${field}_spec`, `${field}_dicepool_modifier`], (v) => {
|
|
const spec = parseInt(v[`${field}_spec`]) || 0;
|
|
const mod = parseInt(v[`${field}_dicepool_modifier`]) || 0;
|
|
const tot = spec + mod;
|
|
|
|
setAttrs({
|
|
[`${field}_dicepool`]: tot
|
|
});
|
|
});
|
|
} else {
|
|
console.log(`Change to ${field} did not set attr`);
|
|
};
|
|
});
|
|
});
|
|
|
|
//Repeating IDs & Lifestyles Section Display
|
|
on("change:repeating_lifestyle", () => {
|
|
getAttrs(["repeating_lifestyle_name", "repeating_lifestyle_lifestyle", "repeating_lifestyle_funds", "repeating_lifestyle_licenses", "repeating_lifestyle_display"], (v) => {
|
|
var name = ((v.repeating_lifestyle_name).length > 0 && (v.repeating_lifestyle_name).length <= 14) ? (v.repeating_lifestyle_name) :
|
|
((v.repeating_lifestyle_name).length > 14 ) ? (v.repeating_lifestyle_name).slice(0,14) + "..." :
|
|
"";
|
|
|
|
var life = ((v.repeating_lifestyle_lifestyle).length > 0 && (v.repeating_lifestyle_lifestyle).length <= 14) ? (v.repeating_lifestyle_lifestyle) :
|
|
((v.repeating_lifestyle_lifestyle).length > 14 ) ? (v.repeating_lifestyle_lifestyle).slice(0,14) + "..." :
|
|
"";
|
|
|
|
var funds = ((v.repeating_lifestyle_funds).length > 0 && (v.repeating_lifestyle_funds).length <= 14) ? (v.repeating_lifestyle_funds) :
|
|
((v.repeating_lifestyle_funds).length > 14 ) ? (v.repeating_lifestyle_funds).slice(0,14) + "..." :
|
|
"";
|
|
|
|
var lice = ((v.repeating_lifestyle_licenses).length > 0 && (v.repeating_lifestyle_licenses).length <= 14) ? (v.repeating_lifestyle_licenses) :
|
|
((v.repeating_lifestyle_licenses).length > 14 ) ? (v.repeating_lifestyle_licenses).slice(0,14) + "..." :
|
|
"";
|
|
|
|
var display = name + " / " + life + " / " + funds + " / " + lice;
|
|
|
|
setAttrs({repeating_lifestyle_display: display})
|
|
|
|
});
|
|
});
|
|
|
|
//Repeating contacts for PC sheet
|
|
on("change:repeating_contacts", () => {
|
|
getAttrs(["repeating_contacts_name"], (v) => {
|
|
const name = (v.repeating_contacts_name);
|
|
|
|
((name).length > 0 && (name).length <= 30) ? setAttrs({repeating_contacts_display: (name)}) :
|
|
((name).length > 30) ? setAttrs({repeating_contacts_display: (name).slice(0, 30) + "..."}) :
|
|
setAttrs({repeating_contacts_display: " "});
|
|
});
|
|
});
|
|
|
|
|
|
//Cyberdeck Calculations
|
|
['attack', 'sleaze', 'data_processing', 'firewall'].forEach(attr => {
|
|
on(`change:${attr}_base change:${attr}_modifier change:${attr}_temp`, () => {
|
|
update_common_rolls([`${attr}_base`, `${attr}_modifier`, `${attr}_temp`]);
|
|
});
|
|
});
|
|
|
|
//Vehicle displays for PCs
|
|
on("change:repeating_vehicle:name", () =>{
|
|
getAttrs(["repeating_vehicle_name", "repeating_vehicle_display_name"], (v) => {
|
|
const name = (v.repeating_vehicle_name);
|
|
const dis = (v.repeating_vehicle_display_name);
|
|
let update = {};
|
|
|
|
let displayName = ((name).length > 0 && (name).length <= 24) ? name : ((name).length > 24 ) ? (name).slice(0, 24) + "..." : " ";
|
|
if (dis != displayName) {update["repeating_vehicle_display_name"] = displayName};
|
|
|
|
setAttrs(update);
|
|
});
|
|
});
|
|
|
|
['acceleration', 'armor', 'body', 'data_processing', 'handling', 'pilot', 'sensor','speed'].forEach(attr => {
|
|
// Attach listener
|
|
on(`change:repeating_vehicle:${attr}_base change:repeating_vehicle:${attr}_modifier change:repeating_vehicle:${attr}_temp`, () => {
|
|
// Load attribute values
|
|
getAttrs([`repeating_vehicle_${attr}_base`, `repeating_vehicle_${attr}_modifier`, `repeating_vehicle_${attr}_temp`], (v) => {
|
|
// Do some math to calculate the total
|
|
const bas = parseInt(v[`repeating_vehicle_${attr}_base`]) || 0;
|
|
const mod = parseInt(v[`repeating_vehicle_${attr}_modifier`]) || 0;
|
|
const tem = parseInt(v[`repeating_vehicle_${attr}_temp`]) || 0;
|
|
const bon = mod + tem;
|
|
const stat = bas + bon;
|
|
|
|
// Update the finalized total
|
|
setAttrs({
|
|
[attr]: stat,
|
|
[`repeating_vehicle_display_${attr}`]: bon === 0 ? bas : `${bas} (${stat})`
|
|
});
|
|
});
|
|
});
|
|
});
|
|
|
|
|
|
</script>
|