2 Commits

Author SHA1 Message Date
uberwald 7f758afa56 Fix CSS issues and add omen re-roll function
Release Creation / build (release) Successful in 42s
2026-05-23 09:19:32 +02:00
uberwald 7beda6c331 Fix CSS issues and add omen re-roll function 2026-05-23 08:48:29 +02:00
59 changed files with 611 additions and 334 deletions
Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

+172 -114
View File
@@ -17,10 +17,10 @@
--mgne-panel-soft: rgba(64, 47, 37, 0.66); --mgne-panel-soft: rgba(64, 47, 37, 0.66);
--mgne-border: rgba(171, 139, 104, 0.35); --mgne-border: rgba(171, 139, 104, 0.35);
--mgne-border-strong: rgba(196, 154, 69, 0.42); --mgne-border-strong: rgba(196, 154, 69, 0.42);
--mgne-accent: #dd6b2d; --mgne-accent: #e89a5f;
--mgne-accent-alt: #4f7d73; --mgne-accent-alt: #4f7d73;
--mgne-text: #ccb292; --mgne-text: #ccb292;
--mgne-text-soft: #7e664f; --mgne-text-soft: #a68e78;
--mgne-title: #ab8b68; --mgne-title: #ab8b68;
--mgne-shadow: 0 14px 30px rgba(0, 0, 0, 0.36); --mgne-shadow: 0 14px 30px rgba(0, 0, 0, 0.36);
} }
@@ -30,7 +30,7 @@
color: #ccb292; color: #ccb292;
} }
.application.mgne .window-header { .application.mgne .window-header {
background: linear-gradient(90deg, rgba(127, 29, 23, 0.4), rgba(183, 70, 31, 0.18) 25%, transparent 70%), linear-gradient(180deg, color-mix(in srgb, #1b1512 80%, black), #13100f); background: linear-gradient(90deg, rgba(232, 90, 80, 0.4), rgba(216, 122, 79, 0.18) 25%, transparent 70%), linear-gradient(180deg, color-mix(in srgb, #1b1512 80%, black), #13100f);
border-bottom: 1px solid rgba(196, 154, 69, 0.35); border-bottom: 1px solid rgba(196, 154, 69, 0.35);
color: #ab8b68; color: #ab8b68;
} }
@@ -39,7 +39,7 @@
text-transform: uppercase; text-transform: uppercase;
letter-spacing: 0.08em; letter-spacing: 0.08em;
font-size: 1rem; font-size: 1rem;
text-shadow: 0 0 16px rgba(221, 107, 45, 0.25); text-shadow: 0 0 16px rgba(232, 154, 95, 0.25);
} }
.application.mgne .window-header .header-control { .application.mgne .window-header .header-control {
font-family: var(--font-awesome, "Font Awesome 6 Pro"); font-family: var(--font-awesome, "Font Awesome 6 Pro");
@@ -68,7 +68,7 @@
font-weight: 400; font-weight: 400;
} }
.application.mgne .window-content { .application.mgne .window-content {
background: radial-gradient(circle at top left, rgba(183, 70, 31, 0.12), transparent 28%), radial-gradient(circle at top right, rgba(79, 125, 115, 0.1), transparent 24%), linear-gradient(180deg, rgba(27, 21, 18, 0.3), rgba(19, 16, 15, 0.28)), url("../assets/ui/page_background.webp") center top / cover no-repeat, linear-gradient(180deg, #1b1512, #13100f 120%); background: radial-gradient(circle at top left, rgba(216, 122, 79, 0.12), transparent 28%), radial-gradient(circle at top right, rgba(79, 125, 115, 0.1), transparent 24%), linear-gradient(180deg, rgba(27, 21, 18, 0.3), rgba(19, 16, 15, 0.28)), url("../assets/ui/page_background.webp") center top / cover no-repeat, linear-gradient(180deg, #1b1512, #13100f 120%);
color: #ccb292; color: #ccb292;
min-height: 0; min-height: 0;
overflow-y: auto; overflow-y: auto;
@@ -110,15 +110,17 @@
.application.mgne select:focus, .application.mgne select:focus,
.application.mgne textarea:focus { .application.mgne textarea:focus {
outline: none; outline: none;
border-color: rgba(221, 107, 45, 0.7); border-color: rgba(232, 154, 95, 0.7);
box-shadow: 0 0 0 1px rgba(221, 107, 45, 0.25), inset 0 1px 0 rgba(255, 255, 255, 0.06); box-shadow: 0 0 0 1px rgba(232, 154, 95, 0.25), inset 0 1px 0 rgba(255, 255, 255, 0.06);
} }
.application.mgne select { .application.mgne select {
appearance: none; appearance: none;
padding-right: 1.3rem; padding-right: 1.3rem;
background-image: linear-gradient(45deg, transparent 50%, rgba(196, 154, 69, 0.78) 50%), linear-gradient(135deg, rgba(196, 154, 69, 0.78) 50%, transparent 50%), linear-gradient(180deg, rgba(171, 139, 104, 0.04), transparent 60%); background-image: linear-gradient(45deg, transparent 50%, rgba(196, 154, 69, 0.78) 50%), linear-gradient(135deg, rgba(196, 154, 69, 0.78) 50%, transparent 50%), linear-gradient(180deg, rgba(171, 139, 104, 0.04), transparent 60%);
background-position: calc(100% - 11px) calc(50% - 2px), calc(100% - 7px) calc(50% - 2px), 0 0; background-position: calc(100% - 11px) calc(50% - 2px), calc(100% - 7px) calc(50% - 2px), 0 0;
background-size: 4px 4px, 4px 4px, auto; background-size: 4px 4px,
4px 4px,
auto;
background-repeat: no-repeat; background-repeat: no-repeat;
} }
.application.mgne textarea { .application.mgne textarea {
@@ -131,7 +133,7 @@
letter-spacing: 0.08em; letter-spacing: 0.08em;
border: 1px solid rgba(196, 154, 69, 0.44); border: 1px solid rgba(196, 154, 69, 0.44);
border-radius: 999px; border-radius: 999px;
background: linear-gradient(180deg, rgba(221, 107, 45, 0.2), rgba(127, 29, 23, 0.1)), linear-gradient(135deg, rgba(171, 139, 104, 0.1), transparent 40%), rgba(17, 12, 10, 0.72); background: linear-gradient(180deg, rgba(232, 154, 95, 0.2), rgba(232, 90, 80, 0.1)), linear-gradient(135deg, rgba(171, 139, 104, 0.1), transparent 40%), rgba(17, 12, 10, 0.72);
color: #ccb292; color: #ccb292;
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 6px 14px rgba(0, 0, 0, 0.2); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 6px 14px rgba(0, 0, 0, 0.2);
transition: transform 120ms ease, box-shadow 120ms ease, border-color 120ms ease, color 120ms ease; transition: transform 120ms ease, box-shadow 120ms ease, border-color 120ms ease, color 120ms ease;
@@ -139,20 +141,24 @@
} }
.application.mgne button:hover, .application.mgne button:hover,
.application.mgne button:focus { .application.mgne button:focus {
border-color: rgba(221, 107, 45, 0.7); border-color: rgba(232, 154, 95, 0.7);
color: #d9c6ae; color: #d9c6ae;
transform: translateY(-1px); transform: translateY(-1px);
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14), 0 8px 18px rgba(127, 29, 23, 0.26); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14), 0 8px 18px rgba(232, 90, 80, 0.26);
} }
.application.mgne label { .application.mgne label {
font-family: "CastorTwoMGNE", "Palatino Linotype", serif; font-family: "CastorTwoMGNE", "Palatino Linotype", serif;
text-transform: uppercase; text-transform: uppercase;
letter-spacing: 0.08em; letter-spacing: 0.08em;
color: #6e3d2a; color: #ab8b68;
font-size: 0.74rem; font-size: 0.74rem;
} }
.application.mgne.item-sheet label,
.application.mgne.item-sheet .item-form-row > label {
color: #1b1512;
}
.application.mgne fieldset { .application.mgne fieldset {
background: linear-gradient(180deg, rgba(171, 139, 104, 0.04), transparent 24%), linear-gradient(135deg, rgba(183, 70, 31, 0.08), transparent 40%), linear-gradient(180deg, rgba(27, 21, 18, 0.52), rgba(19, 16, 15, 0.34)), url("../assets/ui/page_background.webp") center center / cover no-repeat, linear-gradient(180deg, rgba(41, 30, 24, 0.88) 0%, color-mix(in srgb, rgba(41, 30, 24, 0.88) 88%, black) 100%); background: linear-gradient(180deg, rgba(171, 139, 104, 0.04), transparent 24%), linear-gradient(135deg, rgba(216, 122, 79, 0.08), transparent 40%), linear-gradient(180deg, rgba(27, 21, 18, 0.52), rgba(19, 16, 15, 0.34)), url("../assets/ui/page_background.webp") center center / cover no-repeat, linear-gradient(180deg, rgba(41, 30, 24, 0.88) 0%, color-mix(in srgb, rgba(41, 30, 24, 0.88) 88%, black) 100%);
border: 1px solid rgba(171, 139, 104, 0.34); border: 1px solid rgba(171, 139, 104, 0.34);
border-radius: 8px; border-radius: 8px;
box-shadow: 0 14px 30px rgba(0, 0, 0, 0.36), inset 0 1px 0 rgba(255, 236, 203, 0.08), inset 0 0 0 1px rgba(255, 236, 203, 0.03); box-shadow: 0 14px 30px rgba(0, 0, 0, 0.36), inset 0 1px 0 rgba(255, 236, 203, 0.08), inset 0 0 0 1px rgba(255, 236, 203, 0.03);
@@ -167,6 +173,9 @@
border: 1px solid rgba(196, 154, 69, 0.16); border: 1px solid rgba(196, 154, 69, 0.16);
border-radius: calc(8px - 4px); border-radius: calc(8px - 4px);
} }
.application.mgne.character fieldset p {
color: #1b1512;
}
.application.mgne fieldset .editor, .application.mgne fieldset .editor,
.application.mgne fieldset .editor-content, .application.mgne fieldset .editor-content,
.application.mgne fieldset .ProseMirror, .application.mgne fieldset .ProseMirror,
@@ -221,16 +230,16 @@
border-radius: 4px; border-radius: 4px;
} }
.application.mgne .empty-state { .application.mgne .empty-state {
color: rgba(95, 77, 64, 0.94); color: #1b1512;
font-style: italic; font-style: italic;
letter-spacing: 0.03em; letter-spacing: 0.03em;
} }
.application.mgne .rollable { .application.mgne .rollable {
color: #dd6b2d; color: #d9c6ae;
text-shadow: 0 0 12px rgba(183, 70, 31, 0.18); text-shadow: 0 0 12px rgba(196, 154, 69, 0.18);
} }
.application.mgne .rollable:hover { .application.mgne .rollable:hover {
color: #e48a59; color: #e0cfbc;
} }
#combat .combat-controls .mgne-flee-control { #combat .combat-controls .mgne-flee-control {
display: flex; display: flex;
@@ -242,18 +251,33 @@
margin-top: 0.35rem; margin-top: 0.35rem;
border: 1px solid rgba(196, 154, 69, 0.28); border: 1px solid rgba(196, 154, 69, 0.28);
border-radius: 6px; border-radius: 6px;
background: linear-gradient(180deg, rgba(127, 29, 23, 0.26), rgba(183, 70, 31, 0.14)), rgba(17, 12, 10, 0.92); background: linear-gradient(180deg, rgba(232, 90, 80, 0.26), rgba(216, 122, 79, 0.14)), rgba(17, 12, 10, 0.92);
color: #ab8b68; color: #ab8b68;
font-family: "LoraMGNE", "Book Antiqua", serif; font-family: "LoraMGNE", "Book Antiqua", serif;
font-weight: 700; font-weight: 700;
} }
#combat .combat-controls .mgne-flee-control:hover:not(:disabled) { #combat .combat-controls .mgne-flee-control:hover:not(:disabled) {
border-color: rgba(221, 107, 45, 0.52); border-color: rgba(232, 154, 95, 0.52);
color: #b69a7c; color: #b69a7c;
} }
#combat .combat-controls .mgne-flee-control:disabled { #combat .combat-controls .mgne-flee-control:disabled {
opacity: 0.5; opacity: 0.5;
} }
#pause > img {
content: url("../assets/ui/machine_god_skull.png");
animation: none;
width: 260px;
height: auto;
filter: drop-shadow(0 0 18px rgba(0, 0, 0, 0.8));
}
#pause figcaption {
font-family: "CastorTwoMGNE", "Palatino Linotype", serif;
font-size: 2rem;
font-weight: bold;
color: #a67054;
text-shadow: 0 0 10px rgba(0, 0, 0, 0.9), 1px 1px 2px #000;
letter-spacing: 2px;
}
.application.mgne .mgne-sheet { .application.mgne .mgne-sheet {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
@@ -291,7 +315,7 @@
.application.mgne .inventory-section, .application.mgne .inventory-section,
.application.mgne .daily-resources-panel, .application.mgne .daily-resources-panel,
.application.mgne .tab-panel { .application.mgne .tab-panel {
background: linear-gradient(180deg, rgba(171, 139, 104, 0.04), transparent 24%), linear-gradient(135deg, rgba(183, 70, 31, 0.08), transparent 40%), linear-gradient(180deg, rgba(27, 21, 18, 0.52), rgba(19, 16, 15, 0.34)), url("../assets/ui/page_background.webp") center center / cover no-repeat, linear-gradient(180deg, rgba(41, 30, 24, 0.88) 0%, color-mix(in srgb, rgba(41, 30, 24, 0.88) 88%, black) 100%); background: linear-gradient(180deg, rgba(171, 139, 104, 0.04), transparent 24%), linear-gradient(135deg, rgba(216, 122, 79, 0.08), transparent 40%), linear-gradient(180deg, rgba(27, 21, 18, 0.52), rgba(19, 16, 15, 0.34)), url("../assets/ui/page_background.webp") center center / cover no-repeat, linear-gradient(180deg, rgba(41, 30, 24, 0.88) 0%, color-mix(in srgb, rgba(41, 30, 24, 0.88) 88%, black) 100%);
border: 1px solid rgba(171, 139, 104, 0.34); border: 1px solid rgba(171, 139, 104, 0.34);
border-radius: 8px; border-radius: 8px;
box-shadow: 0 14px 30px rgba(0, 0, 0, 0.36), inset 0 1px 0 rgba(255, 236, 203, 0.08), inset 0 0 0 1px rgba(255, 236, 203, 0.03); box-shadow: 0 14px 30px rgba(0, 0, 0, 0.36), inset 0 1px 0 rgba(255, 236, 203, 0.08), inset 0 0 0 1px rgba(255, 236, 203, 0.03);
@@ -391,8 +415,8 @@
gap: 0.28rem; gap: 0.28rem;
padding: 0.52rem; padding: 0.52rem;
border-radius: 8px; border-radius: 8px;
border: 1px solid rgba(82, 69, 60, 0.3); border: 1px solid rgba(160, 136, 120, 0.3);
background: linear-gradient(180deg, rgba(171, 139, 104, 0.04), transparent 30%), linear-gradient(180deg, rgba(183, 70, 31, 0.07), transparent 80%), rgba(64, 47, 37, 0.66); background: linear-gradient(180deg, rgba(171, 139, 104, 0.04), transparent 30%), linear-gradient(180deg, rgba(216, 122, 79, 0.07), transparent 80%), rgba(64, 47, 37, 0.66);
} }
.application.mgne .ability-card { .application.mgne .ability-card {
min-height: 0; min-height: 0;
@@ -434,14 +458,14 @@
padding-top: 1rem; padding-top: 1rem;
} }
.application.mgne .resource-box-inline-track .numeric-caption { .application.mgne .resource-box-inline-track .numeric-caption {
color: #6e3d2a; color: #ab8b68;
} }
.application.mgne .resource-box-inline-track .numeric-caption-strong { .application.mgne .resource-box-inline-track .numeric-caption-strong {
padding: 0.08rem 0.34rem; padding: 0.08rem 0.34rem;
border-radius: 999px; border-radius: 999px;
background: rgba(196, 154, 69, 0.18); background: rgba(196, 154, 69, 0.18);
border: 1px solid rgba(110, 61, 42, 0.28); border: 1px solid rgba(171, 139, 104, 0.28);
color: #5f3524; color: #ab8b68;
font-size: 0.6rem; font-size: 0.6rem;
letter-spacing: 0.11em; letter-spacing: 0.11em;
} }
@@ -483,7 +507,7 @@
font-family: "CastorTwoMGNE", "Palatino Linotype", serif; font-family: "CastorTwoMGNE", "Palatino Linotype", serif;
text-transform: uppercase; text-transform: uppercase;
letter-spacing: 0.08em; letter-spacing: 0.08em;
color: rgba(129, 83, 59, 0.94); color: #b58b73;
font-size: 0.58rem; font-size: 0.58rem;
letter-spacing: 0.12em; letter-spacing: 0.12em;
} }
@@ -577,7 +601,7 @@
align-items: center; align-items: center;
} }
.application.mgne .resource-inline span { .application.mgne .resource-inline span {
color: #7e664f; color: #a68e78;
} }
.application.mgne .sheet-tabs { .application.mgne .sheet-tabs {
display: flex; display: flex;
@@ -590,8 +614,8 @@
min-width: 110px; min-width: 110px;
} }
.application.mgne .tab-button.active { .application.mgne .tab-button.active {
border-color: rgba(221, 107, 45, 0.7); border-color: rgba(232, 154, 95, 0.7);
background: linear-gradient(180deg, rgba(221, 107, 45, 0.26), rgba(127, 29, 23, 0.12)), linear-gradient(135deg, rgba(204, 178, 146, 0.12), transparent 45%), rgba(17, 12, 10, 0.72); background: linear-gradient(180deg, rgba(232, 154, 95, 0.26), rgba(232, 90, 80, 0.12)), linear-gradient(135deg, rgba(204, 178, 146, 0.12), transparent 45%), rgba(17, 12, 10, 0.72);
color: #d6c1a7; color: #d6c1a7;
} }
.application.mgne .tab-panel:not(.active) { .application.mgne .tab-panel:not(.active) {
@@ -630,7 +654,7 @@
.application.mgne .section-heading small { .application.mgne .section-heading small {
display: inline-block; display: inline-block;
margin-top: 0.12rem; margin-top: 0.12rem;
color: #7e664f; color: #a68e78;
font-size: 0.72rem; font-size: 0.72rem;
} }
.application.mgne .inventory-header, .application.mgne .inventory-header,
@@ -668,6 +692,14 @@
color: #ab8b68; color: #ab8b68;
font-size: 0.82rem; font-size: 0.82rem;
} }
.application.mgne.item-sheet h3,
.application.mgne.item-sheet .inventory-header h3 {
color: #1b1512;
}
.application.mgne.character .condition-value-grid label,
.application.mgne.character .condition-flag-grid label {
color: #1b1512;
}
.application.mgne .item-row { .application.mgne .item-row {
position: relative; position: relative;
display: grid; display: grid;
@@ -677,11 +709,11 @@
padding: 0.48rem 0.2rem 0.48rem 0.55rem; padding: 0.48rem 0.2rem 0.48rem 0.55rem;
border-radius: 6px; border-radius: 6px;
border: 1px solid transparent; border: 1px solid transparent;
background: linear-gradient(90deg, rgba(183, 70, 31, 0.09), transparent 35%), linear-gradient(180deg, rgba(204, 178, 146, 0.02), rgba(19, 16, 15, 0.12)), rgba(17, 12, 10, 0.8); background: linear-gradient(90deg, rgba(216, 122, 79, 0.09), transparent 35%), linear-gradient(180deg, rgba(204, 178, 146, 0.02), rgba(19, 16, 15, 0.12)), rgba(17, 12, 10, 0.8);
} }
.application.mgne .item-row:hover { .application.mgne .item-row:hover {
border-color: rgba(196, 154, 69, 0.28); border-color: rgba(196, 154, 69, 0.28);
background: linear-gradient(90deg, rgba(183, 70, 31, 0.12), transparent 35%), linear-gradient(180deg, rgba(204, 178, 146, 0.04), rgba(19, 16, 15, 0.12)), rgba(17, 12, 10, 0.88); background: linear-gradient(90deg, rgba(216, 122, 79, 0.12), transparent 35%), linear-gradient(180deg, rgba(204, 178, 146, 0.04), rgba(19, 16, 15, 0.12)), rgba(17, 12, 10, 0.88);
} }
.application.mgne .item-name { .application.mgne .item-name {
color: #ccb292; color: #ccb292;
@@ -755,8 +787,8 @@
min-width: 0; min-width: 0;
} }
.application.mgne .resource-label-accent { .application.mgne .resource-label-accent {
color: #dd6b2d; color: #d9c6ae;
text-shadow: 0 0 12px rgba(183, 70, 31, 0.18); text-shadow: 0 0 12px rgba(196, 154, 69, 0.18);
} }
.application.mgne .ability-score { .application.mgne .ability-score {
display: flex; display: flex;
@@ -792,7 +824,7 @@
font-size: 0.8rem; font-size: 0.8rem;
} }
.application.mgne .ability-defense-sub { .application.mgne .ability-defense-sub {
color: #7e664f; color: #a68e78;
font-size: 0.62rem; font-size: 0.62rem;
} }
.application.mgne .character .ability-card:nth-child(odd), .application.mgne .character .ability-card:nth-child(odd),
@@ -803,7 +835,7 @@
.application.mgne .companion .resource-box, .application.mgne .companion .resource-box,
.application.mgne .creature .ability-card, .application.mgne .creature .ability-card,
.application.mgne .companion .ability-card { .application.mgne .companion .ability-card {
background: linear-gradient(180deg, rgba(127, 29, 23, 0.11), transparent 60%), linear-gradient(180deg, rgba(204, 178, 146, 0.04), transparent 35%), rgba(64, 47, 37, 0.66); background: linear-gradient(180deg, rgba(232, 90, 80, 0.11), transparent 60%), linear-gradient(180deg, rgba(204, 178, 146, 0.04), transparent 35%), rgba(64, 47, 37, 0.66);
} }
@media (max-width: 960px) { @media (max-width: 960px) {
.application.mgne .sheet-header, .application.mgne .sheet-header,
@@ -845,9 +877,9 @@
background: rgba(196, 154, 69, 0.1); background: rgba(196, 154, 69, 0.1);
} }
.item-weight-badge.weight-heavy { .item-weight-badge.weight-heavy {
color: #7f1d17; color: #ab8b68;
border-color: rgba(127, 29, 23, 0.45); border-color: rgba(196, 154, 69, 0.45);
background: rgba(127, 29, 23, 0.12); background: rgba(149, 128, 104, 0.12);
} }
.load-display { .load-display {
font-weight: 700; font-weight: 700;
@@ -855,15 +887,15 @@
cursor: default; cursor: default;
} }
.load-overloaded { .load-overloaded {
color: #7f1d17 !important; color: #d9c6ae !important;
text-shadow: 0 0 6px rgba(127, 29, 23, 0.5); text-shadow: 0 0 6px rgba(196, 154, 69, 0.5);
} }
.resource-box-overloaded { .resource-box-overloaded {
border-color: rgba(127, 29, 23, 0.6) !important; border-color: rgba(196, 154, 69, 0.6) !important;
background: rgba(127, 29, 23, 0.1) !important; background: rgba(149, 128, 104, 0.1) !important;
} }
.resource-box-overloaded .resource-label-accent { .resource-box-overloaded .resource-label-accent {
color: #7f1d17 !important; color: #d9c6ae !important;
} }
.item-name[data-tooltip] { .item-name[data-tooltip] {
cursor: help; cursor: help;
@@ -891,9 +923,9 @@
font-weight: 700; font-weight: 700;
text-transform: uppercase; text-transform: uppercase;
letter-spacing: 0.06em; letter-spacing: 0.06em;
color: #7f1d17; color: #d9c6ae;
background: rgba(127, 29, 23, 0.14); background: rgba(149, 128, 104, 0.14);
border: 1px solid rgba(127, 29, 23, 0.45); border: 1px solid rgba(171, 139, 104, 0.45);
border-radius: 3px; border-radius: 3px;
vertical-align: middle; vertical-align: middle;
} }
@@ -916,9 +948,9 @@
letter-spacing: 0.03em; letter-spacing: 0.03em;
} }
.item-durability-badge.durability-broken { .item-durability-badge.durability-broken {
color: #7f1d17; color: #d9c6ae;
border-color: rgba(127, 29, 23, 0.4); border-color: rgba(171, 139, 104, 0.4);
background: rgba(127, 29, 23, 0.1); background: rgba(149, 128, 104, 0.1);
text-decoration: line-through; text-decoration: line-through;
} }
.item-row-broken { .item-row-broken {
@@ -927,7 +959,7 @@
} }
.item-row-broken .item-name { .item-row-broken .item-name {
text-decoration: line-through; text-decoration: line-through;
color: rgba(204, 178, 146, 0.55); color: #d6c1a7;
} }
.weapon-properties-grid { .weapon-properties-grid {
display: flex; display: flex;
@@ -979,10 +1011,10 @@
margin-left: 0.2em; margin-left: 0.2em;
} }
.creature-traits-container { .creature-traits-container {
border: 1px solid rgba(127, 29, 23, 0.35); border: 1px solid rgba(232, 90, 80, 0.35);
border-left: 3px solid rgba(127, 29, 23, 0.65); border-left: 3px solid rgba(232, 90, 80, 0.65);
border-radius: 4px; border-radius: 4px;
background: linear-gradient(135deg, rgba(127, 29, 23, 0.05), transparent 60%), rgba(64, 47, 37, 0.85); background: linear-gradient(135deg, rgba(232, 90, 80, 0.05), transparent 60%), rgba(64, 47, 37, 0.85);
padding: 0.6rem 0.75rem; padding: 0.6rem 0.75rem;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
@@ -993,7 +1025,7 @@
align-items: center; align-items: center;
justify-content: space-between; justify-content: space-between;
gap: 0.5rem; gap: 0.5rem;
border-bottom: 1px solid rgba(127, 29, 23, 0.25); border-bottom: 1px solid rgba(232, 90, 80, 0.25);
padding-bottom: 0.4rem; padding-bottom: 0.4rem;
margin-bottom: 0.1rem; margin-bottom: 0.1rem;
} }
@@ -1004,21 +1036,21 @@
font-weight: 700; font-weight: 700;
text-transform: uppercase; text-transform: uppercase;
letter-spacing: 0.08em; letter-spacing: 0.08em;
color: rgba(127, 29, 23, 0.9); color: #ed7c74;
} }
.creature-traits-header button { .creature-traits-header button {
font-size: 0.72rem; font-size: 0.72rem;
padding: 0.15em 0.6em; padding: 0.15em 0.6em;
background: rgba(127, 29, 23, 0.12); background: rgba(232, 90, 80, 0.12);
border: 1px solid rgba(127, 29, 23, 0.35); border: 1px solid rgba(232, 90, 80, 0.35);
color: rgba(127, 29, 23, 0.8); color: #ea6b62;
border-radius: 3px; border-radius: 3px;
cursor: pointer; cursor: pointer;
transition: background 0.15s, color 0.15s; transition: background 0.15s, color 0.15s;
} }
.creature-traits-header button:hover { .creature-traits-header button:hover {
background: rgba(127, 29, 23, 0.22); background: rgba(232, 90, 80, 0.22);
color: #aa271f; color: #ee857d;
} }
.creature-traits-list { .creature-traits-list {
display: flex; display: flex;
@@ -1027,14 +1059,14 @@
} }
.creature-trait-card { .creature-trait-card {
background: rgba(19, 16, 15, 0.3); background: rgba(19, 16, 15, 0.3);
border: 1px solid rgba(127, 29, 23, 0.2); border: 1px solid rgba(232, 90, 80, 0.2);
border-radius: 3px; border-radius: 3px;
padding: 0.35rem 0.5rem; padding: 0.35rem 0.5rem;
transition: background 0.15s, border-color 0.15s; transition: background 0.15s, border-color 0.15s;
} }
.creature-trait-card:hover { .creature-trait-card:hover {
background: rgba(127, 29, 23, 0.08); background: rgba(232, 90, 80, 0.08);
border-color: rgba(127, 29, 23, 0.35); border-color: rgba(232, 90, 80, 0.35);
} }
.creature-trait-card-header { .creature-trait-card-header {
display: flex; display: flex;
@@ -1055,7 +1087,7 @@
cursor: default; cursor: default;
} }
.creature-trait-name i { .creature-trait-name i {
color: rgba(127, 29, 23, 0.7); color: rgba(232, 90, 80, 0.7);
font-size: 0.75em; font-size: 0.75em;
} }
.creature-trait-trigger { .creature-trait-trigger {
@@ -1097,7 +1129,7 @@
flex-wrap: wrap; flex-wrap: wrap;
padding: 0.45rem 0.6rem; padding: 0.45rem 0.6rem;
background: rgba(64, 47, 37, 0.5); background: rgba(64, 47, 37, 0.5);
border: 1px solid rgba(183, 70, 31, 0.2); border: 1px solid rgba(216, 122, 79, 0.2);
border-radius: 4px; border-radius: 4px;
} }
.creature-meta-label { .creature-meta-label {
@@ -1106,7 +1138,7 @@
font-weight: 700; font-weight: 700;
text-transform: uppercase; text-transform: uppercase;
letter-spacing: 0.07em; letter-spacing: 0.07em;
color: rgba(183, 70, 31, 0.8); color: #ccb292;
white-space: nowrap; white-space: nowrap;
} }
.creature-type-group { .creature-type-group {
@@ -1120,14 +1152,17 @@
align-items: center; align-items: center;
gap: 0.3em; gap: 0.3em;
font-size: 0.83rem; font-size: 0.83rem;
color: #ccb292; color: #ccb292 !important;
cursor: pointer; cursor: pointer;
user-select: none; user-select: none;
} }
.creature-type-checkbox > span {
color: #ccb292 !important;
}
.creature-type-checkbox input[type="checkbox"] { .creature-type-checkbox input[type="checkbox"] {
appearance: checkbox; appearance: checkbox;
-webkit-appearance: checkbox; -webkit-appearance: checkbox;
accent-color: #b7461f; accent-color: #d87a4f;
width: 0.9rem; width: 0.9rem;
height: 0.9rem; height: 0.9rem;
cursor: pointer; cursor: pointer;
@@ -1151,13 +1186,13 @@
font-size: 0.9rem; font-size: 0.9rem;
color: #ccb292; color: #ccb292;
background: rgba(17, 12, 10, 0.72); background: rgba(17, 12, 10, 0.72);
border: 1px solid rgba(183, 70, 31, 0.3); border: 1px solid rgba(216, 122, 79, 0.3);
border-radius: 3px; border-radius: 3px;
padding: 0.15em 0.3em; padding: 0.15em 0.3em;
} }
.creature-number-input:focus { .creature-number-input:focus {
outline: none; outline: none;
border-color: rgba(183, 70, 31, 0.6); border-color: rgba(216, 122, 79, 0.6);
background: rgba(17, 12, 10, 0.9); background: rgba(17, 12, 10, 0.9);
} }
.creature-action-table-section .action-table-drop-zone { .creature-action-table-section .action-table-drop-zone {
@@ -1172,7 +1207,7 @@
} }
.creature-action-table-section .action-table-drop-zone i { .creature-action-table-section .action-table-drop-zone i {
font-size: 1em; font-size: 1em;
color: #b7461f; color: #d87a4f;
} }
.creature-action-table-section .action-table-drop-zone .action-table-name { .creature-action-table-section .action-table-drop-zone .action-table-name {
font-weight: 600; font-weight: 600;
@@ -1180,8 +1215,8 @@
color: #ccb292; color: #ccb292;
} }
.creature-action-table-section .action-table-drop-zone.drop-hint { .creature-action-table-section .action-table-drop-zone.drop-hint {
border: 2px dashed rgba(183, 70, 31, 0.35); border: 2px dashed rgba(216, 122, 79, 0.35);
background: rgba(183, 70, 31, 0.04); background: rgba(216, 122, 79, 0.04);
color: rgba(204, 178, 146, 0.5); color: rgba(204, 178, 146, 0.5);
font-style: italic; font-style: italic;
justify-content: center; justify-content: center;
@@ -1189,17 +1224,17 @@
transition: background 0.15s, border-color 0.15s; transition: background 0.15s, border-color 0.15s;
} }
.creature-action-table-section .action-table-drop-zone.drop-hint i { .creature-action-table-section .action-table-drop-zone.drop-hint i {
color: rgba(183, 70, 31, 0.5); color: rgba(216, 122, 79, 0.5);
} }
.creature-action-table-section .action-table-drop-zone.drop-hint:hover, .creature-action-table-section .action-table-drop-zone.drop-hint:hover,
.creature-action-table-section .action-table-drop-zone.drop-hint.drag-over { .creature-action-table-section .action-table-drop-zone.drop-hint.drag-over {
background: rgba(183, 70, 31, 0.09); background: rgba(216, 122, 79, 0.09);
border-color: rgba(183, 70, 31, 0.6); border-color: rgba(216, 122, 79, 0.6);
color: rgba(204, 178, 146, 0.7); color: rgba(204, 178, 146, 0.7);
} }
.creature-action-table-section .action-table-drop-zone.drop-hint:hover i, .creature-action-table-section .action-table-drop-zone.drop-hint:hover i,
.creature-action-table-section .action-table-drop-zone.drop-hint.drag-over i { .creature-action-table-section .action-table-drop-zone.drop-hint.drag-over i {
color: #b7461f; color: #d87a4f;
} }
.creature-action-table-section .action-table-buttons { .creature-action-table-section .action-table-buttons {
display: flex; display: flex;
@@ -1209,9 +1244,9 @@
.creature-action-table-section .action-table-buttons button { .creature-action-table-section .action-table-buttons button {
font-size: 0.75rem; font-size: 0.75rem;
padding: 0.15em 0.55em; padding: 0.15em 0.55em;
background: rgba(183, 70, 31, 0.1); background: rgba(149, 128, 104, 0.1);
border: 1px solid rgba(183, 70, 31, 0.3); border: 1px solid rgba(196, 154, 69, 0.3);
color: rgba(183, 70, 31, 0.8); color: #d6c1a7;
border-radius: 3px; border-radius: 3px;
cursor: pointer; cursor: pointer;
transition: background 0.15s, color 0.15s; transition: background 0.15s, color 0.15s;
@@ -1220,8 +1255,8 @@
gap: 0.3em; gap: 0.3em;
} }
.creature-action-table-section .action-table-buttons button:hover { .creature-action-table-section .action-table-buttons button:hover {
background: rgba(183, 70, 31, 0.22); background: rgba(149, 128, 104, 0.22);
color: #b7461f; color: #ab8b68;
} }
.application.mgne.party .party-credits-row { .application.mgne.party .party-credits-row {
display: flex; display: flex;
@@ -1293,7 +1328,7 @@
border-radius: 6px; border-radius: 6px;
} }
.application.mgne.party .party-member-row.party-member-header { .application.mgne.party .party-member-row.party-member-header {
color: #7e664f; color: #a68e78;
font-size: 0.72rem; font-size: 0.72rem;
font-weight: 700; font-weight: 700;
text-transform: uppercase; text-transform: uppercase;
@@ -1326,14 +1361,14 @@
color: #c49a45; color: #c49a45;
} }
.application.mgne.party .party-member-hp { .application.mgne.party .party-member-hp {
color: #dd6b2d; color: #ab8b68;
font-family: "CastorTwoMGNE", "Palatino Linotype", serif; font-family: "CastorTwoMGNE", "Palatino Linotype", serif;
font-size: 0.82rem; font-size: 0.82rem;
font-weight: 700; font-weight: 700;
text-align: center; text-align: center;
} }
.application.mgne.party .party-member-type { .application.mgne.party .party-member-type {
color: #7e664f; color: #bead9d;
font-size: 0.78rem; font-size: 0.78rem;
font-style: italic; font-style: italic;
} }
@@ -1352,7 +1387,7 @@
border-radius: 6px; border-radius: 6px;
} }
.application.mgne.party .party-loot-row.party-loot-header { .application.mgne.party .party-loot-row.party-loot-header {
color: #7e664f; color: #a68e78;
font-size: 0.72rem; font-size: 0.72rem;
font-weight: 700; font-weight: 700;
text-transform: uppercase; text-transform: uppercase;
@@ -1377,12 +1412,12 @@
border: 1px solid rgba(171, 139, 104, 0.25); border: 1px solid rgba(171, 139, 104, 0.25);
} }
.application.mgne.party .item-type-label { .application.mgne.party .item-type-label {
color: #7e664f; color: #a68e78;
font-size: 0.78rem; font-size: 0.78rem;
font-style: italic; font-style: italic;
} }
.application.mgne.party .party-drop-hint { .application.mgne.party .party-drop-hint {
color: rgba(126, 102, 79, 0.7); color: rgba(166, 142, 120, 0.7);
font-size: 0.75rem; font-size: 0.75rem;
font-style: italic; font-style: italic;
text-align: center; text-align: center;
@@ -1393,13 +1428,13 @@
} }
.application.mgne.roll-dialog .window-content { .application.mgne.roll-dialog .window-content {
padding: 0.55rem; padding: 0.55rem;
background: radial-gradient(circle at top left, rgba(221, 107, 45, 0.14), transparent 26%), linear-gradient(180deg, rgba(27, 21, 18, 0.26), rgba(19, 16, 15, 0.22)), url("../assets/ui/page_background.webp") center center / cover no-repeat, linear-gradient(180deg, #1b1512, #13100f 120%); background: radial-gradient(circle at top left, rgba(232, 154, 95, 0.14), transparent 26%), linear-gradient(180deg, rgba(27, 21, 18, 0.26), rgba(19, 16, 15, 0.22)), url("../assets/ui/page_background.webp") center center / cover no-repeat, linear-gradient(180deg, #1b1512, #13100f 120%);
} }
.application.mgne.roll-dialog .dialog-content { .application.mgne.roll-dialog .dialog-content {
padding: 0; padding: 0;
} }
.application.mgne.roll-dialog .mgne-roll-dialog { .application.mgne.roll-dialog .mgne-roll-dialog {
background: linear-gradient(135deg, rgba(183, 70, 31, 0.1), transparent 32%), linear-gradient(180deg, rgba(27, 21, 18, 0.94), rgba(19, 16, 15, 0.98)), #13100f; background: linear-gradient(135deg, rgba(216, 122, 79, 0.1), transparent 32%), linear-gradient(180deg, rgba(27, 21, 18, 0.94), rgba(19, 16, 15, 0.98)), #13100f;
border: 1px solid rgba(196, 154, 69, 0.28); border: 1px solid rgba(196, 154, 69, 0.28);
border-radius: 6px; border-radius: 6px;
box-shadow: 0 14px 30px rgba(0, 0, 0, 0.36), inset 0 1px 0 rgba(255, 236, 203, 0.08), inset 0 0 0 1px rgba(255, 236, 203, 0.03); box-shadow: 0 14px 30px rgba(0, 0, 0, 0.36), inset 0 1px 0 rgba(255, 236, 203, 0.08), inset 0 0 0 1px rgba(255, 236, 203, 0.03);
@@ -1444,7 +1479,7 @@
min-width: 132px; min-width: 132px;
} }
.mgne-chat-card { .mgne-chat-card {
background: linear-gradient(180deg, rgba(171, 139, 104, 0.04), transparent 24%), linear-gradient(135deg, rgba(183, 70, 31, 0.08), transparent 40%), linear-gradient(180deg, rgba(27, 21, 18, 0.52), rgba(19, 16, 15, 0.34)), url("../assets/ui/page_background.webp") center center / cover no-repeat, linear-gradient(180deg, rgba(41, 30, 24, 0.88) 0%, color-mix(in srgb, rgba(41, 30, 24, 0.88) 88%, black) 100%); background: linear-gradient(180deg, rgba(171, 139, 104, 0.04), transparent 24%), linear-gradient(135deg, rgba(216, 122, 79, 0.08), transparent 40%), linear-gradient(180deg, rgba(27, 21, 18, 0.52), rgba(19, 16, 15, 0.34)), url("../assets/ui/page_background.webp") center center / cover no-repeat, linear-gradient(180deg, rgba(41, 30, 24, 0.88) 0%, color-mix(in srgb, rgba(41, 30, 24, 0.88) 88%, black) 100%);
border: 1px solid rgba(171, 139, 104, 0.34); border: 1px solid rgba(171, 139, 104, 0.34);
border-radius: 8px; border-radius: 8px;
box-shadow: 0 14px 30px rgba(0, 0, 0, 0.36), inset 0 1px 0 rgba(255, 236, 203, 0.08), inset 0 0 0 1px rgba(255, 236, 203, 0.03); box-shadow: 0 14px 30px rgba(0, 0, 0, 0.36), inset 0 1px 0 rgba(255, 236, 203, 0.08), inset 0 0 0 1px rgba(255, 236, 203, 0.03);
@@ -1453,8 +1488,8 @@
flex-direction: column; flex-direction: column;
gap: 0.6rem; gap: 0.6rem;
padding: 0.68rem; padding: 0.68rem;
color: #52453c; color: #a08878;
background: radial-gradient(circle at top right, rgba(79, 125, 115, 0.1), transparent 22%), linear-gradient(135deg, rgba(183, 70, 31, 0.1), transparent 38%), linear-gradient(180deg, rgba(171, 139, 104, 0.04), transparent 24%), linear-gradient(180deg, rgba(27, 21, 18, 0.22), rgba(19, 16, 15, 0.18)), url("../assets/ui/page_background.webp") right bottom / cover no-repeat, rgba(41, 30, 24, 0.88); background: radial-gradient(circle at top right, rgba(79, 125, 115, 0.1), transparent 22%), linear-gradient(135deg, rgba(216, 122, 79, 0.1), transparent 38%), linear-gradient(180deg, rgba(171, 139, 104, 0.04), transparent 24%), linear-gradient(180deg, rgba(27, 21, 18, 0.22), rgba(19, 16, 15, 0.18)), url("../assets/ui/page_background.webp") right bottom / cover no-repeat, rgba(41, 30, 24, 0.88);
} }
.mgne-chat-card::before { .mgne-chat-card::before {
content: ""; content: "";
@@ -1485,7 +1520,7 @@
text-transform: uppercase; text-transform: uppercase;
letter-spacing: 0.08em; letter-spacing: 0.08em;
margin: 0; margin: 0;
color: #6e3d2a; color: #ab8b68;
font-size: 0.82rem; font-size: 0.82rem;
} }
.mgne-chat-card .chat-actor, .mgne-chat-card .chat-actor,
@@ -1495,10 +1530,10 @@
margin: 0; margin: 0;
} }
.mgne-chat-card .chat-actor { .mgne-chat-card .chat-actor {
color: #52453c; color: #a08878;
} }
.mgne-chat-card .chat-formula { .mgne-chat-card .chat-formula {
color: #52453c; color: #a08878;
} }
.mgne-chat-card .chat-formula code { .mgne-chat-card .chat-formula code {
color: #ccb292; color: #ccb292;
@@ -1563,7 +1598,7 @@
.mgne-chat-card .chat-dice-tooltip .dice-formula { .mgne-chat-card .chat-dice-tooltip .dice-formula {
font-family: "Courier New", monospace; font-family: "Courier New", monospace;
font-size: 0.72rem; font-size: 0.72rem;
color: rgba(204, 178, 146, 0.65); color: rgba(204, 178, 146, 0.78);
} }
.mgne-chat-card .chat-dice-tooltip .dice-tooltip { .mgne-chat-card .chat-dice-tooltip .dice-tooltip {
font-size: 0.78rem; font-size: 0.78rem;
@@ -1577,7 +1612,7 @@
font-size: 0.8rem; font-size: 0.8rem;
} }
.mgne-chat-card .chat-dice-tooltip .part-formula { .mgne-chat-card .chat-dice-tooltip .part-formula {
color: rgba(204, 178, 146, 0.7); color: rgba(204, 178, 146, 0.82);
font-size: 0.72rem; font-size: 0.72rem;
} }
.mgne-chat-card .chat-dice-tooltip .part-total { .mgne-chat-card .chat-dice-tooltip .part-total {
@@ -1588,7 +1623,7 @@
color: #82b0a6; color: #82b0a6;
} }
.mgne-chat-card .chat-dice-tooltip .min { .mgne-chat-card .chat-dice-tooltip .min {
color: #e48a59; color: #eeb68c;
} }
.mgne-chat-card .chat-dice-tooltip .dice-total { .mgne-chat-card .chat-dice-tooltip .dice-total {
font-family: "CastorTwoMGNE", serif; font-family: "CastorTwoMGNE", serif;
@@ -1607,13 +1642,13 @@
padding: 0.3rem 0.55rem; padding: 0.3rem 0.55rem;
border-radius: 6px; border-radius: 6px;
background: rgba(19, 16, 15, 0.72); background: rgba(19, 16, 15, 0.72);
border-left: 3px solid rgba(221, 107, 45, 0.7); border-left: 3px solid rgba(232, 154, 95, 0.7);
color: #e69062; color: #f0bc95;
font-size: 0.8rem; font-size: 0.8rem;
} }
.mgne-chat-card .chat-special { .mgne-chat-card .chat-special {
padding: 0.42rem 0.55rem; padding: 0.42rem 0.55rem;
border-left: 3px solid rgba(221, 107, 45, 0.55); border-left: 3px solid rgba(232, 154, 95, 0.55);
background: rgba(17, 12, 10, 0.85); background: rgba(17, 12, 10, 0.85);
color: #ccb292; color: #ccb292;
} }
@@ -1631,17 +1666,17 @@
.mgne-chat-card.outcome-failure, .mgne-chat-card.outcome-failure,
.mgne-chat-card.outcome-broken, .mgne-chat-card.outcome-broken,
.mgne-chat-card.outcome-fumble { .mgne-chat-card.outcome-fumble {
border-color: rgba(127, 29, 23, 0.48); border-color: rgba(232, 90, 80, 0.48);
} }
.mgne-chat-card.outcome-failure .chat-outcome, .mgne-chat-card.outcome-failure .chat-outcome,
.mgne-chat-card.outcome-broken .chat-outcome, .mgne-chat-card.outcome-broken .chat-outcome,
.mgne-chat-card.outcome-fumble .chat-outcome { .mgne-chat-card.outcome-fumble .chat-outcome {
color: #eaa37c; color: #f4cdaf;
border-left-color: rgba(221, 107, 45, 0.8); border-left-color: rgba(232, 154, 95, 0.8);
} }
.mgne-chat-card.mode-apply-damage .chat-result-total, .mgne-chat-card.mode-apply-damage .chat-result-total,
.mgne-chat-card.mode-damage .chat-result-total { .mgne-chat-card.mode-damage .chat-result-total {
color: #e38450; color: #edb183;
} }
.mgne-chat-card .chat-card-actions { .mgne-chat-card .chat-card-actions {
margin-top: 0.2rem; margin-top: 0.2rem;
@@ -1653,9 +1688,9 @@
gap: 0.45rem; gap: 0.45rem;
width: 100%; width: 100%;
padding: 0.38rem 0.7rem; padding: 0.38rem 0.7rem;
border: 1px solid #dd6b2d; border: 1px solid #e89a5f;
border-radius: 6px; border-radius: 6px;
background: #b7461f; background: #d87a4f;
color: #f8ede0; color: #f8ede0;
font-family: "CastorTwoMGNE", "Palatino Linotype", serif; font-family: "CastorTwoMGNE", "Palatino Linotype", serif;
font-size: 0.78rem; font-size: 0.78rem;
@@ -1670,8 +1705,8 @@
font-weight: 700; font-weight: 700;
} }
.mgne-roll-damage-btn:hover { .mgne-roll-damage-btn:hover {
background: #da5325; background: #df9370;
border-color: #e69062; border-color: #f0bc95;
color: #fff; color: #fff;
} }
.mgne-roll-damage-btn.is-critical { .mgne-roll-damage-btn.is-critical {
@@ -1687,13 +1722,36 @@
background: #c49a45; background: #c49a45;
color: #fff; color: #fff;
} }
.mgne-omen-reroll-btn {
display: flex;
align-items: center;
justify-content: center;
gap: 0.45rem;
width: 100%;
padding: 0.38rem 0.7rem;
border: 1px solid #c49a45;
border-radius: 6px;
background: #8f6f2d;
color: #fff5d0;
font-family: "CastorTwoMGNE", "Palatino Linotype", serif;
font-size: 0.78rem;
font-weight: 600;
letter-spacing: 0.06em;
cursor: pointer;
transition: background 0.15s, border-color 0.15s;
}
.mgne-omen-reroll-btn:hover {
background: #ae8737;
border-color: #d3b373;
color: #fff;
}
.chat-apply-actions { .chat-apply-actions {
margin-top: 0.35rem; margin-top: 0.35rem;
} }
.mgne-apply-damage-select { .mgne-apply-damage-select {
width: 100%; width: 100%;
padding: 0.35rem 0.6rem; padding: 0.35rem 0.6rem;
border: 1px solid #dd6b2d; border: 1px solid #e89a5f;
border-radius: 6px; border-radius: 6px;
background: #1b1512; background: #1b1512;
color: #ab8b68; color: #ab8b68;
@@ -1708,10 +1766,10 @@
color: #ab8b68; color: #ab8b68;
} }
.mgne-apply-damage-select:hover { .mgne-apply-damage-select:hover {
border-color: #e69062; border-color: #f0bc95;
background: rgba(183, 70, 31, 0.18); background: rgba(183, 70, 31, 0.18);
} }
.mgne-apply-damage-select:focus { .mgne-apply-damage-select:focus {
outline: none; outline: none;
border-color: #dd6b2d; border-color: #e89a5f;
} }
+61
View File
@@ -146,6 +146,67 @@ Hooks.on("renderChatMessageHTML", (message, element) => {
}) })
}) })
root.querySelectorAll(".mgne-omen-reroll-btn").forEach(btn => {
btn.addEventListener("click", async () => {
const actorId = btn.dataset.actorId
const actor = game.actors.get(actorId)
if (!actor) {
ui.notifications.warn(game.i18n.localize("MGNE.Notification.ActorNotFound"))
return
}
const currentOmens = actor.system.omens?.current ?? 0
if (currentOmens === 0) {
ui.notifications.warn(game.i18n.localize("MGNE.Notification.NoOmensLeft"))
return
}
// Save original state for rollback
const originalOmens = currentOmens
// Disable button and show loading state
const originalInnerHTML = btn.innerHTML
btn.disabled = true
btn.innerHTML = '<i class="fa-solid fa-star"></i> ' + game.i18n.localize("MGNE.Common.Processing")
try {
// Spend the omen
await actor.update({ "system.omens.current": Math.max(0, currentOmens - 1) })
// Re-roll with the same parameters
const abilityId = btn.dataset.abilityId
const label = btn.dataset.label
const baseDR = parseInt(btn.dataset.baseDr ?? "12", 10)
const modifier = parseInt(btn.dataset.modifier ?? "0", 10)
const rollType = btn.dataset.rollType ?? "check"
const itemId = btn.dataset.itemId
const item = itemId ? actor.items.get(itemId) : null
await MGNERoll.promptCheck({
actor,
abilityId,
label,
baseDR,
modifier,
rollType,
item,
})
} catch (error) {
// Rollback omen spend on error
const currentOmensAfterError = actor.system.omens?.current ?? 0
if (currentOmensAfterError < originalOmens) {
await actor.update({ "system.omens.current": originalOmens })
}
ui.notifications.error(game.i18n.localize("MGNE.Notification.RollError"))
console.error("Omen re-roll failed:", error)
} finally {
// Restore button state
btn.disabled = false
btn.innerHTML = originalInnerHTML
}
})
})
root.querySelectorAll(".mgne-apply-damage-select").forEach(select => { root.querySelectorAll(".mgne-apply-damage-select").forEach(select => {
const isAllowed = game.user.isGM || message.isAuthor const isAllowed = game.user.isGM || message.isAuthor
if (!isAllowed) { if (!isAllowed) {
+5
View File
@@ -452,6 +452,7 @@
"QuantityShort": "Qty", "QuantityShort": "Qty",
"Range": "Range", "Range": "Range",
"Resonation": "Resonation", "Resonation": "Resonation",
"Processing": "Processing...",
"Roll": "Roll", "Roll": "Roll",
"No": "No", "No": "No",
"Subtype": "Subtype", "Subtype": "Subtype",
@@ -512,8 +513,11 @@
"StudyHelp": "Each action lowers the target number by 1, to a minimum of 2+." "StudyHelp": "Each action lowers the target number by 1, to a minimum of 2+."
}, },
"Notification": { "Notification": {
"ActorNotFound": "Actor not found.",
"ActorOrItemNotFound": "Actor or item not found for damage roll.", "ActorOrItemNotFound": "Actor or item not found for damage roll.",
"CannotSyncMore": "{actor} cannot synchronize any more artifacts today.", "CannotSyncMore": "{actor} cannot synchronize any more artifacts today.",
"NoOmensLeft": "No omens left to spend!",
"RollError": "Failed to re-roll. Omen refunded.",
"ItemBroken": "{item} is broken.", "ItemBroken": "{item} is broken.",
"ItemBurnedOut": "{item} is burned out.", "ItemBurnedOut": "{item} is burned out.",
"ItemDepleted": "{item} is already depleted.", "ItemDepleted": "{item} is already depleted.",
@@ -585,6 +589,7 @@
"OutcomeSuccess": "Success", "OutcomeSuccess": "Success",
"QuickRestLabel": "{actor} Takes a Quick Rest", "QuickRestLabel": "{actor} Takes a Quick Rest",
"RestoredHP": "Restored {amount} HP", "RestoredHP": "Restored {amount} HP",
"RerollWithOmen": "Reroll with Omen",
"RollDamage": "Roll Damage", "RollDamage": "Roll Damage",
"TakesDamageLabel": "{actor} Takes Damage", "TakesDamageLabel": "{actor} Takes Damage",
"TargetName": "Target: {target}", "TargetName": "Target: {target}",
+71 -14
View File
@@ -19,7 +19,12 @@
.window-header { .window-header {
background: background:
linear-gradient(90deg, fade(@blood, 40%), fade(@ember, 18%) 25%, transparent 70%), linear-gradient(
90deg,
fade(@blood, 40%),
fade(@ember, 18%) 25%,
transparent 70%
),
linear-gradient(180deg, color-mix(in srgb, @bg-char 80%, black), @bg-void); linear-gradient(180deg, color-mix(in srgb, @bg-char 80%, black), @bg-void);
border-bottom: 1px solid fade(@gold-acid, 35%); border-bottom: 1px solid fade(@gold-acid, 35%);
color: @bone; color: @bone;
@@ -64,7 +69,11 @@
.window-content { .window-content {
background: background:
radial-gradient(circle at top left, fade(@ember, 12%), transparent 28%), radial-gradient(circle at top left, fade(@ember, 12%), transparent 28%),
radial-gradient(circle at top right, fade(@verdigris, 10%), transparent 24%), radial-gradient(
circle at top right,
fade(@verdigris, 10%),
transparent 24%
),
linear-gradient(180deg, fade(@bg-char, 30%), fade(@bg-void, 28%)), linear-gradient(180deg, fade(@bg-char, 30%), fade(@bg-void, 28%)),
url("@{page-bg-url}") center top / cover no-repeat, url("@{page-bg-url}") center top / cover no-repeat,
linear-gradient(180deg, @bg-char, @bg-void 120%); linear-gradient(180deg, @bg-char, @bg-void 120%);
@@ -107,8 +116,7 @@
border: 1px solid fade(@bone, 22%); border: 1px solid fade(@bone, 22%);
border-radius: @radius-sm; border-radius: @radius-sm;
background: background:
linear-gradient(180deg, fade(@bone, 4%), transparent 60%), linear-gradient(180deg, fade(@bone, 4%), transparent 60%), @bg-input;
@bg-input;
color: @parchment; color: @parchment;
padding: 0.4rem 0.52rem; padding: 0.4rem 0.52rem;
box-shadow: inset 0 1px 0 fade(white, 4%); box-shadow: inset 0 1px 0 fade(white, 4%);
@@ -116,7 +124,9 @@
&:focus { &:focus {
outline: none; outline: none;
border-color: fade(@ember-bright, 70%); border-color: fade(@ember-bright, 70%);
box-shadow: 0 0 0 1px fade(@ember-bright, 25%), inset 0 1px 0 fade(white, 6%); box-shadow:
0 0 0 1px fade(@ember-bright, 25%),
inset 0 1px 0 fade(white, 6%);
} }
} }
@@ -131,7 +141,10 @@
calc(100% - 11px) calc(50% - 2px), calc(100% - 11px) calc(50% - 2px),
calc(100% - 7px) calc(50% - 2px), calc(100% - 7px) calc(50% - 2px),
0 0; 0 0;
background-size: 4px 4px, 4px 4px, auto; background-size:
4px 4px,
4px 4px,
auto;
background-repeat: no-repeat; background-repeat: no-repeat;
} }
@@ -147,16 +160,27 @@
.application.mgne label { .application.mgne label {
.caps-heading(); .caps-heading();
color: @label-ink; color: @bone;
font-size: 0.74rem; font-size: 0.74rem;
} }
// Item sheets: dark labels for parchment backgrounds
.application.mgne.item-sheet label,
.application.mgne.item-sheet .item-form-row > label {
color: @bg-char;
}
.application.mgne fieldset { .application.mgne fieldset {
.panel-shell(); .panel-shell();
.ornate-frame(); .ornate-frame();
margin: 0; margin: 0;
} }
// Character sheet: Rules Snapshot fieldset text - dark color for parchment bg
.application.mgne.character fieldset p {
color: @bg-char;
}
// ProseMirror / toggled editor inside fieldset — enforce contrast on dark bg // ProseMirror / toggled editor inside fieldset — enforce contrast on dark bg
.application.mgne fieldset { .application.mgne fieldset {
.editor, .editor,
@@ -168,9 +192,18 @@
} }
.editor-content, .editor-content,
.ProseMirror { .ProseMirror {
p, li { color: lighten(@parchment, 8%); } p,
h1, h2, h3 { color: @gold-acid; } li {
.is-empty::before { color: fade(@gold-acid, 40%); } color: lighten(@parchment, 8%);
}
h1,
h2,
h3 {
color: @gold-acid;
}
.is-empty::before {
color: fade(@gold-acid, 40%);
}
} }
.editor-menu button { .editor-menu button {
color: @bone; color: @bone;
@@ -203,17 +236,17 @@
} }
.application.mgne .empty-state { .application.mgne .empty-state {
color: fade(@ash, 94%); color: @bg-char;
font-style: italic; font-style: italic;
letter-spacing: 0.03em; letter-spacing: 0.03em;
} }
.application.mgne .rollable { .application.mgne .rollable {
color: @ember-bright; color: lighten(@parchment, 8%);
text-shadow: 0 0 12px fade(@ember, 18%); text-shadow: 0 0 12px fade(@gold-acid, 18%);
&:hover { &:hover {
color: lighten(@ember-bright, 10%); color: lighten(@parchment, 12%);
} }
} }
@@ -243,3 +276,27 @@
opacity: 0.5; opacity: 0.5;
} }
} }
// ============================================================
// PAUSE OVERLAY — replace default Foundry spinner with system logo
// ============================================================
#pause {
& > img {
content: url("../assets/ui/machine_god_skull.png");
animation: none;
width: 260px;
height: auto;
filter: drop-shadow(0 0 18px rgba(0, 0, 0, 0.8));
}
figcaption {
font-family: @font-display;
font-size: 2rem;
font-weight: bold;
color: @label-ink;
text-shadow:
0 0 10px rgba(0, 0, 0, 0.9),
1px 1px 2px #000;
letter-spacing: 2px;
}
}
+28 -3
View File
@@ -37,7 +37,7 @@
.mgne-chat-card h3 { .mgne-chat-card h3 {
.caps-heading(); .caps-heading();
margin: 0; margin: 0;
color: @label-ink; color: @bone;
font-size: 0.82rem; font-size: 0.82rem;
} }
@@ -119,7 +119,7 @@
.dice-formula { .dice-formula {
font-family: "Courier New", monospace; font-family: "Courier New", monospace;
font-size: 0.72rem; font-size: 0.72rem;
color: fade(@parchment, 65%); color: fade(@parchment, 78%);
} }
.dice-tooltip { .dice-tooltip {
font-size: 0.78rem; font-size: 0.78rem;
@@ -131,7 +131,7 @@
color: @gold-acid; color: @gold-acid;
font-size: 0.8rem; font-size: 0.8rem;
} }
.part-formula { color: fade(@parchment, 70%); font-size: 0.72rem; } .part-formula { color: fade(@parchment, 82%); font-size: 0.72rem; }
.part-total { color: @parchment; font-weight: 600; } .part-total { color: @parchment; font-weight: 600; }
.max { color: lighten(@verdigris, 20%); } .max { color: lighten(@verdigris, 20%); }
.min { color: lighten(@ember-bright, 10%); } .min { color: lighten(@ember-bright, 10%); }
@@ -242,6 +242,31 @@
} }
} }
.mgne-omen-reroll-btn {
display: flex;
align-items: center;
justify-content: center;
gap: 0.45rem;
width: 100%;
padding: 0.38rem 0.7rem;
border: 1px solid @gold-acid;
border-radius: @radius-sm;
background: darken(@gold-acid, 15%);
color: #fff5d0;
font-family: @font-display;
font-size: 0.78rem;
font-weight: 600;
letter-spacing: 0.06em;
cursor: pointer;
transition: background 0.15s, border-color 0.15s;
&:hover {
background: lighten(darken(@gold-acid, 15%), 8%);
border-color: lighten(@gold-acid, 12%);
color: #fff;
}
}
.chat-apply-actions { .chat-apply-actions {
margin-top: 0.35rem; margin-top: 0.35rem;
} }
+48 -32
View File
@@ -203,15 +203,15 @@
} }
.application.mgne .resource-box-inline-track .numeric-caption { .application.mgne .resource-box-inline-track .numeric-caption {
color: @label-ink; color: @bone;
} }
.application.mgne .resource-box-inline-track .numeric-caption-strong { .application.mgne .resource-box-inline-track .numeric-caption-strong {
padding: 0.08rem 0.34rem; padding: 0.08rem 0.34rem;
border-radius: 999px; border-radius: 999px;
background: fade(@gold-acid, 18%); background: fade(@gold-acid, 18%);
border: 1px solid fade(@label-ink, 28%); border: 1px solid fade(@bone, 28%);
color: darken(@label-ink, 4%); color: @bone;
font-size: 0.6rem; font-size: 0.6rem;
letter-spacing: 0.11em; letter-spacing: 0.11em;
} }
@@ -261,7 +261,7 @@
.application.mgne .numeric-caption { .application.mgne .numeric-caption {
.caps-heading(); .caps-heading();
color: fade(@label-soft, 94%); color: lighten(@label-soft, 2%);
font-size: 0.58rem; font-size: 0.58rem;
letter-spacing: 0.12em; letter-spacing: 0.12em;
} }
@@ -479,6 +479,18 @@
font-size: 0.82rem; font-size: 0.82rem;
} }
// Item sheets: dark h3 for parchment backgrounds
.application.mgne.item-sheet h3,
.application.mgne.item-sheet .inventory-header h3 {
color: @bg-char;
}
// Character sheet: Conditions block - use dark color like item sheets
.application.mgne.character .condition-value-grid label,
.application.mgne.character .condition-flag-grid label {
color: @bg-char;
}
.application.mgne .item-row { .application.mgne .item-row {
position: relative; position: relative;
display: grid; display: grid;
@@ -584,8 +596,8 @@
} }
.application.mgne .resource-label-accent { .application.mgne .resource-label-accent {
color: @ember-bright; color: lighten(@parchment, 8%);
text-shadow: 0 0 12px fade(@ember, 18%); text-shadow: 0 0 12px fade(@gold-acid, 18%);
} }
.application.mgne .ability-score { .application.mgne .ability-score {
@@ -693,9 +705,9 @@
} }
&.weight-heavy { &.weight-heavy {
color: @blood; color: @bone;
border-color: fade(@blood, 45%); border-color: fade(@gold-acid, 45%);
background: fade(@blood, 12%); background: fade(@ash, 12%);
} }
} }
@@ -707,16 +719,16 @@
} }
.load-overloaded { .load-overloaded {
color: @blood !important; color: lighten(@parchment, 8%) !important;
text-shadow: 0 0 6px fade(@blood, 50%); text-shadow: 0 0 6px fade(@gold-acid, 50%);
} }
.resource-box-overloaded { .resource-box-overloaded {
border-color: fade(@blood, 60%) !important; border-color: fade(@gold-acid, 60%) !important;
background: fade(@blood, 10%) !important; background: fade(@ash, 10%) !important;
.resource-label-accent { .resource-label-accent {
color: @blood !important; color: lighten(@parchment, 8%) !important;
} }
} }
@@ -748,9 +760,9 @@
font-weight: 700; font-weight: 700;
text-transform: uppercase; text-transform: uppercase;
letter-spacing: 0.06em; letter-spacing: 0.06em;
color: @blood; color: lighten(@parchment, 8%);
background: fade(@blood, 14%); background: fade(@ash, 14%);
border: 1px solid fade(@blood, 45%); border: 1px solid fade(@bone, 45%);
border-radius: 3px; border-radius: 3px;
vertical-align: middle; vertical-align: middle;
} }
@@ -775,9 +787,9 @@
letter-spacing: 0.03em; letter-spacing: 0.03em;
&.durability-broken { &.durability-broken {
color: @blood; color: lighten(@parchment, 8%);
border-color: fade(@blood, 40%); border-color: fade(@bone, 40%);
background: fade(@blood, 10%); background: fade(@ash, 10%);
text-decoration: line-through; text-decoration: line-through;
} }
} }
@@ -788,7 +800,7 @@
.item-name { .item-name {
text-decoration: line-through; text-decoration: line-through;
color: fade(@parchment, 55%); color: lighten(@parchment, 6%);
} }
} }
@@ -874,7 +886,7 @@
font-weight: 700; font-weight: 700;
text-transform: uppercase; text-transform: uppercase;
letter-spacing: 0.08em; letter-spacing: 0.08em;
color: fade(@blood, 90%); color: lighten(@blood, 8%);
} }
button { button {
@@ -882,7 +894,7 @@
padding: 0.15em 0.6em; padding: 0.15em 0.6em;
background: fade(@blood, 12%); background: fade(@blood, 12%);
border: 1px solid fade(@blood, 35%); border: 1px solid fade(@blood, 35%);
color: fade(@blood, 80%); color: lighten(@blood, 4%);
border-radius: 3px; border-radius: 3px;
cursor: pointer; cursor: pointer;
transition: background 0.15s, color 0.15s; transition: background 0.15s, color 0.15s;
@@ -992,7 +1004,7 @@
font-weight: 700; font-weight: 700;
text-transform: uppercase; text-transform: uppercase;
letter-spacing: 0.07em; letter-spacing: 0.07em;
color: fade(@ember, 80%); color: @parchment;
white-space: nowrap; white-space: nowrap;
} }
@@ -1008,10 +1020,14 @@
align-items: center; align-items: center;
gap: 0.3em; gap: 0.3em;
font-size: 0.83rem; font-size: 0.83rem;
color: @parchment; color: @parchment !important;
cursor: pointer; cursor: pointer;
user-select: none; user-select: none;
> span {
color: @parchment !important;
}
input[type="checkbox"] { input[type="checkbox"] {
appearance: checkbox; appearance: checkbox;
-webkit-appearance: checkbox; -webkit-appearance: checkbox;
@@ -1100,9 +1116,9 @@
button { button {
font-size: 0.75rem; font-size: 0.75rem;
padding: 0.15em 0.55em; padding: 0.15em 0.55em;
background: fade(@ember, 10%); background: fade(@ash, 10%);
border: 1px solid fade(@ember, 30%); border: 1px solid fade(@gold-acid, 30%);
color: fade(@ember, 80%); color: lighten(@parchment, 6%);
border-radius: 3px; border-radius: 3px;
cursor: pointer; cursor: pointer;
transition: background 0.15s, color 0.15s; transition: background 0.15s, color 0.15s;
@@ -1111,8 +1127,8 @@
gap: 0.3em; gap: 0.3em;
&:hover { &:hover {
background: fade(@ember, 22%); background: fade(@ash, 22%);
color: @ember; color: @bone;
} }
} }
} }
@@ -1241,7 +1257,7 @@
} }
.application.mgne.party .party-member-hp { .application.mgne.party .party-member-hp {
color: @ember-bright; color: @bone;
font-family: @font-display; font-family: @font-display;
font-size: 0.82rem; font-size: 0.82rem;
font-weight: 700; font-weight: 700;
@@ -1249,7 +1265,7 @@
} }
.application.mgne.party .party-member-type { .application.mgne.party .party-member-type {
color: @dust; color: lighten(@dust, 12%);
font-size: 0.78rem; font-size: 0.78rem;
font-style: italic; font-style: italic;
} }
+9 -9
View File
@@ -9,16 +9,16 @@
@bg-input: rgba(17, 12, 10, 0.72); @bg-input: rgba(17, 12, 10, 0.72);
@parchment: #ccb292; @parchment: #ccb292;
@bone: #ab8b68; @bone: #ab8b68;
@dust: #7e664f; @dust: #a68e78;
@ash: #5f4d40; @ash: #958068;
@label-ink: #6e3d2a; @label-ink: #a67054;
@label-soft: #81533b; @label-soft: #b1856c;
@iron: #52453c; @iron: #a08878;
@copper: #8d5f3f; @copper: #b49c73;
@verdigris: #4f7d73; @verdigris: #4f7d73;
@ember: #b7461f; @ember: #d87a4f;
@ember-bright: #dd6b2d; @ember-bright: #e89a5f;
@blood: #7f1d17; @blood: #e85a50;
@gold-acid: #c49a45; @gold-acid: #c49a45;
@shadow-heavy: 0 14px 30px rgba(0, 0, 0, 0.36); @shadow-heavy: 0 14px 30px rgba(0, 0, 0, 0.36);
@shadow-inset: inset 0 1px 0 rgba(255, 236, 203, 0.08), inset 0 0 0 1px rgba(255, 236, 203, 0.03); @shadow-inset: inset 0 1px 0 rgba(255, 236, 203, 0.08), inset 0 0 0 1px rgba(255, 236, 203, 0.03);
+15 -5
View File
@@ -70,15 +70,16 @@ async function renderCard(context) {
} }
export default class MGNERoll { export default class MGNERoll {
static async promptCheck({ actor, abilityId, label, baseDR = 12, rollType = "check", item = null }) { static async promptCheck({ actor, abilityId, label, baseDR = 12, modifier = 0, rollType = "check", item = null }) {
const abilityLabel = SYSTEM.abilities[abilityId]?.label ?? abilityId const abilityLabel = SYSTEM.abilities[abilityId]?.label ?? abilityId
const content = await foundry.applications.handlebars.renderTemplate(`systems/${SYSTEM_ID}/templates/roll-dialog.hbs`, { const content = await foundry.applications.handlebars.renderTemplate(`systems/${SYSTEM_ID}/templates/roll-dialog.hbs`, {
actorName: actor.name, actorName: actor.name,
label, label,
abilityLabel, abilityLabel,
baseDR, baseDR,
modifier,
drOptions: numericOptions(6, 20, baseDR), drOptions: numericOptions(6, 20, baseDR),
modifierOptions: numericOptions(-6, 6, 0), modifierOptions: numericOptions(-6, 6, modifier),
omens: actor.system.omens?.current ?? 0, omens: actor.system.omens?.current ?? 0,
rollType, rollType,
}) })
@@ -99,15 +100,15 @@ export default class MGNERoll {
if (!dialogData) return null if (!dialogData) return null
const modifier = Number.parseInt(dialogData.modifier ?? 0, 10) || 0 const dialogModifier = Number.parseInt(dialogData.modifier ?? 0, 10) || 0
const spendOmen = Boolean(dialogData.spendOmen) const spendOmen = Boolean(dialogData.spendOmen)
// Re-read omens after dialog close to avoid race condition (omen could have changed) // Re-read omens after dialog close to avoid race condition (omen could have changed)
const currentOmensAfterDialog = actor.system.omens?.current ?? 0 const currentOmensAfterDialog = actor.system.omens?.current ?? 0
const canSpendOmen = spendOmen && currentOmensAfterDialog > 0 const canSpendOmen = spendOmen && currentOmensAfterDialog > 0
const dr = (Number.parseInt(dialogData.dr ?? baseDR, 10) || baseDR) - (canSpendOmen ? 4 : 0) const dr = (Number.parseInt(dialogData.dr ?? baseDR, 10) || baseDR) - (canSpendOmen ? 4 : 0)
const abilityValue = actor.system.abilities?.[abilityId]?.value ?? 0 const abilityValue = actor.system.abilities?.[abilityId]?.value ?? 0
const sign = modifier >= 0 ? "+" : "-" const sign = dialogModifier >= 0 ? "+" : "-"
const formula = modifier === 0 ? `1d20 + ${abilityValue}` : `1d20 + ${abilityValue} ${sign} ${Math.abs(modifier)}` const formula = dialogModifier === 0 ? `1d20 + ${abilityValue}` : `1d20 + ${abilityValue} ${sign} ${Math.abs(dialogModifier)}`
const roll = await (new Roll(formula)).evaluate() const roll = await (new Roll(formula)).evaluate()
const natural = roll.dice?.[0]?.results?.[0]?.result ?? roll.total const natural = roll.dice?.[0]?.results?.[0]?.result ?? roll.total
@@ -143,6 +144,7 @@ export default class MGNERoll {
} }
const showDamageButton = rollType === "attack" && (success || critical) && !!item const showDamageButton = rollType === "attack" && (success || critical) && !!item
const showOmenRerollButton = Boolean(omenRerollReminder)
const contentHtml = await renderCard({ const contentHtml = await renderCard({
mode: "check", mode: "check",
actorName: actor.name, actorName: actor.name,
@@ -160,6 +162,14 @@ export default class MGNERoll {
damageItemId: showDamageButton ? item.id : null, damageItemId: showDamageButton ? item.id : null,
damageFormula: showDamageButton ? (item.system.damage || "1") : null, damageFormula: showDamageButton ? (item.system.damage || "1") : null,
damageCritical: showDamageButton && critical, damageCritical: showDamageButton && critical,
showOmenRerollButton,
omenRerollActorId: showOmenRerollButton ? actor.id : null,
omenRerollAbilityId: showOmenRerollButton ? abilityId : null,
omenRerollLabel: showOmenRerollButton ? label : null,
omenRerollBaseDR: showOmenRerollButton ? baseDR : null,
omenRerollModifier: showOmenRerollButton ? dialogModifier : 0,
omenRerollRollType: showOmenRerollButton ? rollType : null,
omenRerollItemId: showOmenRerollButton ? item?.id : null,
_roll: roll, _roll: roll,
}) })
Binary file not shown.
Binary file not shown.
+1 -1
View File
@@ -1 +1 @@
MANIFEST-000035 MANIFEST-000049
+15 -8
View File
@@ -1,8 +1,15 @@
2026/05/19-11:43:58.491683 7f5a477fe6c0 Recovering log #32 2026/05/23-09:14:18.209175 7fa280fff6c0 Recovering log #46
2026/05/19-11:43:58.503266 7f5a477fe6c0 Delete type=3 #30 2026/05/23-09:14:18.262682 7fa280fff6c0 Delete type=3 #44
2026/05/19-11:43:58.503328 7f5a477fe6c0 Delete type=0 #32 2026/05/23-09:14:18.262729 7fa280fff6c0 Delete type=0 #46
2026/05/19-13:29:47.340536 7f5a467fc6c0 Level-0 table #38: started 2026/05/23-09:14:29.462998 7fa2327fc6c0 Level-0 table #52: started
2026/05/19-13:29:47.344381 7f5a467fc6c0 Level-0 table #38: 1354 bytes OK 2026/05/23-09:14:29.466125 7fa2327fc6c0 Level-0 table #52: 1354 bytes OK
2026/05/19-13:29:47.350519 7f5a467fc6c0 Delete type=0 #36 2026/05/23-09:14:29.472096 7fa2327fc6c0 Delete type=0 #50
2026/05/19-13:29:47.378833 7f5a467fc6c0 Manual compaction at level-0 from '!items!mgne-arm-chainshirt' @ 72057594037927935 : 1 .. '!items!null' @ 0 : 0; will stop at (end) 2026/05/23-09:14:29.495570 7fa2327fc6c0 Manual compaction at level-0 from '!items!mgne-arm-chainshirt' @ 72057594037927935 : 1 .. '!items!null' @ 0 : 0; will stop at (end)
2026/05/19-13:29:47.401042 7f5a467fc6c0 Manual compaction at level-1 from '!items!mgne-arm-chainshirt' @ 72057594037927935 : 1 .. '!items!null' @ 0 : 0; will stop at (end) 2026/05/23-09:14:29.515804 7fa2327fc6c0 Manual compaction at level-1 from '!items!mgne-arm-chainshirt' @ 72057594037927935 : 1 .. '!items!null' @ 0 : 0; will stop at '!items!null' @ 82 : 1
2026/05/23-09:14:29.515812 7fa2327fc6c0 Compacting 1@1 + 1@2 files
2026/05/23-09:14:29.518812 7fa2327fc6c0 Generated table #53@1: 1 keys, 685 bytes
2026/05/23-09:14:29.518825 7fa2327fc6c0 Compacted 1@1 + 1@2 files => 685 bytes
2026/05/23-09:14:29.525255 7fa2327fc6c0 compacted to: files[ 0 0 2 0 0 0 0 ]
2026/05/23-09:14:29.525289 7fa2327fc6c0 Delete type=2 #48
2026/05/23-09:14:29.525353 7fa2327fc6c0 Delete type=2 #52
2026/05/23-09:14:29.531944 7fa2327fc6c0 Manual compaction at level-1 from '!items!null' @ 82 : 1 .. '!items!null' @ 0 : 0; will stop at (end)
+15 -16
View File
@@ -1,16 +1,15 @@
2026/05/19-11:02:18.769006 7f8fcb7fe6c0 Recovering log #27 2026/05/23-08:39:02.071552 7fb059fef6c0 Recovering log #41
2026/05/19-11:02:18.779483 7f8fcb7fe6c0 Delete type=3 #25 2026/05/23-08:39:02.085152 7fb059fef6c0 Delete type=3 #39
2026/05/19-11:02:18.779537 7f8fcb7fe6c0 Delete type=0 #27 2026/05/23-08:39:02.085618 7fb059fef6c0 Delete type=0 #41
2026/05/19-11:02:18.787924 7f8fcaffd6c0 Level-0 table #33: started 2026/05/23-08:42:47.974188 7fb04b7fe6c0 Level-0 table #47: started
2026/05/19-11:02:18.791070 7f8fcaffd6c0 Level-0 table #33: 1193 bytes OK 2026/05/23-08:42:47.978821 7fb04b7fe6c0 Level-0 table #47: 1354 bytes OK
2026/05/19-11:02:18.797355 7f8fcaffd6c0 Delete type=0 #31 2026/05/23-08:42:47.988393 7fb04b7fe6c0 Delete type=0 #45
2026/05/19-11:02:18.797604 7f8fcaffd6c0 Manual compaction at level-0 from '!items!mgne-arm-chainshirt' @ 72057594037927935 : 1 .. '!items!mgne-shd-medshield' @ 0 : 0; will stop at (end) 2026/05/23-08:42:47.997317 7fb04b7fe6c0 Manual compaction at level-0 from '!items!mgne-arm-chainshirt' @ 72057594037927935 : 1 .. '!items!null' @ 0 : 0; will stop at (end)
2026/05/19-11:02:18.797649 7f8fcaffd6c0 Manual compaction at level-1 from '!items!mgne-arm-chainshirt' @ 72057594037927935 : 1 .. '!items!mgne-shd-medshield' @ 0 : 0; will stop at '!items!null' @ 57 : 0 2026/05/23-08:42:48.016276 7fb04b7fe6c0 Manual compaction at level-1 from '!items!mgne-arm-chainshirt' @ 72057594037927935 : 1 .. '!items!null' @ 0 : 0; will stop at '!items!null' @ 74 : 1
2026/05/19-11:02:18.797659 7f8fcaffd6c0 Compacting 1@1 + 2@2 files 2026/05/23-08:42:48.016311 7fb04b7fe6c0 Compacting 1@1 + 1@2 files
2026/05/19-11:02:18.800889 7f8fcaffd6c0 Generated table #34@1: 8 keys, 1176 bytes 2026/05/23-08:42:48.020556 7fb04b7fe6c0 Generated table #48@1: 1 keys, 685 bytes
2026/05/19-11:02:18.800920 7f8fcaffd6c0 Compacted 1@1 + 2@2 files => 1176 bytes 2026/05/23-08:42:48.020648 7fb04b7fe6c0 Compacted 1@1 + 1@2 files => 685 bytes
2026/05/19-11:02:18.807939 7f8fcaffd6c0 compacted to: files[ 0 0 1 0 0 0 0 ] 2026/05/23-08:42:48.028266 7fb04b7fe6c0 compacted to: files[ 0 0 2 0 0 0 0 ]
2026/05/19-11:02:18.808063 7f8fcaffd6c0 Delete type=2 #5 2026/05/23-08:42:48.028596 7fb04b7fe6c0 Delete type=2 #43
2026/05/19-11:02:18.808159 7f8fcaffd6c0 Delete type=2 #29 2026/05/23-08:42:48.028998 7fb04b7fe6c0 Delete type=2 #47
2026/05/19-11:02:18.808228 7f8fcaffd6c0 Delete type=2 #33 2026/05/23-08:42:48.059146 7fb04b7fe6c0 Manual compaction at level-1 from '!items!null' @ 74 : 1 .. '!items!null' @ 0 : 0; will stop at (end)
2026/05/19-11:02:18.808291 7f8fcaffd6c0 Manual compaction at level-1 from '!items!null' @ 57 : 0 .. '!items!mgne-shd-medshield' @ 0 : 0; will stop at (end)
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+1 -1
View File
@@ -1 +1 @@
MANIFEST-000035 MANIFEST-000049
+15 -8
View File
@@ -1,8 +1,15 @@
2026/05/19-11:43:58.466515 7f5a47fff6c0 Recovering log #32 2026/05/23-09:14:18.096663 7fa232ffd6c0 Recovering log #46
2026/05/19-11:43:58.477301 7f5a47fff6c0 Delete type=3 #30 2026/05/23-09:14:18.146739 7fa232ffd6c0 Delete type=3 #44
2026/05/19-11:43:58.477387 7f5a47fff6c0 Delete type=0 #32 2026/05/23-09:14:18.146790 7fa232ffd6c0 Delete type=0 #46
2026/05/19-13:29:47.310841 7f5a467fc6c0 Level-0 table #38: started 2026/05/23-09:14:29.432393 7fa2327fc6c0 Level-0 table #52: started
2026/05/19-13:29:47.314286 7f5a467fc6c0 Level-0 table #38: 4899 bytes OK 2026/05/23-09:14:29.435530 7fa2327fc6c0 Level-0 table #52: 4899 bytes OK
2026/05/19-13:29:47.320795 7f5a467fc6c0 Delete type=0 #36 2026/05/23-09:14:29.442217 7fa2327fc6c0 Delete type=0 #50
2026/05/19-13:29:47.340397 7f5a467fc6c0 Manual compaction at level-0 from '!actors!mgne-comp-beguiled-noble' @ 72057594037927935 : 1 .. '!actors!null' @ 0 : 0; will stop at (end) 2026/05/23-09:14:29.462989 7fa2327fc6c0 Manual compaction at level-0 from '!actors!mgne-comp-beguiled-noble' @ 72057594037927935 : 1 .. '!actors!null' @ 0 : 0; will stop at (end)
2026/05/19-13:29:47.340431 7f5a467fc6c0 Manual compaction at level-1 from '!actors!mgne-comp-beguiled-noble' @ 72057594037927935 : 1 .. '!actors!null' @ 0 : 0; will stop at (end) 2026/05/23-09:14:29.472221 7fa2327fc6c0 Manual compaction at level-1 from '!actors!mgne-comp-beguiled-noble' @ 72057594037927935 : 1 .. '!actors!null' @ 0 : 0; will stop at '!actors!null' @ 42 : 1
2026/05/23-09:14:29.472226 7fa2327fc6c0 Compacting 1@1 + 1@2 files
2026/05/23-09:14:29.476438 7fa2327fc6c0 Generated table #53@1: 1 keys, 1984 bytes
2026/05/23-09:14:29.476452 7fa2327fc6c0 Compacted 1@1 + 1@2 files => 1984 bytes
2026/05/23-09:14:29.482663 7fa2327fc6c0 compacted to: files[ 0 0 2 0 0 0 0 ]
2026/05/23-09:14:29.482714 7fa2327fc6c0 Delete type=2 #48
2026/05/23-09:14:29.482815 7fa2327fc6c0 Delete type=2 #52
2026/05/23-09:14:29.495583 7fa2327fc6c0 Manual compaction at level-1 from '!actors!null' @ 42 : 1 .. '!actors!null' @ 0 : 0; will stop at (end)
+15 -16
View File
@@ -1,16 +1,15 @@
2026/05/19-11:02:18.809449 7f8fcb7fe6c0 Recovering log #27 2026/05/23-08:39:02.020811 7fb058fed6c0 Recovering log #41
2026/05/19-11:02:18.819291 7f8fcb7fe6c0 Delete type=3 #25 2026/05/23-08:39:02.034588 7fb058fed6c0 Delete type=3 #39
2026/05/19-11:02:18.819384 7f8fcb7fe6c0 Delete type=0 #27 2026/05/23-08:39:02.034799 7fb058fed6c0 Delete type=0 #41
2026/05/19-11:02:18.822817 7f8fcaffd6c0 Level-0 table #33: started 2026/05/23-08:42:47.861136 7fb04b7fe6c0 Level-0 table #47: started
2026/05/19-11:02:18.826056 7f8fcaffd6c0 Level-0 table #33: 2612 bytes OK 2026/05/23-08:42:47.866967 7fb04b7fe6c0 Level-0 table #47: 4899 bytes OK
2026/05/19-11:02:18.832282 7f8fcaffd6c0 Delete type=0 #31 2026/05/23-08:42:47.875441 7fb04b7fe6c0 Delete type=0 #45
2026/05/19-11:02:18.832460 7f8fcaffd6c0 Manual compaction at level-0 from '!actors!mgne-comp-beguiled-noble' @ 72057594037927935 : 1 .. '!actors!mgne-comp-silicon-cantor' @ 0 : 0; will stop at (end) 2026/05/23-08:42:47.890448 7fb04b7fe6c0 Manual compaction at level-0 from '!actors!mgne-comp-beguiled-noble' @ 72057594037927935 : 1 .. '!actors!null' @ 0 : 0; will stop at (end)
2026/05/19-11:02:18.832489 7f8fcaffd6c0 Manual compaction at level-1 from '!actors!mgne-comp-beguiled-noble' @ 72057594037927935 : 1 .. '!actors!mgne-comp-silicon-cantor' @ 0 : 0; will stop at '!actors!null' @ 29 : 0 2026/05/23-08:42:47.890591 7fb04b7fe6c0 Manual compaction at level-1 from '!actors!mgne-comp-beguiled-noble' @ 72057594037927935 : 1 .. '!actors!null' @ 0 : 0; will stop at '!actors!null' @ 38 : 1
2026/05/19-11:02:18.832498 7f8fcaffd6c0 Compacting 1@1 + 2@2 files 2026/05/23-08:42:47.890614 7fb04b7fe6c0 Compacting 1@1 + 1@2 files
2026/05/19-11:02:18.836012 7f8fcaffd6c0 Generated table #34@1: 4 keys, 2597 bytes 2026/05/23-08:42:47.895073 7fb04b7fe6c0 Generated table #48@1: 1 keys, 1984 bytes
2026/05/19-11:02:18.836038 7f8fcaffd6c0 Compacted 1@1 + 2@2 files => 2597 bytes 2026/05/23-08:42:47.895150 7fb04b7fe6c0 Compacted 1@1 + 1@2 files => 1984 bytes
2026/05/19-11:02:18.842468 7f8fcaffd6c0 compacted to: files[ 0 0 1 0 0 0 0 ] 2026/05/23-08:42:47.902755 7fb04b7fe6c0 compacted to: files[ 0 0 2 0 0 0 0 ]
2026/05/19-11:02:18.842559 7f8fcaffd6c0 Delete type=2 #5 2026/05/23-08:42:47.903327 7fb04b7fe6c0 Delete type=2 #43
2026/05/19-11:02:18.842644 7f8fcaffd6c0 Delete type=2 #29 2026/05/23-08:42:47.903735 7fb04b7fe6c0 Delete type=2 #47
2026/05/19-11:02:18.842691 7f8fcaffd6c0 Delete type=2 #33 2026/05/23-08:42:47.946588 7fb04b7fe6c0 Manual compaction at level-1 from '!actors!null' @ 38 : 1 .. '!actors!null' @ 0 : 0; will stop at (end)
2026/05/19-11:02:18.842740 7f8fcaffd6c0 Manual compaction at level-1 from '!actors!null' @ 29 : 0 .. '!actors!mgne-comp-silicon-cantor' @ 0 : 0; will stop at (end)
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+1 -1
View File
@@ -1 +1 @@
MANIFEST-000035 MANIFEST-000049
+15 -8
View File
@@ -1,8 +1,15 @@
2026/05/19-11:43:58.453269 7f5a94bff6c0 Recovering log #32 2026/05/23-09:14:18.046490 7fa280fff6c0 Recovering log #46
2026/05/19-11:43:58.463527 7f5a94bff6c0 Delete type=3 #30 2026/05/23-09:14:18.094345 7fa280fff6c0 Delete type=3 #44
2026/05/19-11:43:58.463573 7f5a94bff6c0 Delete type=0 #32 2026/05/23-09:14:18.094380 7fa280fff6c0 Delete type=0 #46
2026/05/19-13:29:47.301133 7f5a467fc6c0 Level-0 table #38: started 2026/05/23-09:14:29.422029 7fa2327fc6c0 Level-0 table #52: started
2026/05/19-13:29:47.304584 7f5a467fc6c0 Level-0 table #38: 10414 bytes OK 2026/05/23-09:14:29.425999 7fa2327fc6c0 Level-0 table #52: 10404 bytes OK
2026/05/19-13:29:47.310712 7f5a467fc6c0 Delete type=0 #36 2026/05/23-09:14:29.432298 7fa2327fc6c0 Delete type=0 #50
2026/05/19-13:29:47.340382 7f5a467fc6c0 Manual compaction at level-0 from '!items!mgne-feat-11' @ 72057594037927935 : 1 .. '!items!null' @ 0 : 0; will stop at (end) 2026/05/23-09:14:29.442387 7fa2327fc6c0 Manual compaction at level-0 from '!items!mgne-feat-11' @ 72057594037927935 : 1 .. '!items!null' @ 0 : 0; will stop at (end)
2026/05/19-13:29:47.340424 7f5a467fc6c0 Manual compaction at level-1 from '!items!mgne-feat-11' @ 72057594037927935 : 1 .. '!items!null' @ 0 : 0; will stop at (end) 2026/05/23-09:14:29.442490 7fa2327fc6c0 Manual compaction at level-1 from '!items!mgne-feat-11' @ 72057594037927935 : 1 .. '!items!null' @ 0 : 0; will stop at '!items!null' @ 362 : 1
2026/05/23-09:14:29.442501 7fa2327fc6c0 Compacting 1@1 + 1@2 files
2026/05/23-09:14:29.446332 7fa2327fc6c0 Generated table #53@1: 1 keys, 728 bytes
2026/05/23-09:14:29.446350 7fa2327fc6c0 Compacted 1@1 + 1@2 files => 728 bytes
2026/05/23-09:14:29.452219 7fa2327fc6c0 compacted to: files[ 0 0 2 0 0 0 0 ]
2026/05/23-09:14:29.452435 7fa2327fc6c0 Delete type=2 #48
2026/05/23-09:14:29.452537 7fa2327fc6c0 Delete type=2 #52
2026/05/23-09:14:29.472198 7fa2327fc6c0 Manual compaction at level-1 from '!items!null' @ 362 : 1 .. '!items!null' @ 0 : 0; will stop at (end)
+15 -16
View File
@@ -1,16 +1,15 @@
2026/05/19-11:02:18.844260 7f8fcb7fe6c0 Recovering log #27 2026/05/23-08:39:01.993483 7fb0597ee6c0 Recovering log #41
2026/05/19-11:02:18.853625 7f8fcb7fe6c0 Delete type=3 #25 2026/05/23-08:39:02.008888 7fb0597ee6c0 Delete type=3 #39
2026/05/19-11:02:18.853672 7f8fcb7fe6c0 Delete type=0 #27 2026/05/23-08:39:02.009121 7fb0597ee6c0 Delete type=0 #41
2026/05/19-11:02:18.858431 7f8fcaffd6c0 Level-0 table #33: started 2026/05/23-08:42:47.845110 7fb04b7fe6c0 Level-0 table #47: started
2026/05/19-11:02:18.861570 7f8fcaffd6c0 Level-0 table #33: 8690 bytes OK 2026/05/23-08:42:47.852176 7fb04b7fe6c0 Level-0 table #47: 10404 bytes OK
2026/05/19-11:02:18.868803 7f8fcaffd6c0 Delete type=0 #31 2026/05/23-08:42:47.860739 7fb04b7fe6c0 Delete type=0 #45
2026/05/19-11:02:18.869044 7f8fcaffd6c0 Manual compaction at level-0 from '!items!mgne-feat-11' @ 72057594037927935 : 1 .. '!items!mgne-feat-66' @ 0 : 0; will stop at (end) 2026/05/23-08:42:47.890409 7fb04b7fe6c0 Manual compaction at level-0 from '!items!mgne-feat-11' @ 72057594037927935 : 1 .. '!items!null' @ 0 : 0; will stop at (end)
2026/05/19-11:02:18.869099 7f8fcaffd6c0 Manual compaction at level-1 from '!items!mgne-feat-11' @ 72057594037927935 : 1 .. '!items!mgne-feat-66' @ 0 : 0; will stop at '!items!null' @ 253 : 0 2026/05/23-08:42:47.932141 7fb04b7fe6c0 Manual compaction at level-1 from '!items!mgne-feat-11' @ 72057594037927935 : 1 .. '!items!null' @ 0 : 0; will stop at '!items!null' @ 326 : 1
2026/05/19-11:02:18.869112 7f8fcaffd6c0 Compacting 1@1 + 2@2 files 2026/05/23-08:42:47.932174 7fb04b7fe6c0 Compacting 1@1 + 1@2 files
2026/05/19-11:02:18.872810 7f8fcaffd6c0 Generated table #34@1: 36 keys, 8674 bytes 2026/05/23-08:42:47.936922 7fb04b7fe6c0 Generated table #48@1: 1 keys, 728 bytes
2026/05/19-11:02:18.872822 7f8fcaffd6c0 Compacted 1@1 + 2@2 files => 8674 bytes 2026/05/23-08:42:47.937033 7fb04b7fe6c0 Compacted 1@1 + 1@2 files => 728 bytes
2026/05/19-11:02:18.878554 7f8fcaffd6c0 compacted to: files[ 0 0 1 0 0 0 0 ] 2026/05/23-08:42:47.945460 7fb04b7fe6c0 compacted to: files[ 0 0 2 0 0 0 0 ]
2026/05/19-11:02:18.878610 7f8fcaffd6c0 Delete type=2 #5 2026/05/23-08:42:47.945901 7fb04b7fe6c0 Delete type=2 #43
2026/05/19-11:02:18.878700 7f8fcaffd6c0 Delete type=2 #29 2026/05/23-08:42:47.946350 7fb04b7fe6c0 Delete type=2 #47
2026/05/19-11:02:18.878747 7f8fcaffd6c0 Delete type=2 #33 2026/05/23-08:42:47.947124 7fb04b7fe6c0 Manual compaction at level-1 from '!items!null' @ 326 : 1 .. '!items!null' @ 0 : 0; will stop at (end)
2026/05/19-11:02:18.878825 7f8fcaffd6c0 Manual compaction at level-1 from '!items!null' @ 253 : 0 .. '!items!mgne-feat-66' @ 0 : 0; will stop at (end)
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+1 -1
View File
@@ -1 +1 @@
MANIFEST-000036 MANIFEST-000051
+15 -15
View File
@@ -1,15 +1,15 @@
2026/05/19-11:43:58.505418 7f5a46ffd6c0 Recovering log #33 2026/05/23-09:14:18.265405 7fa233fff6c0 Recovering log #48
2026/05/19-11:43:58.516284 7f5a46ffd6c0 Delete type=3 #31 2026/05/23-09:14:18.326477 7fa233fff6c0 Delete type=3 #46
2026/05/19-11:43:58.516350 7f5a46ffd6c0 Delete type=0 #33 2026/05/23-09:14:18.326527 7fa233fff6c0 Delete type=0 #48
2026/05/19-13:29:47.350654 7f5a467fc6c0 Level-0 table #39: started 2026/05/23-09:14:29.505997 7fa2327fc6c0 Level-0 table #54: started
2026/05/19-13:29:47.354446 7f5a467fc6c0 Level-0 table #39: 31043 bytes OK 2026/05/23-09:14:29.509927 7fa2327fc6c0 Level-0 table #54: 36675 bytes OK
2026/05/19-13:29:47.361835 7f5a467fc6c0 Delete type=0 #37 2026/05/23-09:14:29.515715 7fa2327fc6c0 Delete type=0 #52
2026/05/19-13:29:47.378848 7f5a467fc6c0 Manual compaction at level-0 from '!tables!mgne-tbl-armor' @ 72057594037927935 : 1 .. '!tables.results!zjIS1gXpPC2gCY8t' @ 0 : 0; will stop at (end) 2026/05/23-09:14:29.531937 7fa2327fc6c0 Manual compaction at level-0 from '!tables!mgne-tbl-armor' @ 72057594037927935 : 1 .. '!tables.results!zwMaXqqGkMK185le' @ 0 : 0; will stop at (end)
2026/05/19-13:29:47.378915 7f5a467fc6c0 Manual compaction at level-1 from '!tables!mgne-tbl-armor' @ 72057594037927935 : 1 .. '!tables.results!zjIS1gXpPC2gCY8t' @ 0 : 0; will stop at '!tables.results!zjIS1gXpPC2gCY8t' @ 2661 : 1 2026/05/23-09:14:29.542535 7fa2327fc6c0 Manual compaction at level-1 from '!tables!mgne-tbl-armor' @ 72057594037927935 : 1 .. '!tables.results!zwMaXqqGkMK185le' @ 0 : 0; will stop at '!tables.results!zwMaXqqGkMK185le' @ 3951 : 1
2026/05/19-13:29:47.378921 7f5a467fc6c0 Compacting 1@1 + 1@2 files 2026/05/23-09:14:29.542540 7fa2327fc6c0 Compacting 1@1 + 1@2 files
2026/05/19-13:29:47.383027 7f5a467fc6c0 Generated table #40@1: 436 keys, 40533 bytes 2026/05/23-09:14:29.545905 7fa2327fc6c0 Generated table #55@1: 436 keys, 40186 bytes
2026/05/19-13:29:47.383047 7f5a467fc6c0 Compacted 1@1 + 1@2 files => 40533 bytes 2026/05/23-09:14:29.545911 7fa2327fc6c0 Compacted 1@1 + 1@2 files => 40186 bytes
2026/05/19-13:29:47.389114 7f5a467fc6c0 compacted to: files[ 0 0 1 0 0 0 0 ] 2026/05/23-09:14:29.552396 7fa2327fc6c0 compacted to: files[ 0 0 1 0 0 0 0 ]
2026/05/19-13:29:47.389270 7f5a467fc6c0 Delete type=2 #35 2026/05/23-09:14:29.552418 7fa2327fc6c0 Delete type=2 #50
2026/05/19-13:29:47.389435 7f5a467fc6c0 Delete type=2 #39 2026/05/23-09:14:29.552455 7fa2327fc6c0 Delete type=2 #54
2026/05/19-13:29:47.407497 7f5a467fc6c0 Manual compaction at level-1 from '!tables.results!zjIS1gXpPC2gCY8t' @ 2661 : 1 .. '!tables.results!zjIS1gXpPC2gCY8t' @ 0 : 0; will stop at (end) 2026/05/23-09:14:29.558584 7fa2327fc6c0 Manual compaction at level-1 from '!tables.results!zwMaXqqGkMK185le' @ 3951 : 1 .. '!tables.results!zwMaXqqGkMK185le' @ 0 : 0; will stop at (end)
+15 -15
View File
@@ -1,15 +1,15 @@
2026/05/19-11:02:18.880496 7f8fcb7fe6c0 Recovering log #28 2026/05/23-08:39:02.096363 7fb058fed6c0 Recovering log #43
2026/05/19-11:02:18.890669 7f8fcb7fe6c0 Delete type=3 #26 2026/05/23-08:39:02.110780 7fb058fed6c0 Delete type=3 #41
2026/05/19-11:02:18.890721 7f8fcb7fe6c0 Delete type=0 #28 2026/05/23-08:39:02.110962 7fb058fed6c0 Delete type=0 #43
2026/05/19-11:02:18.903169 7f8fcaffd6c0 Level-0 table #34: started 2026/05/23-08:42:47.957308 7fb04b7fe6c0 Level-0 table #49: started
2026/05/19-11:02:18.906993 7f8fcaffd6c0 Level-0 table #34: 20747 bytes OK 2026/05/23-08:42:47.965185 7fb04b7fe6c0 Level-0 table #49: 36427 bytes OK
2026/05/19-11:02:18.913179 7f8fcaffd6c0 Delete type=0 #32 2026/05/23-08:42:47.973709 7fb04b7fe6c0 Delete type=0 #47
2026/05/19-11:02:18.913340 7f8fcaffd6c0 Manual compaction at level-0 from '!tables!mgne-tbl-armor' @ 72057594037927935 : 1 .. '!tables.results!mgne-tbl-weapons.mgne-tbl-wpn-12' @ 0 : 0; will stop at (end) 2026/05/23-08:42:47.997266 7fb04b7fe6c0 Manual compaction at level-0 from '!tables!mgne-tbl-armor' @ 72057594037927935 : 1 .. '!tables.results!zJoz3QSaL4FJ8W0g' @ 0 : 0; will stop at (end)
2026/05/19-11:02:18.913365 7f8fcaffd6c0 Manual compaction at level-1 from '!tables!mgne-tbl-armor' @ 72057594037927935 : 1 .. '!tables.results!mgne-tbl-weapons.mgne-tbl-wpn-12' @ 0 : 0; will stop at '!tables.results!zvHZSivLEOLcr48A' @ 2626 : 0 2026/05/23-08:42:47.997540 7fb04b7fe6c0 Manual compaction at level-1 from '!tables!mgne-tbl-armor' @ 72057594037927935 : 1 .. '!tables.results!zJoz3QSaL4FJ8W0g' @ 0 : 0; will stop at '!tables.results!zxz8aOYe1rfUsXfG' @ 3496 : 0
2026/05/19-11:02:18.913369 7f8fcaffd6c0 Compacting 1@1 + 1@2 files 2026/05/23-08:42:47.997565 7fb04b7fe6c0 Compacting 1@1 + 1@2 files
2026/05/19-11:02:18.916838 7f8fcaffd6c0 Generated table #35@1: 225 keys, 15451 bytes 2026/05/23-08:42:48.006520 7fb04b7fe6c0 Generated table #50@1: 436 keys, 40644 bytes
2026/05/19-11:02:18.916863 7f8fcaffd6c0 Compacted 1@1 + 1@2 files => 15451 bytes 2026/05/23-08:42:48.006615 7fb04b7fe6c0 Compacted 1@1 + 1@2 files => 40644 bytes
2026/05/19-11:02:18.924177 7f8fcaffd6c0 compacted to: files[ 0 0 1 0 0 0 0 ] 2026/05/23-08:42:48.015030 7fb04b7fe6c0 compacted to: files[ 0 0 1 0 0 0 0 ]
2026/05/19-11:02:18.924301 7f8fcaffd6c0 Delete type=2 #30 2026/05/23-08:42:48.015433 7fb04b7fe6c0 Delete type=2 #45
2026/05/19-11:02:18.924433 7f8fcaffd6c0 Delete type=2 #34 2026/05/23-08:42:48.015956 7fb04b7fe6c0 Delete type=2 #49
2026/05/19-11:02:18.924527 7f8fcaffd6c0 Manual compaction at level-1 from '!tables.results!zvHZSivLEOLcr48A' @ 2626 : 0 .. '!tables.results!mgne-tbl-weapons.mgne-tbl-wpn-12' @ 0 : 0; will stop at (end) 2026/05/23-08:42:48.059083 7fb04b7fe6c0 Manual compaction at level-1 from '!tables.results!zxz8aOYe1rfUsXfG' @ 3496 : 0 .. '!tables.results!zJoz3QSaL4FJ8W0g' @ 0 : 0; will stop at (end)
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+1 -1
View File
@@ -1 +1 @@
MANIFEST-000035 MANIFEST-000049
+15 -8
View File
@@ -1,8 +1,15 @@
2026/05/19-11:43:58.439933 7f5a47fff6c0 Recovering log #32 2026/05/23-09:14:17.972244 7fa233fff6c0 Recovering log #46
2026/05/19-11:43:58.449841 7f5a47fff6c0 Delete type=3 #30 2026/05/23-09:14:18.043435 7fa233fff6c0 Delete type=3 #44
2026/05/19-11:43:58.449917 7f5a47fff6c0 Delete type=0 #32 2026/05/23-09:14:18.043484 7fa233fff6c0 Delete type=0 #46
2026/05/19-13:29:47.320927 7f5a467fc6c0 Level-0 table #38: started 2026/05/23-09:14:29.403449 7fa2327fc6c0 Level-0 table #52: started
2026/05/19-13:29:47.324319 7f5a467fc6c0 Level-0 table #38: 7117 bytes OK 2026/05/23-09:14:29.407852 7fa2327fc6c0 Level-0 table #52: 7117 bytes OK
2026/05/19-13:29:47.330350 7f5a467fc6c0 Delete type=0 #36 2026/05/23-09:14:29.415465 7fa2327fc6c0 Delete type=0 #50
2026/05/19-13:29:47.340407 7f5a467fc6c0 Manual compaction at level-0 from '!items!mgne-res-accelerate' @ 72057594037927935 : 1 .. '!items!null' @ 0 : 0; will stop at (end) 2026/05/23-09:14:29.442366 7fa2327fc6c0 Manual compaction at level-0 from '!items!mgne-res-accelerate' @ 72057594037927935 : 1 .. '!items!null' @ 0 : 0; will stop at (end)
2026/05/19-13:29:47.340437 7f5a467fc6c0 Manual compaction at level-1 from '!items!mgne-res-accelerate' @ 72057594037927935 : 1 .. '!items!null' @ 0 : 0; will stop at (end) 2026/05/23-09:14:29.452607 7fa2327fc6c0 Manual compaction at level-1 from '!items!mgne-res-accelerate' @ 72057594037927935 : 1 .. '!items!null' @ 0 : 0; will stop at '!items!null' @ 202 : 1
2026/05/23-09:14:29.452614 7fa2327fc6c0 Compacting 1@1 + 1@2 files
2026/05/23-09:14:29.455643 7fa2327fc6c0 Generated table #53@1: 1 keys, 910 bytes
2026/05/23-09:14:29.455657 7fa2327fc6c0 Compacted 1@1 + 1@2 files => 910 bytes
2026/05/23-09:14:29.462788 7fa2327fc6c0 compacted to: files[ 0 0 2 0 0 0 0 ]
2026/05/23-09:14:29.462843 7fa2327fc6c0 Delete type=2 #48
2026/05/23-09:14:29.462930 7fa2327fc6c0 Delete type=2 #52
2026/05/23-09:14:29.472208 7fa2327fc6c0 Manual compaction at level-1 from '!items!null' @ 202 : 1 .. '!items!null' @ 0 : 0; will stop at (end)
+15 -16
View File
@@ -1,16 +1,15 @@
2026/05/19-11:02:18.925517 7f9018bfe6c0 Recovering log #27 2026/05/23-08:39:01.965876 7fb058fed6c0 Recovering log #41
2026/05/19-11:02:18.934880 7f9018bfe6c0 Delete type=3 #25 2026/05/23-08:39:01.980863 7fb058fed6c0 Delete type=3 #39
2026/05/19-11:02:18.934945 7f9018bfe6c0 Delete type=0 #27 2026/05/23-08:39:01.981110 7fb058fed6c0 Delete type=0 #41
2026/05/19-11:02:18.938495 7f8fcaffd6c0 Level-0 table #33: started 2026/05/23-08:42:47.824361 7fb04b7fe6c0 Level-0 table #47: started
2026/05/19-11:02:18.941974 7f8fcaffd6c0 Level-0 table #33: 6054 bytes OK 2026/05/23-08:42:47.833284 7fb04b7fe6c0 Level-0 table #47: 7117 bytes OK
2026/05/19-11:02:18.949380 7f8fcaffd6c0 Delete type=0 #31 2026/05/23-08:42:47.844689 7fb04b7fe6c0 Delete type=0 #45
2026/05/19-11:02:18.949596 7f8fcaffd6c0 Manual compaction at level-0 from '!items!mgne-res-accelerate' @ 72057594037927935 : 1 .. '!items!mgne-res-summonmist' @ 0 : 0; will stop at (end) 2026/05/23-08:42:47.890347 7fb04b7fe6c0 Manual compaction at level-0 from '!items!mgne-res-accelerate' @ 72057594037927935 : 1 .. '!items!null' @ 0 : 0; will stop at (end)
2026/05/19-11:02:18.949632 7f8fcaffd6c0 Manual compaction at level-1 from '!items!mgne-res-accelerate' @ 72057594037927935 : 1 .. '!items!mgne-res-summonmist' @ 0 : 0; will stop at '!items!null' @ 141 : 0 2026/05/23-08:42:47.903963 7fb04b7fe6c0 Manual compaction at level-1 from '!items!mgne-res-accelerate' @ 72057594037927935 : 1 .. '!items!null' @ 0 : 0; will stop at '!items!null' @ 182 : 1
2026/05/19-11:02:18.949641 7f8fcaffd6c0 Compacting 1@1 + 2@2 files 2026/05/23-08:42:47.903996 7fb04b7fe6c0 Compacting 1@1 + 1@2 files
2026/05/19-11:02:18.953049 7f8fcaffd6c0 Generated table #34@1: 20 keys, 6039 bytes 2026/05/23-08:42:47.908345 7fb04b7fe6c0 Generated table #48@1: 1 keys, 910 bytes
2026/05/19-11:02:18.953070 7f8fcaffd6c0 Compacted 1@1 + 2@2 files => 6039 bytes 2026/05/23-08:42:47.908426 7fb04b7fe6c0 Compacted 1@1 + 1@2 files => 910 bytes
2026/05/19-11:02:18.958965 7f8fcaffd6c0 compacted to: files[ 0 0 1 0 0 0 0 ] 2026/05/23-08:42:47.917015 7fb04b7fe6c0 compacted to: files[ 0 0 2 0 0 0 0 ]
2026/05/19-11:02:18.959068 7f8fcaffd6c0 Delete type=2 #5 2026/05/23-08:42:47.917368 7fb04b7fe6c0 Delete type=2 #43
2026/05/19-11:02:18.959179 7f8fcaffd6c0 Delete type=2 #29 2026/05/23-08:42:47.917768 7fb04b7fe6c0 Delete type=2 #47
2026/05/19-11:02:18.959228 7f8fcaffd6c0 Delete type=2 #33 2026/05/23-08:42:47.946653 7fb04b7fe6c0 Manual compaction at level-1 from '!items!null' @ 182 : 1 .. '!items!null' @ 0 : 0; will stop at (end)
2026/05/19-11:02:18.959314 7f8fcaffd6c0 Manual compaction at level-1 from '!items!null' @ 141 : 0 .. '!items!mgne-res-summonmist' @ 0 : 0; will stop at (end)
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+1 -1
View File
@@ -1 +1 @@
MANIFEST-000035 MANIFEST-000049
+15 -8
View File
@@ -1,8 +1,15 @@
2026/05/19-11:43:58.479956 7f5a47fff6c0 Recovering log #32 2026/05/23-09:14:18.149804 7fa232ffd6c0 Recovering log #46
2026/05/19-11:43:58.489548 7f5a47fff6c0 Delete type=3 #30 2026/05/23-09:14:18.206384 7fa232ffd6c0 Delete type=3 #44
2026/05/19-11:43:58.489595 7f5a47fff6c0 Delete type=0 #32 2026/05/23-09:14:18.206431 7fa232ffd6c0 Delete type=0 #46
2026/05/19-13:29:47.330472 7f5a467fc6c0 Level-0 table #38: started 2026/05/23-09:14:29.495692 7fa2327fc6c0 Level-0 table #52: started
2026/05/19-13:29:47.333528 7f5a467fc6c0 Level-0 table #38: 1965 bytes OK 2026/05/23-09:14:29.499223 7fa2327fc6c0 Level-0 table #52: 1965 bytes OK
2026/05/19-13:29:47.340237 7f5a467fc6c0 Delete type=0 #36 2026/05/23-09:14:29.505900 7fa2327fc6c0 Delete type=0 #50
2026/05/19-13:29:47.340417 7f5a467fc6c0 Manual compaction at level-0 from '!items!mgne-wpn-club' @ 72057594037927935 : 1 .. '!items!null' @ 0 : 0; will stop at (end) 2026/05/23-09:14:29.531922 7fa2327fc6c0 Manual compaction at level-0 from '!items!mgne-wpn-club' @ 72057594037927935 : 1 .. '!items!null' @ 0 : 0; will stop at (end)
2026/05/19-13:29:47.340444 7f5a467fc6c0 Manual compaction at level-1 from '!items!mgne-wpn-club' @ 72057594037927935 : 1 .. '!items!null' @ 0 : 0; will stop at (end) 2026/05/23-09:14:29.531955 7fa2327fc6c0 Manual compaction at level-1 from '!items!mgne-wpn-club' @ 72057594037927935 : 1 .. '!items!null' @ 0 : 0; will stop at '!items!null' @ 122 : 1
2026/05/23-09:14:29.531958 7fa2327fc6c0 Compacting 1@1 + 1@2 files
2026/05/23-09:14:29.535486 7fa2327fc6c0 Generated table #53@1: 1 keys, 626 bytes
2026/05/23-09:14:29.535507 7fa2327fc6c0 Compacted 1@1 + 1@2 files => 626 bytes
2026/05/23-09:14:29.542419 7fa2327fc6c0 compacted to: files[ 0 0 2 0 0 0 0 ]
2026/05/23-09:14:29.542458 7fa2327fc6c0 Delete type=2 #48
2026/05/23-09:14:29.542504 7fa2327fc6c0 Delete type=2 #52
2026/05/23-09:14:29.558566 7fa2327fc6c0 Manual compaction at level-1 from '!items!null' @ 122 : 1 .. '!items!null' @ 0 : 0; will stop at (end)
+15 -16
View File
@@ -1,16 +1,15 @@
2026/05/19-11:02:18.960160 7f9018bfe6c0 Recovering log #27 2026/05/23-08:39:02.046509 7fb058fed6c0 Recovering log #41
2026/05/19-11:02:18.971164 7f9018bfe6c0 Delete type=3 #25 2026/05/23-08:39:02.061764 7fb058fed6c0 Delete type=3 #39
2026/05/19-11:02:18.971219 7f9018bfe6c0 Delete type=0 #27 2026/05/23-08:39:02.061947 7fb058fed6c0 Delete type=0 #41
2026/05/19-11:02:18.972967 7f8fcaffd6c0 Level-0 table #33: started 2026/05/23-08:42:47.875902 7fb04b7fe6c0 Level-0 table #47: started
2026/05/19-11:02:18.976102 7f8fcaffd6c0 Level-0 table #33: 1312 bytes OK 2026/05/23-08:42:47.880995 7fb04b7fe6c0 Level-0 table #47: 1965 bytes OK
2026/05/19-11:02:18.983166 7f8fcaffd6c0 Delete type=0 #31 2026/05/23-08:42:47.889814 7fb04b7fe6c0 Delete type=0 #45
2026/05/19-11:02:18.983370 7f8fcaffd6c0 Manual compaction at level-0 from '!items!mgne-wpn-club' @ 72057594037927935 : 1 .. '!items!mgne-wpn-whip' @ 0 : 0; will stop at (end) 2026/05/23-08:42:47.890538 7fb04b7fe6c0 Manual compaction at level-0 from '!items!mgne-wpn-club' @ 72057594037927935 : 1 .. '!items!null' @ 0 : 0; will stop at (end)
2026/05/19-11:02:18.983394 7f8fcaffd6c0 Manual compaction at level-1 from '!items!mgne-wpn-club' @ 72057594037927935 : 1 .. '!items!mgne-wpn-whip' @ 0 : 0; will stop at '!items!null' @ 85 : 0 2026/05/23-08:42:47.918010 7fb04b7fe6c0 Manual compaction at level-1 from '!items!mgne-wpn-club' @ 72057594037927935 : 1 .. '!items!null' @ 0 : 0; will stop at '!items!null' @ 110 : 1
2026/05/19-11:02:18.983398 7f8fcaffd6c0 Compacting 1@1 + 2@2 files 2026/05/23-08:42:47.918042 7fb04b7fe6c0 Compacting 1@1 + 1@2 files
2026/05/19-11:02:18.987181 7f8fcaffd6c0 Generated table #34@1: 12 keys, 1295 bytes 2026/05/23-08:42:47.923207 7fb04b7fe6c0 Generated table #48@1: 1 keys, 626 bytes
2026/05/19-11:02:18.987209 7f8fcaffd6c0 Compacted 1@1 + 2@2 files => 1295 bytes 2026/05/23-08:42:47.923291 7fb04b7fe6c0 Compacted 1@1 + 1@2 files => 626 bytes
2026/05/19-11:02:18.993337 7f8fcaffd6c0 compacted to: files[ 0 0 1 0 0 0 0 ] 2026/05/23-08:42:47.931259 7fb04b7fe6c0 compacted to: files[ 0 0 2 0 0 0 0 ]
2026/05/19-11:02:18.993426 7f8fcaffd6c0 Delete type=2 #5 2026/05/23-08:42:47.931577 7fb04b7fe6c0 Delete type=2 #43
2026/05/19-11:02:18.993528 7f8fcaffd6c0 Delete type=2 #29 2026/05/23-08:42:47.931935 7fb04b7fe6c0 Delete type=2 #47
2026/05/19-11:02:18.993593 7f8fcaffd6c0 Delete type=2 #33 2026/05/23-08:42:47.946721 7fb04b7fe6c0 Manual compaction at level-1 from '!items!null' @ 110 : 1 .. '!items!null' @ 0 : 0; will stop at (end)
2026/05/19-11:02:18.993658 7f8fcaffd6c0 Manual compaction at level-1 from '!items!null' @ 85 : 0 .. '!items!mgne-wpn-whip' @ 0 : 0; will stop at (end)
Binary file not shown.
Binary file not shown.
+15
View File
@@ -29,6 +29,21 @@
{{#if omenNeutralizeReminder}}<p class="chat-omen-remind chat-omen-neutralize">💡 {{omenNeutralizeReminder}}</p>{{/if}} {{#if omenNeutralizeReminder}}<p class="chat-omen-remind chat-omen-neutralize">💡 {{omenNeutralizeReminder}}</p>{{/if}}
{{#if omenRerollReminder}}<p class="chat-omen-remind">💡 {{omenRerollReminder}}</p>{{/if}} {{#if omenRerollReminder}}<p class="chat-omen-remind">💡 {{omenRerollReminder}}</p>{{/if}}
{{#if omenMaximized}}<p class="chat-omen-used">★ {{localize "MGNE.Roll.OmenMaximizedDamage"}}</p>{{/if}} {{#if omenMaximized}}<p class="chat-omen-used">★ {{localize "MGNE.Roll.OmenMaximizedDamage"}}</p>{{/if}}
{{#if showOmenRerollButton}}
<div class="chat-card-actions">
<button type="button" class="mgne-omen-reroll-btn"
data-actor-id="{{omenRerollActorId}}"
data-ability-id="{{omenRerollAbilityId}}"
data-label="{{omenRerollLabel}}"
data-base-dr="{{omenRerollBaseDR}}"
data-modifier="{{omenRerollModifier}}"
data-roll-type="{{omenRerollRollType}}"
{{#if omenRerollItemId}}data-item-id="{{omenRerollItemId}}"{{/if}}>
<i class="fa-solid fa-star"></i>
{{localize "MGNE.Roll.RerollWithOmen"}}
</button>
</div>
{{/if}}
{{#if showDamageButton}} {{#if showDamageButton}}
<div class="chat-card-actions"> <div class="chat-card-actions">
<button type="button" class="mgne-roll-damage-btn {{#if damageCritical}}is-critical{{/if}}" <button type="button" class="mgne-roll-damage-btn {{#if damageCritical}}is-critical{{/if}}"
+1 -1
View File
@@ -14,7 +14,7 @@
<label>{{localize "MGNE.RollDialog.Modifier"}}</label> <label>{{localize "MGNE.RollDialog.Modifier"}}</label>
<select name="modifier"> <select name="modifier">
{{#each modifierOptions}} {{#each modifierOptions}}
<option value="{{value}}" {{#if (isEqual value 0)}}selected{{/if}}>{{label}}</option> <option value="{{value}}" {{#if (isEqual value ../modifier)}}selected{{/if}}>{{label}}</option>
{{/each}} {{/each}}
</select> </select>
</div> </div>