Compare commits
2 Commits
cccb503493
...
d099e32fcc
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d099e32fcc | ||
|
|
442cae2598 |
@ -33,12 +33,14 @@
|
|||||||
{{>editable-input type="text" name="system.culture" value=actor.system.culture placeholder=(localize "DSA41.culture")}}
|
{{>editable-input type="text" name="system.culture" value=actor.system.culture placeholder=(localize "DSA41.culture")}}
|
||||||
{{>editable-input type="text" name="system.profession" value=actor.system.profession placeholder=(localize "DSA41.profession")}}
|
{{>editable-input type="text" name="system.profession" value=actor.system.profession placeholder=(localize "DSA41.profession")}}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<img class="character-image" src="{{ actor.img }}" title="{{ actor.name }}" {{#if editable}}data-edit="img"{{/if}}>
|
<img class="character-image" src="{{ actor.img }}" title="{{ actor.name }}" {{#if editable}}data-edit="img"{{/if}}>
|
||||||
{{#each actor.system.attributes}}
|
{{#each actor.system.attributes}}
|
||||||
{{>die-value type=@key}}
|
{{>die-value type=@key}}
|
||||||
{{/each}}
|
{{/each}}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<fieldset>
|
<fieldset>
|
||||||
<legend>{{localize "DSA41.attributes.label"}}</legend>
|
<legend>{{localize "DSA41.attributes.label"}}</legend>
|
||||||
@ -70,4 +72,52 @@
|
|||||||
</table>
|
</table>
|
||||||
</fieldset>
|
</fieldset>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<fieldset>
|
||||||
|
<legend>{{localize "DSA41.talente.kampf_talente.label"}}</legend>
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<th>{{localize "DSA41.talente.label"}}</th>
|
||||||
|
<th>{{localize "DSA41.talente.label_talentwert"}}</th>
|
||||||
|
<th>{{localize "DSA41.talente.kampf.label_attacke"}}</th>
|
||||||
|
<th>{{localize "DSA41.talente.kampf.label_parade"}}</th>
|
||||||
|
<th>{{localize "DSA41.talente.kampf.label_attacke_total"}}</th>
|
||||||
|
<th>{{localize "DSA41.talente.kampf.label_parade_total"}}</th>
|
||||||
|
</tr>
|
||||||
|
{{#each actor.system.kampf_talente}}
|
||||||
|
<tr>
|
||||||
|
<td>{{localize (concat "DSA41.talente.kampf.name." @key)}}</td>
|
||||||
|
<td>{{>editable-input type="number" name=(concat "system.kampf_talente." @key ".talentwert") value=(lookup this "talentwert")}}</td>
|
||||||
|
<td>{{>editable-input type="number" name=(concat "system.kampf_talente." @key ".attacke") value=(lookup this "attacke")}}</td>
|
||||||
|
<td>{{>editable-input type="number" name=(concat "system.kampf_talente." @key ".parade") value=(lookup this "parade")}}</td>
|
||||||
|
<td class="center">0</td>
|
||||||
|
<td class="center">0</td>
|
||||||
|
</tr>
|
||||||
|
{{/each}}
|
||||||
|
</table>
|
||||||
|
</fieldset>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{{#each actor.system.talente}}
|
||||||
|
<div class="row">
|
||||||
|
<fieldset>
|
||||||
|
<legend>{{localize (concat "DSA41.talente." @key ".label")}}</legend>
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<th>{{localize "DSA41.talente.label"}}</th>
|
||||||
|
<th>{{localize "DSA41.talente.label_eigenschaften"}}</th>
|
||||||
|
<th>{{localize "DSA41.talente.label_talentwert"}}</th>
|
||||||
|
</tr>
|
||||||
|
{{#each @this}}
|
||||||
|
<tr>
|
||||||
|
<td>{{localize (concat "DSA41.talente." @../key ".name." @key)}}</td>
|
||||||
|
<td></td>
|
||||||
|
<td>{{>editable-input type="number" name=(concat "system.talente." @../key "." @key) value=@this}}</td>
|
||||||
|
</tr>
|
||||||
|
{{/each}}
|
||||||
|
</table>
|
||||||
|
</fieldset>
|
||||||
|
</div>
|
||||||
|
{{/each}}
|
||||||
</form>
|
</form>
|
||||||
29
src/ItemSheets/Gegenstaende.html
Normal file
29
src/ItemSheets/Gegenstaende.html
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
{{#*inline "editable-input"}}
|
||||||
|
<div class="editable-input editable-{{type}}">
|
||||||
|
{{#if @root.editable}}
|
||||||
|
<input type="{{type}}" name="{{name}}" value="{{value}}" placeholder="{{placeholder}}">
|
||||||
|
{{else}}
|
||||||
|
<div>
|
||||||
|
{{value}}
|
||||||
|
{{#unless value}}{{placeholder}}{{/unless}}
|
||||||
|
</div>
|
||||||
|
{{/if}}
|
||||||
|
|
||||||
|
{{#if placeholder}}
|
||||||
|
<div class="placeholder">{{placeholder}}</div>
|
||||||
|
{{/if}}
|
||||||
|
</div>
|
||||||
|
{{/inline}}
|
||||||
|
|
||||||
|
<form 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">
|
||||||
|
{{>editable-input type="text" name="name" value=item.name placeholder=(localize "DSA41.name")}}
|
||||||
|
<div class="row">
|
||||||
|
{{>editable-input type="number" name="system.gewicht" value=item.system.gewicht placeholder=(localize "DSA41.weight")}}
|
||||||
|
{{>editable-input type="number" name="system.preis" value=item.system.preis placeholder=(localize "DSA41.price")}}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
@ -1,11 +0,0 @@
|
|||||||
<form class="item-sheet {{ cssClass }}" autocomplete="off">
|
|
||||||
<header>
|
|
||||||
{{#if editable}}
|
|
||||||
<img src="{{ item.img }}" title="{{ item.name }}" data-edit="img" >
|
|
||||||
<input name="name" type="text" value="{{ item.name }}" placeholder="Name">
|
|
||||||
{{else}}
|
|
||||||
<img src="{{ item.img }}" title="{{ item.name }}">
|
|
||||||
<div>{{ item.name }}</div>
|
|
||||||
{{/if}}
|
|
||||||
</header>
|
|
||||||
</form>
|
|
||||||
@ -1,11 +0,0 @@
|
|||||||
<form class="item-sheet {{ cssClass }}" autocomplete="off">
|
|
||||||
<header>
|
|
||||||
{{#if editable}}
|
|
||||||
<img src="{{ item.img }}" title="{{ item.name }}" data-edit="img" >
|
|
||||||
<input name="name" type="text" value="{{ item.name }}" placeholder="Name">
|
|
||||||
{{else}}
|
|
||||||
<img src="{{ item.img }}" title="{{ item.name }}">
|
|
||||||
<div>{{ item.name }}</div>
|
|
||||||
{{/if}}
|
|
||||||
</header>
|
|
||||||
</form>
|
|
||||||
@ -1,11 +0,0 @@
|
|||||||
<form class="item-sheet {{ cssClass }}" autocomplete="off">
|
|
||||||
<header>
|
|
||||||
{{#if editable}}
|
|
||||||
<img src="{{ item.img }}" title="{{ item.name }}" data-edit="img" >
|
|
||||||
<input name="name" type="text" value="{{ item.name }}" placeholder="Name">
|
|
||||||
{{else}}
|
|
||||||
<img src="{{ item.img }}" title="{{ item.name }}">
|
|
||||||
<div>{{ item.name }}</div>
|
|
||||||
{{/if}}
|
|
||||||
</header>
|
|
||||||
</form>
|
|
||||||
113
src/lang/de.json
113
src/lang/de.json
@ -1,9 +1,19 @@
|
|||||||
{
|
{
|
||||||
|
"TYPES": {
|
||||||
|
"Item": {
|
||||||
|
"Gegenstaende": "Gegenstände",
|
||||||
|
"Waffen": "Waffen",
|
||||||
|
"Ruestungen": "Rüstungen"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
"DSA41": {
|
"DSA41": {
|
||||||
"name": "Name",
|
"name": "Name",
|
||||||
"race": "Rasse",
|
"race": "Rasse",
|
||||||
"culture": "Kultur",
|
"culture": "Kultur",
|
||||||
"profession": "Profession",
|
"profession": "Profession",
|
||||||
|
"weight": "Gewicht",
|
||||||
|
"price": "Preis",
|
||||||
|
|
||||||
"attributes": {
|
"attributes": {
|
||||||
"label": "Eigenschaften",
|
"label": "Eigenschaften",
|
||||||
@ -32,6 +42,109 @@
|
|||||||
"constitution": "KO",
|
"constitution": "KO",
|
||||||
"strength": "KK"
|
"strength": "KK"
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
"talente":{
|
||||||
|
"label": "Talent",
|
||||||
|
"label_eigenschaften": "Eigenschaften",
|
||||||
|
"label_talentwert": "Talentwert",
|
||||||
|
|
||||||
|
"kampf": {
|
||||||
|
"label": "Kampf Talente",
|
||||||
|
"label_attacke": "Attacke",
|
||||||
|
"label_parade": "Parade",
|
||||||
|
"label_attacke_total": "Attacke",
|
||||||
|
"label_parade_total": "Parade",
|
||||||
|
|
||||||
|
"name": {
|
||||||
|
"anderthalbhaender": "Anderthalbhänder",
|
||||||
|
"armbrust": "Armbrust"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
"koerperliche": {
|
||||||
|
"label": "Körperliche Talente",
|
||||||
|
|
||||||
|
"name": {
|
||||||
|
"akrobatik": "Akrobatik",
|
||||||
|
"athletik": "Athletik",
|
||||||
|
"fliegen": "Fliegen",
|
||||||
|
"gaukeleien": "Gaukeleien",
|
||||||
|
"klettern": "Klettern",
|
||||||
|
"koerperbeherrschung": "Körperbeherrschung",
|
||||||
|
"reiten": "Reiten",
|
||||||
|
"schleichen": "Schleichen",
|
||||||
|
"schwimmen": "Schwimmen",
|
||||||
|
"selbstbeherrschung": "Selbstbeherrschung",
|
||||||
|
"sich_verstecken": "Sich Verstecken",
|
||||||
|
"singen": "Singen",
|
||||||
|
"sinnenschärfe": "Sinnenschärfe",
|
||||||
|
"skifahren": "Skifahren",
|
||||||
|
"stimmen_imitieren": "Stimmen Imitieren",
|
||||||
|
"tanzen": "Tanzen",
|
||||||
|
"taschendiebstahl": "Taschendiebstahl",
|
||||||
|
"zechen": "Zechen"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
"gesellschaftliche": {
|
||||||
|
"label": "Gesellschaftliche Talente",
|
||||||
|
|
||||||
|
"name": {
|
||||||
|
"betoeren": "Betören",
|
||||||
|
"etikette": "Etikette",
|
||||||
|
"gassenwissen": "Gassenwissen",
|
||||||
|
"lehren": "Lehren",
|
||||||
|
"menschenkenntnis": "Menschenkenntnis",
|
||||||
|
"schauspielerei": "Schauspielerei",
|
||||||
|
"schriftlicher_ausdruck": "Schriftlicher Ausdruck",
|
||||||
|
"sich_verkleiden": "Sich Verkleiden",
|
||||||
|
"ueberreden": "Überreden",
|
||||||
|
"ueberzeugen": "Überzeugen"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
"natur": {
|
||||||
|
"label": "Natur-Talente",
|
||||||
|
|
||||||
|
"name": {
|
||||||
|
"faehrtensuchen": "Fährtensuchen",
|
||||||
|
"fallenstellen": "Fallenstellen",
|
||||||
|
"fesseln": "Fesseln/Entfesseln",
|
||||||
|
"fischen": "Fischen/Angeln",
|
||||||
|
"orientierung": "Orientierung",
|
||||||
|
"wettervorhersage": "Wettervorhersage",
|
||||||
|
"wildnisleben": "Wildnisleben"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
"wissens": {
|
||||||
|
"label": "Wissenstalente",
|
||||||
|
|
||||||
|
"name": {
|
||||||
|
"anatomie": "Anatomie",
|
||||||
|
"baukunst": "Baukunst"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
"sprachen": {
|
||||||
|
"label": "Sprachen und Schriften",
|
||||||
|
|
||||||
|
"name": {
|
||||||
|
"lesen_schreiben": "Lesen/Schreiben [Schrift]",
|
||||||
|
"muttersprache": "Sprachen [Muttersprache]",
|
||||||
|
"fremdsprache": "Sprachen [Fremdsprache]"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
"handwerks": {
|
||||||
|
"label": "Handwerkstalente",
|
||||||
|
|
||||||
|
"name": {
|
||||||
|
"abrichten": "Abrichten",
|
||||||
|
"ackerbau": "Ackerbau"
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
113
src/lang/en.json
113
src/lang/en.json
@ -1,9 +1,19 @@
|
|||||||
{
|
{
|
||||||
|
"TYPES": {
|
||||||
|
"Item": {
|
||||||
|
"Gegenstaende": "Generic",
|
||||||
|
"Waffen": "Weapons",
|
||||||
|
"Ruestungen": "Armor"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
"DSA41": {
|
"DSA41": {
|
||||||
"name": "Name",
|
"name": "Name",
|
||||||
"race": "Race",
|
"race": "Race",
|
||||||
"culture": "Culture",
|
"culture": "Culture",
|
||||||
"profession": "Profession",
|
"profession": "Profession",
|
||||||
|
"weight": "Weight",
|
||||||
|
"price": "Price",
|
||||||
|
|
||||||
"attributes": {
|
"attributes": {
|
||||||
"label": "Attributes",
|
"label": "Attributes",
|
||||||
@ -32,6 +42,109 @@
|
|||||||
"constitution": "CN",
|
"constitution": "CN",
|
||||||
"strength": "ST"
|
"strength": "ST"
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
"talente": {
|
||||||
|
"label": "Talent",
|
||||||
|
"label_eigenschaften": "Attributes",
|
||||||
|
"label_talentwert": "Talent Prowess",
|
||||||
|
|
||||||
|
"kampf": {
|
||||||
|
"label": "Combat Talents",
|
||||||
|
"label_attacke": "!!TODO!!",
|
||||||
|
"label_parade": "!!TODO!!",
|
||||||
|
"label_attacke_total": "!!TODO!!",
|
||||||
|
"label_parade_total": "!!TODO!!",
|
||||||
|
|
||||||
|
"name": {
|
||||||
|
"anderthalbhaender": "!!TODO!!",
|
||||||
|
"armbrust": "!!TODO!!"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
"koerperliche": {
|
||||||
|
"label": "!!TODO!!",
|
||||||
|
|
||||||
|
"name": {
|
||||||
|
"akrobatik": "!!TODO!!",
|
||||||
|
"athletik": "!!TODO!!",
|
||||||
|
"fliegen": "!!TODO!!",
|
||||||
|
"gaukeleien": "!!TODO!!",
|
||||||
|
"klettern": "!!TODO!!",
|
||||||
|
"koerperbeherrschung": "!!TODO!!",
|
||||||
|
"reiten": "!!TODO!!",
|
||||||
|
"schleichen": "!!TODO!!",
|
||||||
|
"schwimmen": "!!TODO!!",
|
||||||
|
"selbstbeherrschung": "!!TODO!!",
|
||||||
|
"sich_verstecken": "!!TODO!!",
|
||||||
|
"singen": "!!TODO!!",
|
||||||
|
"sinnenschärfe": "!!TODO!!",
|
||||||
|
"skifahren": "!!TODO!!",
|
||||||
|
"stimmen_imitieren": "!!TODO!!",
|
||||||
|
"tanzen": "!!TODO!!",
|
||||||
|
"taschendiebstahl": "!!TODO!!",
|
||||||
|
"zechen": "!!TODO!!"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
"gesellschaftliche": {
|
||||||
|
"label": "!!TODO!!",
|
||||||
|
|
||||||
|
"name": {
|
||||||
|
"betoeren": "!!TODO!!",
|
||||||
|
"etikette": "!!TODO!!",
|
||||||
|
"gassenwissen": "!!TODO!!",
|
||||||
|
"lehren": "!!TODO!!",
|
||||||
|
"menschenkenntnis": "!!TODO!!",
|
||||||
|
"schauspielerei": "!!TODO!!",
|
||||||
|
"schriftlicher_ausdruck": "!!TODO!!",
|
||||||
|
"sich_verkleiden": "!!TODO!!",
|
||||||
|
"ueberreden": "!!TODO!!",
|
||||||
|
"ueberzeugen": "!!TODO!!"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
"natur": {
|
||||||
|
"label": "Nature Talents",
|
||||||
|
|
||||||
|
"name": {
|
||||||
|
"faehrtensuchen": "Track",
|
||||||
|
"fallenstellen": "Traps",
|
||||||
|
"fesseln": "Bind/Escape",
|
||||||
|
"fischen": "Fish",
|
||||||
|
"orientierung": "Orientation",
|
||||||
|
"wettervorhersage": "Weather Sense",
|
||||||
|
"wildnisleben": "Survival"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
"wissens": {
|
||||||
|
"label": "!!TODO!!",
|
||||||
|
|
||||||
|
"name": {
|
||||||
|
"anatomie": "!!TODO!!",
|
||||||
|
"baukunst": "!!TODO!!"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
"sprachen": {
|
||||||
|
"label": "!!TODO!!",
|
||||||
|
|
||||||
|
"name": {
|
||||||
|
"lesen_schreiben": "!!TODO!!",
|
||||||
|
"muttersprache": "!!TODO!!",
|
||||||
|
"fremdsprache": "!!TODO!!"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
"handwerks": {
|
||||||
|
"label": "!!TODO!!",
|
||||||
|
|
||||||
|
"name": {
|
||||||
|
"abrichten": "!!TODO!!",
|
||||||
|
"ackerbau": "!!TODO!!"
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
41
src/main.css
41
src/main.css
@ -1,11 +1,13 @@
|
|||||||
.row {
|
.row {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: row;
|
flex-direction: row;
|
||||||
|
flex: 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
.col {
|
.col {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
|
flex: 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
.wrap {
|
.wrap {
|
||||||
@ -38,11 +40,6 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
.character-image {
|
|
||||||
width: 115px;
|
|
||||||
height: 115px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.die {
|
.die {
|
||||||
width: 48px;
|
width: 48px;
|
||||||
height: 48px;
|
height: 48px;
|
||||||
@ -65,6 +62,18 @@
|
|||||||
.die-constitution { background-color: #a3a3a3; }
|
.die-constitution { background-color: #a3a3a3; }
|
||||||
.die-strength { background-color: #d5a877; }
|
.die-strength { background-color: #d5a877; }
|
||||||
|
|
||||||
|
|
||||||
|
.character-image {
|
||||||
|
width: 115px;
|
||||||
|
height: 115px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-image {
|
||||||
|
width: 80px;
|
||||||
|
height: 80px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
.actor-sheet fieldset {
|
.actor-sheet fieldset {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
@ -74,25 +83,3 @@
|
|||||||
background: none;
|
background: none;
|
||||||
table-layout: fixed;
|
table-layout: fixed;
|
||||||
}
|
}
|
||||||
|
|
||||||
.item-sheet header {
|
|
||||||
display: flex;
|
|
||||||
flex-flow: row wrap;
|
|
||||||
justify-content: flex-start;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item-sheet header img {
|
|
||||||
flex: 0 0 64px;
|
|
||||||
height: 64px;
|
|
||||||
margin-right: 6px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item-sheet header input,
|
|
||||||
.item-sheet header div {
|
|
||||||
flex: 1;
|
|
||||||
height: 48px;
|
|
||||||
line-height: 48px;
|
|
||||||
margin: 8px;
|
|
||||||
font-size: 2em;
|
|
||||||
}
|
|
||||||
188
src/main.mjs
188
src/main.mjs
@ -1,7 +1,8 @@
|
|||||||
Hooks.once("init", function() {
|
Hooks.once("init", function() {
|
||||||
console.log("INIT");
|
console.log("INIT");
|
||||||
|
|
||||||
CONFIG.Actor.dataModels.Player = DSA41_CharacterData;
|
CONFIG.Actor.dataModels.Player = DSA41_CharacterData;
|
||||||
|
CONFIG.Item.dataModels.Gegenstaende = DSA41_GegenstaendeData;
|
||||||
|
|
||||||
//DocumentSheetConfig.unregisterSheet(Actor, "core", ActorSheet);
|
//DocumentSheetConfig.unregisterSheet(Actor, "core", ActorSheet);
|
||||||
DocumentSheetConfig.registerSheet(Actor, "dsa41", DSA41_ActorSheet, {
|
DocumentSheetConfig.registerSheet(Actor, "dsa41", DSA41_ActorSheet, {
|
||||||
@ -15,11 +16,9 @@ Hooks.once("init", function() {
|
|||||||
DocumentSheetConfig.registerSheet(Item, "dsa41", DSA41_ItemSheet, {
|
DocumentSheetConfig.registerSheet(Item, "dsa41", DSA41_ItemSheet, {
|
||||||
makeDefault: true,
|
makeDefault: true,
|
||||||
types: [
|
types: [
|
||||||
"Generic Item",
|
"Gegenstaende",
|
||||||
"Melee Weapon",
|
"Waffen",
|
||||||
"Ranged Weapon",
|
"Ruestungen",
|
||||||
"Armor",
|
|
||||||
"Shield",
|
|
||||||
]
|
]
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
@ -36,6 +35,16 @@ class AttributeField extends foundry.data.fields.SchemaField {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
class CombatTalentField extends foundry.data.fields.SchemaField {
|
||||||
|
constructor() {
|
||||||
|
return super({
|
||||||
|
talentwert: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
attacke: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
parade: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
class DSA41_CharacterData extends foundry.abstract.TypeDataModel {
|
class DSA41_CharacterData extends foundry.abstract.TypeDataModel {
|
||||||
static defineSchema() {
|
static defineSchema() {
|
||||||
return {
|
return {
|
||||||
@ -53,6 +62,164 @@ class DSA41_CharacterData extends foundry.abstract.TypeDataModel {
|
|||||||
constitution: new AttributeField(),
|
constitution: new AttributeField(),
|
||||||
strength: new AttributeField(),
|
strength: new AttributeField(),
|
||||||
}),
|
}),
|
||||||
|
|
||||||
|
kampf_talente: new SchemaField({
|
||||||
|
anderthalbhaender: new CombatTalentField(),
|
||||||
|
armbrust: new CombatTalentField(),
|
||||||
|
belagerungswaffen: new CombatTalentField(),
|
||||||
|
blasrohr: new CombatTalentField(),
|
||||||
|
bogen: new CombatTalentField(),
|
||||||
|
diskus: new CombatTalentField(),
|
||||||
|
dolche: new CombatTalentField(),
|
||||||
|
fechtwaffen: new CombatTalentField(),
|
||||||
|
hiebwaffen: new CombatTalentField(),
|
||||||
|
infanteriewaffen: new CombatTalentField(),
|
||||||
|
kettenstaebe: new CombatTalentField(),
|
||||||
|
kettenwaffen: new CombatTalentField(),
|
||||||
|
lanzenreiten: new CombatTalentField(),
|
||||||
|
peitsche: new CombatTalentField(),
|
||||||
|
raufen: new CombatTalentField(),
|
||||||
|
ringen: new CombatTalentField(),
|
||||||
|
saebel: new CombatTalentField(),
|
||||||
|
schleuder: new CombatTalentField(),
|
||||||
|
schwerter: new CombatTalentField(),
|
||||||
|
speere: new CombatTalentField(),
|
||||||
|
staebe: new CombatTalentField(),
|
||||||
|
wurfbeile: new CombatTalentField(),
|
||||||
|
wurfmesser: new CombatTalentField(),
|
||||||
|
wurfspeere: new CombatTalentField(),
|
||||||
|
zweihandflegel: new CombatTalentField(),
|
||||||
|
zweihand_hiebwaffen: new CombatTalentField(),
|
||||||
|
zweihandschwerter: new CombatTalentField(),
|
||||||
|
}),
|
||||||
|
|
||||||
|
talente: new SchemaField({
|
||||||
|
koerperliche: new SchemaField({
|
||||||
|
akrobatik: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
athletik: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
fliegen: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
gaukeleien: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
klettern: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
koerperbeherrschung: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
reiten: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
schleichen: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
schwimmen: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
selbstbeherrschung: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
sich_verstecken: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
singen: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
sinnenschärfe: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
skifahren: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
stimmen_imitieren: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
tanzen: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
taschendiebstahl: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
zechen: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
}),
|
||||||
|
|
||||||
|
gesellschaftliche: new SchemaField({
|
||||||
|
betoeren: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
etikette: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
gassenwissen: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
lehren: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
menschenkenntnis: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
schauspielerei: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
schriftlicher_ausdruck: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
sich_verkleiden: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
ueberreden: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
ueberzeugen: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
}),
|
||||||
|
|
||||||
|
natur: new SchemaField({
|
||||||
|
faehrtensuchen: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
fallenstellen: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
fesseln: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
fischen: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
orientierung: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
wettervorhersage: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
wildnisleben: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
}),
|
||||||
|
|
||||||
|
wissens: new SchemaField({
|
||||||
|
anatomie: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
baukunst: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
brett_kartenspiel: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
geographie: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
geschichtswissen: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
gesteinskunde: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
goetter_kulte: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
heraldik: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
huettenkunde: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
kriegskunst: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
kryptographie: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
magiekunde: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
mechanik: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
pflanzenkunde: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
philosophie: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
rechnen: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
rechtskunde: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
sagen_legenden: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
schaetzen: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
sprachenkunde: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
staatskunst: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
sternkunde: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
tierkunde: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
}),
|
||||||
|
|
||||||
|
sprachen: new SchemaField({
|
||||||
|
lesen_schreiben: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
muttersprache: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
fremdsprache: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
}),
|
||||||
|
|
||||||
|
handwerks: new SchemaField({
|
||||||
|
abrichten: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
ackerbau: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
alchimie: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
bergbau: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
bogenbau: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
boote_fahren: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
brauer: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
drucker: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
fahrzeug_lenken: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
falschspiel: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
feinmechanik: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
feuersteinbearbeitung: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
fleischer: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
gerber: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
glaskunst: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
grobschmied: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
handel: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
hauswirtschaft: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
heilkunde_gift: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
heilkunde_krankheiten: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
heilkunde_seele: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
heilkunde_wunden: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
holzbearbeitung: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
instrumentenbauer: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
kartographie: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
kochen: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
kristallzucht: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
lederarbeiten: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
malen_zeichnen: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
maurer: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
metallguss: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
musizieren: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
schloesser_knacken: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
schnapps_brennen: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
schneidern: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
seefahrt: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
seiler: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
steinmetz: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
juwelier: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
stellmacher: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
stoffe_faerben: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
taetowieren: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
toepfern: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
viehzucht: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
webkunst: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
winzer: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
zimmermann: new NumberField({ integer: true, initial: 0 }),
|
||||||
|
}),
|
||||||
|
}),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -66,6 +233,15 @@ class DSA41_CharacterData extends foundry.abstract.TypeDataModel {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
class DSA41_GegenstaendeData extends foundry.abstract.TypeDataModel {
|
||||||
|
static defineSchema() {
|
||||||
|
return {
|
||||||
|
gewicht: new NumberField({ integer: false, initial: 0, min: 0 }),
|
||||||
|
preis: new NumberField({ integer: true, initial: 0, min: 0 }),
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
class DSA41_ActorSheet extends ActorSheet {
|
class DSA41_ActorSheet extends ActorSheet {
|
||||||
get template() {
|
get template() {
|
||||||
return "systems/dsa-4th-edition/src/ActorSheet.html";
|
return "systems/dsa-4th-edition/src/ActorSheet.html";
|
||||||
|
|||||||
@ -6,11 +6,9 @@
|
|||||||
},
|
},
|
||||||
"Item": {
|
"Item": {
|
||||||
"types": [
|
"types": [
|
||||||
"Generic Item",
|
"Gegenstaende",
|
||||||
"Melee Weapon",
|
"Waffen",
|
||||||
"Ranged Weapon",
|
"Ruestungen"
|
||||||
"Armor",
|
|
||||||
"Shield"
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Loading…
x
Reference in New Issue
Block a user