diff --git a/system/scripts/items/item-sheet.js b/system/scripts/items/item-sheet.js
index e565bb8..d8471d9 100644
--- a/system/scripts/items/item-sheet.js
+++ b/system/scripts/items/item-sheet.js
@@ -22,8 +22,9 @@ export class ItemSheetL5r5e extends ItemSheet {
sheetData.data.techniquesList = game.l5r5e.HelpersL5r5e.getTechniquesList();
// Prepare Properties (id => object)
- if (sheetData.data.properties) {
- sheetData.data.propertiesList = sheetData.data.properties.map((e) => game.items.get(e));
+ sheetData.data.propertiesList = [];
+ if (Array.isArray(sheetData.data.properties)) {
+ sheetData.data.propertiesList = sheetData.data.properties.map((e) => game.items.get(e.id));
}
return sheetData;
@@ -89,23 +90,23 @@ export class ItemSheetL5r5e extends ItemSheet {
}
// Ok add item
- this._addProperty(item.id);
+ this._addProperty(item);
}
/**
* Add a property to the current item
* @private
*/
- _addProperty(id) {
+ _addProperty(item) {
let props = this.entity.data.data.properties || [];
if (!Array.isArray(props)) {
props = [];
}
- if (props.includes(id)) {
+ if (props.findIndex((p) => p.id === item.id) !== -1) {
return;
}
- props.push(id);
+ props.push({ id: item.id, name: item.name });
this.entity.update({
data: {
@@ -120,12 +121,12 @@ export class ItemSheetL5r5e extends ItemSheet {
*/
_deleteProperty(id) {
let props = this.entity.data.data.properties || [];
- if (!Array.isArray(props) || !props.includes(id)) {
+ if (!Array.isArray(props) || props.findIndex((p) => p.id === id) === -1) {
return;
}
this.entity.update({
data: {
- properties: props.filter((e) => e !== id),
+ properties: props.filter((p) => p.id !== id),
},
});
}
diff --git a/system/templates/items/armor/armor-entry.html b/system/templates/items/armor/armor-entry.html
index 0ad35ed..67438a3 100644
--- a/system/templates/items/armor/armor-entry.html
+++ b/system/templates/items/armor/armor-entry.html
@@ -8,5 +8,10 @@
- {{{ item.data.properties }}}
+
+ {{#each item.data.properties as |property id|}}
+ {{{ property.name }}}
+ {{/each}}
+
+ {{{ item.data.description }}}
\ No newline at end of file
diff --git a/system/templates/items/armor/armor-sheet.html b/system/templates/items/armor/armor-sheet.html
index 4258fa9..5099b4b 100644
--- a/system/templates/items/armor/armor-sheet.html
+++ b/system/templates/items/armor/armor-sheet.html
@@ -56,7 +56,7 @@
diff --git a/system/templates/items/item/item-entry.html b/system/templates/items/item/item-entry.html
index bf5c588..4a3e7bf 100644
--- a/system/templates/items/item/item-entry.html
+++ b/system/templates/items/item/item-entry.html
@@ -5,6 +5,10 @@
+
+ {{#each item.data.properties as |property id|}}
+ {{{ property.name }}}
+ {{/each}}
+
{{{ item.data.description }}}
- {{{ item.data.properties }}}
\ No newline at end of file
diff --git a/system/templates/items/item/item-sheet.html b/system/templates/items/item/item-sheet.html
index 3a5f90e..f572578 100644
--- a/system/templates/items/item/item-sheet.html
+++ b/system/templates/items/item/item-sheet.html
@@ -33,28 +33,18 @@
{{!-- Sheet Tab Navigation --}}
{{!-- Description Tab --}}
{{editor content=data.description target="data.description" button=true owner=owner editable=editable}}
- {{!-- Attributes Tab --}}
-
-
-
-
-
-
+ {{!-- properties Tab --}}
+
+
diff --git a/system/templates/items/weapon/weapon-entry.html b/system/templates/items/weapon/weapon-entry.html
index 765eed3..3f2b67a 100644
--- a/system/templates/items/weapon/weapon-entry.html
+++ b/system/templates/items/weapon/weapon-entry.html
@@ -7,5 +7,10 @@
- {{{ item.data.properties }}}
+
+ {{#each item.data.properties as |property id|}}
+ {{{ property.name }}}
+ {{/each}}
+
+ {{{ item.data.description }}}
\ No newline at end of file