@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.03 kB
JavaScript
import { ActionHelper } from '../../services/action/action-helper';
import { Action } from './action';
export class LocationActivatedAction extends Action {
constructor(allCards) {
super(allCards);
}
static create(newAction, allCards) {
return Object.assign(new LocationActivatedAction(allCards), newAction);
}
update(entities) {
return Object.assign(new LocationActivatedAction(this.allCards), this, {
entities,
});
}
enrichWithText(allEntitiesSoFar) {
const playerEntity = ActionHelper.getOwner(this.entities, this.originId);
if (!playerEntity) {
return this;
}
const ownerName = playerEntity.name;
const drawnCard = ActionHelper.getCardId(this.entities, this.originId, allEntitiesSoFar);
const cardName = this.allCards.getCard(drawnCard)?.name || 'Unknown Card';
const textRaw = `\t${ownerName} activates ${cardName}`;
return Object.assign(new LocationActivatedAction(this.allCards), this, {
textRaw,
});
}
getInstance() {
return new LocationActivatedAction(this.allCards);
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYXRpb24tYWN0aXZhdGVkLWFjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3JlcGxheS1wYXJzZXIvc3JjL2xpYi9tb2RlbHMvYWN0aW9uL2xvY2F0aW9uLWFjdGl2YXRlZC1hY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBR25FLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFbEMsTUFBTSxPQUFPLHVCQUF3QixTQUFRLE1BQU07SUFDbEQsWUFBWSxRQUF5QjtRQUNwQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDakIsQ0FBQztJQUVNLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLFFBQXlCO1FBQ3hELE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7SUFFTSxNQUFNLENBQUMsUUFBNkI7UUFDMUMsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksdUJBQXVCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLElBQUksRUFBRTtZQUN0RSxRQUFRO1NBQ1IsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUVNLGNBQWMsQ0FBQyxnQkFBcUM7UUFDMUQsTUFBTSxZQUFZLEdBQUcsWUFBWSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN6RSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ2xCLE9BQU8sSUFBSSxDQUFDO1NBQ1o7UUFDRCxNQUFNLFNBQVMsR0FBVyxZQUFZLENBQUMsSUFBSSxDQUFDO1FBQzVDLE1BQU0sU0FBUyxHQUFHLFlBQVksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFLGdCQUFnQixDQUFDLENBQUM7UUFDekYsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsSUFBSSxJQUFJLGNBQWMsQ0FBQztRQUMxRSxNQUFNLE9BQU8sR0FBRyxLQUFLLFNBQVMsY0FBYyxRQUFRLEVBQUUsQ0FBQztRQUN2RCxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsSUFBSSxFQUFFO1lBQ3RFLE9BQU87U0FDUCxDQUFDLENBQUM7SUFDSixDQUFDO0lBRVMsV0FBVztRQUNwQixPQUFPLElBQUksdUJBQXVCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ25ELENBQUM7Q0FDRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1hcCB9IGZyb20gJ2ltbXV0YWJsZSc7XHJcbmltcG9ydCB7IEFjdGlvbkhlbHBlciB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2FjdGlvbi9hY3Rpb24taGVscGVyJztcclxuaW1wb3J0IHsgQWxsQ2FyZHNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvYWxsLWNhcmRzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBFbnRpdHkgfSBmcm9tICcuLi9nYW1lL2VudGl0eSc7XHJcbmltcG9ydCB7IEFjdGlvbiB9IGZyb20gJy4vYWN0aW9uJztcclxuXHJcbmV4cG9ydCBjbGFzcyBMb2NhdGlvbkFjdGl2YXRlZEFjdGlvbiBleHRlbmRzIEFjdGlvbiB7XHJcblx0Y29uc3RydWN0b3IoYWxsQ2FyZHM6IEFsbENhcmRzU2VydmljZSkge1xyXG5cdFx0c3VwZXIoYWxsQ2FyZHMpO1xyXG5cdH1cclxuXHJcblx0cHVibGljIHN0YXRpYyBjcmVhdGUobmV3QWN0aW9uLCBhbGxDYXJkczogQWxsQ2FyZHNTZXJ2aWNlKTogTG9jYXRpb25BY3RpdmF0ZWRBY3Rpb24ge1xyXG5cdFx0cmV0dXJuIE9iamVjdC5hc3NpZ24obmV3IExvY2F0aW9uQWN0aXZhdGVkQWN0aW9uKGFsbENhcmRzKSwgbmV3QWN0aW9uKTtcclxuXHR9XHJcblxyXG5cdHB1YmxpYyB1cGRhdGUoZW50aXRpZXM6IE1hcDxudW1iZXIsIEVudGl0eT4pOiBMb2NhdGlvbkFjdGl2YXRlZEFjdGlvbiB7XHJcblx0XHRyZXR1cm4gT2JqZWN0LmFzc2lnbihuZXcgTG9jYXRpb25BY3RpdmF0ZWRBY3Rpb24odGhpcy5hbGxDYXJkcyksIHRoaXMsIHtcclxuXHRcdFx0ZW50aXRpZXMsXHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdHB1YmxpYyBlbnJpY2hXaXRoVGV4dChhbGxFbnRpdGllc1NvRmFyOiBNYXA8bnVtYmVyLCBFbnRpdHk+KTogTG9jYXRpb25BY3RpdmF0ZWRBY3Rpb24ge1xyXG5cdFx0Y29uc3QgcGxheWVyRW50aXR5ID0gQWN0aW9uSGVscGVyLmdldE93bmVyKHRoaXMuZW50aXRpZXMsIHRoaXMub3JpZ2luSWQpO1xyXG5cdFx0aWYgKCFwbGF5ZXJFbnRpdHkpIHtcclxuXHRcdFx0cmV0dXJuIHRoaXM7XHJcblx0XHR9XHJcblx0XHRjb25zdCBvd25lck5hbWU6IHN0cmluZyA9IHBsYXllckVudGl0eS5uYW1lO1xyXG5cdFx0Y29uc3QgZHJhd25DYXJkID0gQWN0aW9uSGVscGVyLmdldENhcmRJZCh0aGlzLmVudGl0aWVzLCB0aGlzLm9yaWdpbklkLCBhbGxFbnRpdGllc1NvRmFyKTtcclxuXHRcdGNvbnN0IGNhcmROYW1lID0gdGhpcy5hbGxDYXJkcy5nZXRDYXJkKGRyYXduQ2FyZCk/Lm5hbWUgfHwgJ1Vua25vd24gQ2FyZCc7XHJcblx0XHRjb25zdCB0ZXh0UmF3ID0gYFxcdCR7b3duZXJOYW1lfSBhY3RpdmF0ZXMgJHtjYXJkTmFtZX1gO1xyXG5cdFx0cmV0dXJuIE9iamVjdC5hc3NpZ24obmV3IExvY2F0aW9uQWN0aXZhdGVkQWN0aW9uKHRoaXMuYWxsQ2FyZHMpLCB0aGlzLCB7XHJcblx0XHRcdHRleHRSYXcsXHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdHByb3RlY3RlZCBnZXRJbnN0YW5jZSgpOiBBY3Rpb24ge1xyXG5cdFx0cmV0dXJuIG5ldyBMb2NhdGlvbkFjdGl2YXRlZEFjdGlvbih0aGlzLmFsbENhcmRzKTtcclxuXHR9XHJcbn1cclxuIl19