-
Notifications
You must be signed in to change notification settings - Fork 0
/
MonopolyBankingArrList.java
183 lines (162 loc) · 6.38 KB
/
MonopolyBankingArrList.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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
package monopolybankingarrlist;
import java.util.Scanner;
import java.util.ArrayList;
/**
*
* @author davinpwk
*/
public class MonopolyBankingArrList {
static int playerAmount;
static ArrayList<String> AccountName = new ArrayList();
static ArrayList<Integer> AccountBalance = new ArrayList();
static boolean loop = true ;
public static void main(String[] args){
// Setup
Scanner scan = new Scanner(System.in);
System.out.print("number of player (2-4) : ");
playerAmount = scan.nextInt();
for(int i = 1 ; i <= playerAmount ; i++){
System.out.print("Player"+i+" name : ");
Scanner PA = new Scanner(System.in);
String name = PA.nextLine();
AccountName.add(name);
AccountBalance.add(1500);
}
// End of Setup
// Menu
while(loop == true){
menu();
}
// End of Menu
}
public static void menu(){
System.out.println("\n=================================");
System.out.println("Menu: ");
System.out.println("1. Income \n2. Taxes \n3. Transfer \n4. GO! (+$200) \n*'bal' to check Balance \n*'end' to terminate\n.......");
System.out.print("option : ");
Scanner menu = new Scanner(System.in);
String option = menu.nextLine();
System.out.println("=================================");
Scanner Ptrans = new Scanner(System.in);
if(option.equals("1")){
boolean loop1 = false;
while(loop1 == false){
try{
System.out.print("input Player Name: ");
String Player = Ptrans.nextLine();
income(Player);
loop1 = true;
}catch(Exception e){
System.out.println("Account not found!");
}
}
}
else if(option.equals("2")){
boolean loop1 = false;
while(loop1 == false){
try{
System.out.print("input Player Name: ");
String Player = Ptrans.nextLine();
taxes(Player);
loop1 = true;
}catch(Exception e){
System.out.println("Account not found!");
}
}
}
else if(option.equals("3")){
boolean loop1 = false;
while(loop1 == false){
try{
System.out.print("From: ");
String Sender = Ptrans.nextLine();
System.out.print("To: ");
String Receiver = Ptrans.nextLine();
transfer(Sender, Receiver);
loop1 = true;
}catch(Exception e){
System.out.println("Account not found!");
}
}
}
else if(option.equals("4")){
boolean loop1 = false;
while(loop1 == false){
try{
System.out.print("input Player Name: ");
String Player = Ptrans.nextLine();
GO(Player);
loop1 = true;
}catch(Exception e){
System.out.println("Account not found!");
}
}
}
else if(option.equals("bal")){
checkBalance();
}
else if(option.equals("end")){
loop = false;
}
}
public static void checkBalance(){
System.out.println("========PLAYERS' BALANCE=========");
for(int i = 0 ; i < playerAmount ; i++){
System.out.println(AccountName.get(i)+"\t: $"+AccountBalance.get(i));
}
System.out.println("=================================");
wait(5000);
}
public static void income(String Player){
Scanner income = new Scanner(System.in);
System.out.print("Input Income Amount: ");
int incAmount = income.nextInt();
int index = AccountName.indexOf(Player);
AccountBalance.set(index, (AccountBalance.get(index) + incAmount));
System.out.println("=================================");
System.out.println(Player+"'s balance : $"+AccountBalance.get(index));
System.out.println("=================================");
wait(2000);
}
public static void taxes(String Player){
Scanner taxes = new Scanner(System.in);
System.out.print("Input Income Amount: ");
int taxAmount = taxes.nextInt();
int index = AccountName.indexOf(Player);
AccountBalance.set(index, (AccountBalance.get(index) - taxAmount));
System.out.println("=================================");
System.out.println(Player+"'s balance : $"+AccountBalance.get(index));
System.out.println("=================================");
wait(2000);
}
public static void transfer(String sender, String receiver){
Scanner transfer = new Scanner(System.in);
System.out.print("Input Income Amount: ");
int trfAmount = transfer.nextInt();
int iSend = AccountName.indexOf(sender);
AccountBalance.set(iSend, (AccountBalance.get(iSend) - trfAmount));
int iRecv = AccountName.indexOf(receiver);
AccountBalance.set(iRecv, (AccountBalance.get(iRecv) - trfAmount));
System.out.println("=================================");
System.out.println(sender+"'s balance : $"+AccountBalance.get(iSend));
System.out.println(receiver+"'s balance : $"+AccountBalance.get(iRecv));
System.out.println("=================================");
wait(4000);
}
public static void GO(String Player){
int index = AccountName.indexOf(Player);
AccountBalance.set(index, (AccountBalance.get(index) + 200));
System.out.println("=================================");
System.out.println(Player+"'s balance : $"+AccountBalance.get(index));
System.out.println("=================================");
wait(2000);
}
public static void wait(int ms){
try{
Thread.sleep(ms);
}
catch(InterruptedException ex){
Thread.currentThread().interrupt();
}
}
}