156 lines
3.9 KiB
TypeScript
156 lines
3.9 KiB
TypeScript
import { Tile } from '../Tile'
|
|
import type { GameDto, Movement } from '../../common/interfaces'
|
|
import type { Game } from '../Game'
|
|
import { wait } from '../../common/helpers'
|
|
|
|
export const playerState = {
|
|
id: '6fddcf4f-eaa9-4c87-a599-2af944477091',
|
|
name: 'arhuako',
|
|
score: 0,
|
|
hand: [
|
|
{
|
|
id: '20ce403a-dccc-472e-94b2-90ba8feac538',
|
|
pips: [4, 5],
|
|
flipped: false
|
|
},
|
|
{
|
|
id: 'a0cd790b-34bb-40fe-9b25-8dc590729e15',
|
|
pips: [1, 2],
|
|
flipped: false
|
|
},
|
|
{
|
|
id: 'f516ef48-99f2-4add-96eb-877f03bf0cb1',
|
|
pips: [6, 6],
|
|
flipped: false
|
|
},
|
|
{
|
|
id: 'dd91e12d-4be1-40e2-b1b1-128a0bc3dad7',
|
|
pips: [0, 1],
|
|
flipped: false
|
|
},
|
|
{
|
|
id: 'c472f1e8-14e4-4a5b-bef0-df0e78f01c39',
|
|
pips: [1, 5],
|
|
flipped: false
|
|
},
|
|
{
|
|
id: 'c28c55e1-820f-43b1-9366-d4b20d7f62a6',
|
|
pips: [1, 3],
|
|
flipped: false
|
|
},
|
|
{
|
|
id: '6d812874-8610-43e3-8331-6b25584e759e',
|
|
pips: [0, 5],
|
|
flipped: false
|
|
}
|
|
]
|
|
}
|
|
|
|
export const gameState_0: GameDto = {
|
|
id: 'f043051e-6850-444f-857c-b889220fc187',
|
|
lastMove: {
|
|
tile: {
|
|
id: 'c3f6b525-2e6f-455a-b355-9b8c8f5075f0',
|
|
pips: [6, 6]
|
|
},
|
|
type: 'both',
|
|
playerId: '137b68a6-f26c-43f5-badf-e5ae406fd059',
|
|
id: 'c71943a5-1fef-4418-bd66-39767ac36817'
|
|
},
|
|
gameInProgress: true,
|
|
winner: null,
|
|
tileSelectionPhase: false,
|
|
gameBlocked: false,
|
|
gameTied: false,
|
|
gameId: 'd76c4f98-1f26-4390-9e8d-2d727876b710',
|
|
tilesInBoneyard: [],
|
|
players: [
|
|
{
|
|
id: 'f639f263-e415-428c-bdd2-113f00f3c392',
|
|
name: 'arhuako',
|
|
score: 0,
|
|
hand: [
|
|
'51399f92-7555-4ffc-91ed-f6b5b9041a54',
|
|
'e9c40c13-c821-4bad-810c-12e7cb79b47d',
|
|
'95e8412b-1938-48d5-9647-cb8617659db0',
|
|
'54948d0a-b7a4-416c-a3f7-6602cfff1851',
|
|
'a40e6a76-c2e1-4692-82b3-603a4412a6a9',
|
|
'cb7827df-fe19-4c28-a786-a47e07c2d368',
|
|
'6d5a31d3-b734-4312-b8fd-1b5efa3fc258'
|
|
]
|
|
},
|
|
{
|
|
id: '77b2c512-d9e5-45f3-850f-99baab1befdf',
|
|
name: 'Alice (AI)',
|
|
score: 0,
|
|
hand: [
|
|
'066fd011-cabe-483b-a985-c649f4908356',
|
|
'01434825-eb3c-4baf-8ad1-cc055f982e75',
|
|
'c085c90f-f69c-4f83-acb6-87c576927366',
|
|
'1b5d5b46-a41c-4e69-9a02-efff9adbc201',
|
|
'74833dcc-1526-4c6c-a64c-a7807e647e77',
|
|
'fb7e6976-67a9-496f-9758-0b172aa069dd',
|
|
'58b612f0-cf40-4b5f-ba05-8a089f19b43a'
|
|
]
|
|
},
|
|
{
|
|
id: '137b68a6-f26c-43f5-badf-e5ae406fd059',
|
|
name: 'Bob (AI)',
|
|
score: 0,
|
|
hand: [
|
|
'9d5dcb97-7478-4030-a0f6-4e7080a5b8e0',
|
|
'a07e1aaf-e651-4678-a61c-414f4324d8e8',
|
|
'4db7aebb-ab4b-4709-b208-b39176e8d70a',
|
|
'd1733f9c-86a6-4597-b1ff-ec44e9a375d1',
|
|
'cf6e2c1c-57f8-4342-8ff4-8046971f99db',
|
|
'33cec060-7f40-4af9-9182-f98cbacbae10'
|
|
]
|
|
},
|
|
{
|
|
id: '188c1d69-8c5c-4fec-a08b-dc5fa09d49fd',
|
|
name: 'Charlie (AI)',
|
|
score: 0,
|
|
hand: [
|
|
'58433be6-e8d9-4ed2-bbdc-4328425a3687',
|
|
'3e24a6cd-02ea-436a-a3e4-41ae62c717d0',
|
|
'2a2723d1-6c46-4718-a1c2-fa8d2c148ac8',
|
|
'd521de5e-1db1-4a2e-971d-f91cc761342c',
|
|
'13d943d7-b694-4419-82f5-729117878d01',
|
|
'afcf2509-acfb-47ed-ade7-d08f1a20afd2',
|
|
'f50f3589-41ab-4d99-919e-c4c7a71ef5b0'
|
|
]
|
|
}
|
|
],
|
|
currentPlayer: {
|
|
id: '188c1d69-8c5c-4fec-a08b-dc5fa09d49fd',
|
|
name: 'arhuako'
|
|
},
|
|
tilesInBoard: [
|
|
{
|
|
id: 'c3f6b525-2e6f-455a-b355-9b8c8f5075f0',
|
|
pips: [6, 6]
|
|
}
|
|
],
|
|
boardFreeEnds: [6, 6]
|
|
}
|
|
|
|
export function getMovement(
|
|
pips: [number, number] = [6, 6],
|
|
side: string = 'left',
|
|
scale: number = 1
|
|
): Movement {
|
|
const tile = new Tile('string', undefined, pips, scale)
|
|
tile.orientation = 'north'
|
|
return {
|
|
id: 'movemnetid',
|
|
type: side,
|
|
tile,
|
|
playerId: 'string'
|
|
}
|
|
}
|
|
|
|
export async function mockMove(game: Game, pips: [number, number], side: string = 'left') {
|
|
await wait(1000)
|
|
game.board.updateBoard(getMovement(pips, side, game.board.scale))
|
|
}
|