Merge pull request #12067 from MadCoder253/gurps-2.9.11

[GURPS 4E] 2.9.11
This commit is contained in:
Nic Bradley
2023-08-14 09:08:10 -07:00
committed by GitHub
3 changed files with 388 additions and 287 deletions
+14 -2
View File
@@ -3886,8 +3886,6 @@ input[name="attr_carried"][value="1"] ~ span.sheet-item-weight-total {
}
/* -- Roll Templates -- */
.sheet-rolltemplate-addToTracker .sheet-container table.sheet-result,
.sheet-rolltemplate-rollStats .sheet-container table.sheet-result {
@@ -4010,6 +4008,10 @@ input[name="attr_carried"][value="1"] ~ span.sheet-item-weight-total {
line-height: 1.2em;
}
.sheet-rolltemplate-skillRoll .sheet-container table.sheet-result p {
font-size: 12px;
}
.sheet-rolltemplate-skillRoll .sheet-container table.sheet-result th {
color: var(--header-text);
padding: 6px;
@@ -4157,6 +4159,16 @@ input[name="attr_carried"][value="1"] ~ span.sheet-item-weight-total {
padding: 0;
}
/* -- spell grid -- */
.sheet-rolltemplate-spell-grid {
display: grid;
grid-template-columns: 40px 75px 40px auto;
}
.sheet-rolltemplate-spell-grid .sheet-label {
font-weight: bold;
}
/**********************************/
/* Custom rolltemplate for macros */
+369 -283
View File
@@ -4359,30 +4359,18 @@
<input type="text" name="attr_announcement_version" readonly="readonly" value="0" title="GURPS Character Sheet Version" />
</h4>
<!-- current version notes: 2.9.10 -->
<!-- current version notes: 2.9.11 -->
<ul>
<li>
Traits Tab. Improve ability to drag/drop repeating culture items.
Shotgun Damage Tool. Changed the title, added some additional tooltips and moved the DR multiplier note next to the damage roll.
</li>
<li>
Skills Tab. Moved the field <b>Reason for MOD (Modifier):</b> to its own line and expanded the input field.
Spell Roll Chat Log. Streamlined some of the content so spells take up a little less space.
</li>
<li>
Active Defense Rolls. Updated title of roll template to be [type of defense] using [defensive name]. Example, <b>Unarmed Parry</b> using punch.
</li>
<li>
Several small changes to text information; Active Defense notes for <b>INFO</b> field updated to show page 269 instead of 208.
Added some additional help text show if malfunction is enabled or disabled.
</li>
<li>
Chat Log Roll Results. The roll number and hit/success note are now on one line and additional notes related to the results are shown on a separate line. This should reduce
the size of the roll results chat log, saving room.
</li>
<li>
Repeating Skill Chat Log Roll. If there's a Tech Level associated with the skill, it will be appended to the name.
</li>
<li>
Melee Tab - Max skill of 9 checkbox. Fixed bug where the summary would show "Mighty Blow 1 FP per attack. +2 Damage or +1 per die!".
List of minor changes: roll results notes font size changed from 13px to 12px.<br />
Moved the custom success/fail messages for spells just below the roll result in chat dialog.<br />
Fixed bug where repeating languages were not calculating correctly.<br />
</li>
</ul>
@@ -7371,7 +7359,7 @@ PC in Character Points (spent and unspent combined).
<input type="number" step="1" name="attr_written_mod_points" value="0" title="Macro: @{NAME|repeating_languages_$[row #]_written_mod_points}" />
</div>
<div class="cell col3">
<input type="text" name="attr_points" value="@{spoken_points} + @{spoken_mod_points} + @{written_points} + @{written_mod_points}" disabled="disabled" title="Macro: @{NAME|repeating_languages_$[row #]_points}" />
<input type="text" name="attr_points" value="@{spoken_points} + @{written_points}" disabled="disabled" title="Macro: @{NAME|repeating_languages_$[row #]_points}" />
</div>
</div> <!-- .row -->
</fieldset> <!-- .repeating_languages -->
@@ -13027,7 +13015,11 @@ visualize what it will look like in chat.
<div class="row title">
<div class="cell">
<span data-i18n="close-range-shotgun-label">Close Range Shotgun Damage Tool</span>
<div class="popup">
<span data-i18n="close-range-shotgun-label">Close Range Shotgun & Multiple Projectile Damage Tool</span></div>
<div class="tooltip">
<span data-i18n="close-range-shotgun-label-tooltip">Used for extremely close combat at a range of 10% of the ½D Range or less. See Shotguns and Multiple Projectiles for more details.</span>
</div>
</div>
</div>
@@ -13054,7 +13046,7 @@ visualize what it will look like in chat.
<span data-i18n="close-label">Close</span>
</div>
<div class="tooltip">
<span data-i18n="shotgun-close-range-tooltip">Close range.</span>
<span data-i18n="shotgun-close-range-tooltip">This value is 10% of the ½D Range of the weapon. This is the maximum range this tool is used for.</span>
</div>
</div>
<div class="cell close-rof">
@@ -13138,7 +13130,7 @@ visualize what it will look like in chat.
Damage x1
Vitals Damage x3
Skull Damage x4" />
<button type="roll" value="@{roll}&{template:skillRoll} {{sheetStyle=@{sheetstyle}}} {{type=Damage Roll}} {{characterName=@{character_name}}} {{skillName=Close Shotgun Damage}} {{damageRoll=[[@{shotgun_close_damage}]]}} {{useDamageTypeNotes=[[@{use_damage_type_notes}]]}} {{damageTypeNote=@{shotgun_damage_type_note}}} {{showMinimumDmgNote=[[@{show_minimum_damage_notes}]]}} {{minDamageNote=Crush min 0, else min 1}} {{showNotes=[[1]]}} {{notes=@{shotgun_dr_multiplier_notes}}}" name="roll_dmgCloseShotgunDamage" class="roll_damage" />
<button type="roll" value="@{roll}&{template:skillRoll} {{sheetStyle=@{sheetstyle}}} {{damageRoll=[[@{shotgun_close_damage}]]}} {{drMultiplier=@{shotgun_dr_multiplier}}} {{type=Damage Roll}} {{characterName=@{character_name}}} {{skillName=Close Shotgun Damage}} {{useDamageTypeNotes=[[@{use_damage_type_notes}]]}} {{damageTypeNote=@{shotgun_damage_type_note}}} {{showMinimumDmgNote=[[@{show_minimum_damage_notes}]]}} {{minDamageNote=Crush min 0, else min 1}} {{showNotes=[[1]]}}" name="roll_dmgCloseShotgunDamage" class="roll_damage" />
</div>
<div class="cell reset">
<button type="action" name="act_shotgun_reset" class="reset"><span data-i18n="reset-label">Reset</span></button>
@@ -14764,7 +14756,23 @@ Select the indent level of the inventory item. This is handy to help show the it
<p>Pull Request: <span name="attr_latest_changes"></span></p>
<!-- current version notes: 2.9.10 -->
<!-- current version notes: 2.9.11 -->
<ul>
<li>
Shotgun Damage Tool. Changed the title, added some additional tooltips, and moved the DR multiplier note next to the damage roll.
</li>
<li>
Spell Roll Chat Log. Streamlined some of the content so spells take up a little less space.
</li>
<li>
List of minor changes: roll results notes font size changed from 13px to 12px.<br />
Moved the custom success/fail messages for spells just below the roll result in chat dialog.<br />
Fixed bug where repeating languages were not calculating correctly.<br />
</li>
</ul>
<h4>Version: 2.9.10</h4>
<p>Pull Requst: 7/31/2023</p>
<ul>
<li>
Traits Tab. Improve ability to drag/drop repeating culture items.
@@ -18365,6 +18373,306 @@ Diffuse: Max 2HP (Exception: Area-effect, cone, and explosion attacks cause norm
</td>
</tr>
{{/rollResult}}
<!-- NOTE: Need to replicate the complicated success/fail checks to display spell notes. -->
{{#rollResult}}
{{#spellRoll}}
<!-- WARNING THIS IS GOING TO GET UGLY AND HARD TO FOLLOW -->
<!-- NOTE: Regardless of the score you are rolling against, -->
<!-- a roll of 3 or 4 is always a success, while a roll of 17 or 18 is always a failure. -->
<!-- Roll of 18 is always critical failure -->
{{#rollTotal() rollResult 18}}
<tr class="rollResult">
<td colspan="2">
{{spellCriticalFailureNote}}
</td>
</tr>
{{/rollTotal() rollResult 18}}
<!-- Roll of 17 is always a failure -->
{{#rollTotal() rollResult 17}}
<!-- skill of 15 or less is critical -->
{{#rollLess() effectiveSkill 16}}
<tr class="rollResult">
<td colspan="2">
{{spellCriticalFailureNote}}
</td>
</tr>
{{/rollLess() effectiveSkill 16}}
<!-- skill of 16 or higher is normal failure, add helper text -->
{{#rollGreater() effectiveSkill 15}}
<tr class="rollResult">
<td colspan="2">
{{spellFailNote}}
</td>
</tr>
{{/rollGreater() effectiveSkill 15}}
{{/rollTotal() rollResult 17}}
<!-- A roll of 3 or 4 always succeeds -->
{{#rollBetween() rollResult 3 4}}
<!-- if critical success is turned on, show text -->
{{#rollLess() useCriticalPlusTen 2}}
<tr class="rollResult">
<td colspan="2">
{{spellCriticalSuccessNote}}
</td>
</tr>
{{/rollLess() useCriticalPlusTen 2}}
<!-- normal success area -->
{{#rollTotal() useCriticalPlusTen 2}}
<!-- block custom success note -->
{{/rollTotal() useCriticalPlusTen 2}}
{{/rollBetween() rollResult 3 4}}
<!-- Roll from 5 to 16 means we have a chance at hit or miss -->
<!-- NOTE: A roll of 3 or 4 always succeeds, handled above -->
{{#rollBetween() rollResult 5 16}}
<!-- Check for failure, where roll is greater than effective skill -->
{{#rollGreater() rollResult effectiveSkill}}
<!-- if effective skill is 3 or less, critical failure is 13 or higher -->
{{#rollLess() effectiveSkill 4}}
{{#rollGreater() rollResult 12}}
<tr class="rollResult">
<td colspan="2">
{{spellCriticalFailureNote}}
</td>
</tr>
{{/rollGreater() rollResult 12}}
{{/rollLess() effectiveSkill 4}}
<!-- if effective skill is 4, critical failure is 14 or higher -->
{{#rollTotal() effectiveSkill 4}}
{{#rollGreater() rollResult 13}}
<tr class="rollResult">
<td colspan="2">
{{spellCriticalFailureNote}}
</td>
</tr>
{{/rollGreater() rollResult 13}}
{{/rollTotal() effectiveSkill 4}}
<!-- if effective skill is 5, critical failure is 15 or higher -->
{{#rollTotal() effectiveSkill 5}}
{{#rollGreater() rollResult 14}}
<tr class="rollResult">
<td colspan="2">
{{spellCriticalFailureNote}}
</td>
</tr>
{{/rollGreater() rollResult 14}}
{{/rollTotal() effectiveSkill 5}}
<!-- if effective skill is 6, critical failure is 16 or higher -->
{{#rollTotal() effectiveSkill 6}}
{{#rollGreater() rollResult 15}}
<tr class="rollResult">
<td colspan="2">
{{spellCriticalFailureNote}}
</td>
</tr>
{{/rollGreater() rollResult 15}}
{{/rollTotal() effectiveSkill 6}}
<!-- if effective skill is 7 to 15, critical failure is 17 or 18 -->
{{#rollBetween() effectiveSkill 7 15}}
{{#rollGreater() rollResult 16}}
<tr class="rollResult">
<td colspan="2">
{{spellCriticalFailureNote}}
</td>
</tr>
{{/rollGreater() rollResult 16}}
{{/rollBetween() effectiveSkill 7 15}}
<!-- NOTE: Roll of 18 check has already been made -->
<!-- additional critical failure text -->
<!-- if effective skill is 3 or less, critical failure is 13 or higher -->
{{#rollLess() effectiveSkill 4}}
<!-- normal failure -->
{{#rollLess() rollResult 13}}
<tr class="rollResult">
<td colspan="2">
{{spellFailNote}}
</td>
</tr>
{{/rollLess() rollResult 13}}
<!-- critical failure -->
{{#rollGreater() rollResult 12}}
<tr class="rollResult">
<td colspan="2">
{{spellCriticalFailureNote}}
</td>
</tr>
{{/rollGreater() rollResult 12}}
{{/rollLess() effectiveSkill 4}}
<!-- if effective skill is 4, critical failure is 14 or higher -->
{{#rollTotal() effectiveSkill 4}}
<!-- normal failure -->
{{#rollLess() rollResult 15}}
<tr class="rollResult">
<td colspan="2">
{{spellFailNote}}
</td>
</tr>
{{/rollLess() rollResult 15}}
<!-- critical failure -->
{{#rollGreater() rollResult 13}}
<tr class="rollResult">
<td colspan="2">
{{spellCriticalFailureNote}}
</td>
</tr>
{{/rollGreater() rollResult 13}}
{{/rollTotal() effectiveSkill 4}}
<!-- if effective skill is 5, critical failure is 15 or higher -->
{{#rollTotal() effectiveSkill 5}}
<!-- normal failure -->
{{#rollLess() rollResult 15}}
<tr class="rollResult">
<td colspan="2">
{{spellFailNote}}
</td>
</tr>
{{/rollLess() rollResult 15}}
<!-- critical failure -->
{{#rollGreater() rollResult 14}}
<tr class="rollResult">
<td colspan="2">
{{spellCriticalFailureNote}}
</td>
</tr>
{{/rollGreater() rollResult 14}}
{{/rollTotal() effectiveSkill 5}}
<!-- if effective skill is 6, critical failure is 16 or higher -->
{{#rollTotal() effectiveSkill 6}}
<!-- normal failure -->
{{#rollLess() rollResult 16}}
<tr class="rollResult">
<td colspan="2">
{{spellFailNote}}
</td>
</tr>
{{/rollLess() rollResult 16}}
<!-- critical failure -->
{{#rollGreater() rollResult 15}}
<tr class="rollResult">
<td colspan="2">
{{spellCriticalFailureNote}}
</td>
</tr>
{{/rollGreater() rollResult 15}}
{{/rollTotal() effectiveSkill 6}}
<!-- if effective skill is 7 to 15, critical failure is 17 or 18 -->
{{#rollBetween() effectiveSkill 7 15}}
<!-- normal failure -->
{{#rollLess() rollResult 17}}
<tr class="rollResult">
<td colspan="2">
{{spellFailNote}}
</td>
</tr>
{{/rollLess() rollResult 17}}
<!-- critical failure -->
{{#rollGreater() rollResult 16}}
<tr class="rollResult">
<td colspan="2">
{{spellCriticalFailureNote}}
</td>
</tr>
{{/rollGreater() rollResult 16}}
{{/rollBetween() effectiveSkill 7 15}}
{{/rollGreater() rollResult effectiveSkill}}
<!-- check for success, roll from 5 to effective skill -->
<!-- NOTE: roll 3 or 4 has already been handled -->
{{#rollBetween() rollResult 5 effectiveSkill}}
<!-- Check if Critical Success was turned on -->
<!-- attr_use_critical_plus_10: 0 = only on 3 or 4, 1 = rules as written, 2 = turn off -->
<!-- NOTE: 3 or 4 has already been handled at the beginning -->
{{#rollLess() useCriticalPlusTen 2}}
<!-- If rules as written -->
{{#rollTotal() useCriticalPlusTen 1}}
<!-- normal success -->
{{#rollGreater() rollResult 6}}
<!-- block custom success note -->
{{/rollGreater() rollResult 6}}
<!-- if effective skill is 16 or higher, check for critical success on a 5 or 6 -->
{{#rollGreater() effectiveSkill 15}}
{{#rollBetween() rollResult 5 6}}
<tr class="rollResult">
<td colspan="2">
{{spellCriticalSuccessNote}}
</td>
</tr>
{{/rollBetween() rollResult 5 6}}
{{/rollGreater() effectiveSkill 15}}
<!-- If rules as written and if effectiveSkill is 15, check for critical success on a 5 -->
{{#rollTotal() effectiveSkill 15}}
{{#rollTotal() rollResult 5}}
<tr class="rollResult">
<td colspan="2">
{{spellCriticalSuccessNote}}
</td>
</tr>
{{/rollTotal() rollResult 5}}
{{/rollTotal() effectiveSkill 15}}
{{/rollTotal() useCriticalPlusTen 1}}
{{/rollLess() useCriticalPlusTen 2}}
<!-- check if critical success is off -->
<!-- attr_use_critical_plus_10: 0 = only on 3 or 4, 1 = rules as written, 2 = turn off -->
{{#rollTotal() useCriticalPlusTen 2}}
<!-- block custom success note -->
{{/rollTotal() useCriticalPlusTen 2}}
{{/rollBetween() rollResult 5 effectiveSkill}}
{{/rollBetween() rollResult 5 16}}
</td>
</tr>
{{/spellRoll}}
{{/rollResult}}
{{#effectiveSkill}}
@@ -18522,223 +18830,6 @@ Diffuse: Max 2HP (Exception: Area-effect, cone, and explosion attacks cause norm
{{/rollTotal() useModTool 1}}
<!-- NOTE: Need to replicate the complicated success/fail checks to display spell notes. -->
{{#rollResult}}
{{#spellRoll}}
<tr class="rollResult">
<td colspan="2">
<!-- WARNING THIS IS GOING TO GET UGLY AND HARD TO FOLLOW -->
<!-- NOTE: Regardless of the score you are rolling against, -->
<!-- a roll of 3 or 4 is always a success, while a roll of 17 or 18 is always a failure. -->
<!-- Roll of 18 is always critical failure -->
{{#rollTotal() rollResult 18}}
{{spellCriticalFailureNote}}
{{/rollTotal() rollResult 18}}
<!-- Roll of 17 is always a failure -->
{{#rollTotal() rollResult 17}}
<!-- skill of 15 or less is critical -->
{{#rollLess() effectiveSkill 16}}
{{spellCriticalFailureNote}}
{{/rollLess() effectiveSkill 16}}
<!-- skill of 16 or higher is normal failure, add helper text -->
{{#rollGreater() effectiveSkill 15}}
{{spellFailNote}}
{{/rollGreater() effectiveSkill 15}}
{{/rollTotal() rollResult 17}}
<!-- A roll of 3 or 4 always succeeds -->
{{#rollBetween() rollResult 3 4}}
<!-- if critical success is turned on, show text -->
{{#rollLess() useCriticalPlusTen 2}}
{{spellCriticalSuccessNote}}
{{/rollLess() useCriticalPlusTen 2}}
<!-- normal success area -->
{{#rollTotal() useCriticalPlusTen 2}}
<!-- block custom success note -->
{{/rollTotal() useCriticalPlusTen 2}}
{{/rollBetween() rollResult 3 4}}
<!-- Roll from 5 to 16 means we have a chance at hit or miss -->
<!-- NOTE: A roll of 3 or 4 always succeeds, handled above -->
{{#rollBetween() rollResult 5 16}}
<!-- Check for failure, where roll is greater than effective skill -->
{{#rollGreater() rollResult effectiveSkill}}
<!-- if effective skill is 3 or less, critical failure is 13 or higher -->
{{#rollLess() effectiveSkill 4}}
{{#rollGreater() rollResult 12}}
{{spellCriticalFailureNote}}
{{/rollGreater() rollResult 12}}
{{/rollLess() effectiveSkill 4}}
<!-- if effective skill is 4, critical failure is 14 or higher -->
{{#rollTotal() effectiveSkill 4}}
{{#rollGreater() rollResult 13}}
{{spellCriticalFailureNote}}
{{/rollGreater() rollResult 13}}
{{/rollTotal() effectiveSkill 4}}
<!-- if effective skill is 5, critical failure is 15 or higher -->
{{#rollTotal() effectiveSkill 5}}
{{#rollGreater() rollResult 14}}
{{spellCriticalFailureNote}}
{{/rollGreater() rollResult 14}}
{{/rollTotal() effectiveSkill 5}}
<!-- if effective skill is 6, critical failure is 16 or higher -->
{{#rollTotal() effectiveSkill 6}}
{{#rollGreater() rollResult 15}}
{{spellCriticalFailureNote}}
{{/rollGreater() rollResult 15}}
{{/rollTotal() effectiveSkill 6}}
<!-- if effective skill is 7 to 15, critical failure is 17 or 18 -->
{{#rollBetween() effectiveSkill 7 15}}
{{#rollGreater() rollResult 16}}
{{spellCriticalFailureNote}}
{{/rollGreater() rollResult 16}}
{{/rollBetween() effectiveSkill 7 15}}
<!-- NOTE: Roll of 18 check has already been made -->
<!-- additional critical failure text -->
<!-- if effective skill is 3 or less, critical failure is 13 or higher -->
{{#rollLess() effectiveSkill 4}}
<!-- normal failure -->
{{#rollLess() rollResult 13}}
{{spellFailNote}}
{{/rollLess() rollResult 13}}
<!-- critical failure -->
{{#rollGreater() rollResult 12}}
{{spellCriticalFailureNote}}
{{/rollGreater() rollResult 12}}
{{/rollLess() effectiveSkill 4}}
<!-- if effective skill is 4, critical failure is 14 or higher -->
{{#rollTotal() effectiveSkill 4}}
<!-- normal failure -->
{{#rollLess() rollResult 15}}
{{spellFailNote}}
{{/rollLess() rollResult 15}}
<!-- critical failure -->
{{#rollGreater() rollResult 13}}
{{spellCriticalFailureNote}}
{{/rollGreater() rollResult 13}}
{{/rollTotal() effectiveSkill 4}}
<!-- if effective skill is 5, critical failure is 15 or higher -->
{{#rollTotal() effectiveSkill 5}}
<!-- normal failure -->
{{#rollLess() rollResult 15}}
{{spellFailNote}}
{{/rollLess() rollResult 15}}
<!-- critical failure -->
{{#rollGreater() rollResult 14}}
{{spellCriticalFailureNote}}
{{/rollGreater() rollResult 14}}
{{/rollTotal() effectiveSkill 5}}
<!-- if effective skill is 6, critical failure is 16 or higher -->
{{#rollTotal() effectiveSkill 6}}
<!-- normal failure -->
{{#rollLess() rollResult 16}}
{{spellFailNote}}
{{/rollLess() rollResult 16}}
<!-- critical failure -->
{{#rollGreater() rollResult 15}}
{{spellCriticalFailureNote}}
{{/rollGreater() rollResult 15}}
{{/rollTotal() effectiveSkill 6}}
<!-- if effective skill is 7 to 15, critical failure is 17 or 18 -->
{{#rollBetween() effectiveSkill 7 15}}
<!-- normal failure -->
{{#rollLess() rollResult 17}}
{{spellFailNote}}
{{/rollLess() rollResult 17}}
<!-- critical failure -->
{{#rollGreater() rollResult 16}}
{{spellCriticalFailureNote}}
{{/rollGreater() rollResult 16}}
{{/rollBetween() effectiveSkill 7 15}}
{{/rollGreater() rollResult effectiveSkill}}
<!-- check for success, roll from 5 to effective skill -->
<!-- NOTE: roll 3 or 4 has already been handled -->
{{#rollBetween() rollResult 5 effectiveSkill}}
<!-- Check if Critical Success was turned on -->
<!-- attr_use_critical_plus_10: 0 = only on 3 or 4, 1 = rules as written, 2 = turn off -->
<!-- NOTE: 3 or 4 has already been handled at the beginning -->
{{#rollLess() useCriticalPlusTen 2}}
<!-- If rules as written -->
{{#rollTotal() useCriticalPlusTen 1}}
<!-- normal success -->
{{#rollGreater() rollResult 6}}
<!-- block custom success note -->
{{/rollGreater() rollResult 6}}
<!-- if effective skill is 16 or higher, check for critical success on a 5 or 6 -->
{{#rollGreater() effectiveSkill 15}}
{{#rollBetween() rollResult 5 6}}
{{spellCriticalSuccessNote}}
{{/rollBetween() rollResult 5 6}}
{{/rollGreater() effectiveSkill 15}}
<!-- If rules as written and if effectiveSkill is 15, check for critical success on a 5 -->
{{#rollTotal() effectiveSkill 15}}
{{#rollTotal() rollResult 5}}
{{spellCriticalSuccessNote}}
{{/rollTotal() rollResult 5}}
{{/rollTotal() effectiveSkill 15}}
{{/rollTotal() useCriticalPlusTen 1}}
{{/rollLess() useCriticalPlusTen 2}}
<!-- check if critical success is off -->
<!-- attr_use_critical_plus_10: 0 = only on 3 or 4, 1 = rules as written, 2 = turn off -->
{{#rollTotal() useCriticalPlusTen 2}}
<!-- block custom success note -->
{{/rollTotal() useCriticalPlusTen 2}}
{{/rollBetween() rollResult 5 effectiveSkill}}
{{/rollBetween() rollResult 5 16}}
</td>
</tr>
{{/spellRoll}}
{{/rollResult}}
{{#rollTotal() useMalfunction 1}}
{{#malfunction}}
{{#rollGreater() malfunction 0}}
@@ -18779,6 +18870,9 @@ Diffuse: Max 2HP (Exception: Area-effect, cone, and explosion attacks cause norm
</td>
<td class="damage-roll">
{{damageRoll}} <span class="damageType">{{damageType}}</span>
{{#drMultiplier}}
<span>DR Multiplier: {{drMultiplier}}</span>
{{/drMultiplier}}
</td>
</tr>
{{#rollTotal() showMinimumDmgNote 1}}
@@ -18847,6 +18941,9 @@ Diffuse: Max 2HP (Exception: Area-effect, cone, and explosion attacks cause norm
<tr>
<td colspan="2" class="tool-modifier-title">
<span data-i18n="spell-summary-label">Spell Summary</span>
{{#castingClass}}
(<span data-i18n="class-label">Class</span>: {{castingClass}})
{{/castingClass}}
</td>
</tr>
@@ -18861,41 +18958,27 @@ Diffuse: Max 2HP (Exception: Area-effect, cone, and explosion attacks cause norm
{{/spellNotes}}
{{/rollTotal() showSpellNotes 1}}
{{#castingTime}}
<tr>
<td class="label">
<span data-i18n="time-label">Time</span>:
<td colspan="2">
<div class="rolltemplate-spell-grid">
<div class="label"><span data-i18n="time-label">Time</span>:</div>
<div>{{castingTime}}</div>
<div class="label"><span data-i18n="duration-abbreviated-label">Dur.</span>:</div>
<div>{{castingDuration}}</div>
</div>
</td>
<td>{{castingTime}}</td>
</tr>
{{/castingTime}}
{{#castingDuration}}
<tr>
<td class="label">
<span data-i18n="duration-label">Duration</span>:
<td colspan="2">
<div class="rolltemplate-spell-grid">
<div class="label"><span data-i18n="cost-label">Cost</span>:</div>
<div>{{castingCost}}</div>
<div class="label"><span data-i18n="maintain-abbreviated-label">Maint.</span>:</div>
<div>{{castingMaintain}}</div>
</div>
</td>
<td>{{castingDuration}}</td>
</tr>
{{/castingDuration}}
{{#castingCost}}
<tr>
<td class="label">
<span data-i18n="cost-label">Cost</span>:
</td>
<td>{{castingCost}}</td>
</tr>
{{/castingCost}}
{{#castingMaintain}}
<tr>
<td class="label">
<span data-i18n="maintain-label">Maintain</span>:
</td>
<td>{{castingMaintain}}</td>
</tr>
{{/castingMaintain}}
{{#castingResist}}
<tr>
@@ -18904,14 +18987,6 @@ Diffuse: Max 2HP (Exception: Area-effect, cone, and explosion attacks cause norm
</tr>
{{/castingResist}}
{{#castingClass}}
<tr>
<td class="label">
<span data-i18n="class-label">Class</span>:
</td>
<td>{{castingClass}}</td>
</tr>
{{/castingClass}}
{{/rollTotal() showCastingDetails 1}}
@@ -19090,9 +19165,9 @@ Diffuse: Max 2HP (Exception: Area-effect, cone, and explosion attacks cause norm
const noop = function () { }; // do nothing callback function.
const version = "2.9.10";
const version = "2.9.11";
const latestChangesDate = "7/31/2023";
const latestChangesDate = "8/14/2023";
let modCascade = true;
@@ -21119,14 +21194,16 @@ Diffuse: Max 2HP (Exception: Area-effect, cone, and explosion attacks cause norm
});
// check for changes to repeating language drop-downs
on("change:repeating_languages:spoken change:repeating_languages:spoken_talent change:repeating_languages:written change:repeating_languages:written_talent", (event) => {
on("change:repeating_languages:spoken change:repeating_languages:spoken_talent change:repeating_languages:spoken_mod_points change:repeating_languages:written change:repeating_languages:written_talent change:repeating_languages:written_mod_points", (event) => {
const fields = [
"has_language_talent",
"repeating_languages_spoken",
"repeating_languages_spoken_talent",
"repeating_languages_spoken_mod_points",
"repeating_languages_written",
"repeating_languages_written_talent"
"repeating_languages_written_talent",
"repeating_languages_written_mod_points",
];
getAttrs(fields, values => {
@@ -21135,8 +21212,12 @@ Diffuse: Max 2HP (Exception: Area-effect, cone, and explosion attacks cause norm
let spokenPoints = Number(values.repeating_languages_spoken);
let spokenModPoints = Number(values.repeating_languages_spoken_mod_points);
let writtenPoints = Number(values.repeating_languages_written);
let writtenModPoints = Number(values.repeating_languages_written_mod_points);
let totalPoints = 0;
if (hasLanguageTalent) {
@@ -21146,6 +21227,11 @@ Diffuse: Max 2HP (Exception: Area-effect, cone, and explosion attacks cause norm
writtenPoints = Number(values.repeating_languages_written_talent);
}
// factor in modifiers
spokenPoints = spokenPoints + spokenModPoints;
writtenPoints = writtenPoints + writtenModPoints;
totalPoints = spokenPoints + writtenPoints;
setAttrs({
@@ -28399,7 +28485,7 @@ B378
shotgun_close_range: "5",
shotgun_close_rof: "2",
shotgun_close_damage: "4d6+4",
shotgun_dr_multiplier: "DR x 4",
shotgun_dr_multiplier: "x4",
shotgun_dr_multiplier_notes: "Multiply targets DR by 4."
};
@@ -28503,7 +28589,7 @@ B378
}
let drMultiplier = `DR x ${modifier}`;
let drMultiplier = `x${modifier}`;
let multiplierNote = `Multiply Targets DR by ${modifier}`;
@@ -28538,7 +28624,7 @@ B378
rateOfFire = "1x9";
}
// rateOfFire = shotes x Mulitplier
// rateOfFire = shotes x Multiplier
// example: 2 x 9
let arrRof = String(rateOfFire).toLowerCase().split("x");
+5 -2
View File
@@ -1006,10 +1006,11 @@
"abbreviation-hit-modifier-label": "Hit Mod",
"help-label": "Help",
"apply-firing-tooltip": "Apply this modifier to the ranged <b>Modifier</b> box and <b>Roll Modifiers</b> tool.",
"close-range-shotgun-label": "Close Range Shotgun Damage Tool",
"close-range-shotgun-label": "Close Range Shotgun & Multiple Projectile Damage Tool",
"close-range-shotgun-label-tooltip": "Used for extremely close combat at a range of 10% of the ½D Range or less.<br />See Shotguns and Multiple Projectiles for more details.",
"shotgun-half-damage-tooltip": "Enter half-damage range of shotgun.",
"close-label": "Close",
"shotgun-close-range-tooltip": "Close range.",
"shotgun-close-range-tooltip": "This value is 10% of the ½D Range of the weapon. This is the maximum range this tool is used for.",
"shotgun-new-rate-of-fire-tooltip": "New Rate of Fire",
"shotgun-new-damage-tooltip": "New Damage",
"abbreviation-damage-resistance-multiplier-label": "DR Mult.",
@@ -1100,11 +1101,13 @@
"abbreviation-resisted-by-label": "RESIST",
"spell-resisted-by-tooltip": "On a regular success, your spell must defeat the subject's resistance to work, a <b>critical success</b> automatically wins. See B241/M13 and the Rule of 16, B349.",
"duration-label": "Duration",
"duration-abbreviated-label": "Dur.",
"spell-duration-tooltip": "Duration of Spell",
"spell-energy-cost-tooltip": "Energy cost for casting the spell.",
"time-label": "Time",
"spell-casting-time-tooltip": "Amount of time to cast the spell.",
"maintain-label": "Maintain",
"maintain-abbreviated-label": "Maint.",
"spell-cost-to-maintain-tooltip": "Energy cost to maintain the spell.",
"class-label": "Class",
"spell-class-tooltip": "Spell class; Area, Blocking, Information, Melee,<br>Missile, Regular, Regular (Jet), Resisted, Special",