Релиз v1.2.9
Build release archive / release (push) Failing after 28s

Изменено:
 - Поддержка новых типов товаров: "Механические приспособления" и "Религиозные товары".
 - Добавлена возможность случайной генерации уровня торговца.
 - Улучшена производительность при загрузке предметов из компендиумов.
 - Обновлены тексты описаний для категорий товаров.
 - Исправлена ошибка при добавлении предметов к торговцу (см. `module/data.mjs`, строки 2436-2446).
 - Исправлена проблема с отображением характеристик торговца в интерфейсе.
This commit is contained in:
2026-07-15 19:42:45 +03:00
parent 34782dc3b0
commit e21d8c5198
5611 changed files with 163869 additions and 0 deletions
+218
View File
@@ -0,0 +1,218 @@
// out: "../merchant.css", compress: false
#colors(){
buttonColor: rgb(240, 240, 227);
dndBack: #3d3d3d;
dndGold: #9f9275;
dndShadow45: rgba(0, 0, 0, 0.45);
dndShadow15: rgba(0, 0, 0, 0.15);
dndColorCard: #f8f4f1;
dndSRDBorder: #ba2828;
dndSRDColorBackground: #efefef99;
}
.backGradient(){
border: 0.15rem solid #colors[dndGold];
@list: lighten(#9f9275, 15%), rgb(240, 240, 227) 30%, #3d3d3d;
background-image: svg-gradient(to bottom right, @list);
background-repeat: no-repeat;
background-size: cover;
}
.Merchant{
display: grid;
grid-template-rows: 1fr auto 0.1 0.2;
grid-row-gap: 1rem;
.footer{
display: grid;
grid-template-columns: 1.7fr auto;
padding: 0;
margin: auto;
color: var(--color-text-primary);
font-size: 0.8rem;
text-shadow: 0.3rem 0.2rem 0.6rem #472d52;
.footer_img{
border: none;
width: 4rem;
height: 4rem;
}
}
.info{
display: none;
flex-direction: column;
justify-content: center;
padding: 0;
margin: 2rem;
background-color: #6a2815;
border-image: url('./black_border.png') 30 fill / 30px / 30px round;
color: #9f9275;
font-size: 0.8rem;
>div{
color: #f8f4f1;
}
>*{
padding: 0;
margin: 0;
width: 100%;
height: 100%;
}
>button{
grid-column: 1;
grid-row: 1;
width: 100%;
height: 100%;
background-color: #colors[dndBack];
border: 0.15rem solid #colors[dndGold];
border-radius: 5px;
font-size: 0.9rem;
font-weight: 600;
color: #3d3d3d;
}
}
>div{
display: flex;
flex-direction: column;
justify-content: center;
.divMerchantItemsTypes{
display: flex;
flex-direction: row;
justify-content: center;
flex-wrap: nowrap;
width: 100%;
height: 100%;
>.divSelect{
width: 60%;
height: 100%;
display: flex;
justify-content: center;
flex-direction: column;
>*{
width: 100%;
height: 100%;
}
}
>.divButton{
width: 40%;
height: 100%;
justify-content: center;
>*{
width: 100%;
height: 100%;
}
}
gap: 10px;
button{
width: 100%;
height: 100%;
background-color: #colors[dndBack];
border: 0.15rem solid #colors[dndGold];
border-radius: 5px;
font-size: 0.9rem;
font-weight: 600;
color: #colors[dndColorCard];
text-align: center;
padding: 10px;
&:hover{
background-color: #colors[dndColorCard];
color: #3d3d3d;
}
}
}
>div{
padding: 0.2rem;
display: flex;
flex-direction: column;
justify-content: center;
>*{
width: 100%;
height: 100%;
}
>button{
grid-column: 1;
grid-row: 1;
width: 100%;
height: 100%;
background-color: #colors[dndSRDColorBackground];
border: 0.15rem solid #colors[dndGold];
border-radius: 5px;
font-size: 0.9rem;
font-weight: 600;
color: #3d3d3d;
text-align: center;
padding: 10px;
&:hover{
background-color: #colors[dndColorCard];
color: #3d3d3d;
}
}
>.randomMerchant{
grid-column: 1;
grid-row: 1;
width: 100%;
height: 100%;
background-color: #colors[dndBack];
border: 0.15rem solid #colors[dndGold];
border-radius: 5px;
font-size: 0.9rem;
font-weight: 600;
color: #colors[dndColorCard];
text-align: center;
padding: 10px;
&:hover{
background-color: #colors[dndColorCard];
color: #3d3d3d;
}
}
}
}
.headerMerchantBar{
display: none;
}
slide-toggle {
--slide-toggle-height: 20px;
--slide-toggle-width: 36px;
--slide-toggle-padding: 3px;
--slide-toggle-track-color-unchecked: var(--color-fieldset-border);
--slide-toggle-track-color-checked: var(--webkit-link);
--slide-toggle-thumb-color: var(--color-form-label);
--slide-toggle-thumb-width: calc(var(--slide-toggle-height) - var(--slide-toggle-padding) * 2);
--slide-toggle-thumb-height: var(--slide-toggle-thumb-width);
--slide-toggle-transition-time: 250ms;
display: inline-block;
width: var(--slide-toggle-width);
height: var(--slide-toggle-height);
cursor: pointer;
/* Checked state */
}
slide-toggle .slide-toggle-track {
width: 100%;
height: 100%;
background: var(--slide-toggle-track-color-unchecked);
border-radius: calc((var(--slide-toggle-height) * 2) / 3);
box-shadow: 0 0 8px rgba(0, 0, 0, 0.45);
display: flex;
flex-direction: row;
justify-content: start;
padding: var(--slide-toggle-padding);
}
slide-toggle .slide-toggle-thumb {
width: var(--slide-toggle-thumb-width);
height: var(--slide-toggle-thumb-height);
border-radius: 100%;
background: var(--slide-toggle-thumb-color);
box-shadow: 0 0 8px rgba(0, 0, 0, 0.45);
text-align: center;
transition: margin-left var(--slide-toggle-transition-time) ease;
}
slide-toggle[checked] .slide-toggle-track {
background: var(--slide-toggle-track-color-checked);
}
slide-toggle[checked] .slide-toggle-thumb {
margin-left: calc(100% - var(--slide-toggle-thumb-width));
}
}