[PR]Add custom formula to weapon base attack (#964)

* Add custom formula to weapon base attack

* Remove log

* Update weapon custom damage formula label + update font-size in px
This commit is contained in:
Dapoulp 2025-08-23 14:54:57 +02:00 committed by GitHub
parent 471cbd55df
commit a72d4583cd
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
43 changed files with 161 additions and 140 deletions

View file

@ -72,6 +72,14 @@
"exactHint": "The Character's Tier is used if empty", "exactHint": "The Character's Tier is used if empty",
"label": "Beastform" "label": "Beastform"
}, },
"damage": {
"multiplier": "Multiplier",
"flatMultiplier": "Flat Multiplier"
},
"general": {
"customFormula": "Custom Formula",
"formula": "Formula"
},
"displayInChat": "Display in chat" "displayInChat": "Display in chat"
}, },
"RollField": { "RollField": {
@ -1929,6 +1937,7 @@
"continue": "Continue", "continue": "Continue",
"criticalSuccess": "Critical Success", "criticalSuccess": "Critical Success",
"criticalShort": "Critical", "criticalShort": "Critical",
"custom": "Custom",
"d20Roll": "D20 Roll", "d20Roll": "D20 Roll",
"damage": "Damage", "damage": "Damage",
"damageRoll": "Damage Roll", "damageRoll": "Damage Roll",

View file

@ -23,14 +23,14 @@ export class DHActionDiceData extends foundry.abstract.DataModel {
multiplier: new fields.StringField({ multiplier: new fields.StringField({
choices: CONFIG.DH.GENERAL.multiplierTypes, choices: CONFIG.DH.GENERAL.multiplierTypes,
initial: 'prof', initial: 'prof',
label: 'Multiplier' label: "DAGGERHEART.ACTIONS.Config.damage.multiplier"
}), }),
flatMultiplier: new fields.NumberField({ nullable: true, initial: 1, label: 'Flat Multiplier' }), flatMultiplier: new fields.NumberField({ nullable: true, initial: 1, label: "DAGGERHEART.ACTIONS.Config.damage.flatMultiplier" }),
dice: new fields.StringField({ choices: CONFIG.DH.GENERAL.diceTypes, initial: 'd6', label: 'Dice' }), dice: new fields.StringField({ choices: CONFIG.DH.GENERAL.diceTypes, initial: 'd6', label: "DAGGERHEART.GENERAL.Dice.single" }),
bonus: new fields.NumberField({ nullable: true, initial: null, label: 'Bonus' }), bonus: new fields.NumberField({ nullable: true, initial: null, label: "DAGGERHEART.GENERAL.bonus" }),
custom: new fields.SchemaField({ custom: new fields.SchemaField({
enabled: new fields.BooleanField({ label: 'Custom Formula' }), enabled: new fields.BooleanField({ label: "DAGGERHEART.ACTIONS.Config.general.customFormula" }),
formula: new FormulaField({ label: 'Formula', initial: '' }) formula: new FormulaField({ label: "DAGGERHEART.ACTIONS.Config.general.formula", initial: '' })
}) })
}; };
} }

View file

@ -199,8 +199,8 @@ export default class DHWeapon extends AttachableItem {
]; ];
for (const { value, type } of attack.damage.parts) { for (const { value, type } of attack.damage.parts) {
const parts = [value.dice]; const parts = value.custom.enabled ? [game.i18n.localize("DAGGERHEART.GENERAL.custom")] : [value.dice];
if (value.bonus) parts.push(value.bonus.signedString()); if (!value.custom.enabled && value.bonus) parts.push(value.bonus.signedString());
if (type.size > 0) { if (type.size > 0) {
const typeTags = Array.from(type) const typeTags = Array.from(type)

View file

@ -41,7 +41,7 @@
display: flex; display: flex;
flex-wrap: wrap; flex-wrap: wrap;
text-align: center; text-align: center;
font-size: 16px; font-size: var(--font-size-16);
margin: 0 4px; margin: 0 4px;
border: 1px solid light-dark(@dark-blue, @golden); border: 1px solid light-dark(@dark-blue, @golden);
border-radius: 6px; border-radius: 6px;
@ -135,7 +135,7 @@
align-items: center; align-items: center;
i { i {
font-size: 24px; font-size: var(--font-size-24);
} }
} }

View file

@ -75,7 +75,7 @@
label { label {
position: absolute; position: absolute;
font-size: 18px; font-size: var(--font-size-18);
font-weight: bold; font-weight: bold;
padding: 0 2px; padding: 0 2px;
background-image: url(../assets/parchments/dh-parchment-light.png); background-image: url(../assets/parchments/dh-parchment-light.png);
@ -141,7 +141,7 @@
.ancestry-preview-feature { .ancestry-preview-feature {
flex: 1; flex: 1;
font-size: 14px; font-size: var(--font-size-14);
white-space: wrap; white-space: wrap;
padding: 0 2px; padding: 0 2px;
border: 1px solid light-dark(@golden, @dark-blue); border: 1px solid light-dark(@golden, @dark-blue);
@ -178,7 +178,7 @@
legend { legend {
margin-left: auto; margin-left: auto;
margin-right: auto; margin-right: auto;
font-size: 28px; font-size: var(--font-size-28);
font-weight: bold; font-weight: bold;
padding: 0 8px; padding: 0 8px;
} }
@ -191,7 +191,7 @@
justify-content: center; justify-content: center;
legend { legend {
font-size: 20px; font-size: var(--font-size-20);
white-space: nowrap; white-space: nowrap;
} }
@ -343,7 +343,7 @@
border-radius: 50%; border-radius: 50%;
height: 20px; height: 20px;
width: 20px; width: 20px;
font-size: 14px; font-size: var(--font-size-14);
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
@ -358,7 +358,7 @@
.descriptor { .descriptor {
position: absolute; position: absolute;
bottom: -8px; bottom: -8px;
font-size: 12px; font-size: var(--font-size-12);
border-radius: 8px; border-radius: 8px;
width: 56px; width: 56px;
text-align: center; text-align: center;
@ -400,7 +400,7 @@
legend { legend {
margin-left: auto; margin-left: auto;
margin-right: auto; margin-right: auto;
font-size: 28px; font-size: var(--font-size-28);
font-weight: bold; font-weight: bold;
padding: 0 8px; padding: 0 8px;
white-space: nowrap; white-space: nowrap;
@ -444,7 +444,7 @@
label { label {
position: absolute; position: absolute;
top: -8px; top: -8px;
font-size: 12px; font-size: var(--font-size-12);
white-space: nowrap; white-space: nowrap;
border: 1px solid light-dark(@dark-blue, @golden); border: 1px solid light-dark(@dark-blue, @golden);
border-radius: 6px; border-radius: 6px;
@ -472,7 +472,7 @@
legend { legend {
margin-left: auto; margin-left: auto;
margin-right: auto; margin-right: auto;
font-size: 12px; font-size: var(--font-size-12);
} }
.suggestion-inner-container { .suggestion-inner-container {
@ -490,7 +490,7 @@
label { label {
position: absolute; position: absolute;
top: -2px; top: -2px;
font-size: 12px; font-size: var(--font-size-12);
} }
img { img {

View file

@ -76,7 +76,7 @@
border-radius: 6px; border-radius: 6px;
height: 26px; height: 26px;
padding: 0 1px; padding: 0 1px;
font-size: 18px; font-size: var(--font-size-18);
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
@ -108,7 +108,7 @@
border-radius: 6px; border-radius: 6px;
height: 26px; height: 26px;
padding: 0 4px; padding: 0 4px;
font-size: 18px; font-size: var(--font-size-18);
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;

View file

@ -23,7 +23,7 @@
width: auto; width: auto;
opacity: 0.3; opacity: 0.3;
border-radius: 50%; border-radius: 50%;
font-size: 18px; font-size: var(--font-size-18);
font-weight: bold; font-weight: bold;
&:hover { &:hover {
@ -74,7 +74,7 @@
font-family: @font-subtitle; font-family: @font-subtitle;
font-style: normal; font-style: normal;
font-weight: 700; font-weight: 700;
font-size: 16px; font-size: var(--font-size-16);
line-height: 19px; line-height: 19px;
color: light-dark(@dark, @beige); color: light-dark(@dark, @beige);
@ -102,7 +102,7 @@
.label { .label {
font-style: normal; font-style: normal;
font-weight: 400; font-weight: 400;
font-size: 14px; font-size: var(--font-size-14);
line-height: 17px; line-height: 17px;
} }
@ -127,7 +127,7 @@
.label { .label {
font-style: normal; font-style: normal;
font-weight: 400; font-weight: 400;
font-size: 14px; font-size: var(--font-size-14);
line-height: 17px; line-height: 17px;
} }

View file

@ -35,7 +35,7 @@
gap: 4px; gap: 4px;
.activity-marker { .activity-marker {
font-size: 8px; font-size: .5rem;
flex: none; flex: none;
color: light-dark(@dark-blue, @golden); color: light-dark(@dark-blue, @golden);
margin-right: 4px; margin-right: 4px;
@ -54,7 +54,7 @@
} }
.activity-selected-marker { .activity-selected-marker {
font-size: 14px; font-size: var(--font-size-14);
border: 1px solid light-dark(@dark-blue, @golden); border: 1px solid light-dark(@dark-blue, @golden);
border-radius: 6px; border-radius: 6px;
color: light-dark(@dark, @beige); color: light-dark(@dark, @beige);
@ -71,7 +71,7 @@
display: grid; display: grid;
grid-template-columns: 1fr 1fr; grid-template-columns: 1fr 1fr;
gap: 4px; gap: 4px;
font-size: 12px; font-size: var(--font-size-12);
&.wide { &.wide {
grid-template-columns: 1fr 1fr 1fr 1fr; grid-template-columns: 1fr 1fr 1fr 1fr;

View file

@ -21,7 +21,7 @@
background: light-dark(@dark-blue-40, @golden-40); background: light-dark(@dark-blue-40, @golden-40);
border-radius: 3px; border-radius: 3px;
padding: 5px; padding: 5px;
font-size: 16px; font-size: var(--font-size-16);
gap: 4px; gap: 4px;
width: 100%; width: 100%;
@ -38,7 +38,7 @@
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
font-size: 12px; font-size: var(--font-size-12);
} }
} }
} }
@ -96,7 +96,7 @@
width: 54px; width: 54px;
border-radius: 50%; border-radius: 50%;
border: 2px solid; border: 2px solid;
font-size: 48px; font-size: var(--font-size-48);
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
@ -133,7 +133,7 @@
.levelup-selections-title { .levelup-selections-title {
margin-left: auto; margin-left: auto;
margin-right: auto; margin-right: auto;
font-size: 22px; font-size: 1.375rem;
font-weight: bold; font-weight: bold;
padding: 0 12px; padding: 0 12px;
} }

View file

@ -41,7 +41,7 @@
display: flex; display: flex;
align-items: center; align-items: center;
gap: 4px; gap: 4px;
font-size: 14px; font-size: var(--font-size-14);
color: light-dark(@dark, @beige); color: light-dark(@dark, @beige);
} }
@ -49,7 +49,7 @@
display: flex; display: flex;
align-items: center; align-items: center;
gap: 4px; gap: 4px;
font-size: 16px; font-size: var(--font-size-16);
color: light-dark(@dark, @beige); color: light-dark(@dark, @beige);
margin-bottom: 5px; margin-bottom: 5px;
} }
@ -62,7 +62,7 @@
border: 2px solid; border: 2px solid;
border-radius: 3px; border-radius: 3px;
padding: 0 4px; padding: 0 4px;
font-size: 14px; font-size: var(--font-size-14);
color: light-dark(@dark, @beige); color: light-dark(@dark, @beige);
} }
} }

View file

@ -21,7 +21,7 @@
legend { legend {
margin-left: auto; margin-left: auto;
margin-right: auto; margin-right: auto;
font-size: 22px; font-size: 1.375rem;
font-weight: bold; font-weight: bold;
padding: 0 12px; padding: 0 12px;
} }
@ -60,7 +60,7 @@
} }
.checkbox-group-label { .checkbox-group-label {
font-size: 12px; font-size: var(--font-size-12);
font-style: italic; font-style: italic;
} }
} }

View file

@ -37,7 +37,7 @@
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
font-size: 22px; font-size: 1.375rem;
opacity: 0.8; opacity: 0.8;
&.selected { &.selected {
@ -99,12 +99,12 @@
&:before, &:before,
&:after { &:after {
line-height: 12px; line-height: 12px;
font-size: 12px; font-size: var(--font-size-12);
} }
} }
i { i {
font-size: 10px; font-size: var(--font-size-10);
} }
} }
} }

View file

@ -71,7 +71,7 @@
color: @beige; color: @beige;
h4 { h4 {
font-size: 16px; font-size: var(--font-size-16);
font-weight: bold; font-weight: bold;
margin-bottom: 0; margin-bottom: 0;
font-family: @font-subtitle; font-family: @font-subtitle;

View file

@ -50,7 +50,7 @@
.formula-label { .formula-label {
font-style: normal; font-style: normal;
font-weight: 500; font-weight: 500;
font-size: 14px; font-size: var(--font-size-14);
line-height: 17px; line-height: 17px;
white-space: nowrap; white-space: nowrap;
color: light-dark(@dark, @beige); color: light-dark(@dark, @beige);

View file

@ -165,7 +165,7 @@
z-index: 1; z-index: 1;
.remove { .remove {
font-size: 10px; font-size: var(--font-size-10);
} }
} }
} }
@ -400,7 +400,7 @@
display: flex; display: flex;
flex-direction: column; flex-direction: column;
white-space: nowrap; white-space: nowrap;
font-size: 14px; font-size: var(--font-size-14);
font-weight: 400; font-weight: 400;
&.modifier-label { &.modifier-label {
@ -527,7 +527,7 @@
font-family: @font-body; font-family: @font-body;
margin-top: 4px; margin-top: 4px;
color: light-dark(#14142599, #efe6d850); color: light-dark(#14142599, #efe6d850);
font-size: 12px; font-size: var(--font-size-12);
padding-left: 3px; padding-left: 3px;
} }
} }
@ -541,7 +541,7 @@
text-align: center; text-align: center;
} }
.title-hint { .title-hint {
font-size: 12px; font-size: var(--font-size-12);
font-variant: small-caps; font-variant: small-caps;
text-align: center; text-align: center;
} }
@ -605,7 +605,7 @@
align-items: center; align-items: center;
label { label {
font-size: 16px; font-size: var(--font-size-16);
} }
.form-fields { .form-fields {
@ -776,7 +776,7 @@
.preview-text-container { .preview-text-container {
padding: 10px 0; padding: 10px 0;
text-align: center; text-align: center;
font-size: 16px; font-size: var(--font-size-16);
color: light-dark(@beige, @dark); color: light-dark(@beige, @dark);
background-image: url(../assets/parchments/dh-parchment-light.png); background-image: url(../assets/parchments/dh-parchment-light.png);
border-radius: 0 0 4px 4px; border-radius: 0 0 4px 4px;
@ -799,14 +799,14 @@
justify-content: center; justify-content: center;
.preview-add-icon { .preview-add-icon {
font-size: 40px; font-size: var(--font-size-40);
color: light-dark(@dark-blue-50, @beige-50); color: light-dark(@dark-blue-50, @beige-50);
} }
.preview-empty-subtext { .preview-empty-subtext {
position: absolute; position: absolute;
bottom: 5%; bottom: 5%;
font-size: 10px; font-size: var(--font-size-10);
font-variant: small-caps; font-variant: small-caps;
text-align: center; text-align: center;
font-style: italic; font-style: italic;
@ -821,7 +821,7 @@
width: 54px; width: 54px;
border-radius: 50%; border-radius: 50%;
border: 2px solid; border: 2px solid;
font-size: 48px; font-size: var(--font-size-48);
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;

View file

@ -105,7 +105,7 @@
align-self: center; align-self: center;
.item-name { .item-name {
font-size: 14px; font-size: var(--font-size-14);
.expanded-icon { .expanded-icon {
display: none; display: none;
@ -121,9 +121,10 @@
.label { .label {
display: flex; display: flex;
flex-direction: row; flex-direction: row;
justify-content: center;
align-items: center; align-items: center;
font-size: 12px; font-size: var(--font-size-12);
flex-wrap: wrap;
justify-content: start;
} }
.tag { .tag {
@ -179,18 +180,18 @@
overflow: hidden; overflow: hidden;
h1 { h1 {
font-size: 32px; font-size: var(--font-size-32);
} }
h2 { h2 {
font-size: 28px; font-size: var(--font-size-28);
font-weight: 600; font-weight: 600;
} }
h3 { h3 {
font-size: 20px; font-size: var(--font-size-20);
font-weight: 600; font-weight: 600;
} }
h4 { h4 {
font-size: 16px; font-size: var(--font-size-16);
color: @beige; color: @beige;
font-weight: 600; font-weight: 600;
} }
@ -231,7 +232,7 @@
label { label {
color: light-dark(white, black); color: light-dark(white, black);
filter: drop-shadow(0 0 1px light-dark(@dark-blue, @golden)); filter: drop-shadow(0 0 1px light-dark(@dark-blue, @golden));
font-size: 18px; font-size: var(--font-size-18);
} }
img { img {
@ -243,7 +244,7 @@
text-shadow: 0 0 3px white; text-shadow: 0 0 3px white;
filter: drop-shadow(0 1px white); filter: drop-shadow(0 1px white);
color: black; color: black;
font-size: 26px; font-size: 1.625rem;
} }
} }
} }
@ -310,7 +311,7 @@
.card-name { .card-name {
font-style: normal; font-style: normal;
font-weight: 400; font-weight: 400;
font-size: 12px; font-size: var(--font-size-12);
line-height: 15px; line-height: 15px;
color: @beige; color: @beige;
@ -351,7 +352,7 @@
gap: 4px; gap: 4px;
.resource-edit { .resource-edit {
font-size: 14px; font-size: var(--font-size-14);
} }
} }
@ -363,7 +364,7 @@
i { i {
flex: none; flex: none;
font-size: 14px; font-size: var(--font-size-14);
} }
input { input {
@ -383,7 +384,7 @@
color: light-dark(white, black); color: light-dark(white, black);
filter: drop-shadow(0 0 1px light-dark(@dark-blue, @golden)); filter: drop-shadow(0 0 1px light-dark(@dark-blue, @golden));
z-index: 2; z-index: 2;
font-size: 18px; font-size: var(--font-size-18);
cursor: pointer; cursor: pointer;
} }
@ -397,7 +398,7 @@
text-shadow: 0 0 3px white; text-shadow: 0 0 3px white;
filter: drop-shadow(0 1px white); filter: drop-shadow(0 1px white);
color: black; color: black;
font-size: 26px; font-size: 1.625rem;
} }
} }
} }

View file

@ -35,7 +35,7 @@
width: 80%; width: 80%;
.item-name input[type='text'] { .item-name input[type='text'] {
font-size: 32px; font-size: var(--font-size-32);
height: 42px; height: 42px;
text-align: center; text-align: center;
width: 90%; width: 90%;
@ -103,7 +103,7 @@
transition: all 0.3s ease; transition: all 0.3s ease;
.recall-label { .recall-label {
font-size: 14px; font-size: var(--font-size-14);
opacity: 0; opacity: 0;
margin-right: 0.3rem; margin-right: 0.3rem;
transition: all 0.3s ease; transition: all 0.3s ease;
@ -141,7 +141,7 @@
.item-name { .item-name {
input[type='text'] { input[type='text'] {
font-size: 32px; font-size: var(--font-size-32);
height: 42px; height: 42px;
text-align: center; text-align: center;
width: 90%; width: 90%;

View file

@ -12,18 +12,18 @@
scrollbar-width: thin; scrollbar-width: thin;
scrollbar-color: light-dark(@dark-blue, @golden) transparent; scrollbar-color: light-dark(@dark-blue, @golden) transparent;
h1 { h1 {
font-size: 32px; font-size: var(--font-size-32);
} }
h2 { h2 {
font-size: 28px; font-size: var(--font-size-28);
font-weight: 600; font-weight: 600;
} }
h3 { h3 {
font-size: 20px; font-size: var(--font-size-20);
font-weight: 600; font-weight: 600;
} }
h4 { h4 {
font-size: 16px; font-size: var(--font-size-16);
color: @beige; color: @beige;
font-weight: 600; font-weight: 600;
} }

View file

@ -33,7 +33,7 @@
div { div {
filter: drop-shadow(0 0 3px black); filter: drop-shadow(0 0 3px black);
text-shadow: 0 0 3px black; text-shadow: 0 0 3px black;
font-size: 12px; font-size: var(--font-size-12);
} }
input { input {

View file

@ -10,7 +10,7 @@
font-family: @font-subtitle; font-family: @font-subtitle;
font-style: normal; font-style: normal;
font-weight: 700; font-weight: 700;
font-size: 24px; font-size: var(--font-size-24);
margin: 0; margin: 0;
text-align: center; text-align: center;
color: light-dark(@dark-blue, @golden); color: light-dark(@dark-blue, @golden);

View file

@ -18,7 +18,7 @@
flex: 1; flex: 1;
input[type='text'] { input[type='text'] {
font-size: 32px; font-size: var(--font-size-32);
height: 42px; height: 42px;
text-align: start; text-align: start;
border: 1px solid transparent; border: 1px solid transparent;
@ -42,7 +42,7 @@
justify-content: center; justify-content: center;
align-items: center; align-items: center;
padding: 3px 5px; padding: 3px 5px;
font-size: 12px; font-size: var(--font-size-12);
font: @font-body; font: @font-body;
background: light-dark(@dark-15, @beige-15); background: light-dark(@dark-15, @beige-15);
@ -55,7 +55,7 @@
flex-direction: row; flex-direction: row;
justify-content: center; justify-content: center;
align-items: center; align-items: center;
font-size: 12px; font-size: var(--font-size-12);
} }
} }

View file

@ -74,7 +74,7 @@
height: 30px; height: 30px;
h4 { h4 {
font-size: 14px; font-size: var(--font-size-14);
font-weight: bold; font-weight: bold;
text-transform: uppercase; text-transform: uppercase;
color: light-dark(@dark-blue, @golden); color: light-dark(@dark-blue, @golden);
@ -255,7 +255,7 @@
font-weight: bold; font-weight: bold;
text-align: center; text-align: center;
line-height: 18px; line-height: 18px;
font-size: 12px; font-size: var(--font-size-12);
color: light-dark(@beige, @dark-blue); color: light-dark(@beige, @dark-blue);
} }
} }
@ -295,7 +295,7 @@
align-items: center; align-items: center;
h3 { h3 {
font-size: 20px; font-size: var(--font-size-20);
} }
} }
.items-list { .items-list {
@ -315,7 +315,7 @@
align-items: center; align-items: center;
h3 { h3 {
font-size: 20px; font-size: var(--font-size-20);
} }
} }
@ -337,7 +337,7 @@
.experience-name { .experience-name {
width: 180px; width: 180px;
text-align: start; text-align: start;
font-size: 14px; font-size: var(--font-size-14);
color: light-dark(@dark, @beige); color: light-dark(@dark, @beige);
} }
} }
@ -345,7 +345,7 @@
.experience-value { .experience-value {
height: 25px; height: 25px;
width: 35px; width: 35px;
font-size: 14px; font-size: var(--font-size-14);
color: light-dark(@dark, @beige); color: light-dark(@dark, @beige);
align-content: center; align-content: center;
text-align: center; text-align: center;

View file

@ -41,7 +41,7 @@
flex: 1; flex: 1;
input[type='text'] { input[type='text'] {
font-size: 32px; font-size: var(--font-size-32);
height: 42px; height: 42px;
text-align: start; text-align: start;
border: 1px solid transparent; border: 1px solid transparent;
@ -72,7 +72,7 @@
.level-button { .level-button {
color: light-dark(@dark, @beige); color: light-dark(@dark, @beige);
font-size: 18px; font-size: var(--font-size-18);
line-height: 1; line-height: 1;
min-height: unset; min-height: unset;
height: min-content; height: min-content;
@ -97,7 +97,7 @@
justify-content: space-between; justify-content: space-between;
padding: 5px 0; padding: 5px 0;
margin-bottom: 10px; margin-bottom: 10px;
font-size: 12px; font-size: var(--font-size-12);
color: light-dark(@dark-blue, @golden); color: light-dark(@dark-blue, @golden);
.missing-header-feature { .missing-header-feature {
@ -158,7 +158,7 @@
height: 30px; height: 30px;
h4 { h4 {
font-size: 14px; font-size: var(--font-size-14);
font-weight: bold; font-weight: bold;
text-transform: uppercase; text-transform: uppercase;
color: light-dark(@dark-blue, @golden); color: light-dark(@dark-blue, @golden);
@ -170,7 +170,7 @@
gap: 5px; gap: 5px;
.label { .label {
font-size: 14px; font-size: var(--font-size-14);
font-weight: bold; font-weight: bold;
text-transform: uppercase; text-transform: uppercase;
color: light-dark(@dark-blue, @golden); color: light-dark(@dark-blue, @golden);
@ -205,7 +205,7 @@
align-items: center; align-items: center;
padding-top: 5px; padding-top: 5px;
color: light-dark(@dark-blue, @golden); color: light-dark(@dark-blue, @golden);
font-size: 14px; font-size: var(--font-size-14);
font-weight: 600; font-weight: 600;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
@ -213,14 +213,14 @@
i { i {
line-height: 17px; line-height: 17px;
font-size: 10px; font-size: var(--font-size-10);
} }
} }
.trait-value { .trait-value {
font-style: normal; font-style: normal;
font-weight: 400; font-weight: 400;
font-size: 20px; font-size: var(--font-size-20);
text-align: center; text-align: center;
} }
} }

View file

@ -41,7 +41,7 @@
height: 32px; height: 32px;
position: absolute; position: absolute;
right: 20px; right: 20px;
font-size: 16px; font-size: var(--font-size-16);
z-index: 1; z-index: 1;
color: light-dark(@dark-blue-50, @beige-50); color: light-dark(@dark-blue-50, @beige-50);
} }

View file

@ -41,7 +41,7 @@
height: 32px; height: 32px;
position: absolute; position: absolute;
right: 20px; right: 20px;
font-size: 16px; font-size: var(--font-size-16);
z-index: 1; z-index: 1;
color: light-dark(@dark-blue-50, @beige-50); color: light-dark(@dark-blue-50, @beige-50);
} }

View file

@ -89,7 +89,7 @@
transition: all 0.3s ease; transition: all 0.3s ease;
.spellcast-label { .spellcast-label {
font-size: 14px; font-size: var(--font-size-14);
opacity: 0; opacity: 0;
margin-right: 0.3rem; margin-right: 0.3rem;
transition: all 0.3s ease; transition: all 0.3s ease;
@ -258,7 +258,7 @@
text-align: center; text-align: center;
line-height: 18px; line-height: 18px;
color: light-dark(@beige, @dark-blue); color: light-dark(@beige, @dark-blue);
font-size: 12px; font-size: var(--font-size-12);
} }
} }
.status-value { .status-value {
@ -402,7 +402,7 @@
font-weight: bold; font-weight: bold;
text-align: center; text-align: center;
line-height: 18px; line-height: 18px;
font-size: 12px; font-size: var(--font-size-12);
color: light-dark(@beige, @dark-blue); color: light-dark(@beige, @dark-blue);
} }
} }
@ -424,7 +424,7 @@
height: 30px; height: 30px;
h4 { h4 {
font-size: 14px; font-size: var(--font-size-14);
font-weight: bold; font-weight: bold;
text-transform: uppercase; text-transform: uppercase;
color: light-dark(@dark-blue, @golden); color: light-dark(@dark-blue, @golden);
@ -490,7 +490,7 @@
.experience-value { .experience-value {
height: 25px; height: 25px;
width: 35px; width: 35px;
font-size: 14px; font-size: var(--font-size-14);
color: light-dark(@dark, @beige); color: light-dark(@dark, @beige);
align-content: center; align-content: center;
text-align: center; text-align: center;

View file

@ -16,7 +16,7 @@
width: 100%; width: 100%;
h3 { h3 {
font-size: 20px; font-size: var(--font-size-20);
} }
} }
.items-list { .items-list {
@ -58,7 +58,7 @@
.experience-name { .experience-name {
width: 180px; width: 180px;
text-align: start; text-align: start;
font-size: 14px; font-size: var(--font-size-14);
color: light-dark(@dark, @beige); color: light-dark(@dark, @beige);
} }
} }
@ -66,7 +66,7 @@
.experience-value { .experience-value {
height: 25px; height: 25px;
width: 35px; width: 35px;
font-size: 14px; font-size: var(--font-size-14);
color: light-dark(@dark, @beige); color: light-dark(@dark, @beige);
align-content: center; align-content: center;
text-align: center; text-align: center;

View file

@ -24,7 +24,7 @@
margin-bottom: -30px; margin-bottom: -30px;
input[type='text'] { input[type='text'] {
font-size: 24px; font-size: var(--font-size-24);
height: 32px; height: 32px;
text-align: center; text-align: center;
border: 1px solid transparent; border: 1px solid transparent;
@ -78,7 +78,7 @@
font-weight: bold; font-weight: bold;
text-align: center; text-align: center;
line-height: 18px; line-height: 18px;
font-size: 12px; font-size: var(--font-size-12);
color: light-dark(@beige, @dark-blue); color: light-dark(@beige, @dark-blue);
} }
} }
@ -209,7 +209,7 @@
.level-button { .level-button {
color: light-dark(@dark, @beige); color: light-dark(@dark, @beige);
font-size: 18px; font-size: var(--font-size-18);
line-height: 1; line-height: 1;
min-height: unset; min-height: unset;
height: min-content; height: min-content;

View file

@ -39,7 +39,7 @@
justify-content: center; justify-content: center;
align-items: center; align-items: center;
padding: 3px 5px; padding: 3px 5px;
font-size: 12px; font-size: var(--font-size-12);
font: @font-body; font: @font-body;
background: light-dark(@dark-15, @beige-15); background: light-dark(@dark-15, @beige-15);
@ -52,7 +52,7 @@
flex-direction: row; flex-direction: row;
justify-content: center; justify-content: center;
align-items: center; align-items: center;
font-size: 12px; font-size: var(--font-size-12);
} }
} }
@ -100,7 +100,7 @@
font-weight: bold; font-weight: bold;
text-align: center; text-align: center;
line-height: 18px; line-height: 18px;
font-size: 12px; font-size: var(--font-size-12);
color: light-dark(@beige, @dark-blue); color: light-dark(@beige, @dark-blue);
} }
} }
@ -108,7 +108,7 @@
.item-name { .item-name {
input[type='text'] { input[type='text'] {
font-size: 32px; font-size: var(--font-size-32);
height: 42px; height: 42px;
text-align: start; text-align: start;
transition: all 0.3s ease; transition: all 0.3s ease;

View file

@ -87,7 +87,7 @@
gap: 5px; gap: 5px;
.title { .title {
font-size: 20px; font-size: var(--font-size-20);
color: @golden; color: @golden;
font-weight: 700; font-weight: 700;
} }
@ -103,7 +103,7 @@
justify-content: center; justify-content: center;
align-items: center; align-items: center;
padding: 3px 5px; padding: 3px 5px;
font-size: 12px; font-size: var(--font-size-12);
background: @beige-15; background: @beige-15;
border: 1px solid @beige; border: 1px solid @beige;

View file

@ -81,13 +81,13 @@
gap: 5px; gap: 5px;
.title { .title {
font-size: 20px; font-size: var(--font-size-20);
color: @golden; color: @golden;
font-weight: 700; font-weight: 700;
} }
.label { .label {
font-size: 12px; font-size: var(--font-size-12);
color: @beige; color: @beige;
margin: 0; margin: 0;
} }

View file

@ -49,7 +49,7 @@
&.resource-roll { &.resource-roll {
.reroll-message { .reroll-message {
text-align: center; text-align: center;
font-size: 18px; font-size: var(--font-size-18);
margin-bottom: 0; margin-bottom: 0;
} }
} }
@ -191,7 +191,7 @@
position: absolute; position: absolute;
top: 0; top: 0;
right: 0; right: 0;
font-size: 10px; font-size: var(--font-size-10);
z-index: 2; z-index: 2;
filter: drop-shadow(0 0 3px black); filter: drop-shadow(0 0 3px black);
} }

View file

@ -82,12 +82,12 @@
.header-label { .header-label {
padding: 8px; padding: 8px;
.title { .title {
font-size: 16px; font-size: var(--font-size-16);
color: @golden; color: @golden;
font-weight: 700; font-weight: 700;
} }
.label { .label {
font-size: 12px; font-size: var(--font-size-12);
color: @beige; color: @beige;
margin: 0; margin: 0;
} }

View file

@ -17,7 +17,7 @@
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
font-size: 10px; font-size: var(--font-size-10);
padding: 8px; padding: 8px;
--button-size: 0; --button-size: 0;

View file

@ -47,7 +47,7 @@
position: absolute; position: absolute;
top: 8px; top: 8px;
right: 8px; right: 8px;
font-size: 18px; font-size: var(--font-size-18);
} }
.countdown-container { .countdown-container {

View file

@ -161,7 +161,7 @@
height: 32px; height: 32px;
position: absolute; position: absolute;
right: 20px; right: 20px;
font-size: 16px; font-size: var(--font-size-16);
z-index: 1; z-index: 1;
color: light-dark(@dark-blue-50, @beige-50); color: light-dark(@dark-blue-50, @beige-50);
} }
@ -304,18 +304,18 @@
gap: 5px; gap: 5px;
h1 { h1 {
font-size: 32px; font-size: var(--font-size-32);
} }
h2 { h2 {
font-size: 28px; font-size: var(--font-size-28);
font-weight: 600; font-weight: 600;
} }
h3 { h3 {
font-size: 20px; font-size: var(--font-size-20);
font-weight: 600; font-weight: 600;
} }
h4 { h4 {
font-size: 16px; font-size: var(--font-size-16);
color: @beige; color: @beige;
font-weight: 600; font-weight: 600;
} }

View file

@ -44,7 +44,7 @@
border-radius: 50%; border-radius: 50%;
width: 24px; width: 24px;
height: 24px; height: 24px;
font-size: 12px; font-size: var(--font-size-12);
} }
} }
} }
@ -118,7 +118,7 @@
button { button {
border-radius: 50%; border-radius: 50%;
font-size: 12px; font-size: var(--font-size-12);
height: 24px; height: 24px;
width: 24px; width: 24px;
margin-right: 4px; margin-right: 4px;

View file

@ -53,7 +53,7 @@
} }
i { i {
font-size: 18px; font-size: var(--font-size-18);
} }
} }
} }
@ -80,7 +80,7 @@
width: 80%; width: 80%;
.item-name input[type='text'] { .item-name input[type='text'] {
font-size: 32px; font-size: var(--font-size-32);
height: 42px; height: 42px;
text-align: center; text-align: center;
width: 90%; width: 90%;
@ -117,7 +117,7 @@
label { label {
position: absolute; position: absolute;
top: -7px; top: -7px;
font-size: 12px; font-size: var(--font-size-12);
font-variant: petite-caps; font-variant: petite-caps;
z-index: 2; z-index: 2;
} }

View file

@ -30,7 +30,7 @@
align-items: center; align-items: center;
h3 { h3 {
font-size: 20px; font-size: var(--font-size-20);
} }
} }
@ -70,7 +70,7 @@
h4 { h4 {
font-family: @font-body; font-family: @font-body;
font-size: 14px; font-size: var(--font-size-14);
border: none; border: none;
font-weight: 700; font-weight: 700;
margin: 0; margin: 0;
@ -80,7 +80,7 @@
h5 { h5 {
font-family: @font-body; font-family: @font-body;
font-size: 14px; font-size: var(--font-size-14);
margin: 0; margin: 0;
font-weight: normal; font-weight: normal;
} }

View file

@ -22,12 +22,12 @@
.group { .group {
font-weight: bold; font-weight: bold;
font-size: 14px; font-size: var(--font-size-14);
padding-left: 8px; padding-left: 8px;
} }
li[role='option'] { li[role='option'] {
font-size: 14px; font-size: var(--font-size-14);
padding-left: 10px; padding-left: 10px;
cursor: pointer; cursor: pointer;

View file

@ -85,7 +85,7 @@
gap: 8px; gap: 8px;
.tooltip-chip { .tooltip-chip {
font-size: 18px; font-size: var(--font-size-18);
padding: 2px 4px; padding: 2px 4px;
border: 1px solid light-dark(@dark-blue, @golden); border: 1px solid light-dark(@dark-blue, @golden);
border-radius: 6px; border-radius: 6px;

View file

@ -14,7 +14,11 @@
<span>-</span> <span>-</span>
{{localize (concat 'DAGGERHEART.CONFIG.Range.' source.system.attack.range '.name')}} {{localize (concat 'DAGGERHEART.CONFIG.Range.' source.system.attack.range '.name')}}
<span>-</span> <span>-</span>
{{source.system.attack.damage.parts.0.value.dice}}{{#if source.system.attack.damage.parts.0.value.bonus}} + {{source.system.attack.damage.parts.0.value.bonus}}{{/if}} {{#if source.system.attack.damage.parts.0.value.custom.enabled}}
{{localize "DAGGERHEART.GENERAL.custom"}}
{{else}}
{{source.system.attack.damage.parts.0.value.dice}}{{#if source.system.attack.damage.parts.0.value.bonus}} + {{source.system.attack.damage.parts.0.value.bonus}}{{/if}}
{{/if}}
( (
{{#each source.system.attack.damage.parts.0.type}} {{#each source.system.attack.damage.parts.0.type}}
{{localize (concat 'DAGGERHEART.CONFIG.DamageType.' this '.abbreviation')}} {{localize (concat 'DAGGERHEART.CONFIG.DamageType.' this '.abbreviation')}}

View file

@ -21,10 +21,17 @@
{{#with systemFields.attack.fields.damage.fields.parts.element.fields as | fields | }} {{#with systemFields.attack.fields.damage.fields.parts.element.fields as | fields | }}
{{#with (lookup ../document.system.attack.damage.parts 0) as | source | }} {{#with (lookup ../document.system.attack.damage.parts 0) as | source | }}
<legend>{{localize "DAGGERHEART.GENERAL.damage"}}</legend> <legend>{{localize "DAGGERHEART.GENERAL.damage"}}</legend>
<span>{{localize "DAGGERHEART.GENERAL.Dice.single"}}</span> <span>{{localize "DAGGERHEART.ACTIONS.Config.general.customFormula"}}</span>
{{formInput fields.value.fields.dice value=source.value.dice name="system.attack.damage.parts.0.value.dice"}} {{formInput fields.value.fields.custom.fields.enabled value=source.value.custom.enabled name="system.attack.damage.parts.0.value.custom.enabled"}}
<span>{{localize "DAGGERHEART.GENERAL.bonus"}}</span> {{#if source.value.custom.enabled}}
{{formInput fields.value.fields.bonus value=source.value.bonus name="system.attack.damage.parts.0.value.bonus" localize=true}} <span>{{localize "DAGGERHEART.ACTIONS.Config.general.formula"}}</span>
{{formInput fields.value.fields.custom.fields.formula value=source.value.custom.formula name="system.attack.damage.parts.0.value.custom.formula"}}
{{else}}
<span>{{localize "DAGGERHEART.GENERAL.Dice.single"}}</span>
{{formInput fields.value.fields.dice value=source.value.dice name="system.attack.damage.parts.0.value.dice"}}
<span>{{localize "DAGGERHEART.GENERAL.bonus"}}</span>
{{formInput fields.value.fields.bonus value=source.value.bonus name="system.attack.damage.parts.0.value.bonus" localize=true}}
{{/if}}
<span>{{localize "DAGGERHEART.GENERAL.type"}}</span> <span>{{localize "DAGGERHEART.GENERAL.type"}}</span>
{{formInput fields.type value=source.type name="system.attack.damage.parts.0.type" localize=true}} {{formInput fields.type value=source.type name="system.attack.damage.parts.0.type" localize=true}}
<span>{{localize "DAGGERHEART.CONFIG.DamageType.direct.name"}}</span> <span>{{localize "DAGGERHEART.CONFIG.DamageType.direct.name"}}</span>