removes alveranian construction site

pull/63/head
macniel 2025-10-30 10:19:48 +01:00
parent db4428938b
commit 4395ada6f5
8 changed files with 286 additions and 21 deletions

View File

@ -18,9 +18,10 @@ export class LiturgySheet extends HandlebarsApplicationMixin(DocumentSheetV2) {
static TABS = {
sheet: {
tabs: [
{id: 'json', group: 'sheet', label: 'JSON'},
{id: 'meta', group: 'sheet', label: 'Meta'},
{id: 'commonality', group: 'sheet', label: 'Verbreitung'},
],
initial: 'json'
initial: 'meta'
}
}
@ -29,9 +30,12 @@ export class LiturgySheet extends HandlebarsApplicationMixin(DocumentSheetV2) {
form: {
template: `systems/DSA_4-1/templates/item/liturgy/main-sheet.hbs`
},
json: {
template: `systems/DSA_4-1/templates/item/liturgy/tab-json.hbs`
meta: {
template: `systems/DSA_4-1/templates/item/liturgy/tab-meta.hbs`
},
commonality: {
template: `systems/DSA_4-1/templates/item/liturgy/tab-commonality.hbs`
}
}
/**
@ -50,12 +54,12 @@ export class LiturgySheet extends HandlebarsApplicationMixin(DocumentSheetV2) {
/** @override */
async _prepareContext(options) {
const context = await super._prepareContext(options);
const liturgyData = context.document;
context.system = liturgyData.system;
context.flags = liturgyData.flags;
context.json = JSON.stringify(liturgyData);
context.system = liturgyData.system
context.flags = liturgyData.flags
context.name = liturgyData.name
context.json = JSON.stringify(liturgyData)
return context;
}

View File

@ -45,7 +45,7 @@
content: '';
left: 0;
right: 0;
bottom: 0;
bottom: -1px;
height: 3px;
background: assets.$tab-background;
z-index: 5;

View File

@ -0,0 +1,136 @@
.dsa41.item.liturgy {
.tab.meta.active {
display: flex;
flex-direction: column;
div.head {
flex: 0;
height: unset;
display: flex;
flex-direction: column;
padding: unset;
margin: 8px;
label {
display: grid;
grid-template-columns: 120px 1fr;
gap: 8px;
height: 32px;
span {
height: 32px;
line-height: 32px;
vertical-align: middle;
}
input {
}
}
}
fieldset {
flex: 1;
margin: 8px;
.auswirkungen {
overflow-x: hidden;
overflow-y: auto;
.auswirkung {
display: flex;
flex-direction: row;
.rank {
padding-right: 8px;
text-align: center;
display: block;
align-self: center;
}
}
}
}
}
.tab.commonality.active > section {
display: flex;
flex-direction: column;
padding: 8px;
gap: 8px;
.commonalities {
flex: 1;
overflow-x: hidden;
overflow-y: auto;
height: unset;
display: unset;
padding: unset;
.commonality {
display: grid;
grid-template-columns: 1fr 1fr 16px;
height: 16px;
margin-bottom: 8px;
button {
border: none;
background: none;
padding: 0;
margin: 0;
height: 16px;
width: 16px;
text-align: center;
min-height: unset;
&:hover {
color: red;
}
}
&:hover {
background-color: rgba(0, 0, 0, 0.2)
}
}
}
fieldset {
flex: 0;
div.content {
display: grid;
grid-template-columns: 1fr 0.5fr;
grid-template-rows: 54px 32px;
gap: 8px;
label {
span {
display: block;
}
}
}
}
}
}

View File

@ -32,4 +32,5 @@
@use "organisms/combat-action-dialog";
@use "organisms/merchant-sheet";
@use "organisms/resting-dialog";
@use "organisms/battle-dialog";
@use "organisms/battle-dialog";
@use "organisms/liturgy-sheet";

View File

@ -37,7 +37,7 @@
data-lkp="{{../lkp}}" data-deity="{{this.deity}}">
{{> 'systems/DSA_4-1/templates/ui/partial-die.hbs' }}
</td>
<td class="clickable" data-id="{{this.id}}" data-action="openActorSheet">
<td class="clickable" data-id="{{this.id}}" data-action="openEmbeddedDocument">
{{this.name}}</td>
<td></td>
</tr>
@ -56,7 +56,7 @@
data-lkp="{{../lkp}}" data-deity="{{this.deity}}">
{{> 'systems/DSA_4-1/templates/ui/partial-die.hbs' }}
</td>
<td class="clickable" data-id="{{this.id}}" data-action="openActorSheet">
<td class="clickable" data-id="{{this.id}}" data-action="openEmbeddedDocument">
{{this.name}}</td>
<td></td>
</tr>
@ -77,7 +77,7 @@
{{> 'systems/DSA_4-1/templates/ui/partial-die.hbs' }}
</td>
<td class="clickable" data-id="{{this.id}}"
data-action="openActorSheet">{{this.name}}</td>
data-action="openEmbeddedDocument">{{this.name}}</td>
</tr>
{{/each}}
{{/if}}
@ -96,7 +96,7 @@
{{> 'systems/DSA_4-1/templates/ui/partial-die.hbs' }}
</td>
<td class="clickable" data-id="{{this.id}}"
data-action="openActorSheet">{{this.name}}</td>
data-action="openEmbeddedDocument">{{this.name}}</td>
</tr>
{{/each}}
{{/if}}
@ -115,7 +115,7 @@
{{> 'systems/DSA_4-1/templates/ui/partial-die.hbs' }}
</td>
<td class="clickable" data-id="{{this.id}}"
data-action="openActorSheet">{{this.name}}</td>
data-action="openEmbeddedDocument">{{this.name}}</td>
</tr>
{{/each}}{{/if}}
{{#if this.countV}}
@ -133,7 +133,7 @@
{{> 'systems/DSA_4-1/templates/ui/partial-die.hbs' }}
</td>
<td class="clickable" data-id="{{this.id}}"
data-action="openActorSheet">{{this.name}}</td>
data-action="openEmbeddedDocument">{{this.name}}</td>
</tr>
{{/each}}
{{/if}}
@ -152,7 +152,7 @@
{{> 'systems/DSA_4-1/templates/ui/partial-die.hbs' }}
</td>
<td class="clickable" data-id="{{this.id}}"
data-action="openActorSheet">{{this.name}}</td>
data-action="openEmbeddedDocument">{{this.name}}</td>
</tr>
{{/each}}
{{/if}}{{#if this.countVII}}
@ -170,7 +170,7 @@
{{> 'systems/DSA_4-1/templates/ui/partial-die.hbs' }}
</td>
<td class="clickable" data-id="{{this.id}}"
data-action="openActorSheet">{{this.name}}</td>
data-action="openEmbeddedDocument">{{this.name}}</td>
</tr>
{{/each}}
{{/if}}{{#if this.countVIII}}
@ -188,7 +188,7 @@
{{> 'systems/DSA_4-1/templates/ui/partial-die.hbs' }}
</td>
<td class="clickable" data-id="{{this.id}}"
data-action="openActorSheet">{{this.name}}</td>
data-action="openEmbeddedDocument">{{this.name}}</td>
</tr>
{{/each}}
{{/if}}

View File

@ -1,4 +1,14 @@
<div>
<!-- TODO Add this sheet with meaningful options -->
Alveranische Baustelle, bitte gehen Sie weiter, hier gibt es nichts zu sehen.
{{!-- Sheet Tab Navigation --}}
<nav class="sheet-tabs tabs{{#if verticalTabs}} vertical{{/if}}"
aria-roledescription="{{localize "SHEETS.FormNavLabel"}}">
{{#each tabs as |tab|}}
<a data-action="tab" data-group="{{tab.group}}" data-tab="{{tab.id}}"
{{#if tab.cssClass}}class="{{tab.cssClass}}"{{/if}}
{{#if tab.tooltip}}data-tooltip="{{tab.tooltip}}"{{/if}}>
{{#if tab.icon}}<i class="{{tab.icon}}" inert></i>{{/if}}
{{#if tab.label}}<span>{{localize tab.label}}</span>{{/if}}
</a>
{{/each}}
</nav>
</div>

View File

@ -0,0 +1,39 @@
<section class="tab {{tabs.commonality.id}} {{tabs.commonality.cssClass}}"
data-tab="{{tabs.commonality.id}}"
data-group="{{tabs.commonality.group}}">
<section>
{{#if editable}}
<fieldset>
<legend>Neue Verbreitung</legend>
<div class="content">
<label><span>Gottheit</span>
<input name="deity" type="text"/>
</label>
<label><span>Grad</span>
<input name="grad" type="number" min="0" max="7" step="1"/>
</label>
<div class="actions">
<button data-action="addCommonality"><i class="fa-solid fa-plus"></i> Hinzugefügen</button>
</div>
</div>
</fieldset>
{{/if}}
<div class="commonalities">
{{#each system.herkunft}}
<div class="commonality">
<span class="deity">{{this.name}}</span>
<span class="rank">Grad {{grad}}</span>
{{#if ../editable}}
<button class="action" data-action="removeCommonality" data-id="{{@key}}"><i
class="fa-solid fa-xmark"></i></button>
{{/if}}
</div>
{{/each}}
</div>
</section>
</section>

View File

@ -0,0 +1,75 @@
<section class="tab {{tabs.meta.id}} {{tabs.meta.cssClass}}"
data-tab="{{tabs.meta.id}}"
data-group="{{tabs.meta.group}}">
<div class="head">
<label><span>Name:</span>
<input type="text" name="name" value="{{name}}">
</label>
<label><span>Reichweite:</span>
<input type="text" name="system.reichweite" value="{{system.reichweite}}">
</label>
<label><span>Ziel:</span>
<input type="text" name="system.ziel" value="{{system.ziel}}">
</label>
<label><span>Wirkungsdauer:</span>
<input type="text" name="system.wirkungsdauer" value="{{system.wirkungsdauer}}">
</label>
</div>
<fieldset>
<legend>Grade der Liturgie</legend>
<div class="auswirkungen">
{{#if system.auswirkung.I}}
<div class="auswirkung">
<span class="rank">I</span>
<div class="text">{{system.auswirkung.I}}</div>
</div>
{{/if}}
{{#if system.auswirkung.II}}
<div class="auswirkung">
<span class="rank">II</span>
<div class="text">{{system.auswirkung.II}}</div>
</div>
{{/if}}
{{#if system.auswirkung.III}}
<div class="auswirkung">
<span class="rank">III</span>
<div class="text">{{system.auswirkung.III}}</div>
</div>
{{/if}}
{{#if system.auswirkung.IV}}
<div class="auswirkung">
<span class="rank">IV</span>
<div class="text">{{system.auswirkung.IV}}</div>
</div>
{{/if}}
{{#if system.auswirkung.V}}
<div class="auswirkung">
<span class="rank">V</span>
<div class="text">{{system.auswirkung.V}}</div>
</div>
{{/if}}
{{#if system.auswirkung.VI}}
<div class="auswirkung">
<span class="rank">VI</span>
<div class="text">{{system.auswirkung.VI}}</div>
</div>
{{/if}}
{{#if system.auswirkung.VII}}
<div class="auswirkung">
<span class="rank">VII</span>
<div class="text">{{system.auswirkung.VII}}</div>
</div>
{{/if}}
{{#if system.auswirkung.VIII}}
<div class="auswirkung">
<span class="rank">VIII</span>
<div class="text">{{system.auswirkung.VIII}}</div>
</div>
{{/if}}
</div>
</fieldset>
</section>