@firestone-hs/replay-parser
Version:
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 8.2.9.
24 lines • 4.39 kB
JavaScript
import { ActionHelper } from '../../services/action/action-helper';
import { Action } from './action';
export class QuestCompletedAction extends Action {
constructor(allCards) {
super(allCards);
}
static create(newAction, allCards) {
return Object.assign(new QuestCompletedAction(allCards), newAction);
}
update(entities) {
return Object.assign(this.getInstance(), this, { entities });
}
enrichWithText(allEntitiesSoFar) {
const questCardId = ActionHelper.getCardId(this.entities, this.originId, allEntitiesSoFar);
const questName = this.allCards.getCard(questCardId).name;
const playerName = ActionHelper.getOwner(this.entities, this.originId).name;
const textRaw = `\t${playerName} completes ${questName}!`;
return Object.assign(this.getInstance(), this, { textRaw });
}
getInstance() {
return new QuestCompletedAction(this.allCards);
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlc3QtY29tcGxldGVkLWFjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3JlcGxheS1wYXJzZXIvc3JjL2xpYi9tb2RlbHMvYWN0aW9uL3F1ZXN0LWNvbXBsZXRlZC1hY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBR25FLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFbEMsTUFBTSxPQUFPLG9CQUFxQixTQUFRLE1BQU07SUFHL0MsWUFBWSxRQUF5QjtRQUNwQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDakIsQ0FBQztJQUVNLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLFFBQXlCO1FBQ3hELE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFTSxNQUFNLENBQUMsUUFBNkI7UUFDMUMsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFTSxjQUFjLENBQUMsZ0JBQXFDO1FBQzFELE1BQU0sV0FBVyxHQUFHLFlBQVksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFLGdCQUFnQixDQUFDLENBQUM7UUFDM0YsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQzFELE1BQU0sVUFBVSxHQUFHLFlBQVksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQzVFLE1BQU0sT0FBTyxHQUFHLEtBQUssVUFBVSxjQUFjLFNBQVMsR0FBRyxDQUFDO1FBQzFELE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRVMsV0FBVztRQUNwQixPQUFPLElBQUksb0JBQW9CLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2hELENBQUM7Q0FDRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1hcCB9IGZyb20gJ2ltbXV0YWJsZSc7XHJcbmltcG9ydCB7IEFjdGlvbkhlbHBlciB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2FjdGlvbi9hY3Rpb24taGVscGVyJztcclxuaW1wb3J0IHsgQWxsQ2FyZHNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvYWxsLWNhcmRzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBFbnRpdHkgfSBmcm9tICcuLi9nYW1lL2VudGl0eSc7XHJcbmltcG9ydCB7IEFjdGlvbiB9IGZyb20gJy4vYWN0aW9uJztcclxuXHJcbmV4cG9ydCBjbGFzcyBRdWVzdENvbXBsZXRlZEFjdGlvbiBleHRlbmRzIEFjdGlvbiB7XHJcblx0cmVhZG9ubHkgb3JpZ2luSWQ6IG51bWJlcjtcclxuXHJcblx0Y29uc3RydWN0b3IoYWxsQ2FyZHM6IEFsbENhcmRzU2VydmljZSkge1xyXG5cdFx0c3VwZXIoYWxsQ2FyZHMpO1xyXG5cdH1cclxuXHJcblx0cHVibGljIHN0YXRpYyBjcmVhdGUobmV3QWN0aW9uLCBhbGxDYXJkczogQWxsQ2FyZHNTZXJ2aWNlKTogUXVlc3RDb21wbGV0ZWRBY3Rpb24ge1xyXG5cdFx0cmV0dXJuIE9iamVjdC5hc3NpZ24obmV3IFF1ZXN0Q29tcGxldGVkQWN0aW9uKGFsbENhcmRzKSwgbmV3QWN0aW9uKTtcclxuXHR9XHJcblxyXG5cdHB1YmxpYyB1cGRhdGUoZW50aXRpZXM6IE1hcDxudW1iZXIsIEVudGl0eT4pOiBRdWVzdENvbXBsZXRlZEFjdGlvbiB7XHJcblx0XHRyZXR1cm4gT2JqZWN0LmFzc2lnbih0aGlzLmdldEluc3RhbmNlKCksIHRoaXMsIHsgZW50aXRpZXMgfSk7XHJcblx0fVxyXG5cclxuXHRwdWJsaWMgZW5yaWNoV2l0aFRleHQoYWxsRW50aXRpZXNTb0ZhcjogTWFwPG51bWJlciwgRW50aXR5Pik6IFF1ZXN0Q29tcGxldGVkQWN0aW9uIHtcclxuXHRcdGNvbnN0IHF1ZXN0Q2FyZElkID0gQWN0aW9uSGVscGVyLmdldENhcmRJZCh0aGlzLmVudGl0aWVzLCB0aGlzLm9yaWdpbklkLCBhbGxFbnRpdGllc1NvRmFyKTtcclxuXHRcdGNvbnN0IHF1ZXN0TmFtZSA9IHRoaXMuYWxsQ2FyZHMuZ2V0Q2FyZChxdWVzdENhcmRJZCkubmFtZTtcclxuXHRcdGNvbnN0IHBsYXllck5hbWUgPSBBY3Rpb25IZWxwZXIuZ2V0T3duZXIodGhpcy5lbnRpdGllcywgdGhpcy5vcmlnaW5JZCkubmFtZTtcclxuXHRcdGNvbnN0IHRleHRSYXcgPSBgXFx0JHtwbGF5ZXJOYW1lfSBjb21wbGV0ZXMgJHtxdWVzdE5hbWV9IWA7XHJcblx0XHRyZXR1cm4gT2JqZWN0LmFzc2lnbih0aGlzLmdldEluc3RhbmNlKCksIHRoaXMsIHsgdGV4dFJhdyB9KTtcclxuXHR9XHJcblxyXG5cdHByb3RlY3RlZCBnZXRJbnN0YW5jZSgpOiBBY3Rpb24ge1xyXG5cdFx0cmV0dXJuIG5ldyBRdWVzdENvbXBsZXRlZEFjdGlvbih0aGlzLmFsbENhcmRzKTtcclxuXHR9XHJcbn1cclxuIl19