This commit is contained in:
Dapoolp 2025-07-31 11:53:14 +02:00
parent 95a8df6f94
commit b6cb3526c3
12 changed files with 200 additions and 23 deletions

View file

@ -21,6 +21,7 @@ export default class DHAdversaryRoll extends foundry.abstract.TypeDataModel {
}) })
), ),
targetSelection: new fields.BooleanField({ initial: true }), targetSelection: new fields.BooleanField({ initial: true }),
hasRoll: new fields.BooleanField({ initial: false }),
hasDamage: new fields.BooleanField({ initial: false }), hasDamage: new fields.BooleanField({ initial: false }),
hasHealing: new fields.BooleanField({ initial: false }), hasHealing: new fields.BooleanField({ initial: false }),
hasEffect: new fields.BooleanField({ initial: false }), hasEffect: new fields.BooleanField({ initial: false }),

View file

@ -2,6 +2,6 @@ import DHAdversaryRoll from './adversaryRoll.mjs';
export default class DHDualityRoll extends DHAdversaryRoll { export default class DHDualityRoll extends DHAdversaryRoll {
get messageTemplate() { get messageTemplate() {
return 'systems/daggerheart/templates/ui/chat/duality-roll-temp.hbs'; return 'systems/daggerheart/templates/ui/chat/roll.hbs';
} }
} }

View file

@ -31,6 +31,12 @@ export const preloadHandlebarsTemplates = async function () {
'systems/daggerheart/templates/ui/tooltip/parts/tooltipChips.hbs', 'systems/daggerheart/templates/ui/tooltip/parts/tooltipChips.hbs',
'systems/daggerheart/templates/ui/tooltip/parts/tooltipTags.hbs', 'systems/daggerheart/templates/ui/tooltip/parts/tooltipTags.hbs',
'systems/daggerheart/templates/dialogs/downtime/activities.hbs', 'systems/daggerheart/templates/dialogs/downtime/activities.hbs',
'systems/daggerheart/templates/dialogs/dice-roll/costSelection.hbs' 'systems/daggerheart/templates/dialogs/dice-roll/costSelection.hbs',
'systems/daggerheart/templates/ui/chat/parts/roll-part.hbs',
'systems/daggerheart/templates/ui/chat/parts/damage-part.hbs',
'systems/daggerheart/templates/ui/chat/parts/target-part.hbs',
'systems/daggerheart/templates/ui/chat/parts/button-part.hbs',
]); ]);
}; };

View file

@ -14,18 +14,18 @@
} }
&.fear { &.fear {
--text-color: @fear; --text-color: @chat-blue;
--bg-color: @fear-40; --bg-color: @chat-blue-40;
.message-header, .message-content { .message-header, .message-content {
background-color: @fear-bg; background-color: @chat-blue-bg;
} }
} }
&.critical { &.critical {
--text-color: @critical; --text-color: @chat-purple;
--bg-color: @critical-40; --bg-color: @chat-purple-40;
.message-header, .message-content { .message-header, .message-content {
background-color: @critical-bg; background-color: @chat-purple-bg;
} }
} }
} }

View file

@ -20,6 +20,4 @@
@import './settings/settings.less'; @import './settings/settings.less';
@import './chat/chat-temp.less'; @import './chat/chat-temp.less';

View file

@ -6,15 +6,15 @@
@golden-40: #f3c26740; @golden-40: #f3c26740;
@golden-bg: #f3c2671a; @golden-bg: #f3c2671a;
@fear: #8f87ee; @chat-blue: #8f87ee;
@fear-10: #8f87ee10; @chat-blue-10: #8f87ee10;
@fear-40: #8f87ee40; @chat-blue-40: #8f87ee40;
@fear-bg: #14142599; @chat-blue-bg: #14142599;
@critical: #f3c267; @chat-purple: #f3c267;
@critical-10: #f3c26710; @chat-purple-10: #f3c26710;
@critical-40: #f3c26740; @chat-purple-40: #f3c26740;
@critical-bg: #2a152e99; @chat-purple-bg: #2a152e99;
@red: #a778b1; @red: #a778b1;
@red-10: #a778b110; @red-10: #a778b110;
@ -71,11 +71,11 @@
@positive: #699969; @positive: #699969;
@secondaryShadow: gold; @secondaryShadow: gold;
@primaryAccent: #778899; @primaryAccent: #778899;
// @hope: #ffe760; @hope: #ffe760;
// @fear: #0032b1; @fear: #0032b1;
@fearBackgroundStart: rgba(15, 15, 97, 0.6); @fearBackgroundStart: rgba(15, 15, 97, 0.6);
@fearBackgroundEnd: rgba(0, 0, 255, 0.6); @fearBackgroundEnd: rgba(0, 0, 255, 0.6);
// @critical: #430070; @critical: #430070;
@criticalBackgroundStart: rgba(37, 8, 37, 0.6); @criticalBackgroundStart: rgba(37, 8, 37, 0.6);
@criticalBackgroundEnd: rgba(128, 0, 128, 0.6); @criticalBackgroundEnd: rgba(128, 0, 128, 0.6);
@primary-color-fear: rgba(9, 71, 179, 0.75); @primary-color-fear: rgba(9, 71, 179, 0.75);

View file

@ -1,5 +1,5 @@
<li class="chat-message message flexcol {{cssClass}}" data-message-id="{{message._id}}" <li class="chat-message message flexcol {{cssClass}}" data-message-id="{{message._id}}"
{{#if borderColor}}style="border-color:{{borderColor}}"{{/if}}>{{log @root}} {{#if borderColor}}style="border-color:{{borderColor}}"{{/if}}>
<header class="message-header flexrow"> <header class="message-header flexrow">
<div class="message-header-main"> <div class="message-header-main">
<img class="actor-img" src="{{actor.img}}" /> <img class="actor-img" src="{{actor.img}}" />

View file

@ -0,0 +1,4 @@
<div class="roll-buttons">
<button>Deal Damage</button>
<button>Apply Effects</button>
</div>

View file

@ -0,0 +1,72 @@
<div class="roll-part damage-section dice-roll" data-action="expandRoll">
<div class="roll-part-header"><div><span>Damage</span></div></div>
<div class="roll-part-extra on-reduced">
<div class="wrapper">
<div class="roll-formula">Hit Points: 10</div>
<div class="roll-formula">Stress: 10</div>
</div>
</div>
<div class="roll-part-content dice-result">
<div class="dice-tooltip">
<div class="wrapper">
<fieldset>
<legend>
Hit Points <div class="roll-formula">Total: 10</div>
</legend>
<label class="roll-part-header"><span>Physical <div class="roll-formula">10</div></span></label>
<div class="roll-dice">
<div class="roll-die">
<div>4 <img class="dice-icon" src="systems/daggerheart/assets/icons/dice/default/d20.svg" alt=""></div>
</div>
<div class="roll-die">
<div>+</div>
</div>
<div class="roll-die">
<div>6</div>
</div>
</div>
<label class="roll-part-header"><span>Magical <div class="roll-formula">10</div></span></label>
<div class="roll-dice">
<div class="roll-die">
<div>4 <img class="dice-icon" src="systems/daggerheart/assets/icons/dice/default/d20.svg" alt=""></div>
</div>
<div class="roll-die">
<div>+</div>
</div>
<div class="roll-die">
<div>6</div>
</div>
</div>
<label class="roll-part-header"><span>Phy/Mag <div class="roll-formula">10</div></span></label>
<div class="roll-dice">
<div class="roll-die">
<div>4 <img class="dice-icon" src="systems/daggerheart/assets/icons/dice/default/d20.svg" alt=""></div>
</div>
<div class="roll-die">
<div>+</div>
</div>
<div class="roll-die">
<div>6</div>
</div>
</div>
</fieldset>
<fieldset>
<legend>
Stress <div class="roll-formula">Total: 10</div>
</legend>
<div class="roll-dice">
<div class="roll-die">
<div>4 <img class="dice-icon" src="systems/daggerheart/assets/icons/dice/default/d20.svg" alt=""></div>
</div>
<div class="roll-die">
<div>+</div>
</div>
<div class="roll-die">
<div>6</div>
</div>
</div>
</fieldset>
</div>
</div>
</div>
</div>

View file

@ -0,0 +1,36 @@
<div class="roll-part roll-section">
<div class="roll-part-header"><span>Finesse Check</span></div>
<div class="roll-part-content">
<div class="roll-result-container">
<span class="roll-result-value">18</span>
<span class="roll-result-desc">with hope</span>
</div>
<span class="roll-difficulty">difficulty 15</span>
</div>
<div class="dice-roll" data-action="expandRoll">
<div class="roll-part-header"><div><span>Formula</span></div></div>
<div class="roll-part-content dice-result">
<div class="dice-tooltip">
<div class="wrapper">
<div class="roll-dice">
<div class="roll-die">
<label>Hope</label>
<div>12 <img class="dice-icon" src="systems/daggerheart/assets/icons/dice/hope/d20.svg" alt=""></div>
</div>
<div class="roll-die">
<label></label>
<div>+</div>
</div>
<div class="roll-die">
<label>Fear</label>
<div>6 <img class="dice-icon" src="systems/daggerheart/assets/icons/dice/fear/d12.svg" alt=""></div>
</div>
</div>
</div>
<div class="roll-formula">
1d12 + 1d12 + 0
</div>
</div>
</div>
</div>
</div>

View file

@ -0,0 +1,53 @@
<div class="roll-part target-section dice-roll" data-action="expandRoll">
<div class="roll-part-header"><div><span>Target</span></div></div>
<div class="roll-part-extra on-reduced">
<div class="wrapper">
<div class="target-hit-status">2 Hits</div>
<div class="target-hit-status is-miss">2 Miss</div>
</div>
</div>
<div class="roll-part-content dice-result">
<div class="dice-tooltip">
<div class="wrapper">
<div class="target-selector">
<div class="roll-part-header"><div></div></div>
<div class="target-choice"><div class="target-selected">Hit</div><div>Current</div></div>
<div class="roll-part-header"><div></div></div>
</div>
<div class="roll-part-extra">Reaction Roll All Targets<i class="fa-solid fa-shield fa-lg"></i></div>
<div class="roll-target">
<img class="target-img" src="images/goliath_ranger.jpg">
<div class="target-data">
<div class="target-name">Archer Squadron</div>
<div class="target-hit-status is-hit">Hit</div>
</div>
<i class="fa-solid fa-shield fa-lg"></i>
</div>
<div class="roll-target">
<img class="target-img" src="images/goliath_ranger.jpg">
<div class="target-data">
<div class="target-name">Conscript</div>
<div class="target-hit-status is-miss">Miss</div>
</div>
<i class="fa-solid fa-shield fa-lg"></i>
</div>
<div class="roll-target">
<img class="target-img" src="images/goliath_ranger.jpg">
<div class="target-data">
<div class="target-name">Elite Soldier</div>
<div class="target-hit-status is-hit">Hit</div>
</div>
<i class="fa-solid fa-shield fa-lg"></i>
</div>
<div class="roll-target">
<img class="target-img" src="images/goliath_ranger.jpg">
<div class="target-data">
<div class="target-name">Knight of the Realm</div>
<div class="target-hit-status is-miss">Miss</div>
</div>
<i class="fa-solid fa-shield fa-lg"></i>
</div>
</div>
</div>
</div>
</div>

View file

@ -0,0 +1,7 @@
<div class="chat-roll">{{log this}}
{{> 'systems/daggerheart/templates/ui/chat/parts/roll-part.hbs'}}
{{> 'systems/daggerheart/templates/ui/chat/parts/damage-part.hbs'}}
{{> 'systems/daggerheart/templates/ui/chat/parts/target-part.hbs'}}
<div class="roll-part-header"><div></div></div>
</div>
{{> 'systems/daggerheart/templates/ui/chat/parts/button-part.hbs'}}