add Sonderfertigkeiten
This commit is contained in:
parent
942c395f59
commit
f824286243
@ -15,7 +15,7 @@
|
|||||||
</div>
|
</div>
|
||||||
{{/inline}}
|
{{/inline}}
|
||||||
|
|
||||||
<div class="actor-sheet ActorSheet">
|
<div class="actor-sheet ActorSheet" data-tooltip-class="DSA41">
|
||||||
<div class="grid4 gap">
|
<div class="grid4 gap">
|
||||||
{{>editable-input type="text" name="name" value=actor.name placeholder=(localize "DSA41.name")}}
|
{{>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")}}
|
{{>editable-input type="text" name="system.race" value=actor.system.race placeholder=(localize "DSA41.race")}}
|
||||||
@ -92,6 +92,24 @@
|
|||||||
<span>FK-Basiswert</span>
|
<span>FK-Basiswert</span>
|
||||||
<span>{{actor.system.computed.fk_basiswert}}</span>
|
<span>{{actor.system.computed.fk_basiswert}}</span>
|
||||||
</div>
|
</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>
|
||||||
|
|
||||||
<div class="tab {{#if (eq tabGroups.primary 'tab2')}}active{{/if}}" data-group="primary" data-tab="tab2">
|
<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>{{actor.system.computed.kampf.ruestungen_gesamt.gesamt_behinderung}}</div>
|
||||||
</div>
|
</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>
|
||||||
</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"
|
"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": {
|
"roll_types": {
|
||||||
"courage": "Mut",
|
"courage": "Mut",
|
||||||
"cleverness": "Klugheit",
|
"cleverness": "Klugheit",
|
||||||
|
|||||||
18
src/main.css
18
src/main.css
@ -287,6 +287,10 @@
|
|||||||
display: grid;
|
display: grid;
|
||||||
grid-template-columns: repeat(4, minmax(0, 1fr));
|
grid-template-columns: repeat(4, minmax(0, 1fr));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
& .Sonderfertigkeiten {
|
||||||
|
grid-template-columns: minmax(min-content, max-content) auto min-content;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
&[data-tab="tab2"] {
|
&[data-tab="tab2"] {
|
||||||
@ -322,6 +326,10 @@
|
|||||||
grid-template-columns: 2fr repeat(8, 1fr) repeat(2, 1.5fr);
|
grid-template-columns: 2fr repeat(8, 1fr) repeat(2, 1.5fr);
|
||||||
text-align: center;
|
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.dataModels.Player = DSA41_CharacterData;
|
||||||
CONFIG.Actor.documentClass = DSA41_CharacterDocument;
|
CONFIG.Actor.documentClass = DSA41_CharacterDocument;
|
||||||
|
|
||||||
CONFIG.Item.dataModels.Gegenstand = DSA41_GegenstandData;
|
CONFIG.Item.dataModels.Gegenstand = DSA41_GegenstandData;
|
||||||
CONFIG.Item.dataModels.Ruestung = DSA41_RuestungData;
|
CONFIG.Item.dataModels.Ruestung = DSA41_RuestungData;
|
||||||
CONFIG.Item.dataModels.Bewaffnung = DSA41_BewaffnungData;
|
CONFIG.Item.dataModels.Bewaffnung = DSA41_BewaffnungData;
|
||||||
CONFIG.Item.dataModels.Talent = DSA41_TalentData;
|
CONFIG.Item.dataModels.Talent = DSA41_TalentData;
|
||||||
|
CONFIG.Item.dataModels.Sonderfertigkeit = DSA41_SonderfertigkeitData;
|
||||||
|
|
||||||
DocumentSheetConfig.unregisterSheet(Actor, "core", ActorSheet);
|
DocumentSheetConfig.unregisterSheet(Actor, "core", ActorSheet);
|
||||||
DocumentSheetConfig.registerSheet(Actor, "dsa41", DSA41_ActorSheet, {
|
DocumentSheetConfig.registerSheet(Actor, "dsa41", DSA41_ActorSheet, {
|
||||||
@ -35,14 +36,20 @@ Hooks.once("init", async function() {
|
|||||||
"Ruestung",
|
"Ruestung",
|
||||||
"Bewaffnung",
|
"Bewaffnung",
|
||||||
"Talent",
|
"Talent",
|
||||||
|
"Sonderfertigkeit",
|
||||||
]
|
]
|
||||||
});
|
});
|
||||||
|
|
||||||
Handlebars.registerHelper({
|
Handlebars.registerHelper({
|
||||||
maybeLocalize: (value, options) => {
|
maybeLocalize: (value, options) => {
|
||||||
const prefix = options.hash.prefix ? options.hash.prefix.string : null;
|
const prefix = options.hash.prefix ? options.hash.prefix.string : null;
|
||||||
if (prefix)
|
if (prefix) {
|
||||||
return game.i18n.localize(prefix + "." + value);
|
const id = prefix + "." + value;
|
||||||
|
const localized = game.i18n.localize(id);
|
||||||
|
|
||||||
|
return id === localized ? value : localized;
|
||||||
|
}
|
||||||
|
|
||||||
return value;
|
return value;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@ -516,7 +523,7 @@ class DSA41_BewaffnungData extends TypeDataModel {
|
|||||||
class DSA41_TalentData extends TypeDataModel {
|
class DSA41_TalentData extends TypeDataModel {
|
||||||
static defineSchema() {
|
static defineSchema() {
|
||||||
return {
|
return {
|
||||||
kategorie: new StringField(),
|
kategorie: new StringField(),
|
||||||
behinderung: new StringField(),
|
behinderung: new StringField(),
|
||||||
|
|
||||||
attribute1: 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) {
|
function DSA41_ApplicationMixin(BaseApplication) {
|
||||||
class DSA41_Application extends HandlebarsApplicationMixin(BaseApplication) {
|
class DSA41_Application extends HandlebarsApplicationMixin(BaseApplication) {
|
||||||
static DEFAULT_OPTIONS= {
|
static DEFAULT_OPTIONS= {
|
||||||
@ -859,10 +878,11 @@ class DSA41_ActorSheet extends DSA41_ApplicationMixin(ActorSheetV2) {
|
|||||||
|
|
||||||
class DSA41_ItemSheetV2 extends DSA41_ApplicationMixin(ItemSheetV2) {
|
class DSA41_ItemSheetV2 extends DSA41_ApplicationMixin(ItemSheetV2) {
|
||||||
static PARTS = {
|
static PARTS = {
|
||||||
Bewaffnung: { template: "systems/dsa-4th-edition/src/ItemSheets/Bewaffnung.hbs" },
|
Bewaffnung: { template: "systems/dsa-4th-edition/src/ItemSheets/Bewaffnung.hbs" },
|
||||||
Gegenstand: { template: "systems/dsa-4th-edition/src/ItemSheets/Gegenstand.hbs" },
|
Gegenstand: { template: "systems/dsa-4th-edition/src/ItemSheets/Gegenstand.hbs" },
|
||||||
Ruestung: { template: "systems/dsa-4th-edition/src/ItemSheets/Ruestung.hbs" },
|
Ruestung: { template: "systems/dsa-4th-edition/src/ItemSheets/Ruestung.hbs" },
|
||||||
Talent: { template: "systems/dsa-4th-edition/src/ItemSheets/Talent.hbs" },
|
Talent: { template: "systems/dsa-4th-edition/src/ItemSheets/Talent.hbs" },
|
||||||
|
Sonderfertigkeit: { template: "systems/dsa-4th-edition/src/ItemSheets/Sonderfertigkeit.hbs" },
|
||||||
};
|
};
|
||||||
|
|
||||||
static DEFAULT_OPTIONS = {
|
static DEFAULT_OPTIONS = {
|
||||||
|
|||||||
@ -14,7 +14,8 @@
|
|||||||
"Ruestung": {},
|
"Ruestung": {},
|
||||||
"Bewaffnung": {},
|
"Bewaffnung": {},
|
||||||
|
|
||||||
"Talent": {}
|
"Talent": {},
|
||||||
|
"Sonderfertigkeit": {}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user