-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathProgram.cs
executable file
·76 lines (55 loc) · 2.34 KB
/
Program.cs
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
71
72
73
74
75
76
namespace TheCardGame;
class Program
{
static void setupPlayersAndCards() {
// #TODO: remember to change the following script as it is NOT for the assignment.
// IT is just an example.
Player player1 = new Player("player1", 10);
Player player2 = new Player("player2", 10);
DemoGameFactory factory = new DemoGameFactory();
List<Card> player1_cards = new List<Card>();
player1_cards.Add(factory.createSpellCard("sorcery-1"));
player1_cards.Add(factory.createSpellCard("sorcery-2"));
player1_cards.Add(factory.createSpellCard("sorcery-3"));
player1_cards.Add(factory.createLandCard("land-1"));
player1_cards.Add(factory.createLandCard("land-2"));
player1_cards.Add(factory.createCreatureCard("creature-1"));
List<Card> player2_cards = new List<Card>();
player2_cards.Add(factory.createSpellCard("sorcery-4"));
player2_cards.Add(factory.createSpellCard("sorcery-5"));
player2_cards.Add(factory.createSpellCard("sorcery-6"));
player2_cards.Add(factory.createLandCard("land-3"));
player2_cards.Add(factory.createLandCard("land-4"));
player2_cards.Add(factory.createCreatureCard("creature-3"));
player1.setCards(player1_cards);
player2.setCards(player2_cards);
GameBoard gb = new GameBoard();
gb.setPlayers(player1, player2, player1);
}
static void setupACurrentSituation() {
GameBoard gb = new GameBoard();
gb.setupACurrentSituation();
}
static void RunADemoGame() {
GameBoard gb = new GameBoard();
//Player 1 - Turn 1
if (!gb.newTurn()) {return;}
gb.drawCard("land-1");
gb.endTurn();
gb.logCurrentSituation();
//Player 2 - Turn 2
gb.prepareNewTurn();
if (!gb.newTurn()) {return;}
gb.drawCard("land-3");
gb.endTurn();
gb.logCurrentSituation();
}
static void Main(string[] args)
{
setupPlayersAndCards();
setupACurrentSituation();
GameBoard gb = new GameBoard();
gb.logCurrentSituation();
RunADemoGame();
}
}