@firestone-hs/replay-parser
Version:
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 8.2.9.
32 lines • 4.6 kB
JavaScript
import { ActionHelper } from '../../services/action/action-helper';
import { Action } from './action';
export class DamageAction extends Action {
constructor(allCards) {
super(allCards);
}
static create(newAction, allCards) {
return Object.assign(new DamageAction(allCards), newAction);
}
update(entities) {
return Object.assign(new DamageAction(this.allCards), this, {
entities,
});
}
enrichWithText(allEntitiesSoFar) {
const textRaw = '\t' +
this.damages
.map((amount, entityId) => {
const entityCardId = ActionHelper.getCardId(this.entities, entityId, allEntitiesSoFar);
const entityCard = this.allCards.getCard(entityCardId);
return `${entityCard.name} takes ${amount} damage`;
})
.join(', ');
return Object.assign(new DamageAction(this.allCards), this, {
textRaw,
});
}
getInstance() {
return new DamageAction(this.allCards);
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGFtYWdlLWFjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3JlcGxheS1wYXJzZXIvc3JjL2xpYi9tb2RlbHMvYWN0aW9uL2RhbWFnZS1hY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBR25FLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFbEMsTUFBTSxPQUFPLFlBQWEsU0FBUSxNQUFNO0lBQ3ZDLFlBQVksUUFBeUI7UUFDcEMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2pCLENBQUM7SUFFTSxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxRQUF5QjtRQUN4RCxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxZQUFZLENBQUMsUUFBUSxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVNLE1BQU0sQ0FBQyxRQUE2QjtRQUMxQyxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxZQUFZLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLElBQUksRUFBRTtZQUMzRCxRQUFRO1NBQ1IsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUVNLGNBQWMsQ0FBQyxnQkFBcUM7UUFDMUQsTUFBTSxPQUFPLEdBQ1osSUFBSTtZQUNKLElBQUksQ0FBQyxPQUFPO2lCQUNWLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsRUFBRTtnQkFDekIsTUFBTSxZQUFZLEdBQUcsWUFBWSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLFFBQVEsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO2dCQUN2RixNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztnQkFDdkQsT0FBTyxHQUFHLFVBQVUsQ0FBQyxJQUFJLFVBQVUsTUFBTSxTQUFTLENBQUM7WUFDcEQsQ0FBQyxDQUFDO2lCQUNELElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNkLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLFlBQVksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsSUFBSSxFQUFFO1lBQzNELE9BQU87U0FDUCxDQUFDLENBQUM7SUFDSixDQUFDO0lBRVMsV0FBVztRQUNwQixPQUFPLElBQUksWUFBWSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN4QyxDQUFDO0NBQ0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNYXAgfSBmcm9tICdpbW11dGFibGUnO1xyXG5pbXBvcnQgeyBBY3Rpb25IZWxwZXIgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9hY3Rpb24vYWN0aW9uLWhlbHBlcic7XHJcbmltcG9ydCB7IEFsbENhcmRzU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2FsbC1jYXJkcy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRW50aXR5IH0gZnJvbSAnLi4vZ2FtZS9lbnRpdHknO1xyXG5pbXBvcnQgeyBBY3Rpb24gfSBmcm9tICcuL2FjdGlvbic7XHJcblxyXG5leHBvcnQgY2xhc3MgRGFtYWdlQWN0aW9uIGV4dGVuZHMgQWN0aW9uIHtcclxuXHRjb25zdHJ1Y3RvcihhbGxDYXJkczogQWxsQ2FyZHNTZXJ2aWNlKSB7XHJcblx0XHRzdXBlcihhbGxDYXJkcyk7XHJcblx0fVxyXG5cclxuXHRwdWJsaWMgc3RhdGljIGNyZWF0ZShuZXdBY3Rpb24sIGFsbENhcmRzOiBBbGxDYXJkc1NlcnZpY2UpOiBEYW1hZ2VBY3Rpb24ge1xyXG5cdFx0cmV0dXJuIE9iamVjdC5hc3NpZ24obmV3IERhbWFnZUFjdGlvbihhbGxDYXJkcyksIG5ld0FjdGlvbik7XHJcblx0fVxyXG5cclxuXHRwdWJsaWMgdXBkYXRlKGVudGl0aWVzOiBNYXA8bnVtYmVyLCBFbnRpdHk+KTogRGFtYWdlQWN0aW9uIHtcclxuXHRcdHJldHVybiBPYmplY3QuYXNzaWduKG5ldyBEYW1hZ2VBY3Rpb24odGhpcy5hbGxDYXJkcyksIHRoaXMsIHtcclxuXHRcdFx0ZW50aXRpZXMsXHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdHB1YmxpYyBlbnJpY2hXaXRoVGV4dChhbGxFbnRpdGllc1NvRmFyOiBNYXA8bnVtYmVyLCBFbnRpdHk+KTogRGFtYWdlQWN0aW9uIHtcclxuXHRcdGNvbnN0IHRleHRSYXcgPVxyXG5cdFx0XHQnXFx0JyArXHJcblx0XHRcdHRoaXMuZGFtYWdlc1xyXG5cdFx0XHRcdC5tYXAoKGFtb3VudCwgZW50aXR5SWQpID0+IHtcclxuXHRcdFx0XHRcdGNvbnN0IGVudGl0eUNhcmRJZCA9IEFjdGlvbkhlbHBlci5nZXRDYXJkSWQodGhpcy5lbnRpdGllcywgZW50aXR5SWQsIGFsbEVudGl0aWVzU29GYXIpO1xyXG5cdFx0XHRcdFx0Y29uc3QgZW50aXR5Q2FyZCA9IHRoaXMuYWxsQ2FyZHMuZ2V0Q2FyZChlbnRpdHlDYXJkSWQpO1xyXG5cdFx0XHRcdFx0cmV0dXJuIGAke2VudGl0eUNhcmQubmFtZX0gdGFrZXMgJHthbW91bnR9IGRhbWFnZWA7XHJcblx0XHRcdFx0fSlcclxuXHRcdFx0XHQuam9pbignLCAnKTtcclxuXHRcdHJldHVybiBPYmplY3QuYXNzaWduKG5ldyBEYW1hZ2VBY3Rpb24odGhpcy5hbGxDYXJkcyksIHRoaXMsIHtcclxuXHRcdFx0dGV4dFJhdyxcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0cHJvdGVjdGVkIGdldEluc3RhbmNlKCk6IEFjdGlvbiB7XHJcblx0XHRyZXR1cm4gbmV3IERhbWFnZUFjdGlvbih0aGlzLmFsbENhcmRzKTtcclxuXHR9XHJcbn1cclxuIl19