shoehive
Version:
WebSocket-based multiplayer game framework for real-time, event-driven gameplay
23 lines (22 loc) • 1.04 kB
TypeScript
import { EventBus } from "../events/EventBus";
import { Table } from "./Table";
/**
* Factory class for creating tables.
* This class is responsible for creating new tables and emitting events when tables are created.
*
* It is exposed as part of the createGameServer function in the index.ts file, and can be used to create new tables.
* Client functionality for this is already natively handled by the `lobby` command namespace. ([Client Commands](/api/generated/#client_command_types))
*/
export declare class TableFactory {
private eventBus;
constructor(eventBus: EventBus);
/**
* Creates a new table with the specified number of seats and maximum seats per player.
* Emits a TABLE_EVENTS.CREATED event when the table is created.
*
* @param totalSeats - The total number of seats at the table.
* @param maxSeatsPerPlayer - The maximum number of seats a player can occupy.
* @returns The newly created table.
*/
createTable(totalSeats: number, maxSeatsPerPlayer: number): Table;
}