Add NPC Improvements

This commit is contained in:
WBHarry 2026-06-01 10:24:44 +02:00 committed by GitHub
parent c8d0df87c8
commit 318d00b47d
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 31 additions and 38 deletions

View file

@ -47,11 +47,6 @@ export default class Party extends DHBaseActorSheet {
template: 'systems/daggerheart/templates/sheets/actors/party/party-members.hbs', template: 'systems/daggerheart/templates/sheets/actors/party/party-members.hbs',
scrollable: [''] scrollable: ['']
}, },
/* NOT YET IMPLEMENTED */
// projects: {
// template: 'systems/daggerheart/templates/sheets/actors/party/projects.hbs',
// scrollable: ['']
// },
inventory: { inventory: {
template: 'systems/daggerheart/templates/sheets/actors/party/inventory.hbs', template: 'systems/daggerheart/templates/sheets/actors/party/inventory.hbs',
scrollable: ['.tab.inventory .items-section'] scrollable: ['.tab.inventory .items-section']
@ -62,19 +57,13 @@ export default class Party extends DHBaseActorSheet {
/** @inheritdoc */ /** @inheritdoc */
static TABS = { static TABS = {
primary: { primary: {
tabs: [ tabs: [{ id: 'partyMembers' }, { id: 'inventory' }, { id: 'notes' }],
{ id: 'partyMembers' },
/* NOT YET IMPLEMENTED */
// { id: 'projects' },
{ id: 'inventory' },
{ id: 'notes' }
],
initial: 'partyMembers', initial: 'partyMembers',
labelPrefix: 'DAGGERHEART.GENERAL.Tabs' labelPrefix: 'DAGGERHEART.GENERAL.Tabs'
} }
}; };
static ALLOWED_ACTOR_TYPES = ['character', 'companion', 'adversary']; static ALLOWED_ACTOR_TYPES = ['character', 'companion', 'adversary', 'npc'];
static DICE_ROLL_ACTOR_TYPES = ['character']; static DICE_ROLL_ACTOR_TYPES = ['character'];
async _onRender(context, options) { async _onRender(context, options) {

View file

@ -5,7 +5,7 @@
.portrait { .portrait {
cursor: pointer; cursor: pointer;
width: 275px; max-width: 275px;
img { img {
height: 275px; height: 275px;

View file

@ -31,10 +31,12 @@
<span class="description"> <span class="description">
<i>{{{description}}}</i> <i>{{{description}}}</i>
</span> </span>
<div class="motives-and-tactics"> {{#if source.system.motives}}
<b>{{localize 'DAGGERHEART.ACTORS.NPC.FIELDS.motives.label'}}: </b> <div class="motives-and-tactics">
{{source.system.motives}} <b>{{localize 'DAGGERHEART.ACTORS.NPC.FIELDS.motives.label'}}: </b>
</div> {{source.system.motives}}
</div>
{{/if}}
</div> </div>
</div> </div>
</header> </header>

View file

@ -42,7 +42,7 @@
{{#if member.difficulty includeZero=true}} {{#if member.difficulty includeZero=true}}
<div class="evasion" data-tooltip="DAGGERHEART.GENERAL.difficulty">{{member.difficulty}}</div> <div class="evasion" data-tooltip="DAGGERHEART.GENERAL.difficulty">{{member.difficulty}}</div>
{{/if}} {{/if}}
{{#unless (eq member.type 'companion')}} {{#unless (or (eq member.type 'companion') (eq member.type 'npc'))}}
<div class="threshold-section"> <div class="threshold-section">
<h4 class="threshold-label">{{localize "DAGGERHEART.ACTORS.Party.Thresholds.minor"}}</h4> <h4 class="threshold-label">{{localize "DAGGERHEART.ACTORS.Party.Thresholds.minor"}}</h4>
<h4 class="threshold-value">{{member.damageThresholds.major}}</h4> <h4 class="threshold-value">{{member.damageThresholds.major}}</h4>
@ -58,7 +58,7 @@
<a class="delete-icon" data-action="deletePartyMember" data-uuid="{{member.uuid}}"><i class="fa-regular fa-times" inert></i></a> <a class="delete-icon" data-action="deletePartyMember" data-uuid="{{member.uuid}}"><i class="fa-regular fa-times" inert></i></a>
</h2> </h2>
<div> <div>
{{#unless (or (eq member.type 'companion') (eq member.type 'adversary')) }} {{#unless (or (eq member.type 'companion') (eq member.type 'adversary') (eq member.type 'npc')) }}
<div class="hope-section"> <div class="hope-section">
<h4>{{localize "DAGGERHEART.GENERAL.hope"}}</h4> <h4>{{localize "DAGGERHEART.GENERAL.hope"}}</h4>
{{#times member.resources.hope.max}} {{#times member.resources.hope.max}}
@ -79,7 +79,7 @@
</header> </header>
<section class="body"> <section class="body">
<section class="resources"> <section class="resources">
{{#unless (eq member.type 'companion') }} {{#unless (or (eq member.type 'companion') (eq member.type 'npc')) }}
<div class="slot-section"> <div class="slot-section">
<div class="slot-label" data-tooltip="DAGGERHEART.GENERAL.HitPoints.plural"> <div class="slot-label" data-tooltip="DAGGERHEART.GENERAL.HitPoints.plural">
<span class="label"> <span class="label">
@ -101,25 +101,27 @@
</div> </div>
{{/unless}} {{/unless}}
<div class="slot-section"> {{#unless (eq member.type 'npc')}}
<div class="slot-label" data-tooltip="DAGGERHEART.GENERAL.stress"> <div class="slot-section">
<span class="label"> <div class="slot-label" data-tooltip="DAGGERHEART.GENERAL.stress">
<i class="fa-solid fa-bolt" inert></i> <span class="label">
</span> <i class="fa-solid fa-bolt" inert></i>
<span class="value">
<span class="current">{{member.resources.stress.value}}</span>
/
<span class="max">{{member.resources.stress.max}}</span>
</span>
</div>
<div class="slot-bar">
{{#times member.resources.stress.max}}
<span class='slot {{#if (gte member.resources.stress.value (add this 1))}}filled{{/if}}'
data-action='toggleStress' data-actor-id="{{member.uuid}}" data-value="{{add this 1}}">
</span> </span>
{{/times}} <span class="value">
<span class="current">{{member.resources.stress.value}}</span>
/
<span class="max">{{member.resources.stress.max}}</span>
</span>
</div>
<div class="slot-bar">
{{#times member.resources.stress.max}}
<span class='slot {{#if (gte member.resources.stress.value (add this 1))}}filled{{/if}}'
data-action='toggleStress' data-actor-id="{{member.uuid}}" data-value="{{add this 1}}">
</span>
{{/times}}
</div>
</div> </div>
</div> {{/unless}}
{{#if member.armorScore.max}} {{#if member.armorScore.max}}
<div class="slot-section"> <div class="slot-section">