@real_one_chess_king/game-logic
Version:
R.O.C.K. chess game logic
15 lines • 577 B
JavaScript
import { PieceType } from "./piece.constants";
import { Pawn, Bishop, Knight, Rook, Queen, King } from "./pieces";
export function buildPieceByMeta(meta) {
const c = mapper[meta.type];
return new c(meta.color, meta.movementRulesMeta.map((ruleMetaId) => ruleMetaId), meta.postMovementRulesMeta?.map((ruleMetaId) => ruleMetaId));
}
const mapper = {
[PieceType.Pawn]: Pawn,
[PieceType.Bishop]: Bishop,
[PieceType.Knight]: Knight,
[PieceType.Rook]: Rook,
[PieceType.Queen]: Queen,
[PieceType.King]: King,
};
//# sourceMappingURL=piece-builder.js.map