Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Player.cpp
00001 #include "Player.h" 00002 00003 Player::Player(){ 00004 board = new int*[10]; 00005 enemyBoard = new int*[10]; 00006 for(int i = 0; i < 10; i++){ 00007 board[i] = new int[10]; 00008 enemyBoard[i] = new int[10]; 00009 for(int j = 0; j < 10; j++){ 00010 board[i][j] = 0; 00011 enemyBoard[i][j] = 0; 00012 } 00013 } 00014 } 00015 00016 void Player::PrintBoard(){ 00017 for(int i = 0; i < 10; i++){ 00018 uLCD.line(26+i*10,26,26+i*10,127,0xFFFFFF); 00019 uLCD.line(26,26+i*10,127,26+i*10,0xFFFFFF); 00020 for(int j = 0; j < 10; j++){ 00021 if(board[i][j] == 0){ 00022 uLCD.filled_circle(31+i*10,31+j*10,4,0x0000FF); 00023 } else if(board[i][j] == 1) { 00024 uLCD.filled_circle(31+i*10,31+j*10,4,0xFF0000); 00025 } else if(board[i][j] == 2) { 00026 uLCD.filled_circle(31+i*10,31+j*10,4,0xFFFFFF); 00027 } else { 00028 uLCD.filled_circle(31+i*10,31+j*10,4,0xFFFFFF); 00029 uLCD.filled_circle(31+i*10,31+j*10,3,0xFF0000); 00030 } 00031 } 00032 } 00033 uLCD.line(126,26,126,127,0xFFFFFF); 00034 uLCD.line(26,126,127,126,0xFFFFFF); 00035 } 00036 00037 void Player::PrintEnemyBoard(){ 00038 for(int i = 0; i < 10; i++){ 00039 uLCD.line(26+i*10,26,26+i*10,127,0xFFFFFF); 00040 uLCD.line(26,26+i*10,127,26+i*10,0xFFFFFF); 00041 for(int j = 0; j < 10; j++){ 00042 if(enemyBoard[i][j] == 0){ 00043 uLCD.filled_circle(31+i*10,31+j*10,4,0x0000FF); 00044 } else if(enemyBoard[i][j] == 1) { 00045 uLCD.filled_circle(31+i*10,31+j*10,4,0xFF0000); 00046 } else if(enemyBoard[i][j] == 2) { 00047 uLCD.filled_circle(31+i*10,31+j*10,4,0xFFFFFF); 00048 } else { 00049 uLCD.filled_circle(31+i*10,31+j*10,4,0xFFFFFF); 00050 uLCD.filled_circle(31+i*10,31+j*10,3,0xFF0000); 00051 } 00052 } 00053 } 00054 } 00055 00056 void Player::Shot(int i, int j, int hit) { 00057 if(hit == 1){ 00058 enemyBoard[i][j] = 3; 00059 } else if(hit == 0){ 00060 enemyBoard[i][j] = 1; 00061 } 00062 } 00063 00064 int Player::EnemyShot(int i, int j) { 00065 if(board[i][j] == 2){ 00066 board[i][j] = 3; 00067 uLCD.filled_circle(31+i*10,31+j*10,4,0xFFFFFF); 00068 uLCD.filled_circle(31+i*10,31+j*10,3,0xFF0000); 00069 return 1; 00070 } else if(board[i][j] == 0){ 00071 board[i][j] = 1; 00072 uLCD.filled_circle(31+i*10,31+j*10,4,0xFF0000); 00073 return 0; 00074 } 00075 return 3; 00076 00077 } 00078 00079 void Player::PlaceShips(int i, int j){ 00080 board[i][j] = 2; 00081 } 00082 00083 int Player::getColor(int i, int j){ 00084 return board[i][j]; 00085 } 00086 00087 int Player::getEnemyColor(int i, int j){ 00088 return enemyBoard[i][j]; 00089 } 00090 00091 bool Player::presetShips(int con){ 00092 if(con == 1){ 00093 board[9][3] = 2; 00094 board[9][4] = 2; 00095 board[9][5] = 2; 00096 board[9][6] = 2; 00097 board[9][7] = 2; 00098 00099 board[5][3] = 2; 00100 board[5][4] = 2; 00101 board[5][5] = 2; 00102 board[5][6] = 2; 00103 00104 board[1][7] = 2; 00105 board[2][7] = 2; 00106 board[3][7] = 2; 00107 00108 board[4][2] = 2; 00109 board[5][2] = 2; 00110 board[6][2] = 2; 00111 00112 board[0][0] = 2; 00113 board[0][1] = 2; 00114 } else if(con == 2){ 00115 board[0][3] = 2; 00116 board[1][3] = 2; 00117 board[2][3] = 2; 00118 board[3][3] = 2; 00119 board[4][3] = 2; 00120 00121 board[2][5] = 2; 00122 board[3][5] = 2; 00123 board[4][5] = 2; 00124 board[5][5] = 2; 00125 00126 board[7][1] = 2; 00127 board[7][2] = 2; 00128 board[7][3] = 2; 00129 00130 board[0][7] = 2; 00131 board[0][8] = 2; 00132 board[0][9] = 2; 00133 00134 board[9][8] = 2; 00135 board[9][9] = 2; 00136 } else if(con == 3){ 00137 board[6][5] = 2; 00138 board[6][6] = 2; 00139 board[6][7] = 2; 00140 board[6][8] = 2; 00141 board[6][9] = 2; 00142 00143 board[6][3] = 2; 00144 board[7][3] = 2; 00145 board[8][3] = 2; 00146 board[9][3] = 2; 00147 00148 board[4][1] = 2; 00149 board[4][2] = 2; 00150 board[4][3] = 2; 00151 00152 board[0][4] = 2; 00153 board[0][5] = 2; 00154 board[0][6] = 2; 00155 00156 board[4][5] = 2; 00157 board[4][6] = 2; 00158 } else if(con == 4){ 00159 board[0][3] = 2; 00160 board[0][4] = 2; 00161 board[0][5] = 2; 00162 board[0][6] = 2; 00163 board[0][7] = 2; 00164 00165 board[1][3] = 2; 00166 board[2][3] = 2; 00167 board[3][3] = 2; 00168 board[4][3] = 2; 00169 00170 board[8][7] = 2; 00171 board[8][8] = 2; 00172 board[8][9] = 2; 00173 00174 board[6][6] = 2; 00175 board[7][6] = 2; 00176 board[8][6] = 2; 00177 00178 board[6][9] = 2; 00179 board[7][9] = 2; 00180 } else { 00181 return false; 00182 } 00183 return true; 00184 } 00185 00186 Player::~Player(){ 00187 for(int i = 0; i < 10; i++){ 00188 delete[] board[i]; 00189 delete[] enemyBoard[i]; 00190 } 00191 delete[] board; 00192 delete[] enemyBoard; 00193 }
Generated on Thu Jul 14 2022 20:08:03 by
1.7.2