add Sonderfertigkeiten
This commit is contained in:
parent
942c395f59
commit
f824286243
@ -15,7 +15,7 @@
|
||||
</div>
|
||||
{{/inline}}
|
||||
|
||||
<div class="actor-sheet ActorSheet">
|
||||
<div class="actor-sheet ActorSheet" data-tooltip-class="DSA41">
|
||||
<div class="grid4 gap">
|
||||
{{>editable-input type="text" name="name" value=actor.name placeholder=(localize "DSA41.name")}}
|
||||
{{>editable-input type="text" name="system.race" value=actor.system.race placeholder=(localize "DSA41.race")}}
|
||||
@ -92,6 +92,24 @@
|
||||
<span>FK-Basiswert</span>
|
||||
<span>{{actor.system.computed.fk_basiswert}}</span>
|
||||
</div>
|
||||
|
||||
<div class="list Sonderfertigkeiten">
|
||||
<div class="list-header">
|
||||
<div>{{localize (concat "DSA41.sonderfertigkeiten.label_allgemein")}}</div>
|
||||
</div>
|
||||
|
||||
{{#each actor.itemTypes.Sonderfertigkeit}}
|
||||
{{#if (eq this.system.kategorie "allgemein")}}
|
||||
<div class="list-item" data-item-id="{{_id}}">
|
||||
<div>
|
||||
<div class="fit-content" data-action="item-open">{{maybeLocalize name prefix=(concat "DSA41.sonderfertigkeiten." system.kategorie ".name")}}</div>
|
||||
</div>
|
||||
<div></div>
|
||||
<div class="center fas fa-trash" data-action="item-delete"></div>
|
||||
</div>
|
||||
{{/if}}
|
||||
{{/each}}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="tab {{#if (eq tabGroups.primary 'tab2')}}active{{/if}}" data-group="primary" data-tab="tab2">
|
||||
@ -305,5 +323,23 @@
|
||||
<div>{{actor.system.computed.kampf.ruestungen_gesamt.gesamt_behinderung}}</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="list Sonderfertigkeiten">
|
||||
<div class="list-header">
|
||||
<div>{{localize (concat "DSA41.sonderfertigkeiten.label_kampf")}}</div>
|
||||
</div>
|
||||
|
||||
{{#each actor.itemTypes.Sonderfertigkeit}}
|
||||
{{#if (eq this.system.kategorie "kampf")}}
|
||||
<div class="list-item" data-item-id="{{_id}}">
|
||||
<div>
|
||||
<div class="fit-content" data-action="item-open" data-tooltip="{{this.system.beschreibung}}">{{maybeLocalize name prefix=(concat "DSA41.sonderfertigkeiten." system.kategorie ".name")}}</div>
|
||||
</div>
|
||||
<div></div>
|
||||
<div class="center fas fa-trash" data-action="item-delete"></div>
|
||||
</div>
|
||||
{{/if}}
|
||||
{{/each}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
28
src/ItemSheets/Sonderfertigkeit.hbs
Normal file
28
src/ItemSheets/Sonderfertigkeit.hbs
Normal file
@ -0,0 +1,28 @@
|
||||
<div class="item-sheet {{ cssClass }}" autocomplete="off">
|
||||
<div class="row">
|
||||
<img class="item-image" src="{{ item.img }}" title="{{ item.name }}" {{#if editable}}data-edit="img"{{/if}}>
|
||||
<div class="col">
|
||||
<div class="grid2 gap">
|
||||
{{>editable-input type="text" name="name" value=item.name placeholder=(localize "DSA41.name")}}
|
||||
<div>
|
||||
<select name="system.kategorie">
|
||||
<option value="allgemein" {{#if (eq item.system.kategorie "allgemein")}}selected{{/if}}>{{localize "DSA41.sonderfertigkeiten.kategorie.allgemein"}}</option>
|
||||
<option value="kampf" {{#if (eq item.system.kategorie "kampf") }}selected{{/if}}>{{localize "DSA41.sonderfertigkeiten.kategorie.kampf"}} </option>
|
||||
<option value="magisch" {{#if (eq item.system.kategorie "magisch") }}selected{{/if}}>{{localize "DSA41.sonderfertigkeiten.kategorie.magisch"}} </option>
|
||||
<option value="klerikal" {{#if (eq item.system.kategorie "klerikal") }}selected{{/if}}>{{localize "DSA41.sonderfertigkeiten.kategorie.klerikal"}} </option>
|
||||
</select>
|
||||
<div class="placeholder">{{localize "DSA41.sonderfertigkeiten.kategorie.label"}}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="grid2 gap">
|
||||
{{>editable-input type="number" name="system.kosten" value=item.system.kosten placeholder=(localize "DSA41.sonderfertigkeiten.kosten")}}
|
||||
{{>editable-input type="number" name="system.verbreitung" value=item.system.verbreitung placeholder=(localize "DSA41.sonderfertigkeiten.verbreitung")}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<prose-mirror name="system.beschreibung" value="{{item.system.beschreibung}}" compact="true">
|
||||
|
||||
</prose-mirror>
|
||||
</div>
|
||||
</div>
|
||||
@ -28,6 +28,25 @@
|
||||
"talentwert_short": "TaW"
|
||||
},
|
||||
|
||||
"sonderfertigkeiten": {
|
||||
"label_allgemein": "Allgemeine Sonderfertigkeiten",
|
||||
"label_kampf": "Kampf-Sonderfertigkeiten",
|
||||
"label_magisch": "Magische Sonderfertigkeiten",
|
||||
"label_klerikal": "Klerikale Sonderfertigkeiten",
|
||||
|
||||
"kosten": "Kosten",
|
||||
"verbreitung": "Verbreitung",
|
||||
|
||||
"kategorie": {
|
||||
"label": "Kategorie",
|
||||
|
||||
"allgemein": "Allgemein",
|
||||
"kampf": "Kampf",
|
||||
"magisch": "Magisch",
|
||||
"klerikal": "Klerikal"
|
||||
}
|
||||
},
|
||||
|
||||
"roll_types": {
|
||||
"courage": "Mut",
|
||||
"cleverness": "Klugheit",
|
||||
|
||||
18
src/main.css
18
src/main.css
@ -287,6 +287,10 @@
|
||||
display: grid;
|
||||
grid-template-columns: repeat(4, minmax(0, 1fr));
|
||||
}
|
||||
|
||||
& .Sonderfertigkeiten {
|
||||
grid-template-columns: minmax(min-content, max-content) auto min-content;
|
||||
}
|
||||
}
|
||||
|
||||
&[data-tab="tab2"] {
|
||||
@ -322,6 +326,10 @@
|
||||
grid-template-columns: 2fr repeat(8, 1fr) repeat(2, 1.5fr);
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
& .Sonderfertigkeiten {
|
||||
grid-template-columns: minmax(min-content, max-content) auto min-content;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -349,3 +357,13 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#tooltip.DSA41 {
|
||||
max-width: 650px;
|
||||
text-align: left;
|
||||
|
||||
& h4 {
|
||||
font-size: large;
|
||||
}
|
||||
}
|
||||
42
src/main.mjs
42
src/main.mjs
@ -14,10 +14,11 @@ Hooks.once("init", async function() {
|
||||
CONFIG.Actor.dataModels.Player = DSA41_CharacterData;
|
||||
CONFIG.Actor.documentClass = DSA41_CharacterDocument;
|
||||
|
||||
CONFIG.Item.dataModels.Gegenstand = DSA41_GegenstandData;
|
||||
CONFIG.Item.dataModels.Ruestung = DSA41_RuestungData;
|
||||
CONFIG.Item.dataModels.Bewaffnung = DSA41_BewaffnungData;
|
||||
CONFIG.Item.dataModels.Talent = DSA41_TalentData;
|
||||
CONFIG.Item.dataModels.Gegenstand = DSA41_GegenstandData;
|
||||
CONFIG.Item.dataModels.Ruestung = DSA41_RuestungData;
|
||||
CONFIG.Item.dataModels.Bewaffnung = DSA41_BewaffnungData;
|
||||
CONFIG.Item.dataModels.Talent = DSA41_TalentData;
|
||||
CONFIG.Item.dataModels.Sonderfertigkeit = DSA41_SonderfertigkeitData;
|
||||
|
||||
DocumentSheetConfig.unregisterSheet(Actor, "core", ActorSheet);
|
||||
DocumentSheetConfig.registerSheet(Actor, "dsa41", DSA41_ActorSheet, {
|
||||
@ -35,14 +36,20 @@ Hooks.once("init", async function() {
|
||||
"Ruestung",
|
||||
"Bewaffnung",
|
||||
"Talent",
|
||||
"Sonderfertigkeit",
|
||||
]
|
||||
});
|
||||
|
||||
Handlebars.registerHelper({
|
||||
maybeLocalize: (value, options) => {
|
||||
const prefix = options.hash.prefix ? options.hash.prefix.string : null;
|
||||
if (prefix)
|
||||
return game.i18n.localize(prefix + "." + value);
|
||||
if (prefix) {
|
||||
const id = prefix + "." + value;
|
||||
const localized = game.i18n.localize(id);
|
||||
|
||||
return id === localized ? value : localized;
|
||||
}
|
||||
|
||||
return value;
|
||||
}
|
||||
});
|
||||
@ -516,7 +523,7 @@ class DSA41_BewaffnungData extends TypeDataModel {
|
||||
class DSA41_TalentData extends TypeDataModel {
|
||||
static defineSchema() {
|
||||
return {
|
||||
kategorie: new StringField(),
|
||||
kategorie: new StringField(),
|
||||
behinderung: new StringField(),
|
||||
|
||||
attribute1: new StringField(),
|
||||
@ -528,6 +535,18 @@ class DSA41_TalentData extends TypeDataModel {
|
||||
}
|
||||
}
|
||||
|
||||
class DSA41_SonderfertigkeitData extends TypeDataModel {
|
||||
static defineSchema() {
|
||||
return {
|
||||
kategorie: new StringField(),
|
||||
kosten: new NumberField({ integer: true, initial: 0 }),
|
||||
verbreitung: new NumberField({ integer: true, initial: 0 }),
|
||||
|
||||
beschreibung: new StringField(),
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
function DSA41_ApplicationMixin(BaseApplication) {
|
||||
class DSA41_Application extends HandlebarsApplicationMixin(BaseApplication) {
|
||||
static DEFAULT_OPTIONS= {
|
||||
@ -859,10 +878,11 @@ class DSA41_ActorSheet extends DSA41_ApplicationMixin(ActorSheetV2) {
|
||||
|
||||
class DSA41_ItemSheetV2 extends DSA41_ApplicationMixin(ItemSheetV2) {
|
||||
static PARTS = {
|
||||
Bewaffnung: { template: "systems/dsa-4th-edition/src/ItemSheets/Bewaffnung.hbs" },
|
||||
Gegenstand: { template: "systems/dsa-4th-edition/src/ItemSheets/Gegenstand.hbs" },
|
||||
Ruestung: { template: "systems/dsa-4th-edition/src/ItemSheets/Ruestung.hbs" },
|
||||
Talent: { template: "systems/dsa-4th-edition/src/ItemSheets/Talent.hbs" },
|
||||
Bewaffnung: { template: "systems/dsa-4th-edition/src/ItemSheets/Bewaffnung.hbs" },
|
||||
Gegenstand: { template: "systems/dsa-4th-edition/src/ItemSheets/Gegenstand.hbs" },
|
||||
Ruestung: { template: "systems/dsa-4th-edition/src/ItemSheets/Ruestung.hbs" },
|
||||
Talent: { template: "systems/dsa-4th-edition/src/ItemSheets/Talent.hbs" },
|
||||
Sonderfertigkeit: { template: "systems/dsa-4th-edition/src/ItemSheets/Sonderfertigkeit.hbs" },
|
||||
};
|
||||
|
||||
static DEFAULT_OPTIONS = {
|
||||
|
||||
@ -14,7 +14,8 @@
|
||||
"Ruestung": {},
|
||||
"Bewaffnung": {},
|
||||
|
||||
"Talent": {}
|
||||
"Talent": {},
|
||||
"Sonderfertigkeit": {}
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user