[Zafir] Updates from player feedback (#7119)
* [Zafir] Swap between character sheet and GM toolkit * [Zafir] Fixing up attack blocks, plus splitting gm tools into tabs * [Zafir] Hooked up attacks, enemy unit selection, and some styling * [Zafir] More advanced selected enemy box formatting * [Zafir] Combat attribute calculator * [Zafir] Changing will attack crit success text * [Zafir] Added dodge value to GM units. Changed layout of GM units to accomodate. * [Zafir] Condensed upper sheet option, show focus option * [Zafir] Added overwatch field for attacks, changed some header verbiage * [Zafir] Character sheet translation * [Zafir] Adding translations for GM's Tools and Roll Templates * [Zafir] Added translation file * [Zafir] Added grenade attack to GM's tools * [Zafir] Added Grenade Attack * [Zafir] Added test for panic roller, placeholders for text inputs, and default values for number inputs * [Zafir] Changed layout of GM units editor * [Zafir] Made attacks addable and removeable * [Zafir] Reflected multiple attacks on the GM combat panel * [Zafir] Adding an option to change the primary weapon to a special equipment entry * [Zafir] Adding an option to show a larger textbox for Origin * [Zafir] Converting Proficiencies and Languages to a textarea * [Zafir] Improving ability activation by automatically adding roll entries into the combat panel, Will Actions * [Zafir] Added helper buttons to abilities to set cooldowns and use charges * [Zafir] Hooking up weapon attack abilities * [Zafir] Updating abilities if they're on cooldown or out of charges * [Zafir] Fixing some bugs with cooldown/charge tracking and changing the buttons for them * [Zafir] Added area of effect ability rolls * [Zafir] Showing number of charges remaining on the abilities Use Charge button * [Zafir] Added concealment tracker * [Zafir] Round start button that decrements cooldowns * [Zafir] Combat Initializer button * [Zafir] Renaming Initialize Combat button * [Zafir] Added a convenient ammo decrement and reload button on the primary weapon attack * [Zafir] Cleanup around attack buttons and states * [Zafir] Layout change to Status * [Zafir] Focus points symbol * [Zafir] More symbols * [Zafir] Cleaning up condensed view, plus new icons * [Zafir] Zmail tooltip * [Zafir] Moving Usable Items to their own tab. Added usable abilities to the combat panel * [Zafir] Quick bugfix with the new usable tab in combat * [Zafir] Adding icons to the Charges and Cooldown tracker * [Zafir] Added usable items with charges * [Zafir] Adding Usable grenade/heavy weapon attacks * [Zafir] Hooking up special ammo * [Zafir] better styling for special ammo * [Zafir] Fixing a bug with usable abilities that have both charges and cooldown * [Zafir] Turning spellcheck off of the proficiencies and language text areas * [Zafir] Charactermancer WIP * [Zafir] Charactermancer WIP * [Zafir] Charactermancer Species/Origin * [Zafir] WIP Charactermancer Equipment * [Zafir] Inventory, Random rolls, random insaan names * [Zafir] Charactermancer is done * [Zafir] Charmancer when all values are null or bad * Temporarily disabling charactermancer * Fixing the Hide Focus Points bug * Fixing up Attacks for GM Tools * Add abilities to GM units * [Zafir] Fixed a bug with enemy attack aim dice * [Zafir] Setting up initial HP, AP, and SP values including setting up the proper token bars for them * [Zafir] Adding max AP and SP values so that players have more control over their token bars * [Zafir] Adding improved Use Item and Use Ability buttons that output to chat * [Zafir] Adding selected bool to gm units and showing it in the list * [Zafir] Separating out the settings into their own tab, and adding notes to the Misc tab * [Zafir] Fixing a bug with attacks 1 and 2 for GM units * Adding font hosting * [Zafir] Actually reference google fonts * [Zafir] Adding dice pool descriptions and styles to roll templates * [Zafir] Fix a minor text error with secondary weapon roll
This commit is contained in:
@@ -279,5 +279,7 @@
|
||||
"Use Ability:":"Use Ability:",
|
||||
"Use Item:":"Use Item:",
|
||||
"Use Ability":"Use Ability",
|
||||
"Use Item":"Use Item"
|
||||
"Use Item":"Use Item",
|
||||
"Notes":"Notes",
|
||||
"CRITICAL SUCCESS!":"CRITICAL SUCCESS!"
|
||||
}
|
||||
|
||||
+94
-3
@@ -1,9 +1,49 @@
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Montserrat';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
font-display: swap;
|
||||
src: local('Montserrat Italic'), local('Montserrat-Italic'), url(https://fonts.gstatic.com/s/montserrat/v14/JTUQjIg1_i6t8kCHKm459WxRyS7m.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
|
||||
}
|
||||
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Montserrat';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
font-display: swap;
|
||||
src: local('Montserrat Bold Italic'), local('Montserrat-BoldItalic'), url(https://fonts.gstatic.com/s/montserrat/v14/JTUPjIg1_i6t8kCHKm459WxZcgvz_PZw.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
|
||||
}
|
||||
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Montserrat';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-display: swap;
|
||||
src: local('Montserrat Regular'), local('Montserrat-Regular'), url(https://fonts.gstatic.com/s/montserrat/v14/JTUSjIg1_i6t8kCHKm459Wlhyw.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
|
||||
}
|
||||
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Montserrat';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
font-display: swap;
|
||||
src: local('Montserrat Bold'), local('Montserrat-Bold'), url(https://fonts.gstatic.com/s/montserrat/v14/JTURjIg1_i6t8kCHKm45_dJE3gnD_g.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
|
||||
}
|
||||
|
||||
/* Set the min-width and max-width so that when the window is resized the character sheet stays the same */
|
||||
.charsheet {
|
||||
background-color: #fff;
|
||||
min-width: 900px;
|
||||
max-width: 900px;
|
||||
font-family: 'Montserrat';
|
||||
font-family: 'Montserrat', 'Arial';
|
||||
}
|
||||
|
||||
/* Universal styling applied to all elements of these types */
|
||||
@@ -257,6 +297,11 @@ button.repcontrol_edit {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
button.sheet-selected {
|
||||
background-color: #852419;
|
||||
color: white;
|
||||
}
|
||||
|
||||
.sheet-attacklabel {
|
||||
float: right;
|
||||
/*background-color: #EEE;*/
|
||||
@@ -343,6 +388,14 @@ button[type=roll]:active {
|
||||
background-color: #CCC;
|
||||
}
|
||||
|
||||
button.sheet-selected:hover {
|
||||
background-color: #963126;
|
||||
}
|
||||
|
||||
button.sheet-selected:active {
|
||||
background-color: #a83e32;
|
||||
}
|
||||
|
||||
button:disabled,
|
||||
button[disabled] {
|
||||
color: #999;
|
||||
@@ -928,6 +981,7 @@ input[type=checkbox] {
|
||||
.sheet-res,
|
||||
.sheet-inv,
|
||||
.sheet-oth,
|
||||
.sheet-set,
|
||||
.sheet-epw,
|
||||
.sheet-esw,
|
||||
.sheet-eba,
|
||||
@@ -960,7 +1014,8 @@ input[type=checkbox] {
|
||||
.sheet-tabstoggle[value="eqp"] ~ div.sheet-eqp,
|
||||
.sheet-tabstoggle[value="res"] ~ div.sheet-res,
|
||||
.sheet-tabstoggle[value="inv"] ~ div.sheet-inv,
|
||||
.sheet-tabstoggle[value="oth"] ~ div.sheet-oth {
|
||||
.sheet-tabstoggle[value="oth"] ~ div.sheet-oth,
|
||||
.sheet-tabstoggle[value="set"] ~ div.sheet-set {
|
||||
display: block;
|
||||
}
|
||||
|
||||
@@ -1044,6 +1099,7 @@ button.sheet-eqpbtn,
|
||||
button.sheet-resbtn,
|
||||
button.sheet-invbtn,
|
||||
button.sheet-othbtn,
|
||||
button.sheet-setbtn,
|
||||
button.sheet-gmcombatbtn,
|
||||
button.sheet-gmunitsbtn {
|
||||
background-color: #EEE;
|
||||
@@ -1068,6 +1124,7 @@ button.sheet-eqpbtn:hover,
|
||||
button.sheet-resbtn:hover,
|
||||
button.sheet-invbtn:hover,
|
||||
button.sheet-othbtn:hover,
|
||||
button.sheet-setbtn:hover,
|
||||
button.sheet-epwbtn:hover,
|
||||
button.sheet-eswbtn:hover,
|
||||
button.sheet-ebabtn:hover,
|
||||
@@ -1091,6 +1148,7 @@ button.sheet-eqpbtn:active,
|
||||
button.sheet-resbtn:active,
|
||||
button.sheet-invbtn:active,
|
||||
button.sheet-othbtn:active,
|
||||
button.sheet-setbtn:active,
|
||||
button.sheet-epwbtn:active,
|
||||
button.sheet-eswbtn:active,
|
||||
button.sheet-ebabtn:active,
|
||||
@@ -1114,6 +1172,7 @@ button.sheet-gmunitsbtn:active {
|
||||
.sheet-tabstoggle[value="res"] ~ div button.sheet-resbtn,
|
||||
.sheet-tabstoggle[value="inv"] ~ div button.sheet-invbtn,
|
||||
.sheet-tabstoggle[value="oth"] ~ div button.sheet-othbtn,
|
||||
.sheet-tabstoggle[value="set"] ~ div button.sheet-setbtn,
|
||||
.sheet-tabstoggle[value="gmcombat"] ~ div button.sheet-gmcombatbtn,
|
||||
.sheet-tabstoggle[value="gmunits"] ~ div button.sheet-gmunitsbtn {
|
||||
background-color: white;
|
||||
@@ -1230,7 +1289,7 @@ button[type=roll].sheet-btn::before {
|
||||
padding-top: 6px;
|
||||
padding-bottom: 8px;
|
||||
background-color: white;
|
||||
font-family: "Montserrat"
|
||||
font-family: "Montserrat", "Arial"
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-zafir div.sheet-template-nameplate,
|
||||
@@ -1545,6 +1604,38 @@ button[type=roll].sheet-btn::before {
|
||||
border: 2px solid #AAA;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-zafir .sheet-aimroll .inlinerollresult,
|
||||
.sheet-rolltemplate-zafirwillattack .sheet-aimroll .inlinerollresult,
|
||||
.sheet-rolltemplate-zafirskillaction .sheet-aimroll .inlinerollresult,
|
||||
.sheet-rolltemplate-zafirdodge .sheet-aimroll .inlinerollresult,
|
||||
.sheet-rolltemplate-zafirgrenade .sheet-aimroll .inlinerollresult {
|
||||
border: 2px solid #a83131;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-zafir .sheet-critroll .inlinerollresult,
|
||||
.sheet-rolltemplate-zafirwillattack .sheet-critroll .inlinerollresult,
|
||||
.sheet-rolltemplate-zafirskillaction .sheet-critroll .inlinerollresult,
|
||||
.sheet-rolltemplate-zafirdodge .sheet-critroll .inlinerollresult,
|
||||
.sheet-rolltemplate-zafirgrenade .sheet-critroll .inlinerollresult {
|
||||
border: 2px solid #d6c44b;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-zafir .sheet-resistroll .inlinerollresult,
|
||||
.sheet-rolltemplate-zafirwillattack .sheet-resistroll .inlinerollresult,
|
||||
.sheet-rolltemplate-zafirskillaction .sheet-resistroll .inlinerollresult,
|
||||
.sheet-rolltemplate-zafirdodge .sheet-resistroll .inlinerollresult,
|
||||
.sheet-rolltemplate-zafirgrenade .sheet-resistroll .inlinerollresult {
|
||||
border: 2px solid #6e2999;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-zafir .sheet-dodgeroll .inlinerollresult,
|
||||
.sheet-rolltemplate-zafirwillattack .sheet-dodgeroll .inlinerollresult,
|
||||
.sheet-rolltemplate-zafirskillaction .sheet-dodgeroll .inlinerollresult,
|
||||
.sheet-rolltemplate-zafirdodge .sheet-dodgeroll .inlinerollresult,
|
||||
.sheet-rolltemplate-zafirgrenade .sheet-dodgeroll .inlinerollresult {
|
||||
border: 2px solid #009eda;
|
||||
}
|
||||
|
||||
/* // Charactermancer /////////////////////////////////////////// */
|
||||
.sheet-popup-bg {
|
||||
position: absolute;
|
||||
|
||||
+159
-109
@@ -145,6 +145,7 @@
|
||||
<button type="action" name="act_res" class="resbtn"><span data-i18n="Responsibilities">Responsibilities</span></button>
|
||||
<button type="action" name="act_inv" class="invbtn"><span data-i18n="Inventory">Inventory</span></button>
|
||||
<button type="action" name="act_oth" class="othbtn"><span data-i18n="Misc">Misc</span></button>
|
||||
<button type="action" name="act_set" class="setbtn"><span data-i18n="Settings">Settings</span></button>
|
||||
</div>
|
||||
<br />
|
||||
|
||||
@@ -194,14 +195,14 @@
|
||||
<input type="hidden" class="hideifzero" name="attr_wpneedreload" value="0"/>
|
||||
<button type="action" name="act_reloadprimary" class="btn"><span style="font-family:Pictos">1</span> <span data-i18n="Reload">Reload</span></button>
|
||||
<input type="hidden" class="hideifone" name="attr_wpneedreload" value="0"/>
|
||||
<button type="roll" name="roll_attackprimary" class="btn" value="&{template:zafir} {{name=@{wpname}}} {{aim=[[(@{wpattackaimdice})d6>5]]}} {{crit=[[(@{wpattackcritdice})d6>6]]}} {{damage=[[(@{wpattackdamage})]]}} {{critdmg=[[(@{wpattackdamage}) + (@{wpcritdmg})]]}} {{notes=@{wpnotes}}} {{ammo=@{specialammoeffect}}} {{player=@{char_name}}}"><span data-i18n="Attack">Attack</span></button>
|
||||
<button type="roll" name="roll_attackprimary" class="btn" value="&{template:zafir} {{name=@{wpname}}} {{aim=[[ [Aim Dice] (@{wpattackaimdice})d6>5]]}} {{crit=[[ [Crit Dice] (@{wpattackcritdice})d6>6]]}} {{damage=[[ [Damage] (@{wpattackdamage})]]}} {{critdmg=[[(@{wpattackdamage}) + (@{wpcritdmg})]]}} {{notes=@{wpnotes}}} {{ammo=@{specialammoeffect}}} {{player=@{char_name}}}"><span data-i18n="Attack">Attack</span></button>
|
||||
<label style="width:110px"><span name="attr_wpname"></span></label>
|
||||
<label>+<span name="attr_wpattackaimdice"></span> <span data-i18n="aim">aim</span> +<span name="attr_wpattackcritdice"></span> <span data-i18n="crit">crit</span> <span class="tooltip"><span name="attr_wpattackdamage"></span> (+<span name="attr_wpcritdmg"></span>)<span class="tooltiptext">Damage</span></span></label>
|
||||
</div>
|
||||
</div>
|
||||
<input type="hidden" class="valuehider" name="attr_wsname" value="">
|
||||
<div class="attack clearfix">
|
||||
<button type="roll" name="roll_attacksecondary" class="btn" value="&{template:zafir} {{name=@{wsname}}} {{aim=[[(@{wsattackaimdice})d6>5]]}} {{crit=[[(@{wsattackcritdice})d6>6]]}} {{damage=[[(@{wsattackdamage})]]}} {{critdmg=[[(@{wsattackdamage}) + (@{wscritdmg})]]}} {{notes=@{wsnotes}}} {{player=@{char_name}}}"><span data-i18n="Attack">Attack</span></button>
|
||||
<button type="roll" name="roll_attacksecondary" class="btn" value="&{template:zafir} {{name=@{wsname}}} {{aim=[[ [Aim Dice] (@{wsattackaimdice})d6>5]]}} {{crit=[[ [Critical] (@{wsattackcritdice})d6>6]]}} {{damage=[[(@{wsattackdamage})]]}} {{critdmg=[[(@{wsattackdamage}) + (@{wscritdmg})]]}} {{notes=@{wsnotes}}} {{player=@{char_name}}}"><span data-i18n="Attack">Attack</span></button>
|
||||
<label style="width:110px"><span name="attr_wsname"></span></label>
|
||||
<label>+<span name="attr_wsattackaimdice"></span> <span data-i18n="aim">aim</span> +<span name="attr_wsattackcritdice"></span> <span data-i18n="crit">crit</span> <span class="tooltip"><span name="attr_wsattackdamage"></span> (+<span name="attr_wscritdmg"></span>)<span class="tooltiptext">Damage</span></span></label>
|
||||
</div>
|
||||
@@ -252,17 +253,17 @@
|
||||
<span>
|
||||
<input type="hidden" class="tabstoggle" name="attr_aablatkweap" />
|
||||
<div class="nothing">
|
||||
<button type="roll" name="roll_attackability" class="btn" value="&{template:zafir} {{name=@{aablname}}} {{aim=[[(@{aablatkrollaimdice})d6>5]]}} {{crit=[[(@{aablatkrollcritdice})d6>6]]}} {{damage=[[(@{aablatkrolldamage})]]}} {{critdmg=[[(@{aablatkrolldamage}) + (@{aablatkrollcritdamage})]]}} {{notes=@{aableffect}}} {{player=@{char_name}}}">
|
||||
<button type="roll" name="roll_attackability" class="btn" value="&{template:zafir} {{name=@{aablname}}} {{aim=[[ [Aim Dice] (@{aablatkrollaimdice})d6>5]]}} {{crit=[[ [Crit Dice] (@{aablatkrollcritdice})d6>6]]}} {{damage=[[(@{aablatkrolldamage})]]}} {{critdmg=[[(@{aablatkrolldamage}) + (@{aablatkrollcritdamage})]]}} {{notes=@{aableffect}}} {{player=@{char_name}}}">
|
||||
<span data-i18n="Attack">Attack</span>
|
||||
</button>
|
||||
</div>
|
||||
<div class="primaryweapon">
|
||||
<button type="roll" name="roll_attackability" class="btn" value="&{template:zafir} {{name=@{aablname}}} {{aim=[[(@{aablatkrollaimdice})d6>5]]}} {{crit=[[(@{aablatkrollcritdice})d6>6]]}} {{damage=[[(@{aablatkrolldamage})]]}} {{critdmg=[[(@{aablatkrolldamage}) + (@{aablatkrollcritdamage})]]}} {{notes=@{wpnotes}}} {{ammo=@{specialammoeffect}}} {{player=@{char_name}}}">
|
||||
<button type="roll" name="roll_attackability" class="btn" value="&{template:zafir} {{name=@{aablname}}} {{aim=[[ [Aim Dice] (@{aablatkrollaimdice})d6>5]]}} {{crit=[[ [Crit Dice] (@{aablatkrollcritdice})d6>6]]}} {{damage=[[(@{aablatkrolldamage})]]}} {{critdmg=[[(@{aablatkrolldamage}) + (@{aablatkrollcritdamage})]]}} {{notes=@{wpnotes}}} {{ammo=@{specialammoeffect}}} {{player=@{char_name}}}">
|
||||
<span data-i18n="Attack">Attack</span>
|
||||
</button>
|
||||
</div>
|
||||
<div class="secondaryweapon">
|
||||
<button type="roll" name="roll_attackability" class="btn" value="&{template:zafir} {{name=@{aablname}}} {{aim=[[(@{aablatkrollaimdice})d6>5]]}} {{crit=[[(@{aablatkrollcritdice})d6>6]]}} {{damage=[[(@{aablatkrolldamage})]]}} {{critdmg=[[(@{aablatkrolldamage}) + (@{aablatkrollcritdamage})]]}} {{notes=@{wsnotes}}} {{player=@{char_name}}}">
|
||||
<button type="roll" name="roll_attackability" class="btn" value="&{template:zafir} {{name=@{aablname}}} {{aim=[[ [Aim Dice] (@{aablatkrollaimdice})d6>5]]}} {{crit=[[ [Crit Dice] (@{aablatkrollcritdice})d6>6]]}} {{damage=[[(@{aablatkrolldamage})]]}} {{critdmg=[[(@{aablatkrolldamage}) + (@{aablatkrollcritdamage})]]}} {{notes=@{wsnotes}}} {{player=@{char_name}}}">
|
||||
<span data-i18n="Attack">Attack</span>
|
||||
</button>
|
||||
</div>
|
||||
@@ -277,7 +278,7 @@
|
||||
</div>
|
||||
|
||||
<div class="customattack attack clearfix">
|
||||
<button type="roll" name="roll_attackcustom" class="btn" value="&{template:zafir} {{name=@{custattackname}}} {{aim=[[(@{custattackaimdice})d6>5]]}} {{crit=[[(@{custattackcritdice})d6>6]]}} {{damage=[[(@{custattackdamage})]]}} {{critdmg=[[(@{custattackdamage}) + (@{custcritdamage})]]}} {{player=@{char_name}}}"><span data-i18n="Attack">Attack</span></button>
|
||||
<button type="roll" name="roll_attackcustom" class="btn" value="&{template:zafir} {{name=@{custattackname}}} {{aim=[[ [Aim Dice] (@{custattackaimdice})d6>5]]}} {{crit=[[ [Crit Dice] (@{custattackcritdice})d6>6]]}} {{damage=[[(@{custattackdamage})]]}} {{critdmg=[[(@{custattackdamage}) + (@{custcritdamage})]]}} {{player=@{char_name}}}"><span data-i18n="Attack">Attack</span></button>
|
||||
<input type="text" name="attr_custattackname" spellcheck="false" placeholder="Custom Atk" style="width:110px;margin-right:10px;">
|
||||
<label>+<span name="attr_custattackaimdice"></span> <span data-i18n="aim">aim</span> +<span name="attr_custattackcritdice"></span> <span data-i18n="crit">crit</span> <span class="tooltip"><input type="text" name="attr_custattackdamage" spellcheck="false" value="0"><span class="tooltiptext">Damage</span></span><span class="tooltip">(+<input type="number" name="attr_custcritdamage" value="0">)<span class="tooltiptext" data-i18n="Crit Damage">Crit Damage</span></span></label>
|
||||
</div>
|
||||
@@ -309,7 +310,7 @@
|
||||
<button type="action" name="act_usecharge" class="btn tooltip" style="width:12px;padding-left:6px;padding-right:6px;">
|
||||
<span style="font-family:Pictos">}</span>
|
||||
<span class="tooltiptext" style="left:2px;" data-i18n="Charges Item Tooltip"><b>Use Charge</b><hr />Expend item charge</span></button>
|
||||
<button type="roll" name="roll_gatk" class="btn" value="&{template:zafirgrenade} {{name=@{itemname}}} {{targets=@{gtargets}}} {{targetsroll=[[@{gtargets}]]}} {{crit1=[[(@{itemcritdice})d6>6]]}} {{damage1=[[@{itemdamage}]]}} {{critdmg1=[[@{itemdamage} + @{itemcritdmg}]]}} {{crit2=[[(@{itemcritdice})d6>6]]}} {{damage2=[[@{itemdamage}]]}} {{critdmg2=[[@{itemdamage} + @{itemcritdmg}]]}} {{crit3=[[(@{itemcritdice})d6>6]]}} {{damage3=[[@{itemdamage}]]}} {{critdmg3=[[@{itemdamage} + @{itemcritdmg}]]}} {{crit4=[[(@{itemcritdice})d6>6]]}} {{damage4=[[@{itemdamage}]]}} {{critdmg4=[[@{itemdamage} + @{itemcritdmg}]]}} {{crit5=[[(@{itemcritdice})d6>6]]}} {{damage5=[[@{itemdamage}]]}} {{critdmg5=[[@{itemdamage} + @{itemcritdmg}]]}} {{notes=Breaking: @{itembreaking}, @{itemeffects}}} {{player=@{char_name}}}">
|
||||
<button type="roll" name="roll_gatk" class="btn" value="&{template:zafirgrenade} {{name=@{itemname}}} {{targets=@{gtargets}}} {{targetsroll=[[@{gtargets}]]}} {{crit1=[[ [Crit Dice] (@{itemcritdice})d6>6]]}} {{damage1=[[ [Damage] @{itemdamage}]]}} {{critdmg1=[[ [Damage] @{itemdamage} + @{itemcritdmg}]]}} {{crit2=[[ [Crit Dice] (@{itemcritdice})d6>6]]}} {{damage2=[[ [Damage] @{itemdamage}]]}} {{critdmg2=[[ [Damage] @{itemdamage} + @{itemcritdmg}]]}} {{crit3=[[ [Crit Dice] (@{itemcritdice})d6>6]]}} {{damage3=[[ [Damage] @{itemdamage}]]}} {{critdmg3=[[ [Damage] @{itemdamage} + @{itemcritdmg}]]}} {{crit4=[[ [Crit Dice] (@{itemcritdice})d6>6]]}} {{damage4=[[ [Damage] @{itemdamage}]]}} {{critdmg4=[[ [Damage] @{itemdamage} + @{itemcritdmg}]]}} {{crit5=[[ [Crit Dice] (@{itemcritdice})d6>6]]}} {{damage5=[[ [Damage] @{itemdamage}]]}} {{critdmg5=[[ [Damage] @{itemdamage} + @{itemcritdmg}]]}} {{notes=Breaking: @{itembreaking}, @{itemeffects}}} {{player=@{char_name}}}">
|
||||
<span data-i18n="Throw Grenade">Throw Grenade</span>
|
||||
</button>
|
||||
</span>
|
||||
@@ -327,7 +328,7 @@
|
||||
<button type="action" name="act_usecharge" class="btn tooltip" style="width:12px;padding-left:6px;padding-right:6px;">
|
||||
<span style="font-family:Pictos">}</span>
|
||||
<span class="tooltiptext" style="left:2px;" data-i18n="Charges Item Tooltip"><b>Use Charge</b><hr />Expend item charge</span></button>
|
||||
<button type="roll" name="roll_gatk" class="btn" value="&{template:zafirgrenade} {{name=@{itemname}}} {{targets=@{gtargets}}} {{targetsroll=[[@{gtargets}]]}} {{crit1=[[(@{itemcritdice})d6>6]]}} {{damage1=[[@{itemdamage}]]}} {{critdmg1=[[@{itemdamage} + @{itemcritdmg}]]}} {{crit2=[[(@{itemcritdice})d6>6]]}} {{damage2=[[@{itemdamage}]]}} {{critdmg2=[[@{itemdamage} + @{itemcritdmg}]]}} {{crit3=[[(@{itemcritdice})d6>6]]}} {{damage3=[[@{itemdamage}]]}} {{critdmg3=[[@{itemdamage} + @{itemcritdmg}]]}} {{crit4=[[(@{itemcritdice})d6>6]]}} {{damage4=[[@{itemdamage}]]}} {{critdmg4=[[@{itemdamage} + @{itemcritdmg}]]}} {{crit5=[[(@{itemcritdice})d6>6]]}} {{damage5=[[@{itemdamage}]]}} {{critdmg5=[[@{itemdamage} + @{itemcritdmg}]]}} {{notes=Breaking: @{itembreaking}, @{itemeffects}}} {{player=@{char_name}}}">
|
||||
<button type="roll" name="roll_gatk" class="btn" value="&{template:zafirgrenade} {{name=@{itemname}}} {{targets=@{gtargets}}} {{targetsroll=[[@{gtargets}]]}} {{crit1=[[ [Crit Dice] (@{itemcritdice})d6>6]]}} {{damage1=[[ [Damage] @{itemdamage}]]}} {{critdmg1=[[ [Damage] @{itemdamage} + @{itemcritdmg}]]}} {{crit2=[[ [Crit Dice] (@{itemcritdice})d6>6]]}} {{damage2=[[ [Damage] @{itemdamage}]]}} {{critdmg2=[[ [Damage] @{itemdamage} + @{itemcritdmg}]]}} {{crit3=[[ [Crit Dice] (@{itemcritdice})d6>6]]}} {{damage3=[[ [Damage] @{itemdamage}]]}} {{critdmg3=[[ [Damage] @{itemdamage} + @{itemcritdmg}]]}} {{crit4=[[ [Crit Dice] (@{itemcritdice})d6>6]]}} {{damage4=[[ [Damage] @{itemdamage}]]}} {{critdmg4=[[ [Damage] @{itemdamage} + @{itemcritdmg}]]}} {{crit5=[[ [Crit Dice] (@{itemcritdice})d6>6]]}} {{damage5=[[ [Damage] @{itemdamage}]]}} {{critdmg5=[[ [Damage] @{itemdamage} + @{itemcritdmg}]]}} {{notes=Breaking: @{itembreaking}, @{itemeffects}}} {{player=@{char_name}}}">
|
||||
<span data-i18n="Use Heavy Weapon">Use Heavy Weapon</span>
|
||||
</button>
|
||||
</span>
|
||||
@@ -339,7 +340,7 @@
|
||||
|
||||
<div class="customattack attack clearfix">
|
||||
<button type="roll" name="roll_gatk" class="btn"
|
||||
value="&{template:zafirgrenade} {{name=@{gatkname}}} {{targets=@{gtargets}}} {{targetsroll=[[@{gtargets}]]}} {{crit1=[[(@{gatkcritdice})d6>6]]}} {{damage1=[[@{gatkdamage}]]}} {{critdmg1=[[@{gatkdamage} + @{gatkcritdamage}]]}} {{crit2=[[(@{gatkcritdice})d6>6]]}} {{damage2=[[@{gatkdamage}]]}} {{critdmg2=[[@{gatkdamage} + @{gatkcritdamage}]]}} {{crit3=[[(@{gatkcritdice})d6>6]]}} {{damage3=[[@{gatkdamage}]]}} {{critdmg3=[[@{gatkdamage} + @{gatkcritdamage}]]}} {{crit4=[[(@{gatkcritdice})d6>6]]}} {{damage4=[[@{gatkdamage}]]}} {{critdmg4=[[@{gatkdamage} + @{gatkcritdamage}]]}} {{crit5=[[(@{gatkcritdice})d6>6]]}} {{damage5=[[@{gatkdamage}]]}} {{critdmg5=[[@{gatkdamage} + @{gatkcritdamage}]]}} {{notes=@{geffects}}} {{player=@{char_name}}}"><span data-i18n="Grenade Attack">Grenade Attack</span></button>
|
||||
value="&{template:zafirgrenade} {{name=@{gatkname}}} {{targets=@{gtargets}}} {{targetsroll=[[@{gtargets}]]}} {{crit1=[[ [Crit Dice] (@{gatkcritdice})d6>6]]}} {{damage1=[[ [Damage] @{gatkdamage}]]}} {{critdmg1=[[ [Damage] @{gatkdamage} + @{gatkcritdamage}]]}} {{crit2=[[ [Crit Dice] (@{gatkcritdice})d6>6]]}} {{damage2=[[ [Damage] @{gatkdamage}]]}} {{critdmg2=[[ [Damage] @{gatkdamage} + @{gatkcritdamage}]]}} {{crit3=[[ [Crit Dice] (@{gatkcritdice})d6>6]]}} {{damage3=[[ [Damage] @{gatkdamage}]]}} {{critdmg3=[[ [Damage] @{gatkdamage} + @{gatkcritdamage}]]}} {{crit4=[[ [Crit Dice] (@{gatkcritdice})d6>6]]}} {{damage4=[[ [Damage] @{gatkdamage}]]}} {{critdmg4=[[ [Damage] @{gatkdamage} + @{gatkcritdamage}]]}} {{crit5=[[ [Crit Dice] (@{gatkcritdice})d6>6]]}} {{damage5=[[ [Damage] @{gatkdamage}]]}} {{critdmg5=[[ [Damage] @{gatkdamage} + @{gatkcritdamage}]]}} {{notes=@{geffects}}} {{player=@{char_name}}}"><span data-i18n="Grenade Attack">Grenade Attack</span></button>
|
||||
<input type="text" name="attr_gatkname" spellcheck="false" placeholder="Grenade Type" style="width:110px;margin-right:10px;">
|
||||
<label> <input type="number" name="attr_gatkcritdice" value="0"> <span data-i18n="crit">crit</span> <input type="text" name="attr_gatkdamage" spellcheck="false" value="0">(+<input type="number" name="attr_gatkcritdamage" value="0">)</label>
|
||||
</div>
|
||||
@@ -378,7 +379,7 @@
|
||||
<span style="font-family:Pictos">}</span>
|
||||
<span class="tooltiptext" style="left:2px;" data-i18n="Charges Tooltip"><b>Use Charge</b><hr />Expend ability charge</span></button>
|
||||
<button type="roll" name="roll_gatk" class="btn"
|
||||
value="&{template:zafirgrenade} {{name=@{aablname}}} {{targets=@{areaabltargets}}} {{targetsroll=[[@{areaabltargets}]]}} {{crit1=[[(@{aablatkrollcritdice})d6>6]]}} {{damage1=[[@{aablatkrolldamage}]]}} {{critdmg1=[[@{aablatkrolldamage} + @{aablatkrollcritdamage}]]}} {{crit2=[[(@{aablatkrollcritdice})d6>6]]}} {{damage2=[[@{aablatkrolldamage}]]}} {{critdmg2=[[@{aablatkrolldamage} + @{aablatkrollcritdamage}]]}} {{crit3=[[(@{aablatkrollcritdice})d6>6]]}} {{damage3=[[@{aablatkrolldamage}]]}} {{critdmg3=[[@{aablatkrolldamage} + @{aablatkrollcritdamage}]]}} {{crit4=[[(@{aablatkrollcritdice})d6>6]]}} {{damage4=[[@{aablatkrolldamage}]]}} {{critdmg4=[[@{aablatkrolldamage} + @{aablatkrollcritdamage}]]}} {{crit5=[[(@{aablatkrollcritdice})d6>6]]}} {{damage5=[[@{aablatkrolldamage}]]}} {{critdmg5=[[@{aablatkrolldamage} + @{aablatkrollcritdamage}]]}} {{notes=@{aablatkeffects}}} {{player=@{char_name}}}"><span data-i18n="Area Attack">Area Attack</span></button>
|
||||
value="&{template:zafirgrenade} {{name=@{aablname}}} {{targets=@{areaabltargets}}} {{targetsroll=[[@{areaabltargets}]]}} {{crit1=[[ [Crit Dice] (@{aablatkrollcritdice})d6>6]]}} {{damage1=[[ [Damage] @{aablatkrolldamage}]]}} {{critdmg1=[[ [Damage] @{aablatkrolldamage} + @{aablatkrollcritdamage}]]}} {{crit2=[[ [Crit Dice] (@{aablatkrollcritdice})d6>6]]}} {{damage2=[ [Damage] @{aablatkrolldamage}]]}} {{critdmg2=[[ [Damage] @{aablatkrolldamage} + @{aablatkrollcritdamage}]]}} {{crit3=[[ [Crit Dice] (@{aablatkrollcritdice})d6>6]]}} {{damage3=[[ [Damage] @{aablatkrolldamage}]]}} {{critdmg3=[[ [Damage] @{aablatkrolldamage} + @{aablatkrollcritdamage}]]}} {{crit4=[[ [Crit Dice] (@{aablatkrollcritdice})d6>6]]}} {{damage4=[[ [Damage] @{aablatkrolldamage}]]}} {{critdmg4=[[ [Damage] @{aablatkrolldamage} + @{aablatkrollcritdamage}]]}} {{crit5=[[ [Crit Dice] (@{aablatkrollcritdice})d6>6]]}} {{damage5=[[ [Damage] @{aablatkrolldamage}]]}} {{critdmg5=[[ [Damage] @{aablatkrolldamage} + @{aablatkrollcritdamage}]]}} {{notes=@{aablatkeffects}}} {{player=@{char_name}}}"><span data-i18n="Area Attack">Area Attack</span></button>
|
||||
</span>
|
||||
</span>
|
||||
<label style="width:140px;"><span name="attr_aablname" ></span></label>
|
||||
@@ -440,7 +441,7 @@
|
||||
<button type="action" name="act_usecharge" class="btn tooltip" style="width:12px;padding-left:6px;padding-right:6px;">
|
||||
<span style="font-family:Pictos">}</span>
|
||||
<span class="tooltiptext" style="left:2px;" data-i18n="Charges Tooltip"><b>Use Charge</b><hr />Expend ability charge</span></button>
|
||||
<button type="roll" name="roll_willattack" class="btn" value="&{template:zafirwillattack} {{name=@{aablname}}} {{aim=[[(@{aablwillatkaimdice})d6>5 [Will Attack]]]}} {{crit=[[(@{aablwillatkcritdice})d6>6 [Crit Effect]]]}} {{resist=[[(@{aablresist})d6>6 [Resist]]]}} {{player=@{char_name}}}"><span data-i18n="Will Attack">Will Attack</span></button>
|
||||
<button type="roll" name="roll_willattack" class="btn" value="&{template:zafirwillattack} {{name=@{aablname}}} {{aim=[[ [Will Attack Dice] (@{aablwillatkaimdice})d6>5]]}} {{crit=[[ [Crit Effect Dice] (@{aablwillatkcritdice})d6>6]]}} {{resist=[[ [Resist Dice] (@{aablresist})d6>6]]}} {{player=@{char_name}}}"><span data-i18n="Will Attack">Will Attack</span></button>
|
||||
</span>
|
||||
</span>
|
||||
<label style="width:110px;"><span name="attr_aablname" ></span></label>
|
||||
@@ -450,7 +451,7 @@
|
||||
</div>
|
||||
|
||||
<div class="attack clearfix willattack">
|
||||
<button type="roll" name="roll_willattack" class="btn" value="&{template:zafirwillattack} {{name=@{custwillattackname}}} {{aim=[[(@{willattackaimdice})d6>5 [Will Attack]]]}} {{crit=[[(@{willattackcritdice})d6>6 [Crit Effect]]]}} {{resist=[[(@{willattackresistdice})d6>6 [Resist]]]}} {{player=@{char_name}}}"><span data-i18n="Will Attack">Will Attack</span></button>
|
||||
<button type="roll" name="roll_willattack" class="btn" value="&{template:zafirwillattack} {{name=@{custwillattackname}}} {{aim=[[ [Will Attack Dice] (@{willattackaimdice})d6>5]]}} {{crit=[[ [Crit Effect Dice] (@{willattackcritdice})d6>6]]}} {{resist=[[ [Resist Dice] (@{willattackresistdice})d6>6]]}} {{player=@{char_name}}}"><span data-i18n="Will Attack">Will Attack</span></button>
|
||||
<input type="text" name="attr_custwillattackname" spellcheck="false" placeholder="Ability Name" style="width:110px;margin-right:10px;">
|
||||
<label>+<span name="attr_willattackaimdice"></span> <span data-i18n="will">will</span> +<span name="attr_willattackcritdice"></span> <span data-i18n="crit">crit</span> +<span name="attr_willattackresistdice"></span> <span data-i18n="resist">resist</span</label>
|
||||
</div>
|
||||
@@ -584,7 +585,7 @@
|
||||
<div>
|
||||
<h3 data-i18n="Dodge Roller">Dodge Roller</h3>
|
||||
<div class="paneltracker dodgeroller clearfix">
|
||||
<button type="roll" name="roll_dodge" class="btn" value="&{template:zafirdodge} {{dodge=[[(@{dodgedice})d6>6]]}} {{player=@{char_name}}}"><span data-i18n="Dodge">Dodge</span></button>
|
||||
<button type="roll" name="roll_dodge" class="btn" value="&{template:zafirdodge} {{dodge=[[ [Dodge Dice] (@{dodgedice})d6>6]]}} {{player=@{char_name}}}"><span data-i18n="Dodge">Dodge</span></button>
|
||||
<label style="width:110px" data-i18n="Dodge Dice:">Dodge Dice:</label><input type="number" name="attr_dodgedice" value="0" />
|
||||
</div>
|
||||
</div>
|
||||
@@ -1000,7 +1001,7 @@
|
||||
<label data-i18n="Bonus Skill:">Bonus Skill:</label><input style="width:18%;position:relative;right:3px;margin-right:93px;" type="number" value="0" name="attr_bonusskill" />
|
||||
<label data-i18n="Bonus Crit:">Bonus Crit:</label><input style="width:18%;position:relative;right:3px;" type="number" value="0" name="attr_bonusskillcrit" />
|
||||
<div class="attack clearfix skillroller">
|
||||
<button type="roll" name="roll_skillaction" class="btn" value="&{template:zafirskillaction} {{name=@{skillname}}} {{aim=[[(@{skilldice})d6>5]]}} {{crit=[[(@{bonusskillcrit})d6>6]]}} {{responsibility=@{skillresponsibility}}} {{player=@{char_name}}}"><span data-i18n="Skill Roll">Skill Roll</span></button>
|
||||
<button type="roll" name="roll_skillaction" class="btn" value="&{template:zafirskillaction} {{name=@{skillname}}} {{aim=[[ [Skill Dice] (@{skilldice})d6>5]]}} {{crit=[[ [Skill Crit Dice] (@{bonusskillcrit})d6>6]]}} {{responsibility=@{skillresponsibility}}} {{player=@{char_name}}}"><span data-i18n="Skill Roll">Skill Roll</span></button>
|
||||
<select name="attr_skillname" style="width:110px;margin-right:10px;">
|
||||
<option value="Coerce" data-i18n="Coerce Skill Option">Coerce</option>
|
||||
<option value="Deceive" data-i18n="Deceive Skill Option">Deceive</option>
|
||||
@@ -1055,32 +1056,39 @@
|
||||
<textarea name="attr_conversationallanguages" spellcheck="false"></textarea>
|
||||
</div>
|
||||
<div class="col">
|
||||
<h2 data-i18n="Settings">Settings</h2>
|
||||
<div>
|
||||
<h3 data-i18n="General Sheet Options">General Sheet Options</h3>
|
||||
<label style="width:250px;" data-i18n="Condense Upper Sheet:">Condense Upper Sheet:</label><input type="checkbox" name="attr_condensesheet" value="1"/><br />
|
||||
<label style="width:250px;" data-i18n="Large Origin Textbox:">Large Origin Textbox:</label><input type="checkbox" name="attr_largeorigin" value="1"/><br />
|
||||
<label style="width:250px;" data-i18n="Show Focus:">Show Focus:</label><input type="checkbox" name="attr_showfocus" value="1" checked /><br />
|
||||
</div>
|
||||
<div>
|
||||
<h3 data-i18n="Combat Tab Options">Combat Tab Options</h3>
|
||||
<label style="width:250px;" data-i18n="Show Ammo Tracker:">Show Ammo Tracker:</label><input type="checkbox" name="attr_showammotracker" value="1" checked /><br />
|
||||
<label style="width:250px;" data-i18n="Show Concealment:">Show Concealment:</label><input type="checkbox" name="attr_showconcealment" value="1" checked /><br />
|
||||
<label style="width:250px;" data-i18n="Show Dodge Roller:">Show Dodge Roller:</label><input type="checkbox" name="attr_showdodgeroller" value="1" checked /><br />
|
||||
<label style="width:250px;" data-i18n="Show Condition Tracker:">Show Condition Tracker:</label><input type="checkbox" name="attr_showconditiontracker" value="1" checked /><br />
|
||||
<label style="width:250px;" data-i18n="Show Cooldown Tracker:">Show Cooldown Tracker:</label><input type="checkbox" name="attr_showcooldowntracker" value="1" checked /><br />
|
||||
<label style="width:250px;" data-i18n="Show Charges Tracker:">Show Charges Tracker:</label><input type="checkbox" name="attr_showchargestracker" value="1" checked />
|
||||
</div>
|
||||
<h2 data-i18n="Notes">Notes</h2>
|
||||
<textarea name="attr_notes" spellcheck="false" style="height:250px;"></textarea>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Settings -->
|
||||
<div class="set">
|
||||
<h2 data-i18n="Settings">Settings</h2>
|
||||
<div class="3colrow">
|
||||
<div class="col">
|
||||
<h3 data-i18n="General Sheet Options">General Sheet Options</h3>
|
||||
<label style="width:250px;" data-i18n="Condense Upper Sheet:">Condense Upper Sheet:</label><input type="checkbox" name="attr_condensesheet" value="1"/><br />
|
||||
<label style="width:250px;" data-i18n="Large Origin Textbox:">Large Origin Textbox:</label><input type="checkbox" name="attr_largeorigin" value="1"/><br />
|
||||
<label style="width:250px;" data-i18n="Show Focus:">Show Focus:</label><input type="checkbox" name="attr_showfocus" value="1" checked /><br />
|
||||
</div>
|
||||
<div class="col">
|
||||
<h3 data-i18n="Combat Tab Options">Combat Tab Options</h3>
|
||||
<label style="width:250px;" data-i18n="Show Ammo Tracker:">Show Ammo Tracker:</label><input type="checkbox" name="attr_showammotracker" value="1" checked /><br />
|
||||
<label style="width:250px;" data-i18n="Show Concealment:">Show Concealment:</label><input type="checkbox" name="attr_showconcealment" value="1" checked /><br />
|
||||
<label style="width:250px;" data-i18n="Show Dodge Roller:">Show Dodge Roller:</label><input type="checkbox" name="attr_showdodgeroller" value="1" checked /><br />
|
||||
<label style="width:250px;" data-i18n="Show Condition Tracker:">Show Condition Tracker:</label><input type="checkbox" name="attr_showconditiontracker" value="1" checked /><br />
|
||||
<label style="width:250px;" data-i18n="Show Cooldown Tracker:">Show Cooldown Tracker:</label><input type="checkbox" name="attr_showcooldowntracker" value="1" checked /><br />
|
||||
<label style="width:250px;" data-i18n="Show Charges Tracker:">Show Charges Tracker:</label><input type="checkbox" name="attr_showchargestracker" value="1" checked />
|
||||
</div>
|
||||
|
||||
<div class="col">
|
||||
<!-- Temporarily turning off Charactermancer
|
||||
<div>
|
||||
<h3 data-i18n="Charactermancer">Charactermancer</h3>
|
||||
<button type="action" name="act_startcharactermancerfromsheet" class="btn" style="float:none;margin-left:0;">Start Charactermancer</button>
|
||||
</div>
|
||||
<h3 data-i18n="Charactermancer">Charactermancer</h3>
|
||||
<button type="action" name="act_startcharactermancerfromsheet" class="btn" style="float:none;margin-left:0;">Start Charactermancer</button>
|
||||
-->
|
||||
<div style="margin-top:16px;">
|
||||
<h3 data-i18n="Game Master Options">Game Master Options</h3>
|
||||
<button type="action" name="act_switchsheettype" class="btn" style="float:none;margin-left:0;"><span data-i18n="Switch to Game Master's Toolkit">Switch to Game Master's Toolkit</span></button>
|
||||
</div>
|
||||
<h3 data-i18n="Game Master Options">Game Master Options</h3>
|
||||
<button type="action" name="act_switchsheettype" class="btn" style="float:none;margin-left:0;"><span data-i18n="Switch to Game Master's Toolkit">Switch to Game Master's Toolkit</span></button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -1117,19 +1125,23 @@
|
||||
</select>
|
||||
<br />
|
||||
<div class="customattack attack clearfix">
|
||||
<button type="roll" name="roll_gmatk" class="btn" value="&{template:zafir} {{name=@{gmatkname}}} {{aim=[[(@{gmatkaimdicetotal})d6>5]]}} {{crit=[[(@{gmatkcritdicetotal})d6>6]]}} {{damage=[[(@{gmatkdamage})]]}} {{critdmg=[[(@{gmatkdamage}) + (@{gmatkcritdamage})]]}} {{notes=@{selectedenemyatknotes}}} {{enemy=@{selectedenemy}}}"><span data-i18n="Attack">Attack</span></button>
|
||||
<button type="roll" name="roll_gmatk" class="btn" value="&{template:zafir} {{name=@{gmatkname}}} {{aim=[[ [Aim Dice] (@{gmatkaimdicetotal})d6>5]]}} {{crit=[[ [Crit Dice] (@{gmatkcritdicetotal})d6>6]]}} {{damage=[[(@{gmatkdamage})]]}} {{critdmg=[[(@{gmatkdamage}) + (@{gmatkcritdamage})]]}} {{notes=@{selectedenemyatknotes}}} {{enemy=@{selectedenemy}}}"><span data-i18n="Attack">Attack</span></button>
|
||||
<input type="text" name="attr_gmatkname" spellcheck="false" placeholder="Attack Name" style="width:110px;margin-right:10px;">
|
||||
<label> <input type="number" name="attr_gmatkaimdice" value="0"> <span data-i18n="aim">aim</span> <input type="number" name="attr_gmatkcritdice" value="0"> <span data-i18n="crit">crit</span> <input type="text" name="attr_gmatkdamage" spellcheck="false" value="0">(+<input type="number" name="attr_gmatkcritdamage" value="0">)</label>
|
||||
</div>
|
||||
<input type="hidden" class="valuehider" name="attr_selectedenemyatk1_id" value="">
|
||||
<div class="customattack attack clearfix">
|
||||
<button type="roll" name="roll_gmatk1" class="btn" value="&{template:zafir} {{name=@{gmatk1name}}} {{aim=[[(@{gmatk1aimdicetotal})d6>5]]}} {{crit=[[(@{gmatk1critdicetotal})d6>6]]}} {{damage=[[(@{gmatk1damage})]]}} {{critdmg=[[(@{gmatk1damage}) + (@{gmatk1critdamage})]]}} {{notes=@{selectedenemyatk1notes}}} {{enemy=@{selectedenemy}}}"><span data-i18n="Attack">Attack</span></button>
|
||||
<input type="hidden" name="attr_gmatk1aimdicetotal" />
|
||||
<input type="hidden" name="attr_gmatk1critdicetotal" />
|
||||
<button type="roll" name="roll_gmatk1" class="btn" value="&{template:zafir} {{name=@{gmatk1name}}} {{aim=[[ [Aim Dice] (@{gmatk1aimdicetotal})d6>5]]}} {{crit=[[ [Crit Dice] (@{gmatk1critdicetotal})d6>6]]}} {{damage=[[(@{gmatk1damage})]]}} {{critdmg=[[(@{gmatk1damage}) + (@{gmatk1critdamage})]]}} {{notes=@{selectedenemyatk1notes}}} {{enemy=@{selectedenemy}}}"><span data-i18n="Attack">Attack</span></button>
|
||||
<input type="text" name="attr_gmatk1name" spellcheck="false" placeholder="Attack Name" style="width:110px;margin-right:10px;">
|
||||
<label> <input type="number" name="attr_gmatk1aimdice" value="0"> <span data-i18n="aim">aim</span> <input type="number" name="attr_gmatk1critdice" value="0"> <span data-i18n="crit">crit</span> <input type="text" name="attr_gmatk1damage" spellcheck="false" value="0">(+<input type="number" name="attr_gmatk1critdamage" value="0">)</label>
|
||||
</div>
|
||||
<input type="hidden" class="valuehider" name="attr_selectedenemyatk2_id" value="">
|
||||
<div class="customattack attack clearfix">
|
||||
<button type="roll" name="roll_gmatk2" class="btn" value="&{template:zafir} {{name=@{gmatk2name}}} {{aim=[[(@{gmatk2aimdicetotal})d6>5]]}} {{crit=[[(@{gmatk2critdicetotal})d6>6]]}} {{damage=[[(@{gmatk2damage})]]}} {{critdmg=[[(@{gmatk2damage}) + (@{gmatk2critdamage})]]}} {{notes=@{selectedenemyatk2notes}}} {{enemy=@{selectedenemy}}}"><span data-i18n="Attack">Attack</span></button>
|
||||
<input type="hidden" name="attr_gmatk2aimdicetotal" />
|
||||
<input type="hidden" name="attr_gmatk2critdicetotal" />
|
||||
<button type="roll" name="roll_gmatk2" class="btn" value="&{template:zafir} {{name=@{gmatk2name}}} {{aim=[[ [Aim Dice] (@{gmatk2aimdicetotal})d6>5]]}} {{crit=[[ [Crit Dice] (@{gmatk2critdicetotal})d6>6]]}} {{damage=[[(@{gmatk2damage})]]}} {{critdmg=[[(@{gmatk2damage}) + (@{gmatk2critdamage})]]}} {{notes=@{selectedenemyatk2notes}}} {{enemy=@{selectedenemy}}}"><span data-i18n="Attack">Attack</span></button>
|
||||
<input type="text" name="attr_gmatk2name" spellcheck="false" placeholder="Attack Name" style="width:110px;margin-right:10px;">
|
||||
<label> <input type="number" name="attr_gmatk2aimdice" value="0"> <span data-i18n="aim">aim</span> <input type="number" name="attr_gmatk2critdice" value="0"> <span data-i18n="crit">crit</span> <input type="text" name="attr_gmatk2damage" spellcheck="false" value="0">(+<input type="number" name="attr_gmatk2critdamage" value="0">)</label>
|
||||
</div>
|
||||
@@ -1140,7 +1152,7 @@
|
||||
<label style="width:80px;" data-i18n="Effects:">Effects:</label><input style="width:279px;" type="text" name="attr_gmgeffects" value="">
|
||||
<div class="customattack attack clearfix">
|
||||
<button type="roll" name="roll_gmgatk" class="btn"
|
||||
value="&{template:zafirgrenade} {{name=@{gmgatkname}}} {{targets=@{gmgtargets}}} {{targetsroll=[[@{gmgtargets}]]}} {{crit1=[[(@{gmgatkcritdice})d6>6]]}} {{damage1=[[@{gmgatkdamage}]]}} {{critdmg1=[[@{gmgatkdamage} + @{gmgatkcritdamage}]]}} {{crit2=[[(@{gmgatkcritdice})d6>6]]}} {{damage2=[[@{gmgatkdamage}]]}} {{critdmg2=[[@{gmgatkdamage} + @{gmgatkcritdamage}]]}} {{crit3=[[(@{gmgatkcritdice})d6>6]]}} {{damage3=[[@{gmgatkdamage}]]}} {{critdmg3=[[@{gmgatkdamage} + @{gmgatkcritdamage}]]}} {{crit4=[[(@{gmgatkcritdice})d6>6]]}} {{damage4=[[@{gmgatkdamage}]]}} {{critdmg4=[[@{gmgatkdamage} + @{gmgatkcritdamage}]]}} {{crit5=[[(@{gmgatkcritdice})d6>6]]}} {{damage5=[[@{gmgatkdamage}]]}} {{critdmg5=[[@{gmgatkdamage} + @{gmgatkcritdamage}]]}} {{notes=@{gmgeffects}}} {{enemy=@{selectedenemy}}}"><span data-i18n="Grenade Attack">Grenade Attack</span></button>
|
||||
value="&{template:zafirgrenade} {{name=@{gmgatkname}}} {{targets=@{gmgtargets}}} {{targetsroll=[[@{gmgtargets}]]}} {{crit1=[[ [Crit Dice] (@{gmgatkcritdice})d6>6]]}} {{damage1=[[ [Damage] @{gmgatkdamage}]]}} {{critdmg1=[[ [Damage] @{gmgatkdamage} + @{gmgatkcritdamage}]]}} {{crit2=[[ [Crit Dice] (@{gmgatkcritdice})d6>6]]}} {{damage2=[[ [Damage] @{gmgatkdamage}]]}} {{critdmg2=[[ [Damage] @{gmgatkdamage} + @{gmgatkcritdamage}]]}} {{crit3=[[ [Crit Dice] (@{gmgatkcritdice})d6>6]]}} {{damage3=[[ [Damage] @{gmgatkdamage}]]}} {{critdmg3=[[ [Damage] @{gmgatkdamage} + @{gmgatkcritdamage}]]}} {{crit4=[[ [Crit Dice] (@{gmgatkcritdice})d6>6]]}} {{damage4=[[ [Damage] @{gmgatkdamage}]]}} {{critdmg4=[[ [Damage] @{gmgatkdamage} + @{gmgatkcritdamage}]]}} {{crit5=[[ [Crit Dice] (@{gmgatkcritdice})d6>6]]}} {{damage5=[[ [Damage] @{gmgatkdamage}]]}} {{critdmg5=[[ [Damage] @{gmgatkdamage} + @{gmgatkcritdamage}]]}} {{notes=@{gmgeffects}}} {{enemy=@{selectedenemy}}}"><span data-i18n="Grenade Attack">Grenade Attack</span></button>
|
||||
<input type="text" name="attr_gmgatkname" spellcheck="false" placeholder="Grenade Type" style="width:110px;margin-right:10px;">
|
||||
<label> <input type="number" name="attr_gmgatkcritdice" value="0"> <span data-i18n="crit">crit</span> <input type="text" name="attr_gmgatkdamage" spellcheck="false" value="0">(+<input type="number" name="attr_gmgatkcritdamage" value="0">)</label>
|
||||
</div>
|
||||
@@ -1166,12 +1178,12 @@
|
||||
<option value="Target" data-i18n="Target Panicked Option">Target is Panicked (+1 will, +2 crit)</option>
|
||||
</select><br />
|
||||
<div class="customattack attack clearfix willattack">
|
||||
<button type="roll" name="roll_willattack" class="btn" value="&{template:zafirwillattack} {{name=@{gmwatkname}}} {{aim=[[(@{gmwatkaimdice})d6>5]]}} {{crit=[[(@{gmwatkcritdice})d6>6]]}} {{resist=[[(@{gmwatkresistdice})d6>6]]}} {{enemy=@{selectedenemy}}}"><span data-i18n="Will Attack">Will Attack</span></button>
|
||||
<button type="roll" name="roll_willattack" class="btn" value="&{template:zafirwillattack} {{name=@{gmwatkname}}} {{aim=[[ [Will Attack Dice] (@{gmwatkaimdice})d6>5]]}} {{crit=[[ [Crit Effect Dice] (@{gmwatkcritdice})d6>6]]}} {{resist=[[ [Resist Dice] (@{gmwatkresistdice})d6>6]]}} {{enemy=@{selectedenemy}}}"><span data-i18n="Will Attack">Will Attack</span></button>
|
||||
<input type="text" name="attr_gmwatkname" spellcheck="false" placeholder="Will Attack" style="width:110px;margin-right:10px;">
|
||||
<label><input type="number" name="attr_gmwatkwill" value="0"> <span data-i18n="will">will</span> <input type="number" name="attr_gmwatkwillcrit" value="0"> <span data-i18n="crit">crit</span> <input type="number" name="attr_gmenemywill" value="0"> <span data-i18n="resist">resist</span></label>
|
||||
</div>
|
||||
<div class="customattack attack clearfix willattack">
|
||||
<button type="roll" name="roll_panicattack" class="btn" value="&{template:zafirwillattack} {{panic=panic}} {{aim=[[2d6>5]]}} {{crit=[[0]]}} {{resist=[[(@{panicresist})d6>6]]}} {{enemy=@{panicname}}}"><span data-i18n="Test For Panic">Test For Panic</span></button>
|
||||
<button type="roll" name="roll_panicattack" class="btn" value="&{template:zafirwillattack} {{panic=panic}} {{aim=[[ [Panic Attack Dice] 2d6>5]]}} {{crit=[[0]]}} {{resist=[[ [Panic Resist Dice] (@{panicresist})d6>6]]}} {{enemy=@{panicname}}}"><span data-i18n="Test For Panic">Test For Panic</span></button>
|
||||
<input type="text" name="attr_panicname" spellcheck="false" placeholder="Character" style="width:110px;margin-right:10px;">
|
||||
<label>2 <span data-i18n="will">will</span> <input type="number" name="attr_panicresist" value="0"> <span data-i18n="resist">resist</span></label>
|
||||
</div>
|
||||
@@ -1181,7 +1193,7 @@
|
||||
<div>
|
||||
<h3 data-i18n="Dodge">Dodge</h3>
|
||||
<div class="attack customattack clearfix dodgeroller">
|
||||
<button type="roll" name="roll_dodge" class="btn" value="&{template:zafirdodge} {{dodge=[[(@{gmdodgedice})d6>6]]}} {{enemy=@{selectedenemy}}}"><span data-i18n="Dodge">Dodge</span></button>
|
||||
<button type="roll" name="roll_dodge" class="btn" value="&{template:zafirdodge} {{dodge=[[ [Dodge Dice] (@{gmdodgedice})d6>6]]}} {{enemy=@{selectedenemy}}}"><span data-i18n="Dodge">Dodge</span></button>
|
||||
<label style="width:110px" data-i18n="Dodge Dice:">Dodge Dice:</label><input type="number" name="attr_gmdodgedice" value="0" />
|
||||
</div>
|
||||
</div>
|
||||
@@ -1399,10 +1411,13 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--<button type="action" name="act_clearselectedunit" class="btn" style="float:right;width:auto;padding-top:4px;padding-bottom:4px;">Clear</button>-->
|
||||
<button type="action" name="act_refreshselectedunit" class="btn" style="float:right;width:auto;padding-top:4px;padding-bottom:4px;">Refresh</button>
|
||||
<h3 data-i18n="Enemy Unit Selector">Enemy Unit Selector</h3>
|
||||
<fieldset class="repeating_gmenemyunitlist">
|
||||
<input type="hidden" class="hideifone" name="attr_selected" value="0">
|
||||
<button type="action" name="act_selectunit" class="btn"><span name="attr_gmunitname"></span></button>
|
||||
<input type="hidden" class="hideifzero" name="attr_selected" value="0">
|
||||
<button type="action" name="act_selectunit" class="btn selected"><span name="attr_gmunitname"></span></button>
|
||||
</fieldset>
|
||||
<h3 data-i18n="Unit Display Options">Unit Display Options</h3>
|
||||
<label data-i18n="Show Attack Info:">Show Attack Info:</label><input type="checkbox" name="attr_gmshowattackinfo" value="1" checked /><br />
|
||||
@@ -1420,7 +1435,10 @@
|
||||
<h3 data-i18n="Enemy Units">Enemy Units</h3>
|
||||
<fieldset class="repeating_gmenemyunitlist">
|
||||
<input type="hidden" name="attr_gmunitname" value="New Unit" >
|
||||
<input type="hidden" class="hideifone" name="attr_selected" value="0">
|
||||
<button type="action" name="act_selectunit" class="btn"><span name="attr_gmunitname"></span></button>
|
||||
<input type="hidden" class="hideifzero" name="attr_selected" value="0">
|
||||
<button type="action" name="act_selectunit" class="btn selected"><span name="attr_gmunitname"></span></button>
|
||||
</fieldset>
|
||||
<button class="addbtn" type="action" name="act_addgmunit"><span data-i18n="Plus Add">+Add</span></button>
|
||||
</div>
|
||||
@@ -1648,16 +1666,16 @@
|
||||
{{/ammo}}
|
||||
{{#rollGreater() aim 0}}
|
||||
{{#rollGreater() crit 0}}
|
||||
<div class="sheet-template-row sheet-crit-hit"><span data-i18n="CRITICAL HIT!">CRITICAL HIT!</span> {{crit}} {{aim}}</div>
|
||||
<div class="sheet-template-row sheet-crit-hit"><span data-i18n="CRITICAL HIT!">CRITICAL HIT!</span> <span class="critroll">{{crit}}</span> <span class="aimroll">{{aim}}</span></div>
|
||||
<div class="sheet-template-row sheet-crit-dmg"><span data-i18n="Critical Damage:">Critical Damage:</span> {{critdmg}}</div>
|
||||
{{/rollGreater() crit 0}}
|
||||
{{#rollTotal() crit 0}}
|
||||
<div class="sheet-template-row sheet-hit"><span data-i18n="HIT!">HIT!</span> {{aim}}</div>
|
||||
<div class="sheet-template-row sheet-hit"><span data-i18n="HIT!">HIT!</span> <span class="critroll">{{crit}}</span> <span class="aimroll">{{aim}}</span></div>
|
||||
<div class="sheet-template-row sheet-damage"><span data-i18n="Damage:">Damage:</span> {{damage}}</div>
|
||||
{{/rollTotal() crit 0}}
|
||||
{{/rollGreater() aim 0}}
|
||||
{{#rollTotal() aim 0}}
|
||||
<div class="sheet-template-row sheet-miss"><span data-i18n="MISS!">MISS!</span> {{aim}}</div>
|
||||
<div class="sheet-template-row sheet-miss"><span data-i18n="MISS!">MISS!</span> <span class="critroll">{{crit}}</span> <span class="aimroll">{{aim}}</span></div>
|
||||
{{/rollTotal() aim 0}}
|
||||
</div>
|
||||
{{#enemy}}</div>{{/enemy}}
|
||||
@@ -1689,18 +1707,18 @@
|
||||
{{#rollGreater() resist 0}}
|
||||
{{#panic}}<div class="sheet-template-row sheet-hit">{{/panic}}
|
||||
{{^panic}}<div class="sheet-template-row sheet-miss">{{/panic}}
|
||||
{{resist}} {{aim}} <span data-i18n="RESISTED!">RESISTED!</span></div>
|
||||
<span class="resistroll">{{resist}}</span> <span class="critroll">{{crit}}</span> <span class="aimroll">{{aim}}</span><span data-i18n="RESISTED!">RESISTED!</span></div>
|
||||
{{/rollGreater() resist 0}}
|
||||
{{#rollTotal() resist 0}}
|
||||
{{#rollGreater() crit 0}}
|
||||
<div class="sheet-template-row sheet-crit-hit sheet-critsuccess">{{crit}} {{aim}} <span data-i18n="SUCCESS">SUCCESS</span> + <br /><span data-i18n="CRITICAL EFFECT!">CRITICAL EFFECT!</span></div>
|
||||
<div class="sheet-template-row sheet-crit-hit sheet-critsuccess"> <span class="resistroll">{{resist}}</span> <span class="critroll">{{crit}}</span> <span class="aimroll">{{aim}}</span><span data-i18n="SUCCESS">SUCCESS</span> + <br /><span data-i18n="CRITICAL EFFECT!">CRITICAL EFFECT!</span></div>
|
||||
{{/rollGreater() crit 0}}
|
||||
{{#rollTotal() crit 0}}
|
||||
{{#panic}}
|
||||
<div class="sheet-template-row sheet-crit-hit"><span data-i18n="PANIC!">PANIC!</span> {{aim}}</div>
|
||||
<div class="sheet-template-row sheet-crit-hit"><span data-i18n="PANIC!">PANIC!</span> <span class="resistroll">{{resist}}</span> <span class="critroll">{{crit}}</span> <span class="aimroll">{{aim}}</span></div>
|
||||
{{/panic}}
|
||||
{{^panic}}
|
||||
<div class="sheet-template-row sheet-hit"><span data-i18n="SUCCESS!">SUCCESS!</span> {{aim}}</div>
|
||||
<div class="sheet-template-row sheet-hit"><span data-i18n="SUCCESS!">SUCCESS!</span> <span class="resistroll">{{resist}}</span> <span class="critroll">{{crit}}</span> <span class="aimroll">{{aim}}</span></div>
|
||||
{{/panic}}
|
||||
{{/rollTotal() crit 0}}
|
||||
{{/rollTotal() resist 0}}
|
||||
@@ -1711,7 +1729,7 @@
|
||||
{{#rollTotal() aim 0}}
|
||||
{{#panic}}<div class="sheet-template-row sheet-hit">{{/panic}}
|
||||
{{^panic}}<div class="sheet-template-row sheet-miss">{{/panic}}
|
||||
<span data-i18n="RESISTED!">RESISTED!</span> {{aim}}</div>
|
||||
<span data-i18n="RESISTED!">RESISTED!</span> <span class="resistroll">{{resist}}</span> <span class="critroll">{{crit}}</span> <span class="aimroll">{{aim}}</span></div>
|
||||
{{/rollTotal() aim 0}}
|
||||
</div>
|
||||
</div>
|
||||
@@ -1725,14 +1743,14 @@
|
||||
<div class="sheet-template-row sheet-responsibility"><span data-i18n="Using">Using</span> {{responsibility}}</div>
|
||||
{{#rollGreater() aim 0}}
|
||||
{{#rollGreater() crit 0}}
|
||||
<div class="sheet-template-row sheet-crit-hit"><span data-i18n="CRITICAL SUCCESS!">CRITICAL SUCCESS!</span> {{crit}} {{aim}}</div>
|
||||
<div class="sheet-template-row sheet-crit-hit"><span data-i18n="CRITICAL SUCCESS!">CRITICAL SUCCESS!</span> <span class="critroll">{{crit}}</span> <span class="aimroll">{{aim}}</span></div>
|
||||
{{/rollGreater() crit 0}}
|
||||
{{#rollTotal() crit 0}}
|
||||
<div class="sheet-template-row sheet-hit"><span data-i18n="SUCCESS!">SUCCESS!</span> {{aim}}</div>
|
||||
<div class="sheet-template-row sheet-hit"><span data-i18n="SUCCESS!">SUCCESS!</span> <span class="critroll">{{crit}}</span> <span class="aimroll">{{aim}}</span></div>
|
||||
{{/rollTotal() crit 0}}
|
||||
{{/rollGreater() aim 0}}
|
||||
{{#rollTotal() aim 0}}
|
||||
<div class="sheet-template-row sheet-miss"><span data-i18n="FAILED!">FAILED!</span> {{aim}}</div>
|
||||
<div class="sheet-template-row sheet-miss"><span data-i18n="FAILED!">FAILED!</span> <span class="critroll">{{crit}}</span> <span class="aimroll">{{aim}}</span></div>
|
||||
{{/rollTotal() aim 0}}
|
||||
</div>
|
||||
</div>
|
||||
@@ -1746,10 +1764,10 @@
|
||||
{{#player}}<div class="sheet-template-nameplate">{{player}}</div>{{/player}}
|
||||
<div class="sheet-template-header"><span data-i18n="Dodge!">Dodge!</span></div>
|
||||
{{#rollGreater() dodge 0}}
|
||||
<div class="sheet-template-row sheet-hit"><span data-i18n="SUCCESS!">SUCCESS!</span> {{dodge}}</div>
|
||||
<div class="sheet-template-row sheet-hit"><span data-i18n="SUCCESS!">SUCCESS!</span> <span class="dodgeroll">{{dodge}}</span></div>
|
||||
{{/rollGreater() dodge 0}}
|
||||
{{#rollTotal() dodge 0}}
|
||||
<div class="sheet-template-row sheet-miss"><span data-i18n="FAILED!">FAILED!</span> {{dodge}}</div>
|
||||
<div class="sheet-template-row sheet-miss"><span data-i18n="FAILED!">FAILED!</span> <span class="dodgeroll">{{dodge}}</span></div>
|
||||
{{/rollTotal() dodge 0}}
|
||||
</div>
|
||||
{{#enemy}}</div>{{/enemy}}
|
||||
@@ -1774,46 +1792,46 @@
|
||||
{{/notes}}
|
||||
{{#rollGreater() targetsroll 0}}
|
||||
{{#rollGreater() crit1 0}}
|
||||
<div class="sheet-template-row sheet-crit-hit"><span data-i18n="Critical Damage:">Critical Damage:</span> {{critdmg1}}</div>
|
||||
<div class="sheet-template-row sheet-crit-hit"><span data-i18n="Critical Damage:">Critical Damage:</span> {{critdmg1}} <span class="critroll">{{crit1}}</span></div>
|
||||
{{/rollGreater() crit1 0}}
|
||||
{{#rollTotal() crit1 0}}
|
||||
<div class="sheet-template-row sheet-damage"><span data-i18n="Damage:">Damage:</span> {{damage1}}</div>
|
||||
<div class="sheet-template-row sheet-damage"><span data-i18n="Damage:">Damage:</span> {{damage1}} <span class="critroll">{{crit1}}</span></div>
|
||||
{{/rollTotal() crit1 0}}
|
||||
{{/rollGreater() targetsroll 0}}
|
||||
|
||||
{{#rollGreater() targetsroll 1}}
|
||||
{{#rollGreater() crit2 0}}
|
||||
<div class="sheet-template-row sheet-crit-hit"><span data-i18n="Critical Damage:">Critical Damage:</span> {{critdmg2}}</div>
|
||||
<div class="sheet-template-row sheet-crit-hit"><span data-i18n="Critical Damage:">Critical Damage:</span> {{critdmg2}} <span class="critroll">{{crit2}}</span></div>
|
||||
{{/rollGreater() crit2 0}}
|
||||
{{#rollTotal() crit2 0}}
|
||||
<div class="sheet-template-row sheet-damage"><span data-i18n="Damage:">Damage:</span> {{damage2}}</div>
|
||||
<div class="sheet-template-row sheet-damage"><span data-i18n="Damage:">Damage:</span> {{damage2}} <span class="critroll">{{crit2}}</span></div>
|
||||
{{/rollTotal() crit2 0}}
|
||||
{{/rollGreater() targetsroll 1}}
|
||||
|
||||
{{#rollGreater() targetsroll 2}}
|
||||
{{#rollGreater() crit3 0}}
|
||||
<div class="sheet-template-row sheet-crit-hit"><span data-i18n="Critical Damage:">Critical Damage:</span> {{critdmg3}}</div>
|
||||
<div class="sheet-template-row sheet-crit-hit"><span data-i18n="Critical Damage:">Critical Damage:</span> {{critdmg3}} <span class="critroll">{{crit3}}</span></div>
|
||||
{{/rollGreater() crit3 0}}
|
||||
{{#rollTotal() crit3 0}}
|
||||
<div class="sheet-template-row sheet-damage"><span data-i18n="Damage:">Damage:</span> {{damage3}}</div>
|
||||
<div class="sheet-template-row sheet-damage"><span data-i18n="Damage:">Damage:</span> {{damage3}} <span class="critroll">{{crit3}}</span></div>
|
||||
{{/rollTotal() crit3 0}}
|
||||
{{/rollGreater() targetsroll 2}}
|
||||
|
||||
{{#rollGreater() targetsroll 3}}
|
||||
{{#rollGreater() crit4 0}}
|
||||
<div class="sheet-template-row sheet-crit-hit"><span data-i18n="Critical Damage:">Critical Damage:</span> {{critdmg4}}</div>
|
||||
<div class="sheet-template-row sheet-crit-hit"><span data-i18n="Critical Damage:">Critical Damage:</span> {{critdmg4}} <span class="critroll">{{crit4}}</span></div>
|
||||
{{/rollGreater() crit4 0}}
|
||||
{{#rollTotal() crit4 0}}
|
||||
<div class="sheet-template-row sheet-damage"><span data-i18n="Damage:">Damage:</span> {{damage4}}</div>
|
||||
<div class="sheet-template-row sheet-damage"><span data-i18n="Damage:">Damage:</span> {{damage4}} <span class="critroll">{{crit4}}</span></div>
|
||||
{{/rollTotal() crit4 0}}
|
||||
{{/rollGreater() targetsroll 3}}
|
||||
|
||||
{{#rollGreater() targetsroll 4}}
|
||||
{{#rollGreater() crit5 0}}
|
||||
<div class="sheet-template-row sheet-crit-hit"><span data-i18n="Critical Damage:">Critical Damage:</span> {{critdmg5}}</div>
|
||||
<div class="sheet-template-row sheet-crit-hit"><span data-i18n="Critical Damage:">Critical Damage:</span> {{critdmg5}} <span class="critroll">{{crit5}}</span></div>
|
||||
{{/rollGreater() crit5 0}}
|
||||
{{#rollTotal() crit5 0}}
|
||||
<div class="sheet-template-row sheet-damage"><span data-i18n="Damage:">Damage:</span> {{damage5}}</div>
|
||||
<div class="sheet-template-row sheet-damage"><span data-i18n="Damage:">Damage:</span> {{damage5}} <span class="critroll">{{crit5}}</span></div>
|
||||
{{/rollTotal() crit5 0}}
|
||||
{{/rollGreater() targetsroll 4}}
|
||||
</div>
|
||||
@@ -2510,7 +2528,7 @@
|
||||
<!-- // Sheet Workers //////////////////////////////////////////////////////////////// -->
|
||||
<script type="text/worker">
|
||||
// Main tab bar
|
||||
const buttonlist = ["atk", "aab", "pab", "eqp", "res", "inv", "oth"];
|
||||
const buttonlist = ["atk", "aab", "pab", "eqp", "res", "inv", "oth", "set"];
|
||||
buttonlist.forEach(button => {
|
||||
on(`clicked:${button}`, function() {
|
||||
setAttrs({
|
||||
@@ -2667,6 +2685,10 @@ const attackDiceInputs = [
|
||||
"atkothercrit",
|
||||
"gmatkaimdice",
|
||||
"gmatkcritdice",
|
||||
"gmatk1aimdice",
|
||||
"gmatk1critdice",
|
||||
"gmatk2aimdice",
|
||||
"gmatk2critdice",
|
||||
"atkoverwatch"
|
||||
];
|
||||
on(sheetOpenAndAttrChanged(attackDiceInputs) +
|
||||
@@ -2695,6 +2717,10 @@ on(sheetOpenAndAttrChanged(attackDiceInputs) +
|
||||
let atkothercrit = parseInt(values.atkothercrit)||0;
|
||||
let gmatkaimdice = parseInt(values.gmatkaimdice)||0;
|
||||
let gmatkcritdice = parseInt(values.gmatkcritdice)||0;
|
||||
let gmatk1aimdice = parseInt(values.gmatk1aimdice)||0;
|
||||
let gmatk1critdice = parseInt(values.gmatk1critdice)||0;
|
||||
let gmatk2aimdice = parseInt(values.gmatk2aimdice)||0;
|
||||
let gmatk2critdice = parseInt(values.gmatk2critdice)||0;
|
||||
|
||||
let aimBonus = 0;
|
||||
let critBonus = 0;
|
||||
@@ -2733,7 +2759,11 @@ on(sheetOpenAndAttrChanged(attackDiceInputs) +
|
||||
custattackaimdice: Math.max(aim + atkotheraim + aimBonus, 0),
|
||||
custattackcritdice: Math.max(atkothercrit + critBonus, 0),
|
||||
gmatkaimdicetotal: Math.max(gmatkaimdice + aimBonus, 0),
|
||||
gmatkcritdicetotal: Math.max(gmatkcritdice + critBonus, 0)
|
||||
gmatkcritdicetotal: Math.max(gmatkcritdice + critBonus, 0),
|
||||
gmatk1aimdicetotal: Math.max(gmatk1aimdice + aimBonus, 0),
|
||||
gmatk1critdicetotal: Math.max(gmatk1critdice + critBonus, 0),
|
||||
gmatk2aimdicetotal: Math.max(gmatk2aimdice + aimBonus, 0),
|
||||
gmatk2critdicetotal: Math.max(gmatk2critdice + critBonus, 0)
|
||||
});
|
||||
|
||||
const repeatAttrs = [
|
||||
@@ -3119,49 +3149,62 @@ const selectedEnemyAttrs = [
|
||||
["_gmunitabl4effect", "selectedenemyabl4effect"],
|
||||
];
|
||||
|
||||
function SelectUnit(unitId) {
|
||||
let attrs = [
|
||||
["_gmunitwill", "gmwatkwill"],
|
||||
["_gmunitdodge", "gmdodgedice"],
|
||||
function SelectUnit(unitId, force) {
|
||||
getAttrs(["selectedenemyid"], function(values) {
|
||||
let selectedenemyid = values.selectedenemyid;
|
||||
if (!force && selectedenemyid == unitId) {
|
||||
return;
|
||||
}
|
||||
console.log("selectedenemyid: " + selectedenemyid);
|
||||
let attrs = [
|
||||
["_gmunitwill", "gmwatkwill"],
|
||||
["_gmunitdodge", "gmdodgedice"],
|
||||
|
||||
["_gmunitatkname", "gmatkname"],
|
||||
["_gmunitatkcrit", "gmatkcritdice"],
|
||||
["_gmunitatkdmg", "gmatkdamage"],
|
||||
["_gmunitatkcritdmg", "gmatkcritdamage"],
|
||||
["_gmunitatkaim", "gmatkaimdice"],
|
||||
["_gmunitatknotes", "selectedenemyatknotes"],
|
||||
["_gmunitatkname", "gmatkname"],
|
||||
["_gmunitatkcrit", "gmatkcritdice"],
|
||||
["_gmunitatkdmg", "gmatkdamage"],
|
||||
["_gmunitatkcritdmg", "gmatkcritdamage"],
|
||||
["_gmunitatkaim", "gmatkaimdice"],
|
||||
["_gmunitatknotes", "selectedenemyatknotes"],
|
||||
|
||||
["_gmunitatk1name", "gmatk1name"],
|
||||
["_gmunitatk1crit", "gmatk1critdice"],
|
||||
["_gmunitatk1dmg", "gmatk1damage"],
|
||||
["_gmunitatk1critdmg", "gmatk1critdamage"],
|
||||
["_gmunitatk1aim", "gmatk1aimdice"],
|
||||
["_gmunitatk1notes", "selectedenemyatk1notes"],
|
||||
["_gmunitatk1name", "gmatk1name"],
|
||||
["_gmunitatk1crit", "gmatk1critdice"],
|
||||
["_gmunitatk1dmg", "gmatk1damage"],
|
||||
["_gmunitatk1critdmg", "gmatk1critdamage"],
|
||||
["_gmunitatk1aim", "gmatk1aimdice"],
|
||||
["_gmunitatk1notes", "selectedenemyatk1notes"],
|
||||
|
||||
["_gmunitatk2name", "gmatk2name"],
|
||||
["_gmunitatk2crit", "gmatk2critdice"],
|
||||
["_gmunitatk2dmg", "gmatk2damage"],
|
||||
["_gmunitatk2critdmg", "gmatk2critdamage"],
|
||||
["_gmunitatk2aim", "gmatk2aimdice"],
|
||||
["_gmunitatk2notes", "selectedenemyatk2notes"]
|
||||
];
|
||||
attrGetters = [];
|
||||
attrs.forEach(attrPair => {
|
||||
attrPair[0] = "repeating_gmenemyunitlist_" + unitId + attrPair[0];
|
||||
attrGetters.push(attrPair[0]);
|
||||
});
|
||||
selectedEnemyAttrs.forEach(attrPair => {
|
||||
let completeAttr = "repeating_gmenemyunitlist_" + unitId + attrPair[0];
|
||||
attrs.push([completeAttr, attrPair[1]]);
|
||||
attrGetters.push(completeAttr);
|
||||
});
|
||||
|
||||
let output = { selectedenemyid: unitId };
|
||||
getAttrs(attrGetters, function(values) {
|
||||
["_gmunitatk2name", "gmatk2name"],
|
||||
["_gmunitatk2crit", "gmatk2critdice"],
|
||||
["_gmunitatk2dmg", "gmatk2damage"],
|
||||
["_gmunitatk2critdmg", "gmatk2critdamage"],
|
||||
["_gmunitatk2aim", "gmatk2aimdice"],
|
||||
["_gmunitatk2notes", "selectedenemyatk2notes"]
|
||||
];
|
||||
attrGetters = [];
|
||||
attrs.forEach(attrPair => {
|
||||
output[attrPair[1]] = values[attrPair[0]]||"";
|
||||
attrPair[0] = "repeating_gmenemyunitlist_" + unitId + attrPair[0];
|
||||
attrGetters.push(attrPair[0]);
|
||||
});
|
||||
selectedEnemyAttrs.forEach(attrPair => {
|
||||
let completeAttr = "repeating_gmenemyunitlist_" + unitId + attrPair[0];
|
||||
attrs.push([completeAttr, attrPair[1]]);
|
||||
attrGetters.push(completeAttr);
|
||||
});
|
||||
|
||||
let output = {
|
||||
selectedenemyid: unitId,
|
||||
[`repeating_gmenemyunitlist_${unitId}_selected`]: 1
|
||||
};
|
||||
if (selectedenemyid && selectedenemyid != unitId) {
|
||||
output[`repeating_gmenemyunitlist_${selectedenemyid}_selected`] = 0;
|
||||
}
|
||||
getAttrs(attrGetters, function(values) {
|
||||
attrs.forEach(attrPair => {
|
||||
output[attrPair[1]] = values[attrPair[0]]||"";
|
||||
});
|
||||
setAttrs(output);
|
||||
});
|
||||
setAttrs(output);
|
||||
});
|
||||
}
|
||||
|
||||
@@ -3264,6 +3307,13 @@ on("clicked:clearselectedunit", function() {
|
||||
ClearSelectedUnit();
|
||||
});
|
||||
|
||||
on("clicked:refreshselectedunit", function() {
|
||||
getAttrs(["selectedenemyid"], function(values) {
|
||||
let unitId = values.selectedenemyid;
|
||||
SelectUnit(unitId, true);
|
||||
});
|
||||
});
|
||||
|
||||
on("remove:repeating_gmenemyunitlist", function(eventInfo) {
|
||||
getAttrs(["selectedenemyid"], function(values) {
|
||||
let unitId = values.selectedenemyid;
|
||||
|
||||
Reference in New Issue
Block a user