From c13fef5103afd287797ebc47f3de5392ba35c953 Mon Sep 17 00:00:00 2001 From: oskaloq Date: Tue, 16 Jan 2024 11:25:39 +0100 Subject: [PATCH] =?UTF-8?q?Zusammenf=C3=BChrung-von-Fertigkeiten,-Waffen-u?= =?UTF-8?q?nd-R=C3=BCstungen-im-Kampf-Tab-#15=20(#48)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Created character description tab - Redesigned skill, gear and combat tab - Weapons, defense weapons and armor is still in the gear tab. If you equip them (now directly possible via click on the equip icon), they appear in the combat tab. Reason: This holds the combat tab clean for combat stuff. Co-authored-by: Ender Reviewed-on: https://git.byroks.de/MidgardVTT-Entwicklung/foundry-vtt-system-midgard5/pulls/48 Reviewed-by: Byroks --- lang/de.json | 24 +- source/PreloadTemplates.ts | 3 +- source/module/actors/M5Character.ts | 9 + source/module/items/M5Item.ts | 33 +- source/module/sheets/M5CharacterSheet.ts | 22 ++ source/style/Character-sheet.less | 48 ++- source/template.json | 3 +- templates/sheets/character/base_values.hbs | 284 ++++++++---------- templates/sheets/character/combat.hbs | 189 ++++++++++++ templates/sheets/character/description.hbs | 50 ++++ templates/sheets/character/gear.hbs | 138 ++++++++- templates/sheets/character/kampfkuenste.hbs | 136 --------- templates/sheets/character/main.hbs | 15 +- templates/sheets/character/skills.hbs | 314 +++++++++++--------- templates/sheets/item/armor.hbs | 19 ++ templates/sheets/item/defensiveWeapon.hbs | 23 ++ templates/sheets/item/weapon.hbs | 23 ++ 17 files changed, 849 insertions(+), 484 deletions(-) create mode 100644 templates/sheets/character/combat.hbs create mode 100644 templates/sheets/character/description.hbs delete mode 100644 templates/sheets/character/kampfkuenste.hbs diff --git a/lang/de.json b/lang/de.json index aa4a004..6e39d06 100644 --- a/lang/de.json +++ b/lang/de.json @@ -29,11 +29,20 @@ "midgard5.label": "Bezeichnung", "midgard5.description": "Beschreibung", - "midgard5.attribute": "Leiteigenschaft", + "midgard5.Characteristic": "Merkmal", + "midgard5.characteristics": "Merkmale", + "midgard5.background": "Hintergrund", + "midgard5.attribute": "Eigenschaft", + "midgard5.attributes": "Eigenschaften", + "midgard5.points": "Punkte", + "midgard5.calculated-value": "Berechneter Wert", + "midgard5.calculated-values": "Sonstige Werte", + "midgard5.skill": "Fertigkeit", "midgard5.skill-value": "Fertigkeitswert", "midgard5.fw": "FW", "midgard5.bonus": "Bonus", + "midgard5.bonuses": "Boni", "midgard5.ew": "EW", "midgard5.pp-short": "PP", "midgard5.pp": "Praxispunkte", @@ -80,6 +89,8 @@ "midgard5.spells": "Zauber", "midgard5.effects": "Aktive Effekte", "midgard5.kampfkuenste": "Kampfkünste", + "midgard5.combat": "Kampf", + "midgard5.actor-name": "Figur", "midgard5.level": "Grad", @@ -221,13 +232,21 @@ "midgard5.new-skill": "Neue Fertigkeit", "midgard5.special": "Spezial", "midgard5.learned-skill": "Gelernte Fertigkeit", + "midgard5.learned-skills": "Gelernte Fertigkeiten", "midgard5.language": "Sprache", + "midgard5.languages": "Sprachen", "midgard5.weapon-skill": "Waffenfertigkeit", + "midgard5.weapon-skills": "Waffenfertigkeiten", "midgard5.unlearned-skill": "Ungelernte Fertigkeit", - "midgard5.innate-ability": "Angeborene Fähigkeit", + "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", @@ -278,6 +297,7 @@ "midgard5.kampfkunst-type": "Kampfkunst Art", "midgard5.kampfkunst-variante": "Kampfkunst Variante", + "midgard5.kampfkunst-variante-short": "Var", "midgard5.kido-type": "Kido Art", "midgard5.kido-variante": "Kido Variante", diff --git a/source/PreloadTemplates.ts b/source/PreloadTemplates.ts index bbd4ae9..b2f2d19 100644 --- a/source/PreloadTemplates.ts +++ b/source/PreloadTemplates.ts @@ -6,13 +6,14 @@ const preloadTemplates = async (): Promise[]> = // const templates = [ rootPath + "actor/actor-sheet.hbs" ] // This would map to our local folder of /Assets/Templates/Actor/actor-sheet.hbs const templates: Array = [ + "sheets/character/description.hbs", "sheets/character/attribute.hbs", "sheets/character/base_values.hbs", "sheets/character/main.hbs", "sheets/character/skills.hbs", "sheets/character/gear.hbs", "sheets/character/spells.hbs", - "sheets/character/kampfkuenste.hbs", + "sheets/character/combat.hbs", "sheets/character/effects.hbs", "sheets/partial/mod.hbs", "sheets/item/rolls.hbs", diff --git a/source/module/actors/M5Character.ts b/source/module/actors/M5Character.ts index c2b4958..e0bda3c 100644 --- a/source/module/actors/M5Character.ts +++ b/source/module/actors/M5Character.ts @@ -319,6 +319,10 @@ export class M5Character extends Actor { hoarded: item.system?.hoarded, value: item.system.value || 0, calc: item.system.calc, + special: item.system.special, + damageBase: item.system.damageBase, + equipped: item.system?.equipped, + containerId: item.system.containerId || "", }; }); } @@ -347,7 +351,10 @@ export class M5Character extends Actor { valuable: item.system?.valuable, hoarded: item.system?.hoarded, value: item.system.value || 0, + defenseBonus: item.system.stats.defenseBonus, calc: item.system.calc, + equipped: item.system?.equipped, + containerId: item.system.containerId || "", }; }); } @@ -375,8 +382,10 @@ export class M5Character extends Actor { valuable: item.system?.valuable, hoarded: item.system?.hoarded, value: item.system.value || 0, + lpProtection: item.system.lpProtection, calc: item.system.calc, equipped: item.system?.equipped, + containerId: item.system.containerId || "", }; }); } 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/source/module/sheets/M5CharacterSheet.ts b/source/module/sheets/M5CharacterSheet.ts index 8690943..2990225 100644 --- a/source/module/sheets/M5CharacterSheet.ts +++ b/source/module/sheets/M5CharacterSheet.ts @@ -246,6 +246,28 @@ export default class M5CharacterSheet extends ActorSheet { const roll = M5Roll.resistanceBody(this.actor); await roll.toMessage(); }); + + html.find(".change-equipped").on("click", async (event) => { + let row = event.target.parentElement; + let itemId = row.dataset["item"]; + while (!itemId) { + row = row.parentElement; + if (!row) return; + itemId = row.dataset["item"]; + } + + const context = this.actor as any; + const item = context.items.get(itemId); + if (item.system.equipped === true) { + item.system.equipped = false; + } + else { + item.system.equipped = true; + } + this.render(); + }); + + // Drag & Drop const dragDrop = new DragDrop({ dragSelector: ".items-list .item", diff --git a/source/style/Character-sheet.less b/source/style/Character-sheet.less index 273651d..1a97399 100644 --- a/source/style/Character-sheet.less +++ b/source/style/Character-sheet.less @@ -23,6 +23,11 @@ flex-wrap: wrap; } + .flexcolumn-3 { + flex: 33%; + flex-wrap: wrap; + } + .flexcolumn-4 { flex: 25%; flex-wrap: wrap; @@ -167,6 +172,11 @@ text-align: left; font-weight: bold; } + + &.highlight { + font-weight: bold; + font-style: italic; + } } .table-icon { @@ -188,22 +198,34 @@ width: 5rem; } + input.checkbox { + width: 1rem; + height: 1rem; + } + .new-skill { font-style: italic; background: rgba(0, 0, 0, 0.3); color: rgba(255, 255, 255); - - button { - background: rgba(255, 255, 255, 0.5); - } } - button.roll-button { + .roll-button { background: url(/icons/svg/d20-black.svg) no-repeat; - background-size: 24px 24px; + background-size: 1rem 1rem; border: #000000 solid 0px; - width: 26px; - height: 26px; + width: 1rem; + height: 1rem; + } + + .learn-button { + padding: 0; + margin: 0; + height: 1rem; + width: 4rem; + background: rgba(255, 255, 255, 0.5); + font-size: smaller; + text-align: center; + line-height: 0.8rem; } span.spell-process { @@ -256,15 +278,23 @@ } } + .biography { + margin: 0.5rem 0.5rem 0.5rem 0.5rem; + height: 180px; + background-color: #eaead7; + } + .attributes { padding: 0.5rem 0.5rem 0.5rem 0.5rem; display: flex; flex-direction: row; margin-bottom: 0.5rem; background-color: beige; + flex-wrap: wrap; + justify-content: center; .attribute { - flex: 0 0 7rem; + flex: 0 0 6rem; margin: 0; border: 1px solid @attributeBorderColor; //border-bottom: none; diff --git a/source/template.json b/source/template.json index d926a5e..5dd1d3b 100644 --- a/source/template.json +++ b/source/template.json @@ -5,6 +5,7 @@ "characterDescription": { "info": { "description": "", + "background": "", "class": "", "race": "", "magicUsing": false, @@ -203,7 +204,7 @@ }, "equippable": { "equippable": false, - "equipped": true + "equipped": false }, "valuable": { "valuable": false, diff --git a/templates/sheets/character/base_values.hbs b/templates/sheets/character/base_values.hbs index ad10c13..6ac423c 100644 --- a/templates/sheets/character/base_values.hbs +++ b/templates/sheets/character/base_values.hbs @@ -1,168 +1,120 @@ +
+ +
+
{{localize "midgard5.attributes"}}
+
+
+ {{> "systems/midgard5/templates/sheets/character/attribute.hbs" attributeId="st" attribute=data.attributes.st calc=data.calc.attributes.st}} +
+ {{> "systems/midgard5/templates/sheets/character/attribute.hbs" attributeId="gs" attribute=data.attributes.gs calc=data.calc.attributes.gs}} +
+ {{> "systems/midgard5/templates/sheets/character/attribute.hbs" attributeId="gw" attribute=data.attributes.gw calc=data.calc.attributes.gw}} +
+ {{> "systems/midgard5/templates/sheets/character/attribute.hbs" attributeId="ko" attribute=data.attributes.ko calc=data.calc.attributes.ko}} +
+ {{> "systems/midgard5/templates/sheets/character/attribute.hbs" attributeId="in" attribute=data.attributes.in calc=data.calc.attributes.in}} +
+ {{> "systems/midgard5/templates/sheets/character/attribute.hbs" attributeId="zt" attribute=data.attributes.zt calc=data.calc.attributes.zt}} +
+ {{> "systems/midgard5/templates/sheets/character/attribute.hbs" attributeId="au" attribute=data.attributes.au calc=data.calc.attributes.au}} +
+ {{> "systems/midgard5/templates/sheets/character/attribute.hbs" attributeId="pa" attribute=data.attributes.pa calc=data.calc.attributes.pa}} +
+ {{> "systems/midgard5/templates/sheets/character/attribute.hbs" attributeId="wk" attribute=data.attributes.wk calc=data.calc.attributes.wk}} +
+
+
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Eigenschaften
{{localize "midgard5.magicUsing"}}  
{{localize "midgard5.grace"}}{{localize "midgard5.exp-overall"}}
{{localize "midgard5.destiny"}}{{localize "midgard5.exp-available"}}
{{localize "midgard5.luckPoints"}}{{localize "midgard5.movementRange"}}
+
+
+
{{localize "midgard5.points"}}
+ + + + + + + + + + + + + + + + + + + + + + + +
{{localize "midgard5.grace"}}{{localize "midgard5.exp-overall"}}
{{localize "midgard5.destiny"}}{{localize "midgard5.exp-available"}}
{{localize "midgard5.luckPoints"}}
+
+
- - - - - - - - - - - - - - -
Leiteigenschaften
- {{> "systems/midgard5/templates/sheets/character/attribute.hbs" attributeId="st" attribute=data.attributes.st calc=data.calc.attributes.st}} -
- {{> "systems/midgard5/templates/sheets/character/attribute.hbs" attributeId="gs" attribute=data.attributes.gs calc=data.calc.attributes.gs}} -
- {{> "systems/midgard5/templates/sheets/character/attribute.hbs" attributeId="gw" attribute=data.attributes.gw calc=data.calc.attributes.gw}} -
- {{> "systems/midgard5/templates/sheets/character/attribute.hbs" attributeId="ko" attribute=data.attributes.ko calc=data.calc.attributes.ko}} -
- {{> "systems/midgard5/templates/sheets/character/attribute.hbs" attributeId="in" attribute=data.attributes.in calc=data.calc.attributes.in}} -
-
- {{> "systems/midgard5/templates/sheets/character/attribute.hbs" attributeId="zt" attribute=data.attributes.zt calc=data.calc.attributes.zt}} -
- {{> "systems/midgard5/templates/sheets/character/attribute.hbs" attributeId="au" attribute=data.attributes.au calc=data.calc.attributes.au}} -
- {{> "systems/midgard5/templates/sheets/character/attribute.hbs" attributeId="pa" attribute=data.attributes.pa calc=data.calc.attributes.pa}} -
- {{> "systems/midgard5/templates/sheets/character/attribute.hbs" attributeId="wk" attribute=data.attributes.wk calc=data.calc.attributes.wk}} -
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - {{#if (eq data.info.race "Zwerg")}} - - - {{/if}} - - - {{#if (eq data.info.race "Zwerg")}} - - - - - {{/if}} - - - -
Berechnete Werte
{{localize "midgard5.brawl"}}{{data.calc.stats.brawl.value}}{{localize "midgard5.enduranceBonus"}}{{data.calc.stats.enduranceBonus}}
{{localize "midgard5.defense"}}{{data.calc.stats.defense.value}}{{localize "midgard5.defenseBonus"}}{{data.calc.stats.defenseBonus.value}}
{{localize "midgard5.damageBonus"}}{{data.calc.stats.damageBonus.value}}{{localize "midgard5.attackBonus"}}{{data.calc.stats.attackBonus.value}}
{{localize "midgard5.spellCasting"}}{{data.calc.stats.spellCasting.value}}{{localize "midgard5.poisonResistance"}}{{data.calc.stats.poisonResistance.value}}
{{localize "midgard5.resistanceMind"}}{{data.calc.stats.resistanceMind.value}}{{localize "midgard5.resistanceBody"}}{{data.calc.stats.resistanceBody.value}}
{{localize "midgard5.movementRange"}}{{data.calc.stats.movement.value}}{{localize "midgard5.hoard"}}{{data.calc.stats.hoard}}
{{localize "midgard5.hoardMin"}}{{data.calc.stats.hoardMin}}{{localize "midgard5.hoard-next"}}{{data.calc.stats.hoardNext}}
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Beschreibung
{{localize "midgard5.origin"}}{{localize "midgard5.gender"}}
{{localize "midgard5.weight"}}{{localize "midgard5.height"}}
{{localize "midgard5.shape"}}{{localize "midgard5.age"}}
{{localize "midgard5.caste"}}{{localize "midgard5.faith"}}
- -{{editor content=data.description target="data.description" button=true owner=owner editable=editable}} +
+
+
{{localize "midgard5.calculated-values"}}
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + {{#if (eq data.info.race "Zwerg")}} + + + + + + + + + + + + + {{/if}} + + + +
{{localize "midgard5.magicUsing"}}{{localize "midgard5.movementRange"}}
{{localize "midgard5.brawl"}}{{data.calc.stats.brawl.value}}{{localize "midgard5.enduranceBonus"}}{{data.calc.stats.enduranceBonus}}
{{localize "midgard5.defense"}}{{data.calc.stats.defense.value}}{{localize "midgard5.defenseBonus"}}{{data.calc.stats.defenseBonus.value}}
{{localize "midgard5.damageBonus"}}{{data.calc.stats.damageBonus.value}}{{localize "midgard5.attackBonus"}}{{data.calc.stats.attackBonus.value}}
{{localize "midgard5.spellCasting"}}{{data.calc.stats.spellCasting.value}}{{localize "midgard5.poisonResistance"}}{{data.calc.stats.poisonResistance.value}}
{{localize "midgard5.resistanceMind"}}{{data.calc.stats.resistanceMind.value}}{{localize "midgard5.resistanceBody"}}{{data.calc.stats.resistanceBody.value}}
{{localize "midgard5.hoard"}}{{data.calc.stats.hoard}}
{{localize "midgard5.hoardMin"}}{{data.calc.stats.hoardMin}}{{localize "midgard5.hoard-next"}}{{data.calc.stats.hoardNext}}
+
+
+
\ No newline at end of file diff --git a/templates/sheets/character/combat.hbs b/templates/sheets/character/combat.hbs new file mode 100644 index 0000000..3f495e3 --- /dev/null +++ b/templates/sheets/character/combat.hbs @@ -0,0 +1,189 @@ +
+
+
+
{{localize "midgard5.attack"}}
+ + + + + + + + + + + + {{#each data.calc.gear.weapons as |item itemId|}} + {{#if item.equipped}} + + + + + + + + {{/if}} + {{/each}} + + + + + + + + + +
{{localize "TYPES.Item.weapon"}}{{localize "midgard5.ew"}}{{localize "midgard5.damage"}}
{{item.label}}{{#if item.special}}(*){{/if}}{{item.calc.ew}}{{item.damageBase}} + {{#if item.equipped}} + + {{else}} + + {{/if}} +
{{localize "midgard5.brawl"}}{{data.calc.stats.brawlFw}}1d6 -4 
+ + + + + + + + + + + + + {{#each data.calc.kampfkuenste as |item itemId|}} + + + + + + + + {{/each}} + +
{{localize "TYPES.Item.kampfkunst"}}{{localize "midgard5.kampfkunst-variante-short"}}{{localize "midgard5.ew"}}
{{item.label}} + {{#if item.isKido}} + {{localize (m5concat "midgard5.kido-type-" item.type)}} + {{#unless (eq item.type "finte")}} + ({{localize (m5concat "midgard5.kido-variante-" item.variante)}}) + {{/unless}} + {{else}} + {{localize (m5concat "midgard5.kampfkunst-type-" item.type)}} + {{#if (eq item.type "angriff")}} + ({{localize (m5concat "midgard5.kampfkunst-variante-" item.variante)}}) + {{/if}} + {{/if}} + {{item.calc.ew}}
+
+
+ +
+
+
{{localize "midgard5.calculated-values"}}
+ + + + + + + + + + + + + + + + + + + +
{{localize "midgard5.movementRange"}}{{data.calc.stats.movement.value}}  
{{localize "midgard5.defense"}}{{data.calc.stats.defense.value}}{{localize "midgard5.defenseBonus"}}{{data.calc.stats.defenseBonus.value}}
{{localize "midgard5.damageBonus"}}{{data.calc.stats.damageBonus.value}}{{localize "midgard5.attackBonus"}}{{data.calc.stats.attackBonus.value}}
+
+
+ +
+
+
{{localize "midgard5.defense"}}
+ + + + + + + + + + + + + + + + + + + +
{{localize "midgard5.defense"}}{{add data.calc.stats.defense.value data.calc.stats.defenseBonus.value}}
{{localize "midgard5.resistanceMind"}}{{data.calc.stats.resistanceMind.value}}
{{localize "midgard5.resistanceBody"}}{{data.calc.stats.resistanceBody.value}}
+ + + + + + + + + + + + {{#each data.calc.gear.defensiveWeapons as |item itemId|}} + {{#if item.equipped}} + + + + + + + + {{/if}} + {{/each}} + +
{{localize "TYPES.Item.defensiveWeapon"}}{{localize "midgard5.ew"}}{{localize "midgard5.defenseBonus-short"}}
{{item.label}}{{item.calc.ew}}{{item.defenseBonus}} + {{#if item.equipped}} + + {{else}} + + {{/if}} +
+ + + + + + + + + + + {{#each data.calc.gear.armor as |item itemId|}} + {{#if item.equipped}} + + + + + + {{/if}} + {{/each}} + +
{{localize "TYPES.Item.armor"}}{{localize "midgard5.actor-lp-short"}}
{{item.label}}{{lpProtection}} + {{#if item.equipped}} + + {{else}} + + {{/if}} +
+
+
+
diff --git a/templates/sheets/character/description.hbs b/templates/sheets/character/description.hbs new file mode 100644 index 0000000..1168245 --- /dev/null +++ b/templates/sheets/character/description.hbs @@ -0,0 +1,50 @@ +
+
+
+
{{localize "midgard5.characteristics"}}
+ + + + + + + + + + + + + + + + + + + + + + + + + +
{{localize "midgard5.origin"}}{{localize "midgard5.gender"}}{{localize "midgard5.shape"}}{{localize "midgard5.age"}}
{{localize "midgard5.weight"}}{{localize "midgard5.height"}}{{localize "midgard5.caste"}}{{localize "midgard5.faith"}}
+
+
+ +
+
+
{{localize "midgard5.description"}}
+
+
{{editor characterDescription target="data.info.description" button=false }}
+
+
+ +
+
+
{{localize "midgard5.background"}}
+
+
{{editor characterBackground target="data.info.background" button=false}}
+
+
+ +
diff --git a/templates/sheets/character/gear.hbs b/templates/sheets/character/gear.hbs index 349913f..a0d01ab 100644 --- a/templates/sheets/character/gear.hbs +++ b/templates/sheets/character/gear.hbs @@ -2,7 +2,7 @@
-
Geld
+
{{localize "midgard5.currency"}}
@@ -34,7 +34,7 @@
{{localize "midgard5.gear"}} - (alle ) + (alle )
@@ -42,7 +42,7 @@ - + @@ -66,19 +66,123 @@ {{item.value}} {{localize (m5concat "midgard5.currency-" item.currency)}} {{/unless}} - - - + + {{/if}} {{/each}}
{{localize "TYPES.Item.item"}} {{localize "midgard5.item-quantity"}} {{localize "midgard5.item-value"}}  
+ {{#if item.equipped}} - + + {{else}} + {{/if}} {{#if item.rollExist}}{{/if}}{{#if item.rollExist}}{{/if}}
+ +
+
{{localize "midgard5.weapons"}}
+ + + + + + + + + + + {{#each data.calc.gear.weapons as |item itemId|}} + + + + + + + {{/each}} + +
{{localize "TYPES.Item.weapon"}}{{localize "midgard5.item-value"}} 
{{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}} +
+
+ +
+
{{localize "midgard5.defensive-weapons"}}
+ + + + + + + + + + + {{#each data.calc.gear.defensiveWeapons as |item itemId|}} + + + + + + + {{/each}} + +
{{localize "TYPES.Item.defensiveWeapon"}}{{localize "midgard5.item-value"}} 
{{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}} +
+
+ +
+
{{localize "midgard5.armor"}}
+ + + + + + + + + + + {{#each data.calc.gear.armor as |item itemId|}} + + + + + + + {{/each}} + +
{{localize "TYPES.Item.armor"}}{{localize "midgard5.item-value"}} 
{{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}} +
+
@@ -107,13 +211,15 @@ {{item.value}} {{localize (m5concat "midgard5.currency-" item.currency)}} {{/unless}} - + {{#if item.equipped}} - + + {{else}} + {{/if}} - {{#if item.rollExist}}{{/if}} - + {{#if item.rollExist}}{{/if}} + {{/each}} @@ -152,13 +258,15 @@ {{item.value}} {{localize (m5concat "midgard5.currency-" item.currency)}} {{/unless}} - + {{#if item.equipped}} - + + {{else}} + {{/if}} - {{#if item.rollExist}}{{/if}} - + {{#if item.rollExist}}{{/if}} + {{/if}} {{/each}} diff --git a/templates/sheets/character/kampfkuenste.hbs b/templates/sheets/character/kampfkuenste.hbs deleted file mode 100644 index c1e7cf8..0000000 --- a/templates/sheets/character/kampfkuenste.hbs +++ /dev/null @@ -1,136 +0,0 @@ - - - - - - - - - - - {{#each data.calc.kampfkuenste as |item itemId|}} - - - - - - - {{/each}} - -
{{localize "TYPES.Item.kampfkunst"}}{{localize "midgard5.ew"}}
- {{item.label}} - {{#if item.isKido}} - {{localize (m5concat "midgard5.kido-type-" item.type)}} - {{#unless (eq item.type "finte")}} - ({{localize (m5concat "midgard5.kido-variante-" item.variante)}}) - {{/unless}} - {{else}} - {{localize (m5concat "midgard5.kampfkunst-type-" item.type)}} - {{#if (eq item.type "angriff")}} - ({{localize (m5concat "midgard5.kampfkunst-variante-" item.variante)}}) - {{/if}} - {{/if}} - {{item.calc.ew}}
- - - - - - - - - - - {{#each data.calc.gear.weapons as |item itemId|}} - - - - - - - {{/each}} - - - - - - - - -
{{localize "TYPES.Item.weapon"}}{{localize "midgard5.ew"}}
{{item.label}}{{item.calc.ew}}
{{localize "midgard5.brawl"}}{{data.calc.stats.brawlFw}}
- - - - - - - - - - - - {{#each data.calc.gear.defensiveWeapons as |item itemId|}} - - - - - - - {{/each}} - - - - - - - - - - - - - - - - - - - - - - -
{{localize "TYPES.Item.defensiveWeapon"}}{{localize "midgard5.ew"}}
{{item.label}}{{item.calc.ew}}
{{localize "midgard5.defense"}}{{add data.calc.stats.defense.value data.calc.stats.defenseBonus.value}}
{{localize "midgard5.resistanceMind"}}{{data.calc.stats.resistanceMind.value}}
{{localize "midgard5.resistanceBody"}}{{data.calc.stats.resistanceBody.value}}
- - - - - - - - - - - - - - - - {{#each data.calc.gear.armor as |item itemId|}} - - - - - - - - - - - {{/each}} - -
{{localize "TYPES.Item.armor"}}{{localize "midgard5.actor-lp-short"}}{{localize "midgard5.actor-ap-short"}}{{localize "midgard5.attackBonus-short"}}{{localize "midgard5.defenseBonus-short"}}BGw
- {{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"}}
\ No newline at end of file diff --git a/templates/sheets/character/main.hbs b/templates/sheets/character/main.hbs index ecc0c87..7ca7632 100644 --- a/templates/sheets/character/main.hbs +++ b/templates/sheets/character/main.hbs @@ -118,11 +118,12 @@ {{ localize "midgard5.base_values" }} {{ localize "midgard5.skills" }} {{ localize "midgard5.gear" }} + {{ localize "midgard5.combat" }} {{#if actor.system.info.magicUsing }} {{ localize "midgard5.spells" }} {{/if}} - {{ localize "midgard5.kampfkuenste" }} {{ localize "midgard5.effects" }} + {{ localize "midgard5.description" }}
@@ -139,16 +140,20 @@ {{> "systems/midgard5/templates/sheets/character/gear.hbs"}}
-
- {{> "systems/midgard5/templates/sheets/character/spells.hbs"}} +
+ {{> "systems/midgard5/templates/sheets/character/combat.hbs"}}
-
- {{> "systems/midgard5/templates/sheets/character/kampfkuenste.hbs"}} +
+ {{> "systems/midgard5/templates/sheets/character/spells.hbs"}}
{{> "systems/midgard5/templates/sheets/character/effects.hbs"}}
+
+ {{> "systems/midgard5/templates/sheets/character/description.hbs"}} +
+ \ No newline at end of file diff --git a/templates/sheets/character/skills.hbs b/templates/sheets/character/skills.hbs index 9ca501e..b666208 100644 --- a/templates/sheets/character/skills.hbs +++ b/templates/sheets/character/skills.hbs @@ -1,153 +1,171 @@ - - - - - - - - - - - - - - {{#each data.calc.skills.general as |skill skillId|}} - - - - - - - - - - {{/each}} - -
{{localize "midgard5.learned-skill"}}{{localize "midgard5.fw"}}{{localize "midgard5.bonus"}}{{localize "midgard5.ew"}}{{localize "midgard5.pp-short"}}
{{skill.label}}{{skill.fw}}{{skill.calc.bonus}}{{skill.calc.ew}}{{skill.pp}}
+
+
- - - - - - - - - - - - - - {{#each data.calc.skills.language as |skill skillId|}} - - - - - - - - - - {{/each}} - -
{{localize "midgard5.language"}}{{localize "midgard5.fw"}}{{localize "midgard5.bonus"}}{{localize "midgard5.ew"}}{{localize "midgard5.pp-short"}}
{{skill.label}}{{skill.fw}}{{skill.calc.bonus}}{{skill.calc.ew}}{{skill.pp}}
+
+
{{localize "midgard5.innate-abilities"}}
+ + + + + + + + + + + + + {{#each data.calc.skills.innate as |skill skillId|}} + + + + + + + + + {{/each}} + + + + + + + + + + + + + + + + + +
{{localize "midgard5.innate-ability"}}{{localize "midgard5.fw"}}{{localize "midgard5.bonus"}}{{localize "midgard5.ew"}}
{{skill.label}}{{skill.fw}}{{skill.calc.bonus}}{{skill.calc.ew}}
{{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}}
+
- - - - - - - - - - - - - {{#each data.calc.skills.innate as |skill skillId|}} - - - - - - - - - {{/each}} - - - - - - - - +
+
{{localize "midgard5.learned-skills"}}
+
{{localize "midgard5.innate-ability"}}{{localize "midgard5.fw"}}{{localize "midgard5.bonus"}}{{localize "midgard5.ew"}}
{{skill.label}}{{skill.fw}}{{skill.calc.bonus}}{{skill.calc.ew}}
{{localize "midgard5.perception"}}{{data.calc.stats.perceptionFW}}{{data.calc.stats.perception.value}}{{add data.calc.stats.perception.value data.calc.stats.perceptionFW}}
+ + + + + + + + + + + + + {{#each data.calc.skills.general as |skill skillId|}} + + + + + + + + + + {{/each}} + +
{{localize "midgard5.learned-skill"}}{{localize "midgard5.fw"}}{{localize "midgard5.bonus"}}{{localize "midgard5.ew"}}{{localize "midgard5.pp-short"}}
{{skill.label}}{{skill.fw}}{{skill.calc.bonus}}{{skill.calc.ew}}
+
- - {{localize "midgard5.drinking"}} - {{data.calc.stats.drinkingFW}} - {{data.calc.stats.drinking.value}} - {{add data.calc.stats.drinking.value data.calc.stats.drinkingFW}} - - - - - +
+
{{localize "midgard5.weapon-skills"}}
+ + + + + + + + + + + + + + {{#each data.calc.skills.combat as |skill skillId|}} + + + + + + + + + + {{/each}} + +
{{localize "midgard5.weapon-skill"}}{{localize "midgard5.fw"}}{{localize "midgard5.bonus"}}{{localize "midgard5.ew"}}{{localize "midgard5.pp-short"}}
{{skill.label}}{{skill.fw}}{{skill.calc.bonus}}{{skill.calc.ew}}{{skill.pp}}
+
- - - - - - - - - - - - - - {{#each data.calc.skills.combat as |skill skillId|}} - - - - - - - - - - {{/each}} - -
{{localize "midgard5.weapon-skill"}}{{localize "midgard5.fw"}}{{localize "midgard5.bonus"}}{{localize "midgard5.ew"}}{{localize "midgard5.pp-short"}}
{{skill.label}}{{skill.fw}}{{skill.calc.bonus}}{{skill.calc.ew}}{{skill.pp}}
+
+
{{localize "midgard5.languages"}}
+ + + + + + + + + + + + + + {{#each data.calc.skills.language as |skill skillId|}} + + + + + + + + + + {{/each}} + +
{{localize "midgard5.language"}}{{localize "midgard5.fw"}}{{localize "midgard5.bonus"}}{{localize "midgard5.ew"}}{{localize "midgard5.pp-short"}}
{{skill.label}}{{skill.fw}}{{skill.calc.bonus}}{{skill.calc.ew}}{{skill.pp}}
+
+
- - - - - - - - - - - - - - - {{#each data.skills.general as |skill key|}} - {{#unless (isSkillInList (localizeMidgard key) ../actor.system.calc.skills.general) }} - - - - - - - - - - - {{/unless}} - {{/each}} - -
{{localize "midgard5.unlearned-skill"}}{{localize "midgard5.fw"}}{{localize "midgard5.bonus"}}{{localize "midgard5.ew"}}{{localize "midgard5.pp-short"}}
{{localizeMidgard key}}{{skill.fw}}{{skillBonus ../actor._id skill}}{{skillEw ../actor._id skill}}
\ No newline at end of file +
+ +
+
{{localize "midgard5.unlearned-skills"}}
+ + + + + + + + + + + + + {{#each data.skills.general as |skill key|}} + {{#unless (isSkillInList (localizeMidgard key) ../actor.system.calc.skills.general) }} + + + + + + + + + {{/unless}} + {{/each}} + +
{{localize "midgard5.unlearned-skill"}}{{localize "midgard5.fw"}}{{localize "midgard5.bonus"}}{{localize "midgard5.ew"}}
{{localizeMidgard key}}{{skill.fw}}{{skillBonus ../actor._id skill}}{{skillEw ../actor._id skill}}
+
+
+
\ No newline at end of file diff --git a/templates/sheets/item/armor.hbs b/templates/sheets/item/armor.hbs index 1c1c8ea..090136f 100644 --- a/templates/sheets/item/armor.hbs +++ b/templates/sheets/item/armor.hbs @@ -49,6 +49,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"}}