game_board class might need more function but this is for now
game_board.cpp
- Committer:
- AndyTran
- Date:
- 2015-12-07
- Revision:
- 3:e21ecfae42e4
- Parent:
- 2:1a54e4ed2669
File content as of revision 3:e21ecfae42e4:
#include <iostream> #include "game_board.h" using namespace std; void game_board::new_game_board () { ship_lose = 0; for (i = 0; i < 6; i++); { _my_ship[i][0] = 0; _my_ship[i][1] = 0; _my_ship[i][2] = 0; _my_ship[i][3] = 0; _my_ship[i][4] = 0; _my_ship[i][5] = 0; } F_row = "F _ _ _ _ _ _ F _ _ _ _ _ _\n\r"; E_row = "E _ _ _ _ _ _ E _ _ _ _ _ _\n\r"; D_row = "D _ _ _ _ _ _ D _ _ _ _ _ _\n\r"; C_row = "C _ _ _ _ _ _ C _ _ _ _ _ _\n\r"; B_row = "B _ _ _ _ _ _ B _ _ _ _ _ _\n\r"; A_row = "A _ _ _ _ _ _ A _ _ _ _ _ _\n\r"; N_row = " 1 2 3 4 5 6 1 2 3 4 5 6\n\r"; label = "Friendly Enemy\n\r"; }; bool game_board::place_hit_miss_friendly (int row, int colum){ if (_my_ship[row-1][colum-1] >= 1){ _my_ship[row-1][colum-1] = 2; //freindly got destroy ship_lose = ship_lose + 1; switch (row - 1) { case 0: F_row[(colum)*2] = '*'; break; case 1: E_row[(colum)*2] = '*'; break; case 2: D_row[(colum)*2] = '*'; break; case 3: C_row[(colum)*2] = '*'; break; case 4: B_row[(colum)*2] = '*'; break; case 5: A_row[(colum)*2] = '*'; break; } return true; } else { switch (row - 1) { case 0: F_row[(colum)*2] = 'O'; break; case 1: E_row[(colum)*2] = 'O'; break; case 2: D_row[(colum)*2] = 'O'; break; case 3: C_row[(colum)*2] = 'O'; break; case 4: B_row[(colum)*2] = 'O'; break; case 5: A_row[(colum)*2] = 'O'; break; } return false; } //return false; }; void game_board::place_ship (int row, int colum) { _my_ship [row - 1][colum - 1] = 1; switch (row - 1) { case 0: F_row[(colum)*2] = '>'; break; case 1: E_row[(colum)*2] = '>'; break; case 2: D_row[(colum)*2] = '>'; break; case 3: C_row[(colum)*2] = '>'; break; case 4: B_row[(colum)*2] = '>'; break; case 5: A_row[(colum)*2] = '>'; break; } }; string game_board::get1row (int row){ string r_row; switch (row - 1) { case 0: r_row = F_row; break; case 1: r_row = E_row; break; case 2: r_row = D_row; break; case 3: r_row = C_row; break; case 4: r_row = B_row; break; case 5: r_row = A_row; break; case 6: r_row = N_row; break; case 7: r_row = label; break; } return (r_row); }; bool game_board::looser(){ //check for the number of ship is destroy; //if 5 or more ship is destroy player lose the game while (ship_lose > 5) { return true; //you lose } else return false; //nothing happen }; void game_board::place_hit_miss_enemy (int row, int colum, bool hit_miss){ if (hit_miss == 1) { switch (row - 1) { case 0: F_row[(colum+8)*2] = '*'; break; case 1: E_row[(colum+8)*2] = '*'; break; case 2: D_row[(colum+8)*2] = '*'; break; case 3: C_row[(colum+8)*2] = '*'; break; case 4: B_row[(colum+8)*2] = '*'; break; case 5: A_row[(colum+8)*2] = '*'; break; } } else if (hit_miss == 0) { switch (row - 1) { case 0: F_row[(colum+8)*2] = 'O'; break; case 1: E_row[(colum+8)*2] = 'O'; break; case 2: D_row[(colum+8)*2] = 'O'; break; case 3: C_row[(colum+8)*2] = 'O'; break; case 4: B_row[(colum+8)*2] = 'O'; break; case 5: A_row[(colum+8)*2] = 'O'; break; } } };