-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMonopoly.java
56 lines (50 loc) · 1.79 KB
/
Monopoly.java
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
package Monopoly;
public class Monopoly {
final static Board board = new Board();
final static Player[] players = {
new Player(board.squares[0], 1500, "P1"),
new Player(board.squares[0], 1500, "P2")
};
public static void GameOver(Player p) {
System.out.println("GAME OVER: Player " + p.getName() + " is bankrupt");
System.exit(0);
}
public static void main(String[] args) {
Board.updateBoard();
int turn = 0;
int rollNum = 1;
while(players[0].getMoney() >= 0 && players[1].getMoney() >= 0) {
Board.updatePlayerInfo();
Player p = players[turn];
p.setCurTurn(false);
Board.putString(20,10,"Player:" + p.getName() + "'s turn");
Board.printBoard();
p.getSquare().preRollChoices(p);
// roll dice
Board.rollDice(p, rollNum);
int d1 = Board.getRv1();
int d2 = Board.getRv2();
if (d1 == d2) {
if (rollNum == 3){
Board.putString(18, 50, "Go to Jail");
p.setInJail(true);
Board.movePlayer(p, 10);
turn = (turn + 1) % players.length;
rollNum = 1;
continue;
} else {
p.setCurTurn(true);
Board.putString(18, 50, "Roll again");
rollNum++;
}
}
int destNum = p.getSquare().rollAction(p, d1,d2);// find. Destination
Board.movePlayer(p, destNum);
if (!p.isCurTurn()) {
Board.putString(16, 50, " ");
turn = (turn + 1) % players.length;
rollNum = 1;
}
}
}
}