import { PlayerAI } from "./game/entities/player/PlayerAI"; import { PlayerHuman } from "./game/entities/player/PlayerHuman"; import {LoggingService} from "./common/LoggingService"; import { GameSession } from "./game/GameSession"; console.log('process.arg :>> ', process.argv); // const game = new DominoesGame([ // new PlayerAI("1", "Player 1"), // new PlayerAI("2", "Player 2"), // new PlayerAI("3", "Player 3"), // new PlayerAI("4", "Player 4"), // ]); // const logger = new LoggingService(); // async function wait(ms: number) {s // return new Promise(resolve => setTimeout(resolve, ms)); // } async function playSolo(seed?: string) { const session = new GameSession(new PlayerHuman( "Jose"), "Test Game"); console.log(`Session (${session.id}) created by: ${session.creator.name}`); setTimeout(() => session.addPlayer(new PlayerAI("AI 2")), 1000); setTimeout(() => session.addPlayer(new PlayerAI("AI 3")), 2000); setTimeout(() => session.addPlayer(new PlayerAI("AI 4")), 3000); session.start(seed); } async function playHumans(seed?: string) { const session = new GameSession(new PlayerHuman("Jose"), "Test Game"); session.addPlayer(new PlayerHuman("Pepe")); session.addPlayer(new PlayerHuman("Juan")); session.addPlayer(new PlayerHuman("Luis")); session.start(seed); } async function playAIs(seed?: string) { const session = new GameSession(new PlayerAI("AI 1"), "Test Game"); session.addPlayer(new PlayerAI("AI 2")); session.addPlayer(new PlayerAI("AI 3")); session.addPlayer(new PlayerAI("AI 4")); session.start(seed); } async function playTeams(seed?: string) { const session = new GameSession(new PlayerHuman("Jose"), "Test Game"); session.addPlayer(new PlayerAI("AI 1")); session.addPlayer(new PlayerHuman("Juan")); session.addPlayer(new PlayerAI("AI 2")); session.start(seed); } const blockedSeed = '1719236688462-ytwrwzfzoi-01aad98f'; const seed2 = '1719237652000-09vddd3hsth7-adbc1842'; playSolo('1719248315701-itmcciws3oi-e5dd2024');