diff --git a/Apps/HeroSummaryCardV1/content.hbs b/Apps/HeroSummaryCardV1/content.hbs
index ed99c46..9d43da0 100644
--- a/Apps/HeroSummaryCardV1/content.hbs
+++ b/Apps/HeroSummaryCardV1/content.hbs
@@ -45,14 +45,34 @@
{{#each weapons as | slot |}}
{{#if slot.empty}}
-
- | --- |
+
+ | {{ rc-i18n "RipCrypt.common.empty" }} |
|
|
|
{{else}}
-
+
+ | {{ slot.data.name }} |
+
+ {{#if slot.data.system.traitString}}
+ {{ slot.data.system.traitString }}
+ {{/if}}
+ {{#if slot.data.system.rangeString}}
+ {{ slot.data.system.rangeString }}
+ {{/if}}
+ |
+
+ {{ slot.data.system.wear.value }} / {{ slot.data.system.wear.max }}
+ |
+
+ {{ slot.data.system.damage }}
+ |
+
{{/if}}
{{/each}}
diff --git a/module/Apps/ActorSheets/HeroSummaryCardV1.mjs b/module/Apps/ActorSheets/HeroSummaryCardV1.mjs
index 0b54107..24e2054 100644
--- a/module/Apps/ActorSheets/HeroSummaryCardV1.mjs
+++ b/module/Apps/ActorSheets/HeroSummaryCardV1.mjs
@@ -102,11 +102,12 @@ export class HeroSummaryCardV1 extends GenericSheetMixin(HandlebarsApplicationMi
static async prepareWeapons(ctx) {
const limit = ctx.actor.system.limit.weapons;
+ const embedded = ctx.actor.itemTypes.weapon;
ctx.weapons = [];
for (let i = 0; i < limit; i++) {
ctx.weapons.push({
- data: null,
- empty: true,
+ data: embedded[i],
+ empty: embedded.at(i) === undefined,
index: i + 1,
class: i % 2 === 1 ? `row-alt` : ``,
});
diff --git a/module/data/Item/Weapon.mjs b/module/data/Item/Weapon.mjs
index fe8979a..2e42e35 100644
--- a/module/data/Item/Weapon.mjs
+++ b/module/data/Item/Weapon.mjs
@@ -42,4 +42,17 @@ export class WeaponData extends foundry.abstract.TypeDataModel {
prepareDerivedData() {
super.prepareDerivedData();
};
+
+ // #region Getters
+ get traitString() {
+ return [...this.traits].join(`, `);
+ }
+
+ get rangeString() {
+ if (this.range.short && this.range.long) {
+ return `${this.range.short} / ${this.range.long}`;
+ };
+ return String(this.range.short ?? this.range.long ?? ``);
+ }
+ // #endregion
};