Add Enemy sheet

This commit is contained in:
2025-05-25 20:43:10 +02:00
parent 57706629e1
commit 7e517bfb12
6 changed files with 54 additions and 22 deletions

View File

@@ -1309,9 +1309,17 @@ i.fvtt-hellborn {
min-width: 1.8rem; min-width: 1.8rem;
max-width: 1.8rem; max-width: 1.8rem;
} }
.fvtt-hellborn .tab.enemy-traits .main-div .maleficas .malefica .domain {
min-width: 5rem;
max-width: 5rem;
}
.fvtt-hellborn .tab.enemy-traits .main-div .maleficas .malefica .level {
min-width: 3rem;
max-width: 3rem;
}
.fvtt-hellborn .tab.enemy-traits .main-div .maleficas .malefica .name { .fvtt-hellborn .tab.enemy-traits .main-div .maleficas .malefica .name {
min-width: 18rem; min-width: 11rem;
max-width: 18rem; max-width: 11rem;
} }
.fvtt-hellborn .tab.enemy-traits .main-div .maleficas .malefica .item-img { .fvtt-hellborn .tab.enemy-traits .main-div .maleficas .malefica .item-img {
width: 24px; width: 24px;
@@ -2337,6 +2345,7 @@ i.fvtt-hellborn {
color: var(--color-dark-1); color: var(--color-dark-1);
} }
.item-to-chat h2 { .item-to-chat h2 {
margin-left: 10px;
font-family: var(--font-title); font-family: var(--font-title);
font-size: calc(var(--font-size-standard) * 1.4); font-size: calc(var(--font-size-standard) * 1.4);
color: var(--title-color); color: var(--title-color);

View File

@@ -90,12 +90,24 @@ export default class HellbornCharacterSheet extends HellbornActorSheet {
case "status": case "status":
context.tab = context.tabs.status context.tab = context.tabs.status
context.perks = doc.itemTypes.perk context.perks = doc.itemTypes.perk
context.perks.sort((a, b) => a.name.localeCompare(b.name)) // Sort the perks by system.role and then by the system.level
context.perks.sort((a, b) => {
if (a.system.role === b.system.role) {
return a.system.level.localeCompare(b.system.level)
}
return a.system.role.localeCompare(b.system.role)
})
break; break;
case "maleficas": case "maleficas":
context.tab = context.tabs.maleficas context.tab = context.tabs.maleficas
context.maleficas = doc.itemTypes.malefica context.maleficas = doc.itemTypes.malefica
context.maleficas.sort((a, b) => a.name.localeCompare(b.name)) // Sort the maleficas by system.domain and then by the system.level
context.maleficas.sort((a, b) => {
if (a.system.domain === b.system.domain) {
return a.system.level.localeCompare(b.system.level)
}
return a.system.domain.localeCompare(b.system.domain)
})
context.rituals = doc.itemTypes.ritual context.rituals = doc.itemTypes.ritual
context.rituals.sort((a, b) => a.name.localeCompare(b.name)) context.rituals.sort((a, b) => a.name.localeCompare(b.name))
break break

View File

@@ -300,9 +300,17 @@
min-width: 1.8rem; min-width: 1.8rem;
max-width: 1.8rem; max-width: 1.8rem;
} }
.domain {
min-width: 5rem;
max-width: 5rem;
}
.level {
min-width: 3rem;
max-width: 3rem;
}
.name { .name {
min-width: 18rem; min-width: 11rem;
max-width: 18rem; max-width: 11rem;
} }
.item-img { .item-img {
width: 24px; width: 24px;

View File

@@ -56,6 +56,7 @@
.item-to-chat { .item-to-chat {
h2 { h2 {
margin-left:10px;
font-family: var(--font-title); font-family: var(--font-title);
font-size: calc(var(--font-size-standard) * 1.4); font-size: calc(var(--font-size-standard) * 1.4);
color: var(--title-color); color: var(--title-color);

View File

@@ -6,23 +6,23 @@
<div class="counters"> <div class="counters">
<div class="flexcol"> <div class="flexcol">
<div> <div>
<label>Trauma : </label>{{formInput systemFields.trauma.fields.current value=system.trauma.current}} / <label>Trauma </label>{{formInput systemFields.trauma.fields.current value=system.trauma.current}} /
{{formInput systemFields.trauma.fields.max value=system.trauma.max}} {{formInput systemFields.trauma.fields.max value=system.trauma.max}}
<label class="spaced-left"> Darkness : </label>{{formInput systemFields.darkness.fields.current value=system.darkness.current}} / <label class="spaced-left"> Darkness </label>{{formInput systemFields.darkness.fields.current value=system.darkness.current}} /
{{formInput systemFields.darkness.fields.max value=system.darkness.max}} {{formInput systemFields.darkness.fields.max value=system.darkness.max}}
{{formInput systemFields.darkness.fields.value value=system.darkness.value}} {{formInput systemFields.darkness.fields.value value=system.darkness.value}}
<label class="spaced-left"> Defense : </label>{{formInput systemFields.defense.fields.base value=system.defense.base}} <label class="spaced-left"> Defense </label>{{formInput systemFields.defense.fields.base value=system.defense.base}}
{{formInput systemFields.defense.fields.bonus value=system.defense.bonus }} {{formInput systemFields.defense.fields.bonus value=system.defense.bonus }}
{{formInput systemFields.defense.fields.total value=system.defense.total}} {{formInput systemFields.defense.fields.total value=system.defense.total}}
{{formInput systemFields.defense.fields.resistance value=system.defense.resistance}} {{formInput systemFields.defense.fields.resistance value=system.defense.resistance}}
<label class="spaced-left"> Movement : </label>{{formInput systemFields.movement.fields.base value=system.movement.base}} <label class="spaced-left"> Movement </label>{{formInput systemFields.movement.fields.base value=system.movement.base}}
{{formInput systemFields.movement.fields.reduce value=system.defense.reduce }} {{formInput systemFields.movement.fields.reduce value=system.defense.reduce }}
</div> </div>
<div class="flexrow characteristics-label"> <div class="flexrow characteristics-label">
<label>&nbsp;</label><span>Curr.</span><span>Max</span> <label>&nbsp;</label><span>Curr.</span><span>Max</span>
<label>&nbsp;</label><span>Curr.</span><span>Max</span><span>MaxDR</span> <label>&nbsp;</label><span>Curr.</span><span>Max</span><span>Mal.DR</span>
<label>&nbsp;</label><span>Base</span><span>Armor</span><span>Total</span><span>Resi.</span> <label>&nbsp;</label><span>Base</span><span>Armor</span><span>Total</span><span>Resi.</span>
<label>&nbsp;</label><span>Base</span><span>Redu.</span> <label>&nbsp;</label><span>Base</span><span>Redu.</span>

View File

@@ -9,20 +9,20 @@
<label>Trauma : </label>{{formInput systemFields.trauma.fields.current value=system.trauma.current}} / <label>Trauma : </label>{{formInput systemFields.trauma.fields.current value=system.trauma.current}} /
{{formInput systemFields.trauma.fields.max value=system.trauma.max}} {{formInput systemFields.trauma.fields.max value=system.trauma.max}}
<label class="spaced-left"> Darkness </label>{{formInput systemFields.darkness.fields.current value=system.darkness.current}} / <label class="spaced-left"> Darkness </label>
{{formInput systemFields.darkness.fields.current value=system.darkness.current}} /
{{formInput systemFields.darkness.fields.max value=system.darkness.max}} {{formInput systemFields.darkness.fields.max value=system.darkness.max}}
<label class="spaced-left"> Defense </label>{{formInput systemFields.defense.fields.base value=system.defense.base}} {{formInput systemFields.darkness.fields.value value=system.darkness.value}}
<label class="spaced-left"> Malefic DR </label>{{formInput systemFields.defense.fields.maleficDR value=system.defense.maleficDR}} <label class="spaced-left"> Defense </label>
<label class="spaced-left"> Res. </label>{{formInput systemFields.defense.fields.resilience value=system.defense.resilience}} {{formInput systemFields.defense.fields.base value=system.defense.base}}
{{formInput systemFields.defense.fields.resilience value=system.defense.resilience}}
<label class="spaced-left"> Movement </label>{{formInput systemFields.movement.fields.base value=system.movement.base}} <label class="spaced-left"> Movement </label>{{formInput systemFields.movement.fields.base value=system.movement.base}}
</div> </div>
<div class="flexrow characteristics-label"> <div class="flexrow characteristics-label">
<label></label><span>Curr.</span><span>Max</span> <label></label><span>Curr.</span><span>Max</span>
<label></label><span>&nbsp;&nbsp;&nbsp;Curr.</span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Max</span> <label></label><span>&nbsp;&nbsp;&nbsp;Curr.</span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Max</span><span>&nbsp;&nbsp;Mal.DR</span>
<label></label> <label></label><span>&nbsp;&nbsp;&nbsp;Total</span><span>&nbsp;&nbsp;&nbsp;Resi.</span>
<label></label>
<label></label>
<label></label> <label></label>
<label></label> <label></label>
<label></label> <label></label>
@@ -66,15 +66,17 @@
<a class="action" data-tooltip="{{localize "HELLBORN.Tooltip.addMalefica"}}" data-tooltip-direction="UP"><i <a class="action" data-tooltip="{{localize "HELLBORN.Tooltip.addMalefica"}}" data-tooltip-direction="UP"><i
class="fas fa-plus" data-action="createMalefica"></i></a>{{/if}} class="fas fa-plus" data-action="createMalefica"></i></a>{{/if}}
</legend> </legend>
<div class="traits"> <div class="maleficas">
{{#each maleficas as |item|}} {{#each maleficas as |item|}}
<div class="trait item" data-item-id="{{item.id}}" data-item-uuid="{{item.uuid}}" data-drag="true"> <div class="malefica item" data-item-id="{{item.id}}" data-item-uuid="{{item.uuid}}" data-drag="true">
<img class="item-img" src="{{item.img}}" data-tooltip="{{item.name}}" /> <img class="item-img" src="{{item.img}}" data-tooltip="{{item.name}}" />
<!-- <img src="systems/fvtt-cthulhu-eternal/assets/ui/d100.svg" class="d100" />--> <!-- <img src="systems/fvtt-cthulhu-eternal/assets/ui/d100.svg" class="d100" />-->
<div class="name" data-roll-type="trait" data-action="toChat" data-item-uuid="{{item.uuid}}" data-tooltip="{{{item.system.description}}}"> <div class="name" data-roll-type="malefica" data-action="toChat" data-item-uuid="{{item.uuid}}" data-tooltip="{{{item.system.description}}}">
<a>{{item.name}}</a> <a>{{item.name}}</a>
</div> </div>
<span class="domain" data-tooltip="Domain">{{upperFirst item.system.domain}}</span>
<span class="level" data-tooltip="Level">{{getRomanLevel item.system.level}}</span>
<div class="controls"> <div class="controls">
<a data-tooltip="{{localize 'HELLBORN.Edit'}}" data-action="edit" data-item-id="{{item.id}}" <a data-tooltip="{{localize 'HELLBORN.Edit'}}" data-action="edit" data-item-id="{{item.id}}"