From 11ad91f573a192cb85601386ee85545078016341 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20B=C3=B6ckelmann?= Date: Sat, 20 Apr 2024 17:12:03 +0200 Subject: [PATCH] Delete existing Items --- src/app/app.component.ts | 14 ++++++++++++++ src/app/project/game-model/GameModel.ts | 2 +- .../inventory-item-overview.component.ts | 6 +----- 3 files changed, 16 insertions(+), 6 deletions(-) diff --git a/src/app/app.component.ts b/src/app/app.component.ts index 5fc052b..6756854 100644 --- a/src/app/app.component.ts +++ b/src/app/app.component.ts @@ -29,6 +29,10 @@ import {TemplateTypeUtilities} from "./project/game-model/templates/TemplateType import {SimpleTemplateGamesystem} from "./project/game-model/templates/simpleGamesystem/SimpleTemplateGamesystem"; import {ItemSerializer} from "./project/serializer/ItemSerializer"; import {ItemParser} from "./project/parser/ItemParser"; +import { + InventoryItemOverviewComponent +} from "./side-overviews/inventory-item-overview/inventory-item-overview.component"; +import {Item} from "./project/game-model/inventory/Item"; @Component({ selector: 'app-root', @@ -43,6 +47,7 @@ export class AppComponent implements OnInit{ @ViewChild('scriptAccountOverview') scriptAccountOverview: ScriptAccountOverviewComponent | undefined @ViewChild('gamesystemOverview') gamesystemOverview: GamescriptOverviewComponent | undefined @ViewChild('characterOverview') characterOverview: CharacterOverviewComponent | undefined + @ViewChild('itemOverview') itemOverview: InventoryItemOverviewComponent | undefined gameModel: GameModel | undefined @@ -128,6 +133,8 @@ export class AppComponent implements OnInit{ this.gamesystemOverview!.refresh() } else if(affectedModelComponent instanceof Character) { this.gameModel!.removeCharacter(affectedModelComponent) + } else if(affectedModelComponent instanceof Item) { + this.gameModel!.removeItem(affectedModelComponent); } } }) @@ -208,6 +215,13 @@ export class AppComponent implements OnInit{ } else { console.log("[WARN] [App.component] ScriptAccountOverview is undefined") } + } else if(this.openContent == ModelComponentType.ITEM) { + if(this.itemOverview != undefined) { + console.log("Test") + return this.itemOverview.selectedItem; + } else { + console.log("[WARN] [App.component] ItemOverview is undefined") + } } return undefined; } diff --git a/src/app/project/game-model/GameModel.ts b/src/app/project/game-model/GameModel.ts index 30e8383..7610b19 100644 --- a/src/app/project/game-model/GameModel.ts +++ b/src/app/project/game-model/GameModel.ts @@ -166,7 +166,7 @@ export class GameModel { } removeItem(item: Item) { - this.inventoryItems = this.inventoryItems.filter(i => i.componentName === item.componentName) + this.inventoryItems = this.inventoryItems.filter(i => i.componentName !== item.componentName) } findGamesystem(gamesystemName: string) { diff --git a/src/app/side-overviews/inventory-item-overview/inventory-item-overview.component.ts b/src/app/side-overviews/inventory-item-overview/inventory-item-overview.component.ts index f1b2cf0..a1be4f7 100644 --- a/src/app/side-overviews/inventory-item-overview/inventory-item-overview.component.ts +++ b/src/app/side-overviews/inventory-item-overview/inventory-item-overview.component.ts @@ -25,10 +25,6 @@ export class InventoryItemOverviewComponent { selectItem(item: Item) { - if(this.selectedItem != undefined && this.selectedItem!.componentName === item.componentName) { - this.selectedItem = undefined - } else { - this.selectedItem = item - } + this.selectedItem = item } }