diff --git a/lang/de.json b/lang/de.json
index c62ffa2..8aaaf33 100644
--- a/lang/de.json
+++ b/lang/de.json
@@ -34,10 +34,9 @@
"midgard5.background": "Hintergrund",
"midgard5.attribute": "Eigenschaft",
"midgard5.attributes": "Eigenschaften",
- "midgard5.derived-attribute": "Abgeleitete Eigenschaft",
- "midgard5.derived-attributes": "Abgeleitete Eigenschaften",
+ "midgard5.points": "Punkte",
"midgard5.calculated-value": "Berechneter Wert",
- "midgard5.calculated-values": "Berechnete Werte",
+ "midgard5.calculated-values": "Sonstige Werte",
"midgard5.skill": "Fertigkeit",
"midgard5.skill-value": "Fertigkeitswert",
@@ -236,13 +235,17 @@
"midgard5.language": "Sprache",
"midgard5.languages": "Sprachen",
"midgard5.weapon-skill": "Waffenfertigkeit",
+ "midgard5.weapon-skills": "Waffenfertigkeiten",
"midgard5.unlearned-skill": "Ungelernte Fertigkeit",
"midgard5.unlearned-skills": "Ungelernte Fertigkeiten",
"midgard5.innate-ability": "Angeborene/Besondere Fertigkeit",
"midgard5.innate-abilities": "Angeborene/Besondere Fertigkeit",
"midgard5.base-damage": "Grundschaden",
+ "midgard5.weapon": "Waffe",
+ "midgard5.weapons": "Waffen",
"midgard5.defensive-weapon": "Verteidigungswaffe",
+ "midgard5.defensive-weapons": "Verteidigungswaffen",
"midgard5.no-skill": "Keine Fertigkeit",
"midgard5.magic": "magisch",
"midgard5.valuable": "Vermögen",
diff --git a/source/module/actors/M5Character.ts b/source/module/actors/M5Character.ts
index be1be10..dfec80d 100644
--- a/source/module/actors/M5Character.ts
+++ b/source/module/actors/M5Character.ts
@@ -322,6 +322,7 @@ export class M5Character extends Actor {
hoarded: item.system?.hoarded,
value: item.system.value || 0,
calc: item.system.calc,
+ equipped: item.system?.equipped,
};
});
}
@@ -351,6 +352,7 @@ export class M5Character extends Actor {
hoarded: item.system?.hoarded,
value: item.system.value || 0,
calc: item.system.calc,
+ equipped: item.system?.equipped,
};
});
}
diff --git a/source/module/items/M5Item.ts b/source/module/items/M5Item.ts
index d9138da..74bd118 100644
--- a/source/module/items/M5Item.ts
+++ b/source/module/items/M5Item.ts
@@ -79,14 +79,23 @@ export class M5Item extends Item {
calc.special = itemData.special ? 2 : 0;
calc.ew = calc.special + itemData.stats.attackBonus;
calc.combatSkills = null;
+ calc.containers = null;
+
if (actor) {
const actorCalc = character.derivedData({ weapons: true, defensiveWeapons: true, armor: true, items: true, spells: true, effects: true, kampfkuenste: true });
if (actorCalc) {
calc.ew += actorCalc.stats.attackBonus.value;
calc.combatSkills = actorCalc.skills.combat;
+ calc.containers = actorCalc.gear.containers;
}
-
+ const container = character.getItem(itemData.containerId);
+ //console.log("M5Item.prepareDerivedData:containers", itemData, container?.system)
+ if (container) {
+ container.prepareDerivedData();
+ const containerData = container.system;
+ }
+
const skill = character.getItem(itemData.skillId);
//console.log("M5Item.prepareDerivedData:weapon", itemData, skill?.system)
if (skill) {
@@ -103,14 +112,23 @@ export class M5Item extends Item {
calc.special = itemData.special ? 2 : 0;
calc.ew = calc.special + itemData.stats.defenseBonus;
calc.combatSkills = null;
+ calc.containers = null;
if (actor) {
const actorCalc = character.derivedData({ weapons: true, defensiveWeapons: true, armor: true, items: true, spells: true, effects: true, kampfkuenste: true });
if (actorCalc) {
calc.ew += actorCalc.stats.defense.value + actorCalc.stats.defenseBonus.value;
calc.combatSkills = actorCalc.skills.combat;
+ calc.containers = actorCalc.gear.containers;
}
+ const container = character.getItem(itemData.containerId);
+ //console.log("M5Item.prepareDerivedData:containers", itemData, container?.system)
+ if (container) {
+ container.prepareDerivedData();
+ const containerData = container.system;
+ }
+
const skill = character.getItem(itemData.skillId);
//console.log("M5Item.prepareDerivedData:weapon", itemData, skill?.system)
if (skill) {
@@ -128,6 +146,19 @@ export class M5Item extends Item {
itemData.mods[3] = { type: "attribute", id: "gw", operation: "add100", value: itemData.attributeMod.gw };
itemData.mods[4] = { type: "stat", id: "lpProtection", operation: "set", value: itemData.lpProtection };
itemData.mods[5] = { type: "stat", id: "apProtection", operation: "set", value: itemData.apProtection };
+ calc.containers = null;
+ if (actor) {
+ const actorCalc = actor.derivedData({ weapons: true, defensiveWeapons: true, armor: true, items: true, spells: true, effects: true, kampfkuenste: true });
+ if (actorCalc) {
+ calc.containers = actorCalc.gear.containers;
+ }
+ const container = character.getItem(itemData.containerId);
+ //console.log("M5Item.prepareDerivedData:containers", itemData, container?.system)
+ if (container) {
+ container.prepareDerivedData();
+ const containerData = container.system;
+ }
+ }
} else if (itemType === "spell") {
calc.fw = 0;
if (actor) {
diff --git a/templates/sheets/character/base_values.hbs b/templates/sheets/character/base_values.hbs
index 4c25aa7..6ac423c 100644
--- a/templates/sheets/character/base_values.hbs
+++ b/templates/sheets/character/base_values.hbs
@@ -27,16 +27,10 @@
-
+
-
-
-
- | {{localize "TYPES.Item.weapon"}} |
- {{localize "midgard5.ew"}} |
- |
- |
-
-
-
- {{#each data.calc.gear.weapons as |item itemId|}}
-
- | {{item.label}} |
- {{item.calc.ew}} |
- |
- |
-
- {{/each}}
+
+
+
+ | {{localize "TYPES.Item.weapon"}} |
+ {{localize "midgard5.ew"}} |
+ |
+ |
+
+
+
+ {{#each data.calc.gear.weapons as |item itemId|}}
+
+ | {{item.label}} |
+ {{item.calc.ew}} |
+ |
+ |
+
+ {{/each}}
-
- | {{localize "midgard5.brawl"}} |
- {{data.calc.stats.brawlFw}} |
- |
- |
-
-
-
+
+ | {{localize "midgard5.brawl"}} |
+ {{data.calc.stats.brawlFw}} |
+ |
+ |
+
+
+
-
-
-
- | {{localize "TYPES.Item.defensiveWeapon"}} |
- {{localize "midgard5.ew"}} |
- |
- |
-
-
-
- {{#each data.calc.gear.defensiveWeapons as |item itemId|}}
-
- | {{item.label}} |
- {{item.calc.ew}} |
- |
- |
-
- {{/each}}
+
+
+
+ | {{localize "TYPES.Item.defensiveWeapon"}} |
+ {{localize "midgard5.ew"}} |
+ |
+ |
+
+
+
+ {{#each data.calc.gear.defensiveWeapons as |item itemId|}}
+
+ | {{item.label}} |
+ {{item.calc.ew}} |
+ |
+ |
+
+ {{/each}}
-
- | {{localize "midgard5.defense"}} |
- {{add data.calc.stats.defense.value data.calc.stats.defenseBonus.value}} |
- |
- |
-
+
+ | {{localize "midgard5.defense"}} |
+ {{add data.calc.stats.defense.value data.calc.stats.defenseBonus.value}} |
+ |
+ |
+
-
- | {{localize "midgard5.resistanceMind"}} |
- {{data.calc.stats.resistanceMind.value}} |
- |
- |
-
+
+ | {{localize "midgard5.resistanceMind"}} |
+ {{data.calc.stats.resistanceMind.value}} |
+ |
+ |
+
-
- | {{localize "midgard5.resistanceBody"}} |
- {{data.calc.stats.resistanceBody.value}} |
- |
- |
-
-
-
+
+ | {{localize "midgard5.resistanceBody"}} |
+ {{data.calc.stats.resistanceBody.value}} |
+ |
+ |
+
+
+
-
-
-
- | {{localize "TYPES.Item.armor"}} |
- {{localize "midgard5.actor-lp-short"}} |
- {{localize "midgard5.actor-ap-short"}} |
- {{localize "midgard5.attackBonus-short"}} |
- {{localize "midgard5.defenseBonus-short"}} |
- B |
- Gw |
- |
-
-
-
- {{#each data.calc.gear.armor as |item itemId|}}
-
- |
- {{item.label}}
- {{#if item.equipped}}
- {{localize "midgard5.equipped"}}
- {{/if}}
- |
- {{actorItemValue ../actor._id itemId "lpProtection" ../actor.isToken}} |
- {{actorItemValue ../actor._id itemId "apProtection"}} |
- {{actorItemValue ../actor._id itemId "stats.attackBonus"}} |
- {{actorItemValue ../actor._id itemId "stats.defenseBonus"}} |
- {{actorItemValue ../actor._id itemId "stats.movementBonus"}} |
- {{actorItemValue ../actor._id itemId "attributeMod.gw"}} |
- |
-
- {{/each}}
-
-
+
+
+
+ | {{localize "TYPES.Item.armor"}} |
+ {{localize "midgard5.actor-lp-short"}} |
+ {{localize "midgard5.actor-ap-short"}} |
+ {{localize "midgard5.attackBonus-short"}} |
+ {{localize "midgard5.defenseBonus-short"}} |
+ B |
+ Gw |
+ |
+
+
+
+ {{#each data.calc.gear.armor as |item itemId|}}
+
+ |
+ {{item.label}}
+ {{#if item.equipped}}
+ {{localize "midgard5.equipped"}}
+ {{/if}}
+ |
+ {{actorItemValue ../actor._id itemId "lpProtection" ../actor.isToken}} |
+ {{actorItemValue ../actor._id itemId "apProtection"}} |
+ {{actorItemValue ../actor._id itemId "stats.attackBonus"}} |
+ {{actorItemValue ../actor._id itemId "stats.defenseBonus"}} |
+ {{actorItemValue ../actor._id itemId "stats.movementBonus"}} |
+ {{actorItemValue ../actor._id itemId "attributeMod.gw"}} |
+ |
+
+ {{/each}}
+
+
-
-
-
- | {{localize "midgard5.weapon-skill"}} |
- {{localize "midgard5.fw"}} |
- {{localize "midgard5.bonus"}} |
- {{localize "midgard5.ew"}} |
- {{localize "midgard5.pp-short"}} |
- |
- |
-
-
-
- {{#each data.calc.skills.combat as |skill skillId|}}
-
- | {{skill.label}} |
- {{skill.fw}} |
- {{skill.calc.bonus}} |
- {{skill.calc.ew}} |
- {{skill.pp}} |
- |
- |
-
- {{/each}}
-
-
+ {{localize "midgard5.movementRange"}}: {{data.calc.stats.movement.value}}
+
+
\ No newline at end of file
diff --git a/templates/sheets/character/description.hbs b/templates/sheets/character/description.hbs
index 0558494..1168245 100644
--- a/templates/sheets/character/description.hbs
+++ b/templates/sheets/character/description.hbs
@@ -35,7 +35,7 @@
-
{{editor characterDescription target="data.info.description"}}
+
{{editor characterDescription target="data.info.description" button=false }}
@@ -43,7 +43,7 @@
-
{{editor characterBackground target="data.info.background"}}
+
{{editor characterBackground target="data.info.background" button=false}}
diff --git a/templates/sheets/character/gear.hbs b/templates/sheets/character/gear.hbs
index a04930e..a0d01ab 100644
--- a/templates/sheets/character/gear.hbs
+++ b/templates/sheets/character/gear.hbs
@@ -81,6 +81,108 @@
+
+
+
+
+
+
+ | {{localize "TYPES.Item.weapon"}} |
+ {{localize "midgard5.item-value"}} |
+  |
+ |
+
+
+
+ {{#each data.calc.gear.weapons as |item itemId|}}
+
+ | {{item.label}} |
+
+ {{#unless (or (eq item.value 0) (eq item.currency ""))}}
+ {{item.value}} {{localize (m5concat "midgard5.currency-" item.currency)}}
+ {{/unless}}
+ |
+
+ {{#if item.equipped}}
+
+ {{else}}
+
+ {{/if}}
+ |
+ |
+
+ {{/each}}
+
+
+
+
+
+
+
+
+
+ | {{localize "TYPES.Item.defensiveWeapon"}} |
+ {{localize "midgard5.item-value"}} |
+  |
+ |
+
+
+
+ {{#each data.calc.gear.defensiveWeapons as |item itemId|}}
+
+ | {{item.label}} |
+
+ {{#unless (or (eq item.value 0) (eq item.currency ""))}}
+ {{item.value}} {{localize (m5concat "midgard5.currency-" item.currency)}}
+ {{/unless}}
+ |
+
+ {{#if item.equipped}}
+
+ {{else}}
+
+ {{/if}}
+ |
+ |
+
+ {{/each}}
+
+
+
+
+
+
+
+
+
+ | {{localize "TYPES.Item.armor"}} |
+ {{localize "midgard5.item-value"}} |
+  |
+ |
+
+
+
+ {{#each data.calc.gear.armor as |item itemId|}}
+
+ | {{item.label}} |
+
+ {{#unless (or (eq item.value 0) (eq item.currency ""))}}
+ {{item.value}} {{localize (m5concat "midgard5.currency-" item.currency)}}
+ {{/unless}}
+ |
+
+ {{#if item.equipped}}
+
+ {{else}}
+
+ {{/if}}
+ |
+ |
+
+ {{/each}}
+
+
+
-
- {{> "systems/midgard5/templates/sheets/character/spells.hbs"}}
-
-
{{> "systems/midgard5/templates/sheets/character/combat.hbs"}}
+
+ {{> "systems/midgard5/templates/sheets/character/spells.hbs"}}
+
+
{{> "systems/midgard5/templates/sheets/character/effects.hbs"}}
diff --git a/templates/sheets/character/skills.hbs b/templates/sheets/character/skills.hbs
index 90b2e27..b666208 100644
--- a/templates/sheets/character/skills.hbs
+++ b/templates/sheets/character/skills.hbs
@@ -1,6 +1,50 @@
+
+
+
+
+
+ | {{localize "midgard5.innate-ability"}} |
+ {{localize "midgard5.fw"}} |
+ {{localize "midgard5.bonus"}} |
+ {{localize "midgard5.ew"}} |
+  |
+ |
+
+
+
+ {{#each data.calc.skills.innate as |skill skillId|}}
+
+ | {{skill.label}} |
+ {{skill.fw}} |
+ {{skill.calc.bonus}} |
+ {{skill.calc.ew}} |
+ |
+ |
+
+ {{/each}}
+
+ | {{localize "midgard5.perception"}} |
+ {{data.calc.stats.perceptionFW}} |
+ {{data.calc.stats.perception.value}} |
+ {{add data.calc.stats.perception.value data.calc.stats.perceptionFW}} |
+ |
+ |
+
+
+ | {{localize "midgard5.drinking"}} |
+ {{data.calc.stats.drinkingFW}} |
+ {{data.calc.stats.drinking.value}} |
+ {{add data.calc.stats.drinking.value data.calc.stats.drinkingFW}} |
+ |
+ |
+
+
+
+
+
@@ -24,7 +68,7 @@
| {{skill.calc.ew}} |
|
|
- |
+ |
{{/each}}
@@ -32,46 +76,31 @@
-
+
- | {{localize "midgard5.innate-ability"}} |
+ {{localize "midgard5.weapon-skill"}} |
{{localize "midgard5.fw"}} |
{{localize "midgard5.bonus"}} |
{{localize "midgard5.ew"}} |
+ {{localize "midgard5.pp-short"}} |
 |
|
- {{#each data.calc.skills.innate as |skill skillId|}}
+ {{#each data.calc.skills.combat as |skill skillId|}}
| {{skill.label}} |
{{skill.fw}} |
{{skill.calc.bonus}} |
{{skill.calc.ew}} |
+ {{skill.pp}} |
|
- |
+ |
{{/each}}
-
- | {{localize "midgard5.perception"}} |
- {{data.calc.stats.perceptionFW}} |
- {{data.calc.stats.perception.value}} |
- {{add data.calc.stats.perception.value data.calc.stats.perceptionFW}} |
- |
- |
-
-
-
- | {{localize "midgard5.drinking"}} |
- {{data.calc.stats.drinkingFW}} |
- {{data.calc.stats.drinking.value}} |
- {{add data.calc.stats.drinking.value data.calc.stats.drinkingFW}} |
- |
- |
-
@@ -99,7 +128,7 @@
{{skill.calc.ew}} |
{{skill.pp}} |
|
- |
+ |
{{/each}}
diff --git a/templates/sheets/item/armor.hbs b/templates/sheets/item/armor.hbs
index 1c1c8ea..868350d 100644
--- a/templates/sheets/item/armor.hbs
+++ b/templates/sheets/item/armor.hbs
@@ -9,6 +9,10 @@
|
+
+
+
+
@@ -49,6 +53,25 @@
|
+
+ |
+
+ {{localize "TYPES.Item.container"}}
+ {{#if data.calc.containers}}
+
+ {{else}}
+ {{localize "midgard5.assignItemToCharacter"}}
+ {{/if}}
+
+ |
+
| {{localize "midgard5.lpProtection"}} |
|
diff --git a/templates/sheets/item/defensiveWeapon.hbs b/templates/sheets/item/defensiveWeapon.hbs
index 80ead44..9839c72 100644
--- a/templates/sheets/item/defensiveWeapon.hbs
+++ b/templates/sheets/item/defensiveWeapon.hbs
@@ -9,6 +9,10 @@
|
+
+
+
+
@@ -49,6 +53,25 @@
|
+
+ |
+
+ {{localize "TYPES.Item.container"}}
+ {{#if data.calc.containers}}
+
+ {{else}}
+ {{localize "midgard5.assignItemToCharacter"}}
+ {{/if}}
+
+ |
+
| {{localize "midgard5.defenseBonus"}} |
|
diff --git a/templates/sheets/item/weapon.hbs b/templates/sheets/item/weapon.hbs
index dbd69b7..4491a9b 100644
--- a/templates/sheets/item/weapon.hbs
+++ b/templates/sheets/item/weapon.hbs
@@ -9,6 +9,10 @@
|
+
+
+
+
@@ -54,6 +58,25 @@
|
+
+ |
+
+ {{localize "TYPES.Item.container"}}
+ {{#if data.calc.containers}}
+
+ {{else}}
+ {{localize "midgard5.assignItemToCharacter"}}
+ {{/if}}
+
+ |
+
| {{localize "midgard5.base-damage"}} |
|