-
Notifications
You must be signed in to change notification settings - Fork 5
/
heartsGameType.model.ts
70 lines (66 loc) · 2.98 KB
/
heartsGameType.model.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
import { BaseGameType } from './gameType.model';
import { ICard } from '../card/card.interface';
import { AceHighRankSet } from '../card/aceHighRankSet.model';
import { CardName } from '../card/cardName.model';
import { Suit } from '../card/suit.model';
import { PlayingCard } from '../card/playingCard.model';
/**
* GameType with Hearts configuration
*/
export class HeartsGameType extends BaseGameType {
public rankSet = new AceHighRankSet();
public cardsAllowed: ICard[] = [
new PlayingCard(CardName.Ace, Suit.Clubs),
new PlayingCard(CardName.Two, Suit.Clubs),
new PlayingCard(CardName.Three, Suit.Clubs),
new PlayingCard(CardName.Four, Suit.Clubs),
new PlayingCard(CardName.Five, Suit.Clubs),
new PlayingCard(CardName.Six, Suit.Clubs),
new PlayingCard(CardName.Seven, Suit.Clubs),
new PlayingCard(CardName.Eight, Suit.Clubs),
new PlayingCard(CardName.Nine, Suit.Clubs),
new PlayingCard(CardName.Ten, Suit.Clubs),
new PlayingCard(CardName.Jack, Suit.Clubs),
new PlayingCard(CardName.Queen, Suit.Clubs),
new PlayingCard(CardName.King, Suit.Clubs),
new PlayingCard(CardName.Ace, Suit.Spades),
new PlayingCard(CardName.Two, Suit.Spades),
new PlayingCard(CardName.Three, Suit.Spades),
new PlayingCard(CardName.Four, Suit.Spades),
new PlayingCard(CardName.Five, Suit.Spades),
new PlayingCard(CardName.Six, Suit.Spades),
new PlayingCard(CardName.Seven, Suit.Spades),
new PlayingCard(CardName.Eight, Suit.Spades),
new PlayingCard(CardName.Nine, Suit.Spades),
new PlayingCard(CardName.Ten, Suit.Spades),
new PlayingCard(CardName.Jack, Suit.Spades),
new PlayingCard(CardName.Queen, Suit.Spades),
new PlayingCard(CardName.King, Suit.Spades),
new PlayingCard(CardName.Ace, Suit.Diamonds),
new PlayingCard(CardName.Two, Suit.Diamonds),
new PlayingCard(CardName.Three, Suit.Diamonds),
new PlayingCard(CardName.Four, Suit.Diamonds),
new PlayingCard(CardName.Five, Suit.Diamonds),
new PlayingCard(CardName.Six, Suit.Diamonds),
new PlayingCard(CardName.Seven, Suit.Diamonds),
new PlayingCard(CardName.Eight, Suit.Diamonds),
new PlayingCard(CardName.Nine, Suit.Diamonds),
new PlayingCard(CardName.Ten, Suit.Diamonds),
new PlayingCard(CardName.Jack, Suit.Diamonds),
new PlayingCard(CardName.Queen, Suit.Diamonds),
new PlayingCard(CardName.King, Suit.Diamonds),
new PlayingCard(CardName.Ace, Suit.Hearts),
new PlayingCard(CardName.Two, Suit.Hearts),
new PlayingCard(CardName.Three, Suit.Hearts),
new PlayingCard(CardName.Four, Suit.Hearts),
new PlayingCard(CardName.Five, Suit.Hearts),
new PlayingCard(CardName.Six, Suit.Hearts),
new PlayingCard(CardName.Seven, Suit.Hearts),
new PlayingCard(CardName.Eight, Suit.Hearts),
new PlayingCard(CardName.Nine, Suit.Hearts),
new PlayingCard(CardName.Ten, Suit.Hearts),
new PlayingCard(CardName.Jack, Suit.Hearts),
new PlayingCard(CardName.Queen, Suit.Hearts),
new PlayingCard(CardName.King, Suit.Hearts)
];
}