rendered paste bodypublic class MainClass : Object {
public static void main(string[] args) {
bool done = false;
int tries = 10;
int result = 3;
string[,] board = create_board();
show_board(board);
do {
string guess = make_guess();
bool valid = validate_input(guess);
if (valid == true) {
string text = check_guess(guess, board);
stdout.printf("%s\n", text);
if (text == "You hit..!") {
result--;
if (result == 0) {
stdout.printf("You won..!\n");
break;
}
}
tries--;
done = count_tries(tries);
}
} while (!done);
}
public static string[,] create_board() {
string[,] game_board = new string[5, 5] { {"false", "false", "false", "false", "false"},
{"false", "false", "false", "false", "false"},
{"false", "true", "true", "true", "false"},
{"false", "false", "false", "false", "false"},
{"false", "false", "false", "false", "false"} };
return game_board;
}
public static void edit_board(int x, int y, string[,] board) {
board[x, y] = "false";
}
public static void show_board(string[,] board) {
stdout.printf(" ");
for (int num = 1; num <= 5; num++) {
stdout.printf("%-6d", num);
}
stdout.printf("\n");
for (int x = 0; x < board.length[0]; x++) {
stdout.printf("%d ", x + 1);
for (int y = 0; y < board.length[1]; y++) {
stdout.printf("%-6s", board[x, y]);
}
stdout.printf("\n");
}
}
public static string make_guess() {
stdout.printf("Enter a coordinate: ");
string guess = stdin.read_line();
return guess;
}
public static bool validate_input(string guess) {
bool valid = true;
int x = guess.substring(0,1).to_int();
int y = guess.substring(2,1).to_int();
if (x < 1 || x > 5 || y < 1 || y > 5) {
stdout.printf("Your coordinate have to be between 1,1 and 5,5...\n");
valid = false;
}
return valid;
}
public static string check_guess(string guess, string[,] board) {
int x = guess.substring(0,1).to_int() - 1;
int y = guess.substring(2,1).to_int() - 1;
string text = "";
if (board[y, x] == "true") {
text = "You hit..!";
edit_board(y, x, board);
show_board(board);
}
else {
text = "You miss..!";
}
return text;
}
public static bool count_tries(int tries) {
bool done = false;
if (tries == 0) {
stdout.printf("You have lost...\n");
done = true;
}
else if (tries == 1) {
stdout.printf("You have %d try left...\n", tries);
}
else {
stdout.printf("You have %d tries left...\n", tries);
}
return done;
}
}