From 7053c1b733f788ee5c9b490c9b9ed1a3454e8f6d Mon Sep 17 00:00:00 2001 From: Andrey Date: Sun, 31 May 2026 16:02:11 +0500 Subject: [PATCH] chore: typization metadata --- src/interfaces/core/engine/classes-engine.interfaces.ts | 2 +- .../entities/world-objects/base-world-objects.interfaces.ts | 4 ++-- src/world/map.ts | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/interfaces/core/engine/classes-engine.interfaces.ts b/src/interfaces/core/engine/classes-engine.interfaces.ts index 9a8f250..b4156cf 100644 --- a/src/interfaces/core/engine/classes-engine.interfaces.ts +++ b/src/interfaces/core/engine/classes-engine.interfaces.ts @@ -255,7 +255,7 @@ export interface IGameMap { * @param metadata - Object metadata * @returns { GameObject } - GameObject, also generates object error events, if need */ - readonly createObject: (obj: IGameObject, metadata?: T) => GameObject; + readonly createObject: (obj: IGameObject, metadata?: T) => GameObject; /** * Delete one object by id diff --git a/src/interfaces/entities/world-objects/base-world-objects.interfaces.ts b/src/interfaces/entities/world-objects/base-world-objects.interfaces.ts index 114237d..904e6cb 100644 --- a/src/interfaces/entities/world-objects/base-world-objects.interfaces.ts +++ b/src/interfaces/entities/world-objects/base-world-objects.interfaces.ts @@ -36,7 +36,7 @@ export interface IChest { readonly items: IItem[] } -export interface IGameObject extends Pick { +export interface IGameObject extends Pick { /** * Type of GameObject */ @@ -45,7 +45,7 @@ export interface IGameObject extends Pick { /** * Any object metadata for create. See CreateItemMetadata, CreateTowerMetadata, etc. */ - readonly metadata?: any; + readonly metadata?: T; /** * Internal object id. Will be generated automatic diff --git a/src/world/map.ts b/src/world/map.ts index 055ccf5..b94b847 100644 --- a/src/world/map.ts +++ b/src/world/map.ts @@ -276,7 +276,7 @@ export class GameMap implements Map { } } - public createObject(obj: IGameObject, metadata?: T) { + public createObject(obj: IGameObject, metadata?: T) { const object = new GameObject(obj, this.manager, this, metadata ?? obj.metadata) this.objects.set(object.id, object)