import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core'; import { CommonModule } from '@angular/common'; import { GameState } from '../../enum/gameState'; import { Card } from '@blackjack/models/blackjack.model'; import { GameControlsService } from '@blackjack/services/game-controls.service'; @Component({ selector: 'app-game-controls', standalone: true, imports: [CommonModule], template: `
Deine Punkte: {{ gameControlsService.calculateHandValue(playerCards) }}
Status: {{ gameControlsService.getStatusText(gameState) }}
`, changeDetection: ChangeDetectionStrategy.OnPush, }) export class GameControlsComponent { @Input() playerCards: Card[] = []; @Input() gameState: GameState = GameState.IN_PROGRESS; @Input() isActionInProgress = false; @Output() hit = new EventEmitter(); @Output() stand = new EventEmitter(); @Output() doubleDown = new EventEmitter(); @Output() leave = new EventEmitter(); protected readonly GameState = GameState; constructor(protected gameControlsService: GameControlsService) { } }