@firestone-hs/replay-parser
Version:
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 8.2.9.
32 lines • 5.25 kB
JavaScript
import { ActionHelper } from '../../services/action/action-helper';
import { Action } from './action';
export class SummonAction extends Action {
constructor(allCards) {
super(allCards);
}
static create(newAction, allCards) {
return Object.assign(new SummonAction(allCards), newAction);
}
update(entities) {
return Object.assign(new SummonAction(this.allCards), this, {
entities,
});
}
enrichWithText(allEntitiesSoFar) {
const originCardId = ActionHelper.getCardId(this.entities, this.originId, allEntitiesSoFar);
// // console.log('enriching summon', this.originId, originCardId);
const originCardName = this.allCards.getCard(originCardId).name;
const summonCardNames = this.entityIds
.map(entityId => ActionHelper.getCardId(this.entities, entityId, allEntitiesSoFar))
.map(cardId => this.allCards.getCard(cardId).name)
.join(', ');
const textRaw = `\t${originCardName} summons ${summonCardNames}`;
return Object.assign(new SummonAction(this.allCards), this, {
textRaw,
});
}
getInstance() {
return new SummonAction(this.allCards);
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VtbW9uLWFjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3JlcGxheS1wYXJzZXIvc3JjL2xpYi9tb2RlbHMvYWN0aW9uL3N1bW1vbi1hY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBR25FLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFbEMsTUFBTSxPQUFPLFlBQWEsU0FBUSxNQUFNO0lBR3ZDLFlBQVksUUFBeUI7UUFDcEMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2pCLENBQUM7SUFFTSxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxRQUF5QjtRQUN4RCxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxZQUFZLENBQUMsUUFBUSxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVNLE1BQU0sQ0FBQyxRQUE2QjtRQUMxQyxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxZQUFZLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLElBQUksRUFBRTtZQUMzRCxRQUFRO1NBQ1IsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUVNLGNBQWMsQ0FBQyxnQkFBcUM7UUFDMUQsTUFBTSxZQUFZLEdBQUcsWUFBWSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQUM1RixtRUFBbUU7UUFDbkUsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQ2hFLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxTQUFTO2FBQ3BDLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxRQUFRLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQzthQUNsRixHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUM7YUFDakQsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2IsTUFBTSxPQUFPLEdBQUcsS0FBSyxjQUFjLFlBQVksZUFBZSxFQUFFLENBQUM7UUFDakUsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksWUFBWSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxJQUFJLEVBQUU7WUFDM0QsT0FBTztTQUNQLENBQUMsQ0FBQztJQUNKLENBQUM7SUFFUyxXQUFXO1FBQ3BCLE9BQU8sSUFBSSxZQUFZLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7Q0FDRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1hcCB9IGZyb20gJ2ltbXV0YWJsZSc7XHJcbmltcG9ydCB7IEFjdGlvbkhlbHBlciB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2FjdGlvbi9hY3Rpb24taGVscGVyJztcclxuaW1wb3J0IHsgQWxsQ2FyZHNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvYWxsLWNhcmRzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBFbnRpdHkgfSBmcm9tICcuLi9nYW1lL2VudGl0eSc7XHJcbmltcG9ydCB7IEFjdGlvbiB9IGZyb20gJy4vYWN0aW9uJztcclxuXHJcbmV4cG9ydCBjbGFzcyBTdW1tb25BY3Rpb24gZXh0ZW5kcyBBY3Rpb24ge1xyXG5cdHJlYWRvbmx5IGVudGl0eUlkczogcmVhZG9ubHkgbnVtYmVyW107XHJcblxyXG5cdGNvbnN0cnVjdG9yKGFsbENhcmRzOiBBbGxDYXJkc1NlcnZpY2UpIHtcclxuXHRcdHN1cGVyKGFsbENhcmRzKTtcclxuXHR9XHJcblxyXG5cdHB1YmxpYyBzdGF0aWMgY3JlYXRlKG5ld0FjdGlvbiwgYWxsQ2FyZHM6IEFsbENhcmRzU2VydmljZSk6IFN1bW1vbkFjdGlvbiB7XHJcblx0XHRyZXR1cm4gT2JqZWN0LmFzc2lnbihuZXcgU3VtbW9uQWN0aW9uKGFsbENhcmRzKSwgbmV3QWN0aW9uKTtcclxuXHR9XHJcblxyXG5cdHB1YmxpYyB1cGRhdGUoZW50aXRpZXM6IE1hcDxudW1iZXIsIEVudGl0eT4pOiBTdW1tb25BY3Rpb24ge1xyXG5cdFx0cmV0dXJuIE9iamVjdC5hc3NpZ24obmV3IFN1bW1vbkFjdGlvbih0aGlzLmFsbENhcmRzKSwgdGhpcywge1xyXG5cdFx0XHRlbnRpdGllcyxcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0cHVibGljIGVucmljaFdpdGhUZXh0KGFsbEVudGl0aWVzU29GYXI6IE1hcDxudW1iZXIsIEVudGl0eT4pOiBTdW1tb25BY3Rpb24ge1xyXG5cdFx0Y29uc3Qgb3JpZ2luQ2FyZElkID0gQWN0aW9uSGVscGVyLmdldENhcmRJZCh0aGlzLmVudGl0aWVzLCB0aGlzLm9yaWdpbklkLCBhbGxFbnRpdGllc1NvRmFyKTtcclxuXHRcdC8vIC8vIGNvbnNvbGUubG9nKCdlbnJpY2hpbmcgc3VtbW9uJywgdGhpcy5vcmlnaW5JZCwgb3JpZ2luQ2FyZElkKTtcclxuXHRcdGNvbnN0IG9yaWdpbkNhcmROYW1lID0gdGhpcy5hbGxDYXJkcy5nZXRDYXJkKG9yaWdpbkNhcmRJZCkubmFtZTtcclxuXHRcdGNvbnN0IHN1bW1vbkNhcmROYW1lcyA9IHRoaXMuZW50aXR5SWRzXHJcblx0XHRcdC5tYXAoZW50aXR5SWQgPT4gQWN0aW9uSGVscGVyLmdldENhcmRJZCh0aGlzLmVudGl0aWVzLCBlbnRpdHlJZCwgYWxsRW50aXRpZXNTb0ZhcikpXHJcblx0XHRcdC5tYXAoY2FyZElkID0+IHRoaXMuYWxsQ2FyZHMuZ2V0Q2FyZChjYXJkSWQpLm5hbWUpXHJcblx0XHRcdC5qb2luKCcsICcpO1xyXG5cdFx0Y29uc3QgdGV4dFJhdyA9IGBcXHQke29yaWdpbkNhcmROYW1lfSBzdW1tb25zICR7c3VtbW9uQ2FyZE5hbWVzfWA7XHJcblx0XHRyZXR1cm4gT2JqZWN0LmFzc2lnbihuZXcgU3VtbW9uQWN0aW9uKHRoaXMuYWxsQ2FyZHMpLCB0aGlzLCB7XHJcblx0XHRcdHRleHRSYXcsXHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdHByb3RlY3RlZCBnZXRJbnN0YW5jZSgpOiBBY3Rpb24ge1xyXG5cdFx0cmV0dXJuIG5ldyBTdW1tb25BY3Rpb24odGhpcy5hbGxDYXJkcyk7XHJcblx0fVxyXG59XHJcbiJdfQ==