[Feature] Countdown Actions (#1302)

* Added countdown actions

* Added a CountdownAutomation setting to enable/disable countdown automation

* Added Looping

* Added characterSpotlight automation

* Countdown max as formula to enable random countdowns

* Updated compendiums with countdowns

* .

* Fixed lightmode colouration

* Raised system version

* Added automation for ActionRolls on countdowns

* Added automation on fear to countdowns

* Corrected attackAction countdown automation

* Added initial countdown upon creating a CountdownAction

* Improved ActionCountdown initial name to be 'Start Countdown'
This commit is contained in:
WBHarry 2025-11-20 11:46:00 +01:00 committed by GitHub
parent 0233979a9f
commit 207220ff7b
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
54 changed files with 1742 additions and 635 deletions

View file

@ -63,58 +63,75 @@
scrollbar-width: thin;
scrollbar-color: light-dark(@dark-blue, @golden) transparent;
.countdown-edit-container {
display: grid;
grid-template-columns: 48px 1fr 68px;
align-items: center;
.countdown-edit-outer-container {
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 8px;
img {
width: 52px;
height: 52px;
border-radius: 6px;
}
.countdown-edit-text {
display: flex;
flex-direction: column;
justify-content: center;
.countdown-edit-container {
width: 100%;
display: grid;
grid-template-columns: 48px 1fr 72px;
align-items: center;
gap: 8px;
.countdown-edit-subtext {
img {
width: 52px;
height: 52px;
border-radius: 6px;
}
.countdown-edit-text {
display: flex;
gap: 10px;
flex-direction: column;
justify-content: center;
gap: 8px;
.countdown-edit-sub-tag {
padding: 3px 5px;
font-size: var(--font-size-12);
font: @font-body;
.countdown-edit-subtext {
display: flex;
align-items: center;
gap: 10px;
background: light-dark(@dark-15, @beige-15);
border: 1px solid light-dark(@dark, @beige);
border-radius: 3px;
.countdown-edit-sub-tag {
padding: 3px 5px;
font-size: var(--font-size-12);
font: @font-body;
background: light-dark(@dark-15, @beige-15);
border: 1px solid light-dark(@dark, @beige);
border-radius: 3px;
}
.countdown-edit-loop {
position: relative;
.loop-marker {
position: absolute;
top: -4px;
font-size: 10px;
}
}
}
}
.countdown-edit-tools {
display: flex;
gap: 8px;
&.same-row {
margin-top: 17.5px;
}
a {
font-size: 16px;
}
}
}
.countdown-edit-tools {
display: flex;
gap: 8px;
&.same-row {
margin-top: 17.5px;
}
a {
font-size: 16px;
}
}
}
.countdown-edit-subrow {
display: flex;
gap: 16px;
margin: 0 72px 0 56px;
gap: 8px;
}
.countdown-edit-input {
@ -124,6 +141,14 @@
align-items: flex-start;
gap: 2px;
&.type-input {
min-width: 120px;
}
&.looping-input {
min-width: 120px;
}
&.tiny {
flex: 0;
input {

View file

@ -47,7 +47,7 @@
.countdown-container {
display: flex;
justify-content: space-between;
width: 100%;
&.icon-only {
gap: 8px;
@ -64,6 +64,7 @@
}
.countdown-main-container {
width: 100%;
display: flex;
align-items: center;
gap: 16px;
@ -75,6 +76,7 @@
}
.countdown-content {
flex: 1;
display: flex;
flex-direction: column;
justify-content: space-between;
@ -82,7 +84,13 @@
.countdown-tools {
display: flex;
align-items: center;
gap: 16px;
justify-content: space-between;
.countdown-tool-controls {
display: flex;
align-items: center;
gap: 16px;
}
.progress-tag {
border: 1px solid;
@ -90,32 +98,53 @@
padding: 2px 4px;
background-color: light-dark(@beige, @dark-blue);
}
.countdown-tool-icons {
display: flex;
align-items: center;
gap: 8px;
.looping-container {
position: relative;
border: 1px solid light-dark(@dark-blue, white);
border-radius: 6px;
padding: 2px 4px;
&.should-loop {
background: light-dark(@golden, @golden);
.loop-marker {
color: light-dark(@dark-blue, @dark-blue);
}
}
.direction-marker {
position: absolute;
font-size: 10px;
filter: drop-shadow(0 0 3px black);
top: -3px;
}
}
}
}
}
}
/* Keep incase we want to reintroduce the player pips */
// .countdown-access-container {
// display: grid;
// grid-template-columns: 1fr 1fr 1fr;
// grid-auto-rows: min-content;
// width: 38px;
// gap: 4px;
.countdown-access-container {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
grid-auto-rows: min-content;
width: 38px;
gap: 4px;
.countdown-access {
height: 10px;
width: 10px;
border-radius: 50%;
border: 1px solid light-dark(@dark-blue, @beige-80);
content: '';
}
}
.countdown-no-access-container {
width: 38px;
display: flex;
align-items: center;
justify-content: center;
}
// .countdown-access {
// height: 10px;
// width: 10px;
// border-radius: 50%;
// border: 1px solid light-dark(@dark-blue, @beige-80);
// content: '';
// }
// }
}
}
}