mirror of
https://github.com/Foundryborne/daggerheart.git
synced 2026-01-19 16:24:06 +01:00
[Feature] Death moves and Fate rolls (#1463)
* Update the death move descriptions * Renamed to DhDeathMove * Partial Fate Roll creation and Fate Roll Enricher (/fr) * Hide stuff not required for fate roll * Hide formula display; code removal; start to add Fear die as a choice for Fate roll * Fix chat message display; start moving towards supporting Hope and Fear for Fate roll * /fr now supports type=X, where X is Hope or Fear, if not supplied, defaults to Hope * Fixed DSN rolling; removed console messages; chat message clean up * Add localisation entry * Trying to sort out the button for the fate roll * Style the fate message based on Hope/Fear colors. * Partial improvement on the fate template buttons - chat display is correct, but the roll dialog is wrong * Fixed enricher button; localization fixes; debug cleanup * Error checking for the fate type parsing in all potential problem locations * Added localization for the fate type parsing error * Start on Avoid Death death move * debug stuff * More death moves setup/testing * Avoid fate scars update in place, with scars migrating to an integer value. * Remove some debug code; add Blaze Of Glory shell * Start on Guaranteed Critical for Blaze of Glory * Partial implementation of Blaze of Glory * Dice/critical checks/tests * Moved detection of guaranteed critical to before the roll dialog is created, so it can be skipped; removed debug code * Remove debug * Update Blaze of Glory effect description * Risk It All - critical roll - clear all stress and HP * Auto remove all marked stress and HP for Risk It All, if Hope value rolled covers it. * Display the Death Move description in chat expanded if the appropriate config setting is on * Made the Blaze of Glory ActiveEffect image use configured version * Update the current Hope value if the scar value change affects it * Scars management in the Character details editor * Separate less file for the Death Moves instead of reusing Downtime * Added result messages to the Death Move chat output and removed debug statements * Some localization, style and smaller changes * Fixed RiskItAll resource handling method * Risk It All success chat message start * [Add] Hope/Scar Interplay (#1531) * Migrated character.maxHope to homebrew settings * Added a visual for scars * . * . * Pass the hope value in the button data; skeleton risk it all dialog to fill out. * Start on risk it dialog * More dialog stuff * Remove non-existent field * Dialog templating and logic * . * Ensure effect is Applied to Actor (#1547) Co-authored-by: Chris Ryan <chrisr@blackhole> * [Fix] 1548 - Standalone Item Add Actions (#1549) * Fixed so that items not on an actor don't error out on creating actions * Fixed deletion of items error * Raised version * Fix the sliders to do the correct maximums * Pass the actor id through the button; fix /dr and /fr flavor text * Remove debug message --------- Co-authored-by: Chris Ryan <chrisr@blackhole> Co-authored-by: WBHarry <williambjrklund@gmail.com> Co-authored-by: WBHarry <89362246+WBHarry@users.noreply.github.com>
This commit is contained in:
parent
3103a40c26
commit
9d75157e17
38 changed files with 1166 additions and 258 deletions
|
|
@ -1,55 +1,56 @@
|
|||
@import '../../utils/spacing.less';
|
||||
@import '../../utils/colors.less';
|
||||
@import '../../utils/fonts.less';
|
||||
|
||||
.daggerheart.dh-style.dialog.death-move {
|
||||
.death-move-container {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 5px;
|
||||
|
||||
.moves-list {
|
||||
.move-item {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 5px;
|
||||
|
||||
&:hover {
|
||||
background-color: light-dark(@soft-shadow, @soft-white-shadow);
|
||||
cursor: pointer;
|
||||
}
|
||||
padding: 5px;
|
||||
border-radius: 5px;
|
||||
transition: background-color 0.3s ease-in-out;
|
||||
|
||||
.label {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 10px;
|
||||
cursor: pointer;
|
||||
flex: 1;
|
||||
i {
|
||||
text-align: center;
|
||||
width: 30px;
|
||||
}
|
||||
}
|
||||
|
||||
input[type='radio'] {
|
||||
margin-left: auto;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
footer {
|
||||
margin-top: 8px;
|
||||
display: flex;
|
||||
gap: 8px;
|
||||
|
||||
button {
|
||||
flex: 1;
|
||||
height: 40px;
|
||||
font-weight: 600;
|
||||
}
|
||||
}
|
||||
}
|
||||
@import '../../utils/spacing.less';
|
||||
@import '../../utils/colors.less';
|
||||
@import '../../utils/fonts.less';
|
||||
|
||||
.daggerheart.dh-style.dialog.death-move {
|
||||
.death-move-container {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 5px;
|
||||
|
||||
.moves-list {
|
||||
.move-item {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 5px;
|
||||
padding: 5px;
|
||||
border-radius: 5px;
|
||||
transition: background-color 0.3s ease-in-out;
|
||||
height: 37px;
|
||||
|
||||
&:hover {
|
||||
background-color: light-dark(@soft-shadow, @soft-white-shadow);
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.label {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 10px;
|
||||
cursor: pointer;
|
||||
flex: 1;
|
||||
i {
|
||||
text-align: center;
|
||||
width: 30px;
|
||||
}
|
||||
}
|
||||
|
||||
input[type='radio'] {
|
||||
margin-left: auto;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
footer {
|
||||
margin-top: 8px;
|
||||
display: flex;
|
||||
gap: 8px;
|
||||
|
||||
button {
|
||||
flex: 1;
|
||||
height: 40px;
|
||||
font-weight: 600;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -38,4 +38,6 @@
|
|||
|
||||
@import './item-transfer/sheet.less';
|
||||
|
||||
@import './settings/change-currency-icon.less';
|
||||
@import './settings/change-currency-icon.less';
|
||||
|
||||
@import './risk-it-all/sheet.less';
|
||||
|
|
|
|||
60
styles/less/dialog/risk-it-all/sheet.less
Normal file
60
styles/less/dialog/risk-it-all/sheet.less
Normal file
|
|
@ -0,0 +1,60 @@
|
|||
.daggerheart.dialog.dh-style.views.risk-it-all {
|
||||
.risk-it-all-container {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
flex-direction: column;
|
||||
gap: 8px;
|
||||
text-align: center;
|
||||
|
||||
header {
|
||||
font-weight: bold;
|
||||
font-size: var(--font-size-20);
|
||||
}
|
||||
|
||||
.section-label {
|
||||
font-size: var(--font-size-18);
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.remaining-section {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 2px;
|
||||
}
|
||||
|
||||
.resource-section {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
gap: 8px;
|
||||
}
|
||||
|
||||
.final-section {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 2px;
|
||||
|
||||
.final-section-values-container {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-evenly;
|
||||
|
||||
.final-section-value-container {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 2px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
footer {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
|
||||
button {
|
||||
flex: 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,5 +1,6 @@
|
|||
.measured-template-button,
|
||||
.enriched-damage-button,
|
||||
.fate-roll-button,
|
||||
.duality-roll-button {
|
||||
display: inline;
|
||||
|
||||
|
|
|
|||
|
|
@ -195,6 +195,11 @@
|
|||
.hope-value {
|
||||
display: flex;
|
||||
cursor: pointer;
|
||||
|
||||
&.scar {
|
||||
cursor: initial;
|
||||
opacity: 0.6;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -14,6 +14,7 @@
|
|||
color: @dark;
|
||||
}
|
||||
|
||||
&.fate,
|
||||
&.duality {
|
||||
background-image: url(../assets/parchments/dh-parchment-dark.png);
|
||||
|
||||
|
|
@ -66,6 +67,7 @@
|
|||
}
|
||||
}
|
||||
|
||||
&.fate,
|
||||
&.critical {
|
||||
--text-color: @chat-purple;
|
||||
--bg-color: @chat-purple-40;
|
||||
|
|
@ -80,7 +82,7 @@
|
|||
}
|
||||
}
|
||||
|
||||
&:not(.duality) {
|
||||
&:not(.duality .fate) {
|
||||
.font-20 {
|
||||
color: @dark;
|
||||
}
|
||||
|
|
@ -173,6 +175,28 @@
|
|||
}
|
||||
}
|
||||
|
||||
&.fate {
|
||||
|
||||
&.hope {
|
||||
--text-color: @golden;
|
||||
--bg-color: @golden-40;
|
||||
.message-header,
|
||||
.message-content {
|
||||
background-color: @golden-bg;
|
||||
}
|
||||
}
|
||||
|
||||
&.fear {
|
||||
--text-color: @chat-blue;
|
||||
--bg-color: @chat-blue-40;
|
||||
.message-header,
|
||||
.message-content {
|
||||
background-color: @chat-blue-bg;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
&.duality {
|
||||
&.hope {
|
||||
--text-color: @golden;
|
||||
|
|
|
|||
152
styles/less/ui/chat/deathmoves.less
Normal file
152
styles/less/ui/chat/deathmoves.less
Normal file
|
|
@ -0,0 +1,152 @@
|
|||
@import '../../utils/colors.less';
|
||||
@import '../../utils/fonts.less';
|
||||
@import '../../utils/spacing.less';
|
||||
|
||||
#interface.theme-light {
|
||||
.daggerheart.chat.death-moves {
|
||||
.death-moves-list .death-move {
|
||||
&:hover {
|
||||
background: @dark-blue-10;
|
||||
}
|
||||
|
||||
.death-label {
|
||||
border-bottom: 1px solid @dark-blue;
|
||||
|
||||
.header-label .title {
|
||||
color: @dark-blue;
|
||||
}
|
||||
.header-label .label {
|
||||
color: @dark;
|
||||
}
|
||||
}
|
||||
|
||||
.fa-chevron-down {
|
||||
color: @dark-blue;
|
||||
}
|
||||
}
|
||||
|
||||
.description {
|
||||
color: @dark;
|
||||
}
|
||||
|
||||
.result {
|
||||
color: @dark;
|
||||
}
|
||||
|
||||
.risk-it-all-button {
|
||||
color: @dark;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.daggerheart.chat {
|
||||
&.death-moves {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
|
||||
details[open] {
|
||||
.fa-chevron-down {
|
||||
transform: rotate(180deg);
|
||||
transition: all 0.3s ease;
|
||||
}
|
||||
}
|
||||
|
||||
.death-moves-list {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 5px;
|
||||
width: 100%;
|
||||
|
||||
.fa-chevron-down {
|
||||
transition: all 0.3s ease;
|
||||
margin-left: auto;
|
||||
}
|
||||
|
||||
.death-move {
|
||||
width: 100%;
|
||||
|
||||
.death-label {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 5px;
|
||||
border-bottom: 1px solid @golden;
|
||||
margin: 0 8px;
|
||||
padding-bottom: 5px;
|
||||
width: -webkit-fill-available;
|
||||
|
||||
&:hover {
|
||||
background: light-dark(@dark-blue-10, @golden-10);
|
||||
cursor: pointer;
|
||||
transition: all 0.3s ease;
|
||||
}
|
||||
|
||||
.death-image {
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
border-radius: 3px;
|
||||
}
|
||||
|
||||
.header-label {
|
||||
padding: 8px;
|
||||
.title {
|
||||
font-size: var(--font-size-16);
|
||||
color: @golden;
|
||||
font-weight: 700;
|
||||
}
|
||||
.label {
|
||||
font-size: var(--font-size-12);
|
||||
color: @beige;
|
||||
margin: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.description {
|
||||
padding: 8px;
|
||||
}
|
||||
}
|
||||
|
||||
.action-use-button-parent {
|
||||
width: 100%;
|
||||
|
||||
.action-use-target {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
gap: 4px;
|
||||
width: 100%;
|
||||
padding: 4px 8px 10px 40px;
|
||||
font-size: var(--font-size-12);
|
||||
|
||||
label {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
select {
|
||||
flex: 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.action-use-button {
|
||||
width: -webkit-fill-available;
|
||||
margin: 0 8px;
|
||||
font-weight: 600;
|
||||
height: 40px;
|
||||
}
|
||||
}
|
||||
|
||||
.result {
|
||||
padding: 8px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.risk-it-all-button {
|
||||
width: -webkit-fill-available;
|
||||
margin: 0 8px;
|
||||
font-weight: 600;
|
||||
height: 40px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -6,6 +6,7 @@
|
|||
@import './chat/effect-summary.less';
|
||||
@import './chat/group-roll.less';
|
||||
@import './chat/refresh-message.less';
|
||||
@import './chat/deathmoves.less';
|
||||
@import './chat/sheet.less';
|
||||
|
||||
@import './combat-sidebar/combat-sidebar.less';
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue