diff --git a/module/item/class-sheet.js b/module/item/class-sheet.js index a1cdfa0..8a17b5f 100644 --- a/module/item/class-sheet.js +++ b/module/item/class-sheet.js @@ -29,6 +29,9 @@ export class MothershipClassSheet extends MothershipItemSheet { if (typeof data.system.base_adjustment.skills_granted == 'undefined'){ data.system.base_adjustment.skills_granted=[]; } + if (typeof data.system.selected_adjustment.choose_stat.stats == 'undefined'){ + data.system.selected_adjustment.choose_stat.stats=[]; + } return data; } @@ -54,7 +57,7 @@ export class MothershipClassSheet extends MothershipItemSheet { super.activateListeners(html); // Delete Inventory Item - html.find('.item-delete').click(ev => { + html.find('.skill-delete').click(ev => { const li = $(ev.currentTarget).parents(".item"); let skills = this.object.system.base_adjustment.skills_granted.filter(function( obj ) { @@ -64,8 +67,69 @@ export class MothershipClassSheet extends MothershipItemSheet { return this.render(false); }); + html.find('.stat-delete').click(ev => { + const li = $(ev.currentTarget).parents(".item"); + + let stats = this.object.system.selected_adjustment.choose_stat.stats.filter(function( obj ) { + return obj !== li.data("itemId"); + }); + this.object.update({"system.selected_adjustment.choose_stat.stats":stats}); + return this.render(false); + }); + + html.find('.stat-create').click(this._onStatCreate.bind(this)); } + + + /** + * Handle creating a new stat for the class selected adjustment + * @param {Event} event The originating click event + * @private + */ + _onStatCreate(event) { + event.preventDefault(); + + let d = new Dialog({ + title: "Select Stat", + content: `