From 32927d56238b9662d84358138966f24e37a5b99d Mon Sep 17 00:00:00 2001 From: Pabloader Date: Sun, 3 May 2026 11:04:43 +0000 Subject: [PATCH] Make display public --- src/common/rpg/components/position.ts | 19 +++++++++++++++++++ src/common/rpg/systems/render/text.ts | 2 +- src/games/text-dungeon/index.ts | 4 ++++ 3 files changed, 24 insertions(+), 1 deletion(-) diff --git a/src/common/rpg/components/position.ts b/src/common/rpg/components/position.ts index f6bf8a5..60ae3a0 100644 --- a/src/common/rpg/components/position.ts +++ b/src/common/rpg/components/position.ts @@ -6,6 +6,25 @@ export class Position extends Component<{ x: number, y: number, z: number }> { constructor(x = 0, y = 0, z = 0) { super({ x, y, z }); } + + get x() { + return this.state.x; + } + get y() { + return this.state.y; + } + get z() { + return this.state.z; + } + set x(x: number) { + this.state.x = x; + } + set y(y: number) { + this.state.y = y; + } + set z(z: number) { + this.state.z = z; + } } export const getPosition = (entity?: Entity, key?: string) => entity?.get(Position, key)?.state; diff --git a/src/common/rpg/systems/render/text.ts b/src/common/rpg/systems/render/text.ts index 9a3acc0..b6c9efa 100644 --- a/src/common/rpg/systems/render/text.ts +++ b/src/common/rpg/systems/render/text.ts @@ -5,7 +5,7 @@ import { System, World } from "@common/rpg/core/world"; import { Resources } from "@common/rpg/utils/resources"; export class TextDisplaySystem extends System { - private readonly display: TextDisplay; + public readonly display: TextDisplay; constructor(display?: TextDisplay) { super(); diff --git a/src/games/text-dungeon/index.ts b/src/games/text-dungeon/index.ts index 731090f..fdfb3ac 100644 --- a/src/games/text-dungeon/index.ts +++ b/src/games/text-dungeon/index.ts @@ -10,6 +10,8 @@ import './assets/style.css'; import { Direction, getOppositeDirection, MAP_HEIGHT, MAP_WIDTH, MAP_X, MAP_Y, ROOM_AREA_HEIGHT, ROOM_AREA_WIDTH, ROOM_AREA_X, ROOM_AREA_Y } from './const'; import { getPossibleRoomsCount, getRoom, getRoomsCount, getRoomsForLayer, getMapRoomChar, Room, Door } from './room'; import { createPlayer, Player } from './player'; +import { resolveActions, resolveVariables } from '@common/rpg/utils/variables'; +import { createItems } from './item'; export default async function main() { @@ -168,6 +170,8 @@ export default async function main() { } } + createItems(world); + while (true) { const dt = await nextFrame();