UNPKG

@firestone-hs/replay-parser

Version:

This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 8.2.9.

23 lines 3.76 kB
import { Map } from 'immutable'; export class Game { constructor() { this.players = []; this.turns = Map(); this.entitiesBeforeMulligan = Map(); } static createGame(baseGame, newAttributes) { return Object.assign(new Game(), baseGame, newAttributes); } update(base) { return Object.assign(new Game(), this, base); } getLatestParsedState() { if (this.turns.size === 0 || this.turns.last().actions.length === 0) { return this.entitiesBeforeMulligan; } const lastTurn = this.turns.get(this.turns.size - 1); // // console.log('last turn', lastTurn, this.turns.toJS()); return lastTurn.actions[lastTurn.actions.length - 1].entities; } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2FtZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3JlcGxheS1wYXJzZXIvc3JjL2xpYi9tb2RlbHMvZ2FtZS9nYW1lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFLaEMsTUFBTSxPQUFPLElBQUk7SUFXaEI7UUFWUyxZQUFPLEdBQTRCLEVBQUUsQ0FBQztRQUN0QyxVQUFLLEdBQXNCLEdBQUcsRUFBZ0IsQ0FBQztRQU8vQywyQkFBc0IsR0FBd0IsR0FBRyxFQUFFLENBQUM7SUFFdEMsQ0FBQztJQUVqQixNQUFNLENBQUMsVUFBVSxDQUFDLFFBQWMsRUFBRSxhQUFtQjtRQUMzRCxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxJQUFJLEVBQUUsRUFBRSxRQUFRLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVNLE1BQU0sQ0FBQyxJQUFVO1FBQ3ZCLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRU0sb0JBQW9CO1FBQzFCLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUMsT0FBTyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDcEUsT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQUM7U0FDbkM7UUFDRCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNyRCw0REFBNEQ7UUFDNUQsT0FBTyxRQUFRLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQztJQUMvRCxDQUFDO0NBQ0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNYXAgfSBmcm9tICdpbW11dGFibGUnO1xyXG5pbXBvcnQgeyBFbnRpdHkgfSBmcm9tICcuL2VudGl0eSc7XHJcbmltcG9ydCB7IFBsYXllckVudGl0eSB9IGZyb20gJy4vcGxheWVyLWVudGl0eSc7XHJcbmltcG9ydCB7IFR1cm4gfSBmcm9tICcuL3R1cm4nO1xyXG5cclxuZXhwb3J0IGNsYXNzIEdhbWUge1xyXG5cdHJlYWRvbmx5IHBsYXllcnM6IHJlYWRvbmx5IFBsYXllckVudGl0eVtdID0gW107XHJcblx0cmVhZG9ubHkgdHVybnM6IE1hcDxudW1iZXIsIFR1cm4+ID0gTWFwPG51bWJlciwgVHVybj4oKTtcclxuXHRyZWFkb25seSBmdWxsU3RvcnlSYXc6IHN0cmluZztcclxuXHRyZWFkb25seSBidWlsZE51bWJlcjogbnVtYmVyO1xyXG5cdHJlYWRvbmx5IGdhbWVUeXBlOiBudW1iZXI7XHJcblx0cmVhZG9ubHkgZm9ybWF0VHlwZTogbnVtYmVyO1xyXG5cdHJlYWRvbmx5IHNjZW5hcmlvSUQ6IG51bWJlcjtcclxuXHJcblx0cmVhZG9ubHkgZW50aXRpZXNCZWZvcmVNdWxsaWdhbjogTWFwPG51bWJlciwgRW50aXR5PiA9IE1hcCgpO1xyXG5cclxuXHRwcml2YXRlIGNvbnN0cnVjdG9yKCkge31cclxuXHJcblx0cHVibGljIHN0YXRpYyBjcmVhdGVHYW1lKGJhc2VHYW1lOiBHYW1lLCBuZXdBdHRyaWJ1dGVzPzogYW55KTogR2FtZSB7XHJcblx0XHRyZXR1cm4gT2JqZWN0LmFzc2lnbihuZXcgR2FtZSgpLCBiYXNlR2FtZSwgbmV3QXR0cmlidXRlcyk7XHJcblx0fVxyXG5cclxuXHRwdWJsaWMgdXBkYXRlKGJhc2U6IEdhbWUpOiBHYW1lIHtcclxuXHRcdHJldHVybiBPYmplY3QuYXNzaWduKG5ldyBHYW1lKCksIHRoaXMsIGJhc2UpO1xyXG5cdH1cclxuXHJcblx0cHVibGljIGdldExhdGVzdFBhcnNlZFN0YXRlKCk6IE1hcDxudW1iZXIsIEVudGl0eT4ge1xyXG5cdFx0aWYgKHRoaXMudHVybnMuc2l6ZSA9PT0gMCB8fCB0aGlzLnR1cm5zLmxhc3QoKS5hY3Rpb25zLmxlbmd0aCA9PT0gMCkge1xyXG5cdFx0XHRyZXR1cm4gdGhpcy5lbnRpdGllc0JlZm9yZU11bGxpZ2FuO1xyXG5cdFx0fVxyXG5cdFx0Y29uc3QgbGFzdFR1cm4gPSB0aGlzLnR1cm5zLmdldCh0aGlzLnR1cm5zLnNpemUgLSAxKTtcclxuXHRcdC8vIC8vIGNvbnNvbGUubG9nKCdsYXN0IHR1cm4nLCBsYXN0VHVybiwgdGhpcy50dXJucy50b0pTKCkpO1xyXG5cdFx0cmV0dXJuIGxhc3RUdXJuLmFjdGlvbnNbbGFzdFR1cm4uYWN0aW9ucy5sZW5ndGggLSAxXS5lbnRpdGllcztcclxuXHR9XHJcbn1cclxuIl19